<html><body><div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:12pt"><div><!--[if gte mso 9]><xml>
<w:WordDocument>
<w:View>Normal</w:View>
<w:Zoom>0</w:Zoom>
<w:TrackMoves/>
<w:TrackFormatting/>
<w:PunctuationKerning/>
<w:ValidateAgainstSchemas/>
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:DoNotPromoteQF/>
<w:LidThemeOther>EN-US</w:LidThemeOther>
<w:LidThemeAsian>X-NONE</w:LidThemeAsian>
<w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript>
<w:Compatibility>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
<w:DontGrowAutofit/>
<w:SplitPgBreakAndParaMark/>
<w:DontVertAlignCellWithSp/>
<w:DontBreakConstrainedForcedTables/>
<w:DontVertAlignInTxbx/>
<w:Word11KerningPairs/>
<w:CachedColBalance/>
</w:Compatibility>
<w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
<m:mathPr>
<m:mathFont m:val="Cambria Math"/>
<m:brkBin m:val="before"/>
<m:brkBinSub m:val="--"/>
<m:smallFrac m:val="off"/>
<m:dispDef/>
<m:lMargin m:val="0"/>
<m:rMargin m:val="0"/>
<m:defJc m:val="centerGroup"/>
<m:wrapIndent m:val="1440"/>
<m:intLim m:val="subSup"/>
<m:naryLim m:val="undOvr"/>
</m:mathPr></w:WordDocument>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true"
DefSemiHidden="true" DefQFormat="false" DefPriority="99"
LatentStyleCount="267">
<w:LsdException Locked="false" Priority="0" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Normal"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="heading 1"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9"/>
<w:LsdException Locked="false" Priority="39" Name="toc 1"/>
<w:LsdException Locked="false" Priority="39" Name="toc 2"/>
<w:LsdException Locked="false" Priority="39" Name="toc 3"/>
<w:LsdException Locked="false" Priority="39" Name="toc 4"/>
<w:LsdException Locked="false" Priority="39" Name="toc 5"/>
<w:LsdException Locked="false" Priority="39" Name="toc 6"/>
<w:LsdException Locked="false" Priority="39" Name="toc 7"/>
<w:LsdException Locked="false" Priority="39" Name="toc 8"/>
<w:LsdException Locked="false" Priority="39" Name="toc 9"/>
<w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption"/>
<w:LsdException Locked="false" Priority="10" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Title"/>
<w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font"/>
<w:LsdException Locked="false" Priority="11" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Subtitle"/>
<w:LsdException Locked="false" Priority="22" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Strong"/>
<w:LsdException Locked="false" Priority="20" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Emphasis"/>
<w:LsdException Locked="false" Priority="59" SemiHidden="false"
UnhideWhenUsed="false" Name="Table Grid"/>
<w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text"/>
<w:LsdException Locked="false" Priority="1" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="No Spacing"/>
<w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading"/>
<w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List"/>
<w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid"/>
<w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1"/>
<w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2"/>
<w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1"/>
<w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2"/>
<w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1"/>
<w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2"/>
<w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3"/>
<w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List"/>
<w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading"/>
<w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List"/>
<w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid"/>
<w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading Accent 1"/>
<w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List Accent 1"/>
<w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid Accent 1"/>
<w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1"/>
<w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1"/>
<w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1 Accent 1"/>
<w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision"/>
<w:LsdException Locked="false" Priority="34" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="List Paragraph"/>
<w:LsdException Locked="false" Priority="29" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Quote"/>
<w:LsdException Locked="false" Priority="30" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Intense Quote"/>
<w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2 Accent 1"/>
<w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1"/>
<w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1"/>
<w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1"/>
<w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List Accent 1"/>
<w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading Accent 1"/>
<w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List Accent 1"/>
<w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid Accent 1"/>
<w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading Accent 2"/>
<w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List Accent 2"/>
<w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid Accent 2"/>
<w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2"/>
<w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2"/>
<w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1 Accent 2"/>
<w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2 Accent 2"/>
<w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2"/>
<w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2"/>
<w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2"/>
<w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List Accent 2"/>
<w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading Accent 2"/>
<w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List Accent 2"/>
<w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid Accent 2"/>
<w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading Accent 3"/>
<w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List Accent 3"/>
<w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid Accent 3"/>
<w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3"/>
<w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3"/>
<w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1 Accent 3"/>
<w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2 Accent 3"/>
<w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3"/>
<w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3"/>
<w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3"/>
<w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List Accent 3"/>
<w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading Accent 3"/>
<w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List Accent 3"/>
<w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid Accent 3"/>
<w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading Accent 4"/>
<w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List Accent 4"/>
<w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid Accent 4"/>
<w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4"/>
<w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4"/>
<w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1 Accent 4"/>
<w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2 Accent 4"/>
<w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4"/>
<w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4"/>
<w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4"/>
<w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List Accent 4"/>
<w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading Accent 4"/>
<w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List Accent 4"/>
<w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid Accent 4"/>
<w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading Accent 5"/>
<w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List Accent 5"/>
<w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid Accent 5"/>
<w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5"/>
<w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5"/>
<w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1 Accent 5"/>
<w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2 Accent 5"/>
<w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5"/>
<w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5"/>
<w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5"/>
<w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List Accent 5"/>
<w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading Accent 5"/>
<w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List Accent 5"/>
<w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid Accent 5"/>
<w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading Accent 6"/>
<w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List Accent 6"/>
<w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid Accent 6"/>
<w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6"/>
<w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6"/>
<w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1 Accent 6"/>
<w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2 Accent 6"/>
<w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6"/>
<w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6"/>
<w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6"/>
<w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List Accent 6"/>
<w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading Accent 6"/>
<w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List Accent 6"/>
<w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid Accent 6"/>
<w:LsdException Locked="false" Priority="19" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis"/>
<w:LsdException Locked="false" Priority="21" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis"/>
<w:LsdException Locked="false" Priority="31" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference"/>
<w:LsdException Locked="false" Priority="32" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Intense Reference"/>
<w:LsdException Locked="false" Priority="33" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Book Title"/>
<w:LsdException Locked="false" Priority="37" Name="Bibliography"/>
<w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading"/>
</w:LatentStyles>
</xml><![endif]--><!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Table Normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-qformat:yes;
mso-style-parent:"";
mso-padding-alt:0in 5.4pt 0in 5.4pt;
mso-para-margin:0in;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:"Calibri","sans-serif";
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;}
</style>
<![endif]-->
</div><div class="MsoNormal">Sorry, here is the site for tutorial 7 I was referring to. <span style="mso-spacerun:yes"> </span>And I was incorrect with that.<span style="mso-spacerun:yes"> </span>It is actually tutorial 6. I got the “tutorial
6” from the link name.<span style="mso-spacerun:yes"> </span></div>
<div class="MsoNormal"> </div>
<div class="MsoNormal"><a href="http://www.winpcap.org/docs/docs_412/html/group__wpcap__tut6.html">http://www.winpcap.org/docs/docs_412/html/group__wpcap__tut6.html</a></div>
<div class="MsoNormal"> </div>
<div class="MsoNormal">I also added</div>
<div class="MsoListParagraph" style="text-indent:-.25in;mso-list:l0 level1 lfo1"><span style="mso-bidi-font-family:Calibri;mso-bidi-theme-font:minor-latin"><span style="mso-list:Ignore">1.<span style="font:7.0pt "Times New Roman"">
</span></span></span>As a global</div>
<div class="MsoNormal" style="margin-left:.5in;text-indent:.5in"><span style="font-size:10.0pt;font-family:"Courier New";color:blue;mso-no-proof:yes">long</span><span style="font-size:10.0pt;font-family:"Courier New";mso-no-proof:yes">
TotalPackets=0;.<span style="mso-spacerun:yes"> </span></span></div>
<div class="MsoListParagraph" style="text-indent:-.25in;mso-list:l0 level1 lfo1"><span style="font-size:10.0pt;font-family:"Courier New";mso-fareast-font-family:"Courier New";
mso-no-proof:yes"><span style="mso-list:Ignore">2.<span style="font:7.0pt "Times New Roman"">
</span></span></span><span style="font-size:10.0pt;font-family:"Courier New";
mso-no-proof:yes">And to the packet handler callback, </span></div>
<div class="MsoNormal" style="mso-layout-grid-align:none;text-autospace:none"><span style="font-size:10.0pt;font-family:"Courier New";mso-no-proof:yes"><span style="mso-tab-count:1"> </span><span style="mso-tab-count:1"> </span><span style="color:green">// Total Packets</span></span></div>
<div class="MsoNormal" style="mso-layout-grid-align:none;text-autospace:none"><span style="font-size:10.0pt;font-family:"Courier New";mso-no-proof:yes"><span style="mso-spacerun:yes"> </span><span style="mso-tab-count:1"> </span><span style="mso-tab-count:1"> </span>Packets.QuadPart =
(*(LONGLONG*)(pkt_data));</span></div>
<div class="MsoNormal"><span style="font-size:10.0pt;font-family:"Courier New";
mso-no-proof:yes"><span style="mso-tab-count:1"> </span><span style="mso-tab-count:1"> </span>TotalPackets = TotalPackets +
Packets.QuadPart;</span></div>
<div class="MsoNormal"> </div>
<div class="MsoNormal">For data generation, you can use the “winpcap/Examples/PacketDriver/TestPacketSend”
project in the example source code as is.<span style="mso-spacerun:yes">
</span></div>
<div><br></div> <div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"> <div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"> <div dir="ltr"> <font face="Arial" size="2"> <hr size="1"> <b><span style="font-weight:bold;">From:</span></b> "Black, Michael (IS)" <Michael.Black2@ngc.com><br> <b><span style="font-weight: bold;">To:</span></b> Kyle Simons <simonskj05@yahoo.com>; "winpcap-users@winpcap.org" <winpcap-users@winpcap.org> <br> <b><span style="font-weight: bold;">Sent:</span></b> Monday, July 16, 2012 2:50 PM<br> <b><span style="font-weight: bold;">Subject:</span></b> RE:[Winpcap-users] Occasional packet loss?<br> </font> </div> <br>
<div id="yiv420014376">
<style>#yiv420014376 P {
MARGIN-TOP:0px;MARGIN-BOTTOM:0px;}
</style>
<div>
<div style="FONT-FAMILY:Tahoma;DIRECTION:ltr;COLOR:#000000;FONT-SIZE:10pt;">
<div>What is "tutorial 6" ???</div>
<div> </div>
<div>Would you care to share your code so we can see what you're doing?</div>
<div>
<div> </div>
<div style="FONT-FAMILY:Tahoma;FONT-SIZE:13px;">
<div>Michael D. Black<br>
Senior Scientist<br>
Advanced Analytics Directorate<br>
Advanced GEOINT Solutions Operating Unit<br>
Northrop Grumman Information Systems<br>
</div>
</div>
</div>
<hr tabindex="-1">
<div style="DIRECTION:ltr;" id="yiv420014376divRpF993693"><font face="Tahoma" size="2" color="#000000"><b>From:</b> winpcap-users-bounces@winpcap.org [winpcap-users-bounces@winpcap.org] on behalf of Kyle Simons [simonskj05@yahoo.com]<br>
<b>Sent:</b> Monday, July 16, 2012 1:32 PM<br>
<b>To:</b> winpcap-users@winpcap.org<br>
<b>Subject:</b> EXT :[Winpcap-users] Occasional packet loss?<br>
</font><br>
</div>
<div></div>
<div>
<div style="BACKGROUND-COLOR:#fff;FONT-FAMILY:times new roman, new york, times, serif;COLOR:#000;FONT-SIZE:12pt;">
<div></div>
<div class="yiv420014376MsoNormal">Hello everyone.<span> </span>I am hoping someone may be able to offer some ideas or suggestions.<span>
</span>Basically, I am seeing some occasional packet loss on the RX side of the NIC and wanted to address it.<span>
</span>Typically, I see the NIC not being able to detect one packet out of 8,000,000 on average.<span>
</span>Maybe this is normal with PC HW/SW limitations???? </div>
<div class="yiv420014376MsoNormal"> </div>
<div class="yiv420014376MsoNormal">The packets I send are the same packet over and over (identical).<span>
</span>Let me do my best explaining what I am seeing and the things I have tried so far.<span>
</span></div>
<div class="yiv420014376MsoNormal"> </div>
<div class="yiv420014376MsoNormal">I implemented the packet counters in a few ways.<span> </span>
I see the issue all 3 ways.</div>
<div style="" class="yiv420014376MsoListParagraph"><span><span>1.<span style="FONT:7pt 'Times New Roman';">
</span></span></span>1. Using the code from tutorial 6 with no filter</div>
<div style="" class="yiv420014376MsoListParagraph"><span><span>2.<span style="FONT:7pt 'Times New Roman';"> 2.
</span></span></span>Using the code from tutorial 6 with a filter</div>
<div style="" class="yiv420014376MsoListParagraph"><span><span>3.<span style="FONT:7pt 'Times New Roman';">
</span></span></span>3. Using pcap_stats function.<br>
</div>
<div style="MARGIN-LEFT:0.25in;" class="yiv420014376MsoNormal"> </div>
<div class="yiv420014376MsoNormal">I like methods 1 and 2 above because I see what the data rate is.<span>
</span>Also allows me to filter.</div>
<div style="MARGIN-LEFT:0.25in;" class="yiv420014376MsoNormal"> </div>
<div class="yiv420014376MsoNormal">I am generating traffic in multiple ways. All three experience the issue.</div>
<div style="" class="yiv420014376MsoListParagraph"><span><span>1.<span style="FONT:7pt 'Times New Roman';">
</span></span></span>1. Having the NIC generate traffic and using SmartBits to receive it.<span>
</span>Also I am using the above RX methods to detect packets being sent out.</div>
<div style="" class="yiv420014376MsoListParagraph"><span><span>2.<span style="FONT:7pt 'Times New Roman';">
</span></span></span>2. Routing cable from one NIC to another in the same PC. So, one NIC sends data out and the other captures (counts) it.</div>
<div style="" class="yiv420014376MsoListParagraph"><span><span>3.<span style="FONT:7pt 'Times New Roman';">
</span></span></span>3. Using Data Generator Equipment like SmartBits to generate and the PC recieves</div>
<div style="MARGIN-LEFT:0.25in;" class="yiv420014376MsoNormal"> </div>
<div class="yiv420014376MsoNormal">I have connected an Analyzer (SmartBits) to the NIC on method 1 above and I can see the data generation from the PC is always correct.<span>
</span>The number of packets being sent out (what I am telling it to send) makes it to the SmartBits.<span>
</span>Except I see the occasional packet loss on the NIC (outbound). So, I would think/expect the wpcap software should detect the number of outgoing packets correctly all the time??<span>
</span></div>
<div class="yiv420014376MsoNormal"> </div>
<div class="yiv420014376MsoNormal">On method 2, if I run the analyzer (stats) on both NIC’s, they will mismatch as well.<span>
</span>For example, the second NIC (receiver) counts the right number of packets being sent from the first NIC.<span>
</span>But the first NIC misses one.<span> </span>And vice versa too.</div>
<div class="yiv420014376MsoNormal"> </div>
<div class="yiv420014376MsoNormal">In the method 1 above, I tried both the buffer send method and using the nwrite method.<span>
</span>Same results.</div>
<div style="MARGIN-LEFT:0.25in;" class="yiv420014376MsoNormal"> </div>
<div class="yiv420014376MsoNormal">I have tried to slow down the traffic.<span> </span>Say 400Mb/s vs 960Mb/s on a 1G NIC.<span>
</span>Slowing it down helps slightly, but does not fix it. </div>
<div class="yiv420014376MsoNormal"> </div>
<div class="yiv420014376MsoNormal">If I change the timeout in the open command from 250 to 2000, not much changes.<span>
</span>If I change it to 5000, it helps.<span> </span>Of course, it is slower to report.<span>
</span>This is true for tutorial 6 code.<span> </span>I am not sure about pcap_stats.<span>
</span>I still need to try it.</div>
<div class="yiv420014376MsoNormal"> </div>
<div class="yiv420014376MsoNormal">I tried the snaplen in the open command from 100 to 65000.
<span> </span>I still see the issue.</div>
<div class="yiv420014376MsoNormal"> </div>
<div class="yiv420014376MsoNormal">I tried setting the buffer (pcap_setbuff) from 1,000,000 to 4,000,000 to 6,000,000.<span>
</span>Still see the issue.</div>
<div style="MARGIN-LEFT:0.25in;" class="yiv420014376MsoNormal"> </div>
<div class="yiv420014376MsoNormal">I have tried numerous NICs (5 different ones).</div>
<div style="MARGIN-LEFT:0.25in;" class="yiv420014376MsoNormal"> </div>
<div class="yiv420014376MsoNormal">I have tried two different machines.<span> </span>One is a Intel I7 3820 (Quad Core) and the other is slower Intel Core 2 6700 (2.67MHZ) 2 GB RAM (Dual Core).<span>
</span>They both behave the same. </div>
<div style="MARGIN-LEFT:0.25in;" class="yiv420014376MsoNormal"> </div>
<div class="yiv420014376MsoNormal">I used a 10Gig NIC and similar results.<span> </span>It is easier to see the loss because I can send more packets quicker.<span>
</span>Versus on a 1G, it may take 2-3 minutes before I see it.</div>
<div class="yiv420014376MsoNormal"> </div>
<div class="yiv420014376MsoNormal">I tried modifying the PC buffers using a tool called “TCPOptimizer”.<span>
</span>Maybe it slightly helps.</div>
<div class="yiv420014376MsoNormal"> </div>
<div class="yiv420014376MsoNormal">I created numerous programs: One in C++, one in C#, one using threads, etc. and the issue is still there.</div>
<div class="yiv420014376MsoNormal"> </div>
<div class="yiv420014376MsoNormal">I think that’s it so far with my ideas. <span style="FONT-FAMILY:Wingdings;">
<span>J</span></span><span> </span>Anyone have any suggestions?<span> </span>I know it is only 1 packet every few minutes but 1 packet loss is a big deal for testing too.
</div>
<div class="yiv420014376MsoNormal"> </div>
<div class="yiv420014376MsoNormal">Thanks!</div>
</div>
</div>
</div>
</div>
</div><br><br> </div> </div> </div></body></html>