Course : Computer Networks(IT-3001)
Session : Autumn Odd Sem 2019
School of Computer Engineering
KIIT Deemed to be University
1
Course Coverage
• Day -1(02/07/2019)
– What is a Network?
– What is a computer Network?
– Comparison of a transport Network with computer Network.
– Why to use computer Network?
– Use of computer Network at various level like personal, business etc.
– Basic hardware(End-device,NIC Card,Communication Link,Router/Switch) and software requirements
for communication in Computer Network.
• Day -2 (03/07/2019)
– What are the goals of computer network i.e. efficiency, robustness, and scalability?
– How to achieve these network goals through design of hardwares and softwares(protocol)?
– How to measure the goals set for computer network is achieved or not through throughput, latency(processing,
queuing, transmission, and propagation) etc.
• Day -3 (05/07/2019)
– Tutorial 1 - solved problems on throughput, transmission and propagation delays in communication
network.
• Day -4 (08/07/2019)
– Comparison of Postal and Computer Network system for the communication of a Packet.
– Need of Layering structure in Computer Network.
– ISO-OSI model Vs TCP/IP stack.
– Functionality of each layer in TCP/IP stack.
• Day -5 (09/07/2019)
– Need of encapsulation and decapsulation of packets.
– Various protocols working in different layers.
– Different types of computer networks(PAN,LAN,MAN,WAN) w.r.to geographical area.
– Various topologies (Bus,Star,Ring,Mess,Tree) used in computer networks.
• Day -6 (11/07/2019)
– Overview of different types of Application architectures (client-server, peer-to-peer, hybrid) with exam-
ples.
– Various types of transport services available to applications (reliability, throughput, timing, security).
– Services provided by Transport Layer to Application Layer of TCP/IP stack.
• Day -7 (12/07/2019)
– Role of DNS.
– Services provided by DNS(host-name to IP address mapping, host-aliasing, mail-server-aliasing, load
distribution).
2
– Underlying Transport Layer protocol used and the well known port number DNS server runs in.
– Various DNS domains(Generic,CountrySpecifc,Reverse).
– Centralized vs hierarchically distributed DNS implementation.
– Architecture of DNS using iterative and recursive search?
• Day -8 (15/07/2019)
– Various types of records maintained by DNS (A, NS, MX, CNAME etc.).
– Rules for maintaining those records at various DNS servers.
– Illustration of various records maintained by various servers with an example.
– DNS Message format.
• Day -9 (16/07/2019)
– What is HTTP and it’s functionality?
– Underlying Transport Layer protocol used and the well known port number FTP server runs in.
– URL and it’s component.
– Persistent vs non-persistent HTTP connection.
– Calculation of response time for downloading a web page with multiple object embedded into it using
persistent and non-persistent connection.
• Day -10 (18/07/2019)
– HTTP request and response message format.
– Proxy Server and it’s advantage.
– Stale Cache Problem with proxy cache and how to alleviate the same.
– Why Cookies?
– How cookies are maintained at both client and server to behave the HTTP as a state-full protocol.
• Day -11 (19/07/2019)
– What is FTP and it’s functionality?
– Underlying Transport Layer protocol used and the well known port number FTP server runs in.
– In-band and out-of-band communication.
– Overview of the protocol and how it works.
– Various commands and responses used in FTP.
– Active and Passive mode of communication in FTP and the need of it.
– Demonstration of how FTP works.
• Day -12 (22/07/2019)
– Need of PUSH and PULL protocol for e-mail communication.
– Overview of SMTP, POP3, IMAP protocol used for e-mail communication.
– Major components of e-mail(UA,MTA,MAA,MailBox,MessageQueue).
– Architecture of e-mail communication using the above mentioned components.
• Day -13 (23/07/2019)
– Various mail messages and responses exchanged in SMTP during e-mail communication.
3
– Need of MIME and its functionality.
– Various MIME headers.
• Day -14 (25/07/2019)
– What is P2P and how it is different from client-server architecture.
– Distribution time of P2P vs client-server architecture.
– Explain how Bit-torrent works which is an example of a p2p network.
• Day -15 (26/07/2019)
– Functionality of Transport layer.
– What is Multiplexing/Demultiplexing.
– Connectionless vs connection oriented demultiplexing.
– What is UDP?
– Functionality of UDP protocol.
– Why to use UDP though it is connection-less?
– UDP Segment format.
– Use of Pseudoheader for checksum calculation.
– Why UDP provides checksum though underlying Link-layer provides error checking?
• Day -16 (29/07/2019)
– Requirements for Reliable Data Transfer i.e. flow control and Error Control.
– Overview of Protocols for noiseless channel.
∗ without flow control
∗ with flow control (i.e. Stop-and-wait protocol)
– Overview of Protocols for noisy channel.
∗ with flow control and error control (i.e. Stop-and-wait ARQ).
∗ with flow control, error control, and support of sending multiple packets before receiving the ac-
knowledgement(i.e. Go-back-N ARQ).
∗ with flow control, error control, support of sending multiple packets before receiving the acknowl-
edgement, and handling out of order packets (i.e. Selective Repeat ARQ).
– How Stop-and-wait protocol works?
– Efficiency of Stop-and-wait protocol.
• Day -17 (30/07/2019)
– Solving Problems in Stop-and-wait protocol w.r.to efficiency.
– Use of Sequence Number and it’s range Stop-and-wait ARQ.
– How Stop-and-wait ARQ works with example?
• Day -18 (01/08/2019)
– Problem associated with Stop-and-wait ARQ.
– Significance of Sequence Number, send window, and receive window size in Go-back-N ARQ.
– Type of Acknowledgement used in Go-back-N ARQ.
– How Go-back-N ARQ works in various scenarios using the concept of sliding window?
4
• Day -19 (02/08/2019)
– Problem associated with Go-back-N ARQ.
– Send window and receive window size in Selective Repeat ARQ.
– Type of Acknowledgement used in Go-back-N ARQ.
– How Selective Repeat ARQ works in various scenarios using the concept of sliding window?
• Day -20 (05/08/2019)
– Efficiency of Go-back-N and Selective Repeat ARQ.
– Comparison of Stop-and-wait, Go-back-N, and Selective Repeat ARQ w.r.to the following parameters.
∗ Efficiency
∗ Buffers
∗ Sequence Numbers
∗ Retransmission
∗ Bandwidth
∗ Ack Supported
∗ CPU
– Real time use of Go-back-N and Selective Repeat ARQ in computer network communication.
• Day -21 (06/08/2019)
– What is TCP?
– Services provides by TCP.
– TCP Segment format.
– TCP Connection Management.
∗ 3-way handshaking for connection establishement
∗ 3-way/4-way connection tear-down
• Day -22 (08/08/2019)
– Illustration of the TCP State transition diagram.
– Significance of TIME WAIT state and 2MSL timeout.
– Demonstration of various state changes in a TCP client/server program through “netstat” command.
• Day -23 (09/08/2019)
– Significance of send and receive window in TCP.
– What is flow control?
– How it works in TCP with Examples.
– What is Error control?
– How it works in TCP with Examples.
• Day -24 (13/08/2019)
– What is congestion and why it occurs?
– How to handle this congestion?
– Congestion control using slow start.
5
– Congestion control using AIMD.
– Congestion control in TCP.
• Day -25 (16/08/2019)
– Tutorial on Transport Layer Implementation.
• Day -26 (19/08/2019)
– Network layer Overview.
– Services provided by Network Layer.
– IP datagram format and each field description.
– why fragmentation and reassemby? How it is being managed by IP layer.
• Day -27 (20/08/2019)
– Various components of a router.
– Functionality of each component of the router.
– 1st Gen, 2nd Gen, and 3rd Gen router. Their merits and demerits.
– Factors responsible for the performance of a router.
• Day -28 (22/08/2019)
– Flat and hierarchical IP Addressing.
– How hierarchical IP Addressing helps in reducing forward table entries.
– Various classful networks (class A,B,C etc.) and private IP Addresses.
– How forwarding of packet works at host and routers.
• Day -29 (05/09/2019)
– Inefficiency of classful IP Address.
– What is subnetting.
– How the IP Address inefficiency is addressed using subnetting through examples.
– more problem solving on subnetting.
• Day -30 (06/09/2019)
– What is VLSM and how to design the subnet for VLSM through examples.
• Day -31 (10/09/2019)
– How to obtain IP Address?
– Different protocols for assigning IP Address dynamically.
– What is DHCP and how it works?
• Day -32 (13/09/2019)
– Tutorial on sub-netting.
• Day -33 (14/09/2019)
– What is NAT and why it is needed?
6
– How NAT works?
– What is Port Address Translation(PAT) and how it works?
• Day -34 (16/09/2019)
– What is ARP and why it is needed?
– How it works?
– Packet format of ARP.
– what is Gratuitous ARP and its usage.
• Day -35 (17/09/2019)
– What is ICMP and when it is needed?
– ICMP Message format.
– Application of ICMP (i.e. ping and traceroute).
• Day -36 (19/09/2019)
– What is the motivation behind IPv6.
– IPV6 datagram format.
– comparision of IPv4 and IPv6 header.
– How IPv6 header helps in faster packet processing and forwarding.
• Day -37 (20/09/2019)
– Routing vs forwarding.
– Goal of routing.
– Various implementation approach to routing (i.e. static vs dynamic, central vs distributed, and local vs
global knowledge)
– varoious categories of routing protocols.
• Day -38 (23/09/2019)
– What is link state routing algorithm and how it works?
– Calculating shortest path using Dijkstra’s algorithm through examples.
– Implementation of link state routing in Internet i.e. OSPF.
• Day -39 (24/09/2019)
– What is distance vector routing algorithm and how it works?
– link state vs distance vector routing algorithm.
– Implementation of distance vector routing in Internet i.e. RIP.
• Day -40 (26/09/2019)
– Why hierachical routing is needed?
– How hierarchical routing works using both inter and intra AS routing algorithm?
– How to choose among multiple AS through example.
• Day -41 (27/09/2019)
7
– Tutorial on routing
• Day -42 (30/09/2019)
– Overview of Datalink Layer.
– Link layer protocols(i.e. point-to-point, broadcast).
– Services provided by LLC and MAC sub-layer.
– Details of various Error Detection mechanism (Parity, checksum, CRC).
• Day -43 (01/10/2019)
– various ways to control Error (Error Correction vs Retransmission).
– Error correction using Hamming code through example.
• Day -44 (04/10/2019)
– Role of MAC sub-layer.
– Goal of MAC protocol.
– Various categories of MAC protocols.
∗ Random Access
∗ Controlled Access
∗ Scheduled Based
– Various Scheduled Based protocols ( TDMA, FDMA, CDMA)
– Various Controlled Access protocols ( polling, Token passing)
– Usage of various MAC protcols.
• Day -45 (14/10/2019)
– Various Random Access protocol.
∗ Working principle of Pure Aloha.
∗ Working principle of Slotted Aloha.
∗ performance comparision of pure aloha and slotted aloha.
∗ working principle of CSMA.
∗ 1-persistent, non persistent, and p-persistent CSMA working principle.
∗ performance comparision of the CSMA variants and their usage.
∗ working principle of CSMA/CD and its performance.
• Day -46 (15/10/2019)
– Ethernet overview.
– Problem with bus topology used initially in ethernet.
– Advantage of using star topology used in ethernet.
– switching in ethernet using Hub vs Switch.
– How switch table is built gradually.
– What is VLAN and its use?
– Ethernet frame structure and adress.
• Day -47 (17/10/2019)
8
– Wireless link characterstics.
– Goal of MAC protocol in wireless link.
– what is hidden and exposed terminal problem in wireless link?
– How to resolve these problems in wireless link?
– CSMA/CA algorithm used for wireless link.
• Day -48 (18/10/2019)
– Tutorial on demonstration of wireshark packet analyzer tool.
• Day -49 (21/10/2019)
– What is Software Defined Networking (SDN).
– SDN architecture and it’s usage.
– scope of reasearch in SDN.