Course Highlights
  • IP Protocol
  • TCP Protocol
  • UDP Protocol
  • Understand the circumstances where requests and responses are slowed down
  • Learn how DNS works
  • Learn how TLS works
  • Learn the building blocks of TCP/IP Protocol
  • Learn the OSI Model and where your application fits in it
  • Understand the performance impact of TCP/IP in Backend applications
  • Make better decisions on what protocol to select for the Backend
  • Build and Design better TCP/UDP Backends
  • Use Wireshark to inspect traffic
  • Use TCPDUMP to inspect traffic
  • Build TCP and UDP Servers with multiple languages (Javascript and C)
  • Networking with Docker
Curriculum

4 Topics
Welcome
Who is this course for?
Course Outline
Download Course Slides and resources here

4 Topics
Client - Server Architecture
OSI Model
Host to Host communication
Quick Quiz

8 Topics
The IP Building Blocks
IP Packet
ICMP PING TraceRoute
ARP
Capturing IP ARP and ICMP Packets with TCPDUMP
Routing Example
Quick Quiz - IP
Private IP addresses (Alaska Airlines WIFI example)

6 Topics
What Is UDP?
User Datagram Structure
UDP Pros & Cons
UDP Server with Javascript using NodeJS
UDP Server with C
Capturing UDP traffic with TCPDUMP

11 Topics
What is TCP?
TCP Segment
Flow Control
Congestion Control
Slow Start vs Congestion Avoidance
NAT
TCP Connection States
TCP Pros and Cons
TCP Server with Javascript using NodeJS
TCP Server with C
Capturing TCP Segments with TCPDUMP

3 Topics
Networking Protocols Introduction
DNS
TLS

12 Topics
What is this section?
MSS vs MTU vs PMTUD
Nagle's Algorithm's Effect on Performance
Delayed Acknowledgment Effect on Performance
Cost of Connection Establishment
TCP Fast Open
Listening Server
TCP Head of line blocking
The importance of Proxy and Reverse Proxies
Load Balancing at Layer 4 vs Layer 7
Network Access Control to Database Servers
Networking with Docker

5 Topics
Wiresharking UDP
Wiresharking TCP/HTTP
Wiresharing HTTP/2 (Decrypting TLS)
Wiresharking MongoDB
Wiresharking Server Sent Events

2 Topics
Should Layer 4 Proxies buffer segments?
How does the Kernel manage TCP connections?

1 Topic
Course Summary

5 Topics
Exposing local servers publicly
The Networking behind clicking a link
What is SNI? (Server Name Indication TLS Extension)
Replacing TCP for Data Centers (Part 1)
Replacing TCP for Data Centers (Part 2)

  Write a Review

Fundamentals of Network Engineering

Go to Paid Course