Wednesday, December 17, 2014

Network in-Security

This last class we will continue with Chapter 5. I would like you to read a couple of news that will give you a better insight on the type of issues that may be at stake when we discuss network security:

The more recent discusses some details about latest Sony Pictures network trespassing. The second one tells you the story of how a company fought back in an extortion case.

Tuesday, December 9, 2014

Projects' Presentations

Today we start presentations of the projects in the lab. I have done a bit of homework and I have created this simple tool so you can mark your classmates presentations online from lab's computers.

Friday, November 28, 2014

Programming project deadline

This is to remind you programming projects are due December 8th. You can upload your source code, presentation/explantion and readme file packed as a zipfile to PoliformarT account (or email it to me if that does not work).

December 9th, 10th, 16th and 18th lab sessions will be used for you to present to your classmates your project. If needed you can use the lab computer or your own laptop for presenting your work.

Each presented project has to include all the source code and a small text explaining how it works and how to get it working (the type of info other student would need to get it working). You can do a PowerPoint for your presentation but it is not a requirement. Do not forget to include the name of the group members in the package.

Students have to come to the lab even if they already presented their project as they have to rate the work of other students too.

Tuesday, November 18, 2014

UDP lab

Sixth lab presents UDP sockets. InetAddress, DatagramSocket and DatagramPacket are the topics of this lab. Contrary to TCP, there is no difference here for servers or clients (as there is no connection in UDP).

Monday, November 10, 2014

UDP and netcat

Last lecture it seemed the usual commands were not working in the classroom computer. After checking it out, I guess the culprit was the software firewall of the classroom computer was blocking the UDP traffic.

You can create a listening "server" by typing nc -u -l 7777 and you can "connect" to it by typing nc -u localhost 7777 on another shell window. It did not work in the classroom but it will usually work.


But ... if you use OSX, the above instructions will not work.

On OSX, you have to add the address on the server side for it to work: nc -u -l localhost 7777


Thursday, November 6, 2014

New chapter

According to our program, Chapter 4 matches our textbook's Chapter 3 and it is about TCP and UDP protocols (the Transport Layer).  Tomorrow we will cover sections 3.1,3.2 & 3.3 and next week's lecture will cover section 3.4.

Thursday, October 30, 2014

Finishing chapter two

Tomorrow we will finish chapter two with a few more details about DNS and the peer-to-peer model and how it is a model for applications that scales more easily.

Please note a short written test will be conducted after the break over materials covered in this second chapter.

Sections 2.5 and 2.6 of the book will be covered in tomorrow's lecture.

Monday, October 27, 2014

Chapter 3 taught in the lab in the next five sessions

Starting with third lab, we will be presenting Java network programming using the Sockets interface. You can get the five labs from the file repository (linked on the right-hand side column of the page).

While the exercises should be self-explanatory, the theory will be presented at the beginning of each lab, so you won't miss them. If you are not able to finish any exercise, you may do that at home.

Remember that you can use any environment capable of compiling and running Java code for these exercises (Java 1.5 or newer is recommended).

BTW, a link to what a quoted last Friday about spam. Do not forget to pay attention to the date of the news.

Friday, October 24, 2014

Broadening your project's choices

I am glad to report that Intel is going to supply us some units of Arduino Galileo that you may use for developing your programming project too. As units are limited, please let me know what you will use that hardware for.

This hardware is part of Intel® Galileo University Donations. 

Thursday, October 16, 2014

More news and lab

From time to time some Internet protocols experience security problems. There are time where a fix can be made available while others mean the end of a certain protocol. While we have not yet covered in the classroom, it seems today signals the end of the so-called Secure Socket Layer protocol (SSL in short).

Next week we will have our second lab and we will cover electronic mail in the classroom. Please read section 2.4 of the book by then.

Monday, October 13, 2014

A talk you may like

David Cuartielles is one of the architects of Arduino platform.

David is giving a talk tomorrow evening at ESTINF.

You may like it.

Talk will be in Spanish.

Sunday, October 12, 2014

Labs start on Tuesday

This is to remind you we are starting Lab sessions this week on Tuesday, October 14th.

This Lab#1 will be about TCP/IP configuration and how the lab computers are configured using both Linux and Windows operating systems.

Laboratory is located in the 2nd floor of building 1G side by side with the Operating Systems Lab.

Oops, I made a mistake and provided the wrong Lab above. This is the real first lab document. And no, it does not deal with TCP/IP configuration but with HTTP protocol and how to use Wireshark to capture your web traffic (something that I already suggested in the classroom you did at home).

Friday, September 26, 2014

HTTP protocol

I was reading today how a security problem could be using HTTP as an attack vector to the server. However, we will focus next week on the basic inner working mechanisms of HTTP 1.0 an 1.1 versions. If you already read section 2.2 of the textbook, no further reading is needed.

I hope you all have installed and tested Wireshark program to capture your very own HTTP traffic your computer sends and receives when browsing the 'net. The video below details some of the information you can obtain by capturing HTTP traffic.





Friday, September 19, 2014

Third lecture

Section 1.4 from the textbook was presented (unannounced during second lecture). Next lecture recommended reading is section 2.2 from the textbook. For the reading impaired I have found there is a video of the lecture too. World Wide Web service will be presented as our first case of distributed application. Most likely we will use a couple of lectures to cover the whole thing.

For reviewing Chapter 1 content I have also found Professor Todd Booth video content interesting.

Homework exercises due next Friday

R1. What is the difference between a host and an end system? List the types of end systems. Is a Web server an end system?

R2. What is a client program? What is a server program? Does a server program request and receive services from a client program?

R3. Why is it said that packet switching employs statistical multiplexing? Contrast statistical multiplexing with the multiplexing that takes place in TDM.

R4. How long does it take a packet of length 1,000 bytes to propagate over a link of distance 2,500 km, propagation speed 2.5 · 108 m/s, and transmission rate 2 Mbps? More generally, how long does it take a packet of length L to propagate over a link of distance d, propagation speed s, and transmission rate R bps? Does this delay depend on packet length? Does this delay depend on transmission rate?

Friday, September 12, 2014

Second lecture

Next Friday Chapter 1 will be finished and we wil start Chapter 2: The Application Layer that will
cover different types of distributed applications commonly used on the Internet (like World Wide Web, e-mail or Domain Name System). Please read section 2.1 of the (5th Ed) Kurose's Computer Networks for next class. Do make any question you have a as a comment to this blog entry.

Summarizing today's class you can read sections 1.1, 1.2 and 1.3 of the same book.

I forgot to mention that you can reach me at my office 2N6, building 1G, by appointment.

Please note Labs will not start till Tuesday October 14th due to the course structure (15x 2h lectures + 10x 1.5h labs each term).

Wednesday, September 10, 2014

Welcome to the 2014-15 Computer Networks course

Next Friday we are starting the new course. Information will be provided then about all you may care about the subject: program, assessment, passing requirements, etc.

It seems this year we are a smaller group than last year though you have two choices for the labs. Apparently the school expected the group to grow but it shrink instead.

Anyway, see you all in the classroom next Friday September 12th.



Wednesday, June 25, 2014

Final marks

Retake exam has been marked. You can check your grading here. This completes these year's schedule and the final mark column is what you will get.

If you detect any error please let me now.

In a few days these marks will become official.

Have a nice summer, have fun and work not too much.

Friday, June 20, 2014

Reminder

Please do not forget to submit the source code of the second term project. Otherwise, those points from the project will be removed from your mark. Those who have completed the task have their LAB mark with dark green color. Those with a black ink color in the mark are still to turn in their code.

Next week the second term re-take will take place on Tuesday 24th morning at 10am. Anyone can come and have a look at the exam, but those turning it in for grading will obtain whatever mark they achieve in this last exam whether it is a higher or lower value than what you obtained in the first attempt.

Friday, June 13, 2014

Second term exam is now marked

Marks are out. Exam was not bad and final marks are published too. All in all not a bad year. Still some of you did not make it this time. Remember there is a re-take exam next June 24th morning.

Both, those have failed and those willing to improve their mark, need to know that last mark is the one that will be considered (i.e. if you obtain a lower mark in the re-take than in the previous exam, it is still the last one that counts).

Final marks are assuming you all will turn in the source code of your lab project. Those who fail to provide it before the end of the month will see how that part is removed from their final mark.

For a limited time you can check your examEmail me if you believe there is any error in my grading of your exam detailing the question number number involved and a brief explanation of it.

Solved-exam here.

Note: Final marks have been corrected, as there was an error in the way average of tests and homework was calculated. Changes are minor but now the average of (1,null,null) is actually 1/3 and not 1.

Monday, May 26, 2014

Homework problems

From Kurose's book Chapter 5, solve problems P13 & P14.

P13. Consider a broadcast channel with N nodes and a transmission rate of R bps. Suppose the broadcast channel uses polling (with an additional polling node) for multiple access. Suppose the amount of time from when a node completes transmission until the subsequent node is permitted to transmit (that is, the polling delay) is dpoll. Suppose that within a polling round, a given node is allowed to transmit at most Q bits. What is the maximum throughput of the broadcast channel?

P14. Consider three LANs interconnected by two routers, as shown in Figure 5.38.

a. Assign IP addresses to all of the interfaces. For Subnet 1 use addresses of the form 192.168.1.xxx; for Subnet 2 uses addresses of the form 192.168.2.xxx; and for Subnet 3 use addresses of the form 192.168.3.xxx.

Figure 5.38 Three subnets, interconnected by routers

b. Assign MAC addresses to all of the adapters.
c. Consider sending an IP datagram from Host E to Host B. Suppose all of the ARP tables are up to date. Enumerate all the steps, as done for the single-router example in Section 5.4.2.
d. Repeat (c), now assuming that the ARP table in the sending host is empty (and the other tables are up to date).

Exercises due to Friday May 30th.

Thursday, May 15, 2014

Winding down

It's only three more lectures to end the semester. Tomorrow's class we will do a short test about Link Layer.

Please note that next week we are back to the lab on Wednesday's mornings for you to present your project to your classmates. Remember ALL of the projects are due to the morning of May 21st and randomly do the presentation at my choosing. Those not presenting the project that day will do it in the next (and last) Wednesday lab.

The recommended reading comes from two books this time. Kurose 1.2.2 & 1.2.3 which was covered in Chapter 1 and William Stallings' "Data and Computer Communications" 8th Ed, sections 3.1, 3.2, 5.1 and 5.2.

Thursday, May 8, 2014

No class this week

This is just a reminder that tomorrow Friday May 9th there will be no class due to a school holiday.

Monday, April 14, 2014

Easter homework

Just to keep you busy during the holidays. Homework is due May, 2nd.


  1. What are some of the possible services that a link-layer protocol can offer to the network layer?  Which of these link-layer services have corresponding services in IP? In TCP?
  2. Suppose two nodes start to transmit at the same time a packet of length L over a broadcast channel of rate R. Denote the propagation delay between the two nodes as dprop. Will there be a collision if dprop < L/R? Why or why not?
  3. Why is an ARP query sent within a broadcast frame? Why is an ARP response sent within a frame with a specific destination MAC address?
  4. Explain what is the Exponential Binary Back-off algorithm used by Ethernet.
  5. Where can you find the 802.1Q VLAN tag in the Ethernet frame format?

Tuesday, April 8, 2014

Last lab

There has been a delay in the development of the last lab so we are forced to keep the last year's lab but maybe other groups will use the new one. Because of that a translated version (of the old one) won't be provided this time. You can pull Lab#8 from the PoliformaT and while the program used has all the menus in English the text is not, so do not hesitate asking me for help if you have any problem.

Tuesday, April 1, 2014

Seventh lab: IPTABLES

You can grab the lab text here. IPTABLES is a framework to create a set of rules governing how network traffic is handled by the OS. You can think of it as a software firewall.

Next class Ethernet will be present with some detail. Please read sections 5.5 & 5.6 of the textbook.

Only one additional lab is left.  Next two lab sessions will be for presenting the programming projects. That may happen in the next two Wednesdays after lab#8 or we can use the last two weeks of the term. Is up to you. We can discuss this next Friday. Please note that what is decided will affect the due date of the programming projects.

Tuesday, March 25, 2014

Sixth lab about ARP and more

Sitxth lab is available here.

Please have a look to sections 5.3 & 5.4 of the textbook before the next lecture.

Results from last homework and test are available on the usual place. Test has not been good. It really worries me as previous chapter is more than half of the content for the second term exam.

Tuesday, March 11, 2014

Fifth lab: NAT

It is already available. This time we will be using a set of canned Wireshark captures you can obtain here.

Thursday, March 6, 2014

Some ideas about possible projects for the second term

As we did for the first term, it works best if each team chooses a topic of their liking. But to guide you a
bit in the process, it is best to focus your attention on the topics of the second term. So here you have some ideas:

  1. General purpose PC to micro-controller communication (USB, serial ports, I2C, SPI, etc). Microcontroller might well be an Arduino board. If you do not have one you should!.
  2. Data transfer of collected data by a data-logger device.
  3. Ethernet communications (again PC-microcontroller, maybe without a TCP/IP stack).
  4. Ethernet packet capture for multiple purposes (miniwireshark).
  5. Use of raw-sockets (that will require C instead of Java, and root access too).
  6. Subnetting/supernetting calculator, maybe web-based
  7. Error control codes.
  8. Signal analysis (frequency domain). 
  9. Modulation and demodulation. Transmission of signals without polarity or DC component. 
  10. Home automation projects.
  11. Mobile apps.
I almost forgot it! 

Please have a look to section 4.5 of the textbook.

Tuesday, February 25, 2014

Third lab

This one is about DHCP protocol and how your computer obtains an IP address from the network. You can get it here.

Thursday, February 20, 2014

Graded retake-exam available

You can check the marked exam here. Please note this link will work just for a few days and later that electronic document will be gone forever (as it already went  the marking of first term exam). The purpose of sharing this is for you to double-check my marking of your exam. Any problem you find, email it to me for being reviewed.

Monday, February 17, 2014

Second lab

Can downloaded from here and it is about IPv4 fragmentation. It is a touchy subject as it is a mechanism that will change quite a bit in IPv6.

Please read Section 4.5 of the book for the next lecture.

Tuesday, February 11, 2014

First lab

First lab is about TCP/IP configuration.  The video below illustrates the way of changing the network configuration on a Windows 7 computer. You will need admin rights to be able to do that on a given computer (that you don't have in the lab's computer).


You have a detailed review of some of the command-line commands that enable you to check and test your network connection in Windows here.

A similar thing but for Ubuntu Linux can be seen in the following video:


And quite more info can be found in the this document.


Tuesday, February 4, 2014

IP protocol

Next class we will continue dealing with IP protocol details. Please have a look to sections 4.4, 4.4.1 & 4.4.2 of the book.

Thursday, January 30, 2014

And we are back ...

See you guys tomorrow (January 31st) in the classroom.  Classes are back to normal and labs will start
on February 12th. We will start with book's chapter 4: The Network Layer about IP protocol and routing.

Please note that many of you still have to submit the source code of your project to me, together with the few lines describing the program. This is a requirement to keep your mark (and will allow me to verify you did the right thing). Failing to do this before February 14th will mean the cancellation of your mark in the lab. Those with the public presentation still pending need to get up to speed to do it ASAP. 

Friday, January 17, 2014

1st term exam marks are out

You can find them in the usual marks page. You can check both the exam mark (it appears in yellow bachground) and the final mark in purple font. Please be reminded that our pass mark is 5.00 points.

Marked exams are available online (for a limited time) and you can send me any request or correction that needs to be made by email.


Solved by hj43us

Thursday, January 9, 2014

Last lecture tomorrow

We will finish chapter 5. You can read sections 8.3, 8.4 & 8.5 from the book. If time is available, we will have a short test at the end of the lecture.