logging in or signing up lab mckeown Tarzen Download Post to : URL : Related Presentations : Share Add to Flag Embed Email Send to Blogs and Networks Add to Channel Uploaded from authorPOINT Insert YouTube videos in PowerPont slides with aS Desktop Copy embed code: (To copy code, click on the text box) Embed: URL: Thumbnail: WordPress Embed Customize Embed The presentation is successfully added In Your Favorites. Views: 412 Category: Education License: All Rights Reserved Like it (0) Dislike it (0) Added: June 19, 2007 This Presentation is Public Favorites: 0 Presentation Description No description available. Comments Posting comment... Premium member Presentation Transcript Slide1: Teaching tools for a network infrastructure teaching lab The Virtual Router and NetFPGA Sigcomm Education Workshop August 20th, 2002 Nick McKeown Professor of Electrical Engineering and Computer Science, Stanford University nickm@stanford.edu www.stanford.edu/~nickm Outline: Outline Why have a network infrastructure teaching lab Hardware Platform: NetFPGA Software Platform: Virtual Router Demo of Virtual Router (hopefully) Why have a network infrastructure teaching lab: Why have a network infrastructure teaching lab Many of our students go to networking companies: Software engineers implement network protocols, and Hardware engineers architect and design switches and routers. More likely to design a router than a computer. We had classes on digital system design, computer programming, networking and on packet switch architectures. No lab classes in networking. Want students to design, implement, deploy and debug their own infrastructure elements: IP routers, Ethernet switches, and elements of their own creation. Platform #1: Hardware Platform: Platform #1: Hardware Platform NetFPGA Hardware Platform: NetFPGA: Hardware Platform: NetFPGA What: Circuit board with 8 Ethernet interfaces and user-programmable FPGAs. How used: Students architect, design and deploy their own hardware in an operational network. Canonical assignment: Ethernet switch Other assignments: IP router, firewall, packet mis-sequencer, data transcoder, … Design flow: Industry standard flow Verilog -andgt; simulation/verification -andgt; synthesis -andgt; download Hardware Platform: NetFPGA: Hardware Platform: NetFPGA Ethernet Interface #1 Ethernet Interface #2 Ethernet Interface #8 Controller User memory Packet buffers 1 2 8 No CPU Only interface is via Ethernet Program FPGA via Ethernet Reset board remotely Hardware Platform: NetFPGA: Hardware Platform: NetFPGA Ethernet Interface #1 Ethernet Interface #2 Ethernet Interface #8 User memory Ethernet Interface #1 Ethernet Interface #2 Ethernet Interface #8 User memory Firewall Campus Network Controller Web/ftp Analyzer Hardware Platform: NetFPGAStatus : Hardware Platform: NetFPGA Status Prototype: Summer 2002 First classroom use: April 2003 Boards available: Early 2004 Looking for sponsors and alpha-users… Platform #2: Software Platform: Platform #2: Software Platform Virtual Router Software Platform: Virtual Router: Software Platform: Virtual Router Problem: How to have 200 students each build and deploy their own router, without kernel hacking and without their own dedicated machine? What: PC/Linux-based 'Virtual Router Server'; students write user-space 'Virtual Router Clients' in C, C++, Java, Perl, … How used: Students architect, design and deploy their own router in an operational network with their own arbitrary topology. Canonical assignment: Internet router. Other assignments: QoS router, lookup algorithms, routing protocols, Firewall, … Software Platform: Virtual RouterStudent’s view : Software Platform: Virtual Router Student’s view Student’s user-space router Ethernet frames Ethernet frames Ethernet frames Ethernet frames Ethernet frames Web/ftp servers Campus Network 'Virtual Router Client' A B C D Example assignmentMarch 2002, ~100 BS/MS students : Example assignment March 2002, ~100 BS/MS students Implement a fully functional IP router, including: Address lookup (static routing table) TTL check and decrement IP checksum check and update ARP request/reply ICMP: enough for traceroute and ping to work Environment: Students receive/send raw Ethernet packets Four network interfaces Written in ANSI C Software Platform: Virtual RouterThe Virtual Router Server : Software Platform: Virtual Router The Virtual Router Server Web/ftp servers Campus Network Firewall PC Linux Instructional machines 'Virtual Router Server' VR Client Software Platform: Virtual RouterStudent’s view : Software Platform: Virtual Router Student’s view VR Client VR Client VR Client VR Client VR Client Arbitrary topology Campus Network Web/ftp servers Each interface has locally unique Ethernet and IP address. Software Platform: Virtual RouterStudent’s view : Software Platform: Virtual Router Student’s view Topology per student Campus Network Web/ftp servers Software Platform: Virtual RouterThe Virtual Router Server : Software Platform: Virtual Router The Virtual Router Server Web/ftp servers Firewall/ Load-balancer Instructional machines 'Virtual Router Server' Classifies incoming packet to determine which student should route the packet. Picks next hop Ethernet DA to reach VR Client. Intercepts specific Ethernet addresses on behalf of VR Clients Software Platform: Virtual RouterStatus : Software Platform: Virtual Router Status Prototype V1.0: Summer 2001 First classroom use: March 2002 CS244a at Stanford, Assignment #3, ~100 students V2.0: Summer 2002 Next classroom use: March 2003 First planned release: Summer 2003 Looking for sponsors and alpha-users… You do not have the permission to view this presentation. In order to view it, please contact the author of the presentation.
lab mckeown Tarzen Download Post to : URL : Related Presentations : Share Add to Flag Embed Email Send to Blogs and Networks Add to Channel Uploaded from authorPOINT Insert YouTube videos in PowerPont slides with aS Desktop Copy embed code: (To copy code, click on the text box) Embed: URL: Thumbnail: WordPress Embed Customize Embed The presentation is successfully added In Your Favorites. Views: 412 Category: Education License: All Rights Reserved Like it (0) Dislike it (0) Added: June 19, 2007 This Presentation is Public Favorites: 0 Presentation Description No description available. Comments Posting comment... Premium member Presentation Transcript Slide1: Teaching tools for a network infrastructure teaching lab The Virtual Router and NetFPGA Sigcomm Education Workshop August 20th, 2002 Nick McKeown Professor of Electrical Engineering and Computer Science, Stanford University nickm@stanford.edu www.stanford.edu/~nickm Outline: Outline Why have a network infrastructure teaching lab Hardware Platform: NetFPGA Software Platform: Virtual Router Demo of Virtual Router (hopefully) Why have a network infrastructure teaching lab: Why have a network infrastructure teaching lab Many of our students go to networking companies: Software engineers implement network protocols, and Hardware engineers architect and design switches and routers. More likely to design a router than a computer. We had classes on digital system design, computer programming, networking and on packet switch architectures. No lab classes in networking. Want students to design, implement, deploy and debug their own infrastructure elements: IP routers, Ethernet switches, and elements of their own creation. Platform #1: Hardware Platform: Platform #1: Hardware Platform NetFPGA Hardware Platform: NetFPGA: Hardware Platform: NetFPGA What: Circuit board with 8 Ethernet interfaces and user-programmable FPGAs. How used: Students architect, design and deploy their own hardware in an operational network. Canonical assignment: Ethernet switch Other assignments: IP router, firewall, packet mis-sequencer, data transcoder, … Design flow: Industry standard flow Verilog -andgt; simulation/verification -andgt; synthesis -andgt; download Hardware Platform: NetFPGA: Hardware Platform: NetFPGA Ethernet Interface #1 Ethernet Interface #2 Ethernet Interface #8 Controller User memory Packet buffers 1 2 8 No CPU Only interface is via Ethernet Program FPGA via Ethernet Reset board remotely Hardware Platform: NetFPGA: Hardware Platform: NetFPGA Ethernet Interface #1 Ethernet Interface #2 Ethernet Interface #8 User memory Ethernet Interface #1 Ethernet Interface #2 Ethernet Interface #8 User memory Firewall Campus Network Controller Web/ftp Analyzer Hardware Platform: NetFPGAStatus : Hardware Platform: NetFPGA Status Prototype: Summer 2002 First classroom use: April 2003 Boards available: Early 2004 Looking for sponsors and alpha-users… Platform #2: Software Platform: Platform #2: Software Platform Virtual Router Software Platform: Virtual Router: Software Platform: Virtual Router Problem: How to have 200 students each build and deploy their own router, without kernel hacking and without their own dedicated machine? What: PC/Linux-based 'Virtual Router Server'; students write user-space 'Virtual Router Clients' in C, C++, Java, Perl, … How used: Students architect, design and deploy their own router in an operational network with their own arbitrary topology. Canonical assignment: Internet router. Other assignments: QoS router, lookup algorithms, routing protocols, Firewall, … Software Platform: Virtual RouterStudent’s view : Software Platform: Virtual Router Student’s view Student’s user-space router Ethernet frames Ethernet frames Ethernet frames Ethernet frames Ethernet frames Web/ftp servers Campus Network 'Virtual Router Client' A B C D Example assignmentMarch 2002, ~100 BS/MS students : Example assignment March 2002, ~100 BS/MS students Implement a fully functional IP router, including: Address lookup (static routing table) TTL check and decrement IP checksum check and update ARP request/reply ICMP: enough for traceroute and ping to work Environment: Students receive/send raw Ethernet packets Four network interfaces Written in ANSI C Software Platform: Virtual RouterThe Virtual Router Server : Software Platform: Virtual Router The Virtual Router Server Web/ftp servers Campus Network Firewall PC Linux Instructional machines 'Virtual Router Server' VR Client Software Platform: Virtual RouterStudent’s view : Software Platform: Virtual Router Student’s view VR Client VR Client VR Client VR Client VR Client Arbitrary topology Campus Network Web/ftp servers Each interface has locally unique Ethernet and IP address. Software Platform: Virtual RouterStudent’s view : Software Platform: Virtual Router Student’s view Topology per student Campus Network Web/ftp servers Software Platform: Virtual RouterThe Virtual Router Server : Software Platform: Virtual Router The Virtual Router Server Web/ftp servers Firewall/ Load-balancer Instructional machines 'Virtual Router Server' Classifies incoming packet to determine which student should route the packet. Picks next hop Ethernet DA to reach VR Client. Intercepts specific Ethernet addresses on behalf of VR Clients Software Platform: Virtual RouterStatus : Software Platform: Virtual Router Status Prototype V1.0: Summer 2001 First classroom use: March 2002 CS244a at Stanford, Assignment #3, ~100 students V2.0: Summer 2002 Next classroom use: March 2003 First planned release: Summer 2003 Looking for sponsors and alpha-users…