Syllabus
Unit 1
Introduction to the Internet – Services and Protocols – Edge and Core – Packet Switching vs. Circuit Switching – Performance Metrics Delay – Loss – Throughput – Protocol Layers and Service Models OSI and TCP/IP models – Application Layer – Client-Server and Peer-to-Peer architectures – Application Layer protocols – Transport Layer -Unreliable Connectionless vs. Reliable Connection- Oriented Services – Multiplexing – Stop-and-Wait – GoBack-N and Selective-Repeat – UDP vs. TCP – Flow and Congestion Control.
Unit 2
Network Layer – Data plane forwarding vs. Control plane routing -Software Defined Networking (SDN) approach – Network Services – Router architecture – Switching fabrics – Input and output queueing – IPv4 and IPv6 addressing DHCP – NAT – IPv4 and IPv6 fragmentation – SDN based generalized forwarding – Routing an Supporting Algorithms – Link State vs. Distance Vector – RIP – OSPF – BGP – ICMP – SNMP – SDN Control Plane.
Unit 3
Link Layer – Services – Error Detection and Correction – Multiple Access protocols Channel partitioning – Random access – Taking-Turns protocols – Switched LANs ARP – Ethernet – Link layer switching – VLANs – MPLS – Introduction to Wireless and Mobile Networks – Link characteristics – CDMA – 802.11 WiFi – Bluetooth and Zigbee – Cellular Networks – GSM – UMTS – LTE – Mobility management and handoff – Mobile IP.
Lab Component
Socket Programming using Python 3 – Client-Server Application using TCP and UDP services – Building a web server – a HTTP client – an email client – a Ping protocol – Shortest Path Algorithms using Python -Simulation of wireless local – personal and wide area networks using NS2 – Analysis of trace files and inferencing -Building your own protocol in NS2 – Network Health Monitoring using Wireshark packet sniffer.