Skip to content

The first course on computer networks. Includes the basics of computer networking, various protocols, socket programming, etc. Topics covered include physical layer (wired and wireless), medium access control and data link layers, packet switching and routing (IP), routing protocols, transport layer (TCP, UDP), congestion and flow control.

Notifications You must be signed in to change notification settings

MorganBergen/computer-networks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Computer Networks

Description

The first course on computer networks. Includes the basics of computer networking, various protocols, socket programming, etc. Topics covered include physical layer (wired and wireless), medium access control and data link layers, packet switching and routing (IP), routing protocols, transport layer (TCP, UDP), congestion and flow control, basic network security, and network applications.

Sections

  1. introduction
  2. application layer
  3. transport layer
  4. network later data plane
  5. network layer control plane

Learning Outcomes

  1. Describe the functionality of networking protocols such as TCP, ICMP, IP, and routing protocols.
  2. Analyze the efficiency of networking protocols by applying concepts from probability theory and statistics.
  3. Understand algorithms and computer programs to implement the functionality of networking protocols.
  4. Understand programs using state-of-the-art network and socket programming APIs.

Textbook

Computer Networking: A Top-Down Approach (8th Edition) J.F. Kurose, K.W. Ross, Pearson, 2020

Weekly Schedule

  1. Introduction to Computer Networks and Internet
  2. Application Layer: Principles of Network Applications, HTTP, SMTP, DNS, P2P, Video Streaming and Content Distribution Networks and Socket Programming (Chapter 2)
  3. Application Layer: Principles of Network Applications, HTTP, SMTP, DNS, P2P, Video Streaming and Content Distribution Networks and Socket Programming (Chapter 2)
  4. Transport Layer: Introduction, Multiplexing and Demultiplexing, UDP, Principles of Reliable Data Transfer, TCP, Principles of Congestion Control, TCP Congestion Control, Evolution of Transport Layer Functionality (Chapter 3)
  5. Transport Layer: Introduction, Multiplexing and Demultiplexing, UDP, Principles of Reliable Data Transfer, TCP, Principles of Congestion Control, TCP Congestion Control, Evolution of Transport Layer Functionality (Chapter 3)
  6. Network Layer: The Data Plane: Overview, Switching fabics, Buffers, Packet Scheduling, IPv4, NAT, IPv6, Generalized
  7. Network Layer: The Data Plane: Overview, Switching fabics, Buffers, Packet Scheduling, IPv4, NAT, IPv6, Generalized forwarding, Middleboxes (Chapter 4)forwarding, Middleboxes (Chapter 4)
  8. Network Layer: The Control Plane: Introduction, Link-State and DIstance-Vector routing, algorithms, Intra-AS Routing (OSPF), Routing Among the ISPs (BGP) (Chapter 5)

Homework Assignments

  1. Homework 1
  2. Homework 2
  3. Homework 4
  4. Homework 5

Tentative Dates

  1. Quiz 1 - June 24 2024
  2. Quiz 2 - July 22 2024
  3. Exam 1 - July 05 2024
  4. Exam 2 - July 26 2024

About

The first course on computer networks. Includes the basics of computer networking, various protocols, socket programming, etc. Topics covered include physical layer (wired and wireless), medium access control and data link layers, packet switching and routing (IP), routing protocols, transport layer (TCP, UDP), congestion and flow control.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages