Course Description

EE384X Packet Switch Architectures (Replaces both EE384x and EE384y from previous years): The theory and practice of designing packet switches, such as Internet routers, and Ethernet switches. Introduction: evolution of switches and routers. Output queueed switches: motivation and methods for providing bandwidth and delay guarantees. Switching: output queueing, parallelism in switches, distributed shared memory switches, input-queued switches, combined input-output queued switches, how to make fast packet buffers, buffered crossbar switches. Scheduling input queued crossbars: connections with bipartite graph matching, algorithms for 100% throughput, practical algorithms and heuristics. Looking forward: Architectures and switches for data center networks.

Prerequisites: EE284/CS144 or equivalent.
Useful: CS244, Stats 116 (or EE178, EE278), CS161

Basic Information

  1. Lectures:

        Monday, Wednesday 2:15pm - 3:30pm - Green Earth Sciences 134.

  1. Professors:

        Nick McKeown  (Office: Gates 340. Office Hours: wed 5-6pm. E-mail: nickm (at) stanford (dot) edu)

        Balaji Prabhakar (Office: Packard 269. Office Hours: Tue 1-2pm, Wed 11-12am. E-mail: balaji (at) isl (dot) stanford (dot) edu)

  1. TAs:

        Peyman Kazemian (Office Gates 356. E-Mail: kazemian (at) stanford (dot) edu)

        Shuang Yang (Office Packard 270. E-Mail: shyang (at) stanford (dot) edu)

    TAs Office Hours: Wednesdays: 3:30-5pm. Open Area of Second Floor of Packard Buliding.


  1.    Homeworks : 40% (4 Homeworks 10% each)

  2.    In-Class Participation (5%)

  3.    Surprise Quizzes (10%)

  4.    Final Project (45%)

                        Intermediate Project Report (May 10th) 10%

                        Final Presentation (in class) 20%

                        Final Report 15%

Come Learn How Internet Routers and Switches Are Designed