I labbed up some Multicast stuff a while ago and only now am sitting down to write it. I’d like to write BCMSN by the end of the month because I’m taking two weeks off at the beginning of August where I won’t be near the Internet (or my routers) too often.
What is multicast?
Multicast is “one to many”, rather than “one to one” for unicast, and “one to all” for broadcast. The basic premise is that one host sends a packet to a multicast group, and only people interested get the traffic. The trick here is how to serve traffic to interested people while not flooding the network unnecessarily.
“Unnecessarily” means that the network doesn’t have to carry the traffic multiple times. If a multicast stream goes to 5 people, only one copy is sent. Routers and switches replicate the traffic as necessary, ensuring that traffic is kept to a minimum.
Multicast addressing
Multicast uses the class D address space, from 224.0.0.0 to 239.255.255.255. 224.0.0.0/24 is reserved for local LAN use (ie traffic that shouldn’t cross a router), 224.0.1.0/24 is for network control, and 239.0.0.0/8 is the “Administratively Scoped”, ie local use block. There are some other designations, but those are the main ones.
A host sends a packet to a multicast address, and never from. However there must be a layer 2 address to send the traffic to, one that must be recognized as a multicast and treated appropriately.
The IP multicast address consists of 28 bits. The ethernet multicast consists of 23. Thus, 5 bits are ignored, leading to 32 IP multicast addresses corresponding to each MAC address.
To convert from IP to MAC, simply take the 23 lower order bits of the IP address and prepend 01.00.5e. So, 224.0.0.1 becomes 0100.5e00.0001. The easiest way (that I can think of is)
- write down 0100.5e and ignore the first (from the left) octet of the IP address
- If the second octet of the IP is > 128, then subtract 128 from it (to compensate for the ignored 24th bit)
- convert the three octets to hex and copy into the MAC address
Likewise, to go from MAC to IP
- Drop the 0100.5e
- Convert each pair of nybbles left into decimal
- The valid multicast groups are then {224-239}.{x1,y1}.x2.x3 where y1 = the first decimal number + 128
ie
0100.5e10.7101 becomes 0×10, 0×71, 0×01 which is 16 113 1
Valid multicast addresses are then 224.16.113.1, 224.144.113.1, 225.16.113.1, and so forth.
Next up is some sample PIM configuration and how to test multicast. I’m not sure how detailed the exam gets, from what I’ve heard it’s pretty light, focusing mostly on the above.




No user commented in " Multicast "
Follow-up comment rss or Leave a TrackbackLeave A Reply