cos 461: computer networks midterm review...medium access control in 802.11 • collision avoidance,...

74
COS 461: Computer Networks Midterm Review Spring 2011 Mike Freedman h@p://www.cs.princeton.edu/courses/archive/spr11/cos461/ 1

Upload: others

Post on 19-Jan-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

COS461:ComputerNetworksMidtermReview

Spring2011

MikeFreedman

h@p://www.cs.princeton.edu/courses/archive/spr11/cos461/

1

Page 2: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

2

Internetlayering:Message,Segment,Packet,andFrame

HTTP

TCP

IP

Ethernet interface

HTTP

TCP

IP

Ethernet interface

IP IP

Ethernet interface

Ethernet interface

SONET interface

SONET interface

host host

router router

HTTP message

TCP segment

IP packet IP packet IP packet

Ethernet frame Ethernet frame SONET frame 2

Page 3: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

Topics•  Linklayer(Sl.4)

–  Sharingalink:TDMA,FDMA

–  EthernetandCSMA/CD

– WirelessandCSMA/CA–  Spanningtreeandswitching–  TranslaQngaddrs:DHCP/ARP

•  Networklayer(Sl.25)–  IPv4andaddressing–  IPforwarding– Middleboxes:NATs,firewalls,tunneling

•  Transportlayer(Sl.38)–  Socketinterface–  UDP–  TCP

•  Reliability•  CongesQonControl•  InteracQonsw/AcQveQueueManagement

•  ApplicaQonlayer(Sl.68)–  TranslaQngnames:DNS–  HTTPandCDNs–  Overlaynetworks

3

Page 4: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

LinkLayer

4

Page 5: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

Link‐LayerServices•  Encoding

– RepresenQngthe0sand1s

•  Framing– EncapsulaQngpacketintoframe,addingheaderandtrailer

– UsingMACaddresses,ratherthanIPaddresses

•  ErrordetecQon– Errorscausedbysignala@enuaQon,noise.– ReceiverdetecQngpresenceoferrors

5

Page 6: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

MulQpleAccessProtocol•  Singlesharedbroadcastchannel

– AvoidhavingmulQplenodesspeakingatonce– Otherwise,collisionsleadtogarbleddata

•  MulQpleaccessprotocol– Distributedalgorithmforsharingthechannel– Algorithmdetermineswhichnodecantransmit

•  Classesoftechniques–  ChannelparQQoning:dividechannelintopieces

– Time‐divisionmulQplexing,frequencydivisionmulQplexing–  Takingturns:passingatokenforrighttotransmit–  Randomaccess:allowcollisions,andthenrecover

6

Page 7: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

KeyIdeasofRandomAccess•  CarrierSense(CS)

–  Listenbeforespeaking,anddon’tinterrupt–  Checkingifsomeoneelseisalreadysendingdata– …andwaiQngQlltheothernodeisdone

•  CollisionDetecQon(CD)–  Ifsomeoneelsestartstalkingatthesame7me,stop–  Realizingwhentwonodesaretransmiangatonce– …bydetecQngthatthedataonthewireisgarbled

•  Randomness– Don’tstarttalkingagainrightaway– WaiQngforarandomQmebeforetryingagain

7

Page 8: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

CSMA/CDCollisionDetecQon8

Page 9: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

MediumAccessControlin802.11•  Collisionavoidance,notdetecQon

–  Firstexchangecontrolframesbeforetransmiangdata•  Senderissues“RequesttoSend”(RTS),includinglengthofdata

•  Receiverrespondswith“CleartoSend”(CTS)–  IfsenderseesCTS,transmitsdata(ofspecifiedlength)–  IfothernodeseesCTS,willidleforspecifiedperiod–  IfothernodeseesRTSbutnotCTS,freetosend

•  Link‐layeracknowledgmentandretransmission–  CRCtodetecterrors–  ReceivingstaQonsendsanacknowledgment

–  SendingstaQonretransmitsifnoACKisreceived

–  Givingupacerafewfailedtransmissions

9

Page 10: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

ScalingtheLinkLayer•  EthernettradiQonallylimitedbyfadingsignalstrengthinlongwires–  IntroducQonofhubs/repeaterstorebroadcast

•  SQllamaximum“length”foraEthernetsegment–  Otherwise,twonodesmightbetoofarforcarriersensetodetectconcurrentbroadcasts

•  Further,toomanynodesinshorterEthernetcanyieldlowtransmissionsrates–  Constantlyconflictwithoneanother

10

Page 11: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

Bridges/Switches:TrafficIsolaQon

•  SwitchbreakssubnetintoLANsegments

•  Switchfilterspackets–  Frameonlyforwardedtothenecessarysegments–  Segmentscansupportseparatetransmissions

hub hub hub

switch/bridge

segment segment

segment

11

Page 12: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

ComparingHubs,Switches,Routers

Hub/

Repeater

Bridge/

Switch

Router

Traffic isolation no yes yes

Plug and Play yes yes no

Efficient routing no no yes

Cut through yes yes no

12

Page 13: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

SelfLearning:BuildingtheTable•  Whenaframearrives

–  InspectthesourceMACaddress

–  Associatetheaddresswiththeincominginterface

–  Storethemappingintheswitchtable

–  UseaQme‐to‐livefieldtoeventuallyforgetthemapping

A

B

C

D

Switch learns how to reach A

13

Page 14: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

SoluQon:SpanningTrees•  Ensurethetopologyhasnoloops

–  Avoidusingsomeofthelinkswhenflooding–  …toavoidformingaloop

•  Spanningtree–  Sub‐graphthatcoversallverQcesbutcontainsnocycles–  Linksnotinthespanningtreedonotforwardframes

14

Page 15: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

EvoluQonTowardVirtualLANs

Red VLAN and Orange VLAN Switches forward traffic as needed

R O

RO

R

R

R

O O O R O R R R

O

O

O

15

Group users based on organizational structure, rather than the physical

layout of the building.

Page 16: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

Wireless

16

Page 17: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

CSMA:CarrierSense,MulQpleAccess

•  MulQpleaccess:channelissharedmedium–  StaQon:wirelesshostoraccesspoint– MulQplestaQonsmaywanttotransmitatsameQme

•  Carriersense:sensechannelbeforesending–  StaQondoesn’tsendwhenchannelisbusy–  Topreventcollisionswithongoingtransfers–  But,detecQngongoingtransfersisn’talwayspossible

17

A B

C A B C

A’s signal strength

space

C’s signal strength

Page 18: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

CA:CollisionAvoidance,NotDetecQon•  CollisiondetecQoninwiredEthernet

–  StaQonlistenswhiletransmiang– Detectscollisionwithothertransmission– Abortstransmissionandtriessendingagain

•  Problem#1:cannotdetectallcollisions– Hiddenterminalproblem–  Fading

18

Page 19: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

CA:CollisionAvoidance,NotDetecQon•  CollisiondetecQoninwiredEthernet

–  StaQonlistenswhiletransmiang– Detectscollisionwithothertransmission– Abortstransmissionandtriessendingagain

•  Problem#1:cannotdetectallcollisions– Hiddenterminalproblem–  Fading

•  Problem#2:listeningwhilesending–  Strengthofreceivedsignalismuchsmaller–  Expensivetobuildhardwarethatdetectscollisions

•  So,802.11doescollisionavoidance,notdetecQon

19

Page 20: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

HiddenTerminalProblem

•  AandCcan’tseeeachother,bothsendtoB

•  Occursb/c802.11reliesonphysicalcarriersensing,whichissuscepQbletohiddenterminalproblem

20

CBA

Page 21: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

Virtualcarriersensing•  Firstexchangecontrolframesbeforetransmiangdata–  Senderissues“RequesttoSend”(RTS),incl.lengthofdata

–  Receiverrespondswith“CleartoSend”(CTS)

•  IfsenderseesCTS,transmitsdata(ofspecifiedlength)

•  IfothernodeseesCTS,willidleforspecifiedperiod

•  IfothernodeseesRTSbutnotCTS,freetosend

21

Page 22: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

HiddenTerminalProblem

•  AandCcan’tseeeachother,bothsendtoB

•  RTS/CTScanhelp–  BothAandCwouldsendRTSthatBwouldseefirst–  BonlyrespondswithoneCTS(say,echo’ingA’sRTS)–  CdetectsthatCTSdoesn’tmatchandwon’tsend

22

CBA

Page 23: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

ExposedTerminalProblem

•  BsendingtoA,CwantstosendtoD•  AsCreceivesB’spackets,carriersensewouldpreventitfromsendingtoD,eventhoughwouldn’tinterfere

•  RTS/CTScanhelp–  ChearsRTSfromB,butnotCTSfromA–  Cknowsit’stransmissionwillnotinterferewithA

–  CissafetotransmittoD

23

CBA D

Page 24: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

ImpactonHigher‐LayerProtocols•  WirelessandmobilitychangepathproperQes

– Wireless:higherpacketloss,notfromcongesQon– Mobility:transientdisrupQons,andchangesinRTT

•  Logically,impactshouldbeminimal…–  Best‐effortservicemodelremainsunchanged–  TCPandUDPcan(anddo)runoverwireless,mobile

•  But,performancedefinitelyisaffected–  TCPtreatspacketlossasasignofcongesQon–  TCPtriestoesQmatetheRTTtodriveretransmissions–  TCPdoesnotperformwellunderout‐of‐orderpackets

•  Internetnotdesignedwiththeseissuesinmind

24

Page 25: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

NetworkLayer

25

Page 26: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

IPPacketStructure

4-bit Version

4-bit Header Length

8-bit Type of Service

(TOS) 16-bit Total Length (Bytes)

16-bit Identification 3-bit Flags 13-bit Fragment Offset

8-bit Time to Live (TTL) 8-bit Protocol 16-bit Header Checksum

32-bit Source IP Address

32-bit Destination IP Address

Options (if any)

Payload

26

Page 27: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

SourceAddress:WhatifSourceLies?•  Sourceaddressshouldbethesendinghost

–  But,who’schecking,anyway?–  Youcouldsendpacketswithanysourceyouwant

•  Whywouldsomeonewanttodothis?–  Launchadenial‐of‐servicea@ack

•  SendexcessivepacketstothedesQnaQon•  …tooverloadthenode,orthelinksleadingtonode

–  EvadedetecQonby“spoofing”•  But,thevicQmcouldidenQfyyoubythesourceaddress•  So,youcanputsomeoneelse’ssourceaddressinpackets

–  Also,ana@ackagainstthespoofedhost•  Spoofedhostiswronglyblamed•  Spoofedhostmayreceivereturntrafficfromreceiver

27

Page 28: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

HierarchicalAddressing:IPPrefixes•  IPaddressescanbedividedintotwoporQons

– Network(lec)andhost(right)•  12.34.158.0/24isa24‐bitprefix

– Whichcovers28addresses(e.g.,upto255hosts)

28

00001100 00100010 10011110 00000101

Network (24 bits) Host (8 bits)

12 34 158 5

Page 29: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

ClassfulAddressing•  Intheoldendays,onlyfixedallocaQonsizes

– ClassA:0*•  Verylarge/8blocks(e.g.,MIThas18.0.0.0/8)

– ClassB:10*•  Large/16blocks(e.g,.Princetonhas128.112.0.0/16)

– ClassC:110*•  Small/24blocks(e.g.,AT&TLabshas192.20.225.0/24)

– ClassD:1110*•  MulQcastgroups

– ClassE:11110*•  Reservedforfutureuse

•  Thisiswhyfolksusedo@ed‐quadnotaQon!

29

Page 30: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

CIDR:HierarchalAddressAllocaQon30

12.0.0.0/8

12.0.0.0/16

12.254.0.0/16

12.1.0.0/16 12.2.0.0/16 12.3.0.0/16

: : :

12.3.0.0/24 12.3.1.0/24

: :

12.3.254.0/24

12.253.0.0/19 12.253.32.0/19 12.253.64.0/19 12.253.96.0/19 12.253.128.0/19 12.253.160.0/19

: : :

• Prefixes are key to Internet scalability – Address allocated in contiguous chunks (prefixes) – Routing protocols and packet forwarding based on prefixes – Today, routing tables contain ~200,000 prefixes (vs. 4B)

Page 31: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

Twotypesofaddresses•  Providerindependent(fromIANA)

•  Providerallocated(fromupstreamISP)

•  ProviderallocatedaddressesseemtooffermorepotenQalforaggregaQon(andreducingrouQngtablesize),butnotalwaysso…

31

Page 32: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

Scalability:AddressAggregaQon32

Provider is given 201.10.0.0/21

201.10.0.0/22 201.10.4.0/24 201.10.5.0/24 201.10.6.0/23

Provider

RoutersinrestofInternetjustneedtoknowhowtoreach201.10.0.0/21.ProvidercandirectIPpackets

toappropriatecustomer.

Page 33: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

But,AggregaQonNotAlwaysPossible33

201.10.0.0/21

201.10.0.0/22 201.10.4.0/24 201.10.5.0/24 201.10.6.0/23

Provider 1 Provider 2

Mul7‐homedcustomer(201.10.6.0/23)hastwoproviders.OtherpartsoftheInternetneedtoknow

howtoreachthesedesQnaQonsthroughbothproviders.

Page 34: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

CIDRMakesPacketForwardingHarder•  Forwardingtablemayhavemanymatches

–  E.g.,entriesfor201.10.0.0/21and201.10.6.0/23–  TheIPaddress201.10.6.17wouldmatchboth!

–  UseLongestPrefixMatching

•  CanleadtorouQngtableexpansion–  TosaQfyLPM,needtoannounce/23fromboth1and2

34

201.10.0.0/21

201.10.0.0/22 201.10.4.0/24 201.10.5.0/24 201.10.6.0/23

Provider 1 Provider 2

Page 35: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

Internet‐wideInternetRouQng•  AS‐leveltopology

– DesQnaQonsareIPprefixes(e.g.,12.0.0.0/8)– NodesareAutonomousSystems(ASes)– EdgesarelinksandbusinessrelaQonships

35

1

2

3 4

5

6 7

Client Web server

Page 36: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

Middleboxes•  Middleboxesareintermediaries

–  Interposedin‐betweenthecommunicaQnghosts

–  OcenwithoutknowledgeofoneorbothparQes

•  Myriaduses–  Networkaddresstranslators–  Firewalls–  Tunnelendpoints–  Trafficshapers

–  IntrusiondetecQonsystems

–  TransparentWebproxycaches

–  ApplicaQonaccelerators

36

“AnabominaQon!”–  ViolaQonoflayering–  Hardtoreasonabout–  Responsibleforsubtlebugs

“ApracQcalnecessity!”–  Solvereal/pressingproblems

–  Needsnotlikelytogoaway

Page 37: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

Port‐TranslaQngNAT

•  Mapoutgoingpackets–  ReplacesourceaddresswithNATaddress–  Replacesourceportnumberwithanewportnumber

–  Remotehostsrespondusing(NATaddress,newport#)

•  MaintainatranslaQontable–  Storemapof(srcaddr,port#)to(NATaddr,newport#)

•  Mapincomingpackets–  ConsultthetranslaQontable– MapthedesQnaQonaddressandportnumber

–  Localhostreceivestheincomingpacket

37

Page 38: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

TransportLayer

38

Page 39: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

TwoBasicTransportFeatures•  Demul0plexing:portnumbers

•  Errordetec0on:checksums

39

Web server (port 80)

Client host

Server host 128.2.194.242

Echo server (port 7)

Service request for 128.2.194.242:80

(i.e., the Web server) OS Client

IP payload

detect corruption

Page 40: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

UserDatagramProtocol(UDP)•  Datagrammessagingservice

–  DemulQplexingofmessages:portnumbers–  DetecQngcorruptedmessages:checksum

•  LightweightcommunicaQonbetweenprocesses–  Sendmessagestoandreceivethemfromasocket

–  Avoidoverheadanddelaysofordered,reliabledelivery

40

SRC port DST port

checksum length

DATA

Page 41: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

TransmissionControlProtocol(TCP)•  Stream‐of‐bytesservice

–  Sendsandreceivesastreamofbytes,notmessages

•  Reliable,in‐orderdelivery–  Checksumstodetectcorrupteddata–  Sequencenumberstodetectlossesandreorderdata–  Acknowledgments&retransmissionsforreliabledelivery

•  ConnecQonoriented–  Explicitset‐upandtear‐downofTCPsession

•  Flowcontrol–  Preventoverflowofthereceiver’sbufferspace

•  CongesQoncontrol–  AdapttonetworkcongesQonforthegreatergood

41

Page 42: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

EstablishingaTCPConnecQon

•  Three‐wayhandshaketoestablishconnecQon– HostAsendsaSYNchronize(open)tothehostB– HostBreturnsaSYNACKnowledgment(SYNACK)– HostAsendsanACKtoacknowledgetheSYNACK

42

SYN

SYN ACK

ACK Data

A B

Data

Each host tells its ISN to the other host.

Page 43: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

TCP“StreamofBytes”Service43

Byte 0

Byte 1

Byte 2

Byte 3

Byte 0

Byte 1

Byte 2

Byte 3

Host A

Host B

Byte 80

Byte 80

Page 44: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

…EmulatedUsingTCP“Segments”44

Byte 0

Byte 1

Byte 2

Byte 3

Byte 0

Byte 1

Byte 2

Byte 3

Host A

Host B

Byte 80

TCP Data

TCP Data

Byte 80

Segmentsentwhen:1.  Segmentfull(MaxSegmentSize),2.  Notfull,butQmesout,or3.  “Pushed”byapplicaQon.

Page 45: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

Reliability:TCPAcknowledgments45

Host A

Host B

TCP Data

TCP Data

TCP HDR

TCP HDR

ISN (initial sequence number)

Sequence number = 1st byte

ACK sequence number = next expected byte

Page 46: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

DetecQnglosses46

Packet

Tim

eout

Packet

ACK

Tim

eout

Packet

Tim

eout

Packet

ACK

Tim

eout

Packet

ACK

Tim

eout

Packet

ACK

Tim

eout

ACK lost DUPLICATE

PACKET

Packet lost Early timeout DUPLICATE PACKETS

Page 47: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

Flowcontrol:Slidingwindow•  Allowalargeramountofdata“inflight”

– Allowsendertogetaheadofthereceiver– …thoughnottoofarahead

47

Sending process Receiving process

Last byte ACKed

Last byte sent

TCP TCP

Next byte expected

Last byte written Last byte read

Last byte received

Page 48: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

WhereCongesQonHappens:Links•  SimpleresourceallocaQon:FIFOqueue&drop‐tail

•  Accesstothebandwidth:first‐infirst‐outqueue– Packetstransmi@edintheordertheyarrive

•  Accesstothebufferspace:drop‐tailqueuing–  Ifthequeueisfull,droptheincomingpacket

48

Page 49: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

TCPCongesQonWindow•  EachTCPsendermaintainsacongesQonwindow

– Maximumnumberofbytestohaveintransit–  I.e.,numberofbytessQllawaiQngacknowledgments

•  AdapQngthecongesQonwindow– Decreaseuponlosingapacket:backingoff–  Increaseuponsuccess:opQmisQcallyexploring– Alwaysstrugglingtofindtherighttransferrate

•  Bothgoodandbad–  Pro:avoidshavingexplicitfeedbackfromnetwork–  Con:under‐shooQngandover‐shooQngtherate

49

Page 50: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

LeadstotheTCP“Sawtooth”50

t

Window

halved

Loss

But, could take a long time to get started!

Page 51: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

SlowStartandtheTCPSawtooth51

t

Window

halved

Loss

Exponential “slow start”

Duplicate ACK

Page 52: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

RepeaQngSlowStartAcerTimeout52

t

Window

halved

Loss

Slow start in operation until it reaches half of

previous cwnd.

Timeout

Page 53: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

Extensions

•  TaildropinroutersleadtoburstylossandsynchronizaQonofsenders– LedtoRandomEarlyDetecQon(RED)

•  Packetsdroppedandretransmissionwhenunnecessary– LedtoExplicitCongesQonNoQficaQon(ECN)

53

Page 54: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

Problemswithtaildrop•  UnderstablecondiQons,queuealmostalwaysfull–  Leadstohighlatencyforalltraffic

•  Possiblyunfairforflowswithsmallwindows–  Largerflowsmayfastretransmit(detecQnglossthroughTripDupACKs),smallflowsmayhavetowaitforQmeout

•  WindowsynchronizaQon– Moreonthislater…

54

Page 55: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

FairQueuing(FQ)•  Maintainsseparatequeueperflow

•  Ensuresnoflowconsumesmorethanits1/nshare–  VariaQon:weightedfairqueuing(WFQ)

•  Ifallpacketsweresamelength,wouldbeeasy

•  Ifnon‐work‐conserving(resourcescangoidle),alsowouldbeeasy,yetloweruQlizaQon

55

RoundRobinService

Egress Link

Flow 1

Flow 2

Flow 3

Flow 4

Page 56: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

FairQueuingBasics

•  TrackhowmuchQmeeachflowhasusedlink

– ComputeQmeusedifittransmitsnextpacket

•  Sendpacketfromflowthatwillhavelowestuseifittransmits– Whynotflowwithsmallestusesofar?

– Becausenextpacketmaybehuge!

56

Page 57: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

FQAlgorithm•  ImagineclockQckperbit,thentxQme~length

FinishQmeFi=max(Fi‐1,ArriveQmeAi)+LengthPi

•  CalculateesQmatedFiforallqueuedpackets

•  TransmitpacketwithlowestFinext

57

Page 58: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

FQAlgorithm(2)•  Problem:Can’tpreemptcurrenttxpacket

•  Result:InacQveflows(Ai>Fi‐1)arepenalized– Standardalgorithmconsidersnohistory

– Eachflowgetsfairshareonlywhenpacketsqueued

58

Page 59: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

FQAlgorithm(3)

•  Approach:givemorepromptnesstoflowsuQlizinglessbandwidthhistorically

•  BidBi=max(Fi‐1,Ai–δ)+Pi–  IntuiQon:withlargerδ,schedulingdecisionscalculatedbylasttxQmeFi‐1morefrequently,thuspreferringslowerflows

•  FQachievesmax‐minfairness–  Firstpriority:maximizetheminimumrateofanyacQveflows

–  Secondpriority:maximizethesecondminrate,etc.

59

Page 60: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

Usesof(W)FQ•  Scalability

– #queuesmustbeequalto#flows

– But,canbeusedonedgerouters,lowspeedlinks,orsharedendhosts

•  (W)FQcanbeforclassesoftraffic,notjustflows– UseIPTOSbitstomark“importance”

– Partof“DifferenQatedServices”architecturefor“Quality‐of‐Service”(QoS)

60

Page 61: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

BurstyLossFromDrop‐TailQueuing

•  TCPdependsonpacketloss–  PacketlossisindicaQonofcongesQon– AndTCPdrivesnetworkintolossbyaddiQverateincrease

•  Drop‐tailqueuingleadstoburstyloss–  Iflinkiscongested,manypacketsencounterfullqueue–  Thus,losssynchronizaQon:

• Manyflowsloseoneormorepackets•  Inresponse,manyflowsdividesendingrateinhalf

61

Page 62: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

SlowFeedbackfromDropTail•  Feedbackcomeswhenbufferiscompletelyfull

– …eventhoughthebufferhasbeenfillingforawhile

•  Plus,thefillingbufferisincreasingRTT– …makingdetecQonevenslower

•  Mightbebe@ertogiveearlyfeedback– Andget1‐2connecQonstoslowdownbeforeit’stoolate

62

Page 63: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

RandomEarlyDetecQon(RED)•  BasicideaofRED

–  RouternoQcesthatqueueisgeangbacklogged– …andrandomlydropspacketstosignalcongesQon

•  Packetdropprobability– Dropprobabilityincreasesasqueuelengthincreases–  Else,setdropprobabilityasfuncQonofavgqueuelengthandQmesincelastdrop

63

Average Queue Length

Dro

p Pr

obab

ility

0

1

Page 64: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

ProperQesofRED•  Dropspacketsbeforequeueisfull

–  Inthehopeofreducingtheratesofsomeflows

•  DropspacketinproporQontoeachflow’srate– High‐rateflowshavemorepackets– …and,hence,ahigherchanceofbeingselected

•  DropsarespacedoutinQme– WhichshouldhelpdesynchronizetheTCPsenders

•  TolerantofbursQnessinthetraffic– Bybasingthedecisionsonaveragequeuelength

64

Page 65: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

ProblemsWithRED•  Hardtogettunableparametersjustright

– Howearlytostartdroppingpackets?– Whatslopeforincreaseindropprobability?– WhatQmescaleforaveragingqueuelength?

•  REDhasmixedadopQoninpracQce–  Ifparametersaren’tsetright,REDdoesn’thelp– Hardtoknowhowtosettheparameters

•  ManyothervariaQonsinresearchcommunity– Nameslike“Blue”(self‐tuning),“FRED”…

65

Page 66: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

Feedback:FromlosstonoQficaQon

•  Earlydroppingofpackets– Good:givesearlyfeedback– Bad:hastodropthepackettogivethefeedback

•  ExplicitCongesQonNoQficaQon– RoutermarksthepacketwithanECNbit– SendinghostinterpretsasasignofcongesQon

66

Page 67: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

ExplicitCongesQonNoQficaQon•  Mustbesupportedbyrouter,sender,ANDreceiver

–  End‐hostsdetermineifECN‐capableduringTCPhandshake

•  ECNinvolvesallthreeparQes(and4headerbits)1. Sendermarks“ECN‐capable”whensending

2. Ifroutersees“ECN‐capable”andexperiencingcongesQon,routermarkspacketas“ECNcongesQonexperienced”

3. Ifreceiversees“congesQonexperienced”,marks“ECNecho”flaginresponsesunQlcongesQonACK’d

4. Ifsendersees“ECNecho”,reducescwndandmarks“congesQonwindowreduced”flaginnextTCPpacket

•  WhyextraECNflag?CongesQoncouldhappenineitherdirecQon,wantsendertoreacttoforwarddirecQon

•  WhyCRWACK?ECN‐echocouldbelost,butweideallyonlyrespondtocongesQoninforwarddirecQon

67

Page 68: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

ApplicaQonlayer

DNSHTTPandCDNs

P2PandDHTs

68

Page 69: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

ThreeHierarchicalAssignmentProcesses

•  Hostname:www.cs.princeton.edu–  Domain:registrarforeachtop‐leveldomain(e.g.,.edu)–  Hostname:localadministratorassignstoeachhost

•  IPaddresses:128.112.7.156–  Prefixes:ICANN,regionalInternetregistries,andISPs–  Hosts:staQcconfiguraQon,ordynamicusingDHCP

•  MACaddresses:00‐15‐C5‐49‐04‐A9–  Blocks:assignedtovendorsbytheIEEE–  Adapters:assignedbythevendorfromitsblock

69

Page 70: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

MappingBetweenIdenQfiers•  DomainNameSystem(DNS)

–  Givenahostname,providetheIPaddress–  GivenanIPaddress,providethehostname

•  DynamicHostConfiguraQonProtocol(DHCP)–  GivenaMACaddress,assignauniqueIPaddress–  …andtellhostotherstuffabouttheLocalAreaNetwork–  Toautomatetheboot‐strappingprocess

•  AddressResoluQonProtocol(ARP)–  GivenanIPaddress,providetheMACaddress–  ToenablecommunicaQonwithintheLocalAreaNetwork

DHCPandARPuseL2broadcast….DNSisapp‐layerprotocol

70

Page 71: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

Recursivevs.IteraQveQueries•  Recursivequery

– Askservertogetanswerforyou

– E.g.,request1andresponse8

•  IteraQvequery– Askserverwhotoasknext

– E.g.,allotherrequest‐responsepairs

71

requesting host cis.poly.edu

root DNS server

local DNS server dns.poly.edu

1

2 3

4 5

6

authoritative DNS server dns.cs.umass.edu

7 8

TLD DNS server

Page 72: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

Onepage,lotsofobjects

•  DynamicHTML: 19.6KB

•  StaQccontent: 6.2MB•  1flashmovie•  18images

•  5stylesheets•  3scripts

Page 73: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

TCPInteracQon:ShortTransfers•  MulQpleconnecQonsetups

–  Three‐wayhandshakeeachQme

•  Round‐tripQmeesQmaQon– MaybelargeatthestartofaconnecQon(e.g.,3seconds)–  LeadstolatencyindetecQnglostpackets

•  CongesQonwindow–  SmallvalueatbeginningofconnecQon(e.g.,1MSS)– Maynotreachahighvaluebeforetransferisdone

•  DetecQngpacketloss–  Timeout:slow–  DuplicateACK

•  Requiresmanypacketsinflight•  Whichdoesn’thappenforveryshorttransfers 73

Page 74: COS 461: Computer Networks Midterm Review...Medium Access Control in 802.11 • Collision avoidance, not detecon – First exchange control frames before transming data • Sender

PersistentHTTPNon‐persistentHTTPissues:•  Requires2RTTsperobject•  OSmustallocateresources

foreachTCPconnecQon

•  ButbrowsersocenopenparallelTCPconnecQonstofetchreferencedobjects

PersistentHTTP:•  ServerleavesconnecQon

openacersendingresponse

•  SubsequentHTTPmessagesbetweensameclient/serveraresentoverconnecQon

Persistentwithoutpipelining:•  Clientissuesnewrequestonly

whenpreviousresponsehasbeenreceived

•  OneRTTforeachobject

Persistentwithpipelining:•  DefaultinHTTP/1.1

•  Clientsendsrequestsassoonasitencountersreferencedobject

•  Asli@leasoneRTTforallthereferencedobjects

74