Experimental evaluation of TCP-L June 5, 2003 Stefan Alfredsson Karlstad University.

Slides:



Advertisements
Similar presentations
TCP - Part I Relates to Lab 5. First module on TCP which covers packet format, data transfer, and connection management.
Advertisements

Transmission Control Protocol (TCP)
IS333, Ch. 26: TCP Victor Norman Calvin College 1.
Hui Zhang, Fall Computer Networking TCP Enhancements.
Fundamentals of Computer Networks ECE 478/578 Lecture #20: Transmission Control Protocol Instructor: Loukas Lazos Dept of Electrical and Computer Engineering.
Transport Layer3-1 TCP. Transport Layer3-2 TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581 r full duplex data: m bi-directional data flow in same connection.
TCP 與 UDP 協定分析 第 22 組 b 陳贊羽 b 馬家驤 b 林怡賢 b 王奕棠.
Data Communications and Computer Networks Chapter 3 CS 3830 Lecture 16 Omar Meqdadi Department of Computer Science and Software Engineering University.
UDP & TCP Where would we be without them!. UDP User Datagram Protocol.
CSE551: Computer Network Review r Network Layers r TCP/UDP r IP.
1 TCP - Part I Relates to Lab 5. First module on TCP which covers packet format, data transfer, and connection management.
1 CS 4396 Computer Networks Lab Transmission Control Protocol (TCP) Part I.
TCP: Transmission Control Protocol Overview Connection set-up and termination Interactive Bulk transfer Timers Improvements.
1 Chapter 3 TCP and IP. Chapter 3 TCP and IP 2 Introduction Transmission Control Protocol (TCP) Transmission Control Protocol (TCP) User Datagram Protocol.
Transport Layer – TCP (Part1) Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF.
TELE202 Lecture 14 TCP/UDP (2) 1 Lecturer Dr Z. Huang Overview ¥Last Lecture »TCP/UDP (1) »Source: chapter 17 ¥This Lecture »TCP/UDP (2) »Source: chapter.
Copyright 1999, S.D. Personick. All Rights Reserved. Telecommunications Networking II Lecture 32 Transmission Control Protocol (TCP) Ref: Tanenbaum pp:
School of Information Technologies TCP Congestion Control NETS3303/3603 Week 9.
EEC-484/584 Computer Networks Lecture 15 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Explicit Congestion Notification ECN Tilo Hamann Technical University Hamburg-Harburg, Germany.
Transport Layer 3-1 Transport Layer r To learn about transport layer protocols in the Internet: m TCP: connection-oriented protocol m Reliability protocol.
CS 268: Wireless Transport Protocols Kevin Lai Feb 13, 2002.
CSEE W4140 Networking Laboratory Lecture 6: TCP and UDP Jong Yul Kim
17/10/2003TCP performance over ad-hoc mobile networks. 1 LCCN – summer 2003 Uri Silbershtein Roi Dayagi Nir Hasson.
EEC-484/584 Computer Networks Lecture 13 Wenbing Zhao (Part of the slides are based on Drs. Kurose & Ross ’ s slides for their Computer.
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Transport Protocols Slide 1 Transport Protocols.
TCP. Learning objectives Reliable Transport in TCP TCP flow and Congestion Control.
2: Application Layer 1 1DT066 Distributed Information System Chapter 3 Transport Layer.
Transport Layer TCP and UDP IS250 Spring 2010
Gursharan Singh Tatla Transport Layer 16-May
What Can IP Do? Deliver datagrams to hosts – The IP address in a datagram header identify a host IP treats a computer as an endpoint of communication Best.
Process-to-Process Delivery:
CIS 725 Wireless networks. Low bandwidth High error rates.
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 All.
2: Transport Layer 21 Transport Layer 2. 2: Transport Layer 22 TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581 r full duplex data: m bi-directional data.
1 Impact of transmission errors on TCP performance (Nitin Vaidya)
TCP Transport Control Protocol Information management 2 Groep T Leuven – Information department 2/35 Introduction UDP provides the connection.
TCP : Transmission Control Protocol Computer Network System Sirak Kaewjamnong.
TCP Lecture 13 November 13, TCP Background Transmission Control Protocol (TCP) TCP provides much of the functionality that IP lacks: reliable service.
CS332, Ch. 26: TCP Victor Norman Calvin College 1.
Copyright 2002, S.D. Personick. All Rights Reserved.1 Telecommunications Networking II Topic 20 Transmission Control Protocol (TCP) Ref: Tanenbaum pp:
TCP1 Transmission Control Protocol (TCP). TCP2 Outline Transmission Control Protocol.
Transport Layer3-1 Chapter 3: Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable.
Transport over Wireless Networks Myungchul Kim
Data Transmission Over Wireless Links Fan Yang
CSE679: Computer Network Review r Review of the uncounted quiz r Computer network review.
TCP-Cognizant Adaptive Forward Error Correction in Wireless Networks
1 CSE 5346 Spring Network Simulator Project.
© Jörg Liebeherr (modified by Malathi Veeraraghavan) 1 Overview Formats, Data Transfer, etc. Connection Management.
Transport Protocols.
TCP continued. Discussion – TCP Throughput TCP will most likely generate the saw tooth type of traffic. – A rough estimate is that the congestion window.
1 Transport Layer: Basics Outline Intro to transport UDP Congestion control basics.
1 Advanced Transport Protocol Design Nguyen Multimedia Communications Laboratory March 23, 2005.
McGraw-Hill Chapter 23 Process-to-Process Delivery: UDP, TCP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
CSEN 404 Transport Layer II Amr El Mougy Lamia AlBadrawy.
11 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
Computer Networks 1000-Transport layer, TCP Gergely Windisch v spring.
Computer Networking Lecture 16 – Reliable Transport.
1 Transmission Control Protocol (TCP) RFC: Introduction The TCP is intended to provide a reliable process-to-process communication service in a.
DMET 602: Networks and Media Lab Amr El Mougy Yasmeen EssamAlaa Tarek.
DMET 602: Networks and Media Lab
Introduction to Networks
TCP.
Introduction of Transport Protocols
Chapter 5 Transport Layer Introduction
TCP - Part I Relates to Lab 5. First module on TCP which covers packet format, data transfer, and connection management.
Process-to-Process Delivery: UDP, TCP
Review of Internet Protocols Transport Layer
Transport Layer 9/22/2019.
Impact of transmission errors on TCP performance
Presentation transcript:

Experimental evaluation of TCP-L June 5, 2003 Stefan Alfredsson Karlstad University

Outline ● Motivation ● TCP-L ● Experiment environment ● Experiment results ● Future work

Motivation (I) ● We want to improve the performance of TCP over unreliable wireless networks ● Unreliability is due to the nature of radio communication (i.e. fading, interference, path loss), and causes bit errors ● Bit errors are reduced with modulation, coding, link level retransmissions ● TCP was designed for wired links, so losses due to bit errors are interpreted as sign of congestion, leading to bad performance

Van Jacobson's Congestion Control "Packets get lost for two reasons: they are damaged in transit, or the network is congested and somewhere on the path there was insufficient buffer capacity. On most network paths, loss due to damage is rare (<< 1%) so it is probable that a packet loss is due to congestion in the network." [Jacobson88, Congestion Avoidance and Control]

Motivation (II) ● Idea from the PRTP protocol: Some applications do not need full reliability, and may tolerate errors to an extent – Make use of damaged data instead of doing retransmissions – Improves performance by avoiding falsely triggered congestion control – Improve spectral efficiency by avoiding retransmissions of mostly identical data – Receiver will accept and acknowledge data as if it was received correctly

TCP-L (I) ● Receiver-only modification of TCP to accept segments with bit errors ● Application knows if it can accept errors, and informs the TCP-L stack accordingly ● Experiments have been performed which show large gains in throughput performance compared to regular TCP

TCP-L (II) - recovery overview

TCP-L (III) ● TCP checksum is used to detect errors, but location is unknown (hdr vs payload) ● By examining the TCP header and making some assumptions, the sensitive part is narrowed from 20 byte to 4 ● After header recovery, data is delivered to application which then has to deal with potential errors in the datastream

Legend: blue fields are constant, orange fields "dont care" Assumptions: ● Options are not used (contant header length) ● Only packets with data are handled (affects RST, SYN) ● Traffic is assumed to flow mainly to the receiver ● Ack seq is cumulative – reset to the last correctly received ack no. ● URG must be handled by appl, and is mostly used for terminal traffic ● Adv. Window can be "calculated". PSH + FIN is safe to reset to zero

Improving the recovery ● "Soft information" means feedback from link layer about decoding process ● Use soft info to get a hint of where errors are located, how severe they are ● How hard should we try to recover? ● Can give a hint of how badly a packet is damaged – appl could then set levels of acceptable damage

Experiment Environment sender gateway receiver ● Gateway emulates last hop of wireless link – Limits bandwidth, increases delay – Creates errors in packets

Error Creation ● Gateway uses a modified version of FreeBSD/dummynet ● It is configured with a "loss pattern", which is XOR'ed with the packets ● Loss pattern is generated offline and fed to dummynet at setup time.

Experiment parameters (I) ● Parameters set to emulate ”generic” wireless links ● Link is defined by bandwidth and delay parameters (”link profile”) ● Bit error distribution depends on coding and interleaving; for these experiments, independent and random bit errors are used (”loss profile”) ● Different TCP MTU’s have been used to see if/how this affects throughput

Experiment parameters (II) ● Two link profiles were used; – 384kbit/s, 70ms delay – 2Mbit/s, 30ms delay ● Five loss profiles were used; – Bit error rates ranging from … – => 0-10 percent packet errors ● Two MTU sizes were used – 576 and 1500 bytes

Results; 384kbit/s, MTU 576 ~10% ~4.5% ~2.9% ~2.0%

Results; 384kbit/s, MTU 1500

Results; 2Mbit/s, MTU 576

Results; 2Mbit/s, MTU 1500

Future Work: short term ● Present TCP-L paper at IST Mobile Summit 2003 next week ● Examine why some experiments performed very poorly (120 sec timeout?) ● Determine the impact of burstiness factor

Future Work: longer term ● Integrating soft information to improve decoding ● Experiment with a real applications – JPEG2000? ● Compare to other TCP versions (Westwood?) ● Handle IP header as well? ● Persuade link manufacturer to export soft info and pass damaged data ;) ● Run with scheduler/emulator from Uppsala

Questions?