Advanced Network 2 Internet Multicasting 1 Important Contents

  • Slides: 57
Download presentation
Advanced Network 2 Internet Multicasting 1

Advanced Network 2 Internet Multicasting 1

Important Contents ● Multicast Terminology ● Multicast Addresses ● Internet Group Management Protocol ●

Important Contents ● Multicast Terminology ● Multicast Addresses ● Internet Group Management Protocol ● Multicast Routing Algorithms ● Internet Multicast Routing Protocols 2

Terminology Ø Unicast: just one sender and one receiver (1: 1) Ø Multicast: just

Terminology Ø Unicast: just one sender and one receiver (1: 1) Ø Multicast: just one sender and multiple receivers (1: n) Ø Broadcast: just one sender and All receivers in a subnet(1: n) Ø Anycast: just one sender and one receiver from a group(1: 1 out of m) Ø IPv 6 supports all types in layer 3, IPv 4 supports all types except for Anycast. 3

Anycast Ø Anycast: just one sender and one receiver from a group(1: 1 out

Anycast Ø Anycast: just one sender and one receiver from a group(1: 1 out of m). 4

Multicast Applications Ø Mostly used for Application which can tolerate some packet loss: Ø

Multicast Applications Ø Mostly used for Application which can tolerate some packet loss: Ø News/sports/stock/weather updates Ø Distance learning Ø Configuration, routing updates, service location Ø Teleconferencing (audio, video, shared whiteboard, text editor) Ø Distributed interactive gaming or simulations Ø Email distribution lists Ø Content distribution; Software distribution Ø Web-cache updates Ø Database replication 5

Multicast in Application Layer Ø Multicast via unicast. Ø Source sends N unicast datagrams,

Multicast in Application Layer Ø Multicast via unicast. Ø Source sends N unicast datagrams, one address for each receiver. Ø Connection less in layer 4, such as UDP/IP 6

Multicast in Application Layer Ø Needs high Bandwidth, high Bit Rate. Ø Really Unicast.

Multicast in Application Layer Ø Needs high Bandwidth, high Bit Rate. Ø Really Unicast. Ø Can support only Small groups. 7

Application-Layer Multicast (ALM) Ø End systems involved in multicast copy and forward unicast datagrams

Application-Layer Multicast (ALM) Ø End systems involved in multicast copy and forward unicast datagrams among themselves. Ø Sender sends to one host of the group. 8

Application-Layer Multicast (ALM) Ø Needs high Bandwidth, high Bit Rate. Ø Really Unicast. Ø

Application-Layer Multicast (ALM) Ø Needs high Bandwidth, high Bit Rate. Ø Really Unicast. Ø Can support only Small groups. 9

IP Multicast, or Network Multicast Ø Most important and practical Multicast. Ø Routers actively

IP Multicast, or Network Multicast Ø Most important and practical Multicast. Ø Routers actively participate in multicast, making copies of packets as needed and forwarding towards multicast receivers. 10

IP Multicast, or Network Multicast Ø Routers actively participate in multicast, making copies of

IP Multicast, or Network Multicast Ø Routers actively participate in multicast, making copies of packets as needed and forwarding towards multicast receivers. Ø Layer 3 Multicast. Ø Less BW and larger groups. 11

IP Multicast vs Application Layer Multicast • Application level one to many communication •

IP Multicast vs Application Layer Multicast • Application level one to many communication • multiple unicasts • IP multicast R S R R 12

Multicast is connectionless. Ø IP Multicast with UDP protocol in layer 4. 13

Multicast is connectionless. Ø IP Multicast with UDP protocol in layer 4. 13

Multicast Group Ø A collection of hosts for receiving Multicast packets. Ø A Multicast

Multicast Group Ø A collection of hosts for receiving Multicast packets. Ø A Multicast group is defined by a Multicast IP address and a port number. Ø A host joins the group by requesting. It sends a join message, using the Internet Group Management Protocol (IGMP), to its first-hop router, in its LAN. 14

Internet Group Management Protocol (IGMP): Ø Host to/from router. Ø Is a simple communications

Internet Group Management Protocol (IGMP): Ø Host to/from router. Ø Is a simple communications protocol used by hosts in LANs and adjacent routers (Local Multicast Router) on IPv 4 networks to establish multicast group memberships. Ø IGMP is an integral part of IP multicast. Ø Allows the network to direct multicast transmissions only to hosts that have requested them. Ø LAN switches must support IGMP. 15

IGMP Domain Ø IGMP is a layer 3 protocol for IP Multicast. Ø The

IGMP Domain Ø IGMP is a layer 3 protocol for IP Multicast. Ø The Domain is : a LAN and the Local Multicast Router 16

IGMP Domain Ø IGMP is not used out of LANs. No routing. 17

IGMP Domain Ø IGMP is not used out of LANs. No routing. 17

Joining Multicast group Ø Host (#1) informs Local Multicast Router of desire to join

Joining Multicast group Ø Host (#1) informs Local Multicast Router of desire to join group (G 1): IGMP (Internet Group Management Protocol). The host request is sent to the multicast group address that the host wants to join. Ø The TTL (Time To Live) of the frame (request) set to 1 ensures that the request does not go beyond the sub-network, otherwise all IGMP routers (Not related to the LAN) receive the “Join Request”. 18

Joining Multicast group Ø This request opens the sub-network to the requested source flow

Joining Multicast group Ø This request opens the sub-network to the requested source flow (main data) through the marked port of the Forwarder router, R 1. 19

IGMP: Membership Query and Report Ø The IGMP Querier router sends regularly General and

IGMP: Membership Query and Report Ø The IGMP Querier router sends regularly General and /or Specific queries. The IGMP Querier is the router that has the lowest IP address. 20

IGMP Operation Ø A host belongs to a multicast group for a limited time.

IGMP Operation Ø A host belongs to a multicast group for a limited time. Needs renewing. Ø R 1 sends General query to all systems on this SUB-NET(LAN). Ø R 1 sends General query to IP address 224. 0. 0. 1 for all hosts. Ø R 1 sends this every 60 s (tunable) 21

IGMP Operation Ø H 1 and H 2 sets random timer before they reply.

IGMP Operation Ø H 1 and H 2 sets random timer before they reply. H 2's timer sets of first. H 1 sees H 2's report and cancels its timer. R 1 now knows that there is at least one member of G on the network. 22

IGMP Operation Ø H 1 leaves group G, Sends a leave message to all

IGMP Operation Ø H 1 leaves group G, Sends a leave message to all routers on this network. Ø Leave message is sent to IP address 224. 0. 0. 2 for all routers. 23

IGMP Operation Ø R 1 knows that one member has left, but needs to

IGMP Operation Ø R 1 knows that one member has left, but needs to know if there any others, so sends a specific group query to group. 24

IGMP Operation Ø If H 2 remains in G, it sends a membership report.

IGMP Operation Ø If H 2 remains in G, it sends a membership report. If not, R 1 sends query again, and then notes that there are no members of G on this network. 25

Querier and Forwarder Ø More than one Multicast router. Ø Querier: the smallest IP

Querier and Forwarder Ø More than one Multicast router. Ø Querier: the smallest IP address router. Ø Forwarder: Usually the biggest IP address router. It is data Multicast router. 26

IGMP and Security Ø No security. Ø Can lower the Sub-Net security. Ø Disable

IGMP and Security Ø No security. Ø Can lower the Sub-Net security. Ø Disable IGMP if not use Multicasting, Multicast filtering in Firewalls. 27

Multicast management in Sub-Nets and Internet Versions Ø IGMP is used on IPv 4.

Multicast management in Sub-Nets and Internet Versions Ø IGMP is used on IPv 4. Ø Multicast management on IPv 6 networks is handled by Multicast Listener Discovery (MLD) protocol which is a part of ICMPv 6 R 1 Ø MLDv 1 is similar to IGMPv 2 and MLDv 2 similar to IGMPv 3. 28

IP Multicast Addresses, class D addresses: 224. 0. 0. 0 to 239. 255; 224

IP Multicast Addresses, class D addresses: 224. 0. 0. 0 to 239. 255; 224 = 11100000, 239 = 11101111 29

IP Multicast Addresses, in IPv 6: 8 ones followed by two 4 -bit followed

IP Multicast Addresses, in IPv 6: 8 ones followed by two 4 -bit followed by 112 -bit addresses. 30

IP Multicast Addresses Ø Reserved addresses by IANA for special purposes: 31

IP Multicast Addresses Ø Reserved addresses by IANA for special purposes: 31

Challenges in the multicast • How can a sender restrict who can receive? –

Challenges in the multicast • How can a sender restrict who can receive? – need authentication, authorization – encryption of data – key distribution – still an active area of research 32

IP Multicast Addresses Ø How can a user select a multicast address? Ø Register

IP Multicast Addresses Ø How can a user select a multicast address? Ø Register with IANA for static multicast address (global), or use GLOP reserved Address (static, regional). Ø Using GLOP reserved Address (static, regional), you can map directly between AS (Autonomous System) and Multicast addresses with prefix 233/8. Ø Provides each AS with /24 addresses to use (Every AS can use just 256 Multicast addresses). Ø E. G. : AS 5662 (hex: 0 x 16. 1 e ; or: 22. 30) can use multicast addresses 233. 22. 30. 0/24 - 233. 22. 30. 255/24 33

Multicast Addressing in Layer 2. Ø NIC accepts 2 types frames. Ø Unicast frames

Multicast Addressing in Layer 2. Ø NIC accepts 2 types frames. Ø Unicast frames with its own MAC address. Ø Multicast or Broadcast frames with its own MAC address. 34

Converting Layer 2 to Layer 3 Multicast Add. Ø 5 bits, xxxxx, are omitted,

Converting Layer 2 to Layer 3 Multicast Add. Ø 5 bits, xxxxx, are omitted, 32 addresses overlap. 32 -to-1, 32 IP multicast address to 1 multicast MAC address, ambiguity (25 = 32) Ø Modern Ethernet switches keep tracks and solve it. 35

IGMP Snooping Ø IGMP is a L 3 protocol, Switches are L 2. Ø

IGMP Snooping Ø IGMP is a L 3 protocol, Switches are L 2. Ø A Multicast frame received by switches, without Snooping, will be Broadcasted to all ports, waste of Bandwidth. 36

IGMP Snooping Ø An added feature under IGMP , in Layer 2, to increase

IGMP Snooping Ø An added feature under IGMP , in Layer 2, to increase efficiency. Ø IGMP Snooping: switches may listen to IGMP messages, and find Multicast groups members and manage the Multicast traffic based on the messages. Ø Switches listen to queries, joins, and leaves, and finds ports related to Multicast groups. Ø Modern switches have this capability. 37

Multicast Routing Ø Multicast routing: a networking method for efficient distribution of one-to-many traffic.

Multicast Routing Ø Multicast routing: a networking method for efficient distribution of one-to-many traffic. 38

Multicast Routing Ø The goal of multicast routing is to find an efficient tree

Multicast Routing Ø The goal of multicast routing is to find an efficient tree of links, before Multicast data forwarding, that connects all of the routers that have attached hosts belonging to the multicast group. Ø The tree may contain routers that do not have attached hosts 39 belonging to the multicast group.

Multicast routing; Graph Theory Ø Nodes are routers. Bolds are Multicast routers. Pales are

Multicast routing; Graph Theory Ø Nodes are routers. Bolds are Multicast routers. Pales are intermediate (not multicast) routers. S is sender. 40

Shortest Path Tree or Source-Based Tree Ø Minimum path cost trees. Ø One tree

Shortest Path Tree or Source-Based Tree Ø Minimum path cost trees. Ø One tree for every sender and group, (S, G). Ø Privileges: if one Multicast router leaves the tree (Group), there is no further cost to construct a new tree. Also is modular. Ø Drawback: one tree for every (S, G), non-scalable. 41

Minimum-Cost Tree Ø Minimum path cost tree. Ø Just one tree for all senders

Minimum-Cost Tree Ø Minimum path cost tree. Ø Just one tree for all senders and groups, (Ss, Gs). Ø Drawback: high cost, not practical for more than 30 nodes, non -scalable, non-modular. 42

Source Base Trees, Practical Ø The same as Shortest Path Tree. Ø The tree

Source Base Trees, Practical Ø The same as Shortest Path Tree. Ø The tree may contain routers, which have no attached hosts belonging to the multicast group. Ø One tree for every sender and group, (S, G). Ø The tree is constructed with Reverse Shortest Path (Reverse Path Forwarding) method. 43

Core Base Tree, Practical Ø Just one tree for all senders and groups, (Ss,

Core Base Tree, Practical Ø Just one tree for all senders and groups, (Ss, Gs). Ø Without using complex method Minimum Cost Tree, for the whole Tree. Ø Suboptimal, but feasible and practical. 44

Core Base Tree, Practical Ø One router as core or Rendezvous Point, divides problem

Core Base Tree, Practical Ø One router as core or Rendezvous Point, divides problem to smaller ones. Ø The smaller trees are constructed with Reverse Shortest Path (Reverse Path Forwarding) method. 45

Multicast routing, Routing Table 1. Source Based Tree: (Source, Group) or (S, G) 2.

Multicast routing, Routing Table 1. Source Based Tree: (Source, Group) or (S, G) 2. Core based Tree: (*, G) 46

Reverse Path Forwarding (RPF) Ø Basic routers’ multicast routing table constructing. Ø The source

Reverse Path Forwarding (RPF) Ø Basic routers’ multicast routing table constructing. Ø The source (of tree) address is known. Ø Starts from Multicast routers (end routers, leaves). Ø Uses Unicast routing table to determine upstream router (reverse path). Ø Fill out multicast routing table. Ø Unicast routing is efficient, thus the tree is efficient. Ø Two types: Source Based Tree and Core Based Tree 47

Multicast Routing Protocols in the Internet Ø Out of Sub-Nets. 48

Multicast Routing Protocols in the Internet Ø Out of Sub-Nets. 48

Multicast Routing Protocols in the Internet Ø Five types are used more. Ø Distance

Multicast Routing Protocols in the Internet Ø Five types are used more. Ø Distance Vector Multicast Routing Protocol (DVMRP): uses flood and prune. Ø Multicast Open Shortest Path First (MOSPF): extension from Open Shortest Path First (OSPF), not used much. Ø Border Gateway Multicast Protocol (BGMP): a -way tree. Usually between ISPs. two Ø Core Based Tree (CBT) : As before. Ø Protocol Independent Multicast (PIM), a Layer 3 protocol : (Most used) has two modes; PIM Dense Mode (PIM-DM) and PIM Sparse Mode. 49

PIM, Dense Mode Ø Flooding-and-prune strategy, similar to DVMRP. Ø Creates (S, G) in

PIM, Dense Mode Ø Flooding-and-prune strategy, similar to DVMRP. Ø Creates (S, G) in every router, (creates shortest path tree). 50

PIM, Dense Mode Ø Flooding-and-prune strategy, similar to DVMRP. Ø Creates (S, G) in

PIM, Dense Mode Ø Flooding-and-prune strategy, similar to DVMRP. Ø Creates (S, G) in every router. Ø Uses unicast routing tables for RPF. No separate multicast routing protocol. Ø Builds only source-based trees. Ø PIM Hello messages : to detect neighbor PIM routers. 51

PIM, Sparse Mode Ø Start with a shared tree. Ø When receivers join (via

PIM, Sparse Mode Ø Start with a shared tree. Ø When receivers join (via IGMP), PIM-Joins travel up to rendezvous point (core) to join a shared tree. Ø When sources start sending traffic, the sources are registered with the core. Ø Uses source-based trees, and core based tree. In light traffic source-based trees are used, traffic more than a threshold uses core based tree. 52

Flood and Prune in PIM: Ø 1 -Flooding: sender(source) sends multicast packets to all

Flood and Prune in PIM: Ø 1 -Flooding: sender(source) sends multicast packets to all routers. Ø 2 -Flooding: all routers get packets, maybe from several ports. 53

Flood and Prune in PIM: Ø 3 -Rejecting: rejects any packet/port that received on

Flood and Prune in PIM: Ø 3 -Rejecting: rejects any packet/port that received on any port other than the one it would use to send a unicast packet back to the source. x packets in the figure. Ø Note: unicast routing is efficient. 54

Flood and Prune in PIM: Ø 4 - Reverse Forwarding: all the routers which

Flood and Prune in PIM: Ø 4 - Reverse Forwarding: all the routers which have non-optimum (non-accepted) ports, send back the accepted packets through non- accepted ports to the source (core). Ø 5 - Routers which receive these reverse packets, learn that the related port must be deleted from the optimum tree for that multicast group, it is pruning the tree or deleting that ports from their Multicast routing tables. 55

Flood and Prune in PIM: Ø 6 -Pruning: the optimum tree remains. 56

Flood and Prune in PIM: Ø 6 -Pruning: the optimum tree remains. 56

Flood and Prune in PIM: Ø The final tree is the shortest path tree.

Flood and Prune in PIM: Ø The final tree is the shortest path tree. As receivers join or leave, the tree become new. 57