EECS702: Topics in Computer Systems - Future Internet (Spring 2008)

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.
Multicasting CSE April Internet Multicast Service Model Multicast group concept: use of indirection a host “sends” IP datagrams to multicast.
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.
TDC375 Winter 2002John Kristoff - DePaul University1 Network Protocols IP Multicast.
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.
Computer Networking Lecture 24 – Multicast.
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.
Multicast Networking 2 References Multicast Networking and Applications Miller, C. Kenneth Addison-Wesley, 1999 Computer Networking:
MULTICASTING Network Security.
COMS/CSEE 4140 Networking Laboratory Lecture 11 Salman Abdul Baset Spring 2008.
© J. Liebeherr, All rights reserved 1 IP Multicasting.
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.
CSE679: Multicast and Multimedia r Basics r Addressing r Routing r Hierarchical multicast r QoS multicast.
Group Management n Introduction n Internet Group Management Protocol (IGMP) n Multicast Listener Discovery (MLD) protocol.
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.
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.
© 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.
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.
Internet Multicasting Chapter 17. Hardware Broadcast Broadcast delivery –Network delivers a copy of a packet to each destination Bus technology - single.
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.
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.
Chapter 9: Multicast Sockets
Multicast Communications
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.
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.
1 Group Communications: Host Group and IGMP Dr. Rocky K. C. Chang 19 March, 2002.
1 CMPT 471 Networking II Multicasting © Janice Regan,
DMET 602: Networks and Media Lab
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…
Multicast Outline Multicast revisited
Implementing Multicast
Optional Read Slides: Network Multicast
Presentation transcript:

EECS702: Topics in Computer Systems - Future Internet (Spring 2008) IGMP and PIM Suman Pandey EECS702: Topics in Computer Systems - Future Internet (Spring 2008) DPNM Lab

Modern Applications

Outline Concepts behind protocols IGMP and PIM Multicasting Addressing scheme Group management IGMP Multicast Routing PIM

RFC RFC Supported on Macs, PCs, UNIX IGMP v1 [RC 1112] IGMP v2 [RFC 2236] IGMP v3 [draft] PIM v2 –SM [RFC 2362] PIM v2 –DM [RFC 2365] Supported on Macs, PCs, UNIX

Multicasting Multicast communications refers to one-to-many or many-to-many communications. Application level multicast Network multicast IP Multicasting refers to the implementation of multicast communication in the Internet

Tools Multicasting Tools SDR, VIC and RAT for Sun, Linux and Windows multicasting. Quicktime will be the Macintosh application for viewing multicast sessions. Products: Apple's QuickTime Conferencing software. ICAST Express Media, video, audio and text clients and servers, beta version available on request. Merit Network's mrouted, multicast router daemon (server). Microsoft's NetShow-- Windows video/audio client and server. Multicast-capable. Precept's IP/TV -- Windows client for receiving video/audio/slide broadcasts. Van Jacobson's popular multimedia multicasting tools for a Unix X Window server: video (VIC), and audio (VAT).

Multicast

Network Multicast

Multicast Semantics IP multicast works as follows: Multicast groups are identified by IP addresses in the range 224.0.0.0 - 239.255.255.255 (class D address) Every host (more precisely: interface) can join and leave a multicast group dynamically Every IP datagram send to a multicast group is transmitted to all members of the group by routers no security, no “floor control”

IP Multicast Protocol stack IP Multicasting only supports UDP as higher layer There is no multicast TCP !

Multicasting There are three essential components of the IP Multicast service: IP Multicast Addressing IP Group Management (IGMP v1 & v2) Multicast Routing (PIM v1 & v2)

Addressing How do you talk to a group of hosts (our multicast group), where each host has a different MAC address. Ensure that the other hosts, which are not part of the multicast group, don't process the information ? Break things down Hardware/Ethernet Multicasting IP Multicasting Mapping IP Multicast to Ethernet Multicast

Hardware/Ethernet multicasting The network card (NIC) must be multicast aware, it is configured, via its drivers, to watch out for particular multicast MAC addresses apart from its own Ethernet uses the low-order bit set to ZERO (0) for unicast and ONE (1) for multicast Lower order bit of the higher order octet is set to 1. The multicast MAC address is that can be recognized by computers that are part of the multicast group The IEEE group used a special Rule to determine the various MAC addresses that will be considered for multicasting for ex: MAC address 01:00:5E:00:00:05 will be used for the OSPF protocol

IP Multicast The IP Multicast combined with the hardware multicasting, gives us a multicasting model that works for our Ethernet network Once Layer 2 (Datalink) picks the multicast packet from the network (because it recognises it, as the destination MAC address is a multicast) it will strip the MAC addresses off and send the rest to the above layer, which is the Network Layer. Class D IP address is used for multicast addresses (decided by IANA) Class D is “flat”- that is, subnetting is not used, so no network and host partition. In class D address first 4 bits will always be 1110, the rest of 28 bits are group id, and there can be 228 multicast groups The group can be permanent such as (assigned by IANA) 224.0.0.0 Base Address (Reserved) [RFC1112,JBP] , 224.0.0.1 All Systems on this Subnet [RFC1112,JBP] ,224.0.0.2 All Routers on this Subnet [JBP] ,224.0.0.3 Unassigned [JBP] ,224.0.0.4 DVMRP Routers [RFC1075,JBP],224.0.0.5 OSPFIGP OSPFIGP All Routers [RFC2328,JXM1] Group can be transient. IPv6 has similar address allocations

Mapping IP multicast to Ethernet Multicast Rule for the mapping To map an IP Multicast address to the corresponding Hardward/Ethernet multicast address, place the low-order 23 bits of the IP multicast address into the low-order 23 bits of the special Ethernet multicast address. The rest of the high-order bits are defined by the IEEE (yellow color in the example) 23 bits are mapped to the base MAC address of the computer When combined makes one multicast Mac address

Group Management and IGMP We will examine issues of joining and leaving group Then see how these issues are handled by IGMP

Advertise Group membership One Way of Locating Multicast Groups Is Through Web-Based Announcements, Such as This Schedule of MBone Sessions at www.cilea.it/MBone/browse.htm Applications Such as Multikit Listen for SDP and SAP and Display the Multicast Sessions Advertised by Those Protocols

Local and wide area multicast

IGMP Join and Leave

Joining and Leaving a Group cont…

Increasing efficiency of Joining and Leaving a Group cont… Allowing host to sends message to Router to join a group without waiting for query If routers have no group member then it doesn’t forward any message Allowing a host to explicitly notify its local router when it leaves a group can increase efficiency After receiving leave request, router sends query to subnet asking if there is any other group members, if it doest get response, it ceases the packet forwarding Then router can prune itself from the multicast tree

IGMP v2 Host functions Membership Report messages when host want to join a group In response to the router query Leave Group message when host want to leave group Version 1 Membership Report messages IGMPv2 hosts support IGMPv1 Membership Reports for backward compatibility.

IGMP v2 Host function cont.. Join Multicast sessions are identified in the routers by a (source, group) pair of addresses source is the address of the session's originator group is the Class D group address The destination address of the Membership Report message's IP header is the group address other group members that might be on the subnet hear the report in addition to the router. message itself also contains the group address host sends one or two duplicate reports separated by a short interval 10 sec. for reinsurance. The local router periodically polls the subnet with queries Each query contains a value called the Max Response Time 10 sec If timer expires, the host responds to the query with one Membership Report for each group to which it belongs. Other group member also hear it, but the timer plays a role, If the host receives a Membership Report for a group before its delay timer expires, it does not send a Membership Report for that group. In this way, the router is informed of the presence of at least one group member on the subnet, without all members flooding the subnet with reports. Leave The message contains the address of the group being left, but unlike Membership Report messages, the Leave Group message is addressed to the "all routers on this subnet address of 224.0.0.2 because only the multicast routers on the subnet need to know that the host is leaving; other group members do not.

IGMP v2 Router Function General Query Group-Specific Query when host want to leave group

IGMP Querier Election Querier Election Only one IGMP Querier per LAN Querier with lowest numbered IP source address (v2)

IGMP v2 Router function cont.. General Query For checking the presence of the group members queries are sent every 60 seconds query also contains a value called the Max Response Time. By default, the Max Response Time is 10 seconds; sent to the "all systems on this subnet" address of 224.0.0.1 and does not contain a reference to any specific group As a result, the single message polls for reports from members of any and all groups that might be active on the subnet. The router tracks known groups and the interfaces attached to subnets with active members If router does not hear anything from the group in the twice the query interval plus one Max Response Time interval, then it considers there is no members to the group Group-Specific Query When a router receives a Leave Group message, it must determine whether any remaining members of that group are on the subnet by sending this query It contains the group address. Uses that as a destination address

IGMPv1 Vs IGMPv2 IGMPv1 has no Leave Group message, meaning that there is a longer period between the time the last host leaves a group and the time the router stops forwarding the group traffic. IGMPv1 has no Group-Specific Query. This follows from the fact that there is no Leave Group message. IGMPv1 does not specify a Max Response Time in its query messages. Instead, hosts have a fixed Max Response Time of 10 seconds. IGMPv1 has no querier election process. Instead, it relies on the IP multicast routing protocol to elect a designated router on the subnet. Because different protocols use different election mechanisms, it is possible under IGMPv1 to have more than one querier on a subnet. RFC 2236 describes several mechanisms that allow IGMPv2 to adapt in earlier versions IGMPv3 inclusion of group to be identified not only by group address, but also by source address. If certain member wants to receive traffic from specific source or exclude to receive traffic from some specific source. The member can express these wants in a Membership Report with Include or Exclude filter requests.

IGMP message format

PIM

Multicast Routing concepts source-based tree: one tree per source shortest path trees, reverse path forwarding group-shared tree: group uses one tree minimal spanning (Steiner) , center-based trees

Shortest Path Tree

Reverse Path Forwarding Rule forward packet from Source (R1) to all interfaces if and only if packet arrives on the interface that corresponds to the shortest path to Source no need to remember past packets R5 need not forward packet received from R6

RPF / Pruning

Core-based Trees: An Example One router identified as “center” of tree. To join: edge router sends unicast join-msg addressed to center router join-msg “processed” by intermediate routers and forwarded towards center join-msg either hits existing tree branch for this center, or arrives at center path taken by join-msg becomes new branch of tree for this router

Core-based Trees: An Example Suppose R6 chosen as center:

Core based tree pros and cons routers not part of a group are not involved in pruning explicit join/leave makes membership changes faster router needs to store only one record per group Cons all multicast traffic traverses core, which is a bottleneck traffic travels on non-optimal paths

PIM v2 Protocol independent because other protocols are dependent on Link state routing (MOSPF) and distance vector routing (DVMRP) This is the only protocol fully supported by Cisco. PIMv1 Vs PIMv2 Version 1 of the protocol encapsulates its messages in IP packets with protocol number 2 (IGMP) and uses the multicast address 224.0.0.2. PIM v2 uses its own protocol number of 103 and the reserved multicast address 224.0.0.13. PIM Choose different strategies depending on whether multicast tree is dense or sparse In dense mode the receivers are densely situated and most f the routes need to participate in the multicast forwarding flood and prune good for dense groups only need a few prunes CBT needs explicit join per source/group In sparse mode receivers are sparsely situated Flood and prune is a wastage. Too many prune message. Join and prune is better Center based tree is good for sparse groups

PIM v2 Continue PIM uses a notion of central node (rendezvous point) RP for each group, which maintains multicast shortest path tree for each group We assume in a domain of routers each router knows the unicast IP address for RP of a particular group In PIM sparse there are two type of trees : shared tree for a group and source specific tree Typically shared tree is built first and then source specific tree if required

PIM-DM Uses five PIMv2 message Hello Join/Prune Graft Graft-Ack Assert Uses flood-and-prune to build the multicast tree. Flood hello to entire PIM domain, because it does not have a build in routing protocol Join and Prune happens the same way as explained in the IGMP protocol, same mechanism of waiting and prune overriding happens. The Graft message used mainly when there is change in topology. Recalculation of the RPF interface when the unicast routing table changes Needs to elect a Designated router. IGMP needs a DR. If there are two router to reach the destination, then PIM uses Assert to decide which route to select. (This is required because there is no routing protocol)

PIM-SM Supports both shared and source-based trees. This is why popular. It has following packets Hello Bootstrap Candidate-RP-Advertisement Join/Prune Assert Register Register-Stop In Shared tree model we have core router. This is called rendezvous point (RP) in PIM-SM. RP can be configured in routers statically Open standard bootstrap protocol can be used Cisco-proprietary Auto-RP protocol can be used to designate and advertise the RP. In shared Tree the multicast tree is rooted towards the core rather than source. CBT uses bidirectional tree, because source might need to deliver the packets to the RP over the branches of the tree. This can lead to a loop in topology, because “RPF” checks can not be performed if there is “upstream” and “downstream” as it is protocol independent. To achieve this PIM-SM uses register and register stop message, and encapsulate the multicast packet in these messages. If there are too many encapsulated message then it sends register-stop message to stop this process and chooses “source based” STP rather than “Shared Once” STP Depending on the situation different scheme can be chosen.

Some experiments I wanted to see whether our network supports multicast of not http://detective.internet2.edu Try a simple multicast application Vic, rat, sdr - http://www.openmash.org/ Listen to some multicast stream - http://people.internet2.edu/~bdr/dvguide.html There is no multicast streams in our network, no IGMP no PIM Tool for testing multicast enabled network List of multicast server

Some experiments cont… Enabling IP multicast Configuring routers on your network Enable multicast for the network (globally). Determine the interfaces on which to use multicast, and enable multicast on those interfaces. Enable multicast routing protocols on specific devices. For example: PIM Sparse mode for links that have limited bandwidth. PIM Dense mode for links that have broad bandwidth. IGMP or DVMRP4. Create access lists specifying the range of multicast group addresses allowed to cross the router. Associate access lists with specific interfaces on different routers. http://technet2.microsoft.com/windowsserver/en/library/1eacd6dc-f51e-474f-9a49-ba524a15d6691033.mspx?mfr=true

Finally we can see something like ……