- Introduction to computer networks: terminology, organization, services, components and structuring principles
- Reliable data transmission
- Quality of service
- Information diffusion
- Names and addresses
- Routing: principles and algorithms
- Fundamentals of TCP/IP networks
- Fundamentals of communication channels in general and Ethernet switched networks
- Understand the architecture and the internals of computer networks
- Performance indicators and their estimation and measurement
- Understand the transport and network layers impact in networked applications
- Understand how content is diffused
- Transport interfaces and their usage
- Analyze, structure and implement protocols and distributed applications
José Augusto Legatheaux Martins
Weekly - 5
Total - 70
Good acquaintance with programming and operating systems.
José Legatheaux Marins, "Fundamentos de Redes de Computadores - Ilustrado com base na Internet e nos Protocolos TCP/IP," FCT da Universidade Nova de Lisboa, 2018
James F. Kurose and Keith W. Ross, "Computer Networking - A Top-Down Approach," Addison Wesley — Pearson Education, 2012, ISBN-10: 0136079679, 6th Edition
Lectures are intended to support the instructor’s presentation of fundamental issues, as well as discussion of such topics with students. In some lectures, standard problems are solved and discussed and protocols are analyzed.
Programming assignments take place in a computer laboratory and their aim is to solve problems and learn how to build network applications and protocols. These exercises, protocols and applications use the principles presented during lectures.
The evaluation has three components. The first with the weight of 70% and the second with the weight of 30%.
The first is a set of 4 to 6 programming assignments. These assignments may be delivered in groups of up to 2 students. The average of the marking of all assignments (obtaining this average gives "frequência" to the laboratory part of the discipline) must be ≥ 8 marks. The weight of each assignment on their average may be different depending on their difficulty.
The second is a theoretical / practical closed-book test on the full subjects of lectures, or an exam equivalent to this test. The theoretical / practical test will take place at the end of classes or the following week. To succeed in the course, a student must also be marked at least 8 in this component.
All intermediate marks are rounded to one decimal.
The assignments have two markings: the group marking and the individual marking of each group member. The final grade of each student in an assignment takes these two grades into account. Specific rules on the assignments:
0) Maximum possible contribution of each assignment for the final average of their marking:
Assignment 0 0.5
Assignment 1 2.5
Assignment 2 3.5
Assignment 3 3.5
Assignment 4 3.0
Assignment 5 3.5
Assignment 6 3.5
1) Assignments carried out / delivered by more than two students have a final mark of 0 values for all members of the group; the same principle applies if there is plagiarism in carrying out work.
2) If a student misses the individual evaluation of one of the assignments, his maximum global marking on that assignment cannot be higher than 8 marks.
3) Individual evaluations of assignments may take the form of tests, demonstrations or oral presentations; one of these individual assessment activities may cover more than one assignment.
4) If an assignment is delivered after the deadline, its final group evaluation is penalized by 1 mark per day of delay, up to a maximum of 5 days of delay. After that, the group or student fully misses the assignment delivery.
5) In the final marking of this component, there is an individual valuation of the student''s participation on carrying out assignments. This valuation is added to the marking average of all assignments and can go up to 1 mark.
6) All students who obtained "frequencia" in the previous two years should read the respective rules in the Portuguese part.
Computer networks: terminology, organization, services, components and structuring principles (what is a network, application structuring and application protocols: applications and transport requirements, channels, statistical multiplexing, store & forward, packet switching, layered structure, …)
Reliable transmission of information: specific requirements and techniques (Stop & Wait, Quality of service, TCP, Diffusion and FEC - Forward Error Correction)
Names and addresses (designation layers, DNS, IP addresses, MAC addresses). Diffusion of information (HTTP, performance and scalability, ...). HTTP and video content distribution networks
Routing: principles, addressing and most common algorithms. TCP / IP networks and protocols: DHCP, ARP, NAT, IP, IP forwarding
Programs where the course is taught: