Computer Networks
Computer Science
Department
(Last changed: 07/10/2023
10:10)
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
Tudor SOMESAN
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) (open it in Windows Explorer with \\ in front of the
address)
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)