Network Coding and Reliable Communications Group Modeling Network Coded TCP Throughput: A Simple Model and its Validation MinJi Kim*, Muriel Médard*, João.

Slides:



Advertisements
Similar presentations
Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 1 Department of Information Engineering University of Pisa Network Telecomunication.
Advertisements

1 Transport Protocols & TCP CSE 3213 Fall April 2015.
1 End to End Bandwidth Estimation in TCP to improve Wireless Link Utilization S. Mascolo, A.Grieco, G.Pau, M.Gerla, C.Casetti Presented by Abhijit Pandey.
Ahmed El-Hassany CISC856: CISC 856 TCP/IP and Upper Layer Protocols Slides adopted from: Injong Rhee, Lisong Xu.
Receiver-driven Layered Multicast S. McCanne, V. Jacobsen and M. Vetterli SIGCOMM 1996.
Congestion Control Tanenbaum 5.3, /12/2015Congestion Control (A Loss Based Technique: TCP)2 What? Why? Congestion occurs when –there is no reservation.
Modeling TCP Throughput Jeng Lung WebTP Meeting 11/1/99.
Network Coding and Reliable Communications Group DAWN PI meeting – October 2009 Network coding with unreliable, unknown bandwidths Muriel Medard EECS RLE.
Network Coding Meets TCP Michael Mitzenmacher Joint work with Jay-Kumar Sudararajan, Devavrat Shah, Muriel Medard, Joao Barros.
Network Coding and Reliable Communications Group A Multi-hop Multi-source Algebraic Watchdog Muriel Médard † Joint work with MinJi Kim †, João Barros ‡
Network Coding and Reliable Communications Group Network Coding for Multi-Resolution Multicast March 17, 2010 MinJi Kim, Daniel Lucani, Xiaomeng (Shirley)
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #7 TCP New Reno Vs. Reno.
An Algebraic Watchdog for Wireless Network Coding MinJi Kim † Joint work with Muriel Médard †, João Barros ‡, Ralf Kötter * † Massachusetts Institute of.
A TCP With Guaranteed Performance in Networks with Dynamic Congestion and Random Wireless Losses Stefan Schmid, ETH Zurich Roger Wattenhofer, ETH Zurich.
Performance Enhancement of TFRC in Wireless Ad Hoc Networks Mingzhe Li, Choong-Soo Lee, Emmanuel Agu, Mark Claypool and Bob Kinicki Computer Science Department.
1 Internet Networking Spring 2004 Tutorial 10 TCP NewReno.
CMPE 257 Spring CMPE 257: Wireless and Mobile Networking Spring 2005 E2E Protocols (point-to-point)
Sep 12, 2002Wireless Networking Seminar1 Does IEEE Work Well in Multi-hop Wireless Network? Author: Shugong Xu, Tarek Saadawi City University of.
TCP: flow and congestion control. Flow Control Flow Control is a technique for speed-matching of transmitter and receiver. Flow control ensures that a.
Opersating Mode DCF: distributed coordination function
Networks Lab, Rensselaer Polytechnic Institute 1 LT-TCP: End-to-End Framework to Improve TCP Performance over Networks with Lossy Channels Omesh Tickoo,
Qian Zhang Department of Computer Science HKUST Advanced Topics in Next- Generation Wireless Networks Transport Protocols in Ad hoc Networks.
Modeling TCP Throughput: A Simple Model and its Empirical Validation Ross Rosemark Penn State University.
10/1/2015 9:14 PM1 TCP in Mobile Ad-hoc Networks ─ Split TCP CSE 6590.
COMT 4291 Communications Protocols and TCP/IP COMT 429.
An End-to-end Approach to Increase TCP Throughput Over Ad-hoc Networks Sarah Sharafkandi and Naceur Malouch.
Recitation 8 Wireless Networks. Virtual carrier sensing First exchange control frames before transmitting data – Sender issues “Request to Send” (RTS),
1 Transport Layer for Mobile Ad Hoc Networks (MANETs) Cyrus Minwalla Maan Musleh COSC 6590.
27th, Nov 2001 GLOBECOM /16 Analysis of Dynamic Behaviors of Many TCP Connections Sharing Tail-Drop / RED Routers Go Hasegawa Osaka University, Japan.
Copyright 2008 Kenneth M. Chipps Ph.D. Controlling Flow Last Update
Novel network coding strategy for TDD Use of feedback (ACK) improves delay/energy/ throughput performance, especially for high latency- high errors scenarios.
TCP with Variance Control for Multihop IEEE Wireless Networks Jiwei Chen, Mario Gerla, Yeng-zhong Lee.
Wireless TCP. References r Hari Balakrishnan, Venkat Padmanabhan, Srinivasan Seshan and Randy H. Katz, " A Comparison of Mechanisms for Improving TCP.
TCP-Cognizant Adaptive Forward Error Correction in Wireless Networks
Forward Error Correction vs. Active Retransmit Requests in Wireless Networks Robbert Haarman.
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March
TCP on Wireless Ad Hoc Networks CS 218 Oct 22, 2003 TCP overview Ad hoc TCP : mobility, route failures and timeout TCP and MAC interaction study TCP fairness.
1 CS 4396 Computer Networks Lab TCP – Part II. 2 Flow Control Congestion Control Retransmission Timeout TCP:
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
Recitation 8 Wireless Networks.
1 Transport Control Protocol for Wireless Connections ElAarag and Bassiouni Vehicle Technology Conference 1999.
1 Computer Networks Congestion Avoidance. 2 Recall TCP Sliding Window Operation.
Congestion Avoidance and Control Van Jacobson and Michael Karels Presented by Sui-Yu Wang.
Ασύρματες και Κινητές Επικοινωνίες Ενότητα # 11: Mobile Transport Layer Διδάσκων: Βασίλειος Σύρης Τμήμα: Πληροφορικής.
Internet Networking recitation #11
TCP Congestion Control 컴퓨터공학과 인공지능 연구실 서 영우. TCP congestion control2 Contents 1. Introduction 2. Slow-start 3. Congestion avoidance 4. Fast retransmit.
TCP continued. Discussion – TCP Throughput TCP will most likely generate the saw tooth type of traffic. – A rough estimate is that the congestion window.
Key insight.  With drop-when-decoded, the busy period of the virtual queue contributes to the physical queue size calculation  Responding to ACK of the.
1 Advanced Transport Protocol Design Nguyen Multimedia Communications Laboratory March 23, 2005.
2005/12/14 1 Improving TCP Performance over Mobile Ad Hoc Networks by Exploiting Cross-Layer Information Awareness Xin Yu Department of Computer Science.
Transmission Control Protocol (TCP) TCP Flow Control and Congestion Control CS 60008: Internet Architecture and Protocols Department of CSE, IIT Kharagpur.
Coding  Network Coding Coding Today (all end-to-end) Coding Tomorrow (using Random Linear Network Coding) Classical Network Multipath Multisource – Multi-destination.
1 Ad-hoc Transport Layer Protocol (ATCP) EECS 4215.
Karn’s Algorithm Do not use measured RTT to update SRTT and SDEV Calculate backoff RTO when a retransmission occurs Use backoff RTO for segments until.
1 ICCCN 2003 Modelling TCP Reno with Spurious Timeouts in Wireless Mobile Environments Shaojian Fu School of Computer Science University of Oklahoma.
The Importance of Being Opportunistic Sachin Katti Dina Katabi, Wenjun Hu, Hariharan Rahul, and Muriel Medard.
Coding for Multipath TCP: Opportunities and Challenges Øyvind Ytrehus University of Bergen and Simula Res. Lab. NNUW-2, August 29, 2014.
TCP+Network Coding Li Shushi
TCP - Part II Relates to Lab 5. This is an extended module that covers TCP flow control, congestion control, and error control in TCP.
Transmission Control Protocol (TCP)
Generalizing The Network Performance Interference Problem
MinJi Kim, Muriel Médard, João Barros
TCP Westwood(+) Protocol Implementation in ns-3
TCP - Part II Relates to Lab 5. This is an extended module that covers TCP flow control, congestion control, and error control in TCP.
PUSH Flag A notification from the sender to the receiver to pass all the data the receiver has to the receiving application. Some implementations of TCP.
TCP in Mobile Ad-hoc Networks
TCP in Wireless Ad-hoc Networks
The Impact of Multihop Wireless Channel on TCP Performance
Low-Latency Adaptive Streaming Over TCP
TCP flow and congestion control
Presentation transcript:

Network Coding and Reliable Communications Group Modeling Network Coded TCP Throughput: A Simple Model and its Validation MinJi Kim*, Muriel Médard*, João Barros ‡ *Massachusetts Institute of Technology ‡University of Porto

Network Coding and Reliable Communications Group TCP in Wireless TCP: the dominant protocol in today’s network TCP’s congestion control Designed for wireline Mistakes erasures/fading in wireless as congestion, leading to performance degradation in wireless setting Use “network coding” to improve performance Loss rate

Network Coding and Reliable Communications Group Network Coding with TCP (TCP/NC) Random linear network coding masks link losses from TCP in order to prevent unnecessary back-off. Translates the losses as longer round trip time. ACK design that accounts for mixing (coding) of packets with each other. ACK: every innovative linear combination, even if it does not reveal a packet immediately. For every packet coming from TCP, coding layer transmits R (>1) random linear combinations of buffered packets to IP Redundancy factor

Network Coding and Reliable Communications Group Main Idea of TCP/NC TCP mistakes losses as congestion; Window closing due to: – Triple-duplicate ACKs. – Time-out. TCP/NC substitutes the lost packets with subsequent packets; avoiding window closing.

Network Coding and Reliable Communications Group Example: No losses TCP TCP/NC sender window p 1 p 2 p 3 p1p1 p2p2 p3p3 ACK(p 1 ) ACK(p 2 ) ACK(p 3 ) p 4 p 5 p 6 p 7 p4p4 p5p5 p6p6 ACK(p 5 ) ACK(p 6 ) p7p7 ACK(p 7 ) Increment window by 1 Sliding window ΣpΣp SEEN(1) SEEN(2) SEEN(3) p 4 p 5 p 6 p 7 SEEN(4) SEEN(5) SEEN(6) SEEN(7) ΣpΣp ΣpΣp ΣpΣp ΣpΣp ΣpΣp ΣpΣp When no losses, network coding doesn’t provide benefits (erasure correction)

Network Coding and Reliable Communications Group Example: Random losses (Triple-Duplicate ACKs) TCP TCP/NC sender window p 1 p 2 p 3 p 4 p1p1 p2p2 p3p3 ACK(p 1 ) p 2 p 3 p 4 p 5 p5p5 ACK(p 1 ) Can’t increment window by 1 Partial sliding window ΣpΣp SEEN(1) SEEN(2) p 4 p 5 p 6 p 7 SEEN(4) SEEN(5) SEEN(6) ΣpΣp ΣpΣp ΣpΣp ΣpΣp ΣpΣp Prevents random losses being interpreted as congestion! Triple-duplicate ACKs! p 2 p 3 p4p4 Window closing: W ← W/2 ΣpΣp SEEN(3)ACK(p 1 ) p 7 p 8 p 9 p 10 p 11 There is a lag in the “SEEN” acks: To avoid lag, introduce redundancy! SEEN(7) ΣpΣp p 8 p 9 p 10 p 11 p 12

Network Coding and Reliable Communications Group Example: Congestion/Correlated losses (Time-outs) TCP TCP/NC sender window p 1 p 2 p 3 p 4 p1p1 p2p2 p3p3 ACK(p 1 ) p 2 p 3 p 4 p 5 ΣpΣp SEEN(1) ΣpΣp ΣpΣp Still allows congestion control while masking random losses! Time-out! p2p2 p4p4 Window closing: W ← 1 ΣpΣp p 2 p 3 p 4 p 5 Time-out! p2p2 Window closing: W ← 1 Waiting…

Network Coding and Reliable Communications Group Analysis and Simulations Based on Padhye et al.’s model (correlated losses to model congestion). End-to-end loss rate p=(1-q) 4 Degrades super-linearly If redundancy R appropriately chosen, scales with window size. R ≥1/(1-p) theoretically optimal, which we verify experimentally as well.

Network Coding and Reliable Communications Group Analysis for TCP Consider two “loss (TD or TO)” events: e.g. round j to round j+r Expected # of successfully sent packets in those r rounds (given p ) is Expected value of r is By taking into account the time-out period and exponential back-offs: TD: triple-duplicate ACKs TO: timeout Each round consists of: -Sender sends packets in its cwnd -Sender waits for ACKs -Sender receives at least one ACK for the packets sent

Network Coding and Reliable Communications Group Analysis for TCP/NC Window progresses despite “loss” events Every round, expected window growth is The expected throughput is average of per round throughput (expected window/RTT) Network coding allows out of order packets to be delivered as consecutive degrees of freedom → effectively allowing Selective ACKs (SACK)

Network Coding and Reliable Communications Group Simulations using NS-2 Max achievable throughput (per flow): 0.5 Mbps Each plot/data point is averaged over 100 simulation runs, each 1000 seconds long Erasures only at last hop, i.e. wireless End-to-end encoding There can be further throughput and energy benefits by using re-encoding assume lossless links p

Network Coding and Reliable Communications Group Throughput Gains Using TCP/NC TCP/NC is able to grow its throughput and maintain high rate despite losses. TCP’s window size is larger compared to its actual throughput – TCP sender is waiting for ACKs.

Network Coding and Reliable Communications Group Redundancy Factor R p = → 1/(1-p) ≈ Throughput increases dramatically, and the connection stabilizes when R ≥ 1.12 (which is only 1% more than 1/(1-p) )

Network Coding and Reliable Communications Group Congestion Control with TCP/NC p = , R = 1.2 Capacity = 0.9 Mbps Two connections NC0 and NC1 share the connection fairly (each 0.37 Mbps ) TCP/NC allows congestion control while masks erasure!

Network Coding and Reliable Communications Group Conclusions For TCP – random losses (e.g. wireless) have similar effect as correlated/bursty losses, since TCP treats any losses as congestion. For TCP/NC – throughput decreases proportional to loss rate; – when there are enough correlated losses, TCP/NC would time-out and reduce rate to avoid congestion. Therefore, TCP/NC is able to maintain high throughput in lossy networks; making it suitable for reliable communication in wireless networks.

Network Coding and Reliable Communications Group Extra Slides

Network Coding and Reliable Communications Group TCP using network coding Coding layer buffers packets given by TCP For every packet coming from TCP, coding layer transmits R (>1) random linear combinations of buffered packets to IP Acknowledgment: ACK a packet upon seeing it (even before it is decoded) Can do this at intermediate nodes as well in a daisy chain (tandem) network Optional feature: Re-encoding at intermediate nodes. We shall focus on no re-encoding today; end-to-end coding. [Sundararajan et al. ‘09 ‘10] Redundancy factor

Network Coding and Reliable Communications Group TCP using Network Coding