RCRT:Rate-Controlled Reliable Transport Protocol for Wireless Sensor Networks

Similar documents
UNIT IV -- TRANSPORT LAYER

Answers to Sample Questions on Transport Layer

Lecture 14: Congestion Control"

CS268: Beyond TCP Congestion Control

Lecture 14: Congestion Control"

6.033 Spring 2015 Lecture #11: Transport Layer Congestion Control Hari Balakrishnan Scribed by Qian Long

Bandwidth Allocation & TCP

Lecture 21: Congestion Control" CSE 123: Computer Networks Alex C. Snoeren

Circuit Breakers for Multimedia Congestion Control

Transport Protocols & TCP TCP

TCP. CSU CS557, Spring 2018 Instructor: Lorenzo De Carli (Slides by Christos Papadopoulos, remixed by Lorenzo De Carli)

TCP OVER AD HOC NETWORK

Congestion control in TCP

Page 1. Review: Internet Protocol Stack. Transport Layer Services. Design Issue EEC173B/ECS152C. Review: TCP

Improving Reliable Transport and Handoff Performance in Cellular Wireless Networks

Page 1. Review: Internet Protocol Stack. Transport Layer Services EEC173B/ECS152C. Review: TCP. Transport Layer: Connectionless Service

Assignment 7: TCP and Congestion Control Due the week of October 29/30, 2015

The Transport Layer Reliability

CSE/EE 461 Lecture 16 TCP Congestion Control. TCP Congestion Control

Improving the Robustness of TCP to Non-Congestion Events

Exercises TCP/IP Networking With Solutions

Lecture 15: TCP over wireless networks. Mythili Vutukuru CS 653 Spring 2014 March 13, Thursday

Random Early Detection (RED) gateways. Sally Floyd CS 268: Computer Networks

Congestion Control in TCP

Increase-Decrease Congestion Control for Real-time Streaming: Scalability

Multiple unconnected networks

CMPE150 Midterm Solutions

Chapter III. congestion situation in Highspeed Networks

Reliable Transport I: Concepts and TCP Protocol

TCP: Flow and Error Control

TCP Congestion Control

Impact of transmission errors on TCP performance. Outline. Random Errors

Question 1 (6 points) Compare circuit-switching and packet-switching networks based on the following criteria:

Reliable Transport II: TCP and Congestion Control

CS 556 Advanced Computer Networks Spring Solutions to Midterm Test March 10, YOUR NAME: Abraham MATTA

Hybrid Control and Switched Systems. Lecture #17 Hybrid Systems Modeling of Communication Networks

COMP/ELEC 429/556 Introduction to Computer Networks

Mobile Transport Layer Lesson 02 TCP Data Stream and Data Delivery

CRC. Implementation. Error control. Software schemes. Packet errors. Types of packet errors

CMSC 417. Computer Networks Prof. Ashok K Agrawala Ashok Agrawala. October 30, 2018

Communication Networks

Lecture 7: Flow Control"

8. TCP Congestion Control

Transport Protocols and TCP: Review

Transport layer. UDP: User Datagram Protocol [RFC 768] Review principles: Instantiation in the Internet UDP TCP

Congestion Control. Tom Anderson

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

Transport layer. Review principles: Instantiation in the Internet UDP TCP. Reliable data transfer Flow control Congestion control

Fall 2012: FCM 708 Bridge Foundation I

Topics. TCP sliding window protocol TCP PUSH flag TCP slow start Bulk data throughput

Congestion Control in TCP

Chapter 13 TRANSPORT. Mobile Computing Winter 2005 / Overview. TCP Overview. TCP slow-start. Motivation Simple analysis Various TCP mechanisms

Congestion Control. COSC 6590 Week 2 Presentation By Arjun Chopra, Kashif Ali and Mark Obsniuk

Mobile Communications Chapter 9: Mobile Transport Layer

CS519: Computer Networks. Lecture 5, Part 1: Mar 3, 2004 Transport: UDP/TCP demux and flow control / sequencing

Outline 9.2. TCP for 2.5G/3G wireless

Lecture 5: Flow Control. CSE 123: Computer Networks Alex C. Snoeren

Transport Layer Protocols TCP

The Transmission Control Protocol (TCP)

Wireless TCP Performance Issues

Congestion Control for High Bandwidth-delay Product Networks

ECE697AA Lecture 3. Today s lecture

Applied Networks & Security

CS 5520/ECE 5590NA: Network Architecture I Spring Lecture 13: UDP and TCP

CS321: Computer Networks Congestion Control in TCP

EECS 122, Lecture 19. Reliable Delivery. An Example. Improving over Stop & Wait. Picture of Go-back-n/Sliding Window. Send Window Maintenance

CSE 4215/5431: Mobile Communications Winter Suprakash Datta

Computer Networking. Reliable Transport. Reliable Transport. Principles of reliable data transfer. Reliable data transfer. Elements of Procedure

Congestion Control for High Bandwidth-delay Product Networks. Dina Katabi, Mark Handley, Charlie Rohrs

Congestion Control in TCP

Congestion Control in Communication Networks

Recap. More TCP. Congestion avoidance. TCP timers. TCP lifeline. Application Presentation Session Transport Network Data Link Physical

Lecture 3: The Transport Layer: UDP and TCP

CSE 123A Computer Networks

CS 268: Lecture 7 (Beyond TCP Congestion Control)

FDA: A Novel Base Station Flow Control Scheme for TCP over Heterogeneous Networks

Department of EECS - University of California at Berkeley EECS122 - Introduction to Communication Networks - Spring 2005 Final: 5/20/2005

CS419: Computer Networks. Lecture 10, Part 3: Apr 13, 2005 Transport: TCP performance

Chapter 3: Transport Layer Part A

Communication Networks

ETSF10 Internet Protocols Transport Layer Protocols

CS644 Advanced Networks

Congestion / Flow Control in TCP

Equation-Based Congestion Control for Unicast Applications. Outline. Introduction. But don t we need TCP? TFRC Goals

Appendix B. Standards-Track TCP Evaluation

Delay Constrained ARQ Mechanism for MPEG Media Transport Protocol Based Video Streaming over Internet

Mobile Communications Chapter 9: Mobile Transport Layer

Mobile Transport Layer

Flow Control. Flow control problem. Other considerations. Where?

Basic Reliable Transport Protocols

ECE 610: Homework 4 Problems are taken from Kurose and Ross.

There are 10 questions in total. Please write your SID on each page.

Transport Protocols Reading: Sections 2.5, 5.1, and 5.2

Review problems (for no credit): Transport and Network Layer

F-RTO: An Enhanced Recovery Algorithm for TCP Retransmission Timeouts

Guide To TCP/IP, Second Edition UDP Header Source Port Number (16 bits) IP HEADER Protocol Field = 17 Destination Port Number (16 bit) 15 16

Transport Layer Congestion Control

Outline Computer Networking. Functionality Split. Transport Protocols

Lecture 15: Transport Layer Congestion Control

Reliable Transport II: TCP and Congestion Control

Transcription:

RCRT:Rate-Controlled Reliable Transport Protocol for Wireless Sensor Networks JEONGYEUP PAEK, RAMESH GOVINDAN University of Southern California 1

Applications that require the transport of high-rate data have got a little attention so far. To support these applications we need to solve two problems: Limited radio bandwidth. Loss-intolerant. Also, protocols designed for such end-to-end delivery of voluminous data can result in poor network performance. Congestion in the network can lead to serious latency and eventually will lead to packet losses as seen in the graph shown below: 2

We can see here more than half the packets were delivered more than an hour after they were injected into the network. 3

Why is RCRT protocol different than the already existing ones? All the protocols studied so far either deal with reliable end-to-end delivery of data OR discuss a congestion control mechanism without ensuring end-to-end reliable delivery. The protocol demands the network to be able to support multiple concurrent streams from each sensor node. RCRT protocol separates the capacity allocation policy to each node from the underlying transport mechanisms. 4

END-to-END Delivery: Basic approach where the sink discovers missing packets and explicitly requests them from the sensors. CONGESTION CONTROL MECHANISM: Sink decides that the network is congested if the time to repair a loss is significantly higher than a round-trip time. 5

Six Goals which guide the design of RCRT protocol: Reliable end-to-end transmission. Network Efficiency. Support for concurrent applications. Flexibility. Minimal sensor functionality. Robustness. 6

Three distinct Components which makes RCRT different from other protocols:- 1. Congestion detection component: observes packet loss and recovery dynamics and decided on congestion. 3. Rate Adaptation component: estimates the total sustainable traffic in the network. 4. Rate Allocation component: adjusts the overall rate in agreement with the allocation policy P j for the sink j. 7

End-to-End Reliability. The design leverages the fact that the sink has enough memory to keep the track of all missing packets. The sink keeps track of sequence number of received packets and a gap in this sequence number indicates packet loss. NACKs (which avoid ACK implosion and thus reduces overhead)are used to indicate the respective sensor node of the loss of packets. 8

- The source node overwrites its retransmit buffer once it receives cumulative ACKs in the feedback packet. - The sink also maintains a list of out-of-order packets for each flow to provide in-order delivery of data packets to the application. 9

Congestion Detection: Ideally 1 RTT should be the time required to recover a loss. So if it takes more than few RTTs to recover the losses, then network is more likely to be congested. Hence, expected number of packets during one RTT is r(i) * RTT(i). So if the sum of out-of-order packet list and the missing packet list at the sink is equal to the above product, it means 1 RTT has passed since the first recovered loss. 10

Rate Adaptation: RCRT is unique in this aspect as it adjusts the total aggregate rate of all the flows as observed by the sink rather than the rate of a single flow. This makes RCRT protocol independent of the number of flows and less oscillatory when there are a large number of flows. RCRT protocol implements rate adaptation only after waiting for 3 RTT + 3(current inter-packet interval) so that the congestion measures at the sink are appropriately updated. 11

12

Rate Allocation: RCRT s rate allocation component assigns rates to each flow in keeping with the rate allocation policy such that the individual flow rates sum upto R(t). Also each node expresses a desired rate that we call its demand and the policy allocates rates to each node proportional to its demand. 13

Feedback packets: Feedback packet contains assigned rate r, a list of NACKed sequence numbers, a cumulative ACK and the RTTavg value for that node. Due to increase in overhead, feedback packets are sent only on one of the following conditions Detection of one or more missing packets. The node is sending at a rate different from the assigned rate. A duplicate packet with an already acknowledged sequence number has been received. A feedback packet has been explicitly requested by the node (generally happens after half of the retransmit queue is filled). 14

RCRT tackles the problem of detecting the loss of last packet during connection tear-down where the sender and the sink synchronize their sequence numbers. RCRT adaptation to the network scenario will be delayed in case of bursty losses and loss of consecutive feedback packets but will eventually control the situation as it will receive one packet from atleast one of the congested nodes. 15

FUTURE WORK RCRT protocol supports multiple concurrent applications but coordination between rate allocation across multiple sinks is yet to be taken care of. RCRT adjusts the total flow in the network and hence unconstrained bottleneck regions also get affected. As RCRT makes decisions on RTT timescales, the convergence time could be large in case of networks with high maximum RTT. Also since each of the nodes experience congestion for different fractions of their lifetimes, demand proportional allocation policy used by RCRT is possible but difficult to implement on a long term basis which is left to future work. 16

Thank You. 17