Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
CNT 4007C
Instructions:
1. Write your name and student ID on this page. Also write your name (or last 4 digits
of your ID) at the top of every page.
2. Please read the instructions for each question.
3. The exam is Closed Book and Closed Notes. The formulas you may need are at the end of
this exam paper.
4. Check that your exam is complete with 12 pages (including 1 page formulas at the end).
5. Please note the number of points assigned to each question and budget your time accordingly.
6. The time of the exam is 1 hour and 30 mins (from 8:45pm until 10:15pm).
Name:___________________________________
SID:_____________________________________
Maximum
Page 2
12
Page 3
11 (+2 extra)
Page 4
Page 5
12
11
Page 6
16
Page 7
14
Page 8
Page 9
3 (+8 extra)
Page 10
14
Page 11
(10 extra)
Total
Score
Q1. (12 points) Write down the best term or terms that correspond to the following
descriptions:
a. A layer that handles reliability and congestion control
Answer: _____Transport layer________________________
b. A layer that handles medium access control for shared channels
Answer: ________Data-link (or MAC) layer_____________________
c. Layers that are processed by a router
Answer: ________physical, data-link and network layers_______________
d. The type of congestion signaling used by TCP
Answer: _____implicit congestion signaling________________________
e. A layer in which peer-to-peer systems and overlay networks are implemented
Answer: _________Application layer____________________
f. The architecture used by DNS
Answer: _______ distributed hierarchical database______________________
g. A layer that encapsulates data into segments
Answer: ______Transport layer_______________________
h. A kind of attack in which multiple machines in multiple places coordinate to prevent a
server from providing a service to clients by overloading the network with traffic or the
server with bogus requests
Answer: ______Distributed Denial of Service (DDoS) Attack_____________
i. A kind of channel sharing where slots are allocated to sources in a specific order prior
to communication
Answer: ______Time Division Multiplexing (TDM)__________________
j. The algorithm used by TCP to obtain a reasonable estimate of the round trip time
Answer: __________Exponential Weighted Moving Average (EWMA)_____
e. (7 points) What are the advantages and disadvantages of having a layered protocol
architecture for the Internet? (mention 3 advantages and 2 disadvantages)
Advantages:
Allows an explicit structure to identify relationships between various pieces of the
complex Internet structure, by providing a reference model for discussion.
Provides a modular design that facilitates maintenance, updating/upgrading of
protocols and implementations (by various vendors) at the various layers of the
stack.
Supports a flexible framework for future advances and inventions (such as mobile
or sensor networks).
Disadvantages: overhead of headers, redundancy of functions (sometimes not
needed) [such as reliability as the transport layer and the link layer, or routing at
the network layer and some link layer protocols (such as ATM)]
Extra explanation: It is true in many cases that the change in one layer does not
affect the change in the other layers, but not always.
Examples of change that did not affect the other layers: change from FDDI to
token ring, to Ethernet at the MAC layer.
Examples of change that affected other layers: wireless vs. wired (performance of
TCP and routing degraded drastically). Introduction of 802.11 for wireless and ad
hoc networks (a change in the physical and MAC layers), does affect in a major
way routing at the network layer and the transport layers. In that case, many of the
protocols needed re-design.
f. (5 points)
a. Why does congestion occur in the Internet when the load is high?
The Internet is a packet switched network using store-and-forward that requires
buffers/queues. It also uses statistical-multiplexing, which means that sometimes
the input to the queue is more than the capacity of the outgoing link, especially
during high loads on the network. When this occurs the queue cannot drain fast
enough, and so it builds up beyond the average queue size, causing excessive
delays and sometimes causing queue overflow and packet loss, and hence
congestion.
b. Is there congestion in the Telephone network? Why ?
The Telephone network is a circuit-switched network, in which a circuit is
established for each connection and is reserved (not shared). It uses TDM for that, in
which time slots are assigned a-priori, and no statistical multiplexing is used. The input to
a switch never exceeds the capacity of the output. Store-and-forward is not used and
hence there are no queues. Admission control is used to control the load on the network
and denies flows/calls that would lead to exceeding the network capacity.
c. (2 points) While browsing the web you click on a link. The IP address for the
associated URL is not cached in your local host. The DNS lookup passes through
n DNS servers before your host receives the IP address; the successive visits incur
an RTT of RTT1, ... RTTn. The web page associated with the link contains one
small object. Let RTT0 denote the RTT between the local host and the server
containing the object. Assuming zero transmission time of the object, how much
time passes between the click and receiving the object?
The total amount of time to get the IP address is
RTT1 + RTT2 + + RTTn .
Once the IP address is known, RTT0 elapses to set up the TCP connection and
another RTT0 elapses to request and receive the small object. The total response
time is
D =2RTT0 + RTT1 + RTT2 + + RTTn
d. (6 points) Referring to the previous problem in c, assume that the time for that
question is D. Suppose the HTML file references three small objects on the same
server. Neglecting transmission times, how much time elapses between the click
and receiving all the objects with:
i.
Non-persistent HTTP with no parallel TCP connections?
________
D + 6RTT0
_________________________________________________________________
ii.
______
D + 2RTT0
_________________________________________________________________
iii.
Persistent HTTP?
______
D + RTT0
_________________________________________________________________
Normalized Goodput
(I)
(II)
(III)
Load
I.
II.
III.
c. (6 points) Where does TCP operate on the above graph? Explain for the various
phases of TCP; slow start, congestion avoidance (due to timeout), fast retransmitfast recovery triggered by duplicate ACKs.
Slow Start: the load starts from CongWin=1 (at the beginning of phase I), then ramps up quickly
(exponential growth of CongWin) until a loss is experienced (in phase II or beginning of phase III).
Congestion Avoidance: After the loss, if a timeout occurs, TCP goes down to CongWin=1 (at the
beginning of phase I) then ramps up to roughly half the load the led to the loss (half way in phase I).
In congestion avoidance CongWin increases linearly, which means the load increases slowly towards
the end of phase I and into phase II, until another loss occurs.
Fast Recovery: In fast retransmit fast recovery (due to duplicate acks), the load is cut in half (half way
into phase I), then slow (linear) increase towards phase II (as in congestion avoidance).
d. (6 points) One objective for the network design is to maximize the throughput (or
goodput), but that comes at an expense. What is that expense? Suggest a way
(metric) to measure network performance in a way that balances the tradeoff
between the goodput and the above expense. Show the optimal operating point for
that new metric on the graph below.
Expense: _____Increase in delay due to queue buildup in the network/routers.
Such increase becomes exponential if the load exceeds a certain point/threshold
(usually around 70% or 80% load)
Metric: ________Network power = Goodput/Delay or Throughput/Delay
Since we want to increase the goodput or throughput and minimize the delay the
network power captures such a tradeoff and maximizing it would establish the
balance we are looking for.
e. (3 points) In the ATM ABR rate control, if the explicit feedback indicates
congestion, then the equation for reduction is rate = rate rate * RDF. Someone
suggested that this may not be aggressive enough during severe congestion and
that multiplicative decrease should be used by having rate = rate * . What do
you think of this argument? Do you agree, or disagree, and why?
rate = rate rate * RDF = rate * (1 RDF) = rate *
hence, the 2 equations give the same effect and the difference is in the way the
parameter RDF is set hence, I disagree
[Extra: The rate of response will be reversed (as compared to part a above), i.e.,
when is high (close to 1) the response will be slow, but when is low (closer to
0) then the response is fast.]
f. (8 points extra) Stop-and-wait protocol is used for flow control over a link that is
2km long, with 10Mbps capacity, and 10% packet error rate. Packet length is
1000bits.
i.
What is the utilization of this protocol?
1 p
For stop-and-wait: u
, where p=0.1 is the frame error probability
(1 2a)
transmission delay=1000/107=100sec, propagation delay=2.103/2.108=10sec
Tprop
propagationDelay
=10/100=0.1
a
transmissionDelay
Trans
Utilization u=0.9/(1+0.2)=0.75=75%
ii.
Suggest 3 ways to bring the utilization close to what it was with the
10Mbps (you cannot suggest reducing the capacity to 10Mbps!).
Propose
TCP cannot differentiate between losses due to congestion and losses due to bit
error. A loss would lead TCP to cut down its window size (thinking it would help
alleviate congestion in the network) where in fact there may not be congestion. So
the end result is performance degradation of TCP.
Explicit Congestion Notification (ECN) provides TCP with an indication of
congestion, so when a packet is lost and there is no notification of congestion it is
likely to be due to BER on the wireless links.
TCP can be modified to take advantage of this explicit notification in the
following way. The receiver side would have to be modified to include the ECN
bit in the acks. The sender side would check the ECN field in the acks. So long as
ECN bits are included in the acks, TCP could acts as the basic TCP (i.e., cut back
window size with loss of packets). If, on the other hand, loss occurs while ECN
bits are not observed in the acks, then no window cut is performed by the sender.
Another modification could be to have the sender cut back its window size (say
by half) when it observes ECN bits in the acks. Note that there may be confusion
in case these explicit notification mechanisms are deployed partially in the
Internet.
10
11
Useful formulae: [Note that you may not need all of these formulae. Use as needed]
Utilization:
Tprop
propagationDelay
- a
transmissionDelay
Trans
Dis tan ce
- propagationDelay
, S=2x108m/s
S
1 p
- For stop-and-wait: u
, where p is the probability that a frame is in error.
(1 2a)
Utilization for sliding-window mechanisms with window of w:
w(1 p)
1 p
- Go back N: u
, if w fills the pipe, or u
otherwise
(1 2a)(1 p wp)
1 2ap
-
TCP:
-
w(1 p)
otherwise
(1 2a)
12