Resources
Virtual Machines
- Virtual Machine Configuration (VMware and Ubuntu Linux)
Labs
Lecture Slides
# | Topic |
---|---|
1 | Welcome & Introduction |
2 | Overview of Computer Networking |
3 | Wireshark |
4 | Ethernet |
5 | WiFi |
6 | IPv4, Part 1 |
7 | IPv4, Part 2 |
8 | Scapy |
9 | ARP |
10 | VLAN |
11 | ICMP |
12 | IPv6 |
13 | DHCP |
14 | UDP |
15 | Sockets |
16 | HTTP |
17 | NAT |
18 | Parallel Network Programming |
19 | TCP, Part 1 |
20 | TCP, Part 2 |
21 | TCP, Part 3 |
22 | TCP, Part 4 |
23 | Nmap |
24 | DNS, DNSSEC, DNS over TLS, DNS over HTTPS |
25 | HTTP/2, HTTP/3 (and SPDY and QUIC) |
HTTP References
- List of HTTP Header Fields
- Reliply.org: View real HTTP request sent by your browser to their server
- Google Chrome Developer Tools (built-in to web browser) can show HTTP requests and HTTP responses for all objects on a web page
- Enter the developer tools mode, select the Network panel, and then the Header sub-panel
- Fiddler: Web debugging proxy
- Concurrent Programming for Scalable Web Architectures: Good background reading
Python Demo Code
Python Programming References
- Python documentation - Official
- Python Language Reference - Official
- Python Standard Library - Official
- Argparse: http://docs.python.org/3/library/argparse.html
- Queue (thread-safe): http://docs.python.org/3/library/queue.html
- String functions: http://docs.python.org/3/library/stdtypes.html
- Sockets: http://docs.python.org/3/library/socket.html and http://docs.python.org/3/howto/sockets.html
- Struct: http://docs.python.org/3/library/struct.html
- Threading: http://docs.python.org/3/library/threading.html
- Multiprocessing: http://docs.python.org/3/library/multiprocessing.html
- Python Module of the Day:
- Argparse: https://pymotw.com/3/argparse/