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.

Course Policies

Course policies page