Multicast Data Processing
After collecting specific multicast show commands for Cisco, Juniper and ALU, the file called mcpath.x is created and automatically loaded to describe the multicast flows. The names of the flows are derived from the multicast group IP address as follows:
source_MulticastGroupAddress for (S,G) *_MulticastGroupAddress for (*,G)
The bandwidth of the multicast flow is derived differently depending on the vendor:
For IOS, it is extracted from the Rate line from command “show ip mroute active”
For IOS-XR, it is extracted from bps_in and bps_out from command "show mfib route rate". The average of these two values is calculated as the flow bandwidth.
For ALU, it is extracted from the Curr Fwding Rate line from command "show router pim group detail"
When multicast paths are imported, messages that point to errors or potential errors are written to the Import_MCTree_log.runcode file located in the Log directory of the project specification file.
This Import_MCTree_log.runcode log file contains the following columns: Lineno, Error Code, Error Message, Action, LineDetail. The Lineno column references which exact line within the mcpath.runcode file that is referenced; the line at Lineno from mcpath.runcde itself is shown in the LineDetail column.
Various values for the Error Code column may be possible. Example; Path Ignored indicates that the path specification is ignored; Path Error indicates that errors were encountered such as invalid IP addresses, Tunnel name specified in path specification does not exist, there's a gap in the path specification, etc.
If a Path Error is encountered, the program may take one of the following actions:
Ignored: Error detected, path specification ignored.
Warning: Errors detected, no action taken. Example, some of the IP addresses in an explicit path specification may not be defined in the network. The invalid IP addresses would still be remembered (i.e. would still be displayed and saved) and the Warning code is printed.
Fixed: For paths imported from tunnelpath.x file, the program would try to fix the paths if possible. The contents of tunnelpath.x file are based on the CLI outputs of routers. The format can vary for each vendor. There are cases where links between two different vendor nodes are not specified. If "Fixed" is printed, that means the a link is automatically added by the program to account for the unspecified link.
For an explicit path specification, some of the IP addresses defined in the path specification may not be defined in the network. In this case, the invalid IP addresses would be remembered (i.e. would still be displayed and saved) but won't have effect on the routing simulation.
Tracing through the error messages may require reviewing the paths hop-by-hop (IP address by IP address), and checking the raw multicast path data used to construct the tree. The Import_MCTree_log.runcode log file is meant to assist in the troubleshooting.