Computer Networks Course

Free online course · 8 lessons

Study the internet top-down: application protocols, TCP and UDP, congestion control, IP forwarding and routing, the link layer and wireless access, and network security. After the course you can explain and reason about the behavior of networked applications.

By Studeli

Start with lesson 1

What you will learn in 8 lessons

Every lesson includes all nine study tools

  • Study Guide
  • Summary
  • Walkthroughs
  • Practice Questions
  • Flashcards
  • Explain It
  • Key Terms
  • Cheat Sheet
  • Concept Map
  1. Explain how access networks, packet switching and the network of ISPs carry data, and calculate delay, loss and throughput.

    5 learning goals
    1. 1.Describe how devices connect at the network edge
    2. 2.Compare packet switching and circuit switching
    3. 3.Explain how ISPs form a network of networks
    4. 4.Calculate delay, packet loss and throughput
    5. 5.Measure network paths with traceroute
  2. Explain how application protocols such as HTTP, DNS and SMTP work, compare client-server and peer-to-peer designs and write simple socket programs.

    6 learning goals
    1. 1.Explain how networked applications are organized and what they need from the network
    2. 2.Explain how the web delivers pages with HTTP
    3. 3.Explain how DNS translates names into addresses
    4. 4.Explain how email is sent, delivered and read
    5. 5.Explain how large-scale content is distributed
    6. 6.Write simple client and server programs with sockets
  3. Explain multiplexing, UDP and the principles of reliable data transfer, and describe how TCP manages connections, sequence numbers and flow control.

    5 learning goals
    1. 1.Explain what the transport layer does for applications
    2. 2.Use UDP and judge when it fits
    3. 3.Build reliable data transfer from first principles
    4. 4.Explain how TCP sets up connections and numbers its data
    5. 5.Explain how TCP delivers data reliably and matches the receiver's pace
  4. Explain the causes and costs of congestion and how TCP congestion control algorithms share bandwidth fairly.

    6 learning goals
    1. 1.Explain why networks become congested and what congestion costs
    2. 2.Explain how TCP's classic congestion control adjusts its window
    3. 3.Analyze how competing flows share a bottleneck fairly
    4. 4.Explain how routers signal congestion before their buffers overflow
    5. 5.Compare modern congestion control algorithms: CUBIC and BBR
    6. 6.Explain how QUIC carries congestion control into a new transport
  5. Explain how routers forward packets, how IPv4 and IPv6 datagrams are structured and how NAT and generalized forwarding work.

    5 learning goals
    1. 1.Explain how a router moves packets toward their destination
    2. 2.Read and reason about IPv4 datagrams
    3. 3.Explain how DHCP and NAT connect hosts to the internet
    4. 4.Compare IPv6 with IPv4 and explain the transition
    5. 5.Explain generalized forwarding, SDN and middleboxes
  6. Compute routes with link-state and distance-vector algorithms and explain how OSPF, BGP and SDN controllers build forwarding tables.

    6 learning goals
    1. 1.Compute routes with link-state and distance-vector algorithms
    2. 2.Route inside an autonomous system with OSPF
    3. 3.Route between networks with BGP
    4. 4.Explain how an SDN controller builds forwarding tables
    5. 5.Report errors and test paths with ICMP
    6. 6.Manage networks with SNMP, NETCONF and YANG
  7. Explain error detection, multiple access protocols, Ethernet switching, ARP and VLANs, and how Wi-Fi and cellular networks connect mobile hosts.

    6 learning goals
    1. 1.Explain what the link layer does and detect transmission errors
    2. 2.Share one channel with multiple access protocols
    3. 3.Address and switch frames in Ethernet LANs
    4. 4.Explain data center networks and follow a web request through every layer
    5. 5.Explain how wireless links and Wi-Fi networks work
    6. 6.Explain how cellular networks connect and move mobile users
  8. Explain how cryptography provides confidentiality, integrity and authentication in network protocols, and how TLS, IPsec, firewalls and intrusion detection protect networks.

    6 learning goals
    1. 1.Use cryptography to keep network messages confidential
    2. 2.Protect message integrity and prove who is communicating
    3. 3.Secure TCP connections with TLS
    4. 4.Protect IP traffic with IPsec and VPNs
    5. 5.Secure wireless access in Wi-Fi and cellular networks
    6. 6.Defend networks with firewalls and intrusion detection

Make your own Study Materials

Turn your notes, slides and documents into Study Guides, Practice Questions, Flashcards and 6 more tools.

Get Started