Methods and Needs for Multicast Applications

Slides:



Advertisements
Similar presentations
1April 16, 2002 Layer 3 Multicast Addressing IP group addresses – “Class D” addresses = high order bits of “1110” Special reserved.
Advertisements

Introduction 1 Lecture 22 Network Layer (Broadcast and Multicast) slides are modified from J. Kurose & K. Ross University of Nevada – Reno Computer Science.
Multicasting 1. Multicast Applications News/sports/stock/weather updates Distance learning Configuration, routing updates, service location Pointcast-type.
Introduction to IP Multicast 1 Cisco Systems Confidential 0810_04F7_c2.
Multicast on the Internet CSE April 2015.
IP Multicast Lecture 2: PIM-SM Carl Harris Communications Network Services Virginia Tech.
© 2006 Cisco Systems, Inc. All rights reserved.Cisco Public BSCI Module 7 Lesson 3 1 IP Multicasting: Multicast Routing Protocols.
COS 420 Day 18. Agenda Group Project Discussion Program Requirements Rejected Resubmit by Friday Noon Protocol Definition Due April 12 Assignment 3 Due.
IP Multicasting: Explaining Multicast
Slide Set 15: IP Multicast. In this set What is multicasting ? Issues related to IP Multicast Section 4.4.
Internet Networking Spring 2002
1 IP Multicasting. 2 IP Multicasting: Motivation Problem: Want to deliver a packet from a source to multiple receivers Applications: –Streaming of Continuous.
TDC375 Autumn 03/04 John Kristoff - DePaul University 1 Network Protocols Multicast.
Multicast Routing Wed. 28 MAY Introduction based on number of receivers of the packet or massage: “A technique for the efficient distribution of.
1 CSE 401N:Computer Network LECTURE-14 MULTICAST ROUTING.
MULTICASTING Network Security.
Spanning Tree and Multicast. The Story So Far Switched ethernet is good – Besides switching needed to join even multiple classical ethernet networks Routing.
© J. Liebeherr, All rights reserved 1 IP Multicasting.
1 Computer Networks IP Multicast. 2 Recall Unicast Broadcast Multicast sends to a specific group.
Computer Networks 2 Lecture 1 Multicast.
Multicasting  A message can be unicast, multicast, or broadcast.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Multicast routing.
Multicast Routing Protocols NETE0514 Presented by Dr.Apichan Kanjanavapastit.
Network Layer4-1 R1 R2 R3R4 source duplication R1 R2 R3R4 in-network duplication duplicate creation/transmission duplicate Broadcast Routing r Deliver.
CSC 600 Internetworking with TCP/IP Unit 8: IP Multicasting (Ch. 17) Dr. Cheer-Sun Yang Spring 2001.
1 Chapter 16b Multicasting. Chapter 16b Multicasting 2 Multicasting Applications Multimedia Multimedia –television, presentations, etc. Teleconferencing.
CS 5565 Network Architecture and Protocols Godmar Back Lecture 22.
Multicast Outline Multicast revisited Protocol Independent Multicast - SM Future Directions.
Broadcast and Multicast. Overview Last time: routing protocols for the Internet  Hierarchical routing  RIP, OSPF, BGP This time: broadcast and multicast.
Multicast Routing Algorithms n Multicast routing n Flooding and Spanning Tree n Forward Shortest Path algorithm n Reversed Path Forwarding (RPF) algorithms.
Chapter 22 Network Layer: Delivery, Forwarding, and Routing Part 5 Multicasting protocol.
Chapter 15 Multicasting and Multicast Routing
Introduction to IP Multicast
Multicast Routing Protocols. The Need for Multicast Routing n Routing based on member information –Whenever a multicast router receives a multicast packet.
Multicast Outline Multicast Introduction and Motivation RIP-based and Protocol Independent Multicast Routing.
© J. Liebeherr, All rights reserved 1 Multicast Routing.
CS 4396 Computer Networks Lab IP Multicast - Fundamentals.
Broadcast and multicast routing. R1 R2 R3R4 source duplication R1 R2 R3R4 in-network duplication duplicate creation/transmission duplicate Broadcast Routing.
Introduction to Multicast Routing Protocols
© J. Liebeherr, All rights reserved 1 IP Multicasting.
1 © 2000, Cisco Systems, Inc _05_2000_c2 Server Router Unicast Server Router Multicast Unicast vs. Multicast.
Fundamentals of IP Multicast
Multicasting Ju Seong-ho Previous work behind main one.
11 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429 Introduction to Computer Networks Lecture 21: Multicast Routing Slides used with.
1 IP Multicasting Relates to Lab 10. It covers IP multicasting, including multicast addressing, IGMP, and multicast routing.
Spring 2006CS 3321 Multicast Outline Link-state Multicast Distance-vector Multicast Protocol Independent Multicast.
1 Protocol Independent Multicast (PIM) To develop a scalable protocol independent of any particular unicast protocol –ANY unicast protocol to provide routing.
2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.
1 Group Communications: MOSPF and PIM Dr. Rocky K. C. Chang 19 March, 2002.
CS 640: Introduction to Computer Networks Aditya Akella Lecture 12 - Multicast.
IP Multicast Lecture 4: PIM-SM Carl Harris Communications Network Services Virginia Tech.
Ahmed Helmy - UF1 IP-Multicast (outline) -Motivation and Background -Multicast vs. unicast -Multicast Applications -Delivery of Multicast -Local delivery.
Communication Networks Recitation 11. Multicast & QoS Routing.
DMET 602: Networks and Media Lab Amr El Mougy Yasmeen EssamAlaa Tarek.
1 Group Communications: Reverse Path Multicast Dr. Rocky K. C. Chang 19 March, 2002.
Ahmed Helmy - UF1 IP-Multicast (outline) -Motivation and Background -Multicast vs. unicast -Multicast Applications -Delivery of Multicast -Local delivery.
DMET 602: Networks and Media Lab
Multicasting protocols
Computer Networking Multicast.
Multicast Outline Multicast Introduction and Motivation DVRMP.
(How the routers’ tables are filled in)
CMPE 252A: Computer Networks
ECE544: Communication Networks-II Spring 2013
Multicast Outline Multicast revisited
Introduction to IP Multicast
IP Multicast COSC /5/2019.
EE 122: Lecture 13 (IP Multicast Routing)
Implementing Multicast
Optional Read Slides: Network Multicast
Presentation transcript:

Methods and Needs for Multicast Applications Siavash Samadian Barzoki University of Tehran

Multicast Addressing multicast address  a set of Internet hosts comprising a multicast group. Senders : Dest. Address = multicast address IP multicast group Class D address Class D address : 1110 + 28 bit multicast group ID  224.0.0.0 to 239.255.255.255 0 1 2 3 ----------- 28 bits ---------- 1 1 1 0 Multicast Group ID 224.0.0.0 is reserved. 224.0.0.1 to 224.0.0.225  reserved for permanent assignments to various uses, including routing protocols and other protocols that require a well-known permanent address.

Multicast Addressing Some of the well-known groups include : “all systems on this subnet” 224.0.0.1 “all routers on this subnet” 224.0.0.2 “all DVMRP routers” 224.0.0.4 “all OSPF routers” 224.0.0.5 “all OSPF designated routers” 224.0.0.6 “all RIP2 routers” 224.0.0.9 “all PIM routers” 224.0.0.13 “all CBT routers” 224.0.0.15 The remaining groups are either permanently assigned to various multicast applications or are available for dynamic assignment (239.0.0.0 to 239.255.255.255 for “Administratively scoped” applications)

Mapping a Class D Address to an IEEE-802 MAC Address The block begin with 01-00-5E (hex) of the IEEE-802 MAC-layer multicast address space is used for IP multicast groups. The low order 23 bits of class D address is replaced by the low order 23 bits of MAC-layer multicast address block. 234.138.8.5 (EA-8A-08-05) : 1110 1010 1000 1010 0000 1000 0000 0101 224.10.8.5 (E0-0A-08-05) : 1110 0000 0000 1010 0000 1000 0000 0101 225.138.8.5 (E1-8A-08-05) : 1110 0001 1000 1010 0000 1000 0000 0101 IEEE-802 MAC-layer multicast address : 0000 0001 0000 0000 0101 1110 0 000 1010 0000 1000 0000 0101 Hex: 0 1 0 0 5 E 0 A 0 8 0 5

IP Multicast MAC Address Mapping (FDDI & Ethernet) Be Aware of the 32:1 Address Overlap 32 - IP Multicast Addresses 224.1.1.1 224.129.1.1 225.1.1.1 225.129.1.1 . 238.1.1.1 238.129.1.1 239.1.1.1 239.129.1.1 1 - Multicast MAC Address (FDDI and Ethernet) 0x0100.5E01.0101

Internet Group Management Protocol (IGMP) Hosts Host-to-Router Protocols (IGMP) Routers Multicast Routing Protocols (PIM)

Internet Group Management Protocol (IGMP) How hosts tell routers about group membership RFC 1112 and RFC 2236 specify IGMPv1 and IGMPv2 IGMPv3 work-in-progress More than 1 router on a LAN  a router is elected as a querier The querier is responsible for periodically querying the LAN for the presence of any group members Group Specific Query Message, TTL=1 is sent The members if any  set a random timer On timer expiration  the host sends a Report message and the other members suppress their same Reports

Internet Group Management Protocol (IGMP) A host first joins a group  sends an IGMP Report rather than waiting for a router’s IGMP Query to reduce Join Latency Join Latency : the interval from a host’s first IGMP Report sent until the first packet for that group arrives on that host’s subnetwork. A host leaves a group  sends an Leave Group message Inclusion Group-Source Report message to select the specific sources and Exclusion Group-Source Report message to block some sources’ traffic

Internet Group Management Protocol (IGMP) Joining a Group H3 H2 224.1.1.1 Report H3 H1 Host sends IGMP Report to join group

Internet Group Management Protocol (IGMP) Source = 1.1.1.1 Group = 224.1.1.1 Source = 2.2.2.2 Group = 224.1.1.1 R1 R2 H1 wants to receive from S = 1.1.1.1 but not from S = 2.2.2.2 With IGMP, specific sources can be pruned back - S = 2.2.2.2 in this case R3 IGMPv3: Join 1.1.1.1, 224.1.1.1 Leave 2.2.2.2, 224.1.1.1 H1 - Member of 224.1.1.1

Multicast Routing in Extended LANs Broadcast based : Single-Spanning Tree Multicast Routing RPF (Reverse Path Flooding) RPB (Reverse Path Broadcasting) Multicast based : TRPB (Truncated Reverse Path Broadcasting) RPM (Reverse Path Multicasting)

Single-Spanning Tree Multicast Routing Compute a spanning tree among the bridges using a distributed algorithm A packet can be sent on the spanning tree There can be a membership learning algorithm A member of group G sends a membership-report to all-bridges group B periodically (Src. Adr.= G, Dest. Adr. = B) The bridge adds G to a table entry (address, (outgoing-branch, age), (outgoing-branch, age), …) where address is set to G and outgoing-branch to the interface it received the report message When a packet received by the bridge with Dest. Adr. = G, it will send it on the outgoing-branches which are in the table

Single-Spanning Tree Multicast Routing d G G G a b c G G

Single-Spanning Tree Multicast Routing Advantages : Relatively easy to implement  a great deal of experience with spanning tree protocols in Internet community Disadvantages : Centralize traffic on a small number of links Computationally difficult to compute a spanning tree in large, complex topologies

Reverse Path Flooding (RPF) A router forwards a broadcast packet originating at source S if and only if it arrives via the shortest path from the router back to S (i.e., the “reverse path”). Otherwise the packet will be discarded The router forwards the packet out all incident links except the one on which the packet arrived. Disadvantage : Any single broadcast packet may be transmitted more than once across any link, up to the number of routers that share the link.

Reverse Path Flooding (RPF) What is RPF? A router forwards a multicast datagram if received on the interface used to send unicast datagrams to the source Unicast B C Receiver Source A F D E Multicast

Reverse Path Flooding (RPF) The RPF Check The routing table used for multicasting is checked against the “source” IP address in the packet. If the datagram arrived on the interface specified in the routing table for the source address; then the RPF check succeeds. Otherwise, the RPF Check fails.

Reverse Path Flooding (RPF) A closer look: RPF Check Fails Multicast Packet from Source 151.10.3.21 X Discard Packet! S0 RPF Check Fails! S1 S2 Unicast Route Table Network Interface 151.10.0.0/16 S1 198.14.32.0/24 S0 204.1.16.0/24 E0 E0 S1 Packet Arrived on Wrong Interface!

Reverse Path Flooding (RPF) A closer look: RPF Check Succeeds Multicast Packet from Source 151.10.3.21 S0 S1 S2 RPF Check Succeeds! E0 Unicast Route Table Network Interface 151.10.0.0/16 S1 198.14.32.0/24 S0 204.1.16.0/24 E0 S1 Packet Arrived on Correct Interface! Forward out all outgoing interfaces. (i. e. down the distribution tree)

Reverse Path Broadcasting (RPB) Eliminates the duplicate broadcast packets generated by Reverse Path Forwarding It is necessary for each router to identify which of its links are “child” links in the shortest reverse path tree rooted at any given source S. When a broadcast packet originating at S arrives via the shortest path back to S, the router can forward it out only the child links for S.

Reverse Path Broadcasting (RPB) 5 6 X Y Child link D=5 D=6 a D=6 Z b

Reverse Path Broadcasting (RPB) Advantages : Easy to implement Saving of link bandwidth and of host and router processing time achieved by eliminating duplicate broadcast packets. Disadvantages : Extra storage consumed by the children bit-map in each routing table entry It does not take into account multicast group membership  extraneous datagrams may be forwarded onto subnetworks that have no group members

Truncated Reverse Path Broadcasting (TRPB) The previous algorithms used broadcasting and so were wasting the bandwidth on the links that had no group members. In TRPB only non-member leaf networks are deleted from each broadcast tree. Leaf networks are the networks which have no downstream router. So the leaf networks must be found out and it must be determined if there is any member on the leaf network or not then.

Reverse Path Multicasting (RPM) Provides on-demand pruning of shortest-path multicast trees. When a source first sends a multicast packet to a group, it uses TRPB algorithm. When the packet reaches a router for whom all of the child links are leaves and none of them have members of the destination group, a non-membership report (NMR) for that (source, group) pair is generated and sent back to the router that is one hop towards the source. If the one-hop-back router receives NMRs from all of its child routers, and if its child links also have no members, it in turn sends an NMR back to its predecessor. Subsequent multicast packets from the same source to the same group are blocked from traveling down the unnecessary branches by the NMRs sitting in intermediate routers. A non-membership report includes an age field that is used to cancel the NMR effect after some time.

Reverse Path Multicasting (RPM) Send based on TRPB Send Prune message R G Prune the branches R G R R R G R G

Intra-Domain Multicast vs. Inter-Domain Multicast 1992 to 1997  standardization and deployment focused on a single flat topology Beginning in 1997  the need for a hierarchical multicast infrastructure and inter-domain routing The existing protocols then categorized as intra-domain protocol

Multicast protocols – Distribution Trees Shortest Path or Source Distribution Tree Source 1 Notation: (S, G) S = Source G = Group Source 2 B A D F C E Receiver 1 Receiver 2

Multicast protocols – Distribution Trees Shared Distribution Tree Source 1 Notation: (*, G) * = All Sources G = Group Source 2 A B D (Shared Root) F C E Receiver 1 Receiver 2

Multicast Protocols - Characteristics Distribution trees Source tree Uses more memory O(S x G) but you get optimal paths from source to all receivers, minimizes delay Shared tree Uses less memory O(G) but you may get suboptimal paths from source to all receivers, may introduce extra delay Protocols PIM, DVMRP, MOSPF, CBT

Multicast Protocols - Characteristics Types of multicast protocols Dense-mode : The receivers are densely populated Broadcast and prune (flood & prune) behavior Similar to radio broadcast Sparse-mode : The receivers are sparsely populated Explicit join behavior Similar to pay-per-view

Multicast Protocols - DVMRP Stands for Distance Vector Multicast Routing Protocol First protocol implemented on MBone Broadcast and prune Source Distribution Trees Dense Mode Protocol Uses own routing table (Distance Vector similar to RIP) Many implementations Disadvantages : Slow Convergence — RIP-like behavior Significant amount of multicast routing state information stored in routers — (S,G) everywhere Protocol Dependent

Multicast Protocols - MOSPF Stands for Multicast Extensions to OSPF (Open Shortest Path First) Information about group receivers are included in the attached Link State (LS) Flood the area with LS  same view of group membership in the area Source Tree  Each router uses Dijkstra algorithm to compute shortest-path tree for each source and group Dense Mode or Sparse Mode ?!  Membership information is broadcasted so dense mode , but data is sent to those receivers that specifically request it so sparse mode

MOSPF - Membership LSA’s Area 0 MABR1 MABR2 Membership LSA’s Membership LSA’s Area 1 Area 2 MB MA

MOSPF - Intra-Area Traffic Not receiving (S2 , A) traffic MABR1 MABR2 Area 1 Area 2 MB (S1 , B) (S2 , A) MA

MOSPF - Inter-Area Traffic MABR routers inject Summary Membership LSAs into Area 0. Wildcard Receivers “pull” traffic from all sources in the area. Summarized Membership LSA (GA , GB) (GA ) Wildcard Receiver Flag (*, *) MABR1 MABR2 Membership LSA’s Membership LSA’s Area 1 Area 2 MB (S1 , B) (S2 , A) MA

MOSPF - Inter-Area Traffic Unnecessary traffic still flowing to the MABR Routers!! Wildcard Receiver Flag (*, *) MABR1 MABR2 Area 1 Area 2 (S1 , B) (S2 , A)

MOSPF - Inter-Area Traffic MASBR External AS (S1 , A) Summarized Membership LSA (S2 , B) (GA , GB) (GA ) MABR1 MABR2 Membership LSA’s Membership LSA’s Area 1 Area 2 MB MA MA MA

MOSPF - Inter-Area Traffic Unnecessary traffic may flow all the way to the MASBR Router!! MASBR External AS Wildcard Receiver Flag (*, *) MABR1 MABR2 Area 1 Area 2 (S1 , B) (S2 , A)

MOSPF - Disadvantages Protocol dependent - works only in OSPF-based networks Significant scaling problems Dijkstra algorithm run for EVERY multicast (SNet, G) pair! Dijkstra algorithm rerun when: Group Membership changes Line-flaps

PIM-DM Stands for Protocol Independent Multicast – Dense Mode Broadcast and prune Source Distribution Trees Fewer implementations than DVMRP Branches that don't care for data are pruned Grafts to join existing source tree Uses asserts to determine forwarder for multi-access LAN PIM-DM vs. DVMRP : DVMRP tries to avoid sending unnecessary packets to neighbors who will then generate prune messages based on a failed RPF check. PIM-DM avoids this complexity, but the tradeoff is that packets are forwarded on all outgoing interfaces. Unnecessary packets are often forwarded to routers which must then generate prune messages because of the resulting RPF failure.

PIM-DM I Gets Pruned E’s Prune is Ignored G’s Prune is Overridden C and D Assert to Determine Forwarder for the LAN, C Wins Initial Flood of Data and Creation of State New Receiver, I Sends Graft Prune to Non-RPF Neighbor Source Link Data Control Prune D F I B C A E G H Prune Asserts Join Override Prune Graft Receiver 3 Receiver 1 Receiver 2

PIM-SM (Overview) Explicit join model RPF check depends on tree type Receivers join to the Rendezvous Point (RP) Senders register with the RP Data flows down the shared tree and goes only to places that need the data from the sources Last hop routers can join source tree if the data rate warrants by sending joins to the source RPF check depends on tree type For shared trees, uses RP address For source trees, uses Source address

PIM-SM (Overview) Only one RP is chosen for a particular group RP statically configured or dynamically learned (Auto-RP, PIM v2 candidate RP advertisements) Data forwarded based on the source state (S, G) if it exists, otherwise use the shared state (*, G) RFC 2326 - “PIM Sparse Mode Protocol Spec”

PIM-SM (Shared Tree Join) RP (*, G) State created only along the Shared Tree. (*, G) Join Shared Tree Receiver

PIM-SM (Sender Registration) RP Source (S, G) State created only along the Source Tree. Traffic Flow Shared Tree (S, G) Join (S, G) Register (unicast) Source Tree Receiver

PIM-SM (Sender Registration) RP Source (S, G) traffic begins arriving at the RP via the Source tree. Shared Tree Traffic Flow RP sends a Register-Stop back to the first-hop router to stop the Register process. Source Tree (S,G) Register-Stop (unicast) (S, G) Register Receiver

PIM-SM (Sender Registration) RP Source Source traffic flows natively along SPT to RP. Shared Tree Traffic Flow From RP, traffic flows down the Shared Tree to Receivers. Source Tree Receiver

PIM-SM (SPT Switchover) RP Source Last-hop router joins the Source Tree. Shared Tree Traffic Flow Additional (S, G) State is created along new part of the Source Tree. (S, G) Join Source Tree Receiver

PIM-SM (SPT Switchover) RP Source Traffic begins flowing down the new branch of the Source Tree. Shared Tree Traffic Flow Additional (S, G) State is created along the Shared Tree to prune off (S, G) traffic. Source Tree (S, G)RP-bit Prune Receiver

PIM-SM (SPT Switchover) RP Source (S, G) Traffic flow is now pruned off of the Shared Tree and is flowing to the Receiver via the Source Tree. Traffic Flow Shared Tree Source Tree Receiver

PIM-SM (SPT Switchover) RP Source (S, G) traffic flow is no longer needed by the RP so it Prunes the flow of (S, G) traffic. Traffic Flow Shared Tree Source Tree (S, G) Prune Receiver

PIM-SM (SPT Switchover) RP Source (S, G) Traffic flow is now only flowing to the Receiver via a single branch of the Source Tree. Traffic Flow Shared Tree Source Tree Receiver

PIM-SM Advantages: Traffic only sent down “joined” branches Can switch to optimal source-trees for high traffic sources dynamically Unicast routing protocol-independent Basis for inter-domain multicast routing

IP Multicast Protocol Characteristics Dense Distribution Sparse Distribution Extensible to IDMR Protocol- Independent Standards Status Industry Usage Efficient PIM-DM X X X X X X DVMRP X X X X MOSPF X X X X X X X CBT X PIM-SM X X X X X X

Any Questions ? Multicasting