Multicast in OpenStack Tips

Preview:

Citation preview

1

Multicast in OpenStack

Vikram Hosakotevhosakot@cisco.com

2

What is multicast?

• One-to-many communication

• Driven by receivers

• A multicast “group” is identified by a multicast IP address

• Without multicast, sender must duplicate each packet

• Analogy: TV and radio broadcasting

3

What is multicast?

4

Components of multicast• Multicast addressing

Group addresses range from 224.0.0.0 to 239.255.255.255 (class D

addresses)

Mac addresses range from 01-00-5E-00-00-00 to 01-00-5E-7F-FF-FF

• Multicast group management (IGMP)

• Multicast routing and IGMP querying

• Multicast clients

5

Multicast use cases

• One-to-many corporate communications such as

Employee training videos

Quarterly company meetings

Company-wide corporate communications

Executive announcements

• Music/media streaming

• Video podcasts

• IPTV services

• One-to-many software updates/patches

6

Multicast use cases

• Social networking (Facebook, Twitter feeds, Instagram)

• Financial services, banks, stock exchange

• Government/Federal agencies

• RTP (Real Time Protocol) applications

7

Multicast in OpenStack

• No multicast available out-of-the-box

• Open vSwitch 2.5 supports IGMP snooping

• Linux Bridge 2.4 supports IGMP snopping

• Neutron router (L3-Agent) does not support multicast

routing, PIM and querying

• No CLI or API to configure multicast

• Multicast cannot be configured in Horizon

• Anti-spoofing rules and security groups drop multicast

packets

8

How to do Multicast in OpenStack?

• Enable IGMP snooping in OVS/Linux bridge

• Add rules to allow multicast UDP port in security groups

• Disable neutron port-security for ports in multicast path

• Use neutron’s --allowed-address-pairs attribute

and allow multicast IP and MAC addresses

• SR-IOV ports may also be used

9

How to do Multicast in OpenStack?

Three recommendations:

1. Use provider networks without neutron router (L3-agent)

and do multicast routing on upstream L3 devices connected

to TOR outside OpenStack

2. Use Cisco’s ASR1k plugin for neutron instead of L3-agent

3. Use Cisco’s ACI and APIC driver for neutron

10

Provider networks

11

ASR1k plugin for neutron

12

ACI and APIC driver for neutron

13

UCSM multicast policy

14

ACI/APIC multicast policy

15

Multicast for media applications

• Cisco’s video conferencing apps – Telepresence, Webex,

Jabber

• Cisco’s video and collaborations apps – Virtualized Video

Processing (V2P), Videoscape AnyRes, IPTV devices, video

encoders and video surveillance

• VLC player http://www.videolan.org/projects/multicat.html

16

Multicast limitations

• IGMP snooping degrades performance of layer-2 switch

• High bandwidth multicast traffic degrades unicast routing

• Needs plugin (ASR1k, APIC) integration with neutron

• Best-effort and out-of-sequence delivery (UDP is unreliable)

• Lack of TCP windowing results in network congestion

• Duplicate packets and occasional loops when unicast routing

is broken

17

Multicast testing tools

• Iperf - https://iperf.fr

• Nuttcp - http://www.nuttcp.net

• OpenStack VMTP - https://github.com/openstack/vmtp

• OpenStack Kloudbuster - https://github.com/openstack/

kloudbuster

18

Multicast talk in Cisco Live Las Vegas 2016

http://www.slideshare.net/Vikram_Hosakote/multicast-in-openstack

19

Q & A

Recommended