1 / 29

IPv6 Multicast

IPv6 Multicast. 6DEPLOY. IPv6 Deployment and Support. Intro. Multicast is inherent to the IPv6 protocol No broadcasts Multicast used instead But some parts need to be configured for building the multicast trees for topology information (routing). Agenda. Multicast addressing MLD & MLDv2

slade
Download Presentation

IPv6 Multicast

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. IPv6 Multicast 6DEPLOY. IPv6 Deployment and Support

  2. Intro • Multicast is inherent to the IPv6 protocol • No broadcasts • Multicast used instead • But some parts need to be configured • for building the multicast trees • for topology information (routing)

  3. Agenda • Multicast addressing • MLD & MLDv2 • PIM SM/SSM • Interdomain multicast

  4. 8 bits 4 bits 4 bits 112 bits 1111 1111 flags scope group ID F F Multicast addressing (1) • Multicast addresses format: (RFC 3513) • 8 high order bits set to 1  Addresses derived from FF00::/8 prefix • flagfield(4 bits) : 0RPT values • T = 0 for permanent addresses (Defined by IANA) • T = 1 for transient addresses • Bits P and R discussed later • scope field  Makes it possible to limit the scope of the multicasting • 0 - Reserved 4 - Admin-local • 1 – Node-local 5 - Site-local • 2 – Link-local 8 - Organization-local • 3 – Subnet-local E - Global (Internet)

  5. Multicast addressing (2) • Scopes must be configured on routers! • Examples of IANA allocated addresses • Flag bits T=P=R=0 • Flag = 0 • Group ID 101 NTP servers • FF01:0:0:0:0:0:0:101 : All the NTP servers on the sender’s host • FF02:0:0:0:0:0:0:101: All the NTP servers on the sender’s link • FF05:0:0:0:0:0:0:101: All the NTP servers on the sender’s site • FF0E:0:0:0:0:0:0:101: All the NTP servers on the Internet

  6. Well Known Multicast Addresses RFC 2375 • “02” means that this is a permanent address (t = 0) and has link scope (2) • http://www.iana.org/assignments/ipv6-multicast-addresses

  7. Multicast Mapping over Ethernet (RFC 2464) Low order 32 bits IPv6 Multicast Address FF02:0000:0000:0000:0000:0001:FF17:FC0F Corresponding Ethernet Address 33 33 FF 17 FC 0F IPv6 Ethernet FrameMulticast Prefix Requires 8th bit of MAC address to be set to 1 For IPv6 : @MAC = 33-33-xx-yy-zz-kk • xx-yy-zz-kk are 32 lower bits of the IPv6 address Example: • IPv6@ = FF3E:40:2001:660:3007:123:1234:5678 • MAC@ = 33-33-12-34-56-78

  8. Solicited Node Multicast Address Example • Multicast address built from unicast address • Concatenation of • FF02::1:FF00:0/104 • 24 low order bits of the unicast address • Nodes build their own IPv6 solicited node multicast address • Nodes that know the IPv6 address of a host but not its MAC address can use the solicited node multicast address • NDP protocol (Neighbor Discovery Protocol) • Protocol for DAD management • Avoids sending MAC broadcasts (FF-FF-FF-FF-FF-FF) 64 Bits Interface ID 64 Bits Network ID Link-Local FE80 0000 0000 0000 0200 0CFF FE3A 8B18 24 bits Solicited Node Multicast FF02 0000 0000 0000 0000 0001 FF 3A8B18 32 bits 33 33 FF 3A 8B 18 Ethernet Multicast

  9. IPv6 Addresses – Unicast and Multicast Examples cat6500-1>sh ipv6 intvlan 200 Vlan200 is up, line protocol is up IPv6 is enabled, link-local address is FE80::2D0:D3FF:FE81:9000 Description: --- To cat6500-2 --- Global unicastaddress(es): 2001:DB8:12::1, subnet is 2001:DB8:12::/64 Joined group address(es): FF02::1 FF02::2 FF02::5 FF02::D FF02::16 FF02::1:FF00:1 FF02::1:FF81:9000 Link-Local Global All nodes All routers OSPF Routers All PIM Routers All MLDv2 capable Routers Solicited node multicast (for global) Solicited node multicast (for link-local)

  10. 11111111 flags reserved Prefix Length Group ID scope Network prefix 8 bits 4 4 8 bits 8 64 bits 32 bits Multicast addresses derived from unicast prefixes • Described in RFC 3306 • Flag : 0RPT • Flags : 0RPT • P=0  Addressnotbasedontheunicastprefix • P=1  Addressbasedontheunicastprefix • IfP=1  T=1  FF30::/12 prefix • (T=1 becausenotallocatedbyIANA) • Reserved : 0 • Example: prefix2001:660::/32 (RENATER) addressFF3E:20:2001:660:0:0:1234:abcd

  11. SSM addresses • Are also RFC3306 addresses • SSM addresses range: FF3X::/32 • Only addresses in FF3X::/96 should be used now. These are RFC3306 addresses with: • P = 1 • Plen = 0 • Prefix = 0 • Example: • FF3x::1234:abcd /96 • 1234:abcd being the Group ID

  12. Multicast addresses allocation • « Manual » choice of multicast address and port Dynamic • Session Announcement Protocol, (SAP), ID • SDR implements SAP (not scalable for a global scope) • MADCAP, RFC 2730 • Multicast Address Dynamic Client Allocation Protocol (too much complex, very few implementations and no deployment) • GLOP, RFC 2770 • Useless as we have RFC 3306 • Multicast addresses derived from unicast prefixes (RFC 3306) • Any host can derive a multicast address from the network prefix where it is connected • Makes allocation easier • How to assign addresses to end user remains a problem

  13. Agenda • Multicast addressing • MLD & MLDv2 • PIM SM/SSM • Interdomain multicast

  14. Multicast Listener Discovery • MLD manages multicast interaction • Between listeners and their routers (Joins, Leaves) • MLD is equivalent to IGMP in IPv4 • MLD is a sub-protocol of ICMPv6 • Switches have MLD snooping • MLDv1 (RFC 2710) • MLD <-> IGMPv2 <-> ASM only • MLDv2 (RFC 3810) • MLDv2 <-> IGMPv3 <-> SSM + AS Router Host Multicast Control via MLD messages MLD snooping Switch Receivers

  15. MLD Versions • There are two versions of MLD that map to IGMP versions • MLDv1 allows joining to a particular group (any available source) (*, G) • MLDv2 allows joining to a particular group and a specific source (S, G) • MLDv2 backwards compatible with MLDv1 (supports 131 and 132 message types)

  16. MLD Packet Hop-by-hop extensionOption = Router alert Next header = 58 (ICMPv6) MLD message Message type: ICMPv6 IPv6 Headernext header = 0 (Hop-by-hop) • MLD is a sub-protocol of ICMPv6 • MLDuses link local source addresses • Uses “Router Alert” in extension header (RFC2711) • Forces routers to look at message

  17. MLDv1 Message • Type : Messages types • General Query and Multicast-Address-Specific Query (130) • Multicast Listener Report (131) • Multicast Listener Done (132) • Code : Set to 0 by sender and ignored then • Checksum : for the complete packet (headers+MLD message) • Maximum Response Delay : For query messages, time by which hosts must respond • Reserved : Not used: set to 0 and ignored then • Multicast Address: IPv6 multicast address or 0 according to message type

  18. MLDv1 Example Joining a Group (REPORT) I wish to receive ff38::276 I wish to receive ff38::276 A B 1 2 MLD Report MLD Report fe80::250:8bff:fE55:78de fe80::209:5bff:fe08:a674 fe80::207:85ff:fe80:692 (S, G) 3 Source for multicast ff38::276 Hosts send MLD report to alert router they wish to join a multicast group Router then joins the tree to the source or RP

  19. MLDv1 Example Leaving a Group (Query) I wish to leave ff38::276 I am watching ff38::276 A B 1 3 MLD Done (A) MLD Report (B) fe80::250:8bff:fE55:78de fe80::209:5bff:fe08:a674 fe80::207:85ff:fe80:692 Query (C) C 2

  20. MLDv2 (RFC 3810) • Management of group & sources • INCLUDE : to receive packets from sources specified in the MLDv2 message • EXCLUDE : to receive packets from all sources except the ones specified in the MLDv2 message • 2 types of messages • Multicast listener query messages • Multicast listener report messages • Interoperable with MLDv1

  21. Further MLD Information • Leave/DONE • Last host leaves - Sends DONE (Type 132) • Router will respond with Group-Specific Query (Type 130) • Router will use the Last member query response interval (Default=1 sec) for each query • Query is sent twice and if no reports occur then entry is removed (2 seconds) • General Query (Type 130) • Sent to learn of listeners on the attached link • Sets the Multicast Address Field to zero • Sent every 125 seconds (configurable)

  22. Agenda • Multicast addressing • MLD & MLDv2 • PIM SM/SSM • Interdomain multicast

  23. PIM SM/SSM • Protocol Independant Multicast • No basic difference with PIM for IPv4 • Except PIM messages are sent with link-local IPv6 address • Except Embedded RP • Creates multicast trees between senders and receivers (distribution trees) • Not a routing protocol • Relies on other routing protocols (MBGP, static…)

  24. PrefixLength 11111111 flag res Group ID rpid scop Network prefix 8 bits 4 4 4 4 8 64 bits 32 bits Embedded-RP (RFC 3956) 2^32 groups per RP • Provides a static RP to multicast group mapping • Flag : 0RPT • R=1  Embedded-RP address • If R=1 P=1  T=1 • FF7x::/16 addresses • Res : 0 • Rpid : last 4 bits of the RP address (15 RPs per scope per prefix) • E.g. RP address 2001:660:3001:104::8 Multicast Group FF7E:0840:2001:660:3001:104:1234:abcd

  25. Agenda • Multicast addressing • MLD & MLDv2 • PIM SM/SSM • Interdomain multicast

  26. Interdomain multicast (1) • No problem for SSM. Source specific trees created from senders to receivers accross domains • ASM problem: was solved in the IPv4 world with MSDP (Multicast Source Discovery Protocol) MSDP RP RP ISP A ISP B

  27. Interdomain multicast (2) • No one wants MSDP for IPv6, not manageable/scalable • SSMIETF lobby • Some SSM applications already available • Embedded-RP – RFC 3956 • For each group, everyone uses the same RP • Embedded is a solution for group-to-RP mapping • Requires support in all PIM routers (that are part of the tree)

  28. IPv4 and IPv6Multicast Comparison

  29. IPv6 multicast RP RP RP RP

More Related