Multicasting Short recap of the basics No single link should - - PowerPoint PPT Presentation

multicasting short recap of the basics
SMART_READER_LITE
LIVE PREVIEW

Multicasting Short recap of the basics No single link should - - PowerPoint PPT Presentation

Multicasting Short recap of the basics No single link should contain multiple copies of H R same packet. R R H R H Multicast R packets H R H Extra packets with replicated unicast Extra packet No unwanted with broadcast


slide-1
SLIDE 1

Multicasting

slide-2
SLIDE 2

Short recap of the basics

R H H R R R R R H H H No single link should contain multiple copies of same packet. No unwanted packets should be received.

Multicast packets Extra packets with replicated unicast Extra packet with broadcast

slide-3
SLIDE 3

Near-term vs Long-term

slide-4
SLIDE 4

The Standard IP Multicast Model

1. A source can send multicast packets at any time, with no need to register or to schedule transmission. 2. Based on UDP. 3. Sources need only to know a multicast address and not who is in the group. 4. Sources need not be a part of the group itself. 5. Arbitrary number of sources. 6. Members can join or leave a multicast group at will. 7. No synchronization og registration with a centralized management group. Model does not discuss routing, security, QoS, or address allocation.

slide-5
SLIDE 5

MBone

  • A virtual network on top of IP
  • Connectivity over IP-encapsulated tunnels.
  • Reverse-Path Forwarding Tree
  • DVMRP
slide-6
SLIDE 6

Distance vector multicast routing protocol (DVMRP)

Each node would have its own routing table. Loop avoidance with reverse shortest path tree. Created using flooding and later also pruning. Rooted at the source

(Illustration of a regular DVRP table)

slide-7
SLIDE 7

Flooding

Multicast routers Other routers Hosts

slide-8
SLIDE 8

Flooding

slide-9
SLIDE 9

Flooding

slide-10
SLIDE 10

Flooding

slide-11
SLIDE 11

Flooding

slide-12
SLIDE 12

Flooding

slide-13
SLIDE 13

Reverse-Path Forwarding

C Destination interface A

  • B

1 C 2 B B A 2 1 4

(Note: This is a simplified routing table.)

slide-14
SLIDE 14

Reverse-Path Forwarding

C Destination interface A

  • B

1 C 2 B B A 2 1 4

(Note: This is a simplified routing table.)

slide-15
SLIDE 15

Reverse-Path Forwarding

C Destination interface A

  • B

1 C 4 B B A 2 1 4

(Note: This is a simplified routing table.)

slide-16
SLIDE 16

Reverse-Path Forwarding

C Destination interface A

  • B

1 C 4 B A 2 1 4 Not the same interface, so it won’t forward the message.

(Note: This is a simplified routing table.)

slide-17
SLIDE 17

More Reverse-path forwarding

C B A

slide-18
SLIDE 18

More Reverse-path forwarding

C B A

slide-19
SLIDE 19

More Reverse-path forwarding

C B A

slide-20
SLIDE 20

More Reverse-path forwarding

C B RPF makes sure these links are not used for multicast

  • traffic. Done

through prune messages. A

slide-21
SLIDE 21

More Reverse-path forwarding

C B RPF makes sure these links are not used for multicast traffic A

slide-22
SLIDE 22

More Reverse-path forwarding

C B Sends prune message towards source if all interfaces except source has received prune message A

slide-23
SLIDE 23

Reaching the leaf node(s)

C B Checks to see if it knows of any group members in the subnet. A

slide-24
SLIDE 24

Reaching the leaf node(s)

C B If any member is a part of the group, the leaf router will forward the packet

  • n the subnet.

A

slide-25
SLIDE 25

Reaching the leaf node(s)

C B If there are no members in of the group in the subnet it will send back a prune message. A

slide-26
SLIDE 26

Pruning

C B It will be forwarded further back towards the source. A

slide-27
SLIDE 27

Pruning

C B This router will also send out a prune message as it has no

  • ther links than the one

towards source. A

slide-28
SLIDE 28

Pruning

C B Receives prune A

slide-29
SLIDE 29

Pruning

C B A

slide-30
SLIDE 30

Pruning

C B A Each router need to remember which interface is not a part of the tree.

slide-31
SLIDE 31

The reverse shortest path tree

C A

slide-32
SLIDE 32

Protocol Independent Multicast (PIM)

Uses whatever unicast routing table to perform RPF checks. Sparse mode: PIM-SM Dense mode: PIM-DM

slide-33
SLIDE 33

Dense mode

In short:

  • We flood the network and branches that has no

members are eliminated.

  • Does this regularly to create the reverse-path

forwarding tree.

  • This is how is finds new members.

Works best with high density of members. Lots of unnecessary packets if low density

slide-34
SLIDE 34
  • Works better for low density of members.
  • Explicit join messages.
  • A single core as a meeting place for sources and receivers.

Rendezvous Point (RP)

  • A group can only have a single RP.
  • Creates a Rendezvous-point tree
  • Protocol Independent Multicast (PIM-SM)

Sparse mode

slide-35
SLIDE 35

PIM Multicast trees

B A RP Needs an RP. This will be the root. Note that the RP does not have to be the source.

slide-36
SLIDE 36

PIM Multicast trees

B If B wants to join the group it sends a join message towards the RP. A RP

slide-37
SLIDE 37

PIM Multicast trees

B Gets forwarded to the RP. A RP

slide-38
SLIDE 38

PIM Multicast trees

B A RP But how does it know who is RP?

slide-39
SLIDE 39

PIM Multicast trees

B A RP As in DM the routers still needs to remember which interfaces is a part of the tree.

slide-40
SLIDE 40

PIM Multicast trees

B A RP This only tells RP that B is a receiver. So what about the sources?

slide-41
SLIDE 41

PIM Multicast trees

B A RP Source sends a unicast encapsulated multicast message to the RP.

slide-42
SLIDE 42

PIM Multicast trees

B A RP If the RP knows about this group it strips

  • ff the unicast

header and forwards the multicast message down the tree

slide-43
SLIDE 43

PIM Multicast trees

B A RP If RP doesn’t have forwarding state for the group it sends back a register-stop message.

slide-44
SLIDE 44

PIM Multicast trees

B A RP If RP doesn’t have forwarding state for the group it sends back a register-stop message.

slide-45
SLIDE 45

PIM Multicast trees

B A RP If RP doesn’t have forwarding state for the group it sends back a register-stop message.

slide-46
SLIDE 46

PIM Multicast trees

B A RP If RP doesn’t have forwarding state for the group it sends back a register-stop message.

slide-47
SLIDE 47

PIM Multicast trees

B A RP If RP doesn’t have forwarding state for the group it sends back a register-stop message.

slide-48
SLIDE 48

In short

Dense mode:

  • Best when high density of members
  • Broadcast-and-prune protocol
  • Source is always root
  • More distributed traffic.

Sparse mode:

  • Best when low density of members
  • Join protocol
  • Rendezvous Point (RP)
  • Single point of failure and lots of traffic
slide-49
SLIDE 49

Native multicast in MBone

slide-50
SLIDE 50

Issues with MBone

  • Scalability:

Flat networks: Must keep track of state information.

  • Manageability:
  • No central management. How to manage this?
  • Can’t configure better routes.
  • Interdomain policy management
slide-51
SLIDE 51

Intradomain Multicast

  • Emerge due to the need to provide scalable hierarchical, internet-wide

multicast.

  • Extension of the interdomain unicast route exchange protocol BGP to make

multicast routing hierarchical.

slide-52
SLIDE 52

Multicast with BGP

  • Hierarchical
  • Supports interdomain routing.
  • Simply a matter of choosing the best

External link.

  • MBGP
  • Something is still missing:
  • Doesn’t provide multicast tree construction

functions. What is the format of the join message? When should it be sent?

slide-53
SLIDE 53

MSDP

  • Uses PIM-SM
  • How to inform an RP in one

domain that there are sources In other domains.

  • (in practice) One RP per domain
  • MSDP works by having

representatives in each domain.

slide-54
SLIDE 54

MSDP operations

1. New source. Register with RP. 2. MSDP sends SA til connected peers. 3. Message flooding. 4. Group state-check within each domain. If state exist

  • > RP sends PIM join to source

5. If data is contained in the message, the RP will forward it on the multicast tree. 6. Step 3-5 will repeat until all MSDP peers have received the SA message and all group members are receiving data from the source.

slide-55
SLIDE 55

Long-term proposals

slide-56
SLIDE 56

Border Gateway Multicast Protocol (BGMP)

  • Bidirectional shared trees between domains using a single root.
  • BGMP needs to decide in which particular domain to root the shared tree.
  • Uses a strict address allocation scheme. Each domain should have specific

set of address. Solving dependency problems between domains.

  • GLOP and MASC

Example of dependency problems

slide-57
SLIDE 57

Root Address Multicast Architecture

A response to the complexity of MBGP/PIM-SM/MSDS and BGMP. The other ones misses security, billing , and management. A need for fundamental changes. Tries to avoid the complexity of core placement: Two primary protocols: Express Multicast and Single Multicast.

slide-58
SLIDE 58

Commodity Internet

  • Measuring success.
  • At the time of publishment studies had only dealt with MBone.
  • Bring MBone to the new infrastructure.

Solution: make the MBone its own AS

slide-59
SLIDE 59

Internet2 deployment

  • Multicast “the right way”
  • Internet2 Multicast Working Group has set some ground rules:
  • Must be native
  • Must be sparse mode
  • No tunnels allowed
  • All routers must support interdomain multicast routing.
slide-60
SLIDE 60

Conclusion

slide-61
SLIDE 61

Multicasting: Top, middle, bottom

Multicasting at different layers

slide-62
SLIDE 62

Multicasting

Sending the same data to multiple recipients in a group.

slide-63
SLIDE 63

Multicasting

Sending the same data to multiple recipients in a group.

slide-64
SLIDE 64

At different levels

  • Application multicast
  • Overlay multicast
  • IP multicast

L7: Application L6: Presentation L5: Session L4: Transport L3: Network L2: Link L1: Physical

slide-65
SLIDE 65

Metrics used

  • Tree quality

○ Multicast tree cost ○ End to end delay

  • Control overhead

○ Number of control messages

slide-66
SLIDE 66

Application multicast

  • Two categories:

○ Unstructured (NARADA) ■ Periodically exchange membership & routing info ■ Build a mesh on E2E measurements ■ Build delivery tree on top, based on distance ○ Structured (NICE) ■ Recursively arrange members into hierarchy

slide-67
SLIDE 67

Application multicast

  • Pros & cons

○ Unstructured (NARADA) ■ Good for small and sparse groups ■ Does not scale to larger groups, too many control messages ■ Sends and uses a lot of data to build high quality tree ○ Structured (NICE) ■ Efficient logical path, slightly less efficient than NARADA ■ Control messages scale well

slide-68
SLIDE 68

Overlay multicast

  • Backbone overlay hosts - Proxies
  • Users cluster around their closest proxy
  • POM - Pure Overlay Multicast

○ Tree managed in backbone, users connect via unicast

  • Can be very efficient
  • More work than application: Need to set up and

configure the overlay network

slide-69
SLIDE 69

IP multicast

  • Integrate into internet
  • Prerequisite:

○ Agree on single, global protocol for routing ○ Address space

  • PIM-SSM

○ Reverse path forwarding ○ Source-Specific Multicast

slide-70
SLIDE 70

So, which works best?

slide-71
SLIDE 71

Test parameters

  • Router topology based on map of approx 300 router

nodes within one ISP

  • Group members randomly, uniformly distributed in

network

○ Group size from 5 to 1280

  • Source randomly selected within group
  • All protocols are source oriented; not core oriented
slide-72
SLIDE 72
slide-73
SLIDE 73

Application multicast

  • NARADA (unstructured)

○ Tree cost is efficient ○ E2E delay consistent, and lower than for NICE, regardless of group size ○ Large amount of control messages required to maintain the tree

  • NICE (structured)

○ Sacrifices cost and delay some, for improved scalability ■ Fewer control messages ○ Less control messages (than NARADA) as it scales

slide-74
SLIDE 74

Overlay multicast

  • Tree cost increases faster than IP multicast

○ Scalability can be improved by using IP multicast for the last leg; from backbone to recipient

  • Delay is slightly higher than IP multicast
  • Control overhead varies:

○ Application can be better for small groups (<100); Overlay is better for larger groups. ○ IP multicast always beats overlay multicast

slide-75
SLIDE 75

Overlay multicast

  • Tree cost increases faster than IP multicast

○ Scalability can be improved by using IP multicast for the last leg; from backbone to recipient

  • Delay is slightly higher than IP multicast
  • Control overhead varies:

○ Application can be better for small groups; Overlay is better for larger groups. ○ IP multicast always beats overlay multicast

slide-76
SLIDE 76

IP multicast

  • Lowest tree cost, for all group sizes
  • E2E delay same as unicast

○ PIM-SSM uses shortest path trees.

  • Lowest control overhead overall
slide-77
SLIDE 77

Conclusions

  • Short term/small group: Application multicast

○ Less effort to set up ○ Pretty efficient with small groups, not with scale

  • Larger groups/long term: Overlay multicast

○ More work, but better for medium and large groups ○ More fitting for permanent investment than one off application

  • Whenever available: IP based multicast

○ Overall best option; if it is available

slide-78
SLIDE 78

Conclusions

Metric IP Overlay Application Ease of deployment Low Medium High Multicast efficiency High Medium Low Control overhead Low Medium High

Based on table table 1 - Comparison of multicast architectures

slide-79
SLIDE 79

Bit Indexed Explicit Replication

BIER - RFC 8279

slide-80
SLIDE 80

Background

  • IP Multicast challenges:

○ Often limited availability ○ Some tree types do not follow unicast paths ○ Need to aggregate more tree state to be optimal ○ Specialized to troubleshoot/maintain

  • Only networks with overwhelming business need have

multicast deployed; not available for most services

○ Often internal, in one network/AS

  • Can we do better?
slide-81
SLIDE 81

Concept

  • Consider my topology; not global
  • Only encode end-receivers in packets
  • Assign end-receivers a bit position in bit string

○ Smallest possible identifier: One bit per receiver ○ Used to indicate who should (and needs) to receive it ○ Encoded in packet headers

  • Compile Bit Forwarding Table on all BIER nodes

○ To allow every BIER node to forward based on the bit-string

slide-82
SLIDE 82

Example: Forwarding packets

Message for 0111 Message for 0111 Message for 0100 Message for 0011 Message for 0100 Message for 0001 Message for 0010

slide-83
SLIDE 83

Scaling: BIER Sets

  • Problem: One receiver per bit in bit string - limited
  • Solution:

○ Group the list of receivers into sets ○ Bit positions are only unique in the context of the set ○ Packet is replicated - One copy sent to an ingress router/node for each set. ○ It will then be transmitted in the set, as normal

  • Bitstring length varies

○ Defined by encapsulation standard ○ RFC 8296 - BIER in MPLS suggests 256 bit.

slide-84
SLIDE 84

Scaling: BIER Sets

slide-85
SLIDE 85

Advantages

  • Follows unicast route towards receiver

○ Inherits unicast efficiency ○ Saves bandwidth by transmitting fewer times, as with normal multicast ○ If overlay: Most efficient path through overlay

  • No multicast flow state needed to be kept in the network
slide-86
SLIDE 86

Disadvantages

  • Bit string has an upper bound, will not cover all scenarios
  • Scaling using sets wastes some bandwidth, as the same

packet has to be sent to every ingress router

○ Example: ■ RIPE NCC wants to distribute update to their probes ■ 11107 probes / 256 bit = 44 sets ■ Ignores issues with independent networks

Probe image source: RIPE Atlas - https://atlas.ripe.net/landing/probes-and-anchors/

slide-87
SLIDE 87

References

“A Comparative Study of Multicast Protocols: Top, Bottom, or In the Middle?”, Lao, Cui, Gerla, Maggiorini (IEEE, 2005) “Bit Indexed Explicit Replication BIER”, Greg Shepherd (RIPE, 2015) ISO/IEC standard 7498-1:1994 (ISO Model)

slide-88
SLIDE 88

Further reading

  • The articles themselves
  • RFC 8279 - Multicast using BIER
  • RFC 8296 - Encapsulation for BIER using MPLS
  • Protocol specifications
  • L. Lao, J.-H. Cui. M. Gerla. and D. Maggiorim. A

comparative study of multicast protocols: Top, bottom. or in the middle? Technical report, Jan. 2005