14. Multicasting, IGMP, and MBONE Section Table of Contents 14
Total Page:16
File Type:pdf, Size:1020Kb
14. Multicasting, IGMP, and MBONE Section Table of Contents 14. MULTICASTING, IGMP, AND MBONE.......................................1 IP multicasting provides the ability for one machine to transmit 14.1 MULTICASTING ...............................................................................3 IP packets to many machines, without the source machine 14.2 APPLICATION LAYER USES OF MULTICASTING ...............................4 having to provide all the copies. In particular, this allows a 14.3 NETWORK LAYER USES OF MULTICASTING ....................................5 source in Ottawa to broadcast a message (often audio, video, 14.4 MULTICAST ADDRESSES .................................................................6 some kind of meeting transcribed into text, or maybe a 14.4.1 IPv4 .........................................................................................6 newspaper) to many stations, say, on the west coast. For 14.4.2 IPv6 .........................................................................................7 efficiency, only one copy of each packet is sent from Ottawa to 14.5 IGMP..............................................................................................8 B.C. Once it enters B.C., routers start making multiple copies 14.6 MROUTED AND DVMRP............................................................... 10 as appropriate and the copies fan out in a tree. The tree only 14.7 MULTICAST EXTENSIONS TO OSPF............................................... 12 goes to stations that are interested in this particular multicast. 14.8 MBONE ....................................................................................... 13 If the final destination is an Ethernet, layer 2 broadcasting can 14.8.1 The Concept of Tunnelling .................................................... 14 be used to avoid the necessity for multiple copies to each leaf 14.8.2 Fan Out Problem................................................................... 15 network. 14.8.3 MBONE Map......................................................................... 15 14.9 REFERENCES ................................................................................. 16 A large part of these notes are an adaptation of a lecture given 14.9.1 Online References.................................................................. 16 by Cmpt-471(97-3) student Kaye Mason. Readings: [Commer00] Chapter 17. Optional Reading: ‘‘Overview of IP Multicasting’’ including ‘‘Enterprise-Wide Multicast: Microsoft Netshow and the Microsoft Multicast Network’’ at: http://www.cisco.com/warp/public/cc/techno/tity/ipmu/tech/ipmc_ wp.htm Copyright 1997 by Russ Tront Page 14-1 Copyright 1997 by Russ Tront Page 14-2 14.1 Multicasting 14.2 Application Layer Uses of Multicasting • Multicasting is a networking technology that allows a sender to • Probably the most celebrated use of multicast is for video transmit a single copy of a message to a group of recipients. This conferences. The IETF began multicasting its own meetings as can be contrasted with unicasting, where to send to multiple early as 1983. As time went on, more and more people interested destinations, multiple copies of the same packet must be its proceedings started to watch these meetings. The meetings individually transmitted. quickly became participatory events for the remote observers. Now, question and answer sessions for remote participants are an • Ethernet and similar broadcast-based MAC/physical layer systems important part of all IETF meetings. support multicast inherently. Standard layer 3 protocols, however, have traditionally been limited in their ability to handle multicast • Other organisations began to use multicast for their own video transmissions. As a result, internet traffic was primarily limited to conferences. This sort of use is the fastest growing part of the point to point transmissions. MBONE. It has reached to the point that Christian Huitema, in his book Routing in the Internet argues that video conference • Recently moves have been made to allow for the full utilisation of multicasting has now become an appreciable part of all network multicasting into the existing TCP/IP protocol stack, and ensure traffic. that future versions of protocols in the stack support multicasting. This has affected the design of IPv6 and OSPF among others. • File transfer is another important application of multicasting. Consider the case of a file that is mirrored at a number of remote sites. When that file is updated on the source, instead of sending updates to each remote site individually, it can multicast to a group which contains all of the hosts which are its mirrors. Note that host applications must allow their user to select the multicast(s) (i.e. multicast address(es)) they want to listen in on. The IP layer possibly must handle this for several applications on that CPU. IP must keep a reference count of how many applications are using each multicast, and when that count drops to zero, use Internet Group Management Protocol (IGMP) to tell the nearby multicast-capable router that it no longer needs copies of that particular multicast address feed (‘channel’). Copyright 1997 by Russ Tront Page 14-3 Copyright 1997 by Russ Tront Page 14-4 14.3 Network Layer Uses of Multicasting 14.4 Multicast Addresses • Routing protocols like OSPF often wish to broadcast packets to Both IPv4 and IPv6 allow for the creation of multicast channels. A “all other routers”. Multicast is extremely useful here, as it allows multicast channel is like a TV or radio ‘channel’. Each is identified by its this with minimal disturbance to any other connected hosts. If the multicast address. Client applications must decide which channel they router had to broadcast such a packet, all connected hosts would be want to tune in to. These are also called multicast ‘groups’. This required to consider it. Multicasting it to “all other routers” allows basically refers to the group of CPUs listening in to that channel. hosts that are not routers to reject such a packet out of hand. Multicast channels come in two forms: 1) permanent, globally-unique ones allocated by the IANA, and 2) transient ones used for, say, the • A diskless workstation wants to know as little as possible about its duration of a video conference or other event. environment when booting. Allowing it to multicast to a generic “all Dynamic Host Configuration Protocol (DHCP) servers” 14.4.1 IPv4 address is an excellent way of minimising the information that • IPv4 has class D addresses specifically for multicasting. Recall needstobehardcodedinit. that class D addresses are those IPv4 addresses which begin with the bits “1110”. Their range is therefore 224.0.0.0 to 239.255.255.255. The remaining bits are referred to as the multicast group id. • There are well known multicast groups in IPv4. They are specified in the latest Assigned Numbers RFC, which is currently RFC 1700. Two important reserved multicast addresses are: Address Meaning 224.0.0.1 All multicast-aware CPUs on this physical net 224.0.0.2 All routers on this physical subnet. 224.0.0.5 All OSPF routers on this physical subnet. Note that there is a defined mapping for IP multicast to Ethernet multicast. 01:00:5E:xx:xx:xx where the low order 23 bits are the low order IP multicast address bits. But there are 28 unique bits in an IP multicast address. IP multicast software must filter wrong full addresses out (which is rare). Copyright 1997 by Russ Tront Page 14-5 Copyright 1997 by Russ Tront Page 14-6 14.4.2 IPv6 14.5 IGMP • The IPv6 multicast addresses are more complicated than the IPv4 • Internet Group Management Protocol (IGMP) is not a multicast addresses. They are structured as follows: protocol, but a multicast route enabling and disabling protocol. It allows hosts to request a nearby multicast router to start copying a 8 bits 8 bits 112 bits particular channel toward the host. This is not to say that IGMP Prefix Flags Scope Multicast Group ID does not use multicasting. We’ll see later that it multicasts to the 11111111 000T XXXX XXXXXX.......XXXXXXX “all hosts” address. • The prefix identifies the address as a multicast address, just as the prefix “1110” identifies a multicast address in IPv4. • ‘Multicast’ routers are used to effectuate the copying and • distribution of multicasts to hosts. Not all routers have software Of the flag bits, only T is defined. When set to one, it denotes that for this new feature. IGMP is used to manage the solicitation of a the group is transient, i.e., not a unique multicast address branch feed, cause the multicast routers to make and fan out the permanently assigned by the IANA. copies of packets, and to prune the distribution tree as user • Since a transient address may not be unique in the world, it should machines decide to ‘tune out’. not get out into the whole internet. The Scope field in IPv6 deals • Like ICMP, IGMP packets are transmitted within an IP payload. with this problem. Scope denotes just how far out the sender Also like ICMP, it should not be considered an independent wishes the packet to propagate. The following values are currently protocol from IP, but an integral part of it. defined as meaningful: • When a host wishes to join a multicast group, it sends a message to Value Meaning the “all hosts” multicast address, declaring its desire to do so. 0 Reserved Local hosts and multicast routers receive this, and multicast 1 A single system routers propagate the information outward through the Internet 2 A single link (though not necessarily using