Thursday, December 27, 2012

Holidays' Homework

Please remember that last chance for presenting your project is  Tuesday January 8, 2013 and that in the class of Friday January 11 a short quiz will be held.

Keeping you busy over the holidays is not our goal, but a few exercises may prepare you for the quiz. So here you have some exercises that are due Friday 11, 2013.


  1. Host A connects to host B using TCP to perform an HTTP request. Host B closes the connection once it has provided a response. Request size is 500 bytes and response size is 3000 bytes. The initial sequence number on A is 1000 and the initial sequence number on B is 5000. MSS for both hosts is 1460 bytes. Please detail the sequence of TCP segments exchanged from the beginning till the end of the connection (for each segment list: sender, sequence number, acknowledgement sequence number, active flags and number of data bytes) under the following conditions:
    1. No flow control, no congestion control. Regular acknowledgements.
    2. Same as before but using duplicate delayed acknowledgements.
    3. Same as (2) but using congestion control. What is the congestion window size on each end when FIN is received?
  2. Write a simple UDP echo server. (No need to create a class or method, just the main server loop).
  3. During a TCP connection, one end receives a segment with recv_window = 0. What does it mean? What does this end do if there is application data to be transmitted?
  4. Assuming all TCP segments transmitted are acknowledged right away, what is the value of the congestion window after sending 35 segments after a Timeout if Threshold = 32?

Thursday, December 20, 2012

Chapter 5: Information Security

Last class I started using an old presentation that I mentioned it was available. We will focus only on its first part.

More detailed explanation of some topics can be found in Kurose's Chapter 8, whose slides I have posted in our file repository.


Monday, December 17, 2012

Project's presentation

Tomorrow's lab will be used for the first batch of presentations of your programming projects. Those of you that cannot make it tomorrow will have a chance the last lab of the term after the holidays.  If you cannot make it even by then, you still can show me your work before the term exam, but your mark will be lower than those who presented the work in public.

Tomorrow presentations will be short, 10 minutes maximum, and for each one you will mark the project and its presentation.

Thursday, December 13, 2012

TCP options

We have mentioned MSS option in the classroom and you can read about it in section 3.1 of this document. Remember MSS is not a value both ends of a TCP connection have to agree upon.

Selective repeat is another interesting TCP option, that is covered by RFC 2018.

Long fat networks are those with a large bandwidth * delay product. For these networks, a new option is created so window sizes higher than 64KB be used. This is achieved with a new option that scales the windows (receiver, transmitter and congestion) up by a certain multiplier.

Another useful and commonly used option is Time-stamping, that it is covered together with the former in RFC 1323.

Tuesday, December 11, 2012

Exam grades

Monday's exam has been marked. You can see the results in the Marks tab of the course's spreadsheet book. Congratulations on those of you that obtained brilliant results, all the merit is yours.

Update: There is a link to the marked exams. Please let me know if you find any error. Please note this content will be deleted soon.

Lab#8

I'm late. But here you have the lab and the additional file.

Friday, December 7, 2012

Exam Reminder

For those of you living inside a cave, next Monday is the first written exam (out of four).  If you are not living inside of a cave you are expected to take the exam too. So see you all next Monday morning at 10 o'clock in room 1G 0.1.

Some material you may want to have a look at ...



  • Applet to show the relationship between transmission and propagation delay.
  • Applet that shows how packets queue and may eventually dropped.
  • Solved exercises for chapter 1 and 2.


Tuesday, December 4, 2012

Seventh lab: Multiprotocol servers

A multiprotocol server is a server that can handle more than one protocol, for example an echo server that can handle both TCP and UDP clients, or a server who can handle FTP and HTTP.

This lab will introduce you on how to implement them.

Monday, December 3, 2012

TCP congestion control

This week's lecture is about TCP congestion control. A smart mechanism built into each TCP connection to fight against network congestion. You can read sections 3.6 & 3.7 of Kurose's book.

This mechanism can be thought as if the network were performing a flow-control on each connection. Senders should not transmit at a pace high enough for the network to become congested. We will explain how this is achieved with no explicit notification from the network.

While this Thrusday is a holiday, it will be a regular week for us in the subject.