Multicast Outline Homework #4 - posted later today, due in one week

Slides:



Advertisements
Similar presentations
Computer Networking A Top-Down Approach Chapter 4.7.
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.
1 Internet Networking Spring 2004 Tutorial 7 Multicast Routing Protocols.
1 Internet Networking Spring 2006 Tutorial 7 DVMRP.
© 2006 Cisco Systems, Inc. All rights reserved.Cisco Public BSCI Module 7 Lesson 3 1 IP Multicasting: Multicast Routing Protocols.
Network Layer4-1 Spanning trees r Suppose you have a connected undirected graph m Connected: every node is reachable from every other node m Undirected:
Chapter 4 IP Multicast Professor Rick Han University of Colorado at Boulder
Slide Set 15: IP Multicast. In this set What is multicasting ? Issues related to IP Multicast Section 4.4.
CS335 Networking & Network Administration Tuesday, May 18, 2010.
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.
EE689 Lecture 12 Review of last lecture Multicast basics.
1 CSE 401N:Computer Network LECTURE-14 MULTICAST ROUTING.
MULTICASTING Network Security.
© J. Liebeherr, All rights reserved 1 IP Multicasting.
CS640 Introduction to Computer Networks Multicast Nov 29 th, 1999 Prof. Lawrence H. Landweber Prof. Jun Murai.
CSE679: Multicast and Multimedia r Basics r Addressing r Routing r Hierarchical multicast r QoS multicast.
1 Computer Networks IP Multicast. 2 Recall Unicast Broadcast Multicast sends to a specific group.
© 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.
Univ. of TehranIntroduction to Computer Network1 An Introduction Computer Networks An Introduction to Computer Networks University of Tehran Dept. of EE.
CSC 600 Internetworking with TCP/IP Unit 8: IP Multicasting (Ch. 17) Dr. Cheer-Sun Yang Spring 2001.
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.
Kurt Windisch -- University of OregonIETF GATED -- December 7, PIM Dense Mode GateD Implementation Kurt Windisch Dave Meyer Advanced Network Technology.
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.
Multicast Routing, Error Control, and Congestion Control.
Multicast 1 Spencer Tsai Mobile Communication & Broadband Network Lab CSIE Fu-Jen Catholic University Introduction to Multicast.
CS 4396 Computer Networks Lab IP Multicast - Fundamentals.
© 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.
1 Spring Semester 2009, Dept. of Computer Science, Technion Internet Networking recitation #7 DVMRP.
1 IP Multicasting Relates to Lab 10. It covers IP multicasting, including multicast addressing, IGMP, and multicast routing.
4: Network Layer4-1 Chapter 4: Network Layer Last time: r Internet routing protocols m RIP m OSPF m IGRP m BGP r Router architectures r IPv6 Today: r IPv6.
Network Layer4-1 Chapter 4 roadmap 4.1 Introduction and Network Service Models 4.2 Routing Principles 4.3 Hierarchical Routing 4.4 The Internet (IP) Protocol.
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.
IP Multicast Lecture 4: PIM-SM Carl Harris Communications Network Services Virginia Tech.
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.
1 Group Communications: Host Group and IGMP Dr. Rocky K. C. Chang 19 March, 2002.
Chapter 21 Multicast Routing
DMET 602: Networks and Media Lab
COMP/ELEC 429 Introduction to Computer Networks
Multicasting protocols
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 on the Internet
IP Multicasting Let one packet go to multiple addresses and you can save much bandwidth. That’s the promise of IP multicasting…
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:

Multicast Outline Homework #4 - posted later today, due in one week Lab #3 Overview Multicast Introduction and Motivation RIP-based and Protocol Independent Multicast Routing

Project #3: Reliable Multicast Blaster, blastee and forwarder will all be used to implement a reliable multicast protocol Multicast management similar to PIM-sparse See P & D section 4.4 Reliability similar to Scalable Reliable Multicast (SRM) A NACK-based protocol This project has a fairly long description Please read it carefully Get started ASAP!! Due Tuesday, 12/18 at 11:59:59pm Fall, 2001 CS 640

Node Function Extensions Blasters are servers and blastees are clients Any forwarder can forward both unicast and multicast packets based on static forwarding tables Any forwarder can be a designated forwarder (DF) Blastees are statically configured to know their DF Any forwarder can be a rendezvous point (RP) Blasters and forwarders are statically configured to know all RPs Through use of a config file Fall, 2001 CS 640

Multicast Tree Construction Blasters send REGISTER message to RPs to signal that they want to begin to send data to a multicast group Blastees direct their JOIN/PRUNE messages to their DF indicating they want to join/leave a multicast group Unlike PIM – JOIN/PRUNE messages are distinct Forwarders relay JOIN/PRUNE messages from other forwarders toward RPs Multicast routes can also be removed if a timer expires JOIN messages must be sent repeatedly to keep routes stable Multicast data is sent via multicast interfaces, messages are sent via unicast interfaces Fall, 2001 CS 640

Reliability If a blastee determines that it is missing a packet, it generates a NACK packet Based on a hole in the sequence number space using statically configured timer Sends NACK using unicast interface If blaster receives a NACK is resends the requested packet after specified time period If other NACKs are received within the specified time period, they are ignored Fall, 2001 CS 640

One to many communication Application level one to many communication multiple unicasts IP multicast S R Fall, 2001 CS 640

Why Multicast When sending same data to multiple receivers Application better bandwidth utilization less host/router processing quicker participation Application Video/Audio broadcast (One sender) Video conferencing (Many senders) Real time news distribution Interactive gaming Fall, 2001 CS 640

IP multicast service model Invented by Steve Deering (PhD. 1991) It’s a different way of routing datagrams RFC1112 : Host Extensions for IP Multicasting - 1989 Senders transmit IP datagrams to a "host group" “Host group” identified by a class D IP address Members of host group could be present anywhere in the Internet Members join and leave the group and indicate this to the routers Senders and receivers are distinct: i.e., a sender need not be a member Routers listen to all multicast addresses and use multicast routing protocols to manage groups Fall, 2001 CS 640

IP multicast group address Things are a little tricky in multicast since receivers can be anywhere Class D address space high-order three 3bits are set 224.0.0.0 ~ 239.255.255.255 Allocation is essentially random – any class D can be used Nothing prevents an app from sending to any multicast address Customers end hosts and ISPs are the ones who suffer Some well-known address have been designated RFC1700 224.0.0.0 ~ 224.0.0.25 Standard are evolving Fall, 2001 CS 640

Getting Packets to End Hosts We haven’t treated general methods for this yet but the problem is having both a unicast and multicast IP Packets from remote sources will only be forwarded by IP routers onto a local network only if they know there is at least one recipient for that group on that network Internet Group Management Protocol (IGMP, RFC2236) Used by end hosts to signal that they want to join a specific multicast group Used by routers to discover what groups have have interested member hosts on each network to which they are attached. Implemented directly over IP Fall, 2001 CS 640

IGMP – Joining a group Example : R joins to Group 224.2.0.1 R sends IGMP Membership-Report to 224.2.0.1 DR receives it. DR will start forwarding packets for 224.2.0.1 to Network A DR periodically sends IGMP Membership-Query to 224.0.0.1 (ALL-SYSTEMS.MCAST.NET) R answers IGMP Membership-Report to 224.2.0.1 IGMP Membership-Report R Network A DR Data to 224.2.0.1 Network B R: Receiver DR: Designated Router Fall, 2001 CS 640

IGMP – Leaving a group Example : R leaves from a Group 224.2.0.1 IGMP Leave-Group Example : R leaves from a Group 224.2.0.1 R sends IGMP Leave-Group to 224.0.0.2 (ALL-ROUTERS.MCAST.NET) DR receives it. DR stops forwarding packets for 224.2.0.1 to Network A if no more 224.2.0.1 group members on Network A. R Network A DR Network B Data to 224.2.0.1 R: Receiver DR: Designated Router Fall, 2001 CS 640

Challenges in the multicast model How can a sender restrict who can receive? need authentication, authorization encryption of data key distribution still an active area of research Fall, 2001 CS 640

IP multicast routing Purpose: share Group information among routers, to implement better routing for data distribution Distribution tree structure Source tree vs shared tree Data distribution policy Opt in (ACK) type vs opt out (NACK) type Routing protocols are used in conjunction with IGMP Fall, 2001 CS 640

Source distribution tree Notation: (S, G) S = Source G = Group B A D F C E R R Receiver 1 Receiver 2 Fall, 2001 CS 640

Shared distribution tree Source Notation: (*, G) * = all sources G = Group Shared Root S2 B A D F C E R R Receiver 1 Receiver 2 Fall, 2001 CS 640

Source tree characteristics More memory O (G x S ) in routers optimal path from source to receiver, minimizes delay good for small number of senders, many receivers such as Radio broadcasting application Fall, 2001 CS 640

Shared tree characteristics Less memory O (G) in routers Sub-optimal path from source to receiver, may introduce extra delay (source to root) May have duplicate data transfer (possible duplication of a path from source to root and a path from root to receivers) good for Environments where most of the shared tree is the same as the source tree Many senders with low bandwidth (e.g. shared whiteboard) Fall, 2001 CS 640

Data distribution policy Opt out (NACK) type Start with “broadcasting” then prune brunches with no receivers, to create a distribution tree Lots of wasted traffic when there are only a few receivers and they are spread over wide area Opt in (ACK) type Forward only to the hosts which explicitly joined to the group Latency of join propagation Fall, 2001 CS 640

Protocol types Dense mode protocols Sparse mode protocol assumes dense group membership Source distribution tree and NACK type DVMRP (Distance Vector Multicast Routing Protocol) PIM-DM (Protocol Independent Multicast, Dense Mode) Example: Company-wide announcement Sparse mode protocol assumes sparse group membership Shared distribution tree and ACK type PIM-SM (Protocol Independent Multicast, Sparse Mode) Examples: Futurama or a Shuttle Launch Fall, 2001 CS 640

DVMRP exchange distance vectors Each router maintains a ‘multicast routing table’ by exchanging distance vector information among routers First multicast routing protocol ever deployed in the Internet Similar to RIP Constructs a source tree for each group using reverse path forwarding Tree provides a shortest path between source and each receiver 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 tree is created, it is used to forward messages from source to receivers If all routers in the network do not support DVMRP then unicast tunnels are used to connect multicast enabled networks Fall, 2001 CS 640

DVMRP broadcast & prune Flood multicast packets based on RPF (Reverse path forwarding) rule to all routers. Leaf routers check and sends prune message to upstream router when no group member is on their network Upstream 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) draft-ietf-idmr-dvmrp-v3-09.txt (September 1999) Fall, 2001 CS 640

RPF(reverse path forwarding) 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 from 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! Fall, 2001 CS 640

DVMRP (1) form a source tree by exchanging metric DF R1 Receiver 1 Fall, 2001 CS 640

DVMRP (2) broadcast source tree S datagram DF R1 Source Receiver 1 Fall, 2001 CS 640

DVMRP (3) prune source tree S datagram IGMP DVMRP-Prune DF R1 Source Receiver 1 Fall, 2001 CS 640

DVMRP (4) X and Y pruned source tree S datagram DF X Y R1 Source Receiver 1 Fall, 2001 CS 640

DVMRP (4) New member source tree S datagram IGMP DVMRP-Graft DF X Y R1 Receiver 1 Receiver 2 Fall, 2001 CS 640

DVMRP (4) New branch source tree S datagram IGMP DVMRP-Graft DF X Y R1 Receiver 1 Receiver 2 Fall, 2001 CS 640

Protocol Independent Multicast PIM : Protocol Independent Multicast Independent of particular unicast routing protocol Just assumes one exists Pros: simple, less overhead Does not require computation of specific routing tables Cons: may cause more broadcast-and-prunes (in dense mode) Most popular multicast routing protocol today Main difference with DVMRP – independence from underlying unicast routing mechanism PIM supports both dense (DM) and sparse (SM) mode operation You can locally use either or both modes Fall, 2001 CS 640

PIM DM overview(1) Assumes that you have lots of folks who want to be part of a group Based on broadcast and prune Ideal for dense group Source tree created on demand based on RPF rule If the source goes inactive, the tree is torn down Easy “plug-and-play” configuration Branches that don’t want data are pruned Fall, 2001 CS 640

PIM DM overview(2) Grafts used to join existing source tree Asserts used to determine the forwarder for multi-access LAN Non-RPF point-2-point links are pruned as a consequence of initial flooding Fall, 2001 CS 640

PIM DM Forwarding PIM DM interfaces are placed on an “downstream” list for a multicast group if: PIM neighbor is heard on interface Host on this interface has just joined the group Interface has been manually configured to join group Packets are flooded out all interfaces in “downstream” list If a PIM neighbor is present, DM assumes EVERYONE wants to receive the group so it gets flooded to that link Fall, 2001 CS 640

PIM Assert Mechanism Routers receive packet on an interface in their “downstream” list Only one router should continue sending to avoid duplicate packets. Routers sends “PIM assert” messages Compare distance and metric values Router with best route to source wins If metric & distance equal, highest IP addr wins Losing router stops sending (prunes interface) Fall, 2001 CS 640

PIM DM State Maintenace State is maintained by the “flood and prune” behavior of Dense Mode. Received Multicast packets reset(S,G) entry “expiration” timers. When (S,G) entry “expiration” timers count down to zero, the entry is deleted. Interface prune state times out causing periodic reflooding and pruning could be as little as 210 seconds Fall, 2001 CS 640

PIM-DM(1) Initial flood of data S Source A B G F C D H I E R1 R2 Receiver 1 Receiver 2 Fall, 2001 CS 640

PIM-DM(2) prune non-RPF p2p link S IGMP PIM-Prune Source A B G F C D H I E R1 R2 Receiver 1 Receiver 2 Fall, 2001 CS 640

PIM-DM(3) C and D Assert to Determine Forwarder for the LAN, C Wins IGMP PIM-Assert with its own IP address Source A B G F C D H I E R1 R2 Receiver 1 Receiver 2 Fall, 2001 CS 640

PIM-DM(4) I, E, G send Prune H send Join to override G’s Prune IGMP PIM-Prune Source IGMP PIM-Join A B G F C D H I E R1 R2 Receiver 1 Receiver 2 Fall, 2001 CS 640

PIM-DM(5) I Gets Pruned E’s Prune is Ignored (since R1 is a receiver) G’s Prune is Overridden (due to new receiver R2) S Source A B G F C D H I E R1 R2 Receiver 1 Receiver 2 Fall, 2001 CS 640

PIM-DM(6) New Receiver, I send Graft IGMP PIM-Graft Source A B G F C D H I E R1 R2 Receiver 1 R3 Receiver 2 Fall, 2001 CS 640 Receiver 3

PIM-DM(6) new branch S IGMP PIM-Graft A B G F C D H I E R1 R2 R3 Source A B G F C D H I E R1 R2 Receiver 1 R3 Receiver 2 Fall, 2001 CS 640 Receiver 3