Computer Networks
Computer Science Department
(Last changed: 27/09/2025 15:09)
Important Notice: Mathematics
Computer Science (Matematica-Informatica) students
that have chosen this class (MLE5002 or MLR5002) should replace it in their
study contracts with MLR5158. The covered topics are not exactly
the same and MLE5002 and MLR5002 require having previously covered
Operating Systems (pre-requisite) in order to follow
this class.
Microsoft
Teams code : miehprs
Lecturer:
Adrian Sergiu DARABANT
Students
use Teams class to write me for administrative things.
Labs:
Adrian Sergiu DARABANT
Ioan-Gabriel
MIRCEA
Diana BORZA
Aurelian SOTROPA
Cristian BRAD
Note: Course lectures will be held on
Microsoft Teams – Computer Networks. Join with code: gr6wwrx
CONSULTATII: 09.06.2013 – 09:30 campus
Error! Hyperlink
reference not valid. (NEW)
Error! Hyperlink reference not valid. lecture has been already recovered last week when we had
a 4h lecture !
Grades
Course Contents:
- Introductory networking
concepts. Internet. The TCP/IP stack model. Socket programming TCP, UDP
(socket I/O modes)
- The Open System Interconnection
(OSI) model. The Network layer: the IP protocol. IP Addressing (Public and
private). How to setup static routing (Linux/Windows). Helper protocols:
ICMP, ARP, RARP, DHCP. Network address translation (NAT).
- The Transport Layer: TCP and
UDP structure, architecture and features. TCP 3-way handshake, TCP Sliding
Window, TCP Flow Control, Congestion control in Internet.
- The Data Link Layer: framing,
the Ethernet protocol.
- Error detection and correction
in data transmissions.
- The physical layer:
transmission medias, shared channel access methods, the concept of
bandwidth and throughput. Data flow control.
- Routing algorithms and policies
for IP networks.
- Internet protocol security
issues. Examples of protocols based attacks and
their countermeasures: IP, TCP and UDP based (Flood,Syn, DoS, Distributed DoS)
Information:
Course
lectures and laboratories are held weekly. You will be presented number of lab
problems and are advised to solve as many as possible (seeking support from the
lab teacher when needed). The first 6 labs are covering the network programming
Requirements
- Individual laboratory activity
is not directly graded but each student should solve as many problems as
possible from the given set.. During the semester
each student is required to pass two lab tests: one from the programming
section (around lab 6-7)and one from the network
simulation section (lab 13 or 14). The minimum allowed grade is 5.00.
Examination and grading
- Lab activity - the minimum average grade for the lab activity is 5.00.
- Practical examination the minimum grade is 5.00 for each examination.
- Moodle test: The minimum grade for the written exam si
5.00.
Students
failing to obtain the minimum grades at any of these activities will fail this
course.
The final
mark will be a weighted average of the above 3 grades 50% for the labs and 50%
for the test.
References:.
(ask materials during courses or labs)
- A.S. Tanenbaum - Computer
Networks 4th ed., Prentice Hall, 2003
- J. Kurose, K. Ross, Computer Networking: A Top
Down Approach, Addison-Wesley, Editions 2,3,4 2002-2007.(most materials for the theoretical exam)
- Douglas E. Comer,
Internetworking with TCP/IP
- Vol 1- Principles, Protocols,
and Architecture
- Vol 3- Client-Server
Programming and Applications
- G.R.Wright, R. Stevens, TCP/IP Illustrated - vol
1,2, Addison Wesley.
- Matt Naugle, Illustrated TCP/IP
- A Graphic Guide to protocol suite, John Willey & Sons, 1999.
- W. Richard Stevens, Bill
Fenner, Andrew M. Rudoff, UNIX Network Programming Volume 1, Third
Edition: The Sockets Networking API
Textbooks and Resources(Packet Tracer. V7 needs a Cisco account) (teams)
Online Lectures - follow this link (lecture presentations will
be uploaded here)
Other
Resources - links to different useful things
General
Sockets Theory and References
Laboratories:
Lab 0 (introduction)
Create a VMWare Player (workstation)/Virtual Box
virtual machine with the operating system version that you do not currently
have (i.e. users on Windows create a Linux Virtual Machine, Users on Linux
create a Windows virtual machine). Configure the virtual machine with proper
networking (bridged) and development environments that allow you to develop
with: python, php, C/C++. (for the above explanation
MacOS is equivalent with a Linux system)
Requirements: Setup Networking as Bridged and Install
Extensions/Tools in the Virtual Machine. We will use this virtual machine
throughout
Deliverables: prepared and running virtual machine.
Lab 1
Lab
2
Lab
3
Lab
4
Lab
5
Lab 6 – stp-vlans
Lab 7
Lab7
(complex implementation)
Frame
Relay configuration on Cloud-PT and WRT300
router example configuration (Packet Tracer 7 only)
Traceroute
Example with PT Solution
(Try to figure out the solution by yourself)
(html comments)