Exam in Computer Networks
Document Sample


Exam in Computer Networks
Date 2003-10-20
Course code 1DT131 / 1DT633
Exam time 3/5 hours
Problems 6/10, Total 60/100 points
Teacher Lars-˚ke Larzon, phone 018-4712781
A
Aid English dictionary
You must answer the questions instructively. Only one problem/sheet.
If details needed to solve a problem have been left out, make reasonable assumptions and present
them in your solution.
You may answer in English or Swedish.
Please read the instructions below carefully.
If you have not participated in the continuous examination,
or if you have participated but failed, the following applies:
Your exam time is 5 hours and you can do all problems in the exam.
If you have participated in, and passed, the continuous
examination throughout this instance of the course, the following applies:
Your exam time is 3 hours and you can only hand in solutions to the problems 5-10.
This is a sample exam.
Solutions will be presented on the October 20:th lecture
Good luck!
If you already have a ’G’ grade from the continuous examination, skip to problem 5
1. Basics
a) Draw a picture of the Internet protocol stack. Name the different layers and also name the
data units that are passed between the layers. (5p)
b) Which is the fundamental service that IP provides to upper layers? (3p)
c) Which is the fundamental assumption that IP makes about lower layers? (2p)
2. Transport protocols
a) What is the relation (if any) between advertised window, congestion window and sending
window in TCP Reno? (3p)
b) The one-way propagation delay along a path between two end-nodes is 100 ms. The one-way
processing delays in routers, switches, etc is 50 ms in total along the same path. Assuming
there is no other traffic along the path, how large must the sending window be for a sliding
window protocol to be able to use all the available network capacity? The bottleneck link
has a capacity of 100 Mbit/s. (3p)
c) Why do web-transfers usually stall for a few seconds just after they start? (2p)
d) A TCP or UDP receiver receives not only the TCP/UDP headers, but also a pseudo header
consisting of fields from the IP header. Why is this pseudo header passed on to the receiving
transport layer? (2p)
3. Security
a) Nonce values are used to circumvent a specific type of attack. Name and describe this type
of attack, and explain how the use of nonce values circumvents it. (4p)
b) Explain the difference between symmetric and asymmetric encryption. (2p)
c) Present two usage scenarios for cryptographic hash functions (2p)
d) Describe how Public Key-encryption can be used for encryption and authentication respec-
tively. (2p)
4. IP & Routing
a) Why is there a shortage of IP version 4 addresses although the total address space contains
many unused addresses? (2p)
b) How does distance-vector routing algorithms differ from link-state routing algorithms in terms
of how often, and to whom, routing updates are transmitted from a node? (2p)
c) A student who recently finished a course in computer networks is asked to set up two routers -
R1 and R2 - in the domain illustrated in figure 1. Numbers in the figure identify the different
interfaces on each router. The student has the class B network 10.42.0.0/24 to her disposal.
Give an example of how this addresses can be distributed in the domain by presenting the
network identifiers for each of the four network plus the forwarding tables for each of the two
routers. The amount of nodes in each domain are: (6p)
Network Nodes
agora 750
beliz 165
crust 97
dijon 836
agora 1
R1 2
beliz
2 dijon
1 3
crust R2
Figure 1: Routing domain
5. Applications
Large numbers of nodes attach to a content-distribution network and build a connectivity graph
among themselves by randomly choosing 10 adjacent nodes which they connect to. Queries are prop-
agated using restricted flooding: Each node forward a query to all of its neighbors in the connectivity
graph. Received queries from peers are forwarded to all other neighbors unless a TTL counter in the
query has expired. To limit large-scale flooding effects, the initial value of the TTL field can not be
larger than 7. Moreover, queries that have already been forwarded but returns to you with a lesser
TTL value are automatically dropped.
a) What is the maximum amount of other nodes that a query that originates from your node
can reach? (2p)
b) What are the benefits of choosing the peer nodes randomly? (2p)
c) What are the problems with choosing the peer nodes randomly? (2p)
d) Suggest how to deal with the problem of choosing peer nodes randomly. If your suggestion
was implemented, what new weaknesses would there be? (4p)
6. Ethernet
a) An Ethernet adapter can be put into promiscuous mode. What does this mean? (2p)
b) Why is there a maximum allowed length for Ethernet segments? (3p)
c) How are Ethernet addresses assigned? (2p)
d) Ethernet is said to be a CSMA/CD protocol. What does this mean? (3p)
7. DNS
a) A student in the UNIX lab decides to surf to the existing web server www.datorkomtenta.nu.
No information about this domain or host is present in any DNS cache. Describe in a step-
by-step manner how a recursive DNS lookup on the server’s name will be executed within
the DNS systems. Clearly show what queries that are sent, who are sending them, to which
server they are sent and the type of and information included in the query responses. (4p)
b) What is the advantage of using recursive rather than iterative DNS queries? (2p)
c) Give a collection of DNS tuples (including Name, Value and Type, ignoring Class and TTL
fields) for a domain in which there are five machines: adam, bertil, cesar, david, and erik. The
machines have IP addresses 10.11.12.2 to 10.11.12.6. The name of the domain is tenta.uu.se.
• adam has an alias mailhost.tenta.uu.se and is the mail server in the domain.
• bertil is a web server and has an alias www.tenta.uu.se.
• bertil is also the ftp server and has an alias ftp.tenta.uu.se.
(4p)
8. Miscellaneous
a) The message 1101100100111011 is protected with a CRC using the polynom X 7 + X 5 + X 4 +
X 2 + 1 as generator. The calculated CRC is attached immediately after the message and
thereafter sent over a wireless link. It turns out, that in the 24 bits sent (message+CRC),
the last bit (i.e., the least significant bit in the CRC) is inverted when delivered. The receiver
will of course detect this when it does its verification of the CRC checksum. What will the
calculated remainder at the receiver side be? (3p)
b) When talking about firewalls, what is a DMZ and why does it exist? (2p)
c) Routers and Bridges perform similar tasks. Explain when it is better to use either of them
when building a network. (3p)
d) Briefly illustrate how a DDoS attack can be carried out (2p)
9. Short answers
The statements below describe a property of different protocols, terms or mechanisms in the Internet
architecture. Identify the corresponding protocols/terms/mechanisms by simply giving their name.
Same protocol/term/mechanism can occur multiple times.
a) Using extra bits to distinguish actual data from special tokens used to delimit frames.
b) Translates from link layer to IP addresses.
c) Avoidance of sending data to a full receiver buffer.
d) Used for IP-related error reports and queries.
e) Adds process multiplexing to IP.
f) Retransmission of TCP segments before a timeout has occurred.
g) Used by FTP to ensure reliable data transmission.
h) Delivery of IP datagrams to multiple receivers (not necessarily in the same LAN).
i) Used together with IP addresses on a per-interface basis to determine whether a packet must
be routed or not.
j) Link layer protocol used on top of modem connections.
(10p)
10. Network programming
a) When filling in some of the data structures used in network programming, you occasionally
use the functions htonl() and htons(). What does these functions do and why are they
needed at all? (3p)
b) You write, compile and run a program listening on UDP port 8000 for incoming data. On
the same machine there already runs a HTTP proxy also listening on port 8000. What will
happen - can the two programs coexist or not? Motivate your answer. (3p)
c) The TCP state diagram is shown in figure 2. Describe the relationship (if any) between the
following system calls and the state diagram, i.e., what transitions in the state diagram (if
any) that correspond to each system call.
• bind
• listen
• connect
• accept
(4p)
Figure 2: TCP State Transition Diagram
Related docs
Other docs by pharmphresh24
Get documents about "