<html><head><base href="x-msg://1/"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Hello, David! Thanks for reply..<div><br></div><div>Well, i'm trying to make an ethernet connection between my laptop, it's Asus G1S(Intel Core 2 2.2 Ghz RAM 2Gb, Realtek 8111B/8168B)&nbsp;</div><div>with Windows SP SP3/Windows Vista/Windows7(i've got the same result on the all of them :( )</div><div>installed, and my custom device with an ethernet controller. So, when my device send data to the PC, i'm using the Wireshark to</div><div>capture incoming stream, and found those delays, using oscilloscope on TX+/- line i don't see any delays between the packets,</div><div>everything just fine. And delay is very strange i guess, for example(delays in us): .. .. 45 46 44 48 49 1200 44 48 44 46 49 42 50 1530 ..</div><div>and number of 'normal' delay between packets is very vary as delay itself, i can receive 200 packet with delay of 40-60 us and then i've got</div><div>huge timeout 1-3 ms, some times much greater, then 1000 packets normal and then again delay, so i can't see no logic with it.</div><div>From this point my question is: is it possible to archive stable receive with WinPCAP &nbsp;during long period of transfer, i mean stable capture interval?!&nbsp;<br><div><br></div><div>Thanks, bye bye..</div><div><br></div><div>P.S. i hope u can forgive my miss types and ugly english language and can understand my. And again many many thanks for Your time and answers!!</div><div><br></div><div>P.P.S. i'm using winpcap 4.1.2 and wireshark 1.4.0, well, i try many of them :(&nbsp;</div><div><br><div><div>20.09.2010, â 4:06, Fish (David B. Trout) íàïèñàë(à):</div><br class="Apple-interchange-newline"><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; font-family: 'Geneva CY'; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div lang="EN-US" link="blue" vlink="purple" style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div class="WordSection1" style="page: WordSection1; "><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">You’re welcome.<o:p></o:p></span></div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); "><o:p>&nbsp;</o:p></span></div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">As to your problem there might not be anything you can do about it. Then again however, there<span class="Apple-converted-space">&nbsp;</span><i>might</i><span class="Apple-converted-space">&nbsp;</span>be some things you can do to reduce the effect. Things like using Windows 7 (with its Timer Coalescing feature) instead of Windows XP. Disabling “SpeedStep” if your system supports it (so as to increase the accuracy of QueryPerformanceCounter which is what WinPCap uses to timestamp all its received packets with). You should also check to make sure you have the latest BIOS version installed too.<o:p></o:p></span></div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); "><o:p>&nbsp;</o:p></span></div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">I doubt &nbsp;it will help any (esp. if you’re using Windows 7 with its Timer Coalescing feature), BUT... you might try using &nbsp;“timeBeginPeriod” and “timeEndPeriod”, which I’ve heard sometimes increases the accuracy of Windows’s timers.<o:p></o:p></span></div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); "><o:p>&nbsp;</o:p></span></div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">Finally, many (if not all) of the issues listed in my post to yulou liu ("About the packets loss, what is the bottleneck?") quite likely apply in your case too. That is to say, if you’re doing using older single-processor hardware using an older version of Windows, etc, then it’s hardly surprising that the timestamps are inconsistent from one another. Windows can only do one thing at a time with only one processor, and even with multiple processors there are bottlenecks involved when you have unnecessary services running and/or unnecessary applications running.<o:p></o:p></span></div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); "><o:p>&nbsp;</o:p></span></div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">If you’re truly interested in obtaining the most accurate timings possible I would use dedicated hardware specifically for that purpose (or at the very least a real-time operating system and not a consumer level operating system like Windows).<o:p></o:p></span></div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); "><o:p>&nbsp;</o:p></span></div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">Describe your hardware and operating environment again?<o:p></o:p></span></div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 7.5pt; font-family: Arial, sans-serif; color: black; ">--<span class="Apple-converted-space">&nbsp;</span></span><span style="color: rgb(31, 73, 125); "><br></span><span style="font-size: 13.5pt; font-family: Arial, sans-serif; color: black; ">&nbsp; "</span><b><span style="font-family: Arial, sans-serif; color: green; ">Fish</span></b><span style="font-size: 13.5pt; font-family: Arial, sans-serif; color: black; ">"</span><span style="font-size: 10pt; font-family: Arial, sans-serif; color: black; ">&nbsp; (</span><span style="font-size: 10pt; font-family: 'Comic Sans MS'; color: purple; ">David B. Trout</span><span style="font-size: 10pt; font-family: Arial, sans-serif; color: rgb(31, 73, 125); ">)</span><span style="color: rgb(31, 73, 125); "><span class="Apple-converted-space">&nbsp;</span><br></span><span style="font-size: 10pt; font-family: Verdana, sans-serif; color: rgb(31, 73, 125); ">&nbsp;&nbsp;</span><span style="color: rgb(31, 73, 125); ">&nbsp;<span class="Apple-converted-space">&nbsp;</span></span><u><span style="font-size: 10pt; font-family: Arial, sans-serif; color: blue; "><a href="mailto:fish@softdevlabs.com" style="color: blue; text-decoration: underline; ">fish@softdevlabs.com</a></span></u><span style="color: rgb(31, 73, 125); "><o:p></o:p></span></div></div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); "><o:p>&nbsp;</o:p></span></div><div style="border-top-style: none; border-right-style: none; border-bottom-style: none; border-width: initial; border-color: initial; border-left-style: solid; border-left-color: blue; border-left-width: 1.5pt; padding-top: 0in; padding-right: 0in; padding-bottom: 0in; padding-left: 4pt; position: static; z-index: auto; "><div><div style="border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; border-top-style: solid; border-top-color: rgb(181, 196, 223); border-top-width: 1pt; padding-top: 3pt; padding-right: 0in; padding-bottom: 0in; padding-left: 0in; "><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><b><span style="font-size: 10pt; font-family: Tahoma, sans-serif; ">From:</span></b><span style="font-size: 10pt; font-family: Tahoma, sans-serif; "><span class="Apple-converted-space">&nbsp;</span><a href="mailto:winpcap-users-bounces@winpcap.org" style="color: blue; text-decoration: underline; ">winpcap-users-bounces@winpcap.org</a><span class="Apple-converted-space">&nbsp;</span>[mailto:winpcap-users-bounces@winpcap.org]<span class="Apple-converted-space">&nbsp;</span><b>On Behalf Of<span class="Apple-converted-space">&nbsp;</span></b>Alimjan Kuramshin<br><b>Sent:</b><span class="Apple-converted-space">&nbsp;</span>Sunday, September 19, 2010 5:46 AM<br><b>To:</b><span class="Apple-converted-space">&nbsp;</span><a href="mailto:winpcap-users@winpcap.org" style="color: blue; text-decoration: underline; ">winpcap-users@winpcap.org</a><br><b>Subject:</b><span class="Apple-converted-space">&nbsp;</span>Re: [Winpcap-users] WinPCAP packets capture delay..<br><b>Importance:</b><span class="Apple-converted-space">&nbsp;</span>High<o:p></o:p></span></div></div></div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p>&nbsp;</o:p></div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p>&nbsp;</o:p></div></div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; ">Hi, Devid! Maaany thanks for Your reply. NO, it's just an example MAC's, actually i'm using hardware MAC's. And one more thing, my PC (laptop) connected directly to the&nbsp;other PC (or custom device, it doesn't mater i guess)..&nbsp;<o:p></o:p></div></div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; ">Many thanks for Your attention, i've spend about 6-8 month with this problem, and still no luck :(<o:p></o:p></div></div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p>&nbsp;</o:p></div><div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; ">19.09.2010, â 15:25, Fish (David B. Trout) íàïèñàë(à):<o:p></o:p></div></div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><br><br><o:p></o:p></div><div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">FYI: be careful with the MAC address you choose.</span><o:p></o:p></div></div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">&nbsp;</span><o:p></o:p></div></div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">Any MAC address with the<span class="apple-converted-space">&nbsp;</span><u>0x01</u><span class="apple-converted-space">&nbsp;</span>bit on in the<span class="apple-converted-space">&nbsp;</span><u>first byte</u><span class="apple-converted-space">&nbsp;</span>is considered an<span class="apple-converted-space">&nbsp;</span><i><u>all-stations</u></i><span class="apple-converted-space"><u>&nbsp;</u></span><i><u>broadcast</u>.</i></span><o:p></o:p></div></div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">&nbsp;</span><o:p></o:p></div></div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">Is that what you actually intended to do? &nbsp;Send 10,000 packets to ALL/every network adapter on your local network?? &nbsp;(if your host has more than one network adapter on the same physical network segment then they’ll<span class="apple-converted-space">&nbsp;</span><i>both</i><span class="apple-converted-space">&nbsp;</span>receive every packet.)</span><o:p></o:p></div></div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">&nbsp;</span><o:p></o:p></div></div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">If you need a MAC address to test with, the IANNA has reserved the range 00-00-5E-00-00-00 through 00-00-5E-FF-FF-FF just for that purpose.</span><o:p></o:p></div></div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">&nbsp;</span><o:p></o:p></div></div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">See the section “IANA ETHERNET ADDRESS BLOCK - UNICAST USE” (about 0.75 of the way down the web page) in the following document:</span><o:p></o:p></div></div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">&nbsp;</span><o:p></o:p></div></div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; text-indent: 0.5in; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">&nbsp;<a href="http://www.iana.org/assignments/ethernet-numbers" style="color: blue; text-decoration: underline; ">http://www.iana.org/assignments/ethernet-numbers</a></span><o:p></o:p></div></div><div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 7.5pt; font-family: Arial, sans-serif; color: black; ">--<span class="apple-converted-space">&nbsp;</span></span><span style="color: rgb(31, 73, 125); "><br></span><span style="font-size: 13.5pt; font-family: Arial, sans-serif; color: black; ">&nbsp; "</span><b><span style="font-family: Arial, sans-serif; color: green; ">Fish</span></b><span style="font-size: 13.5pt; font-family: Arial, sans-serif; color: black; ">"</span><span style="font-size: 10pt; font-family: Arial, sans-serif; color: black; ">&nbsp; (</span><span style="font-size: 10pt; font-family: 'Comic Sans MS'; color: purple; ">David B. Trout</span><span style="font-size: 10pt; font-family: Arial, sans-serif; color: rgb(31, 73, 125); ">)</span><span class="apple-converted-space"><span style="color: rgb(31, 73, 125); ">&nbsp;</span></span><span style="color: rgb(31, 73, 125); "><br></span><span style="font-size: 10pt; font-family: Verdana, sans-serif; color: rgb(31, 73, 125); ">&nbsp;&nbsp;</span><span style="color: rgb(31, 73, 125); ">&nbsp;<span class="apple-converted-space">&nbsp;</span></span><u><span style="font-size: 10pt; font-family: Arial, sans-serif; color: blue; "><a href="mailto:fish@softdevlabs.com" style="color: blue; text-decoration: underline; ">fish@softdevlabs.com</a></span></u><o:p></o:p></div></div></div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 10.5pt; font-family: Calibri, sans-serif; color: rgb(31, 73, 125); ">&nbsp;</span><o:p></o:p></div></div><div style="border-top-style: none; border-right-style: none; border-bottom-style: none; border-width: initial; border-color: initial; border-left-style: solid; padding-top: 0in; padding-right: 0in; padding-bottom: 0in; padding-left: 4pt; border-width: initial; border-color: initial; "><div><div style="border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; border-top-style: solid; padding-top: 3pt; padding-right: 0in; padding-bottom: 0in; padding-left: 0in; border-width: initial; border-color: initial; "><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><b><span style="font-size: 10pt; font-family: Tahoma, sans-serif; ">From:</span></b><span class="apple-converted-space"><span style="font-size: 10pt; font-family: Tahoma, sans-serif; ">&nbsp;</span></span><span style="font-size: 10pt; font-family: Tahoma, sans-serif; "><a href="mailto:winpcap-users-bounces@winpcap.org" style="color: blue; text-decoration: underline; ">winpcap-users-bounces@winpcap.org</a><span class="apple-converted-space">&nbsp;</span>[mailto:winpcap-users-bounces@winpcap.org]<span class="apple-converted-space">&nbsp;</span><b>On Behalf Of<span class="apple-converted-space">&nbsp;</span></b>Alimjan Kuramshin<br><b>Sent:</b><span class="apple-converted-space">&nbsp;</span>Saturday, September 18, 2010 2:33 PM<br><b>To:</b><span class="apple-converted-space">&nbsp;</span><a href="mailto:winpcap-users@winpcap.org" style="color: blue; text-decoration: underline; ">winpcap-users@winpcap.org</a><br><b>Subject:</b><span class="apple-converted-space">&nbsp;</span>[Winpcap-users] WinPCAP packets capture delay..<br><b>Importance:</b><span class="apple-converted-space">&nbsp;</span>High</span><o:p></o:p></div></div></div></div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; ">&nbsp;<o:p></o:p></div></div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; ">Hello!<o:p></o:p></div></div><div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; ">&nbsp;<o:p></o:p></div></div></div><div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; ">Gianluca, can u run this code on Your machine and running the Wireshark save the log and send it to me, please..<o:p></o:p></div></div></div><div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; ">Is there any delays, i mean delays between the packets that Wireshark (winpcap) capture?<o:p></o:p></div></div></div><div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; ">&nbsp;<o:p></o:p></div></div></div><div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; ">P.S. code from WinPcap documentation, sending packets, not one, but 10000 (or 1000000)..<o:p></o:p></div></div></div><div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; ">&nbsp;<o:p></o:p></div></div></div><div><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; "><span class="preprocessor">#include &lt;stdlib.h&gt;</span><o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; "><span class="preprocessor">#include &lt;stdio.h&gt;</span><o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; "><span class="preprocessor">#include &lt;pcap.h&gt;</span><o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; "><span class="keywordtype">void</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">{<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; "><a href="http://www.winpcap.org/docs/docs_412/html/group__wpcap__def.html#ga4711d025f83503ce692efa5e45ec60a7" title="Descriptor of an open capture instance. This structure is opaque to the user, that..." style="color: blue; text-decoration: underline; ">pcap_t</a> *fp;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; "><span class="keywordtype">char</span> errbuf[<a href="http://www.winpcap.org/docs/docs_412/html/group__wpcap__def.html#gacd448353957d92c98fccc29e1fc8d927" title="Size to use when allocating the buffer that contains the libpcap errors." style="color: blue; text-decoration: underline; ">PCAP_ERRBUF_SIZE</a>];<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">u_char packet[100];<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; "><span class="keywordtype">int</span> i;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">volatile int n_pkts = 10000; // 1000000<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; <span class="comment">/* Check the validity of the command line */</span><o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; <span class="keywordflow">if</span> (argc != 2)<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; {<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; printf(<span class="stringliteral">"usage: %s interface (e.g. 'rpcap://eth0')"</span>, argv[0]);<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span class="keywordflow">return</span>;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; }<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; <o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">/* Open the output device */</span><o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; <span class="keywordflow">if</span> ( (fp= <a href="http://www.winpcap.org/docs/docs_412/html/group__wpcapfunc.html#ga2b64c7b6490090d1d37088794f1f1791" title="Open a generic source in order to capture / send (WinPcap only) traffic." style="color: blue; text-decoration: underline; ">pcap_open</a>(argv[1],&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span class="comment">// name of the device</span><o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 65536,&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">// portion of the packet to capture (only the first 100 bytes)</span><o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <a href="http://www.winpcap.org/docs/docs_412/html/group__remote__open__flags.html#ga9134ce51a9a6a7d497c3dee5affdc3b9" title="Defines if the adapter has to go in promiscuous mode." style="color: blue; text-decoration: underline; ">PCAP_OPENFLAG_PROMISCUOUS</a>,&nbsp; <span class="comment">// promiscuous mode</span><o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1000,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span class="comment">// read timeout</span><o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; NULL,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span class="comment">// authentication on the remote machine</span><o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; errbuf&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">// error buffer</span><o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ) ) == NULL)<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; {<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fprintf(stderr,<span class="stringliteral">"\nUnable to open the adapter. %s is not supported by WinPcap\n"</span>, argv[1]);<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span class="keywordflow">return</span>;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; }<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; <span class="comment">/* Supposing to be on ethernet, set mac destination to 1:1:1:1:1:1 */</span><o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; packet[0]=1;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; packet[1]=1;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; packet[2]=1;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; packet[3]=1;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; packet[4]=1;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; packet[5]=1;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; <o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">/* set mac source to 2:2:2:2:2:2 */</span><o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; packet[6]=2;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; packet[7]=2;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; packet[8]=2;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; packet[9]=2;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; packet[10]=2;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; packet[11]=2;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; <o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">/* Fill the rest of the packet */</span><o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; <span class="keywordflow">for</span>(i=12;i&lt;100;i++)<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; {<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; packet[i]=(u_char)i;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; }<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; while (n_pkts--)<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; <span class="comment">/* Send down the packet */</span><o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; <span class="keywordflow">if</span> (<a href="http://www.winpcap.org/docs/docs_412/html/group__wpcapfunc.html#ga51dbda0f1ab9da2cfe49d657486d50b2" title="Send a raw packet." style="color: blue; text-decoration: underline; ">pcap_sendpacket</a>(fp, packet, 100 <span class="comment">/* size */</span>) != 0)<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; {<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fprintf(stderr,<span class="stringliteral">"\nError sending the packet: %s\n"</span>, <a href="http://www.winpcap.org/docs/docs_412/html/group__wpcapfunc.html#ga81305cb154e4497e95bbb9b708631a3a" title="return the error text pertaining to the last pcap library error." style="color: blue; text-decoration: underline; ">pcap_geterr</a>(fp));<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span class="keywordflow">return</span>;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; }<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;&nbsp;&nbsp; <span class="keywordflow">return</span>;<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">}<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">/* EOF */<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">Thanks, bye..<o:p></o:p></pre><pre style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 10pt; font-family: 'Courier New'; ">&nbsp;<o:p></o:p></pre><div><div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; ">&nbsp;<o:p></o:p></div></div></div></div></div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><span style="font-size: 13.5pt; font-family: 'Geneva CY', serif; ">_______________________________________________<br>Winpcap-users mailing list<br><a href="mailto:Winpcap-users@winpcap.org" style="color: blue; text-decoration: underline; ">Winpcap-users@winpcap.org</a><br><a href="https://www.winpcap.org/mailman/listinfo/winpcap-users" style="color: blue; text-decoration: underline; ">https://www.winpcap.org/mailman/listinfo/winpcap-users</a><o:p></o:p></span></div></div></div><div style="margin-top: 0in; margin-right: 0in; margin-bottom: 0.0001pt; margin-left: 0in; font-size: 12pt; font-family: 'Times New Roman', serif; "><o:p>&nbsp;</o:p></div></div></div>_______________________________________________<br>Winpcap-users mailing list<br><a href="mailto:Winpcap-users@winpcap.org" style="color: blue; text-decoration: underline; ">Winpcap-users@winpcap.org</a><br><a href="https://www.winpcap.org/mailman/listinfo/winpcap-users" style="color: blue; text-decoration: underline; ">https://www.winpcap.org/mailman/listinfo/winpcap-users</a><br></div></span></blockquote></div><br></div></div></body></html>