ebook img

An Introduction to Computer Networks PDF

691 Pages·5.265 MB·English
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview An Introduction to Computer Networks

An Introduction to Computer Networks Release 1.8.16 Peter L Dordal December31,2015 CONTENTS 0 Preface 3 0.1 Licensing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 0.2 ClassroomUse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 0.3 ProgressNotes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 0.4 Technicalconsiderations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 0.5 RecentChanges . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 0.6 FuturePlans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1 AnOverviewofNetworks 9 1.1 Layers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.2 DataRate,ThroughputandBandwidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.3 Packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.4 DatagramForwarding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 1.5 Topology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 1.6 RoutingLoops . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.7 Congestion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 1.8 PacketsAgain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1.9 LANsandEthernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1.10 IP-InternetProtocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.11 DNS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 1.12 Transport . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 1.13 Firewalls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 1.14 NetworkAddressTranslation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 1.15 SomeUsefulUtilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 1.16 IETFandOSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 1.17 BerkeleyUnix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 1.18 Epilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 1.19 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 2 Ethernet 39 2.1 10-MbpsClassicEthernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 2.2 100Mbps(Fast)Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 2.3 GigabitEthernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 2.4 EthernetSwitches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 2.5 SpanningTreeAlgorithmandRedundancy . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 2.6 VirtualLAN(VLAN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 i 2.7 Epilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 2.8 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 3 OtherLANs 65 3.1 VirtualPrivateNetwork . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 3.2 CarrierEthernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 3.3 TokenRing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 3.4 VirtualCircuits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 3.5 AsynchronousTransferMode: ATM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 3.6 AdventuresinRadioland. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 3.7 Wi-Fi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 3.8 WiMAXandLTE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 3.9 FixedWireless . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 3.10 Epilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 3.11 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 4 Links 103 4.1 EncodingandFraming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 4.2 Time-DivisionMultiplexing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 4.3 Epilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 4.4 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 5 Packets 115 5.1 PacketDelay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 5.2 PacketDelayVariability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 5.3 PacketSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 5.4 ErrorDetection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 5.5 Epilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 5.6 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 6 AbstractSlidingWindows 129 6.1 BuildingReliableTransport: Stop-and-Wait . . . . . . . . . . . . . . . . . . . . . . . . . . 129 6.2 SlidingWindows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 6.3 LinearBottlenecks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 6.4 Epilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 6.5 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 7 IPversion4 149 7.1 TheIPv4Header . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150 7.2 Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151 7.3 SpecialAddresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 7.4 Fragmentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 7.5 TheClasslessIPDeliveryAlgorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 7.6 IPv4Subnets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 7.7 DNS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 7.8 AddressResolutionProtocol: ARP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 7.9 DynamicHostConfigurationProtocol(DHCP) . . . . . . . . . . . . . . . . . . . . . . . . . 170 7.10 InternetControlMessageProtocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 ii 7.11 UnnumberedInterfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 7.12 MobileIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 7.13 Epilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 7.14 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 8 IPversion6 181 8.1 TheIPv6Header . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 8.2 IPv6addresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 8.3 NetworkPrefixes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184 8.4 IPv6Multicast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 8.5 IPv6ExtensionHeaders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186 8.6 NeighborDiscovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 8.7 IPv6HostAddressAssignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 8.8 GloballyExposedAddresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 8.9 ICMPv6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 8.10 IPv6Subnets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 8.11 UsingIPv6andIPv4Together . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 8.12 IPv6ExamplesWithoutaRouter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200 8.13 IPv6ConnectivityviaTunneling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 8.14 IPv6-to-IPv4connectivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 8.15 Epilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 8.16 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206 9 Routing-UpdateAlgorithms 207 9.1 Distance-VectorRouting-UpdateAlgorithm . . . . . . . . . . . . . . . . . . . . . . . . . . 208 9.2 Distance-VectorSlow-ConvergenceProblem . . . . . . . . . . . . . . . . . . . . . . . . . . 212 9.3 ObservationsonMinimizingRouteCost . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 9.4 Loop-FreeDistanceVectorAlgorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216 9.5 Link-StateRouting-UpdateAlgorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 9.6 RoutingonOtherAttributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 9.7 Epilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 9.8 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222 10 Large-ScaleIPRouting 229 10.1 ClasslessInternetDomainRouting: CIDR . . . . . . . . . . . . . . . . . . . . . . . . . . . 229 10.2 HierarchicalRouting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 10.3 LegacyRouting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232 10.4 Provider-BasedRouting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232 10.5 GeographicalRouting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236 10.6 BorderGatewayProtocol,BGP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237 10.7 Epilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 10.8 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 11 UDPTransport 259 11.1 UserDatagramProtocol–UDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259 11.2 FundamentalTransportIssues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 11.3 TrivialFileTransportProtocol,TFTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 11.4 RemoteProcedureCall(RPC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277 iii 11.5 Epilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280 11.6 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281 12 TCPTransport 285 12.1 TheEnd-to-EndPrinciple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286 12.2 TCPHeader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286 12.3 TCPConnectionEstablishment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288 12.4 TCPandWireShark . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292 12.5 TCPsimplex-talk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293 12.6 TCPstatediagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 297 12.7 TCPOldDuplicates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301 12.8 TIMEWAIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302 12.9 TheThree-WayHandshakeRevisited . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303 12.10 AnomalousTCPscenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 12.11 TCPFasterOpening . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306 12.12 PathMTUDiscovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307 12.13 TCPSlidingWindows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307 12.14 TCPDelayedACKs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308 12.15 NagleAlgorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308 12.16 TCPFlowControl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309 12.17 SillyWindowSyndrome . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309 12.18 TCPTimeoutandRetransmission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310 12.19 KeepAlive . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311 12.20 TCPtimers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311 12.21 VariantsandAlternatives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311 12.22 Epilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314 12.23 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314 13 TCPRenoandCongestionManagement 319 13.1 BasicsofTCPCongestionManagement . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320 13.2 SlowStart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324 13.3 TCPTahoeandFastRetransmit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328 13.4 TCPRenoandFastRecovery . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330 13.5 TCPNewReno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332 13.6 SACKTCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 13.7 TCPandBottleneckLinkUtilization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336 13.8 SinglePacketLosses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338 13.9 TCPAssumptionsandScalability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339 13.10 TCPParameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340 13.11 Epilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340 13.12 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341 14 DynamicsofTCPReno 345 14.1 AFirstLookAtQueuing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345 14.2 BottleneckLinkswithCompetition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346 14.3 TCPFairnesswithSynchronizedLosses . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353 14.4 NotionsofFairness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360 14.5 TCPRenolossrateversuscwnd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361 iv 14.6 TCPFriendliness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363 14.7 AIMDRevisited . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365 14.8 ActiveQueueManagement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367 14.9 TheHigh-BandwidthTCPProblem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369 14.10 TheLossy-LinkTCPProblem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371 14.11 TheSatellite-LinkTCPProblem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371 14.12 Epilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372 14.13 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372 15 NewerTCPImplementations 379 15.1 High-BandwidthDesiderata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380 15.2 RTTs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380 15.3 HighspeedTCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381 15.4 TCPVegas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382 15.5 FASTTCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384 15.6 TCPWestwood . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386 15.7 TCPVeno . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388 15.8 TCPHybla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389 15.9 TCPIllinois . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390 15.10 H-TCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391 15.11 TCPCUBIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392 15.12 Epilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396 15.13 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397 16 NetworkSimulations: ns-2 403 16.1 Thens-2simulator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403 16.2 ASingleTCPSender . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405 16.3 TwoTCPSendersCompeting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417 16.4 TCPLossEventsandSynchronizedLosses . . . . . . . . . . . . . . . . . . . . . . . . . . 432 16.5 TCPRenoversusTCPVegas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443 16.6 WirelessSimulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445 16.7 Epilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451 16.8 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451 17 Thens-3NetworkSimulator 455 17.1 InstallingandRunningns-3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455 17.2 ASingleTCPSender . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456 17.3 Wireless . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464 17.4 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470 18 QueuingandScheduling 471 18.1 QueuingandReal-TimeTraffic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471 18.2 TrafficManagement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472 18.3 PriorityQueuing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472 18.4 QueuingDisciplines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 473 18.5 FairQueuing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 474 18.6 ApplicationsofFairQueuing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486 18.7 HierarchicalQueuing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 487 v 18.8 HierarchicalWeightedFairQueuing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490 18.9 TokenBucketFilters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496 18.10 ApplicationsofTokenBucket. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 501 18.11 TokenBucketQueueUtilization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 502 18.12 HierarchicalTokenBucket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 504 18.13 FairQueuing/TokenBucketcombinations. . . . . . . . . . . . . . . . . . . . . . . . . . 506 18.14 Epilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 508 18.15 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 508 19 QualityofService 513 19.1 NetNeutrality. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514 19.2 WheretheWildQueuesAre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514 19.3 Real-timeTraffic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515 19.4 IntegratedServices/RSVP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517 19.5 GlobalIPMulticast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518 19.6 RSVP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 522 19.7 DifferentiatedServices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 524 19.8 REDwithInandOut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528 19.9 NSIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528 19.10 ComcastCongestion-ManagementSystem . . . . . . . . . . . . . . . . . . . . . . . . . . 529 19.11 Real-timeTransportProtocol(RTP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530 19.12 Multi-ProtocolLabelSwitching(MPLS) . . . . . . . . . . . . . . . . . . . . . . . . . . . 535 19.13 Epilog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537 19.14 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537 20 NetworkManagementandSNMP 539 20.1 NetworkArchitecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541 20.2 SNMPBasics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541 20.3 SNMPNamingandOIDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542 20.4 MIBs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544 20.5 SNMPv1DataTypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 545 20.6 ASN.1SyntaxandSNMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 546 20.7 SNMPTables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 547 20.8 SNMPOperations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 551 20.9 MIBBrowsing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 556 20.10 MIB-2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557 20.11 SNMPv1communitiesandsecurity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 565 20.12 SNMPandASN.1Encoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567 20.13 SNMPv2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 569 20.14 TableRowCreation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580 20.15 SNMPv3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588 20.16 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 597 21 Security 601 21.1 Code-ExecutionIntrusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 602 21.2 StackBufferOverflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 603 21.3 HeapBufferOverflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 612 21.4 NetworkIntrusionDetection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 617 vi 21.5 SecureHashes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 618 21.6 Shared-KeyEncryption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 620 21.7 Diffie-Hellman-MerkleExchange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 629 21.8 Public-KeyEncryption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 631 21.9 SSHandTLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 635 21.10 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645 22 Bibliography 649 23 SelectedSolutions 651 Indicesandtables 657 Bibliography 659 Index 667 vii viii

See more

The list of books you might like

book image

Rich Dad Poor Dad

241 Pages
·2014
·11.31 MB

book image

$100m Offers

Alex Hormozi
·205 Pages
·2021
·3.18 MB

book image

Credence

Penelope Douglas
·487 Pages
·2020
·0.86 MB

book image

Le Lettere di Giovanni

Raymond E. Brown
·1087 Pages
·1986
·18.882 MB

book image

La guerra de dos mundos

Sergio L. Palacios
·2008
·1.287 MB

book image

By Marc Abrams, Ema-st Page

29 Pages
·2005
·1.22 MB

book image

Bioinformatics for Everyone

Sofi, Mohammad Yaseen, Shafi, Afshana, Masoodi, Khalid Z.
·266 Pages
·2021
·144.7128 MB

book image

Lars Gustaf Andersson 2012-01-13

32 Pages
·2012
·2.55 MB

book image

Análise Multivariada de Dados

Joseph F. Hair, William C. Black, Barry J. Babin, Rolph E. Anderson, Ronald L. Tatham
·682 Pages
·2009
·9.789 MB

book image

Greek Government Gazette: Part 2, 1993 no. 611

The Government of the Hellenic Republic
·8 Pages
·1993
·0.63 MB

book image

Développement durable : Quelles politiques ?

OECD
·123 Pages
·2001
·1.246 MB

book image

Greek Government Gazette: Part 2, 2006 no. 1792

The Government of the Hellenic Republic
·2006
·0.29 MB

book image

Greek Government Gazette: Part 2, 2006 no. 1757

The Government of the Hellenic Republic
·2006
·0.26 MB