In this final installment of Networking as a Second Language, we are going to explore the most exciting topic in networking, IP multicast.
IP multicast is a technology that allows a server to deliver content simultaneously to multiple receivers. In this architecture, a server provides a single source of content while the routers in the multicast network handle the task of replicating and distributing the content to the receivers. This content can be software updates, video conferencing, or voice calls over IP multicast. A new exciting implementation of IP multicast will be used by your local movie house to distribute movies digitally from Hollywood producers. OK, I think I've got your attention. Let's take a look at this technology.
Once Again, Let's Visit the Sprockets and See How They Implement Multicast
Every morning at 0500 sharp, a network server sends out network broadcasts to every computer in the Sprockets' network. The broadcast message is intended for the manufacturing floor robots. These are update messages and CNC codes for the parts that will be fabricated on this workday. You will notice from Figure 10-1 that the CNC robots are scattered across multiple network segments. Therefore the network broadcasts are not limited to a single segment, but are forwarded to multiple segments. Access lists are configured on the router to identify the interfaces that will forward the broadcast messages and which will block them from being forwarded.
On the network segments receiving the broadcast messages, end-user workstations, quality-assurance monitoring PCs, and robots all coexist. Only the robot systems are interested in the CNC updates. The other devices must read and discard every broadcast packet.
This is the close of our series on networking. If you'd like to see an article covering a networking topic that Michael hasn't written about, or if you have general questions about this topic, let us know.
A better approach to this problem is to have a set of systems that subscribe to CNC updates. That is, only the robots will receive the updates; the other devices won't be involved. The trick is to have an IP address available for a group. When information is requested, a system will join a group. IP multicast employs this behavior.
IP multicast addresses
From our previous discussion on classes of IP addresses (see Net Surfing with IP Protocol), a class D address range is reserved for IP multicast. Classes A through C were ranges for unicast addresses. A class D address, whose range is 220.127.116.11 to 18.104.22.168, identifies a specified multicast group. Devices subscribing to a group are called receivers. In the Sprockets' network, the robots would subscribe to a multicast group 22.214.171.124 (an arbitrary multicast address for illustration). The server would send CNC updates to multicast group 126.96.36.199. The router would forward the CNC updates to interfaces that contained segments with active groups.
Layer 2 MAC Addresses
In our unicast-addressing model, the IP header required source and destination addresses. The layer 2 Ethernet header required source and destination MAC addresses. Likewise, a multicast group requires a MAC address. The multicast MAC address serves an interesting purpose compared to its normal MAC address counterpart. A MAC address, as you recall, uniquely identifies a specific piece of hardware. It is a burned-in address that is assigned when the hardware is manufactured. A multicast group consists of many devices requesting a service. Multicast MAC addresses use a special 24-bit prefix of 0x0100.5Enn.nnnn.
Routers perform the forwarding of multicast packets out to the necessary interfaces. On the network device side (such as your computer), a layer 2 frame, encapsulating a multicast packet, is read by every system receiving multicast data. In a nutshell, many computers on a single LAN segment can belong to different multicast groups. When a computer joins a multicast group it will instruct the NIC to trigger an interrupt when a multicast MAC address is detected on the wire. The layer 2 frame is grabbed and the layer 3 IP addresses are examined. If the destination IP address matches the multicast group, the computer is joined to, the packet is then processed. Otherwise, it is discarded.
Pages: 1, 2