[tforum] [Fwd: mcfirst] -- multicast tools

Joe Breen Joe.Breen@utah.edu
Fri, 03 Nov 2006 18:50:42 -0700

Useful tools for troubleshooting multicast...

-------- Original Message --------
Subject: mcfirst
Date: Thu, 02 Nov 2006 11:04:32 +0100
From: Stig Venaas <stig.venaas@uninett.no>
To: mcast-workshop-docs@internet2.edu

ssmping package now contains a tool called mcfirst. It might be useful
in the IGMP/MLD exercises. It can do ASM/SSM joins for both IPv4 and
IPv6 in many platforms, including Windows. You could then do different
types of joins and inspect the different IGMP/MLD reports the host
sends. Further description below. It does not in any way replace
rtpqual, they are quite different tools for different purposes.

The new version also contains a new tool called mcfirst that can be used
  to check whether can receive any given ASM/SSM, IPv4/IPv6 multicast
session. You just specify group (and source if SSM) and port number, and
the tool will run until it receives one packet. Optionally you may
specify how many packets should be received and/or how many seconds it
should run. If you specify number of seconds, the tool will tell you how
many packets and bits per second were received.

$ mcfirst  ff0e::2:7ffe 9875
mcfirst joined (*,G) = (*,ff0e::2:7ffe)
Received 235 bytes from 2001:720:410:4:204:75ff:febd:4876 after 409.511
ms (ttl/hops 245)

$ mcfirst -t 1 9875
mcfirst joined (*,G) = (*,
Received 206 bytes from after 277.195 ms (ttl/hops 235)
Received 235 bytes from after 482.079 ms (ttl/hops 237)
Received 633 bytes from after 690.103 ms (ttl/hops 51)
Received 278 bytes from after 693.432 ms (ttl/hops 110)
Received 294 bytes from after 696.894 ms (ttl/hops 236)
Received 243 bytes from after 699.785 ms (ttl/hops 242)
Received 224 bytes from after 891.882 ms (ttl/hops 45)
2113 bytes and 7 packets received in 1 seconds
Average rate: 16.904 kbits per second

Personally I use mcfirst when people ask me if I can receive and I
don't want or can't run the particular multicast application. The
very latest version (which is only available from the svn repository)
also returns exit codes so that it can be run from a script. This way
you can have say a cron job that checks whether can receive from a

Finally, regarding ssmping. Someone has written a looking glass. That
is, you can go to a web page and run ssmping/asmping from that page.
So you might check that the web server can receive multicast from your
or other peoples ssmping servers. See http://www.multicast.org.uk/lg/

It uses a simple perl script that is freely available. When setting up
web server with dbeacon matrix in the workshop, one could consider also
adding this...