Resources
Links to the resources provided and/or recommended for the class will be posted on this page.
Lecture Notes
Lecture Title | Download |
---|---|
Introduction | PowerPoint |
Internet Fundamentals | PowerPoint |
Ethernet | PowerPoint |
IP Introduction | PowerPoint |
IP Header Format | PowerPoint |
IP Addressing | PowerPoint |
NetFPGA Hardware | PowerPoint |
Ethernet Hub Tutorial | PowerPoint |
Project Intro | PowerPoint |
ARP | PowerPoint |
ICMP | PowerPoint |
Router Wrapup | PowerPoint |
Data vs Control Plane | PowerPoint |
NAT | PowerPoint |
Host Networking | PowerPoint |
OSPF | PowerPoint |
BGP | PowerPoint |
BGP / Routing Recap | PowerPoint |
Embedded Systems | PowerPoint |
Network Processors | PowerPoint |
Future of IP - IPv6 | PowerPoint |
Future of Ethernet | PowerPoint |
Wrapup | PowerPoint |
Supplemental Reading
Network Processors
- Fundamental architectural considerations for network processors
- Building a Robust Software-Based Router Using Network Processors
IPv6
- Realizing the transition to IPv6
- High-performance IPv6 forwarding algorithm for multi-core and multithreaded network processor
Resources
NetFPGA
- Board specifications
- Board PCB layout: Rev 2, Rev 3
- Verilog Hierarchy
- Register Interface
- Register Map
- Hardware Common Tasks
- Network Topology
Networking
- Network Sorcery
- Wireshark Documentation
- RFCs
- List of assigned Class A IP Address Blocks
- Printable Quick Reference Guide (IP, ARP, ICMP header formats)
- Future of the Internet (IPv6, etc...)
Verilog Programming
- Intro to Verilog
- Verilog tutorial
- Verilog quick reference
- The Verilog Golden Reference Guide, by Doulos
If you find a more useful Verilog tutorial elsewhere, please let us know!
Network Programming (Sockets)
- Beej's Guide to Network Programming: Using Internet Sockets
- Programming UNIX Sockets in C - Frequently Asked Questions
C Programming
- Beej's Guide to C Programming
- Tutorial on threads, locks, and synchronization
- Programming in C: UNIX System Calls and Subroutines
Subversion
- Subversion source control system: home page
- Version Control with Subversion: the official manual