Multicast Brad Smith. Administrativia Next (8 th ) week – Project status report due Tuesday, 5/21 – Review STP and Multicast lab Tuesday, 5/21 – BGP lab.

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.
1  Changes in IPv6 – Expanded addressing capabilities (32 to 128 bits), anycast address – A streamlined 40-byte header – Flow labeling and priority –
Multicast on the Internet CSE April 2015.
COS 420 Day 15. Agenda Assignment 3 Due Assignment 4 Posted Chap Due April 6 Individual Project Presentations Due IEPREP - Jeff MANETS - Donnie.
© 2006 Cisco Systems, Inc. All rights reserved.Cisco Public BSCI Module 7 Lesson 3 1 IP Multicasting: Multicast Routing Protocols.
School of Information Technologies Internet Multicasting NETS3303/3603 Week 10.
COS 420 Day 18. Agenda Group Project Discussion Program Requirements Rejected Resubmit by Friday Noon Protocol Definition Due April 12 Assignment 3 Due.
COS 420 Day 14. Agenda Assignment 3 Posted Covers chapters Due March 23 Assignment 4 Posted Chap Due April 6 Individual Project Papers due.
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.
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.
COMS/CSEE 4140 Networking Laboratory Lecture 11 Salman Abdul Baset Spring 2008.
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.
1 Chapter 27 Internetwork Routing (Static and automatic routing; route propagation; BGP, RIP, OSPF; multicast routing)
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.
Multicast Sources: Kurose and Ross cast/addresstranslation_01.html.
1 Chapter 27 Internetwork Routing (Static and automatic routing; route propagation; BGP, RIP, OSPF; multicast routing)
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.
Broadcast and Multicast. Overview Last time: routing protocols for the Internet  Hierarchical routing  RIP, OSPF, BGP This time: broadcast and multicast.
Chapter 22 Network Layer: Delivery, Forwarding, and Routing Part 5 Multicasting protocol.
Chapter 15 Multicasting and Multicast Routing
Multicast Routing Protocols. The Need for Multicast Routing n Routing based on member information –Whenever a multicast router receives a multicast packet.
© J. Liebeherr, All rights reserved 1 Multicast Routing.
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.
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.
11 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
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.
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.
Multicasting  A message can be unicast, multicast, or broadcast. Let us clarify these terms as they relate to the Internet.
Chapter 21 Multicast Routing
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.
Multicast Communications
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.
Chapter 25 Internet Routing. Static Routing manually configured routes that do not change Used by hosts whose routing table contains one static route.
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.
IP Multicast Lecture 4: PIM-SM Carl Harris Communications Network Services Virginia Tech.
Multicasting EECS June Multicast One-to-many, many-to-many communications Applications: – Teleconferencing – Database – Distributed computing.
Communication Networks Recitation 11. Multicast & QoS Routing.
DMET 602: Networks and Media Lab Amr El Mougy Yasmeen EssamAlaa Tarek.
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
IP Multicasting Let one packet go to multiple addresses and you can save much bandwidth. That’s the promise of IP multicasting…
IP Multicast COSC /5/2019.
Implementing Multicast
Optional Read Slides: Network Multicast
Presentation transcript:

Multicast Brad Smith

Administrativia Next (8 th ) week – Project status report due Tuesday, 5/21 – Review STP and Multicast lab Tuesday, 5/21 – BGP lab due Wednesday, 5/22 – Multicast quiz and IPv6 lecture Tuesday, 5/23 Following (9 th ) week – Robert Cartelli on server load balancing Monday, 5/28 – Multicast lab due Wednesday, 5/29 – Donald Eastlake on TRILL, 5/30 Last (10 th ) week – Cruzio visit Thursday… what’s involved in running an ISP, 6/4 – First 5 project presentations Thursday, 6/6 Projects due – Presentations last week of class and final slot (I’ll schedule with random assignments) Alex Lowe, John, Jeff, Dennis, Erik, David, Jeff – Write-up, lab, and answer key bye last day of quarter (June 12 th ) Spring 2013CE Advanced Networks2

Multiple Receivers Important applications involve multiple receivers – Broadcasts of Radio or Video – Videoconferencing – Shared Applications Special mechanisms needed to efficiently support such applications. Spring 2013CE Advanced Networks3

Spring 2013CE Advanced Networks4 "Together, Internet broadcasting and multicasting are the next chapters in the evolution of the Internet as a revolutionary catalyst for the information age." Vint Cerf,Senior vice president of MCI/Worldcom,April 1999.

Multicasting Multicast communications refers to one-to-many (group) communications. IP Multicasting refers to the implementation of multicast communication in the Internet Spring 2013CE Advanced Networks5 UnicastBroadcastMulticast

Multicast using Unicast Spring 2013CE Advanced Networks6 Without support for multicast at the network layer: Multiple copies of the same message are transmitted on the same link

With Network Layer Multicast Spring 2013CE Advanced Networks7 At most one copy of a message on any link. Requires a set of mechanisms: 1)Packet forwarding can send multiple copies of same packet 2)Multicast routing algorithm that builds a spanning tree to reach all group members 3)Hosts can join groups

Semantics of IP Multicast IP multicast works as follows: – Multicast groups are identified by class D addresses… 1110… – Every host (interface) can join/leave a multicast group dynamically no access control – Every IP datagram sent to a multicast group is transmitted to all members of the group no security, no “floor control” IP multicast is unreliable Spring 2013CE Advanced Networks8

IP Multicast Transport Layer IP Multicasting only supports UDP as higher layer There is no multicast TCP! Spring 2013CE Advanced Networks9 Network Interface IPIP MulticastUDPTCP Socket Layer Stream SocketsDatagram SocketsMulticast Sockets User Layer

Review Goal of Network Layer multicast is group communication with at most one copy of a packet on any link. Requires – Packet forwarding that can send multiple copies of a packet – Ability for hosts to join groups – Routing algorithm that builds a spanning tree to reach all group members Only unreliable (UDP) transport service is defined for multicast. Spring 2013CE Advanced Networks10

Three Components of IP Multicast IP Multicast Addressing IP Group Management Multicast Routing Spring 2013CE Advanced Networks11

Three Components of IP Multicast IP Multicast Addressing IP Group Management Multicast Routing Spring 2013CE Advanced Networks12

Multicast Addresses All Class D addresses are multicast addresses: Multicast addresses are dynamically (i.e. not!) assigned. IP datagrams sent to a multicast address are forwarded to all hosts that have joined the group When an application is terminated, the multicast address is (implicitly… i.e. not!) released. Spring 2013CE Advanced Networks13

Reserved Multicast Addresses The address range is reserved for routing protocols and other low-level topology discovery or maintenance protocols Multicast routers should not forward any multicast datagram with destination addresses in this range. Examples of special and reserved Class D addresses… – All systems on this subnet – All routers on this subnet – NTP (Network Time Protocol) – RIPv2 Spring 2013CE Advanced Networks14

Multicast Address Translation In Ethernet MAC addresses, a multicast address is identified by setting the lowest bit of the “most left byte” Generally filtered in hardware (on the Ethernet NIC) Sometimes filtered in software (in the Ethernet device driver) Spring 2013CE Advanced Networks15

Multicast Address Translation Spring 2013CE Advanced Networks16

Review Multicast groups are defined by class D IP addresses – In binary, start with “1110” – IP addresses can often be directly mapped to MAC addresses – E.g. Ethernet Spring 2013CE Advanced Networks17

Three Components of IP Multicast IP Multicast Addressing IP Group Management Multicast Routing Spring 2013CE Advanced Networks18

IGMP The Internet Group Management Protocol (IGMP) is a simple protocol for the support of IP multicast. Defined in RFC Operates on an IP subnet. Used by routers to keep track of membership in a multicast group. Support for: – Joining a multicast group – Querying group membership – Sending membership reports Spring 2013CE Advanced Networks19

IGMP Protocol A host sends an IGMP report when it joins a multicast group – Multiple processes can join a group... a report is only sent for the first one. – No report is sent when a host leaves a group A router regularly multicasts an IGMP query to all hosts – Group address is set to zero. – A host responds to an IGMP query with an IGMP report. Routers – Track which multicast groups have members on each subnet (but does not keep track of which hosts have joined a group). – Forward packets on subnets that provide access to group members (directly or as transit). Spring 2013CE Advanced Networks20

IGMP Protocol Spring 2013CE Advanced Networks21

IGMP Packet Format IGMP messages are only 8 bytes long Type: 1 = sent by router, 2 = sent by host Spring 2013CE Advanced Networks22

IGMP Protocol Spring 2013CE Advanced Networks23

Networks with multiple routers Only one router generates IGMP queries (Querier) – Router with smallest IP address becomes the querier on a network. One router forwards multicast packets to the network (Forwarder). Spring 2013CE Advanced Networks24

Review IGMP used to track group membership on subnets. Supports – Hosts joining multicast groups – Routers querying subnets for current membership – Hosts reporting membership (in response to queries) Hosts – Notify routers when they join a group – Respond to router queries – Are not required to notify routers when they leave a group Spring 2013CE Advanced Networks25

Review Routers – Track which multicast groups have members on each subnet (but don't track which hosts have joined each group) – Forward traffic for a group only on subnets that provide access to group members (directly or as transit) One router is selected on each subnet to serve as Querier and Forwarder Spring 2013CE Advanced Networks26

Three Components of IP Multicast IP Multicast Addressing IP Group Management Multicast Routing Spring 2013CE Advanced Networks27

Goal of Multicast Routing Build a spanning tree that reaches all members of a multicast group Spring 2013CE Advanced Networks28

Multicast routing as a graph problem Problem: Embed a tree such that all multicast group members are connected by the tree Spring 2013CE Advanced Networks29

Multicast routing as a graph problem Spring 2013CE Advanced Networks30 Problem: Embed a tree such that all multicast group members are connected by the tree Solution 1: Shortest Path Tree or source-based tree - build a tree that minimizes the path cost from the source to each receiver – If there are multiple senders, need one tree per sender – Easy to compute

Multicast routing as a graph problem Spring 2013CE Advanced Networks31 Problem: Embed a tree such that all multicast group members are connected by the tree Solution 2: Minimum-Cost Tree - build a tree that minimizes the total cost of the edges – Single tree serves all senders – Very expensive to compute (not practical for more than 30 nodes)

Multicast routing in practice Routing Protocols implement one of two approaches: 1.Source-based Tree: – Essentially implements Solution 1. – Builds one shortest path tree for each sender – Tree is built from receiver to the sender Use reverse path forwarding 1.Shared- or Core-based Tree: – Build a single distribution tree that is shared by all senders – Does not use Solution 2 (because it is too expensive) – Selects one router as a “core” (also called “rendezvous point”) – All receivers build a shortest path to the core Use reverse path forwarding Spring 2013CE Advanced Networks32

Reverse Path Forwarding (RPF) Build a shortest path tree by using unicast routing tables… backwards. Reverse in the sense that the path used to forward unicast traffic to the node is used to forward multicast traffic from the node. Routers join the tree when they have downstream group members – Notify the unicast next hop router towards the root that they wants to join the tree. The multicast tree is composed of interfaces – On subnets with source or group members (receivers) – That connect a router to its RPF neighbor, or – With neighbors for which the router is their RPF neighbor Multicast forwarding – Accept packets from interfaces on the multicast tree, and – Forward them out all other interfaces on the tree Spring 2013CE Advanced Networks33

Multicast Routing table Routing table entries differ for source-based and for core-based trees… – Source-based tree: (Source, Group) or (S, G) entry. – Core-based tree: (*, G) entry. Spring 2013CE Advanced Networks34 Source IP address Multicast group Incoming interface (RPF interface) Outgoing interface list S1G1I1I2, I3 *G2I2I1, I3

Multicast routing in practice Multicast routing algorithms in implement one of two approaches: 1.Source-based tree: Establish a reverse path to the source(s) 2.Core-based tree: Establish a reverse path to the core router (or RP) Spring 2013CE Advanced Networks35

Multicast routing in practice Multicast routing algorithms in implement one of two approaches: 1.Source-based tree: Establish a reverse path to the source(s) 2.Core-based tree: Establish a reverse path to the core router (or RP) Spring 2013CE Advanced Networks36

Building a source-based tree - Flood & Prune Determine RPF interfaces from unicast routing tables Spring 2013CE Advanced Networks37 Member Non-member

Building a source-based tree - Flood & Prune Flood - forward packets that arrive on RPF interface on all non- RPF interfaces Spring 2013CE Advanced Networks38 Member Non-member

Building a source-based tree - Flood & Prune Receiver drops packets not received on RPF interface Spring 2013CE Advanced Networks39 Member Non-member

Building a source-based tree - Flood & Prune Prune - send a prune message – When a packet is received on a non- RPF interface, or – When have no downstream receivers Disables routing table entry Spring 2013CE Advanced Networks40 Member Non-member

Pruning Prune message temporarily disables a routing table entry – Effect: Removes a link from the multicast tree – No multicast messages are sent on a pruned link – Prune message is sent in response to a multicast packet – Why is routing table only temporarily disabled? Who sends prune messages? – A router… …with no group members on directly connected subnets …which has received prune messages from routers on all non-RPF interfaces – A router that has received a packet from a non-RPF neighbor Spring 2013CE Advanced Networks41

Building a source-based tree - Flood & Prune When a receiver joins need to re- activate a pruned routing table entry Graft- send a Graft message to disable previous prune, and re- activate a routing table entry. Spring 2013CE Advanced Networks42 Member Non-member

Building a source-based tree - Explicit Join This only works if the receiver knows the source Explicit-Join - Receiver sends a Join message to RPF neighbor, creates (S,G) routing table entry, and is forwarded. Spring 2013CE Advanced Networks43 Member Non-member

Multicast routing in practice Multicast routing algorithms in implement one of two approaches: 1.Source-based tree: Establish a reverse path to the source(s) 2.Core-based tree: Establish a reverse path to the core router (or RP) Spring 2013CE Advanced Networks44

Building a core-based tree One router is the core Receiver sends a Join message to RPF neighbor with respect to core Join message creates (*, G) routing table entry Spring 2013CE Advanced Networks45

Building a core-based tree Source sends data to the core Core forwards data according to routing table entry Spring 2013CE Advanced Networks46

Existing Multicast Routing Protocols Distance Vector Multicast Routing Protocol (DVMRP): – First multicast routing protocol – Implements flood-and-prune Multicast Open Shortest Path First (MOSPF): – Multicast extensions to OSPF. Each router calculates a shortest-path tree based on link state database – Not widely used Core Based Tree (CBT): – First core-based tree routing protocol Protocol Independent Multicast (PIM) (RFC 2362): – Two modes: PIM Dense Mode (PIM-DM) and PIM Sparse Mode (PIM-SM). – PIM-DM - source-based trees using flood-and-prune – PIM-SM - core-based trees as well as source-based trees with explicit joins. Spring 2013CE Advanced Networks47

PIM Messages (PIM version 2) Encapsulated in IP datagrams with protocol number 103. PIM messages can be sent as unicast or multicast packet is reserved as the ALL-PIM-Routers group Spring 2013CE Advanced Networks48 PIM-DM messagesTypePIM-DMPIM-SM Hello0  Register1  Register-Stop2  Join/Prune3  Bootstrap4  Assert5  Graft6  Graft-Ack7  Candidate-RP- Advertisement 8 

PIM-DM: PIM Dense Mode Implements flood-and-prune Orange = multicast data Blue = PIM message Spring 2013CE Advanced Networks49

PIM-SM: PIM Sparse Mode Core called rendezvous-point (RP) Receivers know RP (statically configured or dynamically elected) When receiver joins, a Join message is sent to RP on RPF path. Spring 2013CE Advanced Networks50

PIM-SM: PIM Sparse Mode Host H3 joins: Join message is only forwarded until the first router that is part of the core- based tree. Spring 2013CE Advanced Networks51

PIM-SM: Data transmission Source sends multicast data to RP attached to an RP Register message RP – Forwards data in the tree – Sends a Join on RPF path to source Spring 2013CE Advanced Networks52

PIM-SM: Data transmission When Join messages reaches R1, it sends a native multicast packet to the RP (in addition to the packet attached to the register message) Spring 2013CE Advanced Networks53

PIM-SM: Data transmission When RP receives native multicast packet it sends a Register Stop message to R1. This message stops the transmission of register messages from R1. Spring 2013CE Advanced Networks54

PIM-SM: Switch to source-based tree When data to receivers exceeds a threshold, routers switch to a source-based tree This is done by sending an explicit Join message to the source There may be duplicate packets being sent for some time Spring 2013CE Advanced Networks55

PIM-SM: Switch to source-based tree When data arrives from source (as opposed to RP), a Prune message is sent to the RPT Data is now forwarded only along the shortest-path tree Spring 2013CE Advanced Networks56

Review Goal of multicast routing is to build a spanning tree that reaches all members of a multicast group Two graph-based approaches – Shortest-path tree from each source for a group to the group members – Build a minimum-cost spanning tree between senders and group members Minimum-cost tree solution is too expensive to be practical Two practical approaches – Source-based tree from above – Shared- or Core-based tree where a shortest-path tree is built from a "core" or ”rendezvous point" router Spring 2013CE Advanced Networks57

Review Both solutions depend on the use of RPF paths – Build a tree using the unicast routing table entries for the root of the tree – When a router has group members downstream of itself from the root (in terms of unicast routes to the root), it notifies the next hop router to the root that it wants to join the tree for that root The resulting multicast tree is composed of interfaces – Attached to subnets with a source or group member(s) – That connect a router to its RPF neighbor – WIth neighbors for which the router is their RPF neighbor Multicast forwarding work by – Accepting packets from interfaces on the multicast tree, and – Forwarding them to all other interfaces on the tree. Spring 2013CE Advanced Networks58

Review Routing table entries… source-based trees vs. core-based trees – Source-based trees use (Source, Group) pairs to access entries – Core-based trees use just (*, Group) to access entries – Both entries are composed of a list of interfaces on the tree Building source-based trees with flood & prune – The first packet from a source is flooded over the tree. – Prune messages are sent to disable non-RPF links, and links to routers with no downstream group members – Prune state is temporary so flood & prune cycle will repeat at some point to detect new members Spring 2013CE Advanced Networks59

Review Building source-based trees with explicit joins – When a router detects a new member it sends a join to the source – Requires router to know, or be able to determine, the sources for a group Building core-based trees – Same as source-based trees with explicit joins, except the root of the tree is the core PIM is a very complicated protocol! Spring 2013CE Advanced Networks60