Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring 20061 CS4254 Computer Network Architecture and Programming Dr. Ayman A. Abdel-Hamid Computer.

Slides:



Advertisements
Similar presentations
1  Changes in IPv6 – Expanded addressing capabilities (32 to 128 bits), anycast address – A streamlined 40-byte header – Flow labeling and priority –
Advertisements

Multicast on the Internet CSE April 2015.
,< 資 管 Lee 附錄 A0 IGMP vs Multicast Listener Discovery.
Multicasting© Dr. Ayman Abdel-Hamid, CS4254 Spring CS4254 Computer Network Architecture and Programming Dr. Ayman A. Abdel-Hamid Computer Science.
Computer Networks21-1 Chapter 21. Network Layer: Address Mapping, Error Reporting, and Multicasting 21.1 Address Mapping 21.2 ICMP 21.3 IGMP 21.4 ICMPv6.
Multicast Fundamentals n The communication ways of the hosts n IP multicast n Application level multicast.
IP Suite© Dr. Ayman Abdel-Hamid, CS4254 Spring CS4254 Computer Network Architecture and Programming Dr. Ayman A. Abdel-Hamid Computer Science Department.
School of Information Technologies Internet Multicasting NETS3303/3603 Week 10.
Multicasting Jari Kellokoski Introduction When a unicast address identifies a sigle IP interface Then a broadcast address identifies all IP.
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.
Oct 21, 2004CS573: Network Protocols and Standards1 IP: Addressing, ARP, Routing Network Protocols and Standards Autumn
Slide Set 15: IP Multicast. In this set What is multicasting ? Issues related to IP Multicast Section 4.4.
Computer Network Architecture and Programming
1 IP Multicasting. 2 IP Multicasting: Motivation Problem: Want to deliver a packet from a source to multiple receivers Applications: –Streaming of Continuous.
Multicast Networking 2 References Multicast Networking and Applications Miller, C. Kenneth Addison-Wesley, 1999 Computer Networking:
Advanced UDP Sockets© Dr. Ayman Abdel-Hamid, CS4254 Spring CS4254 Computer Network Architecture and Programming Dr. Ayman A. Abdel-Hamid Computer.
UDP© Dr. Ayman Abdel-Hamid, CS4254 Spring CS4254 Computer Network Architecture and Programming Dr. Ayman A. Abdel-Hamid Computer Science Department.
© J. Liebeherr, All rights reserved 1 IP Multicasting.
Layering and the TCP/IP protocol Suite  The TCP/IP Protocol only contains 5 Layers in its networking Model  The Layers Are 1.Physical -> 1 in OSI 2.Network.
Network Redundancy Multiple paths may exist between systems. Redundancy is not a requirement of a packet switching network. Redundancy was part of the.
Business Data Communications, by Allen Dooley, (c) 2005 Pearson Prentice HallChapter Five 1 Business Data Communications Chapter Five Network, Transport,
The Network Layer. Network Projects Must utilize sockets programming –Client and Server –Any platform Please submit one page proposal Can work individually.
Chapter 17 Networking Dave Bremer Otago Polytechnic, N.Z. ©2008, Prentice Hall Operating Systems: Internals and Design Principles, 6/E William Stallings.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Multicast routing.
Microsoft Windows Server 2003 TCP/IP Protocols and Services Technical Reference Slide: 1 Lesson 9 Internet Group Management Protocol (IGMP)
Chapter Three Network Protocols By JD McGuire ARP Address Resolution Protocol Address Resolution Protocol The core protocol in the TCP/IP suite that.
Multicasting. References r Note: Some slides come from the slides associated with this book: “Mastering Computer Networks: An Internet Lab Manual”, J.
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.
© 2007 Cisco Systems, Inc. All rights reserved. 1 Network Addressing Networking for Home and Small Businesses – Chapter 5 Darren Shaver – Modified Fall.
Fall 2005Computer Networks20-1 Chapter 20. Network Layer Protocols: ARP, IPv4, ICMPv4, IPv6, and ICMPv ARP 20.2 IP 20.3 ICMP 20.4 IPv6.
Chapter 6-2 the TCP/IP Layers. The four layers of the TCP/IP model are listed in Table 6-2. The layers are The four layers of the TCP/IP model are listed.
Chapter 22 Network Layer: Delivery, Forwarding, and Routing Part 5 Multicasting protocol.
Addressing IP v4 W.Lilakiatsakun. Anatomy of IPv4 (1) Dotted Decimal Address Network Address Host Address.
© J. Liebeherr, All rights reserved 1 Multicast Routing.
Lector: Aliyev H.U. Lecture №10 Multicast network software design TASHKENT UNIVERSITY OF INFORMATION TECHNOLOGIES THE DEPARTMENT OF DATA COMMUNICATION.
IP Multicast COSC Addressing Class D address Ethernet broadcast address (all 1’s) IP multicast using –Link-layer (Ethernet) broadcast –Link-layer.
Björn Landfeldt School of Information Technologies NETS 3303 Networked Systems Multicast.
© J. Liebeherr, All rights reserved 1 IP Multicasting.
TCP/IP Protocol Suite 1 Chapter 10 Upon completion you will be able to: Internet Group Management Protocol Know the purpose of IGMP Know the types of IGMP.
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.
© Cengage Learning 2014 How IP Addresses Get Assigned A MAC address is embedded on a network adapter at a factory IP addresses are assigned manually or.
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.
21.1 Chapter 21 Network Layer: Address Mapping, Error Reporting, and Multicasting Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction.
Chapter 21 Multicast Routing
Chapter 9: Multicast Sockets
Network Layer: Address Mapping, Error Reporting, and Multicasting
Cisco Confidential © 2013 Cisco and/or its affiliates. All rights reserved. 1 Cisco Networking Training (CCENT/CCT/CCNA R&S) Rick Rowe Ron Giannetti.
2/25/20161 Multicast on the Internet CSE 6590 Fall 2009.
TCP/IP Protocol Suite and IP Addressing Presented By : Dupien AMS.
Chapter 5. An IP address is simply a series of binary bits (ones and zeros). How many binary bits are used? 32.
Multicasting EECS June Multicast One-to-many, many-to-many communications Applications: – Teleconferencing – Database – Distributed computing.
TCP/IP PROTOCOL UNIT 6. Overview of TCP/IP Application FTP, Telnet, SMTP, HTTP.. Presentation Session TransportHost-to-HostTCP, UDP NetworkInternetIP,
1 Internet Protocol, Version 6 (IPv6) Special Topics in Computer Sciences Second Term 1433/1434 H Dr. Loai Bani Melhim.
1 Group Communications: Host Group and IGMP Dr. Rocky K. C. Chang 19 March, 2002.
1 CMPT 471 Networking II Multicasting © Janice Regan,
IP: Addressing, ARP, Routing
ICMP The IP provides unreliable and connectionless datagram delivery. The IP protocol has no error-reporting or error-correcting mechanism. The IP protocol.
Network Layer, and Logical Addresses
Multicast Listener Discovery
Scaling the Network: The Internet Protocol
Internet Protocol INTERNET PROTOCOL.
Chapter 10 IGMP Prof. Choong Seon HONG.
Chapter 15. Internet Protocol
Internet Protocol, Version 6 (IPv6)
Scaling the Network: The Internet Protocol
Other Routing Protocols
IP Multicast COSC /5/2019.
Presentation transcript:

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring CS4254 Computer Network Architecture and Programming Dr. Ayman A. Abdel-Hamid Computer Science Department Virginia Tech Multicasting – Part I

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring Outline Multicasting (Chapter 21)  Multipoint Communications  IP Multicast  IGMP  Multicast Routing  IPv4 Multicast addresses  Sending and Receiving Multicast Messages

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring Multipoint Communications Multipoint communications support communications between more than two hosts  One-to-many  Many-to-many Unlike broadcast, allows a proper subset of hosts to participate Example standards  IP Multicast (RFC 1112, standard)RFC 1112

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring Logical Multipoint Communications Two basic logical organizations  Rooted: hierarchy (perhaps just two levels) that structures communications  Non-rooted: peer-to-peer (no distinguished nodes) Different structure could apply to control and data “planes”  Control plane determines how multipoint session is created  Data plane determines how data is transferred between hosts in the multipoint session

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring Logical Multipoint Communications Control Plane The control plane manages creation of a multipoint session  Rooted control plane One member of the session is the root, c_root Other members are the leafs, c_leafs Normally c_root establishes a session  Root connects to one or more c_leafs  c_leafs join c_root after session established  Non-rooted control plane All members are the same (c_leafs) Each leaf adds itself to the session

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring Logical Multipoint Communications Data Plane The data plane is concerned with data transfer Rooted data plane  Special root member, d_root  Other members are leafs, d_leafs  Data transferred between d_leafs and d_roots d_leaf to d_root d_root to d_leaf  There is no direct communication between d_leafs Non-rooted data plane  No special members, all are d_leafs  Every d_leafs communicate with all d_leafs

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring Forms of Multipoint Communications Server-based -- rooted multipoint communications with server as d_root  Passive or inactive Relay Reflector  Active Bridge or multipoint control unit (MCU) Strictly peer-to-peer multipoint – Non-rooted  Multicast

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring Multipoint Servers Passive Multipoint Server a relay or reflector service Provides no processing of the data Minimum requirement is for transport-level semantics, so can operate at the transport or application level Active Multipoint Server Does application-level processing  transcoding uses application-level semantics

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring Multicast Communication Multicast abstraction is peer-to-peer  Application-level multicast  Network-level multicast Requires router support (multicast-enabled routers) Multicast provided at network protocol level  IP multicast

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring Multicast Communication Transport mechanism and network layer must support multicast Internet multicast limited to UDP (not TCP)  Unreliable: No acknowledgements or other error recovery schemes (perhaps at application level)  Connectionless: No connection setup (although there is routing information provided to multicast-enabled routers)  Datagram: Message-based multicast

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring IP Multicast IP supports multicasting  Uses only UDP, not TCP  Special IP addresses (Class D) identify multicast groups  Internet Group Management Protocol (IGMP) to provide group routing information  Multicast-enabled routers selectively forward multicast datagrams  IP TTL field limits extent of multicast Requires underlying network and adapter to support broadcast or, preferably, multicast  Ethernet (IEEE 802.3) supports multicast

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring IP Multicast: Group Address How to identify the receivers of a multicast datagram? How to address a datagram sent to these receivers?  Each multicast datagram to carry the IP addresses of all recipients?  Not scalable for large number of recipients  Use address indirection A single identifier used for a group of receivers

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring IP Multicast: IGMP Protocol RFC 3376 (IGMP v3): operates between a host and its directly attached routerRFC 3376 host informs its attached router that an application running on the host wants to join or leave a specific multicast group another protocol is required to coordinate multicast routers throughout the Internet  network layer multicast routing algorithms Network layer multicast  IGMP and multicast routing protocols IGMP enables routers to populate multicast routing tables Carried within an IP datagram

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring IP Multicast: IGMP Protocol IGMP v2 Message types membership query: general Sent by routers  router query multicast groups joined by attached hosts membership query: specific Sent by routers  query if specific multicast group joined by attached hosts membership report Sent by host  report host wants to join or is joined to given multicast group leave group (optional) Sent by host  report leaving given multicast group

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring IP Multicast: IGMP Protocol Joining a group  Host sends group report when the first process joins a given group  Application requests join, service provider (end-host) sends report Maintaining routing table at the router  Multicast router periodically queries for group information  Host (service provider) replies with an IGMP report for each group  Host does not notify router when the last process leaves a group  this is discovered through the lack of a report for a query

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring IP Multicast: Multicast Routing Multicast routers do not maintain a list of individual members of each host group Multicast routers do associate zero or more host group addresses with each interface

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring IP Multicast: Multicast Routing Multicast router maintains table of multicast groups that are active on its networks Datagrams forwarded only to those networks with group members

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring IP Multicast: Multicast Routing How multicast routers route traffic amongst themselves to ensure delivery of group traffic?  Find a tree of links that connects all of the routers that have attached hosts belonging to the multicast group Group-shared trees Source-based trees Shared TreeSource Trees

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring MBONE: Internet Multicast Backbone The MBone is a virtual network on top of the Internet (section B.2)  Routers that support IP multicast  IP tunnels between such routers and/or subnets

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring Unicast versus Broadcast versus Multicast A unicast address identifies a single IP interface A broadcast address identifies all IP interfaces on the subnet A multicast address identifies a set of IP interfaces A multicast datagram is received only by those interfaces interested in the datagram (applications wishing to participate in the multicast group)

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring IPv4 Multicast Addresses 1/3 Class D addresses in the range through Low order 28 bits of class D address (see appendix A) form the multicast group ID (32-bit address is the group address)

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring IPv4 Multicast Addresses 1/3 Mapping of IPv4 multicast address to Ethernet address [RFC 112]  High-order 24 bits of Ethernet address are always 01:00:5E  Next bit always 0  Low-order 23 bits are copied from low-order 23 bits of multicast group address  High-order 5 bits of group address are ignored in the mapping  32 multicast addresses map to a single Ethernet address  Mapping not one-to-one

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring IPv4 Multicast Addresses 2/ mapped into an Ethernet address? Remember an Ethernet address is 48 bits The address 224 is E0 in hex, 0 is 00 in hex, 1 is 01 in hex, and 88 is 58 in hex. However, only the low-order 23 bits are used Therefore, the IP address of converted to a MAC address is E

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring IPv4 Multicast Addresses 3/ — reserved for routing, topology discovery, maintenance protocols  Not forwarded by routers (TTL = 1)  reserved  all-host group  all-routers group — assigned (RFC 1700, — are “administratively scoped” (RFC 2365)  — organization-local scope  — site-local scope (TTL < 32)

Multicasting Part I© Dr. Ayman Abdel-Hamid, CS4254 Spring Sending & Receiving Multicast Messages Receiving Multicast Messages Create a UDP socket Bind it to a UDP port, e.g., 1234  All processes must bind to the same port in order to receive the multicast messages Join a multicast group address Use recv or recvfrom to read the messages Sending Multicast Messages You may use the same socket (you used for receiving) for sending multicast messages or you can use any other UDP socket (it does not have to join any multicast group)