CS 168 Introduction To The Internet: Architecture And .

Transcription

CS 168Introduction to the Internet:Architecture and ProtocolsFall 2014Sylvia Ratnasamyhttp://inst.eecs.berkeley.edu/ cs168/fa14/

Todayl Introductionsl What is (this course on) networking about?5 minute breakl Class policies, administrivia and roadmap

Introductions

Teaching Assistantsl Peter Gaol Sangjin Han (co-head TA)l Anurag Khandelwall Chang Lanl Murphy McCauleyl Akshay Narayanl Radhika Mittal (co-head TA)l Shoumik Palkarl Qifan PuSee the course website for TA office hours and sections

Peter Xiang Gaol 2nd year PhD studentl Research focusl fault-tolerant network devices

Sangjin Hanl Co-Head TAl 4th year PhD studentl Research focus:l high performancenetwork software

Anurag Khandelwall 2nd year PhD studentl Research focusl cloud computing

Chang Lanl 2nd year PhD studentl Research focusl programmable routers

Murphy McCauleyl 2nd year PhD studentl Research focusØ Software-Defined Networking

Radhika Mittall Co-Head TAl 3rd year PhD studentl Research focus:l network congestion controland queue management

Akshay Narayanl Seniorl Research focusØ Congestion control indatacenters

Shoumik Palkarl Seniorl Research focusØ Programmable routers

Qifan Pul 2nd year PhD studentl Research focusl Distributed systems

Instructor: Sylvia Ratnasamy!l Ph.D. in Computer Science from UCB in 2002Worked at Intel between 2002-2011; back at UCB since 2011Networking has been my research focus throughoutl My teaching stylel l l l l l I talk too fastThe more bored you look, the faster I talkSo, stop me with questions!!Office hours: 4:30-5:30pm Thursday in 413 Soda Halll Always happy to chat if you have a problem (send email)

What is networking about?

car navigatorheart pacemakersmartphoneend-systemiPadLinux serverMAC laptopWindows PC16

end-systemswitch17

phonelinesend-systemcable TVlineslinkfibersswitchwirelesslinks18

linkphone companyswitchend-systemuniversity netcable companyInternet Service Provider19

linkend-systempathswitchpacketInternet Service Provider20

facebookserverworld ofwarcraft serverinstantmessaginginstant messagingworld of warcraftclientfirefox accessingfacebook21

while (.) {message .;send ( message, . );}while (.) {message receive( . );}BobAlice22

AliceBobhellohellogive me http://cs.berkeley.eduhere: .23

AliceBobhellogive me http://.give me http://.give me http://.give me http://.give me http://.give me http://.24

Why study the Internet?

The Internet istransforming everythingl The way we do businessl l The way we have relationshipsl l Wikipedia, MOOCs, search enginesThe way we govern and view lawl l Facebook friends, E-mail, IM, virtual worldsThe way we learnl l E-commerce, advertising, cloud-computingE-voting, censorship, copyright, cyber-attacksThe way we cure diseasel Digital health, remote diagnostics

The Internet is big businessl l Many large and influential networking companiesl Cisco, Broadcom, AT&T, Verizon, Akamai, Huawei, l 200B industry (carrier and enterprise alone)Networking central to most technology companiesl Google, Facebook, Microsoft, HP, Dell, VMware,

Internet research has impactl The Internet started as a research experiment!l 4 of 10 most cited authors work in networkingl Many successful companies have emerged fromnetworking research(ers)

But why is the Internet interesting?“What’s your formal model for the Internet?” -- theorists“Aren’t you just writing software for networks” – OS community“You don’t have performance benchmarks?” – hardware folks“It’s just another communication network!” – old timers at AT&T“What’s with all these TLA protocols?” – all“But the Internet seems to be working ” – my parents

A few defining characteristicsof the Internet

A federated systemThe Internet interconnects different networks ( 18,000 ISPs)AT&TUCBFranceTelecomOne common protocol -- the “Internet Protocol (IP) -- betweenusers and the network and between networks

A federated systeml Interoperability is the Internet’s most important goall Leads to a constant tussle between business andtechnical factorsl competing ISPs must cooperate to serve their customersl practical realities of incentives, economics and real-world trustdetermine physical topology and path selectionl a common protocol is great for interoperability l but complicates innovation

Tremendous scalel l l l l l l l 2.92 Billion users (41% of world population)1 Trillion unique URLs (in 2008)294 Billion emails sent per day1.75 Billion smartphones1.24 Billion Facebook users100 hours of video uploaded to YouTube every minuteSwitches that move 300Terabits/second (1014)Links that carry 100Gigabits/second

Enormous diversity anddynamic rangel l l l l l l Communication latency: microseconds to seconds (106)Bandwidth: 1Kbits/second to 100 Gigabits/second (107)Packet loss: 0 – 90%Technology: optical, wireless, satellite, copperEndpoint devices: sensors, cell phones, datacentersApplications: skype, live video, gaming, remote medicine,Users: the governing, governed, operators, selfish, malicious,naïve, savvy, embarrassed, paranoid,

Constant Evolution1970s:l 56kilobits/second “backbone” linksl 100 computers, a handful of sites in the USl Telnet and file transfer are the “killer” applicationsTodayl 100 Gigabits/second backbone linksl 5B devices, all over the globel 20M Facebook apps installed per day

Asynchronous Operationl Fundamental constraint: speed of lightl Consider:l How many cycles does your 3GHz CPU in Berkeleyexecute before it can possibly get a response from amessage it sends to a server in NY?l l l l l Berkeley to New York: 4,125 kmTraveling at 300,000 km/s: 13.75 millisecondsThen back to Berkeley: 2 x 13.75 27.5 milliseconds3,000,000,000 cycles/sec * 0.0275 84,000,000 cycles!Thus, communication feedback is always dated

Prone to Failurel To send a message, all components along a pathmust function correctlyl l software, modem, wireless access point, firewall, links,network interface cards, switches, Including human operatorsl Consider: 50 components, that work correctly 99%of time à 39.5% chance communication will faill Plus, recalll l scale à lots of componentsasynchrony à takes a long time to hear (bad) news

An Engineered Systeml Constrained by limits of available technologyl l l l l Link bandwidthsSwitch port countsBit error ratesCost

Recap: The Internet is l l l l l l l l A federated systemOf enormous scaleDynamic rangeDiversityConstantly evolvingAsynchronous in operationFailure proneConstrained by what’s practical to engineer

Recap: The Internet is l l l Too complex for theoretical models“Working code” needn’t mean muchPerformance benchmarks are too narrow

So, what do we need?We still don’t really know l l l No consensus on what constitutes the “correct” or“best” network designNo consensus on “top 10 problems”No consensus on the right prioritization of goalsBefore you flee

What we do knowl l The early Internet pioneers came up with a solution thatwas successful beyond all imaginingSeveral enduring architectural principles and practicesemerged from their work

Architectural principlesl l l l l l l Decentralization [lectures: all]Packets [lecture# 2]Statistical multiplexing [lecture 2]Best effort service [lecture 3]The “end to end” design principle [lecture 8 ]“Layered” decomposition [lectures: all]IP as “narrow waist” interface [lecture 8]

What we do knowl l l l The early Internet pioneers came up with a solution thatwas successful beyond all imaginingSeveral enduring architectural principles and practicesemerged from their workBut it is just one designAnd numerous cracks have emerged over timel l l l want to diagnose problems but federation hides inner workingswant to block unwanted traffic but the network doesn’t authenticatecan’t optimize for different applications or customersupgrading protocols is deeply painful

What we do knowl l l l l The early Internet pioneers came up with a solution thatwas successful beyond all imaginingSeveral enduring architectural principles and practicesemerged from their workBut it is just one designAnd numerous cracks have emerged over timeAs have new requirementsl Mobility, reliability, data centers, sensors,

Hence, networking today is stilldebating the big questions.l l l l l l l Packets à “circuits”Statistical multiplexing à “reservations”Protocol layersA “narrow waist” at the network layerBest-effort service à ”Quality of Service (QoS)”The “end to end” design principle à “middleboxes”Decentralization à “centralize”

Backing up a levell The Internet offers us a lesson on how to reasonthrough the design of a complex systeml l l l l l What are our goals and constraints?What’s the right prioritization of goals?How do we decompose a problem?Who does what? How?What are the tradeoffs between design options?In short: a lesson in how to architect a system

Network Architecturel More about thinking rigorously than doingrigorous mathl More about understanding tradeoffs than runningbenchmarksl More about practicality than optimalityDone right, can be a powerful thing

What (I hope) CS 168 will teach youl How the Internet worksl Why it works the way it doesl How to reason through a complicated(networking) design problem

Let’s take a 5 minute break

Todayl Introductionsl What is (this course on) networking about?5 minute breakl Class policies, roadmap, administrivia

Class Workloadl l l Three projectsThree homeworksExams:l l l l midterm: October 20 in classfinal: December 18, 8-11am, location TBAclosed book, open crib sheetNo lecture on November 26 (for Thanksgiving)

Grading!l 3 Homeworks15% (3x 5% each)3 Projects40% (10 10 20)Midterm exam20%Final exam25%Course graded to mean of B

Topics we will cover!l Basic concepts [Lectures 2, 3]l l How the “insides” of the Internet work [Lectures 3-8]l l TCP, DNS, HTTPCrucial lower-level technologies [Lectures 17-20]l l IP, DV/LS routing, BGPHow endpoints use the network [Lectures 9-16]l l packets, circuits, delay, loss, protocolsEthernet, wirelessImportant new(er) topics [Lectures 21-26]l management, security, datacenters

Three projectsl Project 1: Routing (in simple simulator)l Project 2: Reliable Transport (in simple simulator)l Project 3: Build a network firewalll Larger project, in two phasesTAs will handle all project-related questions!

Administrivia: Textbook!l J. Kurose and K. Ross, Computer Networking: ATop-Down Approach, 6th Edition, 2012.l l 5th Edition ok, but translate the reading assignmentsYou will not be tested on material we didn’tcover in lecture or sectionl Use as a reference and a source of examples

Enrollment and wait listl Class size will not increasel Wait-listed students will be admitted as and whenregistered students drop the classl l If you’re planning to drop, please do so soon!Waitlist will be processed in order; seniors get priority

Class communicationsl Web site: http://inst.eecs.berkeley.edu/ cs168/fa14/l l Use your instructional account to hand in assignmentsl l Accounts will be handed out next weekUse Piazza for all other intra-class communicationl l Assignments, lecture slides, announcementsYou should all be signed up by nowCopy Radhika (radhika@cs) and Sangjin (sangjin@cs)on any emails sent directly to me (sylvia@cs)

Policy on late submissions,re-grade requests, cheating!l Detailed description is on the class websitel Summary version:l l l l You may submit assignments late or request re-gradesbut to a point, and it will cost youThe policy on re-grades for projects will be announced bythe lead TA on the project and may vary across projectsYour responsibility to keep your code private!When in doubt about the policy, ask us!

Class Participationl l We will post slides 10minutes before classAsk and answer questions!!l l l l l l l it helps you understandit helps others understandit helps you stay awakeit helps me stay awakeit’s just more fun for all of usSit towards the frontLimit electronic access for 90 minutesl you will have a 5 minute break in the middle to get online

Next Stepsl For our next lecturel read 1.1 and 1.3 of K&Rl Make sure you are registered with the correctemail address and on piazzal Discussion sections will start on September 10l l Sections on Wednesday and the following Monday willcover the same materialOK to swap sections unless we hit room capacity limits

Any questions?

packets, circuits, delay, loss, protocols ! How the “insides” of the Internet work [Lectures 3-8] ! IP, DV/LS routing, BGP ! How endpoints use the network [Lectures 9-16] ! TCP, DNS, HTTP ! Crucial lower-level technologies [Lectures 17-20] ! Ethernet, wireless ! Important new(er) topics [Lectures 21-26] !