Application Note: Benefits and Implementation of Network Multicast in Embedded Computing Architectures
November 09, 2012Download PDF
Ethernet and TCP/IP networking have made tremendous inroads into military and aerospace embedded architectures over the last several years. It would be very difficult to find a processing element, I/O device, or development asset in the embedded Commercial-Off-The-Shelf (COTS) industry that does not provide Gigabit Ethernet in a prominent I/O role. With Ethernet native in virtually every COTS processing architecture and the overwhelming acceptance of TCP/IP networking in the industry, we can expect Ethernet's role to only expand.
Ethernet is used for command and control, accessing mass storage devices, data recording, sensor data interfaces, audio and video transmission, networking of legacy interfaces, logistics and maintenance support, and more. With Ethernet and the TCP/IP networking protocols common in the commercial industries becoming so integrated in COTS military and aerospace architectures, it is natural that more advanced networking capabilities from the commercial world will also become available to this industry. Network multicast is one of these networking capabilities that have been proven extremely useful in these new network-centric embedded military designs.
What is Multicast?
If you are familiar with using and programming Ethernet and IP networking, then you are likely familiar with unicast and broadcast traffic. Unicast Ethernet and IP traffic is normally routed and switched packet traffic where there is a specific IP source address and a specific IP address for the data. Routers inspect incoming unicast packets and forward them to switched networks or directly connected hosts that match the destination addressing in their internal routing tables. Broadcast Ethernet and IP packets provide a mechanism for a source to send a single packet to every destination host on a given local network or subnet, normally not crossing router boundaries and often being sent to hosts that do not need or care about the packet.
Unicast and broadcast cover many networking scenarios, but what if a source needs to send the same data to multiple network hosts, possibly on different local networks, without burdening destination hosts that do not need that information?