1 / 24

DVMRP

DVMRP. Distance Vector Multicast Routing Protocol. Jerad Bates UMBC - Fall 2006. DVMRP Basics. An interior gateway protocol Functions within an Autonomous System (AS) but not between ASs Can only route multicast datagrams

sprince
Download Presentation

DVMRP

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. DVMRP Distance Vector Multicast Routing Protocol Jerad Bates UMBC - Fall 2006

  2. DVMRP Basics • An interior gateway protocol • Functions within an Autonomous System (AS) but not between ASs • Can only route multicast datagrams • Routers need additional protocol(s) for non-multicast routing, but DVMRP could be extended to unicast • Basis for the internet’s multicast backbone (MBONE)

  3. How DVMRP Fits Into Multicasting • IGMP - used for discovery of hosts in multicast groups, messages exchanged between neighbors • DVMRP - routes multicast datagrams within an AS • MBGP (Multicast BGP) - routes multicast datagrams between ASs

  4. DVMRP Tree Spanning and Pruning • Uses Reverse Path Flooding to forward multicast data • Uses Pruning to reduce amount of traffic needed to be sent • Pruning occurs when routers receive multicast data for which they have no paths that subscribe to that group • Routers then send back pruning packets to tell the sending router not to send it packets for that multicast group

  5. DVMRP Packet • Encapsulated in IP Datagrams (IP protocol number 2, same as IGMP) • IGMP Packet type of 0x13

  6. DVMRP Packet Structure • Type: Indicates packet is a DVMRP packet, set to 0x13 • Code: designates the type of DVMRP packet • Checksum: 1’s compliment of the 1’s complement of the entire packet (with checksum set to 0) • Minor & Major Versions: Set to 0xFF and 3 respectively for current version of DVMRP

  7. DVMRP Codes • 7 Types of Codes • 1 – Probe: Neighbor discovery • 2 – Report: Route exchange • 5 – Ask Neighbors 2: Request neighbor list • 6 – Neighbors 2: Respond with neighbor list • 7 – Prune: Pruning delivery trees • 8 – Graft: Grafting delivery trees • 9 – Graft Ack: Acknowledge graft messages Note: 3 & 4 are obsolete versions of 5 & 6

  8. DVMRP Probe • Sent out on every interface • 3 Purposes • Finds neighbors • Alerts neighbors of routers presence and capabilities • Helps detect neighbor loss, sent ever 10sec, timeout if not received in 35 • Contains a list of Neighbors, allows neighbors to know they have been detected

  9. DVMRP Probe Packet Generation ID: Used to identify changes in router state

  10. DVMRP Report • Used to find neighbor to route traffic back to sender through • Uses hop count as the metric • Contains a list of source networks and metrics

  11. DVMRP Report Packet Sources are paired with masks, can have more then one source paired with a mask. Lists all sources a router has contact with and the cost of that route.

  12. DVMRP Ask Neighbors 2 • Unicast message sent to a specific neighboring router • Asks neighbor to respond with a list of its neighbors

  13. DVMRP Ask Neighbors 2 Packet

  14. DVMRP Neighbors 2 • Response to Ask Neighbors 2 message • Contains a list of the router’s interfaces and addresses of routers attached to those interfaces

  15. DVMRP Neighbors 2 Packet

  16. DVMRP Neighbors 2 Packet (continued) • Local Addresses exist for each interface on the router • Following that are characteristics of that interface • The Number X fields contain all the routers that are neighbors of that port

  17. DVMRP Prune • Sent from routers receiving multicast traffic for which they have no downstream group members • “Prunes” the tree created by DVMRP • Stops needless data from being sent

  18. DVMRP Prune Packet Source Host IP Address: Address of device that sent the prune request Group Address: Multicast group address that is requested to be pruned Prune Lifetime: Length of time, in seconds (up to ~2hrs), to keep branch pruned Source Network Mask: The netmask of the route the pruning applies to

  19. DVMRP Graft • Used after a branch has been pruned back • Sent upstream by a router that has a host that joins a multicast group • Goes from router to router until a router active on the multicast group is reached • Sent for the following cases • A new host member joins a group • A new dependent router joins a pruned branch • A dependent router restarts on a pruned branch • If a Graft Ack is not received before the timeout

  20. DVMRP Graft Packet Source Host IP Address: Address of router or network to graft Group Address: Multicast group address that is requested to be grafted Source Network Mask: The netmask of the route the grafting applies to

  21. DVMRP Graft Ack • Used to acknowledge receipt of Graft message • Allows sending downstream router to know upstream router has received and processed its request • If not received within 5 sec. Graft message sent again

  22. DVMRP Graft Ack Packet Source Host IP Address: Address of router or network that was received in request Group Address: Multicast group address that was received in request Source Network Mask: The netmask of the route the Graft Ack covers

  23. DVMRP Issues • DVMRP is based on RIP and carries over many of RIP’s issues • Hop count used as metric • Scalability issues • Performs periodic flooding • Maintains its own routing table • Older versions lack pruning • Even though it is a main part of MBONE, MBONE is being phased out

  24. Sources • Original RFC: RFC 1075 http://tools.ietf.org/html/rfc1075 • Latest Draft: http://www.ietf.org/internet-drafts/draft-ietf-idmr-dvmrp-v3-11.txt • http://www.ncne.org/documentation/faq/mcast_eng_faq.html

More Related