1、IP Multicast,Fang YanCSEE, UMBC10/14/04,topics,Basics of multicasting MBone IPv4 routing protocols 6bone,What is multicasting,Application level one to many communication. A single packet is addressed to all intended recipientshost group The network replicates packets only as neededwhen paths diverge
2、 at a router,Why Multicasting,It is efficient better bandwidth utilization less host/router processing quicker participation Many applications send data to multiple receivers. Streaming multimedia Content delivery (meeting, lecture, speech) Stock quotes, news Database replication Software distributi
3、on,A,B,C,D,E,X,Y,Z,Flow of data in multiple unicasting,A,B,C,D,E,X,Y,Z,Flow of data in multicasting,Basic components of IP multicasting,Definition of a multicast host group Protocols for establishing and controlling multicast groups Router infrastructure for distribution of multicast traffic Applica
4、tion protocols and APIs that enable desktop computers and workstations to put multicasting to good use,multicast address,IPV44 28 bitsclass DFrom 224.0.0.0 to 239.255.255.255 From 224.0.0.0 to 224.0.0.255 is reserved Totally 228-256=268 million addresses,1110 Multicast Group ID,Reserved address exam
5、ples,224.0.0.1 all hosts 224.0.0.1 all multicast routers 224.0.0.4 DVMRP routers 224.0.0.5 OSPF routers 224.0.0.6 OSPF designated routers 224.0.0.22 IGMP ,multicast address (cont.),IPV68 4 4 112 bitsSupport 4millionbillionbillionbillion addresses Flag Transit/permanent Scope 1: node-local 2: link-lo
6、cal 5: site-local (set by administrators of routers at the site) 8: organization local (set by administrators of routers of the organization) 14: global,11111111 flags scope Multicast Group ID,Ready to go? Unfortunately, there is a problem At the early 90s, the majority of the routers on the Interne
7、t dont know how to handle multicasting. Most routers are set up to move traditional IP unicast packets. Router manufacturers have been reluctant to create equipment that can do multicasting until there is a proven need for such equipment. But, as you might expect, its difficult for users to try out
8、a technology until they have a way to use it. Without the right routers, theres no multicasting. Without multicasting, there wont be the right routers. Solution? MBone !,MBonea little bit history,Stands for Multicast Backbone In 1992, some bright fellows on the Internet Engineering Task Force (IETF)
9、 decided that no one would do in hardware, they could do in software. Many scientific conferences, scientific events, concerts were broadcast over MBone since then. In 1997, the first ISPs started rolling out commercial services utilizing multicasting on the Internet.,MBonearchitecture,A virtual ove
10、rlay network on top of the Internet. Consists of multicast-capable islands connected by tunnels Each island (typically a LAN or group of interconnected LANs) supports hardware multicast to its hosts. Each island contains one or more special routers called mrouters (multicast routers) Mrouters are of
11、ten workstations running multicast routing daemon (mrouted),mrouter,LAN,Multicast island,A,B,C,D,tunneling,A tunnel is a connection between two mrouters using “IP over IP“. Tunnel parameters Threshold The minimum TTL required for a packet to be forwarded across this tunnelCost A metric used to compu
12、te routing “distances” encapsulate MBone packets within IP packet and send as regular unicast packets to the destination mrouters IP address,Original packet,Encapsulated packet,Tunnel configure,Tunnel is configured manually The administrator of the new island sends a message announcing its existence
13、 to the MBone mailing list. The administrators of nearby sites then contact him to arrange to set up tunnels. Existing tunnels may be reshuffled to take advantage of the new island to optimize the topology.,MBone (cont.),Initially used DVMRP routing algorithm Migrated toward PIM Uses UDP protocol Pr
14、oblems Scalability Flow control Congestion control Future Universe support of multicast?,IGMPv1,Stands for Internet Group Management Protocol Described in RFC 1112. Manages multicast group membership Runs between hosts and their immediate neighboring mrouter Only two kinds of packets: query and repo
15、rt Packet format4 4 4 16 bits,IGMPv1 How to join a host group,Mrouter initiated Periodically, mrouter sends out a Query packet to its island asking who is interested in which channel. Hosts wishing to (continue to) receive one or more channels send back Report packet. Each mrouter keeps a table of w
16、hich channels it must put out into its LAN Receiver initiated When a host first joins a group, it immediately transmits Report message rather than waiting from the next Query from the mrouter. The request may need to be forwarded up to a router thats already part of the host group Reduce join latenc
17、y,More IGMP,IGMPv2 Defined in RFC 2236 Adds an explicit Leave message Routers can more easily determine when a group has no interested listeners on a LAN IGMPv3 Defined in RFC 3376 Optimizes support for a single source of content for a multicast group (SSM) Backward compatible,IPv4 multicast routing
18、 protocols,DVMRP (Distance Vector Multicast Routing Protocol) MOSPF (Multicast Open Shortest Path First) PIM-DM (Protocol Independent Multicast, Dense Mode) PIM-SM (Protocol Independent Multicast, Sparse Mode) CBT (Core-Based Tree),distance vector routing,Dynamic routing algorithm Each router mainta
19、in a table giving the best known distance to each destination and which line to use to get there. These tables are updated by exchanging information with the neighbors periodically. Problem Count-to-infinity,link state shortest-path-first routing,Periodically, each router floods a link-state message
20、, containing the routers identity and its associated connectivity information to each of its immediate neighbors. Each router runs the shortest-path-first algorithm to determine the shortest path from itself to all the other routers. Problem: Computation intensive,RPF,Stands for reverse path forward
21、ing Simple algorithm developed to avoid duplicate packets on multi-access links RPF algorithm takes advantage of the IP routing table to compute a multicast tree for each source. RPF check When a multicast packet is received, note its source (S) and interface (I) If I belongs to the shortest path fr
22、om S, forward to all interfaces except I If test in step 2 is false, drop the packet Packet is never forwarded back out the RPF interface!,DVMRP exchange distance vectors,First multicast routing protocol ever deployed in the Internet Each router maintains a multicast routing table by exchanging dist
23、ance vector information among routers Constructs a source tree for each group using reverse path forwarding There is a “designated forwarder” in each subnet Multiple routers on the same LAN select designated forwarder by lower metric or lower IP address (discover when exchanging metric info.) Once t
24、ree is created, it is used to forward messages from source to receivers,DVMRP broadcast & prune,Flood multicast packets based on RPF (Reverse path forwarding) rule to all interested routers. Leaf routers check and sends prune message to upstream router when no group member is on their network Upstre
25、am router prune the interface with no dependent downstream router. Graft message to create a new branch for late participants Restart forwarding after prune lifetime (standard : 720 minutes),DVMRP tables,Routing table Source subnet: the source of multicast datagrams From-Gateway: previous hop router
26、 leading back to source Metric: cost TTL InPort: routers interface for incoming traffic OutPort: routers interface for outgoing traffic Forwarding table Source subnet: the sub network sending multicast datagrams Multicast group: class D IP address TTL InPort: parent interface, prune message OutPort:
27、 child interface to forward, prune message,DVMRP,Advantage Relatively simple Modest processing demands Disadvantage Convergence performance Periodically flood multicast traffic to rebuild its trees scalability,MOSPF,Modified from OSPF Suitable for multicasting within a single autonomous system (AS)
28、One router is selected as the designated router (DR) DR floods Group-Membership Link State Advertisements (LSAs) Each router maintains the up-to-date image of the topology of the entire network Each router floods its local state through the AS Source-rooted Shortest path tree for each source network
29、, destination group pair Source-rooted SPT calculated at each router Based on Link-State database Provides the best route to any destination in AS Pruned SPT - Group membership LSAs,MOSPF,Each router makes its forwarding decision based on the contents of its forwarding cache. Forwarding cache is bui
30、ld from the source-based shortest-path tree for each (source, group) pair and the routers local group database Forwarding cache entry Destination Source Upstream: receive from Downstream: forward to TTL Advantage Adapt rapidly to changes in group membership Interoperate with OSPFused to forward norm
31、al unicast IP traffic Disadvantage Computationally intensive Not well-suited for handling sparse mode,PIM-DM,Similar to DVMRP Floods multicasts out of all interfaces except the source interface Uses RPM Prune message to eliminate unneeded branches Protocol-independent Needs to establish its own rout
32、er-to-router dialogs,PIM-DM Assert Mechanism,Multiple routers are active on the same link Routers sends “PIM assert” messages Compare distance and metric values Router with best route to source wins If metric & distance equal, highest IP address wins Losing router stops sending (prunes interface),PI
33、M-SM,Designed to provide efficient communication between members of sparsely distributed groups Rendezvous point (RP) are used by senders to announce their existence and by receivers to learn about new senders of a group Requires host group members explicitly join a delivery tree by transmitting Joi
34、n message One set of RPs per sparse-mode domain, not per group. Each group has precisely one RP at any given time. DR sends Join/Prune messages toward the RP and maintain the active RP,PIM-SM (cont.),Allows routers to create a source-based SPT on behalf of their attacked receivers Reduce delay Reduc
35、e concentration of traffic on RP-tree Advantages Less traffic disadvantages Bottle-neck at an RP router Single point of failure,PIM-SM joining,DR receives IGMP Report message from receiver DR creates a multicast forwarding entry for the (*,G) pair and transmits a unicast Join message toward the prim
36、ary RP for this group Intermediate router forwards the Join message, creating a forwarding entry for the (*,F) pair if not exists.,Source (S),Host (receiver),Designated Router,Rendezvous Point (RP) for group G,Join,Join,PIM-SM sending,DR encapsulates the initial multicast packets in a Register packe
37、t and sends them toward the primary RP The active RP transmits Join messages back toward the sources DR. Intermediate routers create a new (S, G) pair. When source gets a Join, it sends further packets without encapsulation,CBT,Construct a single tree shared by a Group Protocol independent Core rout
38、er equivalent to RP Receiver cannot switch from RP-tree to SPT CBT state bi-directional data flows in either direction along the branch Advantage Less traffic Better scalability Disadvantage Bottleneck at CR Single point failure,CBT,Host sends IGMP report to Join a group JOIN-Request sent towards th
39、e core router JOIN-Request is explicitly acked using JOIN-ACK by core or on-tree router Intermediate routers set up Transient stateTransient state converted to Active state by JOIN-ACK Bi-directional state Keep-alive mechanismCBT Echo protocol Echo-Request Each on-tree router is responsible for main
40、taining its Upstream link Sent to the Upstream router Carries a list of groups for which the upstream router is the parent Echo-Reply From the parent with the list of groups attached to the child interface,Comparison,Inter-Domain Routing,Hierarchical routing HDVMPR HPIM M-BGP (Multicast Border Gatew
41、ay Protocol) MSDP (Multicast Source Discovery Protocol) Connect multiple PIM-SM domains together,6bone,Stands fro IPv6 backbone an IPv6 test bed to assist in the evolution and deployment of IPv6 The network became a reality in March 1996 started as a virtual network (using IPv6 over IPv4 tunneling/e
42、ncapsulation) operating over the IPv4-based Internet to support IPv6 transport slowly migrating to native links for IPv6 transport Now 1478 sites from 60 countries,6bone hierarchy,The 6Bone network is organized in three hierarchical layers the core backbone layer made up of a mesh of IPv6 over IPv4
43、tunnels which connect only the backbone nodes routing is based on BGP4+ (Border Gateway Protocol version 4 extended to support IPv6) (RFC 2858) the transit node layer connected to one or more backbone nodes provide transit service to the leaf nodes Routing outside of the backbone is mainly static th
44、e peripheral or leaf node layer.,6bone addressing,based on the format established for IPv6 unicast addresses (RFC 2073) backbone nodes act as experimental TLAs (Top Level Aggregators) called pseudo-TLA responsible for assigning IPv6 addresses to nodes belonging to lower hierarchical levels which are
45、 configured as their “clients“.The entire 6Bone network is identified by a 16-bit prefix assigned directly by IANA each backbone node is assigned a 24- or 28-bit long prefix,6bone future,Will stay in place until on longer needed excellent place for an ISP to get early experience before going into production,Thank you !question?,References: IP Multicasting by Dave Kosiur Multimedia communications by Fred Halsall Computer Networks by Andrew S. Tanenbaum http:/ http:/ http:/