If you are using Cisco's Network Based Application Recognition to detect VoIP traffic automatically, and apply certain QoS attributes to it, you may run into situations where you have applications running on non-standard ports for various reasons. Often, administrators change the ports their applications run on, for such reasons as obscuring the application identity from hackers or to move traffic through a firewall, or to make it easy for an access-list to distinguish between regular traffic of a particular type and a special subset of that traffic.
For example, you might have some HTTP traffic running on port 12345 so that your QoS facilities can still set all traffic on port 80 to low priority, but allow the special traffic to run at a higher priority.
When you make changes like this, you can confuse certain tools, like RMON probes, which are expecting the traffic on the usual port, but most of these tools have some workaround to let you customize your traffic. For Cisco's NBAR, you can let IOS know about your custom ports by using Packet Description Language Modules (PDLM). You can find details about configuring these on Cisco's Web site.
Although you're better off using a separate tool to profile and baseline your network traffic, if you don't have one, you can use some special commands in IOS to find and even capture certain traffic. For details, visit the Web site or look in your command line reference for the following commands:
show ip nbar unclassified-port-stats
debug ip nbar filter ...
debug ip nbar capture ...
As always, use extreme caution with the debug commands in a production environment as mistakes can reduce network performance dramatically.
Thomas Alexander Lancaster IV is a consultant and author with over ten years experience in the networking industry, focused on Internet infrastructure.