CS 5565 Spring CS 5565 Midterm

Similar documents
CSCI 466 Midterm Networks Fall 2013

CPSC 441 COMPUTER COMMUNICATIONS MIDTERM EXAM SOLUTION

Announcements. No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6

Answers to Sample Questions on Transport Layer

No book chapter for this topic! Slides are posted online as usual Homework: Will be posted online Due 12/6

CSCD 330 Network Programming

CS 421: COMPUTER NETWORKS SPRING FINAL May 24, minutes. Name: Student No: TOT

CS 5565 Final Exam. Name (printed)

CPSC 441 COMPUTER COMMUNICATIONS MIDTERM EXAM SOLUTION

Chapter 3: Transport Layer Part A

Problem 7. Problem 8. Problem 9

MCS-377 Intra-term Exam 1 Serial #:

CMPE150 Midterm Solutions

Computer Networks - Midterm

Transport Layer PREPARED BY AHMED ABDEL-RAOUF

CS 421: Computer Networks SPRING MIDTERM I April 7, minutes

ECE 461 Internetworking. Problem Sheet 6

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

Computer Communication Networks Midterm Review

Student ID: CS457: Computer Networking Date: 3/20/2007 Name:

CS 421: COMPUTER NETWORKS SPRING FINAL May 16, minutes

The Transport Layer. Part 1

ELEN Network Fundamentals Lecture 15

Transmission Control Protocol. ITS 413 Internet Technologies and Applications

TDTS06: Computer Networks

CS 344/444 Computer Network Fundamentals Final Exam Solutions Spring 2007

FINAL Tuesday, 20 th May 2008

EE122 MIDTERM EXAM: Scott Shenker, Ion Stoica

CNT 6885 Network Review on Transport Layer

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

EECS489 Computer Networks, Take-home Makeup Midterm (Winter 2007) due in class Wednesday 3/28

Department of Computer Science and Engineering. Final Examination. Instructor: N. Vlajic Date: April 15, 2011

Question Points Score total 100

c) With the selective repeat protocol, it is possible for the sender to receive an ACK for a packet that falls outside of its current window.

ECE 650 Systems Programming & Engineering. Spring 2018

Lecture 13: Transport Layer Flow and Congestion Control

Lecture 5. Transport Layer. Transport Layer 1-1

UNIT IV -- TRANSPORT LAYER

CS 349/449 Internet Protocols Final Exam Winter /15/2003. Name: Course:

Computer Networks. Homework #4: No Grading

14-740: Fundamentals of Computer and Telecommunication Networks

Problem Set 7 Due: Start of Class, November 2

Name Student ID Department/Year. Midterm Examination. Introduction to Computer Networks Class#: 901 E31110 Fall 2006

TCP : Fundamentals of Computer Networks Bill Nace

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

Fall 2012: FCM 708 Bridge Foundation I

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

15-441: Computer Networks Homework 3

Internet Applications and the Application Layer Material from Kurose and Ross, Chapter 2: The Application Layer

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

CS457 Transport Protocols. CS 457 Fall 2014

Solution to Question 1: ``Quickies'' (25 points, 15 minutes)

ECE 333: Introduction to Communication Networks Fall 2001

CSE 473 Introduction to Computer Networks. Midterm Exam Review

a. (4pts) What general information is contained in a LSR-PDU update that A might send?

Chapter 3: Transport Layer. Chapter 3 Transport Layer. Chapter 3 outline. Transport services and protocols

Outline Computer Networking. TCP slow start. TCP modeling. TCP details AIMD. Congestion Avoidance. Lecture 18 TCP Performance Peter Steenkiste

Written examination in TDTS06 Computer Networks at 8 12

School of Engineering Department of Computer and Communication Engineering Semester: Fall Course: CENG415 Communication Networks

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

Transport Protocols Reading: Sections 2.5, 5.1, and 5.2. Goals for Todayʼs Lecture. Role of Transport Layer

Lecture 8. TCP/IP Transport Layer (2)

PLEASE READ CAREFULLY BEFORE YOU START

PLEASE READ CAREFULLY BEFORE YOU START

The Transmission Control Protocol (TCP)

Homework 3 1 DNS. A root. A com. A google.com

CS3516 B10 Computer Networks Final Exam December 14, 2010

Lecture 08: The Transport Layer (Part 2) The Transport Layer Protocol (TCP) Dr. Anis Koubaa

CSC 4900 Computer Networks: TCP

Networks Fall This exam consists of 10 problems on the following 13 pages.

The Transport Layer. Internet solutions. Nixu Oy PL 21. (Mäkelänkatu 91) Helsinki, Finland. tel fax.

Transport Over IP. CSCI 690 Michael Hutt New York Institute of Technology

Lecture 3 The Transport Control Protocol (TCP) Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it

Washington State University CptS 455 Sample Final Exam (corrected 12/11/2011 to say open notes) A B C

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

Transport Protocols Reading: Sections 2.5, 5.1, and 5.2

CS 421: COMPUTER NETWORKS FALL FINAL January 10, minutes

CMPE 150/L : Introduction to Computer Networks. Chen Qian Computer Engineering UCSC Baskin Engineering Lecture 11

Chapter 3 outline. 3.5 Connection-oriented transport: TCP. 3.6 Principles of congestion control 3.7 TCP congestion control

Basic Reliable Transport Protocols

Data Communication & Networks Final Exam (Fall 2008) Page 1 / 13. Course Instructors: Engr. Waleed Ejaz. Marks Obtained Marks

Testing IPv6 address records in the DNS root

Congestion Control. Principles of Congestion Control. Network-assisted Congestion Control: ATM. Congestion Control. Computer Networks 10/21/2009

CPE 548 Exam #1 (50 pts) February 17, 2016

ETSF10 Internet Protocols Transport Layer Protocols

Your Name: Your student ID number:

No, the bogus packet will fail the integrity check (which uses a shared MAC key).!

DualRTT: Enhancing TCP Performance During Delay Spikes

Investigating the Use of Synchronized Clocks in TCP Congestion Control

EE 122 Fall st Midterm. Professor: Lai Stoica

CC451 Computer Networks

Network Technology 1 5th - Transport Protocol. Mario Lombardo -

NWEN 243. Networked Applications. Layer 4 TCP and UDP

Department of Computer and IT Engineering University of Kurdistan. Transport Layer. By: Dr. Alireza Abdollahpouri

TCP reliable data transfer. Chapter 3 outline. TCP sender events: TCP sender (simplified) TCP: retransmission scenarios. TCP: retransmission scenarios

Transport Layer. Application / Transport Interface. Transport Layer Services. Transport Layer Connections

Expected Time: 90 min PART-A Max Marks: 42

COMPUTER NETWORK. Homework #3. Due Date: May 22, 2017 in class

Overview. TCP congestion control Computer Networking. TCP modern loss recovery. TCP modeling. TCP Congestion Control AIMD

CS321: Computer Networks Congestion Control in TCP

Transcription:

CS 5565 This is a closed-book, closed-internet, closed-cellphone and closed-computer exam. However, you may refer to your sheet of prepared notes. Your exam should have 11 pages with 5 questions totaling 100 points. You have 80 minutes. Please write your answers in the space provided on the exam paper. If you unstaple your exam, please put your initials on all pages. You may use the back of pages if necessary, but please indicate if you do so we know where to look for your solution. You may ask us for additional pages of scratch paper. You must submit all sheets you use with your exam. However, we will not grade what you scribble on your scratch paper unless you indicate you want us to do so. Answers will be graded on correctness and clarity. You may lose points if your solution is more complicated than necessary. Name (printed) I accept the letter and the spirit of the Virginia Tech graduate honor code I have not given or received aid on this exam. (signed) # Problem Points Score 1 DNS 10 2 Alternating Bit Protocols 16 3 Sliding Window Protocols 24 4 TCP 32 5 Application Level Framing 18 Total 100 1/11

1 DNS (10 pts) Suppose your local DNS resolver needs to resolve www.kernel.org on behalf of a client. Suppose it has already sent a query to a root server at 198.41.0.4 and received the following reply: ; <<>> DiG 9.2.3 <<>> @a.root-servers.net +norecurse www.kernel.org ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31394 ;; flags: qr; QUERY: 1, ANSWER: 0, AUTHORITY: 6, ADDITIONAL: 6 ;; QUESTION SECTION: ;www.kernel.org. IN A ;; AUTHORITY SECTION: org. NS TLD1.ULTRADNS.NET. org. NS TLD2.ULTRADNS.NET. org. org. NS NS TLD3.ULTRADNS.org. TLD4.ULTRADNS.org. org. NS TLD5.ULTRADNS.INFO. org. NS TLD6.ULTRADNS.CO.UK. ;; ADDITIONAL SECTION: TLD1.ULTRADNS.NET. TLD2.ULTRADNS.NET. A A 204.74.112.1 204.74.113.1 TLD3.ULTRADNS.org. A 199.7.66.1 TLD4.ULTRADNS.org. TLD5.ULTRADNS.INFO. A A 199.7.67.1 192.100.59.11 TLD6.ULTRADNS.CO.UK. A 198.133.199.11 ;; Query time: 11 msec ;; SERVER: 198.41.0.4#53(a.root-servers.net) ;; WHEN: Sun Mar 20 19:59:13 2005 ;; MSG SIZE rcvd: 290 What type of query will the resolver send next and to whom? What will the value of the query s name field be? 2/11

2 Alternating Bit Protocols (16 pts) a) Rdt3.0 Receiver FSM (6 pts) In lecture we discussed how the mechanisms used by reliable data transfer protocols changed as the different assumptions regarding the underlying channel evolved. We considered the spectrum from a reliable, perfect channel to a lossy one that can have bit errors. You may recall this slide that summarizes this evolution: perfect channel rdt1.0 bit errors rdt2.0 Evolution of Assumptions error detection: checksums, receiver feedback: acknowledgements Automatic Repeat request (ARQ protocol) corrupted acks retransmissions duplicates sequence numbers 0/1: alternating bit protocol rdt2.1 ---- eliminate NAK: use ACK+seq num rdt2.2 lossy channel timeouts rdt3.0 lossy channel with bit errors We discussed the sender and receiver FSMs for the different versions of the resulting protocols, with the exception of the receiver FSM used in rdt3.0. Does the receiver FSM used in rdt3.0 differ from the receiver FSM used in rdt2.2? If so, how? If not, why not? Be specific! 3/11

b) Reordered Packets (10 pts) Give a sender and receiver timeline that shows that an alternating-bit protocol such as rdt3.0 can fail if the underlying channel can reorder packets. (Show the timeline for the sender on the left, for the receiver on the right, and include the type and sequence numbers of messages exchanged.) Sender Receiver 4/11

3 Sliding Window Protocols (24 pts) In project 1B, you implemented a sliding window protocol for reliable data transfer over an unreliable UDP link. For the following questions, assume the setup you used in this project. a) Bandwidth vs Throughput (12 pts) In Experiment 2, you should have obtained a chart similar to this one: 700 600 Bandwidth vs Throughput for D=150ms 500 Throughput in Kbps 400 300 200 100 0 0 200 400 600 800 1000 1200 Bandwidth in Kbps i. (8 pts) Considering that window sizes greater than 32 packets will cause queuing losses at the router, what is the theoretical maximum throughput you can expect for B=1Mbps, D=150ms, L=0, and an MTU of 500 bytes? Ignore header overhead and any delay besides D! 5/11

ii. (4 pts) One group used a retransmission timeout of 50ms in experiment 2. Even if the router s queue had infinite capacity, what theoretical maximum throughput should they expect in this case, assuming that they implemented retransmission correctly? b) Delay vs Throughput (12 pts) In Experiment 3, you should have obtained a chart similar to this one: 1000 900 Delay vs Throughput B=1Mbps 800 700 Throughput in Kbps 600 500 400 300 200 100 0 0 100 200 300 400 500 600 700 Delay in ms i. (2 pts) Why does throughput not degrade for delays less than about 100ms? 6/11

ii. (2 pts) Why does throughput degrade for delays greater than about 100ms? iii. (2+2 pts) How can pipelined protocols counteract the decrease in throughput incurred with larger delays? Does it matter whether the delay is propagation delay, transmission delay, queuing delay or processing delay? iv. (4 pts) Even with those countermeasures deployed, increases in endto-end delay often go hand in hand with throughput degradation. Explain why that is so! 7/11

4 TCP (32 pts) a) Header Prediction (6 pts) Header prediction is an optimization by which a TCP implementation reduces the time it takes to prepare the TCP header for the next segment it sends. The idea is that the headers of consecutive segments in a connection differ only slightly. Therefore, once established, a template can be created for each connection. When the next piece of data is passed down from the application, the header template is copied using a bulk copy function such as memcpy(); afterwards, the non-constant fields are filled in. In the drawing of a TCP header below, cross out the fields that are likely to remain constant between consecutive segments of a connection (consider segments sent by the client, and assume one-way flow of data from client to server!) b) Congestion Control (14 pts) 45 40 35 Congestion Window Size (in Segments) 30 25 20 15 10 5 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 Transmission Round 8/11

(This is problem 27 in the book.) Assume that TCP Reno with fast recovery is being used in the chart above, which plots TCP s congestion window size as a function of time. A transmission round consist of the sender sending as many segments as are allowed by the current congestion window size. Answer the following questions: i. (1 pt) Identify the intervals of time when TCP slow start is operating. ii. (1 pt) Identify the intervals of time when TCP congestion avoidance is operating. iii. (2 pt) What happened after the 16 th transmission round? iv. (2 pt) What happened after the 22 nd transmission round? v. (2 pt) What is the initial value of the TCP Threshold variable? vi. (2 pt) What is the value of Threshold at the 18 th transmission round? vii. (2 pt) What is the value of Threshold at the 24 th transmission round? viii. (2 pt) Assuming that a maximum segment size (MSS) of 1000 bytes is being used, and assuming that the sender only sends MSS-sized segments, how much data will the sender have sent by the end of the 7 th transmission round? 9/11

c) Slow Start (12 pts) i. (6 pts) In 1997, engineers at Sun noticed a particular phenomenon in a series of web benchmarks. If a client requested a file from a web server using HTTP/1.0, and if that file was about 2 MSS in length, then there appeared an undesirable delay of up to 500ms between when the client received the first data segment from the server and when it received the second data segment. This delay occurred even in local networks with very small round-trip times. Explain what interplay of TCP mechanisms that you know about can cause this phenomenon! Be specific. ii. (3+3 pts) RFC 3390 proposes to use initial congestion window sizes larger than one MSS. Name one advantage and one disadvantage of this proposal. 10/11

5 Application Level Framing (18 pts) Refer to Clark & Tennenhouse s paper on Architectural Considerations for a New Generation of Protocols. Describe how you would implement project 1B using application level framing. Describe the protocol you would deploy. Describe the layout of the protocol data units exchanged between client and server. Describe how your receiver would work differently from your current implementation. (State your assumptions if necessary.) 11/11