Open Source Parsers for Network Monitor 3.2

With the release of NM3.2, we revamped the parser management so that we can support parser upgrades. So I’m pleased to announce that we just released a new version of the parsers on https://www.codeplex.com/nmparsers. As new parsers become available or the current parsers become extended or improved, you’ll be able to get the latest version.

The Plan

Our plan is to release a new set parsers every month. The updates will be based on your feedback and bug/issue reports that are filed on the site. It may take us a bit of time to completely convert our development over to CodePlex. In the meantime there may be fixes for bugs that have been filed internally. But soon you’ll see the parser files updated live along with a matching MSI installer each month. We have already released a new MSI with the current parser changes. Just look at the Release tab off of our CodePlex site and choose the MSI package that matches your installed Network Monitor OS version.

Eventually, we will document and expose the code for MSI creation so that you can create packages for your own parser sets. Also, we are planning to provide documentation for how to test parsers so that you can understand how we test internally for regressions and compatibility.

How does CodePlex work?

CodePlex is an Open Source Community. People can sign in and provide various roles for filing bugs, developing code, and coordinating projects. Anybody can file bugs in on CodePlex, so you are all welcome to contribute in that regard.

Currently, our CodePlex project’s developer and coordinator roles are being handled by the same MS folks who have been doing this job internally. But there is no reason these roles can’t be open up to public as well.  Interested parties who are committed can be positioned to assume responsibility for a subset of parsers.Eventually as our community grows, there may be bigger external partners which may want to release their own sets of parser packages. In these cases we can communicate with them about providing links to their CodePlex development sites from ours.

You can also get the source code to a specific NPL from the Source Code tab if you can’t wait for the next tested MSI release. Integration may require you to get dependant parser files and you will also have to copy the files manually. Please ask for help if you run into an issue. The Discussions section of CodePlex would be a perfect place to do this.

FAQ

Q: Why are the parser packages Processor dependant?

A: While the parsers themselves are not Processor dependent, currently the Network Monitor MSI installer contains registry locations based on the processor type. So to start, we made different MSI versions to keep things easier for our development. In the future we’ll be looking at combining everything into one package that works for all processors.

Q: How can I tell which parser package version I have?

A: If you enable the Version column under “Program and Features” in the Vista control panel, you can find the version number next to the “Microsoft Network Monitor: Microsoft Parsers” entry. It is also available in the registry under HKEY_LOCAL_MACHINESOFTWAREMicrosoftNetmon3ParserPackagesMicrosoft Parsers, you will see a registry key called Version. This will tell you the version of the parser package in question.

Q: Why is the version number 3.3 and not 3.2?

A: These parsers are from the future! They are coinciding with the release of our internal builds which have already been labeled 3.3. Therefore the new versions of our parsers are labeled 3.3 as well. Don’t worry though as we will continue to ensure through testing that they are still compatible with Network Monitor 3.2.

Q: Do I have to Exit NM3 to install?

A: You don’t have to Exit NM3, but you will have to rebuild the parsers. Rebuilding the parsers often requires you to reload any capture files you have loaded. So while you don’t have to exit NM3, a restart may still be required for things to parse correctly. The easiest way to get the changes is to simply restart NM3 after you’ve installed the package. This will cause a rebuild to occur automatically.

Q: How do I contribute a parser to the project?

A: You can contact us by filing an issue on CodePlex. Look at https://www.CodePlex.com/NMParsers/Wiki/View.aspx?title=Parser%20Development&referringTitle=Getting%20Started for more information. Also, feel free to request parsers that are missing in our current package.

We understand that having accurate and up-to-date parsers is the most important aspect of a protocol analyzer. By releasing the parsers on CodePlex you can now keep up-to-date without having to wait for another release of Network Monitor. And perhaps with the help of the community we will get contributions for other parsers.