IPv 6 multicast Stig Venaas venaasuninett no 1

  • Slides: 20
Download presentation
IPv 6 multicast Stig Venaas venaas@uninett. no 1

IPv 6 multicast Stig Venaas venaas@uninett. no 1

Overview n n n IPv 6 multicast addresses and scopes IPv 6 multicast protocols

Overview n n n IPv 6 multicast addresses and scopes IPv 6 multicast protocols Interdomain IPv 6 multicast Current deployment IPv 6 multicast applications 2

IPv 6 multicast addresses 1111 Flags Scope Group ID 8 bits 4 bits 112

IPv 6 multicast addresses 1111 Flags Scope Group ID 8 bits 4 bits 112 bits Scopes: 0 Reserved 1 Interface local 2 Link local 3 Reserved 4 Admin local 5 Site local IPv 6 multicast addresses are in the range FF 00: : /8 All IPv 6 hosts need to support multicast Used for neighbour discovery (like IPv 4 ARP) Well defined scoping architecture Risk of addressing conflicts much less than with IPv 4 6 -7 Unassigned (admin) Flag bits: 0 R P T 8 Organization local T = 0 – permanent IANA assigned address 9 -D Unassigned (admin) T = 1 – transient address (not IANA) E Global F Reserved 3 P = 1 – derived from unicast prefix (RFC 3306) R = 1 – embedded-RP address (RFC 3956)

Unicast prefix based addresses 1111 Flags Scope Resrvd Plen Prefix Group ID 8 bits

Unicast prefix based addresses 1111 Flags Scope Resrvd Plen Prefix Group ID 8 bits 4 bits 8 bits 64 bits 32 bits n n n n n Unicast prefix based addresses are defined in RFC 3306 Flags are set to 3 (P=T=1) Reserved must be 0 Plen is the length of the prefix used Prefix is a unicast prefix The group ID consists of any 32 bits In this way every site will have many multicast addresses unique to them One can also use /64 prefixes to get addresses unique to a link Example: u u Site with unicast prefix 2001: db 8: 1: : /48 Example multicast address ff 3 e: 30: 2001: db 8: 1: 0: dead: beef 4

Embedded-RP addresses 1111 Flgs 8 bits 4 n n n n n Scp Res

Embedded-RP addresses 1111 Flgs 8 bits 4 n n n n n Scp Res 4 4 RIID Plen Prefix Group ID 4 8 64 bits 32 bits Embedded-RP addresses are defined in RFC 3956 Variation of the unicast prefix based addresses Flags are set to 7 (R=P=T=1). R is a new flag for embedded-RP Reserved must be 0 RIID contains the last 4 bits of the RP address Plen is the length of the prefix used Prefix is a unicast prefix The group ID consists of any 32 bits One may use /64 prefixes as well to have an RP per link Example: u u Site with unicast prefix 2001: db 8: 1: : /48 can pick RP address 2001: db 8: 1: : a Example multicast address ff 7 e: 0 a 30: 2001: db 8: 1: 0: dead: beef 5

SSM addresses 1111 Flags Scope Resrvd Plen Prefix Group ID 8 bits 4 bits

SSM addresses 1111 Flags Scope Resrvd Plen Prefix Group ID 8 bits 4 bits 8 bits 64 bits 32 bits n n n n SSM addresses are special subset of unicast prefix based addresses Flags are set to 3 (P=T=1) Reserved must be 0 Plen is set to 0 Prefix is set to all zeroes The group ID consists of any 32 bits This results in ff 3 x: : /96 for SSM (where x is any scope) 1111 3 Scope 0 0 0 Group ID 8 bits 4 bits 8 bits 64 bits 32 bits 6

IPv 6 multicast protocols n MLD is used for hosts to report to routers

IPv 6 multicast protocols n MLD is used for hosts to report to routers what they want to receive u n MLDv 1 supports joining groups (ASM) u n n n Just like it is for IPv 4 Multiprotocol BGP used for exchanging routes for RPF u n Like IGMPv 3 All IPv 6 systems (should) support MLDv 1 MLDv 2 supported by Linux and Windows Vista PIM-SM is the most widely used routing protocol u n Like IGMPv 2 MLDv 2 supports joining groups and sources (SSM) u n Mostly similar to IGMP for IPv 4 Like for IPv 4 One big difference is that there is no MSDP 7

PIM-SM and Rendezvous Points n n n n n Interdomain multicast routing is usually

PIM-SM and Rendezvous Points n n n n n Interdomain multicast routing is usually done with a protocol called PIMSM PIM-SM requires an RP for source discovery All routers must use the same RP and somehow know its address Initially packets from a source will be sent to the RP When a host joins a group, join messages are sent hop by hop towards the RP The RP serves as a meeting place between sources and receivers This works well within a site or a single administrative domain But we don’t want one single central common RP for all multicast on the Internet So we want something that can work across administrative domains 8

IPv 6, MSDP and Embedded-RP n n MSDP doesn’t scale with large scale deployment

IPv 6, MSDP and Embedded-RP n n MSDP doesn’t scale with large scale deployment since source information is flooded to all the RPs Hence the IETF decided not to have MSDP for IPv 6 For IPv 6 there is something called Embedded-RP (RFC 3956) It defines a specific way to create multicast group addresses where the RP address is encoded into the group address u An embedded-RP address starts with ff 70: : /12 u Flags value of 7 means embedded-RP E. g. ff 7 e: 140: 2001: 700: f 000: 1234: beac has the RP 2001: 700: f 000: 100: : 1 u n n n Only a new way to map from group to RP. The main point is that it allows for a large number of RPs that can be practically anywhere in the Internet. They do not need to be preconfigured in the routers, routers automatically use the right RP Someone hosting or initiating a multicast session can pick a group address with their RP address encoded inside Everyone joining or sending to their session will then use their RP 9

IPv 4 – IPv 6 comparison n n The main philosophy behind MSDP is

IPv 4 – IPv 6 comparison n n The main philosophy behind MSDP is to avoid one single common RP in the Internet, and to avoid relying on a 3 rd party’s RP 10 With Embedded-RP we solve both of these u Provided one of the parties in a session picks a group address specifying their own RP A technical difference is that with MSDP (and also SSM), there is only (S, G)-joins between domains With embedded-RP, an RP is shared by multiple domains, so there will also be (*, G)-joins between domains

What about SSM? n n n SSM (Source-Specific Multicast) available for both IPv 4

What about SSM? n n n SSM (Source-Specific Multicast) available for both IPv 4 and IPv 6 u There are no differences here Some believe only SSM is needed for interdomain multicast SSM simplifies multicast signaling in the network u n But very difficult for multi-party applications u n No need for RPs, PIM register, switching between shared and sourcespecific trees… E. g. conferencing where everyone is a source and everyone needs to know the IP addresses of the others SSM is supported by very few applications and systems u u u Edge routers and hosts need to support MLDv 2 Hosts need to support RFC 3678, which is the API for specifying source filters Applications need to be changed to support this API 11

Deployment of IPv 6 multicast n n The European IST project 6 NET had

Deployment of IPv 6 multicast n n The European IST project 6 NET had a European backbone and deployed native IPv 6 multicast in 2003, and came up with the idea of Embedded-RP IPv 6 multicast has been deployed natively in Abilene, GEANT, NORDUnet, TEIN 2, as well as in many NRNs (incl. CERNET 2 and UNINETT) u u u n n These also have native IPv 6 multicast peerings Abilene has peerings with GEANT, Trans. PAC, and networks in Latin America GEANT has peerings with about 10 NRNs For multicast BGP peerings, see http: //drift. uninett. no/ipv 6/bgp/mcast/bgp-pagecomplete. html There is also a world-wide network called M 6 Bone. This was started by RENATER 6 years ago u Anyone can join this to experiment with IPv 6 multicast, see http: //www. m 6 bone. net/ 12

Deployment of IPv 6 multicast n n n IPv 6 multicast with a single

Deployment of IPv 6 multicast n n n IPv 6 multicast with a single central RP has been working in the M 6 Bone for 7 years. Still in use, but as we’ve discussed, it’s not a scalable solution Embedded-RP and SSM are being actively used in GEANT, Abilene and many other networks Easy to deploy, most routers need no configuration. SSM and embedded-RP works with no configuration, although at least one vendor requires you to enable embedded-RP u E. g. GEANT/Abilene routers need no RP configured RP router can be close to the edge, e. g. in a university, that need to be configured ACM Sigcomm 2007 is taking place in Kyoto this week, and they are doing IPv 6 multicast streaming using embedded-RP 13

IPv 6 multicast applications n Mbone tools – vic/rat etc u u n Video.

IPv 6 multicast applications n Mbone tools – vic/rat etc u u n Video. LAN (vlc) – http: //www. videolan. org/ u n Streaming DV over RTP over IPv 4/IPv 6 Mad flute – http: //www. atm. tut. fi/mad/ u n Video streaming, also IPv 6 multicast. Server and client DVTS – http: //www. sfc. wide. ad. jp/DVTS/ u n IPv 6 multicast conferencing applications http: //www-mice. cs. ucl. ac. uk/multimedia/software/ Streaming of files using multicast (IPv 4/IPv 6 ASM/SSM) Monitoring/debugging tools u u Dbeacon, http: //dbeacon. innerghost. net/ « An alternative to NLANR beacon ssmping/asmping – http: //www. venaas. no/multicast/ssmping/ « ping-like tool for testing IPv 6/IPv 4 ssm/asm connectivity 14

ssmping n n n A tool for testing multicast connectivity Behavior is a bit

ssmping n n n A tool for testing multicast connectivity Behavior is a bit like normal ping A server must run ssmpingd A client can ping a server by sending unicast ssmping query Server replies with both unicast and multicast ssmping replies In this way a client can check that it receives SSM from the server u n n And also parameters like delay, number of router hops etc. Note that there is also a similar tool called asmping for checking ASM connectivity See http: //www. venaas. no/multicast/ssmping/ 15

Example IPv 4 ssmping output (v 6 supported) -bash-3. 00$ ssmping -c 5 -4

Example IPv 4 ssmping output (v 6 supported) -bash-3. 00$ ssmping -c 5 -4 ssmping. uninett. no ssmping joined (S, G) = (158. 38. 62. 21, 232. 43. 211. 234) pinging S from 129. 241. 210. 1 unicast from 158. 38. 62. 21, seq=0 dist=15 time=72. 874 ms unicast from 158. 38. 62. 21, seq=1 dist=15 time=72. 663 ms multicast from 158. 38. 62. 21, seq=1 dist=9 time=76. 502 ms unicast from 158. 38. 62. 21, seq=2 dist=15 time=72. 056 ms multicast from 158. 38. 62. 21, seq=2 dist=9 time=73. 556 ms unicast from 158. 38. 62. 21, seq=3 dist=15 time=72. 232 ms multicast from 158. 38. 62. 21, seq=3 dist=9 time=73. 579 ms unicast from 158. 38. 62. 21, seq=4 dist=15 time=72. 513 ms multicast from 158. 38. 62. 21, seq=4 dist=9 time=73. 256 ms --- 158. 38. 62. 21 ssmping statistics --5 packets transmitted, time 5004 ms unicast: 5 packets received, 0% packet loss rtt min/avg/max/std-dev = 72. 056/72. 467/72. 874/0. 415 ms multicast: 4 packets received, 20% packet loss 0% loss since first multicast packet received (after 1077 ms) rtt min/avg/max/std-dev = 73. 256/74. 223/76. 502/1. 335 ms -bash-3. 00$ 16

dbeacon n dbeacon is a new multicast beacon u http: //fivebits. net/~hugo/dbeacon/ « u

dbeacon n dbeacon is a new multicast beacon u http: //fivebits. net/~hugo/dbeacon/ « u u u Alternative to NLANR beacon IPv 4 and IPv 6, ASM and SSM Written in C, light, and easy to install No central server, ASM used for signalling Any beacon client can be configured to provide a matrix Beacon options, e. g. « u Sources also at http: //mirror. aarnet. edu. au/pub/dbeacon/ dbeacon –b ff 7 e: a 30: 2001: db 8: 10: : beac –S –a admin@email With Apache: « « Script. Alias /matrix/ /usr/share/dbeaconmatrix/matrix. pl Edit script for path to matrix $dumpfile = '/var/lib/dbeacon/dump. xml'; 17

Example dbeacon matrix 18

Example dbeacon matrix 18

IPv 4 - IPv 6 multicast gateway 19 n n In IPv 4 the

IPv 4 - IPv 6 multicast gateway 19 n n In IPv 4 the gateway is a multicast host using IGMP In IPv 6 the gateway is a PIM router and RP for the /96 prefix

vic/rat session on M 6 Bone/6 NET with gateway 20

vic/rat session on M 6 Bone/6 NET with gateway 20