handout # 2: course logistics and introduction

57
Handout # 2: Course Logistics and Introduction Professor Yashar Ganjali Department of Computer Science University of Toronto [email protected] http://www.cs.toronto.edu/~yganjali CSC 2229 – Software-Defined Networking

Upload: wilma-bentley

Post on 30-Dec-2015

34 views

Category:

Documents


3 download

DESCRIPTION

Handout # 2: Course Logistics and Introduction. CSC 2229 – Software-Defined Networking. Professor Yashar Ganjali Department of Computer Science University of Toronto [email protected] http://www.cs.toronto.edu/~yganjali. Today. Outline What this course is about Logistics - PowerPoint PPT Presentation

TRANSCRIPT

Slide 1

Handout # 2:Course Logistics and IntroductionProfessor Yashar GanjaliDepartment of Computer ScienceUniversity of Toronto

[email protected]://www.cs.toronto.edu/~yganjaliCSC 2229 Software-Defined Networking1CSC 2229 - Software-Defined Networking2University of Toronto Fall 2015TodayOutlineWhat this course is about

LogisticsCourse structure, evaluation What is expected from youWhat you want to know

OverviewPacket switching systemsSoftware-Defined Networking2CSC 2229 - Software-Defined Networking3University of Toronto Fall 2015CSC229: Software-Defined NetworkingGraduate level courseIntroduction to Software-Defined Networking (SDN)SDN challenges and opportunities Course componentsLecturesResearch papersResearch projectTheory + PracticeSwitching systems are simple enough for us to prove something about themYet they are complex enough to work in practice

3CSC 2229 - Software-Defined Networking4University of Toronto Fall 2015Outline Part IIntroductionPacket switch systemsEvolution of the Internet, and Internet routersBasic architectural componentsSome example architectures

Software-Defined NetworkingInnovation in computer networksControl vs. data plane

4CSC 2229 - Software-Defined Networking5University of Toronto Fall 2015Outline Part IISDN Challenges and OpportunitiesController and switch designReliability, efficiency, and scalabilityArchitectureProgramming, correctness, and debuggingSDN securityNew abstractions, state managementNetwork servicesNetwork function virtualizationNetwork optimization

5CSC 2229 - Software-Defined Networking6University of Toronto Fall 2015LogisticsOffice hoursTue. 3-4 PM, Wed. 3-4 PM, BA5238Or by appointment

Course web pagehttp://www.cs.toronto.edu/~yganjali/courses/csc2229/Please check regularly for announcements.

Class mailing listBased on e-mail address you have defined on ROSI.Send me an e-mail if you havent received a welcome message from that list.Any (course-related!) question posted to the list will be answered within 48 hours.6CSC 2229 - Software-Defined Networking7University of Toronto Fall 2015LogisticsPrerequisitesAny introductory course on networkingAlgorithmsBasic probability theory

PapersWill be listed on class web pagePlease read suggested papers BEFORE class

7LogisticsGradingActive participation in class and discussions: 10%Paper presentations: 30%Final project: 60% Proposal: 5% - 1-2 pagesIntermediate report: 10% - 3 pagesPresentation: 15% - Last week of classesFinal report: 30% - 6 pagesDeadlines5% mark deduction for each day of delay, up to 4 days.Exception: final report deadline is hard.CSC 2229 - Software-Defined Networking8University of Toronto Fall 20158CSC 2229 - Software-Defined Networking9University of Toronto Fall 2015LogisticsFinal ProjectGroups of three studentsProject topicChoose from the offered list; orTalk to me and define your own

9CSC 2229 - Software-Defined Networking10University of Toronto Fall 2015LogisticsAcademic IntegrityAll submissions must present original, independent work.We take academic offenses very seriously.Please read Guideline for avoiding plagiarismhttp://www.cs.toronto.edu/~fpitt/documents/plagiarism.htmlAdvice about academic offenseshttp://www.cs.toronto.edu/~clarke/acoffences/ 10LogisticsAccessibility NeedsThe University of Toronto is committed to accessibility. If you require accommodations or have any accessibility concerns, please visit http://studentlife.utoronto.ca/accessibility as soon as possible.

CSC 2229 - Software-Defined Networking11University of Toronto Fall 201511CSC 2229 - Software-Defined Networking12University of Toronto Fall 2015AcknowledgementsSpecial thanks to:Prof. Nick McKeown, Stanford University Prof. Balaji Prabhakar, Stanford UniversityProf. Jennifer Rexford, Princeton UniversityProf. Nick Feamster, Princeton University12CSC 2229 - Software-Defined Networking13University of Toronto Fall 2015Questions?What else do you like to know about this course?13CSC 2229 - Software-Defined Networking14University of Toronto Fall 2015Introduction to Packet SwitchingBackgroundWhat is a router?Router architecture

Packet processing in routersIP address lookupPacket bufferingSwitching

Router architecturesThe evolutionSoftware-Defined Networking14CSC 2229 - Software-Defined Networking15University of Toronto Fall 2015R3ABCR1R2R4DEFR5R5FR3ER3DNext HopDestinationDWhat is Routing?15CSC 2229 - Software-Defined Networking16University of Toronto Fall 2015What is Routing?R3ABCR1R2R4DEFR5R5FR3ER3DNext HopDestinationD163241DataOptions (if any)Destination AddressSource AddressHeader ChecksumProtocolTTLFragment OffsetFlagsFragment IDTotal Packet LengthT.ServiceHLenVer20 bytes 16CSC 2229 - Software-Defined Networking17University of Toronto Fall 2015What is Routing?ABCR1R2R3R4DEFR517CSC 2229 - Software-Defined Networking18University of Toronto Fall 2015Points of Presence (POPs)ABCPOP1POP3POP2POP4DEFPOP5POP6POP7POP818Where High Performance Routers are UsedCSC 2229 - Software-Defined Networking19University of Toronto Fall 2015R10R11R4R13R9R5R2R1R6R3R7R12R16R15R14R8(2.5 Gb/s)(2.5 Gb/s)(2.5 Gb/s)(2.5 Gb/s)

19CSC 2229 - Software-Defined Networking20University of Toronto Fall 2015What a Router Looks Like

Cisco GSR 12416

Juniper M1606ft192ftCapacity: 160Gb/sPower: 4.2kW3ft2.5ft19Capacity: 80Gb/sPower: 2.6kW20CSC 2229 - Software-Defined Networking21University of Toronto Fall 2015Basic Architectural Components of an IP RouterControl PlaneData-pathper-packet processingSwitchingForwardingTableRouting TableRouting Protocols21CSC 2229 - Software-Defined Networking22University of Toronto Fall 2015Packet Switching Simple Router ModelR1Link 1Link 2Link 3Link 4Link 1, ingressLink 1, egressLink 2, ingressLink 2, egressLink 3, ingressLink 3, egressLink 4, ingressLink 4, egressChooseEgressChooseEgressChooseEgressChooseEgress4422CSC 2229 - Software-Defined Networking23University of Toronto Fall 2015Introduction to Packet SwitchingBackgroundWhat is a router?Router architecture

Packet processing in routersIP address lookupPacket bufferingSwitching

Router architecturesThe evolutionSoftware-Defined Networking23CSC 2229 - Software-Defined Networking24University of Toronto Fall 2015Per-packet Processing in an IP Router1. Accept packet arriving on an incoming link.2. Lookup packet destination address in the forwarding table, to identify outgoing port(s).3. Manipulate packet header: e.g., decrement TTL, update header checksum.4. Send packet to the outgoing port(s).5. Buffer packet in the queue.6. Transmit packet onto outgoing link.24CSC 2229 - Software-Defined Networking25University of Toronto Fall 2015Generic Router ArchitectureLookupIP AddressUpdateHeaderHeader ProcessingDataHdrDataHdr~1M prefixesOff-chip DRAMAddressTableIP AddressNext HopQueuePacketBufferMemory~1M packetsOff-chip DRAM25CSC 2229 - Software-Defined Networking26University of Toronto Fall 2015LookupIP AddressUpdateHeaderHeader ProcessingAddressTableLookupIP AddressUpdateHeaderHeader ProcessingAddressTableLookupIP AddressUpdateHeaderHeader ProcessingAddressTableDataHdrDataHdrDataHdrBufferManagerBufferMemoryBufferManagerBufferMemoryBufferManagerBufferMemoryDataHdrDataHdrDataHdrGeneric Router Architecture26Why are Fast Routers Difficult to Make?Its hard to keep up with Moores Law:The bottleneck is memory speed.Memory speed is not keeping up with Moores Law. Moores Law is too slow:Routers need to improve faster than Moores Law.

CSC 2229 - Software-Defined Networking27University of Toronto Fall 201527CSC 2229 - Software-Defined Networking28University of Toronto Fall 2015Router Performance Exceeds Moores LawGrowth in capacity of commercial routers: Capacity 1992 ~ 2Gb/s Capacity 1995 ~ 10Gb/s Capacity 1998 ~ 40Gb/s Capacity 2001 ~ 160Gb/s Capacity 2003 ~ 640Gb/sCapacity 2007 ~ 4Tb/sCapacity 2010 ~ 16Tb/s

Average growth rate: 2x / 18 months.

28CSC 2229 - Software-Defined Networking29University of Toronto Fall 2015Introduction to Packet SwitchingBackgroundWhat is a router?Router architecture

Packet processing in routersIP address lookupPacket bufferingSwitching

Router architecturesThe evolutionSoftware-Defined Networking29CSC 2229 - Software-Defined Networking30University of Toronto Fall 2015Generic Router ArchitectureLookupIP AddressUpdateHeaderHeader ProcessingAddressTableLookupIP AddressUpdateHeaderHeader ProcessingAddressTableLookupIP AddressUpdateHeaderHeader ProcessingAddressTableBufferManagerBufferMemoryBufferManagerBufferMemoryBufferManagerBufferMemoryLookupIP AddressAddressTableLookupIP AddressAddressTableLookupIP AddressAddressTable30IP Address LookupWhy its thought to be hard:Its not an exact match: its a longest prefix match. The table is large: about 500,000 entries today, and growing. The lookup must be fast: about 30ns for a 10Gb/s line.

CSC 2229 - Software-Defined Networking31University of Toronto Fall 201531CSC 2229 - Software-Defined Networking32University of Toronto Fall 2015IP Lookups find Longest Prefixes128.9.16.0/21128.9.172.0/21128.9.172.0/240232-1128.9.0.0/16142.12.0.0/1965.0.0.0/8128.9.16.14Routing lookup: Find the longest matching prefix (aka the most specific route) among all prefixes that match the destination address.32IP Address LookupWhy its thought to be hard:Its not an exact match: its a longest prefix match. The table is large: about 500,000 entries today, and growing. The lookup must be fast: about 30ns for a 10Gb/s line.

CSC 2229 - Software-Defined Networking33University of Toronto Fall 201533CSC 2229 - Software-Defined Networking34University of Toronto Fall 2015Address Tables are LargeSource: http://www.cidr-report.org/

34IP Address LookupWhy its thought to be hard:Its not an exact match: its a longest prefix match. The table is large: about 500,000 entries today, and growing. The lookup must be fast: about 30ns for a 10Gb/s line.

CSC 2229 - Software-Defined Networking35University of Toronto Fall 201535CSC 2229 - Software-Defined Networking36University of Toronto Fall 2015Lookups Must be Fast40B packets (Mpkt/s)LineYearYearLine Rate40B Packets (Mpkt/s)1997622Mb/s1.9419992.5Gb/s7.81200110Gb/s31.25200340Gb/s1252005100Gb/s31236CSC 2229 - Software-Defined Networking37University of Toronto Fall 2015Introduction to Packet SwitchingBackgroundWhat is a router?Router architecture

Packet processing in routersIP address lookupPacket bufferingSwitching

Router architecturesThe evolutionSoftware-Defined Networking37Generic Router ArchitectureLookupIP AddressUpdateHeaderHeader ProcessingAddressTableLookupIP AddressUpdateHeaderHeader ProcessingAddressTableLookupIP AddressUpdateHeaderHeader ProcessingAddressTableQueuePacketBufferMemoryQueuePacketBufferMemoryQueuePacketBufferMemoryBufferManagerBufferMemoryBufferManagerBufferMemoryBufferManagerBufferMemoryCSC 2229 - Software-Defined Networking38University of Toronto Fall 201538CSC 2229 - Software-Defined Networking39University of Toronto Fall 2015Fast Packet BuffersExample: 40Gb/s packet bufferSize = RTT*BW = 10Gb; 40 byte packetsWrite Rate, R1 packetevery 8 nsRead Rate, R1 packetevery 8 nsBufferManagerBufferMemoryUse SRAM?+ fast enough random access time, but- too low density to store 10Gb of data. Use DRAM?+ high density means we can store data, but- too slow (50ns random access time).

39How fast?

Get into the motivation say OC768 line rate buffering is a goal. - Just mention directly the amount of buffering required.

Why is it not possible today?

Why is it intersting.

Talks abut SRAM/DRAM.CSC 2229 - Software-Defined Networking40University of Toronto Fall 2015Introduction to Packet SwitchingBackgroundWhat is a router?Router architecture

Packet processing in routersIP address lookupPacket bufferingSwitching

Router architecturesThe evolutionSoftware-Defined Networking40CSC 2229 - Software-Defined Networking41University of Toronto Fall 2015Generic Router ArchitectureLookupIP AddressUpdateHeaderHeader ProcessingAddressTableLookupIP AddressUpdateHeaderHeader ProcessingAddressTableLookupIP AddressUpdateHeaderHeader ProcessingAddressTableQueuePacketBufferMemoryQueuePacketBufferMemoryQueuePacketBufferMemoryDataHdrDataHdrDataHdr12N 12NN times line rateN times line rate41CSC 2229 - Software-Defined Networking42University of Toronto Fall 2015Generic Router ArchitectureLookupIP AddressUpdateHeaderHeader ProcessingAddressTableLookupIP AddressUpdateHeaderHeader ProcessingAddressTableLookupIP AddressUpdateHeaderHeader ProcessingAddressTableQueuePacketBufferMemoryQueuePacketBufferMemoryQueuePacketBufferMemoryDataHdrDataHdrDataHdr12N 12NDataHdrDataHdrDataHdrScheduler42CSC 2229 - Software-Defined Networking43University of Toronto Fall 2015

A Router with Output QueuesThe best that any queueing system can achieve.43CSC 2229 - Software-Defined Networking44University of Toronto Fall 2015

A Router with Input QueuesHead of Line BlockingThe best that any queueing system can achieve.

44CSC 2229 - Software-Defined Networking45University of Toronto Fall 2015Head of Line Blocking45CSC 2229 - Software-Defined Networking46University of Toronto Fall 2015Virtual Output Queues46CSC 2229 - Software-Defined Networking47University of Toronto Fall 2015

A Router with Virtual Output QueuesThe best that any queueing system can achieve.47Generic Router ArchitectureCSC 2229 - Software-Defined Networking48University of Toronto Fall 2015LookupIP AddressUpdateHeaderHeader ProcessingAddressTableLookupIP AddressUpdateHeaderHeader ProcessingAddressTableLookupIP AddressUpdateHeaderHeader ProcessingAddressTableQueuePacketBufferMemoryQueuePacketBufferMemoryQueuePacketBufferMemoryDataHdrDataHdrDataHdr12N 12NN times line rateN times line rate48CSC 2229 - Software-Defined Networking49University of Toronto Fall 2015Introduction to Packet SwitchingBackgroundWhat is a router?Router architecture

Packet processing in routersIP address lookupPacket bufferingSwitching

Router architecturesThe evolutionSoftware-Defined Networking49CSC 2229 - Software-Defined Networking50University of Toronto Fall 2015RouteTableCPUBufferMemoryLineInterfaceMACLineInterfaceMACLineInterfaceMACTypically