lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date:...

26
Computer Networks: Architecture and Protocols CS4450 Lecture 5 - Design Goals Rachit Agarwal

Transcript of lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date:...

Page 1: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

ComputerNetworks:ArchitectureandProtocols

CS4450

Lecture5

-DesignGoals

RachitAgarwal

Page 2: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

Announcements

• Coursewebpageisyourone-stopshop

• Officehourshavebeenannounced• Westartimmediately(startingtoday)

• Myofficehourstomorrowwillbecoveredbysomeone

• Thisweekisextremelybusyforme

• Sorryifmyresponsestoyouremailsorpiazzapostsaredelayed

• Iwillbebackinfullswingstartingnextweek

• ProblemSet1solutionswillbereleasedtoday

Page 3: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

ContextforToday’sLecture

• Solvingproblemsrelatedtopropagationandtransmissiondelays

• Somein-classexercises

• Wewillsolvethemtogether

• WhywastheInternetdesignedthewayitwas?

Page 4: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

• Howtobreaksystemintomodules

• Layering

• Wherearemodulesimplemented

• End-to-EndPrinciple

• Whereisstatestored?• Fate-Sharing

Recap:Threedesignprinciples

5

Page 5: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

• Akindofmodularity

• Functionalityseparatedintolayers• Layerninterfaceswithonlylayern-1andlayern+1

• Hidescomplexityofsurroundinglayers

Recap:Layering

Builtontopof

reliabledelivery

Builtontopofbest-

effortforwarding

Builtontopof

best-effortrouting

Builtontopof

physicalbittransfer

Page 6: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

AssumethecondiSon(IF)holds.Then,

• End-to-endimplementation

• Correct• Generalized,andsimplifieslowerlayers

• In-networkimplementation

• Insufficient• Mayhelp—orhurt—performance

Recap:End-to-endPrinciple(Interpretation)

Page 7: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

• Whenstoringstateinadistributedsystem,colocateitwithentitiesthatrelyonthatstate

• Onlywayfailurecancauselossofthecriticalstateisiftheentitythatcaresaboutitalsofails…• …inwhichcaseitdoesn’tmatter

• Oftenarguesforkeepingstateatendhostsratherthaninsiderouters• E.g.,packetswitchingratherthancircuitswitching

Recap:Fate-Sharing

Page 8: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

• Howtobreaksystemintomodules

• Dictatedbylayering

• Wheremodulesareimplemented

• DictatedbyEnd-to-EndPrinciple

• Wherestateisstored

• DictatedbyFateSharing

Recap:DecisionsandtheirPrinciples

Page 9: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

Questions?

Page 10: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

FromArchitecturetoDesign:

DesignGoals

Page 11: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

• Wroteapaperin1988thattriedtocapturewhytheInternetturnedoutasitdid

• Itdescribedanorderedlistofprioritiesthatinformedthedecision

• Whatdoyouthinkthoseprioritieswere?

DavidClark

Page 12: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

• Connectexistingnetworks

• Robustinfaceoffailures

• Supportmultipletypesofdeliveryservices

• Accommodateavarietyofnetworks

• Allowdistributedmanagement

• Easyhostattachment

• Costeffective

• Allowresourceaccountability

InternetDesignGoals(Clark’88)

Page 13: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

Wantoneprotocolthatcouldbeusedtoconnectanypairof(existing)

networks

• Differentnetworksmayhavedifferentneeds

• Forsome:reliabledeliverymoreimportant

• Forothers:performancemoreimportant

• Butthereisoneneedthateverynetworkhas:connectivity

• TheInternetProtocol(IP)isthatunifyingprotocol• All(existing)networksmustbeabletoimplementit

#1:ConnectExistingNetworks

Page 14: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

Aslongasnetworkisnotpartitioned,twohostsshouldbeableto

communicate(eventually)

• Musteventuallyrecoverfromfailures

• Verysuccessfulinthepast;unclearhowrelevantnow• Availabilityisbecomingincreasinglyimportantthanrecovery

#2:RobustinFaceofFailures

Page 15: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

Differentdeliveryservices(applications)shouldbeabletoco-exist

• Alreadyimpliesanapplication-neutralframework

• Buildlowestcommondenominatorservice

• Again:connectivity• Applicationsthatneedreliabilitymayuseit

• Applicationsthatdonotneedreliabilitycanignoreit

• Thisisn’tasobviousasitseems…

• Whatwouldapplicationsin2050need?

#3:SupportMultipleTypesofDeliveryServices

Page 16: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

Questions?

Page 17: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

Mustbeabletosupportdifferentnetworkswithdifferenthardware

• Incrediblysuccessful!• Minimalrequirementsonnetworks

• Noneedforreliability,in-order,fixedsizepackets,etc.• Aresultofaimingforlowestcommondenominator

• Again:Focusonconnectivity• Letnetworksdospecificimplementationsforotherfunctionalities

• Automaticallyadapt:WiFi,LTE,3G,4G,5G….

#4:VarietyofNetworks

Page 18: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

Noneedtohaveasingle“vantage”pointtomanagenetworks

• Bothacurseandablessing• Importantforeasydeployment

• Makesmanagementhardtoday

• Recenteffortshaveimprovedmanagementofindividualnetworks

• ButnoattempttomanagetheInternetasawhole…

• Whatmightmakethiscomplex?

#5:DecentralizedManagement

Page 19: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

Themechanismthatallowshoststoattachtonetworksmustbemadeas

easyaspossible,butnoeasier

• Clarkobservesthatcostofhostattachmentmaybehigherbecausehostshadtobesmart

• Buttheadministrativecostofaddinghostsisverylow,whichisprobablymoreimportant

• Plug-and-playkindofbehavior…

• Andnowmosthostsaresmartforotherreasons• Sothecostisactuallyminimal…

#6:EasyHostAttachment

Page 20: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

Makenetworksascheapaspossible,butnocheaper

• Cheaperthancircuitswitchingatlowend

• Moreexpensivethancircuitswitchingathighend

• Notabadcompromise:

• Cheapwhereitcounts(low-end)• Moreexpensiveforthosewhocanpay…

#7:CostEffective

Page 21: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

Eachnetworkelementmustbemadeaccountableforitsresourceusage

• Failure!

#8:ResourceAccountability

Page 22: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

• Buildsomethingthatworks

• Connectexistingnetworks

• Robustinfaceoffailures

• Supportmultipletypesofdeliveryservice

• Accommodateavarietyofnetworks

• Allowdistributedmanagement

• Easyhostattachment

• Costeffective

• Allowresourceaccountability

RealGoals

Page 23: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

• Whatgoalsaremissingfromthislist?

• Suggestions?

• Whatwouldtheresultingdesignlooklike?

Questionstothinkabout

Page 24: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

• Performance

• Security• Resiliencetoattacks(denial-of-service)• Endpointsecurity• Trackingdownmisbehavingusers

• Privacy

• Availability

• Resourcesharing(fairness,etc.)

• ISP-levelconcerns• Economicissuesofinterconnection

Someofthemissingissues

Page 25: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

Questions?

Page 26: lecture05-principles-goals - Cornell University · lecture05-principles-goals.key Created Date: 2/4/2020 6:07:19 PM ...

• Beginningof“Designofcomputernetworks”

• StartwithLayer1andLayer2• Physicalbits(verylittle)• Localbest-effortforwarding• Lotsofinterestingaspects• Lotsofgroupactivities• …

Nextlecture