Christian Huitema, Routing in the Internet, Prentice Hall, 1995. Crowcroft/Handley/Wakeman, Internetworking Multimedia, 2000.



Similar documents
IP Multicasting. Applications with multiple receivers

CHAPTER 10 IP MULTICAST

Introduction to IP Multicast Routing

- Multicast - Types of packets

Multicast: Conformance and Performance Testing

Internet Protocol Multicast

Data Networking and Architecture. Delegates should have some basic knowledge of Internet Protocol and Data Networking principles.

Border Gateway Protocol, Route Manipulation, and IP Multicast

Datagram-based network layer: forwarding; routing. Additional function of VCbased network layer: call setup.

Dynamic Routing Protocols II OSPF. Distance Vector vs. Link State Routing

Route Discovery Protocols

Multicast for Enterprise Video Streaming

Efficient Video Distribution Networks with.multicast: IGMP Querier and PIM-DM

4: Multicast Routing 2 Inter-Domain Routing

Faculty of Engineering Computer Engineering Department Islamic University of Gaza Network Chapter# 19 INTERNETWORK OPERATION

Multicast in IPv6. David Larrabeiti López Departament of Telematic Engineering University Carlos III, Madrid ://

Introduction to TCP/IP

Introduction to LAN/WAN. Network Layer (part II)

Transport and Network Layer

Computer Networks. Main Functions

Introduction to IP v6

Integrating Internet Protocol (IP) Multicast over Multiprotocol Label Switching (MPLS) for Real Time Video Conferencing Data Transmission

Configuration Examples. D-Link Switches L3 Features and Examples IP Multicast Routing

Routing. An Engineering Approach to Computer Networking

Course Overview: Learn the essential skills needed to set up, configure, support, and troubleshoot your TCP/IP-based network.

Guide to TCP/IP, Third Edition. Chapter 3: Data Link and Network Layer TCP/IP Protocols

BUILDING MPLS-BASED MULTICAST VPN SOLUTION. DENOG3 Meeting, /Frankfurt Carsten Michel

RARP: Reverse Address Resolution Protocol

Computer Networks 1 (Mạng Máy Tính 1) Lectured by: Dr. Phạm Trần Vũ

The necessity of multicast for IPTV streaming

Hands on Workshop. Network Performance Monitoring and Multicast Routing. Yasuichi Kitamura NICT Jin Tanaka KDDI/NICT APAN-JP NOC

Performance Evaluation of Multicast Transmission on MPLS Network Using PIM SM

Cisco CCNP Optimizing Converged Cisco Networks (ONT)

Review: Lecture 1 - Internet History

OSPF Routing Protocol

Internetworking and Internet-1. Global Addresses

Based on Computer Networking, 4 th Edition by Kurose and Ross

VXLAN: Scaling Data Center Capacity. White Paper

IPv4 multicast Setup in Campus Networks

Future Internet Technologies

Internet Control Protocols Reading: Chapter 3

CSE331: Introduction to Networks and Security. Lecture 8 Fall 2006

Optimizing Enterprise Network Bandwidth For Security Applications. Improving Performance Using Antaira s Management Features

Layer 3 Routing User s Manual

IP Anycast: Point to (Any) Point Communications. Draft 0.3. Chris Metz, Introduction

Internet Firewall CSIS Packet Filtering. Internet Firewall. Examples. Spring 2011 CSIS net15 1. Routers can implement packet filtering

: Interconnecting Cisco Networking Devices Part 1 v2.0 (ICND1)

Guide to Network Defense and Countermeasures Third Edition. Chapter 2 TCP/IP

Objectives. The Role of Redundancy in a Switched Network. Layer 2 Loops. Broadcast Storms. More problems with Layer 2 loops

Designing and Developing Scalable IP Networks

Juniper / Cisco Interoperability Tests. August 2014

Multicast vs. P2P for content distribution

#41 D A N T E I N P R I N T. TEN-155 Multicast: MBGP and MSDP monitoring. Jan Novak Saverio Pangoli

Advanced Networking Routing: RIP, OSPF, Hierarchical routing, BGP

Network Security TCP/IP Refresher

Definition. A Historical Example

Internetworking. Problem: There is more than one network (heterogeneity & scale)

Final Exam. Route Computation: One reason why link state routing is preferable to distance vector style routing.

TRILL for Data Center Networks

Tomás P. de Miguel DIT-UPM. dit UPM

Lecture 8: Routing I Distance-vector Algorithms. CSE 123: Computer Networks Stefan Savage

EECS 489 Winter 2010 Midterm Exam

Demonstrating the high performance and feature richness of the compact MX Series

Router and Routing Basics

Interconnecting Cisco Network Devices 1 Course, Class Outline

Overview. Lecture 16: IP variations: IPv6, multicast, anycast. I think we have a problem. IPv6. IPv6 Key Features

6.263 Data Communication Networks

Link Failure Recovery. for MPLS Networks with Multicasting

OSPF Version 2 (RFC 2328) Describes Autonomous Systems (AS) topology. Propagated by flooding: Link State Advertisements (LSAs).

Routing Protocols (RIP, OSPF, BGP)

Lesson 5-3: Border Gateway Protocol

20. Switched Local Area Networks

Internet Protocol: IP packet headers. vendredi 18 octobre 13

Telematics. 9th Tutorial - IP Model, IPv6, Routing

The Benefits of Layer 3 Routing at the Network Edge. Peter McNeil Product Marketing Manager L-com Global Connectivity

Network layer: Overview. Network layer functions IP Routing and forwarding

Chapter 5: Sample Questions, Problems and Solutions Bölüm 5: Örnek Sorular, Problemler ve Çözümleri Örnek Sorular (Sample Questions):

OVERLAYING VIRTUALIZED LAYER 2 NETWORKS OVER LAYER 3 NETWORKS

Routing Protocols OSPF CHAPTER. The following topics describe supported routing protocols. Topics include OSPF, page 9-1 IS-IS Protocol, page 9-3

College 5, Routing, Internet. Host A. Host B. The Network Layer: functions

Chapter 6 Configuring IP

CHAPTER. IP Multicast Configuration

UNDERSTANDING JUNOS OS NEXT-GENERATION MULTICAST VPNS

VMware Virtual SAN Layer 2 and Layer 3 Network Topologies

Protocol Specification & Design. The Internet and its Protocols. Course Outline (trivia) Introduction to the Subject Teaching Methods

CSC458 Lecture 6. Homework #1 Grades. Inter-domain Routing IP Addressing. Administrivia. Midterm will Cover Following Topics

Virtual LANs. or Raj Jain

CS Computer Networks 1: Routing Algorithms

LAN Switching Computer Networking. Switched Network Advantages. Hubs (more) Hubs. Bridges/Switches, , PPP. Interconnecting LANs

IP and Mobility. Requirements to a Mobile IP. Terminology in Mobile IP

Implementing IPv6 Multicast

Multihoming and Multi-path Routing. CS 7260 Nick Feamster January

Zarząd (7 osób) F inanse (13 osób) M arketing (7 osób) S przedaż (16 osób) K adry (15 osób)

Distance Vector Multicast Routing Protocol

Transcription:

Multicast 1

2 Overview applications models host APIs LAN (IGMP, LAN switches) intra-domain routing inter-domain routing address allocation the MBONE Additional references (some are dated!): Stephen A. Thomas, IPng and the TCP/IP protocols, Wiley, 1996.

3 Christian Huitema, Routing in the Internet, Prentice Hall, 1995. Crowcroft/Handley/Wakeman, Internetworking Multimedia, 2000. Partially drawn from http://www-scf.usc.edu/ dbyrne/960223.txt (D. Estrin)

4 Broadcast and multicast broadcast: all hosts on (small, local) network directed broadcast: all hosts on remote network multicast: multiple recipients (group)

5 Applications for Multicast audio-video distribution (1-to-many) and symmetric (all-to-all) distributed simulation (war gaming, multi-player Doom,...) resource discovery (where s the next time server?) file distribution (stock market quotes, new software,...) network news (Usenet)

shared tree: single tree for all sources Ë 6 Multicast trees spanning tree tree that connects all the vertices (hosts/routers) minimum-cost spanning (MST) tree (where cost = hops, delay, $,...) does not minimize length of Ë to individual destination all traffic concentrated on tree reservation failures per-source tree: build independently for each source many variations! 0000 1111 0000 1111 0000 1111

7 Steiner Tree Minimizes the total number of links for all sinks 0000 1111 0000 1111 0000 1111 N-P complete (travelling salesman), unstable: small additions large changes in traffic flows 0000 1111 0000 1111 0000 1111 Add one node: 0000 1111 0000 1111 0000 1111

8 Finding MST via Prim s Algorithm centralized, finds MST for Î µ Í: set of vertices connected, start with one add lowest-cost edge Ù Úµ with Ù ¾ Í and Ú in Î Í. Ì Ì Ù Úµ Í Í Ú

9 Connection-oriented multicast enumerate sources explicitly source-based trees examples: ATM explicitly add each end point ST-II enumerate end points in setup message ATM, ST-II: end nodes attach themselves to tree enumeration of end points in packet only connection-oriented (packet header size!) source needs to know destinations resource discovery, dynamic groups difficult but: natural transition from unicast to multicast

10 ST-II IEN 199: ST ST-II: RFC 1190 (1990) ST-II+: RFC 1819 (1995) hard state combines building tree with resource reservation first Internet resource allocation protocol sender-initiated tree receiver-initiated joins ST2+

11 Host group model Deering, 1991: senders need not be members; groups may have any number of members; there are no topological restrictions on group membership; membership is dynamic and autonomous; host groups may be transient or permanent.

12 Local multicast Some local networks are by nature multi/broadcast: Ethernet, Token Ring, FDDI,... Ethernet, Tokenring: broadcast: all ones multicast: 01.xx.xx.xx.xx.xx adapter hardware can filter dynamic list of addresses ATM: point-to-point links need ATM multicast server

13 IP multicast host-group model network-level; data packets same, only address changes need help of routers special IP addresses (class D): 224.0.0.0 through 239.255.255.255 28 bits 268 million groups (plus scope) 224.0.0.x: local network only 224.0.0.1: all hosts; 224.0.0.2: all routers some pre-assigned (224.0.1.2: SGI Dogfight) others dynamic (224.2.x.x for multimedia conferencing) map into Ethernet: 01.00.5E.00.00.00 + lower 23 bits ttl value limits distribution: 0=host, 1=network

14 Administrative Scoping address-based 239.255/16: IPv4 local scope 239.192/14: organization local scope relative addresses (from top) for common applications within scope

15 Multicast programming UDP,notTCP(obviously...) struct sockaddr_in name; struct ip_mreq imr; sock = socket(af_inet, SOCK_DGRAM, 0); imr.imr_multiaddr.s_addr = htonl(groupaddr); imr.imr_interface.s_addr = htonl(inaddr_any); setsockopt(sock, IPPROTO_IP, IP_ADD_MEMBERSHIP, &imr, sizeof(struct ip_mreq)); name.sin_addr.s_addr = htonl(groupaddr); name.sin_port = htons(groupport); bind(sock, &name, sizeof(name)); recv(sock, (char *)buf, sizeof(buf), 0);

16 IGMP Multicast for local (broadcast) networks, between router and hosts Internet non-querier R querier R multicast-capable medium (Ethernet, FDDI, Tokenring,...) 128.59.27.35 128.59.27.17 H H H router listens to all multicast packets on all interfaces hosts sends IGMP report for first process to join group to that multicast group (ttl=1), maybe repeat router multicasts query to all hosts (224.0.0.2) every 125 seconds or on start-up host waits and listens for others; if nobody else, send response for groups it s in

17 if responsible for group, notify all router group querier sends group-specific query reduce bandwidth consumption random interval determined by router ( ½¼ seconds) really appropriate for today s switched Ethernet?

18 IGMPv2 timing querier host MR host joins group 10 sec. GQ MR 10 sec. LG host leaves group 1 sec. GSQ Group-specific query (GSQ) General query (GQ) Membership report (MR) Leave group (LG) group all routers all systems

19 IGMPv2 packet 4 8 12 version IGMP (2) type (1,6,7) response time 32-bit group address (class D IP address) 16 24 32 16-bit checksum 8 bytes $ netstat -g Group Memberships Interface Group RefCnt --------- -------------------- ------ lo0 ALL-SYSTEMS.MCAST.NET 1 le0 224.2.127.255 1 le0 ALL-SYSTEMS.MCAST.NET 1

20 IGMPv3 adds source filtering to IGMPv2 Membership Report includes lists of sources to include or exclude Group-and-Source-Specific Query asks whether anybody cares about the group and the sources listed unlike IGMPv2, host no longer suppresses membership reports if it hears from another host accounting avoid Ethernet switches having to remove outbound IGMP reports to fool hosts for efficiency, single membership report can list multiple groups Note: IPv6 defines new protocol, Multicast Listener Discovery (MLD)

21 Reverse path flooding iif: incoming interface; oif: outgoing interface if iif is on shortest path to source Ë forward to all other oifs (RPF check) towards receivers Ê in group avoids forwarding duplicates

22 Multicast forwarding First packet (truncated broadcast) S router message host R - x not shortest path no member on local net

23 Reverse path broadcasting do RPF check as before exchange unicast routing info to establish parentage restrict oifs to child nodes reduce duplicates

24 Multicast routing link-state based dense mode sparse mode

25 Multicast forwarding with truncation flood with RPF check pruning: leaves of tree send prune if no members below receivers tell routers of membership routers know whether to forward to LAN or prune prune state must time out periodic broadcast trade-off: join latency bandwidth add: explicit graft to cancel prune: join latency still need occasional broadcast for topology changes

26 Multicast forwarding With pruning: S 2nd message R - prune router needs to keep negative list for groups

27 Distance Vector Multicast Routing Protocol (DVMRP) flood + RPF check pruning: time out 1 minute routers may send grafts upstream onlysendtochildren maintain routing information (DV) used in MBone

28 Multicast Open Shortest Path First (MOSPF) link-state based include membership info in link-state advertisements compute tree for each Ë pair oifs can create shortest-path trees even with asymmetric links cannot afford to recompute trees with each LS change

29 PIM-DM use unicast routing table DVMRP: include only oif that use this router to reach source PIM-DM: forward to all outgoing interfaces

30 Problems multicast storms MOSPF: broadcast of membership to off-tree areas DVMRP: occasional broadcast of packets bad for WANs prune state in routers for sparse groups multicast routing vs. unicast routing: reverse path with asymmetric links hierarchical routing? few big senders, lots of background mumbling compromise on optimal trees

31 Protocol Independent Multicast (PIM-SM) uses unicast routing supports SPTs and shared trees (rooted at rendezvous point RP), depending on traffic 1. group-specific RP-rooted shared tree 2. source-based tree

32 PIM-SM: RP election RP selected by hash of bootstrap router (BSR) candidate sends list of candidate RPs candidate BSRs, configured with priority multicast candidacy locally (ttl = 1), then flood elected routers periodically sends bootstrap message with RPs candidate BSR candidate RP candidate-rp sends message to BSR

33 PIM-SM: shared tree send packet via unicast in register message, encapsulated, to RP RP forwards message down shared tree receivers send join to RP to join shared tree joins stop when reaching tree, install µ state

3. and prune shared tree for Ë 34 PIM-SM: source-specific tree 1. bypass encapsulation RP sends join towards Ë nodes recognize destination and forward based on 2. receivers join

35 PIM-SM S A Join I Join A! B R3 H F C prune G E RP prune D R1 R2

36 Sparse Mode Problems single point of failure hot spot non-optimal path complexity

37 Interdomain sparse multicast routing: CBT core-based trees: bidirectional center-based shared trees routed at core receivers send join messages to core senders send data to core, but can be short-cut send to all interfaces participating in group no SPTs hard-state with acknowledged join from core or first on-tree router : no source specific state : path lengths, traffic concentration explicit joining (vs. implicit join and explicit prune) join messages from Ê s router to root of tree not much implementation

38 MBONE MBONE multicast backbone overlay network over Internet, up to 10,000 routes difficulty of limiting fan-out needed until deployment of multicast-capable backbone routers IP-in-IP encapsulation tunneling: IP header IP header 192.1.2.3 128.3.5.6 4 (IP) 193.1.1.1 224.2.0.1 17 UDP RTP audio/video data (UDP) source: 193.1.1.1; group: 224.2.0.1; MBONE tunnel: 192.1.2.3 to 128.3.5.6 limited capacity, resilience

39 Mbone 193.1.1.1 multicast-capable router non-multicast router 128.3.5.6 Mbone router (workstation) 192.1.2.3 encapsulated

40 Inter-domain multicast one RP per AS Multicast Source Discovery Protocol (MSDP) avoid third-party dependencies designated party (RP) announces membership to others flood information to other ASs

41 Multicast Source Discovery Protocol (MSDP) join together PIM-SM regions ( AS ) discover sources in other regions (to send them PIM join requests) peering with fellow RPs send source active to peer RPs flood source active message in BGP style works reasonably well only when few senders

42 MSDP Operation RP sender RP RP SA message RP BGP peer SA messages MSDP peer MSDP peer RP RP RP RP

43 Border Gateway Multicast Routing Protocol (BGMP) bidirectional shared tree for each group TCP connections between routers (external BGP peers) root domain distribute routes to AS hosting core packets can bypass BGMP core packet forwarding similar to PIM-SM RP

M-IGP BGMP M-IGP BGMP M-IGP BGMP BGMP BGMP M-IGP AS2 M-IGP BGMP BGMP M-IGP AS1 M-IGP 3 2 1 BGMP 12 4 AS3 M-IGP BGMP 5 6 11 M-IGP BGMP 7 BGMP M-IGP AS5 M-IGP 10 BGMP AS4 M-IGP BGMP 8 9 44

45 Multicast address allocation hierarchical, with different time scales: 1. clients contact MAAS server in domain via MADCAP 2. MADCAP gets it via Multicast Address Allocation Protocol (AAP) MASC routers multicast availability to the MAAS multicast claims 3. MASC for inter-as for large blocks 233/8 for per-as static allocation

46 Multicast Address Allocation MADCAP AS AAP MASC AS MASC AS AAP AAP AAP MADCAP AS

47 MADCAP UDP-based request-response (similar to DHCP) one or more local servers may request addresses in the future specify maximum delay can request specific address discover scopes via INFORM multicast request via DISCOVER server hands out, client confirms via REQUEST expires or via RELEASE

48 MADCAP CLIENT MAAS1 MAAS2 DISCOVER ACK ACK REQUEST ACK RELEASE ACK multicast unicast

49 AAP: Multicast Addresses within AS MASC MASC router ASA ASA ACLM AAP Multicast Group ASRP AIU AITU MAAS Autonomous System

50 AAP send ACLM to claim addresses object to claims and announce own via AIU MAAS can preallocate addresses (ACLM) or Adress Intent to Use (AITU), with reclaiming by others via ACLM report periodically on address space use

51 MASC top of hiearchy: inter-domain BGP model: TCP peering relationships also allows customer-provider relationships send time-limited claim for range, wait a few days and then use send prefix managed to children