# 程序代写代做代考 CSE 489/589 – Spring 2017

CSE 489/589 – Spring 2017

Homework #1

Due: February 28th 2017, at the beginning of class

You should work on this homework individually or in teams of up to 3 members (highly

recommended). One submission per team.

0) Academic integrity – Print the following statement: “I (We) have read and understood the

course academic integrity policy located under this link:

http://www.cse.buffalo.edu/faculty/dimitrio/courses/cse4589_s17/index.html#integrity”.

Your submission will NOT be graded without this statement.

Chapter 1:

1) Circuit/packet switching – Suppose users share an 8 Mbps link. Also suppose each user

requires a constant bitrate of 2 Mbps when transmitting, but each user transmits only 25% of

the time.

a) When circuit switching is used, how many users can be supported? (5 points)

b) For the remainder of the question, suppose packet switching is used. Will there be any

queuing delay before the link if 4 or fewer users transmit simultaneously? (5 points)

c) Find the probability that a given user is transmitting. (5 points)

d) Suppose there are 5 users. Find the probability that at any given time, all 5 users are

transmitting simultaneously. (2.5 points) Find the fraction of time during which the queue

grows. (2.5 points)

2) Transmission delay and propagation delay – Consider two hosts, A and B, directly

connected by a link of 2500 Km, propagation speed 2.5*108 m/s, and transmission rate 8

Mbps. Assume zero queuing delay.

a) How long does it take to move a packet of length 1000 bytes from one A to B? (3 points)

b) Assume the transmission time of the packet is dtrans and the propagation delay dprop.

Suppose that host A begins to transmit a packet at time t=0. At time t= dtrans where is the

last bit of the packet? (3 points)

c) Suppose dprop is greater than dtrans. At time t= dtrans, where is the first bit of the packet? (3

points)

d) Suppose dprop is less than dtrans. At time t= dtrans, where is the first bit of the packet? (3

points)

e) You want to urgently deliver 40 terabytes of data from Buffalo to San Francisco. You

have available a 100 Mbps dedicated link for the data transfer. Would you transmit the

data over this link or use FedEx overnight delivery instead? Explain (write down any

assumptions). (4 points)

3) Bandwidth-delay product – Suppose two hosts, A and B, are separated by 30,000 Km and

are connected by a direct link of R=3 Mbps. Suppose the propagation speed over the link is

2.5*108 m/s.

a) Calculate the bandwidth-delay product R* dprop. (2 points)

http://www.cse.buffalo.edu/faculty/dimitrio/courses/cse4589_s17/index.html#integrity

b) Consider sending a file of 1,200,000 bits from host A to host B. Suppose the file is sent

continuously as a large message. What is the maximum number of bits that will be in the

link at any time? (2 points)

c) What is the width (in meters) of a bit in the link? (2 points)

d) Repeat (a), (b) and (c) but now with a link of 3 Gbps. (6 points)

4) Store-and-forward – Consider a packet of length L which begins at Host A and travels over

three links to Host B. These three links are connected by two store-and-forward packet

switches. Let di, si, Ri denote the length, propagation speed, and the transmission rate of link

i, for i = 1, 2, 3. The packet switch delays each packet by dproc.

a) Assuming no queuing delays, in terms of di, si, Ri (i = 1, 2, 3), and L, what is the total

end-to-end delay for the packet? (5 points)

b) Now suppose R1 = R2 = R3 = R and dproc = 0. Further suppose the packet switches do not

store-and-forward but instead immediately transmit each bit they receive before waiting

for the entire packet to arrive. What is the end-to-end delay? (5 points)

Chapter 2:

5) HTTP performance – Here, we consider the performance of HTTP, comparing non-

persistent HTTP with persistent HTTP. Suppose the page your browser wants to download is 100

Kbits long, and contains 5 embedded images, each of which is 100 Kbits long. The page and the

5 images are stored on the same server, which has 300 msec roundtrip time (RTT) from your

browser. We will abstract the network path between your browser and the Web server as a 100

Mbps link. You can assume that the time it takes to transmit a GET message into the link is zero,

but you should account for the time it takes to transmit the base file and the embedded objects

into the “link”. This means that the server-to-client “link” has both a 150 msec one-way

propagation delay, as well as a transmission delay associated with it. In your answers, be

sure to account for the time needed to set up a TCP connection (1 RTT).

a) Assuming non-persistent HTTP (and assuming no parallel connections are open between

the browser and the server), how long is the response time – the time from when the user

requests the URL to the time when the page and its embedded images are displayed? Be

sure to describe the various components that contribute to this delay. (8 points)

b) Again, assume non-persistent HTTP, but now assume that the browser can open as many

parallel TCP connections to the server as it wants. What is the response time in this case?

(8 points)

c) Now assume persistent HTTP (HTTP 1.1). What is the response time assuming no

pipelining? (8 points)

d) Now assume persistent HTTP with pipelining is used. What is the response time? (8

points)

6) BitTorrent – Suppose Bob joins a BitTorrent torrent, but he does not want to upload any data

to other peers (also called free-riding).

a) Can Bob receive a complete copy of the file that is shared by the swarm? Why or why

not? (5 points)

b) Bob claims that he can make his “free-riding” more efficient by using a collection of

multiple computers with distinct IP addresses in the computer lab in his department. How

can he do that? (5 points)

7) Bonus problem – Consider a short, 10-meter link, over which a sender can transmit at a rate

of 150 bits/sec in both directions. Suppose that packets containing data are 100,000 bits long, and

packets containing only control (e.g., ACKs, hand-shaking, HTTP GET requests) are 200 bits

long. Assume that N parallel connections each gets 1/N of the link bandwidth. Now consider the

HTTP protocol and assume each downloaded object is 100 Kbits long, and that the initial

downloaded object contains 10 referenced objects from the same sender.

a) Would parallel downloads via parallel instances of non-persistent HTTP make sense in

this case? (10 points)

b) Now consider persistent HTTP without pipelining. Do you expect significant gains over

the non-persistent case? Justify and explain your answer. (10 points)

State any assumptions you have to make.