Kurt Windisch -- University of OregonIETF GATED -- December 7, 1997 1 PIM Dense Mode GateD...
-
Upload
ariel-wright -
Category
Documents
-
view
215 -
download
0
Transcript of Kurt Windisch -- University of OregonIETF GATED -- December 7, 1997 1 PIM Dense Mode GateD...
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/