CSIT 561 Computer Networks
Midterm Examination
Date: 24 Mar. 2007 at 8:00 pm Due: 25 Mar. 2007 at 8:00 pm
1. Please type in your name, student ID and email address on this page.
2. Please answer all the questions within the space provided on the examination paper.
3. This paper consists of 7 questions and 7 pages.
4. Please read each question very carefully and answer the questions carefully and clearly to the point. Make sure your answers are neatly written, legible and readable.
5. Show all the steps used in deriving your answer, wherever appropriate.
6. Please submit your solutions electronically either in MS Word or PDF format using the LMES system http://lmes2.ust.hk.
7. Please label your answer file as <Your Student ID>-mid. doc or <Your Student ID>-mid.pdf, for example 12345678-mid.doc. Submissions not labelled in the right format cannot be accepted.
Question |
Points |
Score |
1 |
10 |
|
2 |
10 |
|
3 |
10 |
|
4 |
10 |
|
5 |
20 |
|
6 |
20 |
|
7 |
20 |
|
Total |
100 |
|
1. (10 points) Assume that you are put in charge of designing a network infrastructure to support digitized voice applications. The digitizer generates voice samples at the rate of one 8 bit sample every 125 ms. A typical connection between two users lasts several minutes.
a) What kind of switched network will you use for supporting this application?
I think I will use the circuit switching to support this application.
b) Give two reasons to justify your choice in a) above.
1. Because the link is used special for both sides users. The end to end delay time of circuit switch is fixed and it is very small, but for the packet switch is uncertain. Also when the physical link is established, users can communicate with each other at any moment. It is very suitable for real time communication.
2. Circuit switch can reserved the bandwidth for each link. This advantage can guarantee the needs of sample rate for each user.
2. (10 points) The following questions are about peer-to-peer networks:
a) In a P2P file-sharing system, what constitutes an overlay network?
Peers and edges constitute an overlay network.
b) Does the overlay network include routers? What are the edges in the overlay network?
Overlay network does not include routers.
When peer X and peer Y maintains a TCP connection. We can say there is an edge between X and Y.
c) In BitTorrent, who are the participants in the overlay? How does a newly joining peer in BitTorrent locate its neighbours? Be brief in your answer.
Web servers, trackers and peers are the participants in the overlay.
Peer A downloads the torrent file from the web server first. Then it contacts tracker to get the response-peer list. Then it will shake hand with peer B, C and so on.
3. (10 points) Application layer protocols:
a) Give one similarity and one difference between HTTP and SMTP protocols?
Similarity: HTTP and SMTP protocols all use TCP as underlying transport connection.
Difference: HTTP protocol is the pull protocol. User can use HTTP to get the information from the server. SMTP protocol is the push protocol. It means client sends the data and server receives the data.
b) Both HTTP and FTP can be used for downloading and uploading files. Give one similarity and one difference between the two protocols.
Similarity: The commands of HTTP and FTP protocols are all can be readable for human being.
Difference: HTTP protocol does not trace the user’s state. But FTP protocol must trace the live user’s state.
4. (10 points) Suppose Host A sends five TCP segments back to back to Host B over a TCP connection. The first segment has a sequence number 90, the second has sequence number 110, the third 130, the fourth 150 and the last one 170.
a) How much data is contained in each segment? Briefly explain in one sentence.
There are 20 bytes data in each segment from the first to fourth. But the last one can not ensure.
The distance between two sequences is the data size.
b) Suppose Host A now receives from Host B four acknowledgements, each containing the acknowledgement number 110. What can you conclude from this? Briefly explain in two sentences.
The segment has sequence number 110 has not reached Host B.
TCP only acknowledge the sequence till the first lost data in the data stream. The acknowledgement number denotes the segment which Host B wanted.
c) What will Host A do at this point after receiving the four acknowledgements? Briefly explain in two sentences.
The host A will retransmit the segments from 2nd to 5th.
5. (20 points) Suppose two hosts, A and B, are separated by 20,000 kilometres and are connected through an intermediate router R which is equidistant between A and B. Suppose the capacity of the links connecting A to R and R to B are both C = 1 Mbps. Furthermore, the propagation speeds over the links is 2.5 × 108 metres/sec. Consider the scenario of sending a file of 400,000 bits from Host A to Host B.
a) How long does it take to send the file assuming that it is sent as one large packet?
tprop = = 0.04 s
ttrans = = 0.4 s
so t = 2 * ( tprop + ttrans) = 0.88 s
b) Suppose the file is broken up into 10 packets with each packet containing 40,000 bits. Suppose that each packet is acknowledged by the receiver and the transmission time of an acknowledgement packet is negligible. Finally, assume that the sender cannot send a packet until the preceding one is acknowledged. How long does it take to send the file?
Before the 10th packet is sent, there are 9 ACKs and 9 packets have already been sent and received.
I think when the 10th packet is sent, it means the whole file is sent. There is no need to calculate the time for receiving 10th ACK. Because the question is how long it takes to send the file not ask me to acknowledgement.
tprop = = 0.04 s
ttrans = = 0.04 s
t = 9*(2*tprop + ttrans) + (tprop + ttrans) = 9*( 2* (0.04 + 0.04) + 0.08 ) + 2* (0.04 + 0.04) = 2.32 s
6. (20 points) Give a trace of the operation of protocol rdt 3.0 when data packets and acknowledgement packets are corrupted. Your trace should be similar to that used in Fig. 3.16 (or p. 37-38 of the class notes).
7. (20 points)The following questions pertain to the use of the conditional GET statement in HTTP protocol.
a) If the use of conditional GET requires that a proxy server should always contact the origin server for every object in its cache to check if the object has been modified, then where is the savings in downloading time achieved for web pages? Briefly explain in a couple of sentences.
Because if there is no new object, it only checks the time-stamp. There is no object data transfer. Normally, query data is smaller than object data. So it saves the downloading time.
b) Suppose that the file size of an object in a HTTP server is 24,000 bytes. The object is cached on the proxy server after the first access to the object. Suppose on each subsequent access to the object by a client, the proxy server finds that the object is not modified 90% of the time. Suppose a conditional GET request when the file is not modified requires only 200 bytes of message exchange. Compute the overall savings in the percentage of the data to be downloaded by using conditional GET as a function of parameters specified above for x requests for the object from the clients, as opposed to using the normal access without using conditional GET.
Not use conditional GET: 24000 * x
Use conditional GET: 24000x * (1-90%) + 200x * 90% = 2580x
P = (24000x-2580x)/24000x = 89.25%