<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="/rss.xsl"?><rss version="2.0"><channel><title>NMParsers Discussions Rss Feed</title><link>http://www.codeplex.com/NMParsers/Thread/List.aspx</link><description>NMParsers Discussions Rss Description</description><item><title>New Post: SCCP, MGCP and EIGRP (Cisco Protocols) not supported in Microsoft NetMon</title><link>http://nmparsers.codeplex.com/discussions/436809</link><description>&lt;div style="line-height: normal;"&gt;Hey Paul,&lt;br /&gt;
&lt;br /&gt;
Up until I found out about Microsoft Network Monitor, I was using another network packet capture/analyzer called Wireshark, which is also a free program. It is pretty much the Gold Standard when it comes to network packet capture analysis. What it does is that it allows you to choose which network interface(s) on your machine that you want to analyze packets and it will capture all of them. When you click on an individual packet in a trace, it separates all of layers according to the Internet/OSI model (i.e. Physical Layer, Data-Link Layer, Network Layer, Transport Layer, and Application Layer). It recognizes pretty much every known protocol in the market today, and if it detects it, you can add a filter to show only packets from that protocol. What's even more impressive for me as a VoIP specialist, is that it has a &amp;quot;VoIP Calls&amp;quot; option which allows you to view all VoIP calls that passed through the interface, and it will show a graph of the message and media transactions between all nodes involved.&lt;br /&gt;
&lt;br /&gt;
However, There are a couple of flaws with Wireshark. They are:&lt;br /&gt;
&lt;br /&gt;
1) Does not support all interfaces types on a Windows Machine, ie. VPN connections, Some IPv6 Tunnel Broker client interfaces&lt;br /&gt;
&lt;br /&gt;
2) Choosing a network interface to capture is not always entirely clear as it shows it's Device ID rather than what is named in Windows Network Connections &lt;br /&gt;
For example: In Network Connections, one interface is named &amp;quot;Wireless Network Connection&amp;quot;. In Wireshark, it's shown as &amp;quot;Microsoft: \Device\NPF_{4C968491-1244-4B63-916D-62EAD36268DE}&amp;quot;. Message Analyzer (and NetMon) also did this, and I would like to see at least some kind of clear-cut correlation of the two. &lt;br /&gt;
&lt;br /&gt;
3) You cannot separate traffic via the application that used it in Wireshark. For example: In Microsoft Network Monitor, with my VoIP Phone client program, I was able to see all transactions between the VoIP client and the VoIP server. This cannot be done in Wireshark, and I have not seen it in Message Analyzer. This is a feature that should have been passed over from Network Monitor to Message Analyzer, so please bring it back! &lt;br /&gt;
&lt;br /&gt;
4) Packet capture sizes can become quite large over small periods of time and you may not even be able to open a capture that you made if it becomes too big. &lt;br /&gt;
&lt;br /&gt;
Overall, if Wireshark addressed these issues, it would be perfect. In my opinion, if you can model the network analysis portion of Message Analyzer to mirror Wireshark while addressing all of Wiresharks short-comings as mentioned above, there's no question I would use Message Analyzer. But for now, I'll continue to use the combination of Wireshark and Network Monitor for my packet analysis needs! I'll say this though, Network Monitor was on the right track, it just lacked the protocol support (ie. Skinny, MGCP, EIGRP) and didn't have the graph options or VoIP call options. &lt;br /&gt;
&lt;br /&gt;
I hope this helps. Let me know if you need any more opinions. I am glad to help!&lt;br /&gt;
&lt;br /&gt;
Thanks,&lt;br /&gt;
&lt;br /&gt;
John&lt;br /&gt;
&lt;/div&gt;</description><author>cecijohn</author><pubDate>Wed, 20 Mar 2013 16:32:11 GMT</pubDate><guid isPermaLink="false">New Post: SCCP, MGCP and EIGRP (Cisco Protocols) not supported in Microsoft NetMon 20130320043211P</guid></item><item><title>New Post: SCCP, MGCP and EIGRP (Cisco Protocols) not supported in Microsoft NetMon</title><link>http://nmparsers.codeplex.com/discussions/436809</link><description>&lt;div style="line-height: normal;"&gt;Hey Paul,&lt;br /&gt;
&lt;br /&gt;
Up until I found out about Microsoft Network Monitor, I was using another network packet capture/analyzer called Wireshark, which is also a free program. It is pretty much the Gold Standard when it comes to network packet capture analysis. What it does is that it allows you to choose which network interface(s) on your machine that you want to analyze packets and it will capture all of them. When you click on an individual packet in a trace, it separates all of layers according to the Internet/OSI model (i.e. Physical Layer, Data-Link Layer, Network Layer, Transport Layer, and Application Layer). It recognizes pretty much every known protocol in the market today, and if it detects it, you can add a filter to show only packets from that protocol. What's even more impressive for me as a VoIP specialist, is that it has a &amp;quot;VoIP Calls&amp;quot; option which allows you to view all VoIP calls that passed through the interface, and it will show a graph of the message and media transactions between all nodes involved.&lt;br /&gt;
&lt;br /&gt;
However, There are a couple of flaws with Wireshark. They are:&lt;br /&gt;
&lt;br /&gt;
1) Does not support all interfaces types on a Windows Machine, ie. VPN connections, Some IPv6 Tunnel Broker client interfaces&lt;br /&gt;
&lt;br /&gt;
2) Choosing a network interface to capture is not always entirely clear as it shows it's Device ID rather than what is named in Windows Network Connections &lt;br /&gt;
For example: In Network Connections, one interface is named &amp;quot;Wireless Network Connection&amp;quot;. In Wireshark, it's shown as &amp;quot;Microsoft: \Device\NPF_{4C968491-1244-4B63-916D-62EAD36268DE}&amp;quot;. Message Analyzer (and NetMon) also did this, and I would like to see at least some kind of clear-cut correlation of the two. &lt;br /&gt;
&lt;br /&gt;
3) You cannot separate traffic via the application that used it in Wireshark. For example: In Microsoft Network Monitor, with my VoIP Phone client program, I was able to see all transactions between the VoIP client and the VoIP server. This cannot be done in Wireshark, and I have not seen it in Message Analyzer. This is a feature that should have been passed over from Network Monitor to Message Analyzer, so please bring it back! &lt;br /&gt;
&lt;br /&gt;
4) Packet capture sizes can become quite large over small periods of time and you may not even be able to open a capture that you made if it becomes too big. &lt;br /&gt;
&lt;br /&gt;
Overall, if Wireshark addressed these issues, it would be perfect. In my opinion, if you can model the network analysis portion of Message Analyzer to mirror Wireshark while addressing all of Wiresharks short-comings as mentioned above, there's no question I would use Message Analyzer. But for now, I'll continue to use the combination of Wireshark and Network Monitor for my packet analysis needs! I'll say this though, Network Monitor was on the right track, it just lacked the protocol support (ie. Skinny, MGCP, EIGRP) and didn't have the graph options or VoIP call options. &lt;br /&gt;
&lt;br /&gt;
I hope this helps. Let me know if you need any more opinions. I am glad to help!&lt;br /&gt;
&lt;br /&gt;
Thanks,&lt;br /&gt;
&lt;br /&gt;
John&lt;br /&gt;
&lt;/div&gt;</description><author>cecijohn</author><pubDate>Wed, 20 Mar 2013 15:46:34 GMT</pubDate><guid isPermaLink="false">New Post: SCCP, MGCP and EIGRP (Cisco Protocols) not supported in Microsoft NetMon 20130320034634P</guid></item><item><title>New Post: SCCP, MGCP and EIGRP (Cisco Protocols) not supported in Microsoft NetMon</title><link>http://nmparsers.codeplex.com/discussions/436809</link><description>&lt;div style="line-height: normal;"&gt;Hey Paul,&lt;br /&gt;
&lt;br /&gt;
Up until I found out about Microsoft Network Monitor, I was using another network packet capture/analyzer called Wireshark, which is also a free program. It is pretty much the Gold Standard when it comes to network packet capture analysis. What it does is that it allows you to choose which network interface(s) on your machine that you want to analyze packets and it will capture all of them. When you click on an individual packet in a trace, it separates all of layers according to the Internet/OSI model (i.e. Physical Layer, Data-Link Layer, Network Layer, Transport Layer, and Application Layer). It recognizes pretty much every known protocol in the market today, and if it detects it, you can add a filter to show only packets from that protocol. What's even more impressive for me as a VoIP specialist, is that it has a &amp;quot;VoIP Calls&amp;quot; option which allows you to view all VoIP calls that passed through the interface, and it will show a graph of the message and media transactions between all nodes involved.&lt;br /&gt;
&lt;br /&gt;
However, There are a couple of flaws with Wireshark. They are:&lt;br /&gt;
&lt;br /&gt;
1) Does not support all interfaces types on a Windows Machine, ie. VPN connections, Some IPv6 Tunnel Broker client interfaces&lt;br /&gt;
&lt;br /&gt;
2) Choosing a network interface to capture is not always entirely clear as it shows it's Device ID rather than what is named in Windows Network Connections &lt;br /&gt;
For example: In Network Connections, one interface is named &amp;quot;Wireless Network Connection&amp;quot;. In Wireshark, it's shown as &amp;quot;Microsoft: \Device\NPF_{4C968491-1244-4B63-916D-62EAD36268DE}&amp;quot;. Message Analyzer (and NetMon) also did this, and I would like to see at least some kind of clear-cut correlation of the two. &lt;br /&gt;
&lt;br /&gt;
3) You cannot separate traffic via the application that used it in Wireshark. For example: In Microsoft Network Monitor, with my VoIP Phone client program, I was able to see all transactions between the VoIP client and the VoIP server. This cannot be done in Wireshark, and I have not seen it in Message Analyzer. This is a feature that should have been passed over from Network Monitor to Message Analyzer, so please bring it back! &lt;br /&gt;
&lt;br /&gt;
4) Packet capture sizes can become quite large over small periods of time and you may not even be able to open a capture that you made if it becomes too big. &lt;br /&gt;
&lt;br /&gt;
Overall, if Wireshark addressed these issues, it would be perfect. In my opinion, if you can model the network analysis portion of Message Analyzer to mirror Wireshark while addressing all of Wiresharks short-comings as mentioned above, there's no question I would use Message Analyzer. But for now, I'll continue to use the combination of Wireshark and Network Monitor for my packet analysis needs! I'll say this though, Network Monitor was on the right track, it just lacked the protocol support (ie. Skinny, MGCP, EIGRP) and didn't have the graph options or VoIP call options. &lt;br /&gt;
&lt;br /&gt;
I hope this helps. Let me know if you need any more opinions. I am glad to help!&lt;br /&gt;
&lt;br /&gt;
Thanks,&lt;br /&gt;
&lt;br /&gt;
John&lt;br /&gt;
&lt;/div&gt;</description><author>cecijohn</author><pubDate>Tue, 19 Mar 2013 22:36:07 GMT</pubDate><guid isPermaLink="false">New Post: SCCP, MGCP and EIGRP (Cisco Protocols) not supported in Microsoft NetMon 20130319103607P</guid></item><item><title>New Post: SCCP, MGCP and EIGRP (Cisco Protocols) not supported in Microsoft NetMon</title><link>http://nmparsers.codeplex.com/discussions/436809</link><description>&lt;div style="line-height: normal;"&gt;Hey Paul,&lt;br /&gt;
&lt;br /&gt;
Other than Microsoft Network Monitor, I primarily use another network packet capture/analyzer called Wireshark, which is also a free program. It is pretty much the Gold Standard when it comes to network packet capture analysis. What it does is that it allows you to choose which network interface(s) on your machine that you want to analyze packets and it will capture all of them. When you click on an individual packet in a trace, it separates all of layers according to the Internet/OSI model (i.e. Physical Layer, Data-Link Layer, Network Layer, Transport Layer, and Application Layer). It recognizes pretty much every known protocol in the market today, and if it detects it, you can add a filter to show only packets from that protocol. What's even more impressive for me as a VoIP specialist, is that it has a &amp;quot;VoIP Calls&amp;quot; option which allows you to view all VoIP calls that passed through the interface, and it will show a graph of the message and media transactions between all nodes involved.&lt;br /&gt;
&lt;br /&gt;
However, There are a couple of flaws with Wireshark. They are:&lt;br /&gt;
&lt;br /&gt;
1) Does not support all interfaces types on a Windows Machine, ie. VPN connections, Some IPv6 Tunnel Broker client interfaces&lt;br /&gt;
&lt;br /&gt;
2) Choosing a network interface to capture is not always entirely clear as it shows it's Device ID rather than what is named in Windows Network Connections &lt;br /&gt;
For example: In Network Connections, one interface is named &amp;quot;Wireless Network Connection&amp;quot;. In Wireshark, it's shown as &amp;quot;Microsoft: \Device\NPF_{4C968491-1244-4B63-916D-62EAD36268DE}&amp;quot;. Message Analyzer (and NetMon) also did this, and I would like to see at least some kind of clear-cut correlation of the two. &lt;br /&gt;
&lt;br /&gt;
3) You cannot separate traffic via the application that used it in Wireshark. For example: In Microsoft Network Monitor, with my VoIP Phone client program, I was able to see all transactions between the VoIP client and the VoIP server. This cannot be done in Wireshark, and I have not seen it in Message Analyzer. This is a feature that should have been passed over from Network Monitor to Message Analyzer, so please bring it back! &lt;br /&gt;
&lt;br /&gt;
4) Packet capture sizes can become quite large over small periods of time and you may not even be able to open a capture that you made if it becomes too big. &lt;br /&gt;
&lt;br /&gt;
Overall, if Wireshark addressed these issues, it would be perfect. In my opinion, if you can model the network analysis portion of Message Analyzer to mirror Wireshark while addressing all of Wiresharks short-comings as mentioned above, there's no question I would use Message Analyzer. But for now, I'll continue to use the combination of Wireshark and Network Monitor for my packet analysis needs! I'll say this though, Network Monitor was on the right track, it just lacked the protocol support (ie. Skinny, MGCP, EIGRP) and didn't have the graph options or VoIP call options. &lt;br /&gt;
&lt;br /&gt;
I hope this helps. Let me know if you need any more opinions. I am glad to help!&lt;br /&gt;
&lt;br /&gt;
Thanks,&lt;br /&gt;
&lt;br /&gt;
John&lt;br /&gt;
&lt;/div&gt;</description><author>cecijohn</author><pubDate>Tue, 19 Mar 2013 19:27:24 GMT</pubDate><guid isPermaLink="false">New Post: SCCP, MGCP and EIGRP (Cisco Protocols) not supported in Microsoft NetMon 20130319072724P</guid></item><item><title>New Post: SCCP, MGCP and EIGRP (Cisco Protocols) not supported in Microsoft NetMon</title><link>http://nmparsers.codeplex.com/discussions/436809</link><description>&lt;div style="line-height: normal;"&gt;Yes, thanks for the documentation pointers.  That will help.&lt;br /&gt;
&lt;br /&gt;
Regarding the Network Interface, it's certainly has changed.  We now have Trace Scenarios because we are more than just a network sniffer, we can analyze many streams of data from different sources and formats.  However, I see where we could make it easier to support the &amp;quot;Capture From Network Interface&amp;quot; scenario.  At this point Link Layer captures all Network Interfaces by default.  And you could take that as a start and create a scenario you would use most often and save it to the list.  So perhaps that's a mitigation for now.&lt;br /&gt;
&lt;br /&gt;
Regarding the previous capture and process info, we haven't implemented that yet.  But it's on our radar and if we don't get it for v1, you won't have to wait too long for a refresh of some sort.&lt;br /&gt;
&lt;br /&gt;
In terms of what you need to analyze this traffic, what do you use?  Do you think that our visualizations could help?  What types of diagnosis would help you see problems?&lt;br /&gt;
&lt;br /&gt;
Thanks,&lt;br /&gt;
&lt;br /&gt;
Paul&lt;br /&gt;
&lt;/div&gt;</description><author>PaulLong</author><pubDate>Tue, 19 Mar 2013 16:13:40 GMT</pubDate><guid isPermaLink="false">New Post: SCCP, MGCP and EIGRP (Cisco Protocols) not supported in Microsoft NetMon 20130319041340P</guid></item><item><title>New Post: SCCP, MGCP and EIGRP (Cisco Protocols) not supported in Microsoft NetMon</title><link>http://nmparsers.codeplex.com/discussions/436809</link><description>&lt;div style="line-height: normal;"&gt;Hey Paul,&lt;br /&gt;
&lt;br /&gt;
Thanks for the reply Paul. The protocols SCCP and MGCP are pretty well known protocols in Cisco VoIP. For example, SCCP is used for Cisco IP phones to register with the Cisco Unified Communications Manager (CallManager) and analyzing the transactions between the two can help determine issues with registration. MGCP is also a call-processing protocol. EIGRP as you may know is a Routing protocol. Unfortunately I cannot find RFCs or detailed specifications for SCCP, but there are for EIGRP and MGCP. Here is all the info I can gather on them:&lt;br /&gt;
&lt;br /&gt;
SCCP = Skinny Call Control Protocol (Usually just referred to as Skinny)&lt;br /&gt;
Runs over TCP, on port 2000&lt;br /&gt;
&lt;strong&gt;&lt;strong&gt;Note: This shouldn't be confused with the Signalling Connection Control Part from SS7 Signalling Stack&lt;/strong&gt;&lt;/strong&gt;&lt;br /&gt;
&lt;a href="http://en.wikipedia.org/wiki/Skinny_Call_Control_Protocol" rel="nofollow"&gt;http://en.wikipedia.org/wiki/Skinny_Call_Control_Protocol&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://wiki.wireshark.org/SKINNY" rel="nofollow"&gt;http://wiki.wireshark.org/SKINNY&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
EIGRP = Enhanced Interior Gateway Routing Protocol&lt;br /&gt;
RFC = &lt;a href="http://tools.ietf.org/html/draft-savage-eigrp-00" rel="nofollow"&gt;http://tools.ietf.org/html/draft-savage-eigrp-00&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
MGCP = Media Gateway Control Protocol&lt;br /&gt;
RFC = &lt;a href="http://www.ietf.org/rfc/rfc2705.txt" rel="nofollow"&gt;http://www.ietf.org/rfc/rfc2705.txt&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
By the way, thanks for letting me know that Message Analyzer was the new NetMon. I installed it already, although it does look a bit more confusing than Network Monitor. For example, it's not clear how to choose which Network Interface I want to monitor because the names are not the same as the connection names. Also when I open up a previous capture, I cannot separate the traffic based on which application it was using. I hope these will be addressed in the final release.&lt;br /&gt;
&lt;br /&gt;
Thanks!&lt;br /&gt;
&lt;br /&gt;
John&lt;br /&gt;
&lt;/div&gt;</description><author>cecijohn</author><pubDate>Mon, 18 Mar 2013 16:12:52 GMT</pubDate><guid isPermaLink="false">New Post: SCCP, MGCP and EIGRP (Cisco Protocols) not supported in Microsoft NetMon 20130318041252P</guid></item><item><title>New Post: SCCP, MGCP and EIGRP (Cisco Protocols) not supported in Microsoft NetMon</title><link>http://nmparsers.codeplex.com/discussions/436809</link><description>&lt;div style="line-height: normal;"&gt;If you mean proprietary, there is no public documentation, then that would be a problem.  And for Network Monitor, it's at the end of it's life as we are moving on to Message Analyzer (&lt;a href="http://blogs.technet.com/MessageAnalyzer" rel="nofollow"&gt;http://blogs.technet.com/MessageAnalyzer&lt;/a&gt;).&lt;br /&gt;
&lt;br /&gt;
But I you know of detailed RFC or specification, we could put it on our list for Message Analyzer.  Also perhaps you could add some justification here so we understand why it might be a priority for you.  It would be nice to understand how you troubleshoot  with these protocols and in what scenarios they are important for you.&lt;br /&gt;
&lt;br /&gt;
Thanks,&lt;br /&gt;
&lt;br /&gt;
Paul&lt;br /&gt;
&lt;/div&gt;</description><author>PaulLong</author><pubDate>Mon, 18 Mar 2013 13:34:48 GMT</pubDate><guid isPermaLink="false">New Post: SCCP, MGCP and EIGRP (Cisco Protocols) not supported in Microsoft NetMon 20130318013448P</guid></item><item><title>New Post: SCCP, MGCP and EIGRP (Cisco Protocols) not supported in Microsoft NetMon</title><link>http://nmparsers.codeplex.com/discussions/436809</link><description>&lt;div style="line-height: normal;"&gt;Hey Everyone,&lt;br /&gt;
&lt;br /&gt;
I love using Microsoft NetMon, but I was wondering why it doesn't support Cisco proprietary protocols such as SCCP, MGCP, and EIGRP (Although EIGRP recently became Open Standard). I would love to see those added to the support of this program, but I'm not much of a coder :(.&lt;br /&gt;
&lt;br /&gt;
Thanks!&lt;br /&gt;
&lt;br /&gt;
John&lt;br /&gt;
&lt;/div&gt;</description><author>cecijohn</author><pubDate>Fri, 15 Mar 2013 18:28:00 GMT</pubDate><guid isPermaLink="false">New Post: SCCP, MGCP and EIGRP (Cisco Protocols) not supported in Microsoft NetMon 20130315062800P</guid></item><item><title>New Post: Some questions about reassembly</title><link>http://nmparsers.codeplex.com/discussions/427872</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;For some protocols we've created a way to see only the relevant fragments (&lt;a href="http://blogs.technet.com/b/netmon/archive/2010/11/04/reassembly-made-easier.aspx"&gt;http://blogs.technet.com/b/netmon/archive/2010/11/04/reassembly-made-easier.aspx&lt;/a&gt;).&amp;nbsp;
 Let me know if you need more details or if this doesn't solve your problem.&lt;/p&gt;
&lt;p&gt;We don't have a way to do &amp;quot;Embedded Reassembly&amp;quot;, as we call it.&amp;nbsp; Though this is something that we do support in Message Analyzer if a beta product is an option for you.&amp;nbsp; (&lt;a href="http://blogs.technet.com/b/messageanalyzer/"&gt;http://blogs.technet.com/b/messageanalyzer/&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;As for parsing TCP streams, we do have problems when the frames don't line up with the TCP boundaries.&amp;nbsp; If this is what you are referring too, this is something we are addressing with Message Analyzer.&lt;/p&gt;
&lt;p&gt;Thanks,&lt;/p&gt;
&lt;p&gt;Paul&lt;/p&gt;
&lt;/div&gt;</description><author>PaulLong</author><pubDate>Thu, 03 Jan 2013 15:59:15 GMT</pubDate><guid isPermaLink="false">New Post: Some questions about reassembly 20130103035915P</guid></item><item><title>New Post: I cant install the newest version on Windows &amp;.</title><link>http://nmparsers.codeplex.com/discussions/428137</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;I receive an error message in attempting to install it in 64bit win7:&lt;/p&gt;
&lt;p&gt;Error reading from file C:\users\Renee\appdata\loca\temp\ixp000.tmp\netmon.msi verify that the file exists and that you can access it.&lt;/p&gt;
&lt;p&gt;I can access it but I cannot install it.&lt;/p&gt;
&lt;p&gt;Renee&lt;/p&gt;
&lt;/div&gt;</description><author>Renee</author><pubDate>Mon, 31 Dec 2012 18:59:04 GMT</pubDate><guid isPermaLink="false">New Post: I cant install the newest version on Windows &amp;. 20121231065904P</guid></item><item><title>New Post: Some questions about reassembly</title><link>http://nmparsers.codeplex.com/discussions/427872</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;Is there a way to show only the final defragmented frames of a specific protocol? It seems like that would be very easy to archive by using the reassembly engine for non-fragmented frames too.&lt;/p&gt;
&lt;p&gt;Can you split up frames? I'm working a protocol where multiple messages are sent in a single TCP frame. I'd very much prefer a linear list of messages instead of having to inspect each frame to see if there's more.&lt;/p&gt;
&lt;p&gt;And finally, can you parse TCP streams where the TCP frames has no relation to the payload's frames?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;</description><author>JohnKare</author><pubDate>Fri, 28 Dec 2012 06:43:25 GMT</pubDate><guid isPermaLink="false">New Post: Some questions about reassembly 20121228064325A</guid></item><item><title>New Post: new raw IP driver</title><link>http://nmparsers.codeplex.com/discussions/403626</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;hi,&lt;/p&gt;
&lt;p&gt;I'm developing an NDIS driver (raw IP one) for a new wireless technology which is an extension of wifi (to be more specific 802.11ad)&lt;/p&gt;
&lt;p&gt;I would like to ask the following questions:&lt;/p&gt;
&lt;p&gt;1. assuming that I can export management and control frames out from my driver up to the OS, how can I &amp;quot;connect&amp;quot; Network Monitor parsing tool to my driver?&lt;/p&gt;
&lt;p&gt;Note: I don't want to save these frames in *.pcap format and open them offline... I want the same behavior as wifi driver i.e. have in the same capture file interleaved wifi management and control messages as well as IP packets. The problem is that my driver
 supports different set of API than std. wifi driver&lt;/p&gt;
&lt;p&gt;2. I tried to open wifi capture from WireShark (can be downloaded from WireShark wiki web site) with Network Monitor but the Network Monitor tool was unable to identify the wifi packet. instead, I got the following error message from the parser: Unsupported
 Media Type.&lt;/p&gt;
&lt;p&gt;in the PCAP header, &amp;nbsp;the 'network' field (data link type) is set to 105 (&lt;span&gt;LINKTYPE_IEEE802_11). could that be the problem?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Thanks,&lt;/p&gt;
&lt;p&gt;Uri.&lt;/p&gt;
&lt;/div&gt;</description><author>ugottrei</author><pubDate>Sat, 17 Nov 2012 23:32:11 GMT</pubDate><guid isPermaLink="false">New Post: new raw IP driver 20121117113211P</guid></item><item><title>New Post: Parser for Hyper-V vmSwitch, Not exist EventID 55</title><link>http://nmparsers.codeplex.com/discussions/362239</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Problem solved.&lt;/p&gt;
&lt;p&gt;After downloading the current version from the source code section and using these files all the packets were identified.&lt;/p&gt;
&lt;p&gt;I had to tweak a few unresolved datatypes. But in the end it worked.&lt;/p&gt;
&lt;p&gt;I hope there will be a new version out real soon, so it is easier to work with.&lt;/p&gt;&lt;/div&gt;</description><author>MikeH2010</author><pubDate>Fri, 06 Jul 2012 15:02:32 GMT</pubDate><guid isPermaLink="false">New Post: Parser for Hyper-V vmSwitch, Not exist EventID 55 20120706030232P</guid></item><item><title>New Post: Parser for Hyper-V vmSwitch, Not exist EventID 55</title><link>http://nmparsers.codeplex.com/discussions/362239</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;Hi!&lt;/p&gt;
&lt;p&gt;I tried to capture data from a Microsoft Hyper-V V3 virtual switch. I used&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;netsh trace start scenario&lt;span style="color:gray"&gt;=&lt;/span&gt;InternetClient provider&lt;span style="color:gray"&gt;=&lt;/span&gt;Microsoft&lt;span style="color:gray"&gt;-&lt;/span&gt;Windows&lt;span style="color:gray"&gt;-&lt;/span&gt;Hyper&lt;span style="color:gray"&gt;-&lt;/span&gt;V&lt;span style="color:gray"&gt;-&lt;/span&gt;VmSwitch capture&lt;span style="color:gray"&gt;=&lt;/span&gt;yes capturetype&lt;span style="color:gray"&gt;=&lt;/span&gt;vmswitch
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;When I load the etl-file into network monitor and use the current parser version&amp;nbsp;&lt;a id="ReleaseLinkStable0" title="Recommended Release: Network Monitor Parsers 3.4.2774"&gt;3.4.2774, I cannot see the TCP traffic. Instead I see lots of NDIS packets like
 this:&lt;/a&gt;&lt;/p&gt;
&lt;p style="padding-left:30px"&gt;3045&lt;span&gt; &lt;/span&gt;17:26:42 04.07.2012&lt;span&gt; &lt;/span&gt;3.5658375&lt;span&gt;
&lt;/span&gt;NDISPacCap_MicrosoftWindowsNDISPacketCapture&lt;span&gt; &lt;/span&gt;NDISPacCap_MicrosoftWindowsNDISPacketCapture:Not exist EventID&lt;span&gt;
&lt;/span&gt;{NDISPacCap_MicrosoftWindowsNDISPacketCapture:56, NetEvent:55}&lt;/p&gt;
&lt;p&gt;I think the problem is the&amp;nbsp;&lt;/p&gt;
&lt;p style="padding-left:30px"&gt;Not exist EventID&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Maybe I need a newer parser file for Windows 8 and Server 2012 captured packets?&lt;/p&gt;
&lt;p&gt;Thanks&lt;/p&gt;
&lt;/div&gt;</description><author>MikeH2010</author><pubDate>Fri, 06 Jul 2012 08:35:29 GMT</pubDate><guid isPermaLink="false">New Post: Parser for Hyper-V vmSwitch, Not exist EventID 55 20120706083529A</guid></item><item><title>New Post: Bit fields from content in hexadecimal notation.</title><link>http://nmparsers.codeplex.com/discussions/359364</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Never mind,&lt;/p&gt;
&lt;p&gt;thanks for your time, pf&lt;/p&gt;&lt;/div&gt;</description><author>pf1957</author><pubDate>Wed, 13 Jun 2012 18:13:12 GMT</pubDate><guid isPermaLink="false">New Post: Bit fields from content in hexadecimal notation. 20120613061312P</guid></item><item><title>New Post: Parsing fragmented TCP stream</title><link>http://nmparsers.codeplex.com/discussions/359208</link><description>&lt;div style="line-height: normal;"&gt;&lt;blockquote style="border: solid .1em #ccc; font-style: italic; margin: .25em 1em 0 1em; padding: 0 .25em 0 .25em;"&gt;&lt;strong&gt;PaulLong wrote:&lt;/strong&gt;&lt;br /&gt;
&lt;p&gt;So your NPL code might look like this:&lt;/p&gt;
&lt;pre&gt;[RegisterBefore(...)]
[PayloadStart(NetworkDirection, 0, 0, 0, Property.MyProtLength, Property.IsFirst, 0, RssmblyIndStartBit + RssmblyIndLengthBit + RssmblySelfBit)]
Protocol MyProt
{
	[Property.MyProtLength]
	UINT16 Length;
	BLOB(Length) myblob;
}
&lt;/pre&gt;
&lt;p&gt;So the trick is not to make Property.IsFirst follow the right pattern.&amp;nbsp; The length isn't as important because I beleive it's ignored when IsFirst, is false.&amp;nbsp; What makes this tricky is that we don't maintain state with properties as their scope  is at the&amp;nbsp;frame level.&amp;nbsp; So now you have to create state using conversation properties and MultiValueState arrays.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;Do you have any indication in your frame structure that can differentiate the first message from fragments?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Hi Paul.&lt;/p&gt;
&lt;p&gt;great thanks for your help and illustrative explanation of Payload params. My implementation was the same as you recommend &amp;nbsp;except: for continuous frames I din't reset Length param (this parameter has been set to random number from the start of continuous frame, because first packet has been determinated later).&lt;/p&gt;
&lt;p&gt;First message indication I had implemeted already, &amp;nbsp;so once I cleared Length param before&amp;nbsp; continuous BLOB, it seems that my parser is able to parse reassembled frames (I don't have implemented parsing of long messages yet).&lt;/p&gt;
&lt;p&gt;Once again, thank you very much for Your help,&lt;/p&gt;
&lt;p&gt;pf&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;P.S. It seems that length IS NOT IGNORED for continuous frames.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/div&gt;</description><author>pf1957</author><pubDate>Wed, 13 Jun 2012 18:10:51 GMT</pubDate><guid isPermaLink="false">New Post: Parsing fragmented TCP stream 20120613061051P</guid></item><item><title>New Post: Bit fields from content in hexadecimal notation.</title><link>http://nmparsers.codeplex.com/discussions/359364</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;I'm not aware of any easier way to do this.&amp;nbsp; Currently we only support using raw values from the frame as input into the parsing.&lt;/p&gt;
&lt;p&gt;Paul&lt;/p&gt;&lt;/div&gt;</description><author>PaulLong</author><pubDate>Wed, 13 Jun 2012 16:43:47 GMT</pubDate><guid isPermaLink="false">New Post: Bit fields from content in hexadecimal notation. 20120613044347P</guid></item><item><title>New Post: Parsing fragmented TCP stream</title><link>http://nmparsers.codeplex.com/discussions/359208</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;To answer your last question first, you don't get reassembly by default.&amp;nbsp; You need to hit the reassembly button in the UI and then a new window opens up.&amp;nbsp; This new window contains all the original data, plus the newly inserted frames.&amp;nbsp; I have a video on the blog (&lt;a href="http://blogs.technet.com/b/netmon/p/usagevideos.aspx"&gt;http://blogs.technet.com/b/netmon/p/usagevideos.aspx&lt;/a&gt;), which might help understand how this works from the UI perspective.&lt;/p&gt;
&lt;p&gt;To make sure we are on the same page with regards to how to implement reassembly for your case using IsFirst and a Length, let me show a small example of what the parameters for PayloadStart should look like over multiple frames.&amp;nbsp; For example, say we have this data.&lt;/p&gt;
&lt;p style="padding-left: 30px;"&gt;Frame 1: Length=100, Blob of 40 bytes&lt;/p&gt;
&lt;p style="padding-left: 30px;"&gt;Frame 2: Blob of 40 bytes&lt;/p&gt;
&lt;p style="padding-left: 30px;"&gt;Frame 3: Blob of 20 bytes&lt;/p&gt;
&lt;p&gt;The params to PayloadStart for each frame&amp;nbsp;would be:&lt;/p&gt;
&lt;p style="padding-left: 30px;"&gt;Frame 1: PayloadStart(NetworkDirection, 0, 0, 0, Length, true, 0, RssmblyIndStartBit + RssmblyIndLengthBit + RssmblySelfBit)&lt;/p&gt;
&lt;p style="padding-left: 30px;"&gt;Frame 2: PayloadStart(NetworkDirection, 0, 0, 0, 0,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; false, 0, RssmblyIndStartBit + RssmblyIndLengthBit + RssmblySelfBit)&lt;/p&gt;
&lt;p style="padding-left: 30px;"&gt;Frame 3: PayloadStart(NetworkDirection, 0, 0, 0, 0,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; false, 0, RssmblyIndStartBit + RssmblyIndLengthBit + RssmblySelfBit)&lt;/p&gt;
&lt;p&gt;So your NPL code might look like this:&lt;/p&gt;
&lt;pre&gt;[RegisterBefore(...)]
[PayloadStart(NetworkDirection, 0, 0, 0, Property.MyProtLength, Property.IsFirst, 0, RssmblyIndStartBit + RssmblyIndLengthBit + RssmblySelfBit)]
Protocol MyProt
{
	[Property.MyProtLength]
	UINT16 Length;
	BLOB(Length) myblob;
}
&lt;/pre&gt;
&lt;p&gt;So the trick is not to make Property.IsFirst follow the right pattern.&amp;nbsp; The length isn't as important because I beleive it's ignored when IsFirst, is false.&amp;nbsp; What makes this tricky is that we don't maintain state with properties as their scope is at the&amp;nbsp;frame level.&amp;nbsp; So now you have to create state using conversation properties and MultiValueState arrays.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Do you have any indication in your frame structure that can differentiate the first message from fragments?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;/div&gt;</description><author>PaulLong</author><pubDate>Wed, 13 Jun 2012 16:39:12 GMT</pubDate><guid isPermaLink="false">New Post: Parsing fragmented TCP stream 20120613043912P</guid></item><item><title>New Post: Bit fields from content in hexadecimal notation.</title><link>http://nmparsers.codeplex.com/discussions/359364</link><description>&lt;div style="line-height: normal;"&gt;
&lt;blockquote style="border:solid .1em #ccc; font-style:italic; margin:.25em 1em 0 1em; padding:0 .25em 0 .25em"&gt;
&lt;strong&gt;pf1957 wrote:&lt;/strong&gt;&lt;br&gt;
&lt;p&gt;My current ugly implementation looks like this:&lt;/p&gt;
&lt;pre&gt;Struct SomeStruct = Local.Result
{
   ...
}&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;While debugging, I found that this does not work at all, here is the new iplementation, which works, but is still ugly:&lt;/p&gt;
&lt;pre&gt;Struct SomeStruct = Local.Result
{
	_struct
	{
		[Local.Byte = StringToNumber(&amp;quot;0x&amp;quot;&amp;#43;ByteValue)]
		AsciiString(2) ByteValue;
		[Local.Result 
			= FormatString(&amp;quot;0x%s = &amp;quot;,ByteValue)
			&amp;#43; ((Local.Byte &amp;amp; 4)!=0 ? &amp;quot;b2:...&amp;quot; : &amp;quot;b2:...&amp;quot;)
			&amp;#43; &amp;quot; | &amp;quot;
			&amp;#43; ((Local.Byte &amp;amp; 8)!=0 ? &amp;quot;b3:...&amp;quot; : &amp;quot;b3:...&amp;quot;)
		]
		_struct {}
	}
}
&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;</description><author>pf1957</author><pubDate>Wed, 13 Jun 2012 06:16:02 GMT</pubDate><guid isPermaLink="false">New Post: Bit fields from content in hexadecimal notation. 20120613061602A</guid></item><item><title>New Post: Bit fields from content in hexadecimal notation.</title><link>http://nmparsers.codeplex.com/discussions/359364</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;Hi all,&lt;/p&gt;
&lt;p&gt;is there a way to define bit fields e.g. if a byte content is written as two hexadecimal digits? Something like this:&lt;/p&gt;
&lt;pre&gt;AsciiString(2) ByteValue
{
    UINT8 b0:1 = ....;
    UINT8 b1:1 = ....;
    ....
}&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;I tried to define Local.Byte and use typecast, i.e.&lt;/p&gt;
&lt;pre&gt;[Local.Byte = StringToNumber(&amp;quot;0x&amp;quot;&amp;#43;ByteValue)]
AsciiString(2) ByteValue
{
    UINT8(Local.Byte) b0:1 = .....;
    ....
}&lt;br&gt;&lt;/pre&gt;
&lt;p&gt;but compiler does not accept such syntax.&lt;/p&gt;
&lt;p&gt;My current ugly implementation looks like this:&lt;/p&gt;
&lt;pre&gt;Struct SomeStruct = Local.Result
{
    _struct
    {
	[Local.Result = &amp;quot;&amp;quot;]
	[Local.Separator = &amp;quot;&amp;quot;]
	[Local.Byte = StringToNumber(&amp;quot;0x&amp;quot;&amp;#43;ByteValue)]
	[Local.Result = Local.Result &amp;#43; Local.Separator &amp;#43; (Local.Byte &amp;amp; 0x04)!=0 ? ....]
	[Local.Separator = &amp;quot; | &amp;quot;]
	[Local.Result = Local.Result &amp;#43; Local.Separator &amp;#43; (Local.Byte &amp;amp; 0x08)!=0 ? ....]
	[Local.Result = Local.Result &amp;#43; Local.Separator &amp;#43; (Local.Byte &amp;amp; 0x10)!=0 ? ....]
        ....
        AsciiString(2) ByteValue;
    }
}

&lt;/pre&gt;
&lt;p&gt;Please, could somebody help me with such bit fields definition?&lt;/p&gt;
&lt;p&gt;Thanks for any help, pf&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;</description><author>pf1957</author><pubDate>Tue, 12 Jun 2012 20:39:49 GMT</pubDate><guid isPermaLink="false">New Post: Bit fields from content in hexadecimal notation. 20120612083949P</guid></item></channel></rss>