MULTICAST. 2 Agenda Introduction Multicast addressing Group Membership Protocol PIM-SM / SSM MSDP MBGP.

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 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.
Computer Science 6390 – Advanced Computer Networks Dr. Jorge A. Cobb How to provide Inter-domain multicast routing? PIM-SM MSDP MBGP.
© 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.
TDC375 Winter 2002John Kristoff - DePaul University1 Network Protocols IP Multicast.
Slide Set 15: IP Multicast. In this set What is multicasting ? Issues related to IP Multicast Section 4.4.
Internet Networking Spring 2002
TDC375 Autumn 03/04 John Kristoff - DePaul University 1 Network Protocols Multicast.
MULTICASTING Network Security.
IP Multicast Angelos Vassiliou HMY 654. Overview Definitions Multicast routing Concepts IP Multicast Protocols.
© 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)
Inter-domain ASM Multicast Networking Michael P. O’Connor August 13, 2007 Energy Sciences Network Lawrence Berkeley National Laboratory Networking.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Multicast routing.
Multicast Routing Protocols NETE0514 Presented by Dr.Apichan Kanjanavapastit.
MULTICAST Tutorial RedIRIS/Red.es Miguel Angel Sotos
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.
Multicast Outline Multicast revisited Protocol Independent Multicast - SM Future Directions.
Advances in Multicast - The Promise of Single Source Multicast (SSM) (with a little on multicast DOS) Marshall Eubanks Multicast Technologies
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.
Computer Science 6390 – Advanced Computer Networks Dr. Jorge A. Cobb Deering, Estrin, Farinacci, Jacobson, Liu, Wei SIGCOMM 94 An Architecture for Wide-Area.
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.
© 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.
© 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
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.
Engineering Workshops 136 Inter-domain Multicast.
Chapter 25 Internet Routing. Static Routing manually configured routes that do not change Used by hosts whose routing table contains one static route.
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.
DMET 602: Networks and Media Lab Amr El Mougy Yasmeen EssamAlaa Tarek.
Engineering Workshops 96 ASM. Engineering Workshops 97 ASM Allows SPTs and RPTs RP: –Matches senders with receivers –Provides network source discovery.
1 Group Communications: Host Group and IGMP Dr. Rocky K. C. Chang 19 March, 2002.
DMET 602: Networks and Media Lab
TRANSPORT LAYER BY, Parthasarathy.g.
COMP/ELEC 429 Introduction to Computer Networks
BGP 1. BGP Overview 2. Multihoming 3. Configuring BGP.
Multicasting protocols
Computer Networking Multicast.
Multicast Outline Multicast Introduction and Motivation DVRMP.
Routing BY, P.B.SHANMATHI.
(How the routers’ tables are filled in)
CMPE 252A: Computer Networks
ECE544: Communication Networks-II Spring 2013
Routing.
UNIT III ROUTING.
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
Networking for the Future of Science
Introduction to IP Multicast
EE 122: Lecture 13 (IP Multicast Routing)
Computer Networks Protocols
Routing.
Implementing Multicast
Optional Read Slides: Network Multicast
Multicasting Unicast.
Presentation transcript:

MULTICAST

2 Agenda Introduction Multicast addressing Group Membership Protocol PIM-SM / SSM MSDP MBGP

3 Introduction Multicast addressing Group Membership Protocol PIM-SM / SSM MSDP MBGP

4 What is Multicasting? Server Router Unicast Server Router Multicast

5 Multicast Uses Any Applications with multiple receivers 1-to-many or many-to-many Live Video distribution Seminars, conferences, workshops.... Collaborative groupware e-Learning Periodic Data Delivery - "Push" technology stock quotes, sports scores, magazines, newspapers advertisements Server/Web-site replication Reducing Network/Resource Overhead more efficient to establish multicast tree rather then multiple point-to-point links Resource Discovery

A bit of history In 1995 the first mcast network was born: MBone DVMRP (Distance Vector Multicast Routing Protocol) was the protocol used DVMRP subnetworks was interconnected through the unicast Internet infrastructure with tunnels Flood and Prune technology Very successful in academic circles 6

Problem A bit of history DVMRP can’t scale to Internet sizes Distance vector-based routing protocol Periodic updates Full table refresh every 60 seconds Table sizes Internet > 40,000 prefixes at that moment Scalability Too many tunnels, hop-count till 32 hops, etc => In 1997, a native protocol is developed, Protocol Independent Multicast 7

The evolution PIM Dense mode Flood and Prune behavior very inefficient Can cause problems in certain network topologies Creates (S, G) state in EVERY router Even when there are no receivers for the traffic Complex Assert mechanism To determine which router in a LAN will forward the traffic No support for shared trees 8

The evolution PIM Sparse mode Must configure a Rendezvous Point (RP) ‏ Statically (on every Router) ‏ Using Auto-RP or BSR (Routers learn RP automatically) ‏ Very efficient Uses Explicit Join model Traffic only flows to where it’s needed Router state only created along flow paths Scales better than dense mode Works for both sparsely or densely populated networks 9

PIM Dense Mode Overview Source Initial Flooding Receiver Multicast Packets (S, G) State created in every every router in the network! 10

PIM Dense Mode Overview Source Pruning Unwanted Traffic Receiver Multicast Packets Prune Messages 11

PIM Dense Mode Overview Results After Pruning Source Receiver Multicast Packets Flood & Prune process repeats every 3 minutes!!! (S, G) State still exists in every every router in the network! 12

(S,G) notation For every multicast source there must be two pieces of information: the source IP address, S, and the group address, G. This is generally expressed as (S,G). Also commonly used is (*,G) - every source for a particular group. The router creates a table with the entries (*,G),(S,G). 13

14 IP Multicast building blocks The SENDERS send Multicast Addressing - rfc1700 class D ( ) ‏ The RECEIVERS inform the routers what they want to receive Internet Group Management Protocol (IGMP) - rfc2236 -> version 2 The routers make sure the STREAMS make it to the correct receiving nets. Multicast Routing Protocols (PIM-SM/SSM) ‏ RPF (reverse path forwarding) – against source address

15 Multicast Forwarding Multicast Routing is backwards from Unicast Routing Unicast Routing is concerned about where the packet is going. Multicast Routing is concerned about where the packet came from. Multicast Routing uses "Reverse Path Forwarding"

16 Multicast Forwarding What is RPF? A router forwards a multicast datagram only if received on the up stream interface to the source (i.e. it follows the distribution tree). The RPF Check The source IP address of incoming multicast packets are checked against a unicast routing table. 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 Forwarding (RPF)‏

17 Multicast Forwarding Multicast uses unicast routes to determine path back to source RPF checks ensures packets won’t loop RPF checks are performed against routing table by default If multicast path is different from unicast path, then a multicast table will exist. It will be use for RPF check. Routes contain incoming interface Packets matching are forwarded Packets mis-matching are dropped

Multicast Forwarding Source RPF Checking Example: RPF Checking Mcast Packets RPF Check Fails Packet arrived on wrong interface! Packet arrived on wrong interface! 18

Multicast Distribution Trees Shortest Path or Source Based Distribution Tree Group Member 1 Source Group Member 2 State Information: (S, G)‏ S = Source G = Group 19

Multicast Distribution Trees Shared or Core Based Distribution Tree Group Member 1 Source 1 Group Member 2 State Information: (*,G)‏ * = Any Source G = Group Source 2 Core 20

21 Multicast Distribution Trees Source or Shortest Path trees More resource intensive; requires more states (S,G) ‏ You get optimal paths from source to all receivers, minimizes delay Best for one-to-many distribution Shared or Core Based trees Uses less resources; less memory (*,G) You can get suboptimal paths from source to all receivers Depending on topology The RP (core) itself and its location may affect performance Best for many-to-many distribution May be necessary for source discovery (PIM-SM) ‏

22 Introduction Multicast addressing Group Membership Protocol PIM-SM / SSM MSDP MBGP

23 Multicast Addressing IP Multicast Group Addresses – Class “D” Address Space High order bits of 1st Octet = “1110” TTL value defines scope and limits distribution IP multicast packet must have TTL > interface TTL or it is discarded values are: 0=host, 1=network, 32=same site, 64=same region, 128=same continent, 255=unrestricted No longer recommended as a reliable scoping mechanism

24 Multicast Addressing Administratively Scoped Addresses – RFC – Private address space Similar to RFC 1918 unicast addresses Not used for global Internet traffic Used to limit “scope” of multicast traffic Same addresses may be in use at different locations for different multicast sessions Examples Site-local scope: /16 Organization-local scope: /14

25 Multicast Addressing GLOP addresses Provides globally available private Class D space 233.x.x/24 per AS number RFC2770 How? AS number = 16 bits Insert the 16 ASN into the middle two octets of 233/8 Online Glop Calculator:

26 Multicast Addressing Examples of Reserved & Link-local Addresses reserved & not forwarded Administrative Scoping Source-Specific Multicast All local hosts All local routers DVMRP OSPF Designated Router OSPF RIP PIM CBT VRRP

27 Introduction Multicast addressing Group Membership Protocol PIM-SM / SSM M-BGP MSDP

28 Internet Group Membership Protocol (IGMP)‏ How hosts tell routers about group membership Routers solicit group membership from directly connected hosts RFC 2236 specifies version 2 of IGMP Supported on every OS IGMP version 3 is the latest version RFC 3376 provides source include-list capabilities (SSM!) ‏ Support? Unix latest versions, Window XP, Vista

29 IGMPv2 Protocol Flow - Join a Group Router triggers group membership request to PIM. Hosts can send unsolicited join membership messages – called reports in the RFC (usually more than 1) ‏ Or hosts can join by responding to periodic query from router I want Forwards stream Router adds group I want to JOIN!

30 IGMPv2 Protocol Flow - Querier Hosts respond to query to indicate (new or continued) interest in group(s) ‏ only 1 host should respond per group Hosts fall into idle-member state when same-group report heard. After 260 sec with no response, router times out group Still interested? (general query )‏ I want group Yes, me!

31 IGMPv2 Protocol Flow - Leave a Group Hosts send leave messages to all routers group indicating group they’re leaving. Router follows up with 2 group-specific queries messages I don’t want anymore group I want to leave! Anyone still want this group?

IGMPv3 Source = Group = H1 - Member of R1 R3 R2 Source = Group = IGMPv3: MODE_IS_INCLUDE Join , H1 wants to receive from S = but not from S = With IGMPv3, specific sources can be pruned back - S = in this case draft-holbrook-idmr-igmpv3-ssm- 01.txt RFC 3376 Enables hosts to listen only to a specified subset of the hosts sending to the group Video Server 32

33 IGMP Enhancements IGMP Version 2 multicast router with lowest IP address is elected querier Group-Specific Query message is defined. Enables router to transmit query to specific multicast address rather than to the "all-hosts" address of Leave Group message is defined. Last host in group wishes to leave, it sends Leave Group message to the "all-routers" address of Router then transmits Group-Specific query and if no reports come in, then the router removes that group from the list of group memberships for that interface IGMP Version 3 Group-Source Report message is defined. Enables hosts to specify which senders it can receive or not receive data from. Group-Source Leave message is defined. Enables host to specify the specific IP addresses of a (source,group) that it wishes to leave.

34 Introduction Multicast addressing Group Membership Protocol PIM-SM / SSM MSDP MBGP

35 PIM-SM Protocol Independent Multicast - sparse mode draft-ietf-pim-sm-v2-new-10.txt Obsoletes RFC 2362 BSR removed from PIM spec. explicit join: assumes everyone does not want the data uses unicast routing table for RPF checking data and joins are forwarded to RP for initial rendezvous all routers in a PIM domain must have RP mapping when load exceeds threshold forwarding swaps to shortest path tree (default is first packet) ‏ state increases (not everywhere) as number of sources and number of groups increase source-tree state is refreshed when data is forwarded and with Join/Prune control messages

36 PIM Sparse-Mode :RP Allows Source Trees or Shared Trees Rendezvous Point (RP) ‏ Matches senders with receivers Provides network source discovery Root of shared tree Typically use shared tree to bootstrap source tree RP’s can be learned via: Static configuration – RECOMMENDED Auto-RP (V1 & V2) ‏ Bootstrap Router (V2) ‏

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

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

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

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

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

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

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

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

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

46 PIM-SM Configuration RP Mapping options Static RP Recommended Easy transition to Anycast-RP Allows for a hierarchy of RPs Auto-RP Fixed convergence timers (slow) ‏ Must flood RP mapping traffic BSR No longer in the PIM spec. Fixed convergence timers (slow) ‏ Allows for a hierarchy of RPs

47 PIM-SSM No shared trees No register packets No RP required No RP-to-RP source discovery (MSDP) ‏ Requires IGMP include-source list – IGMPv3 Host must learn of source address out-of-band (web page) ‏ Requires host-to-router source AND group request Hard-coded behavior in 232/8 Configurable to expand range

48 PIM-SSM Receiver RP Receiver announces desire to join group G AND source S with an IGMPv3 include-list. IGMPv3 host report (S, G) Join Last-hop router joins the Source Tree. Source Source Tree Traffic Flow (S,G) state is built between the source and the receiver.

49 PIM-SSM Receiver RP Data flows down the source tree to the receiver. Source Source Tree Traffic Flow

50 Introduction Multicast addressing Group Membership Protocol PIM-SM / SSM MSDP MBGP

51 MSDP Multicast Source Discovery Protocol RFC 3618 Allows each domain to control its own RP(s) ‏ Interconnect RPs between domains with TCP connections to pass source active messages (SAs) ‏ Can also be used within a domain to provide RP redundancy (Anycast-RP) ‏ RPs send SA messages for internal sources to MSDP peers SAs are Peer-RPF checked before accepting or forwarding RPs learn about external sources via SA messages may trigger (S,G) joins on behalf of local receivers MSDP connections typically parallel MBGP connections

52 MSDP Operation MSDP peers (inter or intra domain) ‏ (TCP port 639 with higher IP addr LISTENS) ‏ “FLOOD & join” SA (source active) packets periodically sent to MSDP peers indicating: source address of active streams group address of active streams IP address of RP originating the SA – only originate SA’s for its sources within its domain interested parties can send PIM JOIN’s towards source (creates inter-domain source trees) ‏

53 MSDP Source Active Messages Initial SA message sent when source first registers May optionally encapsulate first data packet Subsequent SA messages periodically refreshed every 30 seconds as long as source still active by originating RP Other MSDP peers don’t originate this SA but only forward it if received SA messages cached on router for new group members that may join Reduced join latency Prevent SA storm propagation

54 MSDP Overview SA Message , Domain C Domain B Domain D Domain E SA Source Active Messages SA Domain A SA Message , r Join (*, )‏ MSDP Peers RP s Register ,

55 MSDP Overview Domain C Domain B Domain D Domain E Domain A RP r MSDP Peers Join (S, )‏ RP s

56 MSDP Overview Domain C Domain B Domain D Domain E Domain A RP r MSDP Peers Multicast Traffic RP s

57 MSDP Peers MSDP establishes a neighbor relationship between MSDP peers Peers connect using TCP port 639 MSDP peers may run mBGP May be an MBGP peer, a BGP peer or both Required for peer-RPF checking of the RP address in the SA to prevent SA looping Exception: BGP is unnecessary when peering with only a single MSDP peer (default-peer) ‏

58 RPF-peer Rules Skip RPF Check and accept SA if: Sending MSDP peer is default-peer Sending MSDP peer = Mesh-Group peer Otherwise, being a MSDP peer, the RPF-peer will be: The originating RP. The eBGP next-hop toward the originating RP. The iBGP peer that advertise the route or is the IGP next-hop toward the originating RP. The one with the highest IP address of all the MSDP peers in the AS path toward the originating RP. The static RPF-peer.

59 MSDP with SSM – Unnecessary! Domain C Domain B Domain D Domain E Domain A RP r ASM MSDP Peers (irrelevant to SSM)‏ RP s Source in 232/8 Receiver learns S AND G out of band; ie Web page

60 MSDP with SSM – Unnecessary! Domain C Domain B Domain D Domain E Domain A RP r ASM MSDP Peers (irrelevant to SSM)‏ RP s Source in 232/8 Receiver learns S AND G out of band; ie Web page

61 MSDP Application: Anycast-RP RFC 3446 Within a domain, deploy more than one RP for the same group range Sources from one RP are known to other RPs using MSDP Give each RP the same /32 IP address Sources and receivers use closest RP, as determined by the IGP Used intra-domain to provide redundancy and RP load sharing, when an RP goes down, sources and receivers are taken to new RP via unicast routing Fast convergence!

62 Anycast-RP RP1 – lo0 X.X.X.X RP2 – lo0 Y.Y.Y.Y Rec Src MSDP

63 Anycast-RP RP2 – lo0 Y.Y.Y.Y Rec Src RP1 – lo0 X.X.X.X X

64 Introduction Multicast addressing Group Membership Protocol PIM-SM / SSM MSDP MBGP

65 MBGP Overview Multiprotocol Extensions to BGP (RFC 2858). Tag unicast prefixes as multicast source prefixes for intra- domain mcast routing protocols to do RPF checks. WHY? Allows for interdomain RPF checking where unicast and multicast paths are non-congruent. DO I REALLY NEED IT? YES, if: ISP to ISP peering Multiple-homed networks NO, if: You are single-homed

66 MBGP Overview MBGP: Multiprotocol BGP (multicast BGP in multicast networks) ‏ Defined in RFC 2858 (extensions to BGP) ‏ Can carry different route types for different purposes Unicast Multicast Both route types carried in same BGP session Does not propagate multicast state information Same path selection and validation rules AS-Path, LocalPref, MED, …

67 MBGP Overview New multiprotocol attributes: MP_REACH_NLRI Used to advertise one or more routes to a peer that shares the same path attribute MP_UNREACH_NLRI Used to indicate a previously route is no longer reachable They include the next information: Address Family Information (AFI) = 1 (IPv4) ‏ Sub-AFI = 1 (NLRI is used for unicast) ‏ Sub-AFI = 2 (NLRI is used for multicast RPF check) ‏ Sub-AFI = 3 (NLRI is used for both unicast and multicast RPF check) ‏ This information is used to build routing tables Allows different policies and topologies between multicast and unicast

MBGP—Capability Negotiation RFC 2842 BGP routers establish BGP sessions through the OPEN message OPEN message contains optional parameters BGP session is terminated if OPEN parameters are not recognised MBGP peers use this procedure to determine if they support MBGP and which AFIs and SAFIs support each one If there is no match, notification is sent and peering doesn’t come up If neighbor doesn’t include the capability parameters in open, session backs off and reopens with no capability parameters Peering comes up in unicast-only mode 68

69 Summary IGMP - Internet Group Management Protocol is used by hosts and routers to tell each other about group membership. PIM-SM - Protocol Independent Multicast-Sparse Mode is used to propagate forwarding state between routers. SSM - Source Specific Multicast utilizes a subset of PIM?s functionality to guaranty source-only trees in the 232/8 range. MBGP - Multiprotocol Border Gateway Protocol is used to exchange routing information for interdomain RPF checking. MSDP - Multicast Source Discovery Protocol is used to exchange ASM active source information between RPs.

70 ISP Requirements Current solution: MBGP + PIM-SM + MSDP Environment ISPs run iMBGP and PIM-SM (internally) ‏ ISPs multicast peer at a public interconnect Deployment Border routers run eMBGP The interfaces on interconnect run PIM-SM RPs’ MSDP peering must be consistant with eMBGP peering All peers set a common distance for eMBGP Summary