kurt windisch -- university of oregonietf gated -- december 7, 1997 1 pim dense mode gated...

Post on 02-Jan-2016

213 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 1

PIM Dense ModeGateD Implementation

Kurt WindischDave Meyer

Advanced Network Technology Center

University of Oregon

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 2

Outline

PIM-DM Overview GateD Implementation Issues Status

http://www.antc.uoregon.edu/GATED/

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 3

PIM-DM Overview

Key Features Uses existing unicast routing protocols Data-driven flood-and-prune strategy Efficient when membership is dense Builds optimal source-based trees Soft state

draft-ietf-idmr-pim-dm-06.txt, S. Deering, D. Estrin, D. Farinacci, V. Jacobson, D. Meyer, L. Wei

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 4

Broadcast and Prune

Broadcast and prune behavior Assume everyone wants the data A router broadcasts data until

downstream router says “I don’t want this data”

Send prune messages upstream to stop data flow

– Prune state must be maintained, even if not “on-tree”

Builds source based distribution trees

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 5

PIM-DM Overview

Reverse Path Forwarding (RPF)

Tree maintenance via Prune and Graft

State space: O(S x G)

sender

receiver

R 2

R 3

R 1

R 4

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 6

Reverse Path Forwarding (RPF)

RPF check: In order to forward a multicast datagram, a router checks if the packet is received on the interface it would use to forward a unicast packet back to the source If the RPF check succeeds, the router

forwards the packet If the RPF check fails, the packet silently

discarded

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 7

RPF In PIMDM

RPF builds spanning tree Dalal & Metcalfe, ACM

21(12), 1978 Fully distributed

Reverse Path Multicast: RPF + Prune on RPF

failure stops unnecessary traffic

in addition to breaking loops.

sender

receiver

prune

data

data

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 8

Prune

Prune for a given (S,G) send Prune

to upstream neighbor when outgoing interface list becomes empty

upstream receiver prunes the receiving interface if no other routers or members are receiving (S,G).

sender

receiver

R 2

R 3

R 1

R 4

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 9

Graft

Graft for given (S,G), send Graft

to upstream neighbor when the outgoing interface list becomes nonempty

upstream receiver adds receiving interface to outgoing interface list and begins forwarding (S,G)

sender

receiver

R 2

R 3

R 1

R 4

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 10

Multiaccess LAN

Delayed prune and join When a downstream

router on a LAN sends a Prune, other downstream routers must override with a Join if they are forwarding

Therefore, handling of prunes is delayed while all routers listen for and send Joins to cancel the Prune.

sender

receiver

R 2 R 3

R 1

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 11

Multiaccess LAN

Assert handles parallel paths from

a source to a LAN election of single forwarder routers send Assert if they

receive (S,G) data on an outgoing interface.

Assert message contain metric to source

all routers listen to determine winner

sender

receiver

R 2

R 3

R 1

R 4

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 12

Dense Mode Tradeoffs

Advantages Source trees fully distributed Optimal reverse paths/low delay

Disadvantages O(S x G) state requirement May carry (S,G) for every S in the internet (S,G) prune state even though not “on-

tree” Data driven forwarding state construction

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 13

Implementation Details

Compliant with PIM v2 specification Based on GateD PIM-Sparse

implementation by George Eddy (ISI)

Shared PIM code (SM/DM) Requires PIM Kernel Patches

yet to be standardized between PIM implementations

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 14

Implementation Details

Utilizes GateD v5 abstractions and protocols: Multicast Border Router (MBR) layer Multicast Routing Table (MRT) layer IGMP Unicast routing protocols

PIM-DM is a good fit for this architecture

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 15

MBR Interactions

Creating routing state sg_creation_recv: creates (S,G) entry

with forwarding state (implements flooding)

Outgoing interface changes sg_join_recv: PIM-DM sends (S,G)-Graft

upstream sg_prune_recv: PIM-DM sends (S,G)-

Prune upstream

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 16

MBR Interactions

RPF check wrongif_recv: PIM-DM sends (S,G)-

Assert or Prune on receiving interface Group membership changes

igmp_add igmp_delete

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 17

MRT Interactions

Multicast routing tables store PIM per (S,G) state incoming interface outgoing interfaces hooks to PIM-DM data structures for

prune and assert state

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 18

Unicast Interactions

PIM relies on underlying GateD unicast protocols RPF checks flashing unicast route changes

Tested successfully with: RIP v2 OSPF v2

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 19

Issues

Scalability State space PIM-DM per (S,G) timers:

O(S x G x n) timers that must be managed with fine granularity

Integration with PIM Sparse Mode Need for tunneling (GRE)

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 20

Status Report

Basic implementation and testing done To Do:

known bugs larger scale testing performance/scalability studies interoperability testing Further implementation: GRE tunneling,

IPv6, stand-alone PIM-DM Prune Refresh extensions

Kurt Windisch -- University of Oregon IETF GATED -- December 7, 1997 21

Final Remarks

Call for test sites

Further Info:http://www.antc.uoregon.edu/GATED/

top related