1 INTRODUCTION 1 I.I USES OF COMPUTER N-ETWORKS 3 I.I.] Business Applications 3 1. I .2 Home Applications 6 I .] .3 MObile USers 9 11 .4 social Isslles 12 1 .2 NETWORK HARDWARE 14 ] 2.1 Local Area Networks 16 1 .2.2 Metropohtan aha Networks 18 1 .2.3 Wide Area Networks 19 l .2.4 Wireless Networks 21 l.2.5 Home NetwOIks 23 1,26 Internetworks 25 ] .3 NETWORK SOWrWARE 26 1 .3 ] Protocol Hierarchies 26 1 .3.2 Design Issues for the Layers 30 ] 33 ConnecTion-Onented and Connechonless Services 32 ] .34 Service Priml(lves 34 I.3.5 The ReIahonstup of Services to rrotocoIS 36 tv cow.rLNIs 1 .4 REFERENCE MODELS 37 1 .4.1 The OSI Reference MOCteI 37 1 .4.2 The TCWIP Rettrence MOdel 41 I .4.3 A Ct>rnparison oI. tie OSI and ThmP ~rence MOueIS 44 ] .4.4 A Cntique of' the OSI Model and Protocols 46 ] .4.5 A CTitique of the TCWiP Reference MOueI 48 I .5 EXAMPLE NETWORKS 49 l.5.1 The Internet 50 ] .5.2 COnnection Onented Networkst X.25. Frame ReIas. and ATM 59 l .5.3 EiheTLnei 65 I.5.4 WIreless ~st 802.11 68 1 .6 NETWORK STANDARD~ION 71 l.6.1 Who's Who in the Telecommunications WOrld 71 l.6.2 Who's Who in the ]nternational StandAns World 74 l.6.3 Who's Who in the Internet Standards World 75 I .7 METRIC UNITS 77 1 .8 OUTLINE OF THE REST OF THE BOOK 78 I.9 SUMMARY 79 2 THE PHYSICAL LAYER 85 2.1 THE THEORETICAL BASIS FOR DATA COMMUNICATION 85 2. 1. I Founer Analysis 86 ZI 2 Bandwidth L]mited S]gnals 86 2 1 3 Tee Maximum Data Rate of a Chanllel 89 2.2 GUIDED TRANSMISSION MEDIA 90 2.2.] Magnetic Media 90 2,2.2 Twisted Pair 91 2.2.3 Coaxial Cable 92 2.2.4 FIber OptICS 93 2.3 WIRELESS TRANSMISSION 100 2.3.1 The Electromagnetic Spectrum 100 23.2 Radio Transtnlsslon 103 2.33 Microwave Transmission 104 2,3,4 Infras and Millimeter Waves 106 2.3.5 Lightwave Transmission 107 2.4 COMMUNICATION SATELLITES 109 2.4.1 Gcostatlonare Satellites 109 242 Medium Earth Orbit Satellites 1 13 2.4.3 Low-Earth OTbit Satellites 1 14 2.4.4 Satellites vexsus Fiber 1 17 2.5 THE PUBLIC SWITCHED TELEPHONE NETWORK 118 2.5.1 Structure of the Telephone System 1 19 2.5,2 The Politics of Telephones 122 2.5.3 Tee LOCal boor MOdems. ADSL. and Wireless 124 254 Trunks and MuItipIexing 137 2.5.5 Switching 146 ic TIJF BOnns TELEPHONE SYSTEM 152 2.6.1 First GCneration MObile Thoues AnalOg VOICe 153 2.6.2 Second-Generation Mobile Phones' Digital Voice 157 2.6.3 Third-Generation Mobile Phones: Digital Voice and Daal 166 2.7 CABLE TELEVISION 169 2.7,l Community Antenna Television 169 27.2 Internet over Cable ]70 27.3 SPectrum Allocaoon 172 2.7.4 Cable Modems 173 275 ADSL versus Cattle 175 28 SUMMARY 177 3 THE DATA LINK LAYER 183 3] DATA LINK LAYER DESIGN ISSUES 184 3. ]. ] Services Provided to the Network Laaer 184 3.1 .2 Framing ] 87 3.1 .3 Error Control 191 3.l.4 Flow Control 192 yi CON~TS 3.2 ERROR DETECTION AND CORRECTION 192 3.2.1 Eder-Correchng Codes 193 3.2.2 Error-Detechng Codes 196 33 ELEMENTARY DATA LINK PROTOCOLS 200 3.31 An Unrestrlcted Simplex Protoco] 204 3.3.2 A Simplex Stop-and-Wait Protocol 206 3.33 A S]mplex Protocol f',r a Noisy Channel 208 3.4 SLIDJNG WINDOW PROTOCOLS 2] 1 3.4. ] A One Bit Sliding Window protocol 214 3.4.2 A pootocoI USing co Back N 216 3.4.3 A WOtocoI USing Selective ffepeat 223 3.5 PROTOCOL VERIFICATION 229 351 Finite State Machine MOdelS 229 35.2 Petrl Net Models 232 36 EXAMPLE DATA LINK PROTOCOLS 234 3.6.1 HDLC--nIgh LCVC] Data Link COIItroI 234 362 The Data Link Layer in the internet 237 3.7 SUMM~ 242 4 THE MEDIUM ACCESS CONTROL SUBLAYER 247 4. I THE CHANNEL ALLOCATION PROBLEM 248 4.1 .l Stauc Channel A]]ocation in LANd and MANs 248 41.2 DynamIC Channel AllOCation in LANS and MANS ig 42 MULTIPLE ACCESS PROTOCOLS 251 4.21 ALOHA 251 4.2.2 Carrier Sense Multiple Access Protocols 255 4.2.3 C('IIISIOII rree rvotocoIS 259 4,24 L]mited-Contention Protocols 26] 4.2.5 Wavelength Division Multiple Access PTotocols 265 4.2.6 Wlrclcss LAN Protocols 267 CONTrmTS vii 43 ETHERNET 271 4.3.1 Ethernet Cablillg 271 4.3.2 Manchester EIICOding 274 4.3.3 The Ethernet MAC Sublayer Protocol 275 4.3.4 The Binds Exponential Backofl' Algorithm 278 4.3.5 Ethernet Performance 279 4.3.6 Switched Ethernet 281 4.3.7 Fast Ethernet 283 4.3.8 Gigabit Ethernet 286 439 JEEE 8022 Logical Link Conlrol 290 4310 Retrospective on Whernet 291 4.4 WIRELESS LANS 292 441 The 802.1 1 Protocol Stack 292 4.4.2 The 802.II imysicaI Layer 293 443 The 802.11 BAC SI]bIaser AntocoI 295 4.4.4 The 802.1 1 I'lame Structule 299 4.4.5 Ser,IICes 3 ] 4.5 BROADBAND WIRELESS 302 4.5.1 Comparison of 802] 1 with 802.16 303 4,5,2 The 802.16 Plotocol Stack 305 4.5.3 The 802 16 Physica] I-ayer 306 4.5.4 The 802. 16 MAC SubIaycr Prot'>coI 307 4.5.5 The 802.16 FI+amc Structult 309 4.6 BLUETOOTH 310 46 1 BIuetooth Architecture 31 1 46.2 BIuetooth AppIicahons 312 4.6.3 The Bluetooth Protoco] Stack 313 4.6.4 The BIuctooth Radio LayeT 315 4.6.5 The Bluetooth Baseband Laver 315 4.66 The BIIIetonth LZCAP Layer 316 4.67 The Bllletol)th Fralnc Struclure 316 4.7 DATA LINK LAYER SWiTCHING 318 4.7.1 Bridges from 802.x to 802.y 320 4.77 Local 1llterlletworking 322 4.7.3 SpanIIing Tree bridged 324 4.7.4 Remote Bridges 325 4.7.5 Repeateds. Hubs. Bridges. Switches. Routeds. and Gatcwnys 326 4.7.6 Virtual LANS 329 4.8 SUMMARY 337 vin COMENTS 5 THE NETWORK LAYER 343 5. I NETWORK LAYER DESIGN ISSUES 343 5.l.l Store anduForward Packet Switching 344 51.2 Services Provided to the Transport Layer 3M >.l.3 implementation of Connechonless Service 345 514 linplementalon of Connechon-Onented Service 347 sl .5 CI)mparison of Virtual Circuit and Datagram Subnets 348 5.2 ROUT[NG ALGORITHMS 350 5.2.1 The Optimality Principle 352 522 Shortest Path Routing 353 5.23 FlOOding 355 524 Distance Vector Routing 357 525 Link State ROuting 360 5.26 Hierarehlcal Routing 366 527 BTOadcast ROuhng 368 5.28 MuIticast ROuting 370 5.2.9 ROuting for MObiIC HOSts 372 5.2.10 ffeuhng in Ad HOC Networks 373 5.2.11 Node Lockup in Peer to Peer NetwoTks 380 5.3 CONGESTION CONTROL ALGORITHMS 384 5.3.] General Principles of Congestion Control 386 5.3.2 Congestion Prevention Policies 388 5.3.3 Congeshon Control in VirtoaLCircuit Subnets 389 5.3.4 COngeshon COntrol in Datagram Subnets 391 5.3.5 LOad Shedding 394 5.3.6 Jltter Control 395 5,4 QUALITY OF SERVICE 397 54,l Requirements 397 5.4.2 Techniques for Achieving Good Quality of Serylce 398 5.4.3 Integrated Semces 409 5.4.4 DiffeTentiated Services 412 5.4.5 Label Switching and MPLS 415 5.5 INTERNETWORKING 418 5.5.1 How Networks Differ 419 55.2 How Networks Can Be Connected 420 55.3 COncatenated Virtual CircuIts 422 5.5.4 Connectionless internetworking 423 CONTENTS ix 5.5.5 Tunneling 425 5.5.6 Intrmctwork Routing 426 5.5.7 Frapmentation 427 5.6 THE NETWORK LAYER IN THE IN'TERNET 431 5.6.1 The lP Protocol 433 5.6.2lp Addresses 436 5.6.3 Internet Control Protocols 449 56.4 OSPF--The interior Gateway R(luting Protocol 454 5.6.5 BGP--The Extenor Gateway RouDng pooioco] 459 5.6.6 Internet Multicasting 46] 5.6.7 MObile m 462 56,8Ipv6 464 5.7 SUMMARY 473 6 THE TRANSPORT LAYER 481 6. ] THE TRANSPORT SERVICE 48] 6,II Services Provided to the UPVer Lasers 48] 6.] .2 TransP')rt Scrylcc Pnmiiivcs 483 6.I.3 BerneIey SOCkets 487 6,14 An Example of Socket ProgTalnming. An internet File Server 488 6.2 ELEMENTS OF TRANSPORT PROTOCOLS 492 6.2.] Addressing 493 6.2.2 Connection Estflblishment 496 6.2,3 COnnection Release 502 6.2.4 Flow ConlTo] and Buffenng 506 6.2.5 MuIhpIexing 510 6.2.6 Crash Recovery sll 63 A SIMPLE T~SPORT PROTOCOL 513 63. I The Example Serylce Pnmltives 513 63.2 The Example Transport Emit}' 515 63.3 The Example as a F]nite State Machine 522 6.4 THE INTERNET TRANSPORT PROTOCOLSi UDP 524 641 Introduction to UDP 525 6.4.2 Rcrnotc Woccdure Call 526 6.4.3 The Real-TIme Transport riotocoI 529 6.5 TEE ]NTERNET TRANSPORT PROTOCOLSi TCI3 532 6.5. 1 Introduction to TCP 532 6.5.7 The TCP Service MOdel 533 6.5.3 The TCP Pn)tocol 535 6.5.4 Tile TCP Segment TJeader 536 6.5.5 TCP Connection Establishment 539 6.5.6 TCP COnncciinII Release 541 6,5.7 MOdeling TIP COnnectIOn ManasenIeIIt 541 6.5.8 TCP "I'ransnussion POlicy 543 6.5.9 TCP COngestion COntrol 547 6.5.]0 TCP Timer Managemellt 550 6.5.II WZreIess TCP BInd UDP 553 6,512 TransactiDnaI TCP 555 6.6 PERFOanANCE ISSUES 557 6.6. ] Performance Problems ill Compuler Networks 557 6.6.2 Network Perf6.6.3 System Design for Better Peritwmancc 562 6.6.4 Fast TPDU Processing 566 6.6.5 protocols l\IT G]gablt Networks 569 67 SUMMARY 573 7 THE APPLICATION LAYER 579 7.] DNS Tab DOMAIN NAME SYSTEM 579 7.II The DNS N3me Space SKO 7 ] 2 Resource Records 582 7.] 3 Nancy Servers 586 v.z ELECTRONIC MAn. 588 721 Aichitecture and Services 590 7.2.2 The USer Agent 591 72.3 Message Formats 594 7.2.4 Messase Transfer 602 7.2.5 FInal DCIivcry 605 73 THE WORLD WIDE WEB 61 1 73.1 Aichiteclllral Overview 612 732 Static Web Documents 629 CONTENTS Xi 7.3.3 Dynamic Web Documents 643 7,34 HTTP--aha Hyperxext pansier vrotoco] 651 7.3.5 Performance Enhancements 656 7.3.6 The Wireless Web 662 7.4 MULTIMEDIA 674 7.4. 1 Introduction to Digital Audio 674 7.4.2 Audio Compressloll 676 7.4.3 Streamillg Audio 679 7.4.4 Interllet Radio 683 7.4.5 VOICC over lP 685 7.4.6 Iniroduchon to VIdeo 692 7.4.7 Video COnInxession 696 74,8 VjdCo on Dcmalld 704 749 The EBony--The Mulhcast Backbone 71 1 7.5 SUMMARY 714 8 NETWORK SECURITY 721 S.I CRYPTOGR-APHY 724 8.1 .I Introduction to Cryptography 725 8.I.2 Substitution Ciphers 727 8. I .3 Trallsposition Ciphers 729 8.1 .4 One nine Pads 730 8. 1 .5 Two Fundamental Cryptographic Principles 733 8.2 SYMMETRIC~KEY ALGORITHMS 737 8.2. I DES--The Data Encrypti(}n Standard 738 8.22 AES--she Advanced Encr>ption Standals 741 8.23 CIPheT Modes 745 8.2.4 other Ciphers 750 8.2.5 CryptanaIysis 750 8.3 PUBLIC-KEY ALGORITHMS 752 8.3.1 RSA 753 8.3.2 Other Public-Key A]gorltbms 755 Xll CONTENTs 8.4 DIGITAL SIGNAT'URES 755 8.4.1 Symmetric Key Signatores 756 8.4.2 Public Key Signatures 757 8.4.3 Messazc Digests 759 8.4.4 The Birthday Attack 763 85 MANAGEMENT OF PUBLIC KEYS 765 8.5.1 Certificates 765 8.5.2 X.509 767 8.5.3 Public Key infrastructures 768 86 COMMUNICATION SECURITY 772 8.6.] IPSec 772 862 Firewalls 776 863 Virtual Private Networks 779 8.6.4 Wireless Security 780 8.7 AUTHENTJCATION PROTOCOLS 785 8.7.1 Authentication Based on a Shared Secret Key 786 8.7.2 EStablishing a Shared Key. The Dit.tic Hell~ ASy EXChange 791 8.73 Authentication Using a Key Distribution CenteT 793 8.7.4 Authenticanon Using Kerberos 796 87.> Authenticahon Using Pubhc-Key Cryptography 798 88 E-MAIL SECURITY 799 8.8. ] PG~retty GOOd fuvacy 799 8.8.2 PEM--ruvacy Enhanced Mail 803 8.8.3 S/MIME 804 8.9 WEB SECURITY 805 8.9.1 Threats 8 5 8.9.2 Secllre Nanung 806 8.9.3 SSMThe Secure Sockets Layer 813 8.94 MObile COde Secunts 8 ] 6 8. 10 SOCIAL ISSLTS 819 8.10.1 Pnvacy 819 810.2 Freedom of Speech 922 8.10.3 Copynght 826 sII SUMMARY 828 CONT~S xiii 9 READING LIST AND BIBLIOGRAPHY 835 9] SUGGESTIONS FOR FURTHER READING 835 9. 1. I Introduction and Genera] Works 836 9.l.2 The Physical Layal 838 9.1 .3 The Data ink Laver 840 9.1 .4 The Medium Access Control Sublayer 540 9.1 .5 The Network Laser 542 9.1 .6 The Transport Layer 844 9.] 7 The AppIicahon Laver Sa 9.1 .8 Network Security 846 9.2 ALPHABETICAL BIBLIOGRAPHY 848 INDEX 869 |