Skip to Content.
Sympa Menu

wg-multicast - ssmping

Subject: All things related to multicast

List archive

ssmping


Chronological Thread 
  • From: Stig Venaas <>
  • To:
  • Subject: ssmping
  • Date: Fri, 22 Apr 2005 16:11:32 +0200

Hi

I've written a utility called ssmping. This is based on the ssmping
idea by Pavan Namburi, Kamil Sarac and Kevin C. Almeroth. They way
I've done this is slightly different however, I only use UDP and
need no support from the network.

The idea is pretty simple. On a host one runs a daemon called ssmpingd.
Let's say the host has unicast address S.

On a client you run a utility called ssmping which is sort of like
normal ping. It joins (S,G) (with S the unicast address of the server
and the group G is hardcoded), and then sends unicast UDP packets to S
every second.

When the daemon receives a unicast request, it will send a unicast
packet, and also a multicast packet to G.

The client should receive both the messages. If it receives the unicast
but not the multicast, you know multicast doesn't work.

The tool supports both IPv4 and IPv6. Let me give you an example.

At ssmping.uninett.no I'm running ssmpingd. It has both IPv4 and IPv6
multicast connectivity.

At xiang.ecs.soton.ac.uk I run the client and get:

sv@xiang
sv $ ~/src/ssmping storhaugen.uninett.no
ssmping joined (S,G) = (2001:700:1:7:290:27ff:fe22:7186,ff3e::4321:1234)
pinging S from 2001:630:d0:111:250:fcff:fe6a:42b3
unicast from 2001:700:1:7:290:27ff:fe22:7186, seq=0 dist=20 time=61.8ms
unicast from 2001:700:1:7:290:27ff:fe22:7186, seq=1 dist=20 time=63.9ms
unicast from 2001:700:1:7:290:27ff:fe22:7186, seq=2 dist=20 time=57.3ms
multicast from 2001:700:1:7:290:27ff:fe22:7186, seq=2 dist=12 time=59.7ms
unicast from 2001:700:1:7:290:27ff:fe22:7186, seq=3 dist=20 time=55.8ms
multicast from 2001:700:1:7:290:27ff:fe22:7186, seq=3 dist=12 time=59.2ms
unicast from 2001:700:1:7:290:27ff:fe22:7186, seq=4 dist=20 time=55.9ms
multicast from 2001:700:1:7:290:27ff:fe22:7186, seq=4 dist=12 time=59.2ms

This means that multicast is working, but it took about 2s for the
multicast tree to be built (the 2 first packets got lost).

You can also see that there is 20 unicast hops from the source, but
only 12 multicast hops. And that the delay is somewhat larger for
multicast.

At the server I see this:

received request from 2001:630:d0:111:250:fcff:fe6a:42b3
received request from 2001:630:d0:111:250:fcff:fe6a:42b3
...

Note that it support both IPv4 and IPv6. It used IPv6 in this case
because hostname is registered with both A and AAAA.

You are welcome to try both client and server. You can try to ping
ssmping.uninett.no or some other ssmping servers to check that you
can receive IPv4 or IPv6 SSM from them. If you tell me your server
name I can also try to ping you.

I have a web page for ssmping at
http://www.venaas.no/multicast/ssmping/

You can find a list of public servers to ping there. I could also
list yours if you want.

At this web page you also find the sources. It's quite simple to
build on Linux and relatively simple on Solaris. Those are the
tested platforms so far. I would be happy if people tried it on
other plaforms, but note that on the client side, you need a
system that supports the source filter API, that speaks IGMPv3 or
MLDv2 and of course a router doing that a well.

Well, have a look at the web page if you're interested. And I'm
happy for any comments, questions ets.

Personally I've already made use of this tool for some debugging.

Stig


  • ssmping, Stig Venaas, 04/22/2005

Archive powered by MHonArc 2.6.16.

Top of Page