588 Section 3 Neil Spring April 20, 1999.

Slides:



Advertisements
Similar presentations
Laboratório de Teleprocessamento e Redes1 Unix Network Programming Prof. Nelson Fonseca
Advertisements

Error control Simplest: Cyclic Redundancy Checks - CRC Detects  all single bit errors  almost all 2-bit errors  any odd number of errors  all bursts.
Transport Layer – TCP (Part2) Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing, UNF.
IS333, Ch. 26: TCP Victor Norman Calvin College 1.
BZUPAGES.COM 1 User Datagram Protocol - UDP RFC 768, Protocol 17 Provides unreliable, connectionless on top of IP Minimal overhead, high performance –No.
Performance Improvement of TCP in Wireless Cellular Network Based on Acknowledgement Control Osaka University Masahiro Miyoshi, Masashi Sugano, Masayuki.
Error control An Engineering Approach to Computer Networking.
TDC365 Spring 2001John Kristoff - DePaul University1 Internetworking Technologies Transmission Control Protocol (TCP)
CMPE 150 – Winter 2009 Lecture 17 March 5, 2009 P.E. Mantey.
Transport Layer 3-1 Transport Layer r To learn about transport layer protocols in the Internet: m TCP: connection-oriented protocol m Reliability protocol.
Computer Networks Transport Layer. Topics F Introduction  F Connection Issues F TCP.
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Transport Protocols Slide 1 Transport Protocols.
Reliable Transport Layers in Wireless Networks Mark Perillo Electrical and Computer Engineering.
1 K. Salah Module 6.1: TCP Flow and Congestion Control Connection establishment & Termination Flow Control Congestion Control QoS.
TCP. Learning objectives Reliable Transport in TCP TCP flow and Congestion Control.
Transport Layer TCP and UDP IS250 Spring 2010
21.1 Chapter 21 Network Layer: Address Mapping, Error Reporting, and Multicasting Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction.
1 Chapter Internetworking Part 4 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
1 Transport Layer Computer Networks. 2 Where are we?
CIS 725 Wireless networks. Low bandwidth High error rates.
Spring 2000Nitin BahadurAdvanced Computer Networks A Comparison of Mechanisms for Improving TCP Performance over Wireless Links By: Hari B., Venkata P.
COMT 4291 Communications Protocols and TCP/IP COMT 429.
3: Transport Layer3b-1 TCP: Overview RFCs: 793, 1122, 1323, 2018, 2581 r full duplex data: m bi-directional data flow in same connection m MSS: maximum.
TCOM 509 – Internet Protocols (TCP/IP) Lecture 04_b Transport Protocols - TCP Instructor: Dr. Li-Chuan Chen Date: 09/22/2003 Based in part upon slides.
Wireless TCP Prasun Dewan Department of Computer Science University of North Carolina
1 Transport Protocols (continued) Relates to Lab 5. UDP and TCP.
26-TCP Dr. John P. Abraham Professor UTPA. TCP  Transmission control protocol, another transport layer protocol.  Reliable delivery  Tcp must compensate.
Section 5: The Transport Layer. 5.2 CS Computer Networks John Mc Donald, Dept. of Computer Science, NUI Maynooth. Introduction In the previous section.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 2.5 Internetworking Chapter 25 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
TCP1 Transmission Control Protocol (TCP). TCP2 Outline Transmission Control Protocol.
Transport Layer Moving Segments. Transport Layer Protocols Provide a logical communication link between processes running on different hosts as if directly.
Transport over Wireless Networks Myungchul Kim
Chapter 12 Transmission Control Protocol (TCP)
Wireless TCP. References r Hari Balakrishnan, Venkat Padmanabhan, Srinivasan Seshan and Randy H. Katz, " A Comparison of Mechanisms for Improving TCP.
1 TCP - Part II Relates to Lab 5. This is an extended module that covers TCP data transport, and flow control, congestion control, and error control in.
Chapter 24 Transport Control Protocol (TCP) Layer 4 protocol Responsible for reliable end-to-end transmission Provides illusion of reliable network to.
1 CS 4396 Computer Networks Lab TCP – Part II. 2 Flow Control Congestion Control Retransmission Timeout TCP:
1 Computer Networks Congestion Avoidance. 2 Recall TCP Sliding Window Operation.
Transport Protocols.
IP1 The Underlying Technologies. What is inside the Internet? Or What are the key underlying technologies that make it work so successfully? –Packet Switching.
IT 424 Networks2 IT 424 Networks2 Ack.: Slides are adapted from the slides of the book: “Computer Networking” – J. Kurose, K. Ross Chapter 3: Transport.
McGraw-Hill Chapter 23 Process-to-Process Delivery: UDP, TCP Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display.
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
11 CS716 Advanced Computer Networks By Dr. Amir Qayyum.
TCP over Wireless PROF. MICHAEL TSAI 2016/6/3. TCP Congestion Control (TCP Tahoe) Only ACK correctly received packets Congestion Window Size: Maximum.
Advanced Computer Networks
1 Chapter 24 Internetworking Part 4 (Transport Protocols, UDP and TCP, Protocol Port Numbers)
UDP TCP.
DMET 602: Networks and Media Lab
Introduction to TCP/IP networking
Introduction to Networks
5. End-to-end protocols (part 1)
Process-to-Process Delivery, TCP and UDP protocols
TCP.
PART 5 Transport Layer Computer Networks.
Ad-hoc Transport Layer Protocol (ATCP)
Internet and Intranet Protocols and Applications
TCP - Part I Karim El Defrawy
Transport Layer Unit 5.
Process-to-Process Delivery:
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.
CS4470 Computer Networking Protocols
Dr. John P. Abraham Professor UTPA
Lecture 12 Internet Protocols Internet resource allocation and QoS
Dr. John P. Abraham Professor UTPA
Lecture 18 – More TCP & Congestion Control
COMP/ELEC 429/556 Fall 2017 Homework #2
Transportation Layer.
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
Presentation transcript:

588 Section 3 Neil Spring April 20, 1999

Schedule Homework Post-mortem tcpdump (context) two, eight, nine tcpdump (context) Balakrishnan’s link strategies Programming Assignment Questions

Late Policy Seven slip days Yes, discussing answers to the homework now conflicts with having slip days. There’s probably a good solution. The benefit you’ll get by waiting until after I’ve discussed these problems is at most 25% / 3 homeworks / 3 problems, or 2.8% of your grade. Be honorable.

Homework Question #2 The user provides an 8 bit flag aSbc; whenever you find S in the data, add an extra bit b’ after it. Fails on {a,S,b,c}= {0, 11011, 1, 1} Where 0110111111 is in the user stream Transformed to 01101101111 Other solutions possible

Homework Question #8 Common answers: TCP uses a 16 bit checksum per segment, typically 576 bytes. Is link level error correction really necessary? What is the maximum link layer bit error rate you would be willing to rely on TCP to catch? Defend your answer. Common answers: 1/576 1/(288*8) it depends. 2-16 [IEN 45]=10-5 CRC is better Checksum is: easy to compute calculated by adding the words. just a backup. vulnerable to bit exchanges.

Homework Question #8 Some errors will make it past checksum The most likely is the 2 bit error 0->1, 1->0 Has to happen in the right place, within the same packet. (Bits in packet) * Link Err2 * ½ * 16/162 P(undetected err) = Link Err2 * Pkt size2 / 64 Undetected = 0.01% -> 1/57,600 bits 2

Homework Question #9 Internet supports “probe” packets. Routers will reply when a packet’s hop count reaches 0. Explain how a source can use the elapsed round trip time of these packets to infer the bandwidth and delay of every link between the source and the destination. First, show how it can be done for the first hop, then recursively. Assume symmetry.

Homework Question #9 Pictures from Van Jacobson’s Pathchar talk ftp://ftp.ee.lbl.gov/pathchar/

Homework Question #9 ICMP response time slide

Homework Question #9 Delay is unloaded RTT. T (Size) = Delay + Size / Bandwidth T(big) - T(small) = Delay - Delay + big /BW - small/BW T(big) - T(small) = big/bw-small/bw BW = (big-small) / (T(big) - T(small)) Extend with increasing TTL as in traceroute.

The real world of Question #9 Queues don’t delay uniformly

The real world of Question #9 Take the minimum of samples

tcpdump Tool used to watch packets on the network. Network interface into “promiscuous mode” doesn’t filter out packets not destined for its hardware address. Can get timing information, retransmission rates, other protocol stuff

Connection Overview Startup: SYN, SYN/ACK, ACK Teardown: FIN, ACK, FIN, ACK In between: segments and acknowledgments

Tcpdump (example) Web transfer, Sequence numbers (normalized), MSS negotiation Packets include acks, my timer is poor. 15:54:08.003367 c16.1042 > poplar.webcache: S 10715744:10715744(0) win 8192 <mss 1460,nop,wscale 0,nop,nop,timestamp[|tcp]> (DF) [tos 0x3] 15:54:08.003367 poplar.webcache > c16.1042: S 2425854216:2425854216(0) ack 10715745 win 16352 <mss 1460> 15:54:08.003367 c16.1042 > poplar.webcache: . ack 1 win 8760 (DF) [tos 0x3] 15:54:08.013366 c16.1042 > poplar.webcache: P 1:366(365) ack 1 win 8760 (DF) [tos 0x3] 15:54:08.013366 poplar.webcache > c16.1042: P 1:1461(1460) ack 366 win 16352 (DF) [tos 0x3] 15:54:08.013366 poplar.webcache > c16.1042: . 1461:2921(1460) ack 366 win 16352 (DF) [tos 0x3] 15:54:08.013366 c16.1042 > poplar.webcache: . ack 2921 win 8760 (DF) [tos 0x3] 15:54:08.023366 poplar.webcache > c16.1042: . 2921:4381(1460) ack 366 win 16352 [tos 0x3] 15:54:08.023366 poplar.webcache > c16.1042: . 4381:5841(1460) ack 366 win 16352 [tos 0x3] 15:54:08.023366 poplar.webcache > c16.1042: . 5841:7301(1460) ack 366 win 16352 [tos 0x3] 15:54:08.023366 c16.1042 > poplar.webcache: . ack 5841 win 8760 (DF) [tos 0x3] 15:54:08.023366 poplar.webcache > c16.1042: . 7301:8761(1460) ack 366 win 16352 [tos 0x3] 15:54:08.023366 c16.1042 > poplar.webcache: . ack 8761 win 8760 (DF) [tos 0x3] 15:54:08.023366 poplar.webcache > c16.1042: P 8761:10129(1368) ack 366 win 16352 (DF) [tos 0x3] 15:54:08.153362 c16.1042 > poplar.webcache: . ack 10129 win 7392 (DF) [tos 0x3] 15:54:24.012817 poplar.webcache > c16.1042: F 10129:10129(0) ack 366 win 16352 [tos 0x3] 15:54:24.012817 c16.1042 > poplar.webcache: . ack 10130 win 7392 (DF) [tos 0x3]

Tcpdump (example #2) Timeout, Sequence numbers, Window sizes, TTL tcpdump: listening on eth0 11:34:08.368899 c16.1031 > poplar.webcache: S 925773:925773(0) win 8192 <mss 1460,nop,wscale 0,nop,nop,timestamp[|tcp]> (DF) [tos 0x6] (ttl 128, id 14848) 11:34:08.368899 poplar.webcache > c16.1031: S 3659357311:3659357311(0) ack 925774 win 16352 <mss 1460> (ttl 64, id 5350) 11:34:08.368899 c16.1031 > poplar.webcache: . ack 1 win 8760 (DF) [tos 0x6] (ttl 128, id 15360) 11:34:08.368899 c16.1031 > poplar.webcache: P 1:297(296) ack 1 win 8760 (DF) [tos 0x6] (ttl 128, id 15616) 11:34:08.368899 poplar.webcache > c16.1031: P 1:181(180) ack 297 win 16352 (DF) [tos 0x6] (ttl 64, id 5352) 11:34:08.388899 c16.1031 > poplar.webcache: P 297:654(357) ack 181 win 8580 (DF) [tos 0x6] (ttl 128, id 16128) 11:34:08.388899 poplar.webcache > c16.1031: P 181:360(179) ack 654 win 16352 (DF) [tos 0x6] (ttl 64, id 5353) 11:34:08.588892 poplar.webcache > c16.1031: P 181:360(179) ack 654 win 16352 (DF) [tos 0x6] (ttl 64, id 5354) 11:34:08.588892 c16.1031 > poplar.webcache: . ack 360 win 8401 (DF) [tos 0x6] (ttl 128, id 16640) 11:34:25.508314 poplar.webcache > c16.1031: F 360:360(0) ack 654 win 16352 [tos 0x6] (ttl 64, id 5375) 11:34:25.508314 c16.1031 > poplar.webcache: . ack 361 win 8401 (DF) [tos 0x6] (ttl 128, id 17152) 11:34:28.488212 c16.1031 > poplar.webcache: R 926427:926427(0) win 0 (DF) [tos 0x6] (ttl 128, id 17408)

Wireless Stuff Problems: TCP congestion control affects performance Loss doesn’t necessarily mean congestion Handoff between cells affects ability to keep state in network intermittent connectivity TCP congestion control affects performance In order transfer (single hop wireless links) means duplicate acks are really useful.

The Snoop Protocol Link-layer protocol TCP aware Snoop agent software module at the base station Suppresses duplicate ACKs Retransmits lost packets

SACKs and SMARTs SACK SMART range of acknowledged blocks more information passed SMART it’s a sort of SACK which segment caused the acknowledgement less overhead

Conclusions we already knew Selective Acknowledgements (SACK) Deal better with loss Can be end-to-end Split connections Isolate the sender from the lossy link Violate the protocol a bit.