IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO...

34
IP MULTICAST • IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

Transcript of IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO...

Page 1: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

IP MULTICASTIP MULTICAST

• IP Address => Host Identifier• IP Address => Host IdentifierTHE ABILITY TO DELIVER

AN IP PACKET( DATAGRAM ) TO

MULTIPLE DESTINATION( HOST GROUP )

Page 2: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

IP MULTICAST SUPPORTIP MULTICAST SUPPORT

•Multicast IP Address•Mapping to LAN•Group Management Protocol at IP

Level– HOST GROUP

MulticastRouter

Host A

Host B

Host C

Page 3: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

IP MULTICAST ADDRESSIP MULTICAST ADDRESS• IP Address Space: Class D

Well-known IP Multicast Address

1110

1110000000000000000000000000000011101111111111111111111111111111

224.0.0.0239.255.255.255

224.0.0.0224.0.0.1224.0.0.2224.0.0.3224.0.0.4224.0.0.5224.0.0.6224.0.0.7224.0.0.8224.0.0.9224.0.0.10224.0.0.11224.0.0.12 -224.0.0.255

Base Address (Reserved)All Systems on this SubnetAll Routers on this SubnetUnassignedDVMRP RoutersOSPFIGP OSPFIGP All RouterOSPFIGP OSPFIGP Designated RoutersST RoutersSTHostsRIP2 RoutersIGRP RoutersMobile-AgentsUnassigned

Page 4: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

IP MULTICAST ADDRESS TO ETHERNET MAPPING

IP MULTICAST ADDRESS TO ETHERNET MAPPING

• Ethernet: 48 bit -> 23 bit• Ethernet: 48 bit -> 23 bit

1110

0000000100000000010111100

Group ID copied to Ethernet address

Ethetnet Address

0 1 0 0 5 E

23 bit

Class D Address

Page 5: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

HOST GROUPHOST GROUP

• Set of Hosts Listening to A Particular IP Multicast Address

• A Set of Zero or More Hosts• Membership -> Dynamic

– Hosts 는 언제나 가입 / 탈퇴– Member 의 수와 위치 제한 없음

• Permanent or Transient• All Hosts Group

– 224.0.0.1– All systems on this subnet– Automatically join

• Set of Hosts Listening to A Particular IP Multicast Address

• A Set of Zero or More Hosts• Membership -> Dynamic

– Hosts 는 언제나 가입 / 탈퇴– Member 의 수와 위치 제한 없음

• Permanent or Transient• All Hosts Group

– 224.0.0.1– All systems on this subnet– Automatically join

Page 6: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

ACTIVATIONACTIVATION

2. Start delay timer for group membership ( 0 ~ D seconds)

multicastrouter

multicastrouter

1. Query to all hosts group

multicastrouter

3. A hosts expires the delay timer

multicastrouter

multicastrouter

4. The host sends Report 5. Hosts in the group stop the delay timer

Page 7: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

IGMP MESSAGE FORMATIGMP MESSAGE FORMAT

IP header IGMP message

20 bytes 8 bytes

Version Type Unused Checksum

0 3 4 7 8 15 16 31

Group Address

Page 8: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

MULTICAST ROUTING PROTOCOL

IGMP

Multicast Routing Protocol: MOSPF, DVMRP,..

Page 9: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

MULTICAST ROUTING ALGORITHMS

• Flooding• Spanning Tree• Reverse-Path Forwarding (RPF)• Reverse-Path Forwarding with

Prunes• Steiner Tree• Core-Based Tree

Page 10: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

FLOODING

• Simplest Multicast Routing Algorithm

• Procedure– receive a multicast packet– test for the first reception– if first, forward the packet on all

(exception the incoming interface) interfaces

• Insufficient Use of Router Memory

Page 11: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

SPANNING TREE• A Tree Structure Where Only One

Active Path Connects Any Routers (No Loop)

Router

Leaf

Page 12: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

SPANNING TREE (CONTINUED)

• Multicast Packets are Forwarded Along the Spanning Tree

• One Spanning Tree for the Entire Internet• Easy to Implement• Traffic is Centralized on a Small Number

of Links• Group Membership not Considered• Does not Provide the Most Efficient Path

Between Members

Page 13: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

REVERSE PATH FORWARDING (RPF)• Different Spanning Tree for Each

Active (Source, Group) Pair– When a multicast packet is received,

note source (S) and Interface (I)– If I belongs to the shortest path

toward S, forward to all interfaces except I.

– If the test in the above is false, refuse the packet.A

ED

CB1 2

3 45

6

A

ED

CB

1 2

3

45

6

A

ED

CB

1 2

3 45

6

From Source A From Source C

Page 14: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

RPF (Continued)

• Guarantee the Fastest Possible Delivery, as Multicasting Follows the Shortest Path from Source to Destination

• Because a Different Tree is Computed for Each Source, the Packet Are Spread over Multiple Links Resulting in better Network Utilization

• Group Membership is not Considered

Page 15: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

RPF WITH PRUNES

• Group Membership Considered• Avoid Forwarding Datagrams onto a Subnet Without Members

– The first packet is flooded on the whole network– Prune messages are sent back from leaf nodes without group members– Propagated back to source, forming minimal tree

• Drawbacks– The first packet is flooded on the whole network– The router must keep states per group and source

• To Accommodate Dynamic Membership Changes, Prune Information is Removed from the Memory of all Routers at Regular Intervals. The Next Packet is Forwarded all Leaf Nodes followed by a Series of Prune Messages

• Not Scalable

Page 16: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

STEINER TREE

• Minimize the Number of Links to Connect the Group Members

• Source: C, Reception: A, DA

ED

CB1

2

3 45

6

A

ED

CB

1 2

3 45

6

RPF Tree Steiner Tree

Page 17: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

CORE BASED TREE (CBT)

• Core - a Fixed Point is the Center of the Multicast Group

• Recipients Send JOIN Message to the Core, to form a Tree

• One Spanning Tree per Group• Traffic Concentration Problem• Scalable• Variation - Multiple Cores

Page 18: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

CBT

• A single bidirectional shared tree for a group• Adv.

– reduction of state info. That needs to be maintained at each router

• Disadv.– traffic concentration – delivery delay can be higher than in source-based s

hortest path trees

Page 19: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

Multicast Routing

• DVMRP– Distance vector

multicast routing protocol

– Reverse-path distance vector (I.e., router calculates reverse optimum path, from source to itself)

• MOSPF– Multicast open

shortest path first– Uses group

membership packet

– Creates a shortest-path spanning tree

Page 20: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

DVMRP

• RFC 1075• Similar to Routing Information Protocol (RIP)

– <destinations, distances>• distance: hop count

– difference• reverse-path distance• handling of tunnels

– periodic exchange for the routing information• Maintain Separate Tables for Unicast & Multicast• Reverse Path Forwarding Algorithm & Pruning

– first packet sent to all routers– prune message sent to back

• Fixed Size IGMP Header

Page 21: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

MOSPF

• 패킷의 전달 경로는 패킷의 시작점과 목적지에 의해 결정됨 .

• OSPF 를 이용 최단 경로 결정• 그룹 구성원간에는 하나의 최단 경로만 존재• 데이터 링크 멀티캐스팅• Forwarding

– forwading cache• Dijkstra algorithm 을 이용한 최단경로 설정은 과부하 작업임• local group database

– {group A, Net1}• shortest path tree

Page 22: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

MOSPF

• An enhancement of the unicast routing protocol OSPF• Designed to operate within a single AS(autonomous system)• OSPF

– Link-State Protocol– Complete picture of the topology of AS

• MOSPF– Add Group membership-LSA

• Intra-area multicasting, Inter-area multicasting, Inter-AS multicasting

• Design Goals– Extend OSPF to support multicasting– Add minimal functionality to OSPF to support multicast

Page 23: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

MOSPF

• Protocol Data Structures– Local Group Database

• Local group DB: [group, subnet]• Create group-member-LSAs (Link State Advertisement)

– Forwarding Cache• [Upstream node, Downstream Interfaces (interface:hops)]

– Multicasting routing capability– Inter-area Multicast forwarder

Page 24: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

MOSPF

• Protocol– Joining a multicast group

• IGMP query• IGMP response• Create an entry in local group database• Send group membership LSA• Create an entry in local group database

Create a forwarding cache entry

– Leaving the multicasting group

Page 25: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

PIM(Protocol Independent Multicast)

• IETF IDMR WG 에서 현재 개발중• Motivation:

– DVMRP good for dense group membership– Need shared/source-based tree flexibility– Independence from Unicast Routing

• PIM implementations do require the presence of some unicast routing protocol to provide routing table information and adapt to topology changes.

• Two modes : according to the density of group members in the Internet.– Dense Mode– Sparse Mode

Page 26: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

PIM-DM(2)

• If a router receives a multicast packet from source S to group G, it first checks in the standard unicast routing table that the incoming interface is the one that is used for sending unicast packets toward S. If this is not the case, it drops the packets and sends back a “prune (S,G)” message on the incoming interface.

• The router will then forward a copy of the message on all the interfaces for which it has not already received a “prune(S,G)”message. If there are no such interfaces, i.e., if all the interfaces have been pruned, it drops the packet and sends back a “prune(S,G)” message on the incoming interface.

Page 27: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

PIM-DM(3)

• Multiple Routers on a Broadcast Network– S sends a multicast

message; M is a group member.

– C sends a prune back, which would kill the group for M as well.

– Solution: The prune messages are always sent to the “all-routers” multicast address (224.0.0.2).

– Upon seeing the prune message, B would rejoin the group.

Page 28: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

PIM-DM(4)

• Multipath on Broadcast Networks– S sends a multicast packe

t to group M on E1.– Both A-C and B-D routers p

ick it up and transmit on E2 (multiple copies).

– Solution: both C and D will see each other’s packet, and note that the group route points to the interface where it was received.

– Extension to IGMP to resolve (use shortest path)

Page 29: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

PIM-DM(5)

• DVMRP 와 다른점– PIM-DM 은 토폴로지의 변화를 반영하기 위해

유니캐스트 라우팅 프로토콜의 존재를 가정한다 .– Child interface 를 계산하지 않고 Explicit prune me

ssage 가 downstream link 로 부터 오기 전까지는 단순히 멀티캐스트 트래픽을 포워드 한다 .

• PIM-DM control message 의 처리와 data packet forwarding 과정은 PIM-SM 과 통합되어 있어서 하나의 라우터가 다른 그룹에 대해서는 다른 mode 로 작동할 수 있다 .

Page 30: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

PIM-SM

• Dense Mode 와 다른점– 라우터가 명시적으로 Join 메시지를

보내야 한다 . – Rendezvous Point 를 이용한다 .

• Host joins a group

Page 31: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

PIM-SM

• Source send to a multicast group

Page 32: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

PIM-SM

• RP-Shared Tree or Shortest Path Tree(SPT)

Page 33: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

WGs in IETF Routing Area

Unicast Routing

Multicast Routing

Mobile Environment

Switching

Multicast Extensions to OSPF (MOSPF)

IS-IS for IP Internets (ISIS)

Inter-Domain Routing (IDR)

Open Shortest Path First IGP (OSPF)

UniDirectional Link Routing (UDLR)

Inter-Domain Multicast Routing (IDMR)

Routing Information Protocol (RIP)

Protocol Independent Multicast (PIM)

Border Gateway Multicast Protocol (BGMP)

Multicast Source Discovery Protocol (MSDP)

IP Routing for Wireless/Mobile Hosts (MobileIP)

Mobile Ad-hoc Networks (MANET)

Data Link Switching MIB (DLSwMIB)

General Switch Management Protocol (GSMP)

Multiprotocol Label Switching (MPLS)

SNA DLC Services MIB (SNADLC)

Virtual Router Redundancy Protocol (VRRP)

Page 34: IP MULTICAST IP Address => Host Identifier THE ABILITY TO DELIVER AN IP PACKET( DATAGRAM ) TO MULTIPLE DESTINATION ( HOST GROUP )

Routing Protocols Summary

Intra-AS

Inter-AS

DVMRP

MOSPF

PIM-DM

PIM-SM

CBT

RIP

OSPF

BGP BGMP

Unicast Multicast

ISIS

IDRP

UDLR

MSDP

Long-Term Approach

Short-Term ApproachSSM

SGM