Computer Networks 2019
CSC 330 - Computer Networks, CSC 331 - Computer Networks Lab
Lecture: 2:30 - 4:00 PM Mon and Fri, GICT 107
Lab: 2:30 - 5:30 PM Tue and Thu, GICT 210
Instructor: Shashi Prabh
Email: shashi.prabh@ahduni
Office: GICT 131
Office hour: 4-5 PM Mondays and Tuesdays, or by appointment
TA: TBA
Email: TBA
Prerequisites
Programming in C
Description
This is a first course on computer networks. The course introduces the fundamentals of computer networking and a number of protocols. The course introduces the physical layer and gives in-depth understanding of data link, network and transport layers. It describes the functionalities as well as the protocols pertaining to these layers. The course describes the architecture and some of the main protocols used in the Internet. It also introduces wireless networks, cloud computing, Internet of Things, network security and software defined networking.
Course content
Brief historical perspective
Layered architecture and OSI
Performance metrics
Physical layer basics
Data link layer protocols, multi-access links, switches
IP
Routing
Switching fabrics
Transport protocols
Congestion control and avoidance
Multicast
MPLS
Mobile networking
Quality of service
Network security
Software defined networking
Books
Textbook
Computer Networks: A Systems Approach, Larry L. Peterson and Bruce S. Davie, 5th edition, MK Publishers, 2011 (Available online here.)
Supplementary reading
Computer Networks, Andrew Tanenbaum and David Wetherall, 5th edition, Pearson, 2011
Another very good textbook
An Engineering Approach to Computer Networking, S. Keshav, Addison-Wesley, 1997
Basic concepts are described very well though the book is somewhat dated.
Data Networks, Dimitri P. Bertsekas and Robert G. Gallager, 2nd Edition, Prentice Hall, 1992
Classic advanced level text. Authors have made the book available online here.
Unix Network Programming, Vol. 1: The Sockets Networking API, Stevens, Fenner and Rudoff, 3rd edition, Addison-Wesley Professional, 2003
Grading
Lecture section
Quizzes: 10%
Assignments: 10%
Mid-term exam: 35%
Final exam: 40%
Class participation: 5%
Lab section
Lab exercises: 30%
All lab exercises are mandatory even though submitted late. Failing to submit reports: -5% penalty per report
Project: 40%
Lab exam: 30% (Passing the exam is mandatory)
Helpful Advice (Expectation from students)
Pay attention and take notes! Get doubts cleared during the lecture itself -- do not hesitate to ask questions in class. Before coming to a lecture review your notes and scan the portion of the textbook that will be covered (see the course calendar page here). Do assignments on your own. If you happen to miss some session(s), do talk to someone in the class or the TA to find out the topics covered and any announcement made.