2 TCP-like Design. Answer



Similar documents
Data Networks Summer 2007 Homework #3

CSE 473 Introduction to Computer Networks. Exam 2 Solutions. Your name: 10/31/2013

First Midterm for ECE374 03/24/11 Solution!!

COMP 361 Computer Communications Networks. Fall Semester Midterm Examination

TCP over Multi-hop Wireless Networks * Overview of Transmission Control Protocol / Internet Protocol (TCP/IP) Internet Protocol (IP)

Lecture 15: Congestion Control. CSE 123: Computer Networks Stefan Savage

TCP in Wireless Mobile Networks

Homework 2 assignment for ECE374 Posted: 02/21/14 Due: 02/28/14

TCP over Wireless Networks

Professor: Ian Foster TAs: Xuehai Zhang, Yong Zhao. Winter Quarter.

First Midterm for ECE374 03/09/12 Solution!!

TCP and Wireless Networks Classical Approaches Optimizations TCP for 2.5G/3G Systems. Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme

Mobile Communications Chapter 9: Mobile Transport Layer

Lecture Objectives. Lecture 07 Mobile Networks: TCP in Wireless Networks. Agenda. TCP Flow Control. Flow Control Can Limit Throughput (1)

La couche transport dans l'internet (la suite TCP/IP)

Improving the Performance of TCP Using Window Adjustment Procedure and Bandwidth Estimation

Prefix AggregaNon. Company X and Company Y connect to the same ISP, and they are assigned the prefixes:

Application Level Congestion Control Enhancements in High BDP Networks. Anupama Sundaresan

ECSE-6600: Internet Protocols Exam 2

Outline. TCP connection setup/data transfer Computer Networking. TCP Reliability. Congestion sources and collapse. Congestion control basics

Names & Addresses. Names & Addresses. Hop-by-Hop Packet Forwarding. Longest-Prefix-Match Forwarding. Longest-Prefix-Match Forwarding

Simulation-Based Comparisons of Solutions for TCP Packet Reordering in Wireless Network

A Survey on Congestion Control Mechanisms for Performance Improvement of TCP

Congestions and Control Mechanisms n Wired and Wireless Networks

Chapter 6 Congestion Control and Resource Allocation

First Midterm for ECE374 02/25/15 Solution!!

Research of TCP ssthresh Dynamical Adjustment Algorithm Based on Available Bandwidth in Mixed Networks

High-Speed TCP Performance Characterization under Various Operating Systems

Final for ECE374 05/06/13 Solution!!

TCP for Wireless Networks

Computer Networks. Chapter 5 Transport Protocols

TCP/IP Optimization for Wide Area Storage Networks. Dr. Joseph L White Juniper Networks

Applications. Network Application Performance Analysis. Laboratory. Objective. Overview

15-441: Computer Networks Homework 2 Solution

EINDHOVEN UNIVERSITY OF TECHNOLOGY Department of Mathematics and Computer Science

This sequence diagram was generated with EventStudio System Designer (

Transport Layer Protocols

TCP Westwood for Wireless

Computer Networks - CS132/EECS148 - Spring

CSE331: Introduction to Networks and Security. Lecture 9 Fall 2006

Chapter 5. Transport layer protocols

Improving Effective WAN Throughput for Large Data Flows By Peter Sevcik and Rebecca Wetzel November 2008

TCP loss sensitivity analysis ADAM KRAJEWSKI, IT-CS-CE

La couche transport dans l'internet (la suite TCP/IP)

TCP in Wireless Networks

SELECTIVE-TCP FOR WIRED/WIRELESS NETWORKS

STUDY OF TCP VARIANTS OVER WIRELESS NETWORK

SJBIT, Bangalore, KARNATAKA

A Study on TCP Performance over Mobile Ad Hoc Networks

EFFECT OF TRANSFER FILE SIZE ON TCP-ADaLR PERFORMANCE: A SIMULATION STUDY

Access Control: Firewalls (1)

Computer Networks Homework 1

TCP/IP Fundamentals. OSI Seven Layer Model & Seminar Outline

Visualizations and Correlations in Troubleshooting

TCP, Active Queue Management and QoS

B-2 Analyzing TCP/IP Networks with Wireshark. Ray Tompkins Founder of Gearbit

Homework 3 assignment for ECE374 Posted: 03/13/15 Due: 03/27/15

Network Friendliness of Mobility Management Protocols

Student, Haryana Engineering College, Haryana, India 2 H.O.D (CSE), Haryana Engineering College, Haryana, India

CS268 Exam Solutions. 1) End-to-End (20 pts)

Homework 2 assignment for ECE374 Posted: 02/20/15 Due: 02/27/15

International Journal of Scientific & Engineering Research, Volume 6, Issue 7, July ISSN

Sample Network Analysis Report

Computer Networks - CS132/EECS148 - Spring

EECS 489 Winter 2010 Midterm Exam

High Speed Internet Access Using Satellite-Based DVB Networks

Effects of Filler Traffic In IP Networks. Adam Feldman April 5, 2001 Master s Project

A Congestion Control Algorithm for Data Center Area Communications

A Survey: High Speed TCP Variants in Wireless Networks

TCP Adaptation for MPI on Long-and-Fat Networks

ICOM : Computer Networks Chapter 6: The Transport Layer. By Dr Yi Qian Department of Electronic and Computer Engineering Fall 2006 UPRM

Analytic Models for the Latency and Steady-State Throughput of TCP Tahoe, Reno and SACK

Answer: that dprop equals dtrans. seconds. a) d prop. b) d trans

CSE 123: Computer Networks

Transport layer issues in ad hoc wireless networks Dmitrij Lagutin,

TCP PACKET CONTROL FOR WIRELESS NETWORKS

TCP/IP Over Lossy Links - TCP SACK without Congestion Control

THE UNIVERSITY OF AUCKLAND

ALTHOUGH it is one of the first protocols

APPENDIX 1 USER LEVEL IMPLEMENTATION OF PPATPAN IN LINUX SYSTEM

Per-Flow Queuing Allot's Approach to Bandwidth Management

Low-rate TCP-targeted Denial of Service Attack Defense

TCP/IP In Cellular Networks

Early Binding Updates and Credit-Based Authorization A Status Update

Homework Assignment #3 Due 11/20 at 5:00pm EE122 Fall 2012

AN IMPROVED SNOOP FOR TCP RENO AND TCP SACK IN WIRED-CUM- WIRELESS NETWORKS

TCP/IP Networking for Wireless Systems. Integrated Communication Systems Group Ilmenau University of Technology

How do I get to

The Problem with TCP. Overcoming TCP s Drawbacks

Why Congestion Control. Congestion Control and Active Queue Management. Max-Min Fairness. Fairness

[Prof. Rupesh G Vaishnav] Page 1

Transcription:

Homework 3 1 DNS Suppose you have a Host C, a local name server L, and authoritative name servers A root, A com, and A google.com, where the naming convention A x means that the name server knows about the name zone x. A x is a variable and NOT a hostname. A root is a root name server known to L, with IP address 198.41.0.4. Assume that all name servers initially have nothing in their caches. a) Using the resource records below, provide the hostnames and IP addresses for A com and A google.com b) List the sequence of DNS queries and corresponding resource records that are exchanged when C wants to lookup the address for www.google.com. When a name server A x contacts A y, please specify the IP address for A y. The following represents the level of detail we are looking for: i) A x contacts A y at 1.2.3.4 to resolve www.foobar.com ii) A y returns resource records R 1, R 2,..., R n. c) Client C performs a lookup for mail.google.com immediately after the previous request. Assume all records have long TTLs. List the sequence of DNS queries and corresponding resource records exchanged during the lookup. 1

Name Server Variable A root A root A com A com A google.com A google.com Resource Record {com, a.gtld-servers.net, NS, IN} {a.gtld-servers.net, 192.5.6.30, A, IN} {google.com, ns1.google.com, NS, IN} {ns1.google.com, 216.239.32.10, A, IN} {www.google.com, 66.102.7.104, A, IN} {mail.google.com, 66.102.7.83, A, IN} Answer a) A com : hostname=a.gtld-servers.net, IP address=192.5.6.30 A google.com : hostname=ns1.google.com, IP address=216.239.32.10 Notes: Many people missed these because they assumed that the hostnames and IP addresses merely corresponded to the resource record listed next to the variable. b) c) 1) C queries L to resolve www.google.com 2) L queries A root at 198.41.0.4 to resolve www.google.com. 3) A root returns {com, a.gtld-servers.net, NS, IN} and {a.gtld-servers.net, 192.5.6.30, A, IN}. 4) L queries A com at 192.5.6.30 to resolve www.google.com 5) A com returns {google.com, ns1.google.com, NS, IN} and {ns1.google.com, 216.239.32.10, A, IN} 6) L queries A google.com at 216.239.32.10 to resolve www.google.com 7) A google.com returns {www.google.com, 66.102.7.83, A, IN} 8) L returns 66.102.7.83 to C. 1) C queries L to resolve mail.google.com 2) L queries A google.com at 216.239.32.10 3) A google.com returns {mail.google.com, 66.102.7.104, A, IN} 4) L returns 66.102.7.104 to C. 2 TCP-like Design NASA has built a series of satellites to orbit the Earth, except they lack the requisite knowledge to design a communication protocol. They task you with designing a reliable, sliding window, bytestream protcol similar to TCP for communication over a link with a bandwidth of 1 Gbps, an RTT of 384 ms, and a maximum segment lifetime of 2

15 sec. The protocol will not include a window scaling option. a) How many bits wide should you make the AdvertisedWindow and SequenceNum fields? Explain why you select your values b) The person in charge of the program scoffs at your suggestions, and instead wishes to use an AdvertisedWindow of 16 bits. Explain why this is problematic. c) Suppose you settle on using TCP as your communication protocol. Two satellites, S 1 and S 2 want to communicate with a third satellite. Both S 1 and S 2 are in the Additive Increase, Multiplicative Decrease (AIMD) phases of their transmissions, but S 2 has a much higher RTT than S 1. As such, you observe that S 2 is not receiving its fair share of the bandwidth. Explain how, under AIMD, the TCP congestion window grows with respect to the RTT. Using that intuition, explain why the bandwidth is not being shared fairly between S 1 and S 2. Answer a) To fully utilize the network, the AdvertisedWindow needs to be larger than the Delay*Bandwidth. AdvertisedW indow Delay Bandiwidth = 384ms 1Gbps = 48MB = 50, 331, 648 bytes Since 2 25 = 33, 554, 432 and 2 26 = 67, 108, 864, the AdvertisedWindow must be 26 bits. SequenceNum must not wrap around before any delayed segments have left the network. Presumably, this occurs within the maximum segment lifetime. Thus, the SequenceNum must be larger than the MSS * Bandwidth. SequenceN um M SS Bandiwidth = 15sec 1Gbps = 1920MB = 2, 013, 265, 920 bytes Since 2 30 = 1, 073, 741, 824 and 2 31 = 2, 147, 483, 648, the SequenceNum must be 31 bits. Notes: Many people got the correct justification, but forgot to convert the bits to bytes. b) The AdvertisedWindow is smaller than Delay* Bandwidth; thus, it is limiting the effective bandwidth. Only an AdvertisedWindow worth of data can be transferred during a 3

single RTT. The effective bandwidth is c) Ef f ectivebandwidth = AdvertisedW indow/rt T = 2 16 bytes/384 ms = 166.67 KB/sec = 1.30207825 Mbits/sec With the AIMD mechanism, the TCP congestion window increases by 1 for each RTT. A flow with a longer RTT needs more time to increase its congestion window size, compared to a flow with a short RTT. The flow with the longer RTT always has a smaller congestion window size and receives less bandwidth. 4

3 TCP/Congestion Control 45 40 35 cwnd size (segments) 30 25 20 15 10 5 0 0 5 10 15 20 25 Number of RTTs Assume TCP Reno (meaning Fast Retransmit and Fast Recovery) is the protocol experiencing the behavior shown above. Assume that the TCP flow has been operating for some time, meaning that the number of RTTs shown are with respect to when you started observing the flow s behavior. a) Identify the time periods when TCP slow start is operating. b) Identify the time periods when TCP congestion avoidance is operating (AIMD). c) After the 14th RTT, is the segment loss detected by a triple duplicate ACK or by a timeout? d) What is the initial value of ssthreshold, before the first congestion avoidance interval? e) What is the value of ssthreshold at the 19th RTT? f) What is the value of ssthreshold at the 24th RTT? g) Assuming a packet loss is detected after the 25th RTT by the receipt of a triple duplicate ACK, what will be the values of the congesion-window size and of ssthreshold? Answer a) 1-6, 22-25 b) 6-22 (or 19, if you consider 20-22 a timeout phase) c) Duplicate Acknowledgment. If a timeout happened, cwnd would drop to 1 d) 32. At 32, the flow exits slow start and proceeds to AIMD. 5

e) 20. At a cwnd size of 40, the cwnd is halved to 20 and the ssthreshold is set to 20. f) 12, At a cwnd size of 24, a timeout occurs. ssthreshold is set to half of 24 (12), and the cwnd size drops to 1. g) 4,4. The triple dup ack causes the ssthreshold to be set to half the value of cwnd, which was previously 8 at the conclusion of the 25th RTT. Due to fast recovery, the cwnd is set to 4, or 7 if you considered inflation. Notes: For part a), I wasn t too strict about the inclusive vs exclusive ranges. For part b), I also accepted 19 as an upper range. Most people who lost points on this problem missed part g). It looked like people assumed the cwnd kept growing. However, part g) states that a triple duplicate ack is detected after the 25th RTT, meaning that some packet was lost when the cwnd was 8. I accepted either 4 or 7 (inflation) as the answer for the cwnd value. 6

4 TCP/Congestion Control Host A sends a file consisting of 9 MSS-sized segments to a host B using TCP. Assume that the 4th segment in the transmission is lost. Assume the retransmission timeout is T, the one-way latency is d, and that T > 4*d. Ignore the transmission time of the segments and of the acknowledgements. Also, assume the TCP three-way handshake has completed, but no data has been transmitted. a) Assume no fast retransmission or fast recovery. Draw the time diagram showing each segment and acknowledgement until the entire file is transferred. Indicate on the diagram all changes in the cwnd and ssthresh. How long does it take to transfer the file? b) Answer part (a) assuming TCP Reno, i.e., the TCP version that implements both fast retransmission and fast recovery. c) Answer part (b) assuming that only the 6th segment is dropped. Notes For Fast Recovery, assume that each duplicate acknowledgment increases cwnd by 1. For Fast Recovery, assume that, upon receiving a non-duplicate acknowledgment, cwnd drops back to ssthresh. If the value of cwnd is fractional, you should round it to the closest larger integer. The transfer time is the time interval measure at source A from the time the first segment is sent until the acknowledgement of the last segment is received 7

Answer A cwnd=1 1 B A cwnd=1 1 B A cwnd=1 1 B cwnd=2 2 2,3 cwnd=2 2 2,3 cwnd=2 2 2,3 cwnd=4 X 3,4 4,5,6,7 cwnd=4 X 3,4 4,5,6,7 cwnd=4 3,4 X 4,5,6,7 TIMEOUT 4,4,4 cwnd=5, ssthresh=2 4,4,4 4,8 cwnd=6 5,6,6 8,9 cwnd=1, ssthresh=2 cwnd=2 cwnd=3 4 8 8,9 9,10 cwnd=2 cwnd=3 9 9 10 cwnd=6, ssthresh=3 cwnd=3 6,6 6 10 Transfer Time=8*d + T (a) Transfer Time=10*d (b) Transfer Time=10*d (c) Notes: People lost the most number of points on this problem. People indicated on their timing diagrams that segments 5,6 and 7 are resent; I automatically deducted 2.5 pts for the first subproblem, and 2 pts for the second subproblem if you did this. You should know by now (after doing the project and seeing this material in lecture/discussion) that the receiver has a buffer to place out of order segments. Also, people forgot to read the lecture notes about the ACKing conventions; I explicitly posted on moodle that you should review those conventions before doing this problem. Also, note that when you inflate your window in b), the sender has the ability to send out one additional segment, namely, 8. I included an additional subproblem c) if you would like more practice on this type of problem. 8

5 Link State A B C 1 7 4 3 2 3 1 2 5 D E F Given the following network topology, fill in the table showing the step- by-step operation of the link-state algorithm for node B. Step Confirmed Tentative 9

Answer Step Confirmed Tentative 1 (B,0,-) 2 (B,0,-) (A,1,A), (C,7,C), (E,2,E) 3 (B,0,-), (A,1,A) (C,7,C), (E,2,E) 4 (B,0,-), (A,1,A) (C,7,C), (E,2,E), (D,5,A) 5 (B,0,-), (A,1,A), (E,2,E) (C,7,C), (D,5,C) 6 (B,0,-), (A,1,A), (E,2,E) (C,5,E), (D,4,E), (F,7,E) 7 (B,0,-), (A,1,A), (E,2,E), (D,4,E) (C,5,E), (F,7,E) 8 (B,0,-), (A,1,A), (E,2,E), (D,4,E), (C,5,E) (F,6,E) 9 (B,0,-), (A,1,A), (E,2,E), (D,4,E), (C,5,E) (F,6,E) Notes: People lost minor points on this problem. People did not notice that to reach F, you go through E, then C, then F; this gives you a cumulative cost of 6. I only looked at the last entry in your table. 10