Computer Networks

This course covers various important topics that represent the core of computer networking. Rather than accepting existing artifacts as is, students understand why networks look like they do. This course discusses the "whys" behind the network protocols and help students see the big picture of networking. Topics include:
  • Introduction to computer networks and the Internet.
  • Application layer: Web and HTTP, online gaming, FTP, SMTP, DNS, P2P
  • Socket Programming with TCP and UDP
  • Transport protocols: User Datagram Protocol (UDP), Transport Control Protocol (TCP), TCP Connection Establishment, TCP Flow Control, TCP Congestion Control
  • Network layer: router structure, DHCP, NAT, IPv4, IPv6, ICMP, routing algorithms: Link-State, Distance Vector, RIP, OSPF, CIDR, subneting, supernetting, BGP.
  • Data link protocols issues: error detection, MAC, ARP, Ethernet, switching, PPP
  • Wireless and Mobile Networking: CDMA, Wi-Fi 802.11 cellular, mobile IP Handoffs in GSM.
  • Fundamentals of Mobile and Pervasive Computing.
  • Research issues that are currently being debated in the research community

    In this course students explore the behavior, scalability, and performance of the protocols covered through OPNET or Wireshark. OPNET is a simulation toolset that is widely used in the networking community for both teaching and research. Wireshark is the most commonly used network analyzer.

    Course announcements, power point lectures, homework, demos...etc. are on Blackboard