Instance: 2019/2020 - 1S
Cycles of Study/Courses
Teaching Staff - Responsibilities
Teaching - Hours
This is an introductory course on data communication networks aimed at familiarizing the students with their fundamental concepts, based on the Internet and the TCP/IP protocol stack.
Learning outcomes and competences
By completing this course, students will gain (1) an understanding of the basic principles of data communication networks; (2) an overview of the main technologies used in computer networks; (3) an understanding of the TCP/IP protocol stack, the functions of its different layers and of the protocols implementing them; (4) an overview of internetworking principles; (5) the basic skills necessary to write network applications using sockets; (6) the foundation for more advanced courses in the area of communication networks.
Introduction to data communication networks and the Internet: network architectures, protocols, circuit and packet switching, packet delay and losses, OSI and TCP/IP protocol stacks. Application Layer: client-server, peer-to-peer and hybrid models; HTTP, FTP and email; DNS; socket programming with TCP and UDP (clients, different types of servers). Transport Layer: multiplexing/demultiplexing, UDP, reliability, throughput, latency and pipelining, TCP — connection management, flow and congestion control. Network Layer: virtual circuits and datagrams, IP, ICMP, DHCP, NAT, routing algorithms - DV and LS, intra-AS and inter-AS routing protocols (RIP, OSPF, BGP), broadcast and multicast routing. Link Layer: error detection and correction, medium access, MAC addressing, ARP, Ethernet, network devices (hubs, bridges, switches, routers), wireless networks specifics.
Kurose James F.; Computer networking
. ISBN: 978-0-273-76896-8
Teaching methods and learning activities
Lectures: exposition of the subjects illustrated with examples
Practical classes: problem resolution and discussion, some programming assignments.
Distributed evaluation without final exam
|Trabalho prático ou de projeto
Amount of time allocated to each course unit
|Elaboração de projeto
Eligibility for exams
To be eligible to pass, students must attend the practical classes, not missing more than 1/4 of them, and take at least 2 out of the 3 tests.
Calculation formula of final grade
The final grade is obtained 10% from the programming assignment and 30% from each of the tests.
Special assessment (TE, DA, ...)
Same as other students, except for the need to attend the practical classes.
At the end of the semester, students students can retake one of the tests. Since assessment is distributed without final exam, there will be no supplementary or grade improvement exams.
Lectures and course materials are in Portuguese only. Non-portuguese-speaking students may eventually enroll, since the textbook is in English, but they will have to do a considerable amount of autonomous studying.