149 Pages

chapter4

Course: CSC 138, Spring 2011
School: CSU Chico
Rating:
 
 
 
 
 

Word Count: 8622

Document Preview

note Chapter4 NetworkLayer A on the use of these ppt slides: Were making these slides freely available to all (faculty, students, readers). Theyre in PowerPoint form so you can add, modify, and delete slides (including this one) and slide content to suit your needs. They obviously represent a lot of work on our part. In return for use, we only ask the following: If you use these slides (e.g., in a class) in...

Register Now

Unformatted Document Excerpt

Coursehero >> California >> CSU Chico >> CSC 138

Course Hero has millions of student submitted documents similar to the one
below including study guides, practice problems, reference materials, practice exams, textbook help and tutor support.

Course Hero has millions of student submitted documents similar to the one below including study guides, practice problems, reference materials, practice exams, textbook help and tutor support.
note Chapter4 NetworkLayer A on the use of these ppt slides: Were making these slides freely available to all (faculty, students, readers). Theyre in PowerPoint form so you can add, modify, and delete slides (including this one) and slide content to suit your needs. They obviously represent a lot of work on our part. In return for use, we only ask the following: If you use these slides (e.g., in a class) in substantially unaltered form, that you mention their source (after all, wed like people to use our book!) If you post any slides in substantially unaltered form on a www site, that you note that they are adapted from (or perhaps identical to) our slides, and note our copyright of this material. ComputerNetworking:ATop DownApproach 5thedition. JimKurose,KeithRoss AddisonWesley,April2009. Thanks and enjoy! JFK/KWR All material copyright 1996-2009 J.F Kurose and K.W. Ross, All Rights Reserved Network Layer 4-1 Chapter4:NetworkLayer Chaptergoals: understandprinciplesbehindnetworklayerservices: r networklayerservicemodels r forwardingversusrouting r howarouterworks r routing(pathselection) r dealingwithscale r advancedtopics:IPv6,mobility instantiation,implementationintheInternet Network Layer 4-2 Chapter4:NetworkLayer 4.1Introduction 4.2Virtualcircuitand datagramnetworks 4.3Whatsinsidearouter 4.4IP:InternetProtocol r r r r Datagramformat IPv4addressing ICMP IPv6 4.5Routingalgorithms r Linkstate r DistanceVector r Hierarchicalrouting 4.6RoutingintheInternet r RIP r OSPF r BGP 4.7Broadcastandmulticast routing Network Layer 4-3 Networklayer transportsegmentfromsending toreceivinghost onsendingsideencapsulates segmentsintodatagrams onrcvingside,deliverssegments totransportlayer networklayerprotocolsinevery host,router routerexaminesheaderfieldsin allIPdatagramspassing throughit application transport network datalink physical network datalink physical network datalink physical network datalink physical network datalink physical network datalink physical network datalink physical network datalink physical network datalink physical network datalink physical Network Layer network datalink physical network datalink physical application transport network datalink physical 4-4 TwoKeyNetworkLayerFunctions forwarding:movepackets fromroutersinputto appropriaterouteroutput routing:determineroute analogy: routing:processofplanning tripfromsourcetodest takenbypacketsfromsource forwarding:processof gettingthroughsingle todest. interchange r routingalgorithms Network Layer 4-5 Interplaybetweenroutingandforwarding routing algorithm local forwarding table header output link value 0100 3 0101 0111 1001 2 2 1 value in arriving packets header 0111 1 32 Network Layer 4-6 Connectionsetup 3rdimportantfunctioninsomenetworkarchitectures: ATM,framerelay,X.25 beforedatagramsflow,twoendhostsandinterveningroutersestablish virtualconnection r routersgetinvolved networkvstransportlayerconnectionservice: r network:betweentwohosts(mayalsoinvolveinterveningrouters incaseofVCs) r transport:betweentwoprocesses r Network Layer 4-7 Networkservicemodel Q:Whatservicemodelforchanneltransportingdatagramsfrom sendertoreceiver? Exampleservicesforindividual datagrams: guaranteeddelivery guaranteeddeliverywithless than40msecdelay Exampleservicesforaflowof datagrams: inorderdatagramdelivery guaranteedminimum bandwidthtoflow restrictionsonchangesin interpacketspacing Network Layer 4-8 Networklayerservicemodels: Network Architecture Internet Service Model Guarantees ? Congestion Bandwidth Loss Order Timing feedback best effort none ATM CBR ATM VBR ATM ABR ATM UBR constant rate guaranteed rate guaranteed minimum none no no no yes yes yes yes yes yes no yes no no (inferred via loss) no congestion no congestion yes no yes no no Network Layer 4-9 Chapter4:NetworkLayer 4.1Introduction 4.2Virtualcircuitand datagramnetworks 4.3Whatsinsidearouter 4.4IP:InternetProtocol r r r r Datagramformat IPv4addressing ICMP IPv6 4.5Routingalgorithms r Linkstate r DistanceVector r Hierarchicalrouting 4.6RoutingintheInternet r RIP r OSPF r BGP 4.7Broadcastandmulticast routing Network Layer 4- Networklayerconnectionandconnectionless service datagramnetworkprovidesnetworklayerconnectionless service VCnetworkprovidesnetworklayerconnectionservice analogoustothetransportlayerservices,but: service:hosttohost r nochoice:networkprovidesoneortheother r implementation:innetworkcore r Network Layer 4- Virtualcircuits sourcetodestpathbehavesmuchliketelephonecircuit r r performancewise networkactionsalongsourcetodestpath callsetup,teardownforeachcallbeforedatacanflow eachpacketcarriesVCidentifier(notdestinationhostaddress) everyrouteronsourcedestpathmaintainsstateforeachpassingconnection link,routerresources(bandwidth,buffers)maybeallocatedtoVC(dedicated resources=predictableservice) Network Layer 4- VCimplementation aVCconsistsof: 1. 2. 3. pathfromsourcetodestination VCnumbers,onenumberforeachlinkalongpath entriesinforwardingtablesinroutersalongpath packetbelongingtoVCcarriesVCnumber(ratherthan destaddress) VCnumbercanbechangedoneachlink. r NewVCnumbercomesfromforwardingtable Network Layer 4- Forwardingtable VCnumber 22 12 1 Forwardingtablein northwestrouter: 2 32 3 interface number IncominginterfaceIncomingVC#OutgoinginterfaceOutgoingVC# 112322 263118 37217 197387 Routersmaintainconnectionstateinformation! Network Layer 4- Virtualcircuits:signalingprotocols usedtosetup,maintainteardownVC usedinATM,framerelay,X.25 notusedintodaysInternet application transport network datalink physical 5.Dataflowbegins 4.Callconnected 1.Initiatecall 6.Receivedata 3.Acceptcall 2.incomingcall Network Layer application transport network datalink physical 4- Datagramnetworks nocallsetupatnetworklayer routers:nostateaboutendtoendconnections r nonetworklevelconceptofconnection packetsforwardedusingdestinationhostaddress r packetsbetweensamesourcedestpairmaytakedifferentpaths application transport network datalink physical 1.Senddata 2.Receivedata Network Layer application transport network datalink physical 4- Forwardingtable Destination Address Range 4billion possibleentries Link Interface 11001000 00010111 00010000 00000000 through 11001000 00010111 00010111 11111111 0 11001000 00010111 00011000 00000000 through 11001000 00010111 00011000 11111111 1 11001000 00010111 00011001 00000000 through 11001000 00010111 00011111 11111111 2 otherwise 3 Network Layer 4- Longestprefixmatching Prefix Match 11001000 00010111 00010 11001000 00010111 00011000 11001000 00010111 00011 otherwise Link Interface 0 1 2 3 Examples Whichinterface? DA:11001000000101110001011010100001 DA:11001000000101110001100010101010 Whichinterface? Network Layer 4- DatagramorVCnetwork:why? Internet(datagram) dataexchangeamongcomputers ATM(VC) evolvedfromtelephony elasticservice,nostricttiming humanconversation: req. r stricttiming,reliability smartendsystems(computers) requirements r canadapt,performcontrol,error r needforguaranteedservice recovery dumbendsystems r simpleinsidenetwork,complexity r telephones atedge r complexityinsidenetwork manylinktypes r differentcharacteristics r uniformservicedifficult r Network Layer 4- Chapter4:NetworkLayer 4.1Introduction 4.2Virtualcircuitand datagramnetworks 4.3Whatsinsidearouter 4.4IP:InternetProtocol r r r r Datagramformat IPv4addressing ICMP IPv6 4.5Routingalgorithms r Linkstate r DistanceVector r Hierarchicalrouting 4.6RoutingintheInternet r RIP r OSPF r BGP 4.7Broadcastandmulticast routing Network Layer 4- RouterArchitectureOverview Twokeyrouterfunctions: runroutingalgorithms/protocol(RIP,OSPF,BGP) forwardingdatagramsfromincomingtooutgoinglink Network Layer 4- InputPortFunctions Physicallayer: bitlevelreception Datalinklayer: e.g.,Ethernet seechapter5 Decentralized switching: givendatagramdest.,lookupoutputportusing forwardingtableininputportmemory goal:completeinputportprocessingatlinespeed queuing:ifdatagramsarrivefasterthanforwarding rateintoswitchfabric Network Layer 4- Threetypesofswitchingfabrics Network Layer 4- SwitchingViaMemory Firstgenerationrouters: traditionalcomputerswithswitchingunderdirectcontrolofCPU packetcopiedtosystemsmemory speedlimitedbymemorybandwidth(2buscrossingsperdatagram) Input Port Memory Output Port System Bus Network Layer 4- SwitchingViaaBus datagramfrominputportmemory tooutputportmemoryviaasharedbus buscontention:switchingspeedlimitedbybus bandwidth 32Gbpsbus,Cisco5600:sufficientspeedfor accessandenterpriserouters Network Layer 4- SwitchingViaAnInterconnectionNetwork overcomebusbandwidthlimitations Banyannetworks,otherinterconnectionnetsinitiallydevelopedto connectprocessorsinmultiprocessor advanceddesign:fragmentingdatagramintofixedlengthcells, switchcellsthroughthefabric. Cisco12000:switches60Gbpsthroughtheinterconnection network Network Layer 4- OutputPorts Bufferingrequiredwhendatagramsarrivefromfabricfasterthan thetransmissionrate Schedulingdisciplinechoosesamongqueueddatagramsfor transmission Network Layer 4- Outputportqueueing bufferingwhenarrivalrateviaswitchexceedsoutputlinespeed queueing(delay)andlossduetooutputportbufferoverflow! Network Layer 4- Howmuchbuffering? RFC3439ruleofthumb:averagebufferingequalto typicalRTT(say250msec)timeslinkcapacityC r e.g.,C=10Gpslink:2.5Gbitbuffer Recentrecommendation:withNflows,bufferingequalto . RTTC N Network Layer 4- InputPortQueuing Fabricslowerthaninputportscombined>queueingmayoccurat inputqueues HeadoftheLine(HOL)blocking:queueddatagramatfrontofqueue preventsothersinqueuefrommovingforward queueingdelayandlossduetoinputbufferoverflow! Network Layer 4- Chapter4:NetworkLayer 4.1Introduction 4.2Virtualcircuitand datagramnetworks 4.3Whatsinsidearouter 4.4IP:InternetProtocol r r r r Datagramformat IPv4addressing ICMP IPv6 4.5Routingalgorithms r Linkstate r DistanceVector r Hierarchicalrouting 4.6RoutingintheInternet r RIP r OSPF r BGP 4.7Broadcastandmulticast routing Network Layer 4- TheInternetNetworklayer Host,routernetworklayerfunctions: Transportlayer:TCP,UDP Network layer IPprotocol addressingconventions datagramformat packethandlingconventions Routingprotocols pathselection RIP,OSPF,BGP forwarding table ICMPprotocol errorreporting routersignaling Linklayer physicallayer Network Layer 4- Chapter4:NetworkLayer 4.1Introduction 4.2Virtualcircuitand datagramnetworks 4.3Whatsinsidearouter 4.4IP:InternetProtocol r r r r Datagramformat IPv4addressing ICMP IPv6 4.5Routingalgorithms r Linkstate r DistanceVector r Hierarchicalrouting 4.6RoutingintheInternet r RIP r OSPF r BGP 4.7Broadcastandmulticast routing Network Layer 4- IPdatagramformat IPprotocolversion number headerlength (bytes) typeofdata maxnumber remaininghops (decrementedat eachrouter) upperlayerprotocol todeliverpayloadto howmuchoverheadwith TCP? 20bytesofTCP 20bytesofIP =40bytes+applayer overhead 32bits ver head. len typeof service 16bitidentifier upper timeto layer live length fragment offset header checksum flgs totaldatagram length(bytes) for fragmentation/ reassembly 32bitsourceIPaddress 32bitdestinationIPaddress Options(ifany) data (variablelength, typicallyaTCP orUDPsegment) Network Layer E.g.timestamp, recordroute taken,specify listofrouters tovisit. 4- IPFragmentation&Reassembly networklinkshaveMTU(max.transfer size)largestpossiblelinklevelframe. r differentlinktypes,different MTUs largeIPdatagramdivided (fragmented)withinnet r onedatagrambecomesseveral datagrams r reassembledonlyatfinal destination r IPheaderbitsusedtoidentify, orderrelatedfragments fragmentation: in:onelargedatagram out:3smallerdatagrams reassembly Network Layer 4- IPFragmentationandReassembly Example 4000bytedatagram MTU=1500bytes length ID =4000 =x fragflag =0 offset =0 Onelargedatagrambecomes severalsmallerdatagrams length ID =1500 =x 1480bytesin datafield offset= 1480/8 fragflag =1 offset =0 length ID =1500 =x fragflag =1 offset =185 length ID =1040 =x fragflag =0 offset =370 Network Layer 4- Chapter4:NetworkLayer 4.1Introduction 4.2Virtualcircuitand datagramnetworks 4.3Whatsinsidearouter 4.4IP:InternetProtocol r r r r Datagramformat IPv4addressing ICMP IPv6 4.5Routingalgorithms r Linkstate r DistanceVector r Hierarchicalrouting 4.6RoutingintheInternet r RIP r OSPF r BGP 4.7Broadcastandmulticast routing Network Layer 4- IPAddressing:introduction IPaddress:32bitidentifier forhost,routerinterface interface:connection betweenhost/routerand physicallink r r r routerstypicallyhave multipleinterfaces hosttypicallyhasoneinterface IPaddressesassociatedwith eachinterface 223.1.1.1 223.1.1.2 223.1.1.4 223.1.1.3 223.1.2.1 223.1.2.9 223.1.3.27 223.1.2.2 223.1.3.2 223.1.3.1 223.1.1.1 = 11011111 00000001 00000001 00000001 223 1 1 Network Layer 1 4- Subnets IPaddress: r subnetpart(highorderbits) r hostpart(loworderbits) Whatsasubnet? r deviceinterfaceswithsame subnetpartofIPaddress r canphysicallyreacheachother withoutinterveningrouter 223.1.1.1 223.1.1.2 223.1.1.4 223.1.1.3 223.1.2.1 223.1.2.9 223.1.3.27 223.1.2.2 subnet 223.1.3.1 223.1.3.2 networkconsistingof3subnets Network Layer 4- Subnets 223.1.1.0/24 223.1.2.0/24 Recipe Todeterminethesubnets, detacheachinterfacefromits hostorrouter,creatingislands ofisolatednetworks.Each isolatednetworkiscalleda subnet. 223.1.3.0/24 Subnetmask:/24 Network Layer 4- Subnets 223.1.1.2 Howmany? 223.1.1.1 223.1.1.4 223.1.1.3 223.1.7.0 223.1.9.2 223.1.9.1 223.1.7.1 223.1.8.1 223.1.8.0 223.1.2.6 223.1.2.1 223.1.3.27 223.1.2.2 223.1.3.1 223.1.3.2 Network Layer 4- IPaddressing:CIDR CIDR:ClasslessInterDomainRouting subnetportionofaddressofarbitrarylength r addressformat:a.b.c.d/x,wherexis#bitsinsubnetportionof address r subnet part host part 11001000 00010111 00010000 00000000 200.23.16.0/23 Network Layer 4- IPaddresses:howtogetone? Q:HowdoesahostgetIPaddress? hardcodedbysystemadmininafile Windows:controlpanel>network>configuration>tcp/ip >properties r UNIX:/etc/rc.config DHCP:DynamicHostConfigurationProtocol:dynamicallyget addressfromasserver r plugandplay r Network Layer 4- DHCP:DynamicHostConfigurationProtocol Goal:allowhosttodynamicallyobtainitsIPaddressfromnetworkserverwhen itjoinsnetwork Canrenewitsleaseonaddressinuse Allowsreuseofaddresses(onlyholdaddresswhileconnectedanon) Supportformobileuserswhowanttojoinnetwork(moreshortly) DHCPoverview: r hostbroadcastsDHCPdiscovermsg[optional] r DHCPserverrespondswithDHCPoffermsg[optional] r hostrequestsIPaddress:DHCPrequestmsg r DHCPserversendsaddress:DHCPackmsg Network Layer 4- DHCPclientserverscenario A B 223.1.1.2 223.1.1.4 223.1.1.3 223.1.3.1 223.1.2.1 DHCP server 223.1.1.1 223.1.2.9 223.1.3.27 223.1.2.2 223.1.3.2 E arriving DHCP client needs address in this network Network Layer 4- DHCPclientserverscenario DHCPserver:223.1.2.5 DHCP discover src : 0.0.0.0, 68 dest.: 255.255.255.255,67 yiaddr: 0.0.0.0 transaction ID: 654 arriving client DHCP offer src: 223.1.2.5, 67 dest: 255.255.255.255, 68 yiaddrr: 223.1.2.4 transaction ID: 654 Lifetime: 3600 secs DHCP request time src: 0.0.0.0, 68 dest:: 255.255.255.255, 67 yiaddrr: 223.1.2.4 transaction ID: 655 Lifetime: 3600 secs DHCP ACK src: 223.1.2.5, 67 dest: 255.255.255.255, 68 yiaddrr: 223.1.2.4 transaction ID: 655 Lifetime: 3600 secs Network Layer 4- DHCP:morethanIPaddress DHCPcanreturnmorethanjustallocatedIPaddresson subnet: addressoffirsthoprouterforclient r nameandIPaddressofDNSsever r networkmask(indicatingnetworkversushostportionof address) r Network Layer 4- DHCP:example DHCP UDP IP Eth Phy DHCP DHCP DHCP DHCP DHCPrequestencapsulatedin DHCP DHCP DHCP DHCP DHCP connectinglaptopneedsitsIP address,addroffirsthoprouter, addrofDNSserver:useDHCP DHCP UDP IP Eth Phy 168.1.1.1 router (runsDHCP) UDP,encapsulatedinIP, encapsulatedin802.1Ethernet Ethernetframebroadcast(dest: FFFFFFFFFFFF)onLAN,receivedat routerrunningDHCPserver EthernetdemuxedtoIPdemuxed, UDPdemuxedtoDHCP Network Layer 4- DHCP:example DHCP UDP IP Eth Phy DHCP DHCP DHCP DHCP DCPserverformulatesDHCPACK containingclientsIPaddress,IP addressoffirsthoprouterfor client,name&IPaddressofDNS server encapsulationofDHCPserver, DHCP DHCP DHCP DHCP DHCP DHCP UDP IP Eth Phy router (runsDHCP) frameforwardedtoclient, demuxinguptoDHCPatclient clientnowknowsitsIPaddress, nameandIPaddressofDSN server,IPaddressofitsfirsthop router Network Layer 4- DHCP:wireshark output(homeLAN) Message type: Boot Request (1) Hardware type: Ethernet Hardware address length: 6 Hops: 0 Transaction ID: 0x6b3a11b7 Seconds elapsed: 0 Bootp flags: 0x0000 (Unicast) Client IP address: 0.0.0.0 (0.0.0.0) Your (client) IP address: 0.0.0.0 (0.0.0.0) Next server IP address: 0.0.0.0 (0.0.0.0) Relay agent IP address: 0.0.0.0 (0.0.0.0) Client MAC address: Wistron_23:68:8a (00:16:d3:23:68:8a) Server host name not given Boot file name not given Magic cookie: (OK) Option: (t=53,l=1) DHCP Message Type = DHCP Request Option: (61) Client identifier Length: 7; Value: 010016D323688A; Hardware type: Ethernet Client MAC address: Wistron_23:68:8a (00:16:d3:23:68:8a) Option: (t=50,l=4) Requested IP Address = 192.168.1.101 Option: (t=12,l=5) Host Name = "nomad" Option: (55) Parameter Request List Length: 11; Value: 010F03062C2E2F1F21F92B 1 = Subnet Mask; 15 = Domain Name 3 = Router; 6 = Domain Name Server 44 = NetBIOS over TCP/IP Name Server request reply Message type: Boot Reply (2) Hardware type: Ethernet Hardware address length: 6 Hops: 0 Transaction ID: 0x6b3a11b7 Seconds elapsed: 0 Bootp flags: 0x0000 (Unicast) Client IP address: 192.168.1.101 (192.168.1.101) Your (client) IP address: 0.0.0.0 (0.0.0.0) Next server IP address: 192.168.1.1 (192.168.1.1) Relay agent IP address: 0.0.0.0 (0.0.0.0) Client MAC address: Wistron_23:68:8a (00:16:d3:23:68:8a) Server host name not given Boot file name not given Magic cookie: (OK) Option: (t=53,l=1) DHCP Message Type = DHCP ACK Option: (t=54,l=4) Server Identifier = 192.168.1.1 Option: (t=1,l=4) Subnet Mask = 255.255.255.0 Option: (t=3,l=4) Router = 192.168.1.1 Option: (6) Domain Name Server Length: 12; Value: 445747E2445749F244574092; IP Address: 68.87.71.226; IP Address: 68.87.73.242; IP Address: 68.87.64.146 Option: (t=15,l=20) Domain Name = "hsd1.ma.comcast.net." Network Layer 4- IPaddresses:howtogetone? Q:HowdoesnetworkgetsubnetpartofIPaddr? A:getsallocatedportionofitsproviderISPsaddressspace ISP's block 11001000 00010111 00010000 00000000 200.23.16.0/20 Organization 0 Organization 1 Organization 2 ... 11001000 00010111 00010000 00000000 11001000 00010111 00010010 00000000 11001000 00010111 00010100 00000000 .. . 200.23.16.0/23 200.23.18.0/23 200.23.20.0/23 . Organization 7 11001000 00010111 00011110 00000000 200.23.30.0/23 Network Layer 4- Hierarchicaladdressing:routeaggregation Hie ra rc h ic a la d d re s s in g a llo ws e ffic ie nta d ve rtis e m e nto fro uting info rm a tio n: Organization0 200.23.16.0/23 Organization1 200.23.18.0/23 Organization2 200.23.20.0/23 Organization7 . . . . . . FlyByNightISP Sendmeanything withaddresses beginning 200.23.16.0/20 Internet 200.23.30.0/23 ISPsRUs Sendmeanything withaddresses beginning 199.31.0.0/16 Network Layer 4- Hierarchicaladdressing:morespecificroutes ISPsRUshasamorespecificroutetoOrganization1 Organization0 200.23.16.0/23 Organization2 200.23.20.0/23 Organization7 . . . . . . FlyByNightISP Sendmeanything withaddresses beginning 200.23.16.0/20 Internet 200.23.30.0/23 ISPsRUs Organization1 200.23.18.0/23 Sendmeanything withaddresses beginning199.31.0.0/16 or200.23.18.0/23 Network Layer 4- IPaddressing:thelastword... Q:HowdoesanISPgetblockofaddresses? A:ICANN:InternetCorporationforAssigned NamesandNumbers r allocatesaddresses r managesDNS r assignsdomainnames,resolvesdisputes Network Layer 4- NAT:NetworkAddressTranslation restof Internet localnetwork (e.g.,homenetwork) 10.0.0/24 10.0.0.4 10.0.0.1 10.0.0.2 138.76.29.7 10.0.0.3 Alldatagramsleavinglocal networkhavesamesinglesourceNATIP address:138.76.29.7, differentsourceportnumbers Datagramswithsourceor destinationinthisnetwork have10.0.0/24addressfor source,destination(asusual) Network Layer 4- NAT:NetworkAddressTranslation Motivation:localnetworkusesjustoneIPaddressasfarasoutsideworld isconcerned: r rangeofaddressesnotneededfromISP:justoneIPaddressforall devices r canchangeaddressesofdevicesinlocalnetworkwithoutnotifying outsideworld r canchangeISPwithoutchangingaddressesofdevicesinlocalnetwork r devicesinsidelocalnetnotexplicitlyaddressable,visiblebyoutside world(asecurityplus). Network Layer 4- NAT:NetworkAddressTranslation Implementation:NATroutermust: r outgoingdatagrams:replace(sourceIPaddress,port#)ofevery outgoingdatagramto(NATIPaddress,newport#) ...remoteclients/serverswillrespondusing(NATIPaddress,new port#)asdestinationaddr. r remember(inNATtranslationtable)every(sourceIPaddress,port#) to(NATIPaddress,newport#)translationpair r incomingdatagrams:replace(NATIPaddress,newport#)indest fieldsofeveryincomingdatagramwithcorresponding(sourceIP address,port#)storedinNATtable Network Layer 4- NAT:NetworkAddressTranslation NATtranslationtable WANsideaddrLANsideaddr 2:NATrouter changesdatagram sourceaddrfrom 10.0.0.1,3345to 138.76.29.7,5001, updatestable 1:host10.0.0.1 sendsdatagramto 128.119.40.186,80 138.76.29.7,500110.0.0.1,3345 S:10.0.0.1,3345 D:128.119.40.186,80 2 1 S:138.76.29.7,5001 D:128.119.40.186,80 10.0.0.4 138.76.29.7 S:128.119.40.186,80 D:138.76.29.7,5001 3:Replyarrives dest.address: 138.76.29.7,5001 3 10.0.0.1 10.0.0.2 S:128.119.40.186,80 D:10.0.0.1,3345 4 10.0.0.3 4:NATrouter changesdatagram destaddrfrom 138.76.29.7,5001to10.0.0.1,3345 Network Layer 4- NAT:NetworkAddressTranslation 16bitportnumberfield: r 60,000simultaneousconnectionswithasingleLANside address! NATiscontroversial: r routersshouldonlyprocessuptolayer3 r violatesendtoendargument NATpossibilitymustbetakenintoaccountbyappdesigners,eg,P2P applications r addressshortageshouldinsteadbesolvedbyIPv6 Network Layer 4- NATtraversalproblem clientwantstoconnecttoserver withaddress10.0.0.1 r r serveraddress10.0.0.1localtoLAN (clientcantuseitasdestinationaddr) onlyoneexternallyvisibleNATted address:138.76.29.7 solution1:staticallyconfigureNAT toforwardincomingconnection requestsatgivenporttoserver r Client 10.0.0.1 ? 10.0.0.4 138.76.29.7 NAT router e.g.,(123.76.29.7,port2500)always forwardedto10.0.0.1port25000 Network Layer 4- NATtraversalproblem solution2:UniversalPlugandPlay (UPnP)InternetGatewayDevice(IGD) Protocol.AllowsNATtedhostto: learnpublicIPaddress(138.76.29.7) add/removeportmappings(withlease times) i.e.,automatestaticNATportmap configuration 10.0.0.1 IGD 10.0.0.4 138.76.29.7 NAT router Network Layer 4- NATtraversalproblem solution3:relaying(usedinSkype) NATedclientestablishesconnectiontorelay r Externalclientconnectstorelay r relaybridgespacketsbetweentoconnections r 2.connectionto relayinitiated byclient Client 3.relaying established 1.connectionto relayinitiated byNATtedhost 138.76.29.7 10.0.0.1 NAT router Network Layer 4- Chapter4:NetworkLayer 4.1Introduction 4.2Virtualcircuitand datagramnetworks 4.3Whatsinsidearouter 4.4IP:InternetProtocol r r r r Datagramformat IPv4addressing ICMP IPv6 4.5Routingalgorithms r Linkstate r DistanceVector r Hierarchicalrouting 4.6RoutingintheInternet r RIP r OSPF r BGP 4.7Broadcastandmulticast routing Network Layer 4- ICMP:InternetControlMessageProtocol usedbyhosts&routerstocommunicate networklevelinformation r errorreporting:unreachablehost, network,port,protocol r echorequest/reply(usedbyping) networklayeraboveIP: r ICMPmsgscarriedinIP datagrams ICMPmessage:type,codeplusfirst8 bytesofIPdatagramcausingerror Type 0 3 3 3 3 3 3 4 Code 0 0 1 2 3 6 7 0 8 9 10 11 12 0 0 0 0 0 description echo reply (ping) dest. network unreachable dest host unreachable dest protocol unreachable dest port unreachable dest network unknown dest host unknown source quench (congestion control - not used) echo request (ping) route advertisement router discovery TTL expired bad IP header Network Layer 4- TracerouteandICMP SourcesendsseriesofUDP segmentstodest r r r FirsthasTTL=1 SecondhasTTL=2,etc. Unlikelyportnumber Whennthdatagramarrivestonth router: r r r Routerdiscardsdatagram AndsendstosourceanICMP message(type11,code0) Messageincludesnameofrouter& IPaddress WhenICMPmessagearrives,source calculatesRTT Traceroutedoesthis3times Stoppingcriterion UDPsegmenteventuallyarrivesat destinationhost DestinationreturnsICMPhost unreachablepacket(type3,code3) WhensourcegetsthisICMP,stops. Network Layer 4- Chapter4:NetworkLayer 4.1Introduction 4.2Virtualcircuitand datagramnetworks 4.3Whatsinsidearouter 4.4IP:InternetProtocol r r r r Datagramformat IPv4addressing ICMP IPv6 4.5Routingalgorithms r Linkstate r DistanceVector r Hierarchicalrouting 4.6RoutingintheInternet r RIP r OSPF r BGP 4.7Broadcastandmulticast routing Network Layer 4- IPv6 Initialmotivation:32bitaddressspacesoontobecompletely allocated. Additionalmotivation: headerformathelpsspeedprocessing/forwarding r headerchangestofacilitateQoS IPv6datagramformat: r fixedlength40byteheader r nofragmentationallowed r Network Layer 4- IPv6Header(Cont) Priority:identifypriorityamongdatagramsinflow FlowLabel:identifydatagramsinsameflow. (conceptofflownotwelldefined). Nextheader:identifyupperlayerprotocolfordata Network Layer 4- OtherChangesfromIPv4 Checksum:removedentirelytoreduceprocessingtimeat eachhop Options:allowed,butoutsideofheader,indicatedby NextHeaderfield ICMPv6:newversionofICMP additionalmessagetypes,e.g.PacketTooBig r multicastgroupmanagementfunctions r Network Layer 4- TransitionFromIPv4ToIPv6 Notallrouterscanbeupgradedsimultaneous r HowwillthenetworkoperatewithmixedIPv4andIPv6routers? noflagdays r Tunneling:IPv6carriedaspayloadinIPv4datagramamong IPv4routers Network Layer 4- Tunneling E F IPv6 IPv6 IPv6 A B E F Physicalview: IPv6 IPv6 IPv6 IPv6 B IPv6 Logicalview: A tunnel IPv4 IPv4 Network Layer 4- Tunneling Physicalview: B C IPv6 IPv6 IPv4 F IPv6 D E F IPv4 IPv6 IPv6 IPv6 A E IPv6 B IPv6 Logicalview: A tunnel data AtoB: IPv6 Src:B Dest:E Src:B Dest:E Flow:X Src:A Dest:F Flow:X Src:A Dest:F data Flow:X Src:A Dest:F data BtoC: IPv6inside IPv4 BtoC: IPv6inside IPv4 Flow:X Src:A Dest:F data EtoF: IPv6 Network Layer 4- Chapter4:NetworkLayer 4.1Introduction 4.2Virtualcircuitand datagramnetworks 4.3Whatsinsidearouter 4.4IP:InternetProtocol r r r r Datagramformat IPv4addressing ICMP IPv6 4.5Routingalgorithms r Linkstate r DistanceVector r Hierarchicalrouting 4.6RoutingintheInternet r RIP r OSPF r BGP 4.7Broadcastandmulticast routing Network Layer 4- Interplaybetweenrouting,forwarding routing algorithm local forwarding table header output link value 0100 3 0101 0111 1001 2 2 1 value in arriving packets header 0111 1 32 Network Layer 4- Graphabstraction 5 2 u 1 Graph: G = (N,E) 3 v 2 x w 3 1 5 z 1 y 2 N = set of routers = { u, v, w, x, y, z } E = set of links ={ (u,v), (u,x), (v,x), (v,w), (x,w), (x,y), (w,y), (w,z), (y,z) } Remark:Graphabstractionisusefulinothernetworkcontexts Example:P2P,whereNissetofpeersandEissetofTCPconnections Network Layer 4- Graphabstraction:costs 5 2 u 1 c(x,x)=costoflink(x,x) 3 v 2 x w 3 1 5 z 1 y 2 e.g.,c(w,z)=5 costcouldalwaysbe1,or inverselyrelatedtobandwidth, orinverselyrelatedto congestion Costofpath(x1,x2,x3,,xp)=c(x1,x2)+c(x2,x3)++c(xp1,xp) Question:Whatstheleastcostpathbetweenuandz? Routingalgorithm:algorithmthatfindsleastcostpath Network Layer 4- RoutingAlgorithmclassification Globalordecentralized information? Global: allroutershavecompletetopology, linkcostinfo linkstatealgorithms Decentralized: routerknowsphysicallyconnected neighbors,linkcoststoneighbors iterativeprocessofcomputation, exchangeofinfowithneighbors distancevectoralgorithms Staticordynamic? Static: routeschangeslowlyovertime Dynamic: routeschangemorequickly r periodicupdate r inresponsetolinkcost changes Network Layer 4- Chapter4:NetworkLayer 4.1Introduction 4.2Virtualcircuitand datagramnetworks 4.3Whatsinsidearouter 4.4IP:InternetProtocol r r r r Datagramformat IPv4addressing ICMP IPv6 4.5Routingalgorithms r Linkstate r DistanceVector r Hierarchicalrouting 4.6RoutingintheInternet r RIP r OSPF r BGP 4.7Broadcastandmulticast routing Network Layer 4- ALinkStateRoutingAlgorithm Dijkstrasalgorithm nettopology,linkcostsknowntoall nodes r accomplishedvialinkstate broadcast r allnodeshavesameinfo computesleastcostpathsfromone node(source)toallothernodes r givesforwardingtableforthat node iterative:afterkiterations,know leastcostpathtokdest.s Notation: c(x,y):linkcostfromnodextoy; =ifnotdirectneighbors D(v):currentvalueofcostofpath fromsourcetodest.v p(v):predecessornodealongpath fromsourcetov N':setofnodeswhoseleastcost pathdefinitivelyknown Network Layer 4- DijsktrasAlgorithm 1 Initialization: 2 N' = {u} 3 for all nodes v 4 if v adjacent to u 5 then D(v) = c(u,v) 6 else D(v) = 7 8 Loop 9 find w not in N' such that D(w) is a minimum 10 add w to N' 11 update D(v) for all v adjacent to w and not in N ' : 12 D(v) = min( D(v), D(w) + c(w,v) ) 13 /* new cost to v is either old cost to v or known 14 shortest path cost to w plus cost from w to v */ 15 until all nodes in N' Network Layer 4- Dijkstrasalgorithm:example Step 0 1 2 3 4 5 N' u ux uxy uxyv uxyvw uxyvwz D(v),p(v) D(w),p(w) 2,u 5,u 2,u 4,x 2,u 3,y 3,y D(x),p(x) 1,u D(y),p(y) 2,x D(z),p(z) 4,y 4,y 4,y 5 2 u 1 3 v 2 x w 3 1 5 z 1 y 2 Network Layer 4- Dijkstrasalgorithm:example(2) Resultingshortestpathtreefromu: v w u z x y Resultingforwardingtableinu: destination link v x (u,v) (u,x) y (u,x) w (u,x) z (u,x) Network Layer 4- Dijkstrasalgorithm,discussion Algorithmcomplexity:nnodes eachiteration:needtocheckallnodes,w,notinN n(n+1)/2comparisons:O(n2) moreefficientimplementationspossible:O(nlogn) Oscillationspossible: e.g.,linkcost=amountofcarriedtraffic D 1 A 1 0 0 e 0 C 1+e e initially B 1 2+e D 0 A 1+e 1 C 0 0 B recompute routing 0 D 1 A 00 C 2+e 1+e recompute B 2+e D 0 A 1+e 1 C 0 e B recompute Network Layer 4- Chapter4:NetworkLayer 4.1Introduction 4.2Virtualcircuitand datagramnetworks 4.3Whatsinsidearouter 4.4IP:InternetProtocol r r r r Datagramformat IPv4addressing ICMP IPv6 4.5Routingalgorithms r Linkstate r DistanceVector r Hierarchicalrouting 4.6RoutingintheInternet r RIP r OSPF r BGP 4.7Broadcastandmulticast routing Network Layer 4- DistanceVectorAlgorithm BellmanFordEquation(dynamicprogramming) Define dx(y):=costofleastcostpathfromxtoy Then dx(y)=min{c(x,v)+dv(y)} v whereministakenoverallneighborsvofx Network Layer 4- BellmanFordexample 5 2 u 1 3 v 2 w 3 Clearly,dv(z)=5,dx(z)=3,dw(z)=3 5 z 1 BFequationsays: du(z)=min{c(u,v)+dv(z), y 1 c(u,x)+dx(z), c(u,w)+dw(z)} =min{2+5, 1+3, 5+3}=4 Nodethatachievesminimumisnext hopinshortestpath forwardingtable x 2 Network Layer 4- DistanceVectorAlgorithm Dx(y)=estimateofleastcostfromxtoy Nodexknowscosttoeachneighborv:c(x,v) NodexmaintainsdistancevectorDx=[Dx(y):yN] Nodexalsomaintainsitsneighborsdistancevectors r Foreachneighborv,xmaintains Dv=[Dv(y):yN] Network Layer 4- Distancevectoralgorithm(4) Basicidea: Fromtimetotime,eachnodesendsitsowndistancevector estimatetoneighbors Asynchronous WhenanodexreceivesnewDVestimatefromneighbor,itupdates itsownDVusingBFequation: Dx(y)minv{c(x,v)+Dv(y)}foreachnodeyN Underminor,naturalconditions,theestimateDx(y)convergetothe actualleastcost dx(y) Network Layer 4- DistanceVectorAlgorithm(5) Iterative,asynchronous:eachlocal iterationcausedby: locallinkcostchange DVupdatemessagefromneighbor Distributed: eachnodenotifiesneighborsonly whenitsDVchanges r neighborsthennotifytheir neighborsifnecessary Eachnode: wait for (change in local link cost or msg from neighbor) recompute estimates if DV to any dest has changed, notify neighbors Network Layer 4- from x 027 y z node y table costto xyz costto xyz from node x table costto xyz Dx(z) = min{c(x,y) + Dy(z),c(x,z)+Dz(z)} =min{2+1,7+0}=3 Dx(y)=min{c(x,y)+Dy(y),c(x,z)+Dz(y)} =min{2+0,7+1}=2 x y z 0 2 3 201 710 x y 201 z node z table costto xyz from from x x y z 71 0 time 2 Network Layer y 7 1 z 4- x y z 71 0 201 710 from from 023 x y z 027 201 710 from x y z x y z costto xyz x y z 027 201 310 023 201 310 costto xyz 023 201 310 x 2 y 7 1 z costto xyz from from from x y 201 z node z table costto xyz x y z costto xyz costto xyz from from x 027 y z node y table costto xyz costto xyz from node x table costto xyz Dx(z) = min{c(x,y) + Dy(z),c(x,z)+Dz(z)} =min{2+1,7+0}=3 Dx(y)=min{c(x,y)+Dy(y),c(x,z)+Dz(y)} =min{2+0,7+1}=2 x y z 023 201 310 time Network Layer 4- DistanceVector:linkcostchanges Linkcostchanges: nodedetectslocallinkcostchange updatesroutinginfo,recalculates distancevector ifDVchanges,notifyneighbors good news travels fast 1 x 4 y 1 50 z Attimet0,ydetectsthelinkcostchange,updatesitsDV, andinformsitsneighbors. Attimet1,zreceivestheupdatefromyandupdatesitstable. ItcomputesanewleastcosttoxandsendsitsneighborsitsDV. Attimet2,yreceiveszsupdateandupdatesitsdistancetable. ysleastcostsdonotchangeandhenceydoesnotsendany messagetoz. Network Layer 4- DistanceVector:linkcostchanges Linkcostchanges: goodnewstravelsfast badnewstravelsslowcountto infinityproblem! 44iterationsbeforealgorithm stabilizes:seetext 60 x 4 y 50 1 z Poisonedreverse: IfZroutesthroughYtogettoX: r ZtellsYits(Zs)distancetoXis infinite(soYwontroutetoXvia Z) willthiscompletelysolvecountto infinityproblem? Network Layer 4- ComparisonofLSandDValgorithms Messagecomplexity LS:withnnodes,Elinks,O(nE)msgs sent DV:exchangebetweenneighborsonly r convergencetimevaries SpeedofConvergence LS:O(n2)algorithmrequiresO(nE) msgs r mayhaveoscillations DV:convergencetimevaries r mayberoutingloops r counttoinfinityproblem Robustness:whathappensifrouter malfunctions? LS: r r DV: r r nodecanadvertiseincorrectlink cost eachnodecomputesonlyitsown table DVnodecanadvertiseincorrect pathcost eachnodestableusedbyothers errorpropagatethrunetwork Network Layer 4- Chapter4:NetworkLayer 4.1Introduction 4.2Virtualcircuitand datagramnetworks 4.3Whatsinsidearouter 4.4IP:InternetProtocol r r r r Datagramformat IPv4addressing ICMP IPv6 4.5Routingalgorithms r Linkstate r DistanceVector r Hierarchicalrouting 4.6RoutingintheInternet r RIP r OSPF r BGP 4.7Broadcastandmulticast routing Network Layer 4- HierarchicalRouting Ourroutingstudythusfaridealization allroutersidentical networkflat nottrueinpractice scale:with200million destinations: cantstorealldestsinrouting tables! routingtableexchangewould swamplinks! administrativeautonomy internet=networkofnetworks eachnetworkadminmaywantto controlroutinginitsownnetwork Network Layer 4- HierarchicalRouting aggregateroutersintoregions, autonomoussystems(AS) routersinsameASrunsame routingprotocol r r Gatewayrouter Directlinktorouterin anotherAS intraASroutingprotocol routersindifferentAScanrun differentintraASrouting protocol Network Layer 4- InterconnectedASes 3c 3b 3a AS3 1a 2a 1c 1d 1b Intra-AS Routing algorithm 2c AS2 AS1 Inter-AS Routing algorithm Forwarding table 2b forwardingtableconfigured bybothintraandinterAS routingalgorithm r r intraASsetsentriesfor internaldests interAS&intraAssetsentries forexternaldests Network Layer 4- InterAStasks AS1must: 1. learnwhichdestsare reachablethroughAS2, whichthroughAS3 2. propagatethisreachability infotoallroutersinAS1 JobofinterASrouting! supposerouterinAS1receives datagramdestinedoutsideof AS1: r routershouldforward packettogatewayrouter, butwhichone? 3c 3b 3a AS3 1a 2a 1c 1d 1b 2c AS2 2b AS1 Network Layer 4- Example:Settingforwardingtableinrouter1d supposeAS1learns(viainterASprotocol)thatsubnetxreachablevia AS3(gateway1c)butnotviaAS2. interASprotocolpropagatesreachabilityinfotoallinternalrouters. router1ddeterminesfromintraASroutinginfothatitsinterface Iison theleastcostpathto1c. r installsforwardingtableentry(x,I) 3c 3a 3b AS3 1a x 2a 1c 1d 1b AS1 2c AS2 2b Network Layer 4- Example:ChoosingamongmultipleASes nowsupposeAS1learnsfrominterASprotocolthatsubnetxis reachablefromAS3andfromAS2. toconfigureforwardingtable,router1dmustdeterminetowards whichgatewayitshouldforwardpacketsfordestx. r thisisalsojobofinterASroutingprotocol! 3c 3b 3a AS3 1a x 2a 1c 1d 1b 2c AS2 2b AS1 Network Layer 4- Example:ChoosingamongmultipleASes nowsupposeAS1learnsfrominterASprotocolthatsubnetxis reachablefromAS3andfromAS2. toconfigureforwardingtable,router1dmustdeterminetowards whichgatewayitshouldforwardpacketsfordestx. r thisisalsojobofinterASroutingprotocol! hotpotatorouting:sendpackettowardsclosestoftworouters. Learn from inter-AS protocol that subnet x is reachable via multiple gateways Use routing info from intra-AS protocol to determine costs of least-cost paths to each of the gateways Hot potato routing: Choose the gateway that has the smallest least cost Determine from forwarding table the interface I that leads to least-cost gateway. Enter (x,I) in forwarding table Network Layer 4- Chapter4:NetworkLayer 4.1Introduction 4.2Virtualcircuitand datagramnetworks 4.3Whatsinsidearouter 4.4IP:InternetProtocol r r r r Datagramformat IPv4addressing ICMP IPv6 4.5Routingalgorithms r Linkstate r DistanceVector r Hierarchicalrouting 4.6RoutingintheInternet r RIP r OSPF r BGP 4.7Broadcastandmulticast routing Network Layer 4- IntraASRouting alsoknownasInteriorGatewayProtocols(IGP) mostcommonIntraASroutingprotocols: r RIP:RoutingInformationProtocol r OSPF:OpenShortestPathFirst r IGRP:InteriorGatewayRoutingProtocol(Ciscoproprietary) Network Layer 4- Chapter4:NetworkLayer 4.1Introduction 4.2Virtualcircuitand datagramnetworks 4.3Whatsinsidearouter 4.4IP:InternetProtocol r r r r Datagramformat IPv4addressing ICMP IPv6 4.5Routingalgorithms r Linkstate r DistanceVector r Hierarchicalrouting 4.6RoutingintheInternet r RIP r OSPF r BGP 4.7Broadcastandmulticast routing Network Layer 4- RIP(RoutingInformationProtocol) distancevectoralgorithm includedinBSDUNIXDistributionin1982 distancemetric:#ofhops(max=15hops) FromrouterAtosubnets: u v A z C B D w x y destinationhops u1 v2 w2 x3 y3 z2 Network Layer 4- RIPadvertisements distancevectors:exchangedamongneighborsevery30sec viaResponseMessage(alsocalledadvertisement) eachadvertisement:listofupto25destinationsubnets withinAS Network Layer 4- RIP:Example z w A x D B y C Destination Network Next Router Num. of hops to dest. w y z x A B B -- 2 2 7 1 . . .... Routing/ForwardingtableinD Network Layer 4- RIP:Example Dest w x z . Next hops -1 -1 C4 ... w A Advertisement from A to D z x Destination Network D B C Next Router y Num. of hops to dest. w y z x A B BA -- 2 2 75 1 . . .... R o u ting /Fo rwa rd in g ta b le in D Network Layer 4- RIP:LinkFailureandRecovery Ifnoadvertisementheardafter180sec>neighbor/linkdeclareddead r routesvianeighborinvalidated r newadvertisementssenttoneighbors r neighborsinturnsendoutnewadvertisements(iftableschanged) r linkfailureinfoquickly(?)propagatestoentirenet r poisonreverseusedtopreventpingpongloops(infinitedistance= 16hops) Network Layer 4- RIPTableprocessing RIProutingtablesmanagedbyapplication-levelprocess calledrouted(daemon) advertisementssentinUDPpackets,periodicallyrepeated routed routed Transprt (UDP) networkforwarding (IP)table Transprt (UDP) forwarding table network (IP) link physical link physical Network Layer 4- Chapter4:NetworkLayer 4.1Introduction 4.2Virtualcircuitand datagramnetworks 4.3Whatsinsidearouter 4.4IP:InternetProtocol r r r r Datagramformat IPv4addressing ICMP IPv6 4.5Routingalgorithms r Linkstate r DistanceVector r Hierarchicalrouting 4.6RoutingintheInternet r RIP r OSPF r BGP 4.7Broadcastandmulticast routing Network Layer 4- OSPF(OpenShortestPathFirst) open:publiclyavailable usesLinkStatealgorithm r LSpacketdissemination r topologymapateachnode r routecomputationusingDijkstrasalgorithm OSPFadvertisementcarriesoneentryperneighborrouter advertisementsdisseminatedtoentireAS(viaflooding) r carriedinOSPFmessagesdirectlyoverIP(ratherthanTCPorUDP Network Layer 4- OSPFadvancedfeatures(notinRIP) security:allOSPFmessagesauthenticated(topreventmalicious intrusion) multiplesamecostpathsallowed(onlyonepathinRIP) Foreachlink,multiplecostmetricsfordifferentTOS(e.g.,satellitelink costsetlowforbesteffort;highforrealtime) integrateduniandmulticastsupport: r MulticastOSPF(MOSPF)usessametopologydatabaseasOSPF hierarchicalOSPFinlargedomains. Network Layer 4- HierarchicalOSPF Network Layer 4- HierarchicalOSPF twolevelhierarchy:localarea,backbone. Linkstateadvertisementsonlyinarea r eachnodeshasdetailedareatopology;onlyknowdirection(shortest path)tonetsinotherareas. areaborderrouters: summarizedistancestonetsinownarea, advertisetootherAreaBorderrouters. backbonerouters:runOSPFroutinglimitedtobackbone. boundaryrouters:connecttootherASs. r Network Layer 4- Chapter4:NetworkLayer 4.1Introduction 4.2Virtualcircuitand datagramnetworks 4.3Whatsinsidearouter 4.4IP:InternetProtocol r r r r Datagramformat IPv4addressing ICMP IPv6 4.5Routingalgorithms r Linkstate r DistanceVector r Hierarchicalrouting 4.6RoutingintheInternet r RIP r OSPF r BGP 4.7Broadcastandmulticast routing Network Layer 4- InternetinterASrouting:BGP BGP(BorderGatewayProtocol):thedefactostandard BGPprovideseachASameansto: 1. 2. 3. ObtainsubnetreachabilityinformationfromneighboringASs. PropagatereachabilityinformationtoallASinternalrouters. Determinegoodroutestosubnetsbasedonreachability informationandpolicy. allowssubnettoadvertiseitsexistencetorestof Internet:Iamhere Network Layer 4- BGPbasics pairsofrouters(BGPpeers)exchangeroutinginfooversemi permanentTCPconnections:BGPsessions r BGPsessionsneednotcorrespondtophysicallinks. whenAS2advertisesaprefixtoAS1: r AS2promisesitwillforwarddatagramstowardsthatprefix. r AS2canaggregateprefixesinitsadvertisement 3c 3b eBGPsession 3a AS3 1a AS1 iBGPsession 2a 1c 1d 1b 2c AS2 2b Network Layer 4- Distributingreachabilityinfo usingeBGPsessionbetween3aand1c,AS3sendsprefix reachabilityinfotoAS1. r 1ccanthenuseiBGPdodistributenewprefixinfotoall routersinAS1 r 1bcanthenreadvertisenewreachabilityinfotoAS2over1b to2aeBGPsession whenrouterlearnsofnewprefix,itcreatesentryforprefixinits forwardingtable. 3c 3b eBGPsession 3a AS3 1a AS1 iBGPsession 2a 1c 1d 1b 2c AS2 2b Network Layer 4- Pathattributes&BGProutes advertisedprefixincludesBGPattributes. r prefix+attributes=route twoimportantattributes: ASPATH:containsASsthroughwhichprefixadvertisementhas passed:e.g,AS67,AS17 r NEXTHOP:indicatesspecificinternalASroutertonexthopAS. (maybemultiplelinksfromcurrentAStonexthopAS) r whengatewayrouterreceivesrouteadvertisement,uses importpolicytoaccept/decline. Network Layer 4- BGProuteselection routermaylearnaboutmorethan1routetosomeprefix. Routermustselectroute. eliminationrules: 1. 2. 3. 4. localpreferencevalueattribute:policydecision shortestASPATH closestNEXTHOProuter:hotpotatorouting additionalcriteria Network Layer 4- BGPmessages BGPmessagesexchangedusingTCP. BGPmessages: OPEN:opensTCPconnectiontopeerandauthenticatessender r UPDATE:advertisesnewpath(orwithdrawsold) r KEEPALIVEkeepsconnectionaliveinabsenceofUPDATES; alsoACKsOPENrequest r NOTIFICATION:reportserrorsinpreviousmsg;alsousedtoclose connection r Network Layer 4- BGProutingpolicy le g e nd : B W X A p ro vid e r ne two rk c us to m e r ne two rk: C Y A,B,Careprovidernetworks X,W,Yarecustomer(ofprovidernetworks) Xisdualhomed:attachedtotwonetworks XdoesnotwanttoroutefromBviaXtoC r ..soXwillnotadvertisetoBaroutetoC r Network Layer 4- BGProutingpolicy(2) le g e nd : B W X A p ro vid e r ne two rk c us to m e r ne two rk: C Y AadvertisespathAWtoB BadvertisespathBAWtoX ShouldBadvertisepathBAWtoC? Noway!BgetsnorevenueforroutingCBAWsinceneitherW norCareBscustomers r BwantstoforceCtoroutetowviaA r Bwantstorouteonlyto/fromitscustomers! Network Layer 4r WhydifferentIntraandInterASrouting? Policy: InterAS:adminwantscontroloverhowitstrafficrouted,whoroutes throughitsnet. IntraAS:singleadmin,sonopolicydecisionsneeded Scale: hierarchicalroutingsavestablesize,reducedupdatetraffic Performance: IntraAS:canfocusonperformance InterAS:policymaydominateoverperformance Network Layer 4- Chapter4:NetworkLayer 4.1Introduction 4.2Virtualcircuitand datagramnetworks 4.3Whatsinsidearouter 4.4IP:InternetProtocol r r r r Datagramformat IPv4addressing ICMP IPv6 4.5Routingalgorithms r Linkstate r DistanceVector r Hierarchicalrouting 4.6RoutingintheInternet r RIP r OSPF r BGP 4.7Broadcastandmulticast routing Network Layer 4- BroadcastRouting deliverpacketsfromsourcetoallothernodes sourceduplicationisinefficient: duplicate duplicate creation/transmission R1 R1 duplicate R2 R2 R3 R4 source duplication R3 R4 in-network duplication sourceduplication:howdoessourcedeterminerecipient addresses? Network Layer 4- Innetworkduplication flooding:whennodereceivesbrdcstpckt,sendscopytoall neighbors r Problems:cycles&broadcaststorm controlledflooding:nodeonlybrdcstspktifithasnt brdcstsamepacketbefore Nodekeepstrackofpcktidsalreadybrdcsted r Orreversepathforwarding(RPF):onlyforwardpcktifit arrivedonshortestpathbetweennodeandsource r spanningtree r Noredundantpacketsreceivedbyanynode Network Layer 4- SpanningTree Firstconstructaspanningtree Nodesforwardcopiesonlyalongspanningtree A B c F A E B c D F E D G (a) Broadcast initiated at A G (b) Broadcast initiated at D Network Layer 4- SpanningTree:Creation Centernode Eachnodesendsunicastjoinmessagetocenternode r Messageforwardeduntilitarrivesatanodealreadybelongingtospanning tree A A 3 B c 4 F 1 2 E B c D F 5 E D G G (a) Stepwise construction of spanning tree (b) Constructed spanning tree Network Layer 4- MulticastRouting:ProblemStatement Goal:findatree(ortrees)connectingroutershavinglocal mcastgroupmembers r r r tree:notallpathsbetweenroutersused sourcebased:differenttreefromeachsendertorcvrs sharedtree:sametreeusedbyallgroupmembers Sharedtree Sourcebasedtrees Approachesforbuildingmcasttrees Approaches: sourcebasedtree:onetreepersource shortestpathtrees r reversepathforwarding r groupsharedtree:groupusesonetree r minimalspanning(Steiner) r centerbasedtrees wefirstlookatbasicapproaches,thenspecificprotocolsadoptingthese approaches ShortestPathTree mcastforwardingtree:treeofshortestpathroutesfrom sourcetoallreceivers r Dijkstrasalgorithm S:source R1 1 2 LEGEND R4 R2 3 R3 routerwithattached groupmember 5 4 R6 routerwithnoattached groupmember R5 6 R7 i linkusedforforwarding, iindicatesorderlink addedbyalgorithm ReversePathForwarding relyonroutersknowledgeofunicastshortestpathfromit tosender eachrouterhassimpleforwardingbehavior: if (mcastdatagramreceivedonincominglinkonshortest pathbacktocenter) thenflooddatagramontoalloutgoinglinks elseignoredatagram ReversePathForwarding:example S:source LEGEND R1 R4 routerwithattached groupmember R2 R5 R3 R6 R7 resultisasourcespecificreverseSPT maybeabadchoicewithasymmetriclinks routerwithnoattached groupmember datagramwillbeforwarded datagramwillnotbe forwarded ReversePathForwarding:pruning forwardingtreecontainssubtreeswithnomcastgroupmembers noneedtoforwarddatagramsdownsubtree r prunemsgssentupstreambyrouterwithnodownstreamgroup members r LEGEND S:source R1 routerwithattached groupmember R4 R2 P R5 R3 R6 P R7 P routerwithnoattached groupmember prunemessage linkswithmulticast forwarding SharedTree:SteinerTree SteinerTree:minimumcosttreeconnectingallrouters withattachedgroupmembers problemisNPcomplete excellentheuristicsexists notusedinpractice: computationalcomplexity r informationaboutentirenetworkneeded r monolithic:rerunwheneverarouterneedstojoin/leave r Centerbasedtrees singledeliverytreesharedbyall onerouteridentifiedascenteroftree tojoin: r edgeroutersendsunicastjoinmsgaddressedtocenterrouter r joinmsgprocessedbyintermediateroutersandforwarded towardscenter r joinmsgeitherhitsexistingtreebranchforthiscenter,or arrivesatcenter r pathtakenbyjoinmsgbecomesnewbranchoftreeforthis router Centerbasedtrees:anexample SupposeR6chosenascenter: LEGEND R1 3 R2 routerwithattached groupmember R4 2 R5 R3 1 R6 R7 1 routerwithnoattached groupmember pathorderinwhichjoinmessages generated InternetMulticastingRouting:DVMRP DVMRP:distancevectormulticastroutingprotocol, RFC1075 floodandprune:reversepathforwarding,sourcebased tree RPFtreebasedonDVMRPsownroutingtablesconstructed bycommunicatingDVMRProuters r noassumptionsaboutunderlyingunicast r initialdatagramtomcastgroupfloodedeverywhereviaRPF r routersnotwantinggroup:sendupstreamprunemsgs r DVMRP:continued softstate:DVMRProuterperiodically(1min.)forgets branchesarepruned: mcastdataagainflowsdownunprunedbranch r downstreamrouter:repruneorelsecontinuetoreceivedata r routerscanquicklyregrafttotree r followingIGMPjoinatleaf oddsandends r commonlyimplementedincommercialrouters r MboneroutingdoneusingDVMRP Tunneling Q:Howtoconnectislandsofmulticastroutersinasea ofunicastrouters? physicaltopology logicaltopology mcastdatagramencapsulatedinsidenormal(nonmulticastaddressed)datagram normalIPdatagramsentthrutunnelviaregularIPunicasttoreceivingmcast router receivingmcastrouterunencapsulatestogetmcastdatagram PIM:ProtocolIndependentMulticast notdependentonanyspecificunderlyingunicastroutingalgorithm (workswithall) twodifferentmulticastdistributionscenarios: Dense: groupmembersdensely Sparse: #networkswithgroupmembers packed,incloseproximity. smallwrt#interconnectednetworks bandwidthmoreplentiful groupmemberswidelydispersed bandwidthnotplentiful ConsequencesofSparseDenseDichotomy: Dense groupmembershipbyrouters Sparse: nomembershipuntilrouters assumeduntilroutersexplicitly prune datadrivenconstructionon mcasttree(e.g.,RPF) bandwidthandnongrouprouter processingprofligate explicitlyjoin receiverdrivenconstructionof mcasttree(e.g.,centerbased) bandwidthandnongrouprouter processingconservative PIMDenseMode floodandpruneRPF,similartoDVMRPbut underlyingunicastprotocolprovidesRPFinfoforincoming datagram lesscomplicated(lessefficient)downstreamfloodthan DVMRPreducesrelianceonunderlyingroutingalgorithm hasprotocolmechanismforroutertodetectitisaleafnode router PIMSparseMode centerbasedapproach routersendsjoinmsgto rendezvouspoint(RP) r R1 intermediateroutersupdate stateandforwardjoin R2 afterjoiningviaRP,router canswitchtosourcespecific tree r increasedperformance:less concentration,shorterpaths R4 join R3 join R5 join R6 alldatamulticast fromrendezvous point R7 rendezvous point PIMSparseMode sender(s): unicastdatatoRP,which distributesdownRProoted tree RPcanextendmcasttree upstreamtosource RPcansendstopmsgifno attachedreceivers r nooneislistening! R1 R4 join R2 R3 join R5 join R6 alldatamulticast fromrendezvous point R7 rendezvous point Chapter4:summary 4.1Introduction 4.2Virtualcircuitand datagramnetworks 4.3Whatsinsidearouter 4.4IP:InternetProtocol r r r r Datagramformat IPv4addressing ICMP IPv6 4.5Routingalgorithms r Linkstate r DistanceVector r Hierarchicalrouting 4.6RoutingintheInternet r RIP r OSPF r BGP 4.7Broadcastandmulticast routing Network Layer 4-
Find millions of documents on Course Hero - Study Guides, Lecture Notes, Reference Materials, Practice Exams and more. Course Hero has millions of course specific materials providing students with the best way to expand their education.

Below is a small sample set of documents:

CSU Chico - CSC - 138
Chapter5LinkLayerandLANsA note on the use of these ppt slides:Were making these slides freely available to all (faculty, students, readers).Theyre in PowerPoint form so you can add, modify, and delete slides(including this one) and slide content to s
CSU Chico - CSC - 138
Chapter6WirelessandMobileNetworksA note on the use of these ppt slides:Were making these slides freely available to all (faculty, students, readers).Theyre in PowerPoint form so you can add, modify, and delete slides(including this one) and slide con
CSU Chico - CSC - 138
Chapter8NetworkSecurityA note on the use of these ppt slides:Were making these slides freely available to all (faculty, students, readers).Theyre in PowerPoint form so you can add, modify, and delete slides(including this one) and slide content to su
CSU Chico - EEE - 174
187
CSU Chico - EEE - 174
a100MOV DX,0120MOV AX,[0200]MOV BX,[0202]SUB AX,BXJGE 0114ADD AX,DXJGE 0114JMP 010EMOV [0200],AXINT 20;;;;;;;;;;establish base offset value of 120 in DX regget stored signal value location 200 and put into reg AXget raw signal value
CSU Chico - EEE - 174
EEE174 - CpE185 Hand Assembly LabDahlquist123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960Register Memorynot used LocationA220
CSU Chico - EEE - 174
Dennis DahlquistStart SimpleBanking ProgramLab 1 Banking ProgramFlow ChartEstablish OverdraftAmount$120Mov DX, 0120Get CurrentBalance Amountfrom memoryMov AX, [0200]Get Check Amountfrom memoryMov BX, [0202]Subtract Checkamout from Current
CSU Chico - EEE - 174
Hand Assembly Instruction HandoutMode (mod) field encodingMod00011011ExplanationMemory Mode, no displacement followsexcept when r/m = 110, then 16-bitdisplacement follows.Memory mode, 8-bit displacementfollowsMemory mode, 16-bit displacement
CSU Chico - EEE - 174
EEE 174Laboratory Hand-Assembly TemplateDahlquist/Stoffers/SchultzInstruction:Address:CS:Operation:Dest.:Source::Operation:Dest.:Source::Operation:Dest.:Source::Operation:Dest.:Source::Operation:Dest.:Source::Operation:Dest.:S
CSU Chico - EEE - 174
CSU Chico - EEE - 174
CSU Chico - EEE - 174
Computer Software EngineeringComputerSpring 2011Lecture # 7Object oriented DesignObjectUML Interaction Diagrams(Sequence, Collaboration and State ChartDiagrams)Sequence Diagram A sequence diagram provides a detailed view of asequenceuse case.
CSU Chico - EEE - 174
CSc 131CScComputer Software EngineeringSpring 2011Software DesignSoftwareDesign Concepts and PrinciplesDesignSoftware DesignSoftware Goal: To produce a model or representationTothat will later be builtthat Software design is the first of th
CSU Chico - EEE - 174
MASM Set upSet path:C:\MASM615\BIN;C:\MASM615\INCLUDE;C:\MASM615\LIB;C:\MASM615\INIT;C:\MASM615\HELPClick "OK" and re-boot if needed.MASM is now ready to run.Make sure to set up a project, see PWB set up.
CSU Chico - EEE - 174
EEE174 CpE185 LaboratorySpring 2012MicroChip PICkit3 LabPart 1: Introduction to the PICkit3 PIC18 microcontroller:In this section, you will begin familiarizing yourself with the Propeller microcontroller both hardwareand software. You will setup and
CSU Chico - EEE - 174
PICkit 3Programmer/DebuggerUsers Guide 2009 Microchip Technology Inc.DS51795ANote the following details of the code protection feature on Microchip devices:Microchip products meet the specification contained in their particular Microchip Data Sheet.
CSU Chico - EEE - 174
CSU Chico - EEE - 174
EEE174 CpE185 LaboratoryF201Propeller LabPart 1: Introduction to the Propeller microcontroller:In this section, you will begin familiarizing yourself with the Propeller microcontroller both hardwareand software. You will setup and test the propeller
CSU Chico - EEE - 174
EEE174 CpE185 LaboratoryFall 2011Propeller LabPart 1: Introduction to the Propeller microcontroller:In this section, you will begin familiarizing yourself with the Propeller microcontroller both hardwareand software. You will setup and test the prope
CSU Chico - EEE - 174
CSU Chico - EEE - 174
CSC 131Computer Software EngineeringSpring 2011Software TestingFall 2005Period. 19561957 19781979 19821983 19871988 - .ClassificationThe Debugging Oriented periodThe Demonstration-Oriented periodThe Destruction-Oriented periodThe Evaluation
CSU Chico - EEE - 174
EEE 174Laboratory Exercise #1Name:Program Tracing ChartRegisters:AX:Value:->BX:CX:DX:OF:ZF:SF:CS:IP:DS:200DS:202Next Instruction:EEE 174Laboratory Exercise #1Name:ExampleIP:DS:200Program Tracing ChartRegisters:AX:Value:->BX:00
CSU Chico - EEE - 174
x86 and C refresher LabBackground:The x86 is a very widely used microprocessor, it is in Windows and Macintoshpersonal computers. It is important to be familiar with Intel Architecture, IA.In this lab we will be come familiar with the Intel Architectu
Chadron State College - MGMT - 620
Week 7 - Assignment 2Leadership Case StudyDustin TaylorChadron State CollegeMGMT 620 High Performance LeadershipTurning the Company AroundEach of the three divisions of the company seem to have both their upsides and theirdownsides. I think each of
Texas San Antonio - IS - 3003
Chapter 1 NotesFunctionalmanagerA manager who is responsible for a department that performs a single functionaltask and has employees with similar training and skills.generalmanagerA manager who is responsible for several departments that perform d
Purdue - STAT - 350
STAT350FinalSpring 2007(12 pts) 1. Multiple choice. No work needs to be shown here, you will not receivepartial credit.(i) Correlation coecient r between two variables x and y has the same meaning as theregression slope between x and y .(a) True(b
Purdue - STAT - 350
Example:For a certain statistics course, data for students scores on Exam 1 are used to try to predict students scoreson Exam 2.1. What is the estimated least squares regression line?y_hat = -4.85586 + 0.96325x2. Is there a linear relationship betwee
Purdue - STAT - 350
The examples below are not meant to be all inclusive but examples of certain type of problems youmight expect in the final exam. For a complete list, see the lecture notes, homework, and all labs.Example:For a certain statistics course, data for studen
Purdue - STAT - 350
4/27/2011STAT 350Lecture 278.3 Tests Concerning Hypotheses About aCategorical Population8.3 Tests Concerning HypothesesAbout a Categorical PopulationExamples of Categorical Data Gender Color or Type of Transmissions ofautomobiles Political Part
Purdue - MA - 373
Purdue - MA - 373
NotationandterminologyusedforExamFM/2The following notation and terminology will apply to the examination questions.Unless otherwise stated in the examination question, rates are expressed as annual rates. For example,the rate of interest, the rate of
Purdue - MA - 373
Purdue - MA - 373
1.(10 points) The preferred stock of Kenyon Corporation pays a dividend of 10 perquarter. The next dividend is payable today. Dividends are assumed to remainlevel and continue forever.Calculate the price of the preferred stock prior to the payment of
Purdue - MA - 373
1.(11 points) You are given the following table:19951996199719981999200020012002200320042005200620072008Year 1.0850.0825.0800.0750.0700.0650.0600.0550.0500.040.0500.0550.0600.0650Year2.0825.0800.0775.0725.0675.0630.05
Purdue - MA - 373
Purdue - MA - 373
Chapter 9 HomeworkSection 9.11.Rivera Insurance Company has committed to paying 10,000 at the end of one yearand 40,000 at the end of two years. Its Chief Financial Officer, Miguel, wants toexactly match this obligation using the following two bonds:
Purdue - MA - 373
Chapter 8 HomeworkUse the following chart for Questions 1-4:Years123451.2.3.t123454.5.6.7.8.Spot Rate2.0%2.5%2.9%3.2%3.4%Calculate the present value of a five year annuity due with payments of 100 peryear.A five year bond pay
Purdue - MA - 373
Chapter 71.2.3.4.5.6.A preferred stock pays a dividend of 50 every six months. Calculate the price ofthe preferred stock assuming the next dividend is payable in six months using ayield rate of 5% convertible semi-annually.Number 1 from Section
Purdue - MA - 373
Chapter 6 Section 21.2.3.4.5.6.7.8.9.10.Yancy purchases a 10 year zero coupon bond for 500 and will be paid 1000 at endof 10 years. Calculate the annual effective return received by Yancy.A 20 year bond with a par value of 10,000 will mature
Purdue - MA - 373
Chapter 5, Section 21.2.3.4.5.6.7.8.9.A loan of 10000 is being repaid with annual payments of 1500 for 11 years.Calculate the amount of principal paid over the life of the loan.A loan of 10000 is being repaid with annual payments of 1500 for 1
Purdue - MA - 373
Chapter 41.Calculate the present value of a continuous annuity of 1000 per annum for 8 yearsat:a. An annual effective interest rate of 4%;b. A constant force of interest of 4%.2.An annuity pays $100 at the end of each month in the first year, $200
Purdue - MA - 373
Chapter 3, Section 21.Calculate the present value of an annuity that pays 100 at the end of each year for20 years. The annual effective interest rate is 4%.2.Calculate the present value of an annuity that pays 100 at the end of each monthfor 20 year
Purdue - MA - 373
Math 373Fall 2011HomeworkNon-Interest Theory1. 501 + 502 + + 1000 =2. If (1 i)5 1.1, calculate 1 (1 i)5 (1 i)10 . (1 i)100 .Chapter 1, Section 33.4.5.6.7.8.Book Problem 1.3Book Problem 1.3Book Problem 1.3Book Problem 1.3Book Problem 1.3B
Purdue - MA - 373
Chapter 2, Section 21.Question 1 in the Book2.Question 2 in the Book3.Question 3 in the Book4.Question 4 in the Book5.Melvin invests 1000 in a bank account earning a constant annual effective interestrate. Using the Rule of 72, Melvin estimates