CMPE 252A: Computer Networks

Slides:



Advertisements
Similar presentations
A Comparison of Application-Level and Router-Assisted Hierarchical Schemes for Reliable Multicast Pavlin Radoslavov Christos Papadopoulos Ramesh Govindan.
Advertisements

Optimizing Buffer Management for Reliable Multicast Zhen Xiao AT&T Labs – Research Joint work with Ken Birman and Robbert van Renesse.
Congestion Control Created by M Bateman, A Ruddle & C Allison As part of the TCP View project.
Router Buffer Sizing and Reliability Challenges in Multicast Aditya Akella 02/28.
15-744: Computer Networking L-17 Multicast Reliability and Congestion Control.
L-21 Multicast. L -15; © Srinivasan Seshan, Overview What/Why Multicast IP Multicast Service Basics Multicast Routing Basics DVMRP Overlay.
Receiver-driven Layered Multicast S. McCanne, V. Jacobsen and M. Vetterli SIGCOMM 1996.
A Reliable Multicast Framework For Light-Weight Sessions and Application Level Framing Sally Floyd, Van Jacobson, Ching-Gung Liu, Steven McCanne, Lixia.
CSE 561 – Multicast Applications David Wetherall Spring 2000.
588 Section 6 Neil Spring May 11, Schedule Notes – (1 slide) Multicast review –(3slides) RLM (the paper you didn’t read) –(3 slides) ALF & SRM –(8.
1 TCP Transport Control Protocol Reliable In-order delivery Flow control Responds to congestion “Nice” Protocol.
Network Multicast Prakash Linga. Last Class COReL: Algorithm for totally-ordered multicast in an asynchronous environment, in face of network partitions.
Computer Networking Lecture 24 – Multicast.
1 Chapter 3 Transport Layer. 2 Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4.
CS 268: Computer Networking L-21 Multicast. 2 Multicast Routing Unicast: one source to one destination Multicast: one source to many destinations Two.
Resilient Multicast Support for Continuous-Media Applications X. Xu, A. Myers, H. Zhang and R. Yavatkar CMU and Intel Corp NOSSDAV, 1997.
On Multicast CS614 - March 7, 2000 Tibor Jánosi ?.
CS 268: Multicast Transport Kevin Lai April 24, 2001.
CMPE 257 Spring CMPE 257: Wireless and Mobile Networking Spring 2005 E2E Protocols (point-to-point)
1 K. Salah Module 6.1: TCP Flow and Congestion Control Connection establishment & Termination Flow Control Congestion Control QoS.
Multicast Transport Protocols: A Survey and Taxonomy Author: Katia Obraczka University of Southern California Presenter: Venkatesh Prabhakar.
CSE679: Multicast and Multimedia r Basics r Addressing r Routing r Hierarchical multicast r QoS multicast.
Receiver-driven Layered Multicast Paper by- Steven McCanne, Van Jacobson and Martin Vetterli – ACM SIGCOMM 1996 Presented By – Manoj Sivakumar.
Multicast Congestion Control in the Internet: Fairness and Scalability
3: Transport Layer3b-1 Principles of Congestion Control Congestion: r informally: “too many sources sending too much data too fast for network to handle”
Transport Layer 4 2: Transport Layer 4.
Qian Zhang Department of Computer Science HKUST Advanced Topics in Next- Generation Wireless Networks Transport Protocols in Ad hoc Networks.
A Randomized Error Recovery Algorithm for Reliable Multicast Zhen Xiao Ken Birman AT&T Labs – Research Cornell University.
Dec 4, 2007 Reliable Multicast Group Neelofer T. CMSC 621.
TCP CS 168 Discussion Week 6 Many thanks to past EE 122 GSIs.
TCP1 Transmission Control Protocol (TCP). TCP2 Outline Transmission Control Protocol.
Presentation slides prepared by Ramakrishnan.V LMS: A Router Assisted Scheme for Reliable Multicast Christos Papadopoulos, University of Southern California.
CIS679: Multicast and Multimedia (more) r Review of Last Lecture r More about Multicast.
Video Multicast over the Internet Presented by: Liang-Yuh Wu Lung-Yuan Wu Hao-Hsiang Ku 12 / 6 / 2001 Bell Lab. And Georgia Institute of Technologies IEEE.
Push Technology Humie Leung Annabelle Huo. Introduction Push technology is a set of technologies used to send information to a client without the client.
Review of key networking techniques: –Reliable communication over unreliable channels –Error detection and correction –Medium access control –routing –Congestion.
EE689 Lecture 13 Review of Last Lecture Reliable Multicast.
TCP OVER ADHOC NETWORK. TCP Basics TCP (Transmission Control Protocol) was designed to provide reliable end-to-end delivery of data over unreliable networks.
15-744: Computer Networking L-15 Multicast Address Allocation and Reliability.
Reliable Adaptive Lightweight Multicast Protocol Ken Tang, Scalable Network Technologies Katia Obraczka, UC Santa Cruz Sung-Ju Lee, Hewlett-Packard Laboratories.
TCP over Wireless PROF. MICHAEL TSAI 2016/6/3. TCP Congestion Control (TCP Tahoe) Only ACK correctly received packets Congestion Window Size: Maximum.
Window Control Adjust transmission rate by changing Window Size
Computer Communication & Networks
TCP - Part II Relates to Lab 5. This is an extended module that covers TCP flow control, congestion control, and error control in TCP.
CS450 – Introduction to Networking Lecture 19 – Congestion Control (2)
Chapter 3 outline 3.1 transport-layer services
COMP 431 Internet Services & Protocols
TCP Vegas: New Techniques for Congestion Detection and Avoidance
CIS, University of Delaware
Ad-hoc Transport Layer Protocol (ATCP)
Video Multicast over the Internet (IEEE Network, March/April 1999)
Computer Networks Bhushan Trivedi, Director, MCA Programme, at the GLS Institute of Computer Technology, Ahmadabad.
15-744: Computer Networking
TCP - Part II Relates to Lab 5. This is an extended module that covers TCP flow control, congestion control, and error control in TCP.
Lecture 19 – TCP Performance
Reliable Multicast Group
So far, On the networking side, we looked at mechanisms to links hosts using direct linked networks and then forming a network of these networks. We introduced.
TCP in Mobile Ad-hoc Networks
TCP in Wireless Ad-hoc Networks
CS4470 Computer Networking Protocols
CS640: Introduction to Computer Networks
15-441: Computer Networking
Getting Connected (Chapter 2 Part 3)
TCP Congestion Control
TCP Overview.
EE 122: Lecture 10 (Congestion Control)
The Transport Layer Reliability
Transport Layer: Congestion Control
TCP flow and congestion control
Error Checking continued
Presentation transcript:

CMPE 252A: Computer Networks Lecture 17 CMPE252A Fall 2004

Announcements Homework 5 posted. Tutorial on ns-2: Monday, 11.29. Due on Dec. 1st. Tutorial on ns-2: Monday, 11.29. CMPE252A Fall 2004

Today’s plan Reliable multicast transport. CMPE252A Fall 2004

Reliable Multicast Transport CMPE252A Fall 2004

Protocols SRM. RMTP. PGM. pgmcc. RLM. CMPE252A Fall 2004

Challenges Heterogeneity. Scalability. Implosion: feedback. Exposure: repair. CMPE252A Fall 2004

Mechanisms Error recovery. Congestion control. CMPE252A Fall 2004

Error recovery Sender-reliable. Receiver-reliable. CMPE252A Fall 2004

Sender-reliable Receiver ACKs. Wait for ACKs from all receivers. Re-send on timeout or selective ACK. : easy resource management. : wait for ACK. -: receiver state in sender not scalable. -: ACK implosion. CMPE252A Fall 2004

Receiver-reliable Receiver NACKs lost packet. : no state at sender - good for multicast. -: does not provide 100% reliability. : NACK implosion. CMPE252A Fall 2004

Implosion Src CMPE252A Fall 2004

Implosion Src CMPE252A Fall 2004

Implosion Src CMPE252A Fall 2004

Implosion Src CMPE252A Fall 2004

Implosion Src CMPE252A Fall 2004

Implosion Src CMPE252A Fall 2004

Implosion Src CMPE252A Fall 2004

Implosion Src CMPE252A Fall 2004

Implosion Src CMPE252A Fall 2004

Implosion Src CMPE252A Fall 2004

Implosion Src CMPE252A Fall 2004

Implosion Src CMPE252A Fall 2004

Implosion Src CMPE252A Fall 2004

Retransmission Who retransmits? How to retransmit? Problem: exposure Sender- versus receiver-based. How to retransmit? Unicast, multicast, scoped multicast, retransmission group, … Problem: exposure CMPE252A Fall 2004

Exposure Src CMPE252A Fall 2004

Exposure Src CMPE252A Fall 2004

Exposure Src CMPE252A Fall 2004

Exposure Src CMPE252A Fall 2004

Exposure Src CMPE252A Fall 2004

Exposure Src CMPE252A Fall 2004

Exposure Src CMPE252A Fall 2004

Exposure Src CMPE252A Fall 2004

Exposure Src CMPE252A Fall 2004

Exposure Src CMPE252A Fall 2004

Exposure Src CMPE252A Fall 2004

Exposure Src CMPE252A Fall 2004

Exposure Src CMPE252A Fall 2004

Exposure Src CMPE252A Fall 2004

Exposure Src CMPE252A Fall 2004

Exposure Src CMPE252A Fall 2004

Router-assisted recovery “Ideal router”. A single request is sent upstream. A single repair is multicast from the nearest repairer to the subtree down the lossy link. R A R A A A A router receiver R A CMPE252A Fall 2004

Scalable Reliable Multicast CMPE252A Fall 2004

Scalable Reliable Multicast SRM. Originally designed for wb. Receiver-reliable. NACK-based. Every member may multicast NACK or data. Need much more elaborate explaination of why SRM is designed this way, e.g., get the previous microsoft guy’s slides of SRM, showing (1) why NACK instead of ACK; (2) why need NACK suppression and retransmission suppression; *Maybe* a little bit discussion of why not use tree-like structure: because these replication applications are essentially PEER-TO-PEER, and all members are senders. We believe in this situation, random suppression with a “good” timer will perform better than dynamic/static tree structures. CMPE252A Fall 2004

SRM Request Suppression Src CMPE252A Fall 2004

SRM Request Suppression Src CMPE252A Fall 2004

SRM Request Suppression Src CMPE252A Fall 2004

SRM Request Suppression Src CMPE252A Fall 2004

SRM Request Suppression Src CMPE252A Fall 2004

SRM Request Suppression Src CMPE252A Fall 2004

SRM Request Suppression Src CMPE252A Fall 2004

SRM Request Suppression Src CMPE252A Fall 2004

SRM Request Suppression Src CMPE252A Fall 2004

SRM Request Suppression Src CMPE252A Fall 2004

SRM Request Suppression Src CMPE252A Fall 2004

SRM Request Suppression Src CMPE252A Fall 2004

SRM Request Suppression Src CMPE252A Fall 2004

Deterministic Suppression time d d data 2d d session msg d d nack repair = sender 3d = repairer d 4d = requestor Delay = C1dS,R CMPE252A Fall 2004

SRM Star Topology Src CMPE252A Fall 2004

SRM Star Topology Src CMPE252A Fall 2004

SRM Star Topology Src CMPE252A Fall 2004

SRM Star Topology Src CMPE252A Fall 2004

SRM Star Topology Src CMPE252A Fall 2004

SRM Star Topology Src CMPE252A Fall 2004

SRM Star Topology Src CMPE252A Fall 2004

SRM Star Topology Src CMPE252A Fall 2004

SRM Star Topology Src CMPE252A Fall 2004

SRM Star Topology Src CMPE252A Fall 2004

SRM Star Topology Src CMPE252A Fall 2004

SRM Star Topology Src CMPE252A Fall 2004

SRM Star Topology Src CMPE252A Fall 2004

SRM: Stochastic Suppression time 2d d data 1 d repair session msg d 2 NACK d 3 = sender Delay = U[0,C2] +C1dS,R = repairer = requestor CMPE252A Fall 2004

SRM (summary) NACK/Retransmission suppression. Delay before sending. Delay based on RTT estimation. Deterministic + Stochastic components. Periodic session messages. Full reliability (e.g., last packet lost). Estimation of distance matrix among members. CMPE252A Fall 2004

What’s missing? Losses at link (A,C) causes retransmission to the whole group. Solution: only retransmit to those members who lost the packet. Request from nearest member. A B E F S C D 0.99 sender receiver CMPE252A Fall 2004

Local Recovery Application-level hierarchy. TTL scoped multicast. Router supported. CMPE252A Fall 2004

RMTP Reliable Multicast Transport Protocol by Purdue and AT&T Research Labs. Designed for file dissemination (single-sender). Deployed in AT&T’s billing network. CMPE252A Fall 2004

Tree-based protocol Solution to feedback implosion and local recovery. Receivers are grouped into local regions under designated receivers (DR). DR representative of local region. Only DRs send feedback to source. Receivers send feedback to DR (ACK processor). DR does local recovery based on feedback from receivers. CMPE252A Fall 2004

Tree-based hierarchy Receivers grouped into local regions. Receiver unicasts periodic ACKs to its ACK Processor (AP), AP unicasts its own ACK to its parent. DR R1 R2 DR R3 DR R4 R5 Receiver dynamically chooses closest statically configured Designated Receiver (DR) as its AP. R R R R R R DR DR/AP R receiver R* router CMPE252A Fall 2004

Choosing DRs Pre-defined set of receivers that can act as DRs. DRs periodically send special packet using multicast tree. TTL decremented at each hop. Receiver chooses DR whose packet has highest TTL = closest DR. CMPE252A Fall 2004

Error control DR checks retransmission requests periodically. Multicast or unicast retransmission. Based on percentage of requests. Immediate transmission request. Used for late joining receivers. Data cache: buffers entire file during session. CMPE252A Fall 2004

Congestion Control Retransmission requests as congestion indicator. Window-based. Sender computes number of retransmission requests over pre-configured time interval. If threshold exceeded, cwnd=1. Otherwise, cwnd=cwnd+1 up to pre-configured maximum window size. CMPE252A Fall 2004

RMTP: Comments : Heterogeneity : Position of DR critical Lossy link or slow receiver will only affect a local region. : Position of DR critical Static hierarchy cannot adapt local recovery zone to loss points CMPE252A Fall 2004

PGM Cisco’s reliable multicast protocol. Single source protocol. CMPE252A Fall 2004

Protocol overview NACK-based with probabilistic suppression. Repair only forwarded to “NACKers”. Can make use of router support. Feedback aggregation. Selective repair forwarding. Source path message (SPM): generated hop-by-hop by PGM routers. CMPE252A Fall 2004

PGM: Request forwarding NACK + random delay. Forwarded upstream towards the source. Only one NACK is forwarded for every packet loss. SPM: identify next PGM router upstream. S R A R A A2 A A1 R router A receiver NACK RTX SPM CMPE252A Fall 2004

PGM Repair Src CMPE252A Fall 2004

PGM Repair Src (x) CMPE252A Fall 2004

PGM Repair Src (x) (x) Data loss CMPE252A Fall 2004

PGM Repair Src CMPE252A Fall 2004

PGM Repair Src (x+1) Next sequence number sent; nodes will notice the loss. CMPE252A Fall 2004

PGM Repair Src (x+1) CMPE252A Fall 2004

PGM Repair Src (x+1) CMPE252A Fall 2004

PGM Repair Src (x?) noticing the loss, sending a NACK CMPE252A Fall 2004

PGM Repair Src (x?) (x) (x?) (x?) (x?) (x?) CMPE252A Fall 2004

PGM Repair Src (x?) NACKS have now created state at necessary routers CMPE252A Fall 2004

PGM Repair Src out goes the repair (x) (x) (x) (x) CMPE252A Fall 2004

PGM Repair Src (x) (x) (x) CMPE252A Fall 2004

PGM Repair Src (x) (x) CMPE252A Fall 2004

PGM Repair Src CMPE252A Fall 2004

PGM Repair Src CMPE252A Fall 2004

Problem: Repeated Retransmissions Src CMPE252A Fall 2004

Repeated Retransmissions Src CMPE252A Fall 2004

Repeated Retransmissions Src data loss CMPE252A Fall 2004

Repeated Retransmissions Src CMPE252A Fall 2004

Repeated Retransmissions Src Next sequence number CMPE252A Fall 2004

Repeated Retransmissions Src CMPE252A Fall 2004

Repeated Retransmissions Src CMPE252A Fall 2004

Repeated Retransmissions Src CMPE252A Fall 2004

Repeated Retransmissions Src (x) CMPE252A Fall 2004

Repeated Retransmissions Src (x) (x) CMPE252A Fall 2004

Repeated Retransmissions Src repair (x) (x) CMPE252A Fall 2004

Repeated Retransmissions Src (x) CMPE252A Fall 2004

Repeated Retransmissions Src (x) (x) CMPE252A Fall 2004

Repeated Retransmissions Src (x) (x) CMPE252A Fall 2004

Repeated Retransmissions Src (x) (x) CMPE252A Fall 2004

Repeated Retransmissions Src (x) (x) CMPE252A Fall 2004

Repeated Retransmissions Src (x) (x) (x) (x) CMPE252A Fall 2004

Repeated Retransmissions Src (x) (x) (x) (x) (x) CMPE252A Fall 2004

Repeated Retransmissions Src 2nd. repair (x) (x) (x) (x) (x) CMPE252A Fall 2004

Repeated Retransmissions Src (x) (x) (x) (x) CMPE252A Fall 2004

Repeated Retransmissions Src (x) (x) CMPE252A Fall 2004

Repeated Retransmissions Src CMPE252A Fall 2004

Repeated Retransmissions Src CMPE252A Fall 2004

PGM Summary Pros: Cons: Avoids sending repairs everywhere. Routers need to look at multicast transport state (sequence numbers). Can result in duplicate repairs (depending on timing). CMPE252A Fall 2004

pgmcc Single-rate multicast congestion control mechanism. Single rate as opposed to hierarchical rate decomposition. Single-source multicast. Developed for PGM. But does not require router support. CMPE252A Fall 2004

pgmcc features End-to-end. Use ACKs and NACKs. Window-based. Sender-based RTT measurements. Representatives (ackers). Receiver with worst throughput. CMPE252A Fall 2004

Protocol overview Sender monitors receiver reports (NACKs). Select acker. Window-based congestion control (a la TCP) between sender and acker. Acker sends ACKs for every data packet. CMPE252A Fall 2004

Protocol components (1) Receiver reports: Sent as part of NACKs. Used to determine lowest throughput receiver, or acker. Reports receiver’s measured loss rate. Used to measure RTT. CMPE252A Fall 2004

Protocol components (2) Acknowledgments: Acker generates an ACK for each data packet received. Contain loss report. Sequence number of ack’ed packet. Bitmap with status of most recent 32 packets. CMPE252A Fall 2004

Protocol components (3) Window-based controller Window-based congestion control between sender and acker. Similar to TCP: AIMD. When sessions starts, slow-start up to small ssthresh. CMPE252A Fall 2004

Acker election and tracking Acker is receiver with lowest throughput. Uses TCP relation between throughput and loss, i.e., Bias in favor of current acker. CMPE252A Fall 2004

RLM Receiver-driven Layered Multicast. Use multiple multicast groups. Receiver initiated rate adaptation. Cope with heterogeneity. Use multiple multicast groups. Assemble content by combining data from multiple groups. Receivers add/remove layers Applicable to video. CMPE252A Fall 2004

RLM Layered video encoding. Each layer uses its own multicast group. Basic layer. Additional layer for enhanced video. Each layer uses its own multicast group. On spare capacity, receivers add layer. On congestion, receivers drop layer. CMPE252A Fall 2004

Layered media streams R1 R1 10Mbps 10Mbps 512Kbps S R R 10Mbps 128Kbps CMPE252A Fall 2004

When to add layer? Join experiments used to probe for bandwidth. Receivers try to add layers at specific times. Spontaneous subscription to next layer. If join-experiment causes congestion, receiver drops layer. Otherwise, receiver succeeds. CMPE252A Fall 2004

RLM Adaptation Learning strategy. Shared learning. Receivers learn over time level of subscription that causes congestion. Join-timer performing exponential backoff. Shared learning. For large groups, receivers learn from one another. Receiver multicasts join message; if experiment fails, other receivers know. CMPE252A Fall 2004

Join experiments Layer 3 timer exponentially increased Congestion 4 3 B 2 A 1 time CMPE252A Fall 2004