0% found this document useful (0 votes)
15 views14 pages

Giu 2486 62 17730 2024-06-03T12 40 49

Uploaded by

vqxz7ws9nd
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views14 pages

Giu 2486 62 17730 2024-06-03T12 40 49

Uploaded by

vqxz7ws9nd
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 14

December 31st, 2019

German University in Cairo


Media Engineering and Technology
Lecturer: Amr El Mougy
TA: Ahmad Helmy and Salma El Jaki

Introduction to Communication Networks


Winter term 2019
Final Exam

Bar Code

Instructions: Read carefully before proceeding.


1) Indicate your major in the following table

CS DMET

2) Duration of the exam: 3 hours (180 minutes).


2) (Non-programmable) Calculators are allowed. No books or other aids are permitted for this test.
4) This exam booklet contains 13 pages, including this one. All papers have to be kept attached. Note
that if one or more pages are missing, you will lose their points.
5) When you are told that time is up, stop working on the test.
6) Include any assumptions that you need to make.
7) You are required to follow the instructions of the proctors under all conditions.
Good Luck!
Don’t write anything below ;-)

Exercise 1 2 3 4 5 6 Σ
Marks 10 15 20 20 20 20 105 (5 bonus)
Final Marks

Page 1 of 14
Question 1:
Indicate whether the following statements are True (T) or False (F). If you feel the need to
justify your answer, please do so below the table.

1) MAC addresses can be used for data forwarding in local networks only. T

2) Open Shortest Path First (OSPF) is a routing protocol that can find optimal paths
F
between any two routers in the network.

3) The longest subnet mask is 30 bits. T


4) The Border Gateway Protocol (BGP) is used to implement routing policies between
T
autonomous systems (AS).
5) In TCP Tahoe, three duplicate ACKs cause a different reaction from the congestion
F
avoidance protocol than a timeout event.
6) The Domain Name System (DNS) allows clients to identify the port numbers of
F
their intended destinations.
7) Pipelining in HTTP allows clients to send multiple requests before receiving any
T
response.

8) UDP is a connection-oriented transport layer protocol. F

9) All packets exchanged in the Dynamic Host Configuration Protocol (DHCP) for a
T
client to obtain an IP address are broadcast packets.

10) The ARP query is a unicast packet while the ARP response is a broadcast packet. F

Additional Justifications (Only if you need):

Page 2 of 14
Question 2:

A client wishes to retrieve a webpage from a server. The round trip time (RTT) between the
client and the server is 100ms and the transmission speed of the server is 100 Mbits/s. The client
is allowed to open up to 6 parallel connections with the server. The webpage has 15 resources,
all of them having a size of 1 Mbits. The first resource is the HTML file, which contains all the
URLs of the other resources. Calculate the delay in retrieving the webpage if:

a) Persistent HTTP with pipelining is used on all 6 parallel connections.


b) Persistent HTTP without pipelining is used on all 6 parallel connections.

Assume that the client sends the requests for each resource on the TCP connections in a round
robin schedule. Thus, the first 6 requests are sent over each of the 6 parallel connections,
respectively, and the 7th request is sent over Connection 1 again, and so on. Assume that all TCP
handshakes have not taken place yet. Note that the transmission speed of the server is divided
over all active connections of the client, and that the browser will terminate any connection that
will no longer be used. Assume the browser will have all the required info for all the resources of
the webpage once the HTML file is downloaded.

The scenario for opining the TCP connections is as follows:

1- Open one TCP connection to download the HTML file.


2- Open 5 additional connections to download the remaining resources.
3- Terminate any connections that will no longer be used to speed up the download on the
remaining active connections.

Answer to 2:

To answer this question, it is sufficient to calculate the delay on the connection that will observe
the longest delay.

Whether pipelining is used or not, the first step is to download the HTML file:

Delay_HTML = 2 RTT + 1M/100M = 0.21s

Then, 12 out of the remaining 14 requests will be sent over the 6 connections:

Page 3 of 14
Pipelining:

Delay_Connection 1 = 1 RTT + 2(1M/(100M/6) = 0.22

Delay_Connections 2  6 = 2RTT + 2(1M/(100M/6) = 0.32

Without pipelining:

Delay_Connection 1 = 2 RTT + 2(1M/(100M/6) = 0.32

Delay_Connections 2  6 = 3RTT + 2(1M/(100M/6) = 0.42

The remaining 2 requests will be sent over connections 1 and 2. Cnnections 36 are now
terminated. Since Connection 2 is lagging, it is sufficient to calculate the delay only for this
connection.

Pipelining:

Delay_webpage = 0.32 + 1RTT + (1M/100M/2) = 0.44s

Without pipelining

Delay_webpage = 0.42 + 1RTT + (1M/100M/2) = 0.54s

Page 4 of 14
Question 3:

a) Consider two hosts A and B that are communicating over a TCP connection. Assume that the
initial sequence numbers for A and B are 100 and 150, respectively (these are the numbers
that should be used for the first packets sent). The figure below shows the exchange of
messages between A and B. Assuming that the system is able to buffer packets that are
received out of order; fill in the blanks for sequence numbers and acknowledgment numbers.
Answer to 3 a):

Page 5 of 14
b) The following table shows the values of the receive window (rwnd) and the actual sending
rate (SR) used by a client running TCP with congestion control and flow control. Answer the
following:
- What is the processing speed of the receiver (MSS/RTT)?
- In which RTT(s) did a timeout event occur?
- In which RTT(s) did a three duplicate ACK event occur?
- If ssthresh was initially equal to 20 MSS, identify all RTT(s) when it was changed and
what was its new value(s).

RTT 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20

Rwnd 10 10 10 10 7 5 5 9 10 10 10 10 10 10 9 7 5 6 6 5

SR 1 2 4 8 7 5 1 2 4 2 3 4 5 6 7 7 4 5 6 5

Answer to 3 b):

5 MSS/RTT

Timeout: RTT 7

3 ACKs: RTT 10, RTT 17

Calculate the congestion window and ssthresh

RTT 1 2 3 4 5 6 7 8 9 10 11 1 13 14 1 16 17 18 1 20
2 5 9

Cwnd 1 2 4 8 1 23 1 2 4 2 3 4 5 6 7 8 4 5 6 5
6

At RTT 7 ssthresh = 11

At RTT 10, ssthresh = 2

At RTT 17, ssthresh = 4

Page 6 of 14
Question 4:

The figure below shows two connected networks. Bob, who already has in IP address through a
DHCP exchange, wishes to retrieve a webpage from the webserver and only knows its URL.
Bob’s network has a webcache and a local DNS that has all required URL translations. The
following protocols are used:
HTTP – DNS – TCP – ARP
Specify briefly the sequence of events that take place until the webpage is retrieved. For each
packet sent by any device in the network, specify the source and destination IP addresses and the
source and destination MAC addresses. All ARP tables at all devices are initially empty. Note
that DNS resolution is the responsibility of the webcache. Assume all devices in a local network
know the IP addresses of the local DNS and the default router. In the table below, if the router is
going to forward a packet between networks, show these packets as two entries in the table (one
entry for the packet arriving at the router and one entry for the packet forwarded by the router.

Page 7 of 14
Answer to 4:

Pckt No. Type IP MAC

1 ARP query Src: Bob Src: Bob

Dst: webcache Dst: Broadcast

2 ARP response Src: webcache Src: webcache

Dst: Bob Dst: Bob

3 TCP request Src: Bob Src: Bob

Dst. webcache Dst: webcache

4 TCP response Src: webcache Src: webcache

Dst: Bob Bob

5 HTTP request Src: Bob Src: Bob

Dst: webcache Dst: webcache

6 ARP query Src: webcache Src: webcache

Dst: Local DNS Dst: Broadcast

7 ARP response Src: local DNS Src: Local DNS

Dst: webcache Dst: webcache

8 DNS query Src: webcache Src: webcache

Dst: Local DNS Dst: Local DNS

9 DNS response Src: Local DNS Src: Local DNS

Dst: webcache Dst: webcache

10 ARP query Src: webcache Src: webcache

Dst: IP_Router A Dst: Broadcast

11 ARP response Src: IP_Router A Src: MAC_Router A

Dst: webcache Dst: webcache

Page 8 of 14
12 TCP request Src: webcache Src: webcache

Dst: webserver Src: MAC_Router A

13 ARP query Src: IP Router B Src: MAC_Router B

Dst: webserver Dst: broadcast

14 ARP response Src: Webserver Src: Webserver

Dst: IP_Router B Dst: MAC_Router B

15 TCP request Src: webcache Src: MAC_Router B

Dst: webserver Dst: webserver

16 TCP response Src: webserver Src: webserver

Dst: webcache Dst: MAC Router B

17 TCP response Src: webserver Src: MAC Router A

Dst: webcache Dst: webcache

18 HTTP request Src: webcache Src: webcache

Dst: webserver Dst: MAC_Router A

19 HTTP request Src: webcache Src: MAC Router B

Dst: webserver Dst: webserver

20 HTTP response Src: webserver Src: webserver

Dst: webcache Dst: MAC Router B

21 HTTP response Src: webserver Src: MAC Router A

Dst: webcache Dst: webcache

22 HTTP response Src: webserver Src: webcache

Dst: Bob Dst: Bob

Page 9 of 14
Question 5:

A packet arriving at Router A needs to be delivered to Router E. The problem is the network is
currently being updated. The forwarding tables of Routers A, B, C, and D are updated according
to the new network status, which is shown below on the left, while Routers E, F, and G still have
not been updated, and their forwarding tables are populated according to the network status
shown below on the right. Use Dijkstra’s algorithm to determine the path that the packet will
take form A to E. What will be the new path once the entire network is updated according to the
figure on the left?

Answer to 5:

Starting at Router A

Step List B C D E F G

1 A 2, A 6, A 1, A Inf Inf Inf

2 AD 2, A 6, A Inf Inf 3, D

3 ADB 6, A 7, B Inf 3, D

4 ADBG 6, A 7, B 5, G

5 ADBGF 6, A 6, F

6 ADBGFC 6, F

Page 10 of 14
7 ADBGFCE

Thus, a packet going from A to F will first go from A  D  G

At G, the table below should be used

Step List A B C D E F

1 G Inf Inf Inf 6, G 6, G 4, G

2 GF Inf Inf 6, F 6, G 6, G

3 GFC 12, C Inf 6, G 6, G

4 GFCD 9, D Inf 6, G

5 GFCDE 9, D 9, E

6 GFCDEA 9, E

7 GFCDEAB

Thus, the packet will be forwarded directly form G to E. Once the network is updated, the path
will be ADGFE

Page 11 of 14
Question 6:

The figure below shows a network with internal routers and subnetworks. The figure only shows
the addresses of the networks in the lowest level of the hierarchy.

a) Determine the address that will be announced by Routers, B, C, D, and A. Each of these addresses is
the aggregation of the addresses of all networks below it.
b) Router D is removed from the network and now the 4 subnets that were served by Router D should be
served by Router C. Re-design the addresses of all subnets to achieve this objective and determine the
aggregated announcements of Routers B, C, and A.

Page 12 of 14
Answer to 6:

a) Router A: 55.66.0.0/16, Router B: 55.66.64.0/18, Router C: 55.66.128.0/18, Router D:


55.66.192.0/18
b) Router A: 55.66.0.0/16, Router B: 55.66.128.0/17, Router C: 55.66.0.0/17
Subnets under Router B:
55.66.128.0/19
55.66.160.0/19
55.66.192.9/19
55.66.224.0/19

Page 13 of 14
Subnets under Router C:
55.66.16.0/20
55.66.32.0/20
55.66.48.0/20
55.66.64.0/20
55.66.80.0/20
55.66.96.0/20

Page 14 of 14

You might also like