Computer Networks Course Page
Computer Networks Course Page
This course covers the prerequisites for undergraduate students to study computer networks. The following content will be covered in the course:
Module 1:
Data Communication Components: Representation of data and its flow Networks, Various Connection topologies, Protocols and Standards, OSI model, Transmission Media, LAN: Wired LAN, Wireless LANs, Connecting LAN and Virtual LAN.
Module 2:
Data Link Layer and Medium Access Sub Layer:
Error Detection and Error Correction- Fundamentals, Block coding, Hamming Distance, CRC
Flow Control Protocols- Stop and Wait, Sliding Window, Piggybacking
Error control protocols- Go back – N ARQ, Selective Repeat ARQ
Random Access, Multiple access protocols- Pure ALOHA, Slotted ALOHA, CSMA/CD, CDMA/CA
Module 3:
Network Layer: Switching, Logical addressing – IPV4, IPV6; Address mapping – ARP, RARP, BOOTP and DHCP–Delivery, Forwarding and Unicast Routing protocols.
Module 4:
Transport Layer: Process to Process Communication, User Datagram Protocol (UDP), Transmission Control Protocol (TCP), SCTP Congestion Control; Quality of Service, QoS improving techniques: Leaky Bucket and Token Bucket algorithm.
Module 5:
Application Layer: Domain Name Space (DNS), DDNS, TELNET, EMAIL, File Transfer Protocol (FTP), WWW, HTTP, SNMP, Bluetooth, Firewalls
$ sudo apt update
$ sudo apt install g++ python3 cmake ninja-build git gir1.2-goocanvas-2.0 python3-gi python3-gi-cairo python3-pygraphviz gir1.2-gtk-3.0 ipython3 tcpdump wireshark sqlite sqlite3 libsqlite3-dev qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools openmpi-bin openmpi-common openmpi-doc libopenmpi-dev doxygen graphviz imagemagick python3-sphinx dia imagemagick texlive dvipng latexmk texlive-extra-utils texlive-latex-extra texlive-font-utils libeigen3-dev gsl-bin libgsl-dev libgslcblas0 libxml2 libxml2-dev libgtk-3-dev lxc-utils lxc-templates vtun uml-utilities ebtables bridge-utils libxml2 libxml2-dev libboost-all-dev
Now unzip or untar the ns-allinone-3.38.tar.bz2 to the home folder.
Now we need to install it by running the command
Open a new terminal
$ cd ns-allinone-3.38/
$ ./build.py --enable-examples --enable-tests
Behrouz A. Forouzan, , “Data Communication and Networking”, McGraw-Hill, 4th Edition, 2011.
Andrew S. Tanenbaum, “Computer Networks”, Pearson New International Edition, 8th Edition, 2013.
William Stallings, “Data and Computer Communication”, Pearson Prentice Hall India, 8th Edition.