1 / 12

Layered Multicast: Maximizing Network Bandwidth Efficiency

This article discusses receiver-driven layered multicast protocols proposed by Steven McCanne, Van Jacobson, and Martin Vetterli in 1996. It addresses challenges like network heterogeneity, optimal rate determination, and capacity inference. The protocol allows receivers to choose quality levels, adapt to network conditions, and manage congestion dynamically. Key elements include layered video streams, RLM protocol, capacity determination, and Mini-RLM project. Practical examples like Mini Video and IP Multicast implementation are provided in text-based frames. Overall, this protocol enhances bandwidth utilization for efficient data transmission across diverse network environments.

rufus
Download Presentation

Layered Multicast: Maximizing Network Bandwidth Efficiency

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. Receiver-driven Layered Multicast Steven McCanne, Van Jacobson and Martin Vetterli ACM SIGCOMM, Stanford California August 1996

  2. Problem • Network heterogeneity • One output to multiple users with varied capabilities • How to decide the rate? • Minimum? Maximum? • How to determine network capacity?

  3. Solution? • Multiple levels of quality across multiple network channels • Receivers decide their own rates of reception • Note, requires layered media streams

  4. Layered Video Stream • One channel per layer • Layers are additive • Adding more channels gives better quality • Adding more channels requires more bandwidth

  5. The RLM Protocol • High level abstraction • on congestion, drop a layer • on spare capacity, add a layer • Q: How does the receiver decide? • detection time • capacity inference

  6. Determining Capacity • At a “well-chosen” time conduct a join experiment • If congestion is experienced, leave the new group • If no congestion for awhile, try to join next • higher group

  7. Project 2: Mini-RLM • Three programs • Server: send video on all channels • Router: receive video, ‘route’ appropriate channels to client • Player: receive video, probe for capacity, play video

  8. Mini RLM Send video Send appropriate channels to player Play video Probe for bandwidth

  9. Mini Video Taking a Walk 0 | | Taking a Walk 0 | / \ Taking a Walk 0 | | • Text-based frames • One frame per second on each channel • sleep! alarm! setitimer!

  10. Video Scaling • Receiver Channel 1: 1 4 7 Time  Channel 2: 2 5 8 Channel 3: 3 6 9 • Base case, channel 1 only: Channel 1: 1 4 7 ... • If more bandwidth: Channels 1-2: 12 45 78 ... • Full quality: Channels 1-3: 123456789 ...

  11. IP Multicast Client-Server Server socket() Client bind() socket() sendto() recvfrom() Data close() close() • Same as UDP client server! • Multicast requires special address (reserved) • A few socket options • No two-way communication

  12. IP Multicast • Server • Send to 239.0.0.1 to 239.255.255.255 addr.sin_addr.s_addr = inet_addr(239.0.0.1); • Port • Receiver struct ip_mreq mreq; mreq.imr_multiaddr.s_addr = inet_addr(239.0.0.1); mreq.imr_interface.s_addr = htonl(INADDR_ANY); setsockopt(sock, IPPROTO_IP, IP_ADD_MEMBERSHIP, &mreq, sizeof(mreq))

More Related