23 Preface PART I Introduction And Internet Applications 35 Chapter 1 Introduction And Overview 1.1 Growth Of Computer Networking 35 1.2 Why Networking Seems Complex 36 1.3 The Five Key
Trang 1Global edition
Computer networks and internets
SiXtH edition
douglas e Comer
Trang 2Computer Networks
and Internets
Trang 3This page is intentionally left blank.
Trang 4Computer Networks
and Internets
Sixth Edition Global Edition
DOUGLAS E COMER
Department of Computer Sciences
Purdue University West Lafayette, IN 47907
Boston Columbus Indianapolis New York San Francisco Hoboken
Amsterdam Cape Town Dubai London Madrid Milan Munich Paris Montreal Toronto Delhi Mexico City Sao Paulo Sydney Hong Kong Seoul Singapore Taipei Tokyo
Trang 5Editorial Director, Engineering
and Computer Science:
Media Editor: Renata Butera
Head of Learning Asset Acquisition,
Global Edition: Laura Dent Assistant Acquisitions Editor, Global Edition: Aditee
Agarwal
Senior Manufacturing Controller, Global Edition:
Trudy Kimber
Project Editor, Global Edition: Aaditya Bugga
Pearson Education Limited
Edinburgh Gate
Harlow
Essex CM20 2JE
England
and Associated Companies throughout the world
Visit us on the World Wide Web at:
www.pearsonglobaleditions.com
© Pearson Education Limited, 2015 The right of Douglas E Comer to be identified as the author of this work has been asserted by him in accordance with the Copyright, Designs and Patents Act 1988
Authorized adaptation from the United States edition, entitled Computer Networks and Internets,6th edition, ISBN 0-13-358793-7, by Douglas E Comer, published by Pearson Education © 2015
978-All rights reserved No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, electronic, mechanical, photocopying, recording or otherwise, without either the prior written permission of the publisher or a license permitting restricted copying in the United Kingdom issued by the Copyright Licensing Agency Ltd, Saffron House, 6–10 Kirby Street, London EC1N 8TS
AdaMagic is a trademark of Intermetrics, Incorporated Alpha is a trademark of Digital Equipment Corporation Android is a trademark of Google, Incorporated Facebook is a registered trademark of Facebook, Incorporated Java is
a trademark of Sun Microsystems, Incorporated JavaScript is a trademark of Sun Microsystems, Incorporated Microsoft is a registered trademark of Microsoft Corporation Microsoft Windows is a trademark of Microsoft Corporation OpenFlow is a trademark of Stanford University OS-X is a registered trademark of Apple, Incorporated
Pentium is a trademark of Intel Corporation Skype is a trademark of Skype, and Computer Networks and Internets is
not affiliated, sponsored, authorized or otherwise associated by/with the Skype group of companies Smartjack is a trademark of Westell, Incorporated Sniffer is a trademark of Network General Corporation Solaris is a trademark of Sun Microsystems, Incorporated Sparc is a trademark of Sun Microsystems, Incorporated UNIX is a registered trademark of The Open Group in the US and other countries Vonage is a registered trademark of Vonage Marketing, LLC Windows 95 is a trademark of Microsoft Corporation Windows 98 is a trademark of Microsoft Corporation Windows NT is a trademark of Microsoft Corporation X Window System is a trademark of X Consortium,
Incorporated YouTube is a registered trademark of Google, Incorporated ZigBee is a registered trademark of the ZigBee Alliance Additional company and product names used in this text may be trademarks or registered trademarks
of the individual companies, and are respectfully acknowledged
ISBN 10: 1-292-06117-0
ISBN 13: 978-1-292-06117-7
British Library Cataloguing-in-Publication Data
A catalogue record for this book is available from the British Library
Trang 7This page is intentionally left blank.
Trang 823 Preface
PART I Introduction And Internet Applications
35 Chapter 1 Introduction And Overview
1.1 Growth Of Computer Networking 35
1.2 Why Networking Seems Complex 36
1.3 The Five Key Aspects Of Networking 36
1.4 Public And Private Parts Of The Internet 40
1.5 Networks, Interoperability, And Standards 42
1.6 Protocol Suites And Layering Models 43
1.7 How Data Passes Through Layers 45
1.8 Headers And Layers 46
1.9 ISO And The OSI Seven Layer Reference Model 47
1.10 Remainder Of The Text 48
1.11 Summary 48
51 Chapter 2 Internet Trends
2.1 Introduction 51
2.2 Resource Sharing 51
2.3 Growth Of The Internet 52
2.4 From Resource Sharing To Communication 55
2.5 From Text To Multimedia 55
2.6 Recent Trends 56
2.7 From Individual Computers To Cloud Computing 57
2.8 Summary 58
61 Chapter 3 Internet Applications And Network Programming
3.1 Introduction 61
3.2 Two Basic Internet Communication Paradigms 62
Trang 93.3 Connection-Oriented Communication 63
83 Chapter 4 Traditional Internet Applications
Trang 104.22 Types Of DNS Entries 109
PART II Data Communication Basics
119 Chapter 5 Overview Of Data Communications
5.1 Introduction 119
5.2 The Essence Of Data Communications 120
5.3 Motivation And Scope Of The Subject 121
5.4 The Conceptual Pieces Of A Communications System 121
5.5 The Subtopics Of Data Communications 124
5.6 Summary 125
127 Chapter 6 Information Sources And Signals
6.1 Introduction 127
6.2 Information Sources 127
6.3 Analog And Digital Signals 128
6.4 Periodic And Aperiodic Signals 128
6.5 Sine Waves And Signal Characteristics 129
6.6 Composite Signals 131
6.7 The Importance Of Composite Signals And Sine Functions 131
6.8 Time And Frequency Domain Representations 132
6.9 Bandwidth Of An Analog Signal 133
6.10 Digital Signals And Signal Levels 134
6.11 Baud And Bits Per Second 135
6.12 Converting A Digital Signal To Analog 136
6.13 The Bandwidth Of A Digital Signal 137
6.14 Synchronization And Agreement About Signals 137
6.15 Line Coding 138
6.16 Manchester Encoding Used In Computer Networks 140
6.17 Converting An Analog Signal To Digital 141
6.18 The Nyquist Theorem And Sampling Rate 142
6.19 Nyquist Theorem And Telephone System Transmission 142
6.20 Nonlinear Encoding 143
6.21 Encoding And Data Compression 143
6.22 Summary 144
Trang 11147 Chapter 7 Transmission Media
169 Chapter 8 Reliability And Channel Coding
Trang 12187 Chapter 9 Transmission Modes
199 Chapter 10 Modulation And Modems
215 Chapter 11 Multiplexing And Demultiplexing (Channelization)
Trang 1311.5 Using A Range Of Frequencies Per Channel 219
Trang 14PART III Packet Switching And Network Technologies
253 Chapter 13 Local Area Networks: Packets, Frames, And Topologies
13.1 Introduction 253
13.2 Circuit Switching And Analog Communication 254
13.3 Packet Switching 255
13.4 Local And Wide Area Packet Networks 256
13.5 Standards For Packet Format And Identification 257
13.6 IEEE 802 Model And Standards 258
13.7 Point-To-Point And Multi-Access Networks 259
13.8 LAN Topologies 261
13.9 Packet Identification, Demultiplexing, MAC Addresses 263
13.10 Unicast, Broadcast, And Multicast Addresses 264
13.11 Broadcast, Multicast, And Efficient Multi-Point Delivery 265
13.12 Frames And Framing 266
13.13 Byte And Bit Stuffing 267
13.14 Summary 268
273 Chapter 14 The IEEE MAC Sublayer
14.1 Introduction 273
14.2 A Taxonomy Of Mechanisms For Shared Access 273
14.3 Static And Dynamic Channel Allocation 274
14.4 Channelization Protocols 275
14.5 Controlled Access Protocols 276
14.6 Random Access Protocols 278
14.7 Summary 284
287 Chapter 15 Wired LAN Technology (Ethernet And 802.3)
15.1 Introduction 287
15.2 The Venerable Ethernet 287
15.3 Ethernet Frame Format 288
15.4 Ethernet Frame Type Field And Demultiplexing 288
15.5 IEEE’s Version Of Ethernet (802.3) 289
15.6 LAN Connections And Network Interface Cards 290
15.7 Ethernet Evolution And Thicknet Wiring 290
15.8 Thinnet Ethernet Wiring 291
15.9 Twisted Pair Ethernet Wiring And Hubs 292
15.10 Physical And Logical Ethernet Topology 293
15.11 Wiring In An Office Building 293
Trang 1515.12 Ethernet Data Rates And Cable Types 295
299 Chapter 16 Wireless Networking Technologies
325 Chapter 17 Repeaters, Bridges, And Switches
Trang 16339 Chapter 18 WAN Technologies And Dynamic Routing
359 Chapter 19 Networking Technologies Past And Present
20.1 Introduction 369
20.2 The Motivation For Internetworking 369
20.3 The Concept Of Universal Service 370
20.4 Universal Service In A Heterogeneous World 370
20.5 Internetworking 371
20.6 Physical Network Connection With Routers 371
20.7 Internet Architecture 372
20.8 Intranets And Internets 373
20.9 Achieving Universal Service 373
20.10 A Virtual Network 373
20.11 Protocols For Internetworking 375
20.12 Review Of TCP/IP Layering 375
Trang 1720.13 Host Computers, Routers, And Protocol Layers 376
379 Chapter 21 IP: Internet Addressing
Trang 1822.13 IP Encapsulation 413
425 Chapter 23 Support Protocols And Technologies
449 Chapter 24 UDP: Datagram Transport Service
Trang 1924.6 UDP Communication Semantics 452
459 Chapter 25 TCP: Reliable Transport Service
481 Chapter 26 Internet Routing And Routing Protocols
Trang 2027.1 Introduction 503
27.2 Measures Of Performance 503
27.3 Latency Or Delay 504
27.4 Capacity, Throughput, And Goodput 506
27.5 Understanding Throughput And Delay 507
27.6 Jitter 508
27.7 The Relationship Between Delay And Throughput 509
27.8 Measuring Delay, Throughput, And Jitter 510
27.9 Passive Measurement, Small Packets, And NetFlow 512
27.10 Quality Of Service (QoS) 513
27.11 Fine-Grain And Coarse-Grain QoS 514
27.12 Implementation Of QoS 516
27.13 Internet QoS Technologies 518
27.14 Summary 519
523 Chapter 28 Multimedia And IP Telephony (VoIP)
28.1 Introduction 523
28.2 Real-Time Data Transmission And Best-Effort Delivery 523
28.3 Delayed Playback And Jitter Buffers 524
28.4 Real-Time Transport Protocol (RTP) 525
28.5 RTP Encapsulation 526
28.6 IP Telephony 527
28.7 Signaling And VoIP Signaling Standards 528
28.8 Components Of An IP Telephone System 529
28.9 Summary Of Protocols And Layering 532
28.10 H.323 Characteristics 533
28.11 H.323 Layering 533
28.12 SIP Characteristics And Methods 534
28.13 An Example SIP Session 535
28.14 Telephone Number Mapping And Routing 536
28.15 Summary 537
Trang 21541 Chapter 29 Network Security
567 Chapter 30 Network Management (SNMP)
579 Chapter 31 Software Defined Networking (SDN)
Trang 2231.3 Motivation For A New Approach 580
601 Chapter 32 The Internet Of Things
613 Chapter 33 Trends In Networking Technologies And Uses
Trang 24I thank the many readers who have taken the time to write to me with comments
on previous editions of Computer Networks And Internets The reviews have been
in-credibly positive, and the audience is surprisingly wide In addition to students who usethe text in courses, networking professionals have written to praise its clarity and todescribe how it helped them pass professional certification exams Many enthusiasticcomments have also arrived from countries around the world; some about the Englishlanguage version and some about foreign translations The success is especially satisfy-ing in a market glutted with networking books This book stands out because of itsbreadth of coverage, logical organization, explanation of concepts, focus on the Internet,and appeal to both professors and students
What’s New In This Edition
In response to suggestions from readers and recent changes in networking, the newedition has been completely revised and updated As always, material on older technol-ogies has been significantly reduced and replaced by material on new technologies Thesignificant changes include:
d Updates throughout each chapter
d Additional figures to enchance explanations
d Integration of IPv4 and IPv6 in all chapters
d Improved coverage of MPLS and tunneling
d New chapter on Software Defined Networking and OpenFlow
d New chapter on the Internet of Things and Zigbee
Approach Taken
Should courses take a top-down or bottom-up approach to the subject? In abottom-up approach, one starts with transmission of bits over a single wire, and thenlearns how successive layers of protocols expand the functionality In a top-down ap-proach, one starts with high-level applications, initially learning only enough to under-stand how such applications operate Later, one learns about the underlying details
Trang 25This text combines the best of top-down and bottom-up approaches The text gins with a discussion of network applications and the communication paradigms thatthe Internet offers It allows students to understand the facilities the Internet provides toapplications before studying the underlying technologies that implement the facilities.Following the discussion of applications, the text presents networking in a logicalmanner so a reader understands how each new technology builds on lower layer tech-nologies.
be-Intended Audience
The text answers the basic question: how do computer networks and internetsoperate? It provides a comprehensive, self-contained tour through all of networking thatdescribes applications, Internet protocols, network technologies, such as LANs andWANs, and low-level details, such as data transmission and wiring It shows how pro-tocols use the underlying hardware and how applications use the protocol stack to pro-vide functionality for users
Intended for upper-division undergraduates or beginning graduate students whohave little or no background in networking, the text does not use sophisticatedmathematics, nor does it assume a detailed knowledge of operating systems Instead, itdefines concepts clearly, uses examples and figures to illustrate how the technologyoperates, and states results of analysis without providing mathematical proofs
Organization Of The Material
The text is divided into five parts The first part (Chapters 1–4) focuses on uses ofthe Internet and network applications It describes protocol layering, the client-servermodel of interaction, the socket API, and gives examples of application-layer protocolsused in the Internet
The second part (Chapters 5–12) explains data communications, and presents ground on the underlying hardware, the basic vocabulary, and fundamental conceptsused throughout networking, such as bandwidth, modulation, and multiplexing The fi-nal chapter in the second part presents access and interconnection technologies used inthe Internet, and uses concepts from previous chapters to explain each technology.The third part (Chapters 13–19) focuses on packet switching and packet switchingnetwork technologies Chapters give the motivation for using packets, introduce theIEEE model for layer 2 protocols, and consider wired and wireless networking technolo-gies, such as Ethernet and Wi-Fi The third part also introduces the four basiccategories of network technologies: LAN, MAN, PAN, and WAN, and discusses rout-ing in WANs The final chapter presents examples of network technologies that havebeen used in the Internet
Trang 26back-The fourth part (Chapters 20–26) focuses on the Internet protocols After ing the motivation for internetworking, the text describes Internet architecture, routers,Internet addressing, address binding, and the TCP/IP protocol suite Protocols such asIPv4, IPv6, TCP, UDP, ICMP, ICMPv6, and ARP are reviewed in detail, allowing stu-dents to understand how the concepts relate to practice Because IPv6 has (finally) be-gun to be deployed, material on IPv6 has been integrated into the chapters Eachchapter presents general concepts, and then explains how the concepts are implemented
discuss-in IPv4 and IPv6 Chapter 25 on TCP covers the important topic of reliability discuss-in port protocols
trans-The final part of the text (Chapters 27–33) considers topics that cross multiplelayers of a protocol stack, including network performance, network security, networkmanagement, bootstrapping, multimedia support, and the Internet of Things Chapter 31presents Software Defined Networking, one of the most exciting new developments innetworking Each chapter draws on topics from previous parts of the text The place-ment of these chapters at the end of the text follows the approach of defining conceptsbefore they are used, and does not imply that the topics are less important
Use In Courses
The text is ideally suited for a one-semester introductory course on networkingtaught at the junior or senior level Designed for a comprehensive course, it covers theentire subject from wiring to applications Although many instructors choose to skipover the material on data communications, I encourage them to extract key concepts andterminology that will be important for later chapters No matter how courses are orga-nized, I encourage instructors to engage students with hands-on assignments In the un-dergraduate course at Purdue, for example, students are given weekly lab assignmentsthat span a wide range of topics: from network measurement and packet analysis to net-work programming By the time they finish our course, each student is expected toknow how an IP router uses a forwarding table to choose a next hop for an IP datagram;describe how a datagram crosses the Internet; identify and explain fields in an Ethernetframe; know how TCP identifies a connection and why a concurrent web server canhandle multiple connections to port 80; compute the length of a single bit as it propa-gates across a wire at the speed of light; explain why TCP is classified as end-to-end;know why machine-to-machine communication is important for the Internet of Things;and understand the motivation for SDN
The goal of a single course is breadth, not depth — to cover the subject, one not focus on a few technologies or a few concepts Thus, the key to a successful courselies in maintaining a quick pace To cover the most important topics in a semester, thelower layer material in Part II can be condensed, and the sections on networks and inter-networking can be allocated four weeks each, leaving two weeks for the introductorymaterial on applications and topics such as network management and security The de-tails of socket programming can be covered in programming exercises, either in labs or
can-as homework problems
Trang 27Instructors should impress on students the importance of concepts and principles:specific technologies may become obsolete in a few years, but the principles willremain In addition, instructors should give students a feeling for the excitement thatpervades networking The excitement continues because networking keeps changing, asthe new era of Software Defined Networking illustrates.
Although no single topic is challenging, students may find the quantity of materialdaunting In particular, students are faced with a plethora of new terms Networkingacronyms and jargon can be especially confusing; students spend much of the timebecoming accustomed to using proper terms In classes at Purdue, we encourage stu-dents to keep a list of terms (and have found that a weekly vocabulary quiz helps per-suade students to learn terminology as the semester proceeds, rather than waiting until
an exam)
Because programming and experimentation are crucial to helping students learnabout networks, hands-on experience is an essential part of any networking course† AtPurdue, we begin the semester by having students construct client software to access theWeb and extract data (e.g., write a program to visit a web site and print the current tem-perature) Appendix 1 is extremely helpful in getting started: the appendix explains asimplified API The API, which is available on the web site, allows students to writeworking code before they learn about protocols, addresses, sockets, or the (somewhattedious) socket API Later in the semester, of course, students learn socket program-ming Eventually, they are able to write a concurrent web server Support for server-side scripting is optional, but most students complete it In addition to application pro-gramming, students use our lab facilities to capture packets from a live network, writeprograms that decode packet headers (e.g., Ethernet, IP, and TCP), and observe TCPconnections If advanced lab facilities are not available, students can experiment with
free packet analyzer software, such as Wireshark.
In addition to code for the simplified API, the web site for the text contains extramaterials for students and instructors:
http://www.pearsonglobaleditions.com /Comer
I thank all the people who have contributed to editions of the book Many gradstudents at Purdue have contributed suggestions and criticism Baijian (Justin) Yangand Bo Sang each recommended the addition of text and figures to help their studentsunderstand the material better Fred Baker, Ralph Droms, and Dave Oran from Ciscocontributed to earlier editions Lami Kaya suggested how the chapters on data com-munications could be organized, and made many other valuable suggestions Pearsonwould like to thank and acknowledge the following people for their work on the GlobalEdition Contributors: Sabyasachi Abadhan, National Institute of Technology, Silchar;Aref Ahmedd, National Institute of Technology, Silchar Reviewers: Chitra Dhawale,
P R Pote College of Engineering & Management, Amravati; Soumen Mukherjee; ArupBhattacharjee Special thanks go to my wife and partner, Christine, whose careful edit-ing and helpful suggestions made many improvements throughout
Douglas E Comer
†A separate lab manual, Hands-On Networking, is available that describes possible experiments and
as-signments that can be performed on a variety of hardware, including a single computer or a set of computers
on a local area network.
Trang 28Dr Douglas Comer is an internationally recognized expert on computernetworking, TCP/IP protocols, and the Internet One of the researchers whocontributed to the Internet as it was being formed in the late 1970s and 1980s,
he was a member of the Internet Architecture Board, the group responsible forguiding the Internet’s development He was also chairman of the CSNETtechnical committee, a member of the CSNET executive committee, and chair-man of DARPA’s Distributed Systems Architecture Board
Comer consults for industry on the design of computer networks In tion to giving talks in US universities, each year Comer lectures to academicsand networking professionals around the world Comer’s operating system,Xinu, and implementation of TCP/IP protocols (both documented in his text-books), have been used in commercial products
addi-Comer is a Distinguished Professor of Computer Science at Purdue sity Formerly, he served as VP of Research at Cisco Systems Comer teachescourses on networking, internetworking, computer architecture, and operatingsystems At Purdue, he has developed innovative labs that provide studentswith the opportunity to gain hands-on experience with operating systems, net-works, and protocols In addition to writing a series of best-selling technicalbooks that have been translated into sixteen languages, he served as the North
Univer-American editor of the journal Software — Practice and Experience for twenty
years Comer is a Fellow of the ACM
Additional information can be found at:
www.cs.purdue.edu/people/comer
Trang 29This page is intentionally left blank.
Trang 30Computer Networks And Internets
“The book is one of the best that I have ever read Thank you.”
Gokhan Mutlu Ege University, Turkey
“I just could not put it down before I finished it It was simply superb.”
Lalit Y Raju Regional Engineering College, India
“An excellent book for beginners and professionals alike — well written,comprehensive coverage, and easy to follow.”
John Lin Bell Labs
“The breadth is astonishing.”
George Varghese University of California at San Diego
“It’s truly the best book of its type that I have ever seen A huge vote ofthanks!”
Chez Ciechanowicz Info Security Group, University Of London
“The miniature webserver in Appendix 1 is brilliant — readers will get a bigthrill out of it.”
Dennis Brylow Marquette University
“Wow, what an excellent textbook.”
Jaffet A Cordoba Technical Writer
“The book’s great!”
Peter Parry South Birmingham College, UK
Trang 31Computer Networks And Internets
“Superb in breadth of coverage Simplicity in delivery is the hallmark Anideal selection for a broad and strong foundation on which to build the super-structure A must read for starters or those engaged in the networkingdomain The book constitutes an essential part of many of our training solu-tions.”
Vishwanathan Thyagu TETCOS, Bangalore, India
“Wow, when I was studying for the CCNA exam, the clear explanations in thisbook solved all the problems I had understanding the OSI model and TCP/IPdata transfer It opened my mind to the fascinating world of networks andTCP/IP.”
Solomon Tang PCCW, Hong Kong
“An invaluable tool, particularly for programmers and computer scientists ing a clear, broad-based understanding of computer networks.”
desir-Peter Chuks Obiefuna East Carolina University
“The textbook covers a lot of material, and the author makes the contents veryeasy to read and understand, which is the biggest reason I like this book It’svery appropriate for a 3-credit class in that a lot of material can be covered.The student’s positive feedback shows they too appreciate using this text-book.”
Jie Hu Saint Cloud State University
“Despite the plethora of acronyms that infest the discipline of networking, thisbook is not intimidating Comer is an excellent writer, who expands and ex-plains the terminology The text covers the entire scope of networking fromwires to the web I find it outstanding.”
Jennifer Seitzer University of Dayton
Trang 32Internetworking With TCP/IP Volume I: Principles, Protocols and Architectures, 6th edition: 2013, ISBN 9780136085300
The classic reference in the field for anyone who wants to understand Internet nology in more depth, Volume I surveys the TCP/IP protocol suite and describes eachcomponent The text covers protocols such as IPv4, IPv6, ICMP, TCP, UDP, ARP,SNMP, MPLS, and RTP, as well as concepts such as VPNs, address translation, classif-ication, Software Defined Networking, and the Internet of Things
tech-Internetworking With TCP/IP Volume II: Design, Implementation, and Internals (with David Stevens), 3rd edition: 1999, ISBN 0-13-973843-6
Volume II continues the discussion of Volume I by using code from a running plementation of TCP/IP to illustrate all the details
im-Internetworking With TCP/IP Volume III: Client-Server Programming and Applications (with David Stevens)
Linux/POSIX sockets version: 2000, ISBN 0-13-032071-4 AT&T TLI Version: 1994, ISBN 0-13-474230-3
Windows Sockets Version: 1997, ISBN 0-13-848714-6
Volume III describes the fundamental concept of client-server computing used tobuild all distributed computing systems, and explains server designs as well as the toolsand techniques used to build clients and servers Three versions of Volume III areavailable for the socket API (Linux/POSIX), the TLI API (AT&T System V), and theWindows Sockets API (Microsoft)
Network Systems Design Using Network Processors, Intel 2xxx version,
2006, ISBN 0-13-187286-9
A comprehensive overview of the design and engineering of packet processing tems such as bridges, routers, TCP splicers, and NAT boxes With a focus on network
sys-processor technology, Network Systems Design explains the principles of design,
presents tradeoffs, and gives example code for a network processor
The Internet Book: Everything you need to know about computer ing and how the Internet works, 4th Edition 2007, ISBN 0-13-233553-0
network-A gentle introduction to networking and the Internet that does not assume thereader has a technical background It explains the Internet in general terms, withoutfocusing on a particular computer or a particular brand of software Ideal for someonewho wants to become Internet and computer networking literate; an extensive glossary
of terms and abbreviations is included
For a complete list of Comer’s textbooks, see:
www.comerbooks.com
Trang 33This page is intentionally left blank.
Trang 34application programs use
Trang 35Chapter Contents
1.10 Remainder Of The Text, 48
1.11 Summary, 48
Trang 36Introduction And Overview
1.1 Growth Of Computer Networking
Computer networking continues to grow explosively Since the 1970s, computercommunication has changed from an esoteric research topic to an essential part ofeveryone’s lives Networking is used in every aspect of business, including advertising,production, shipping, planning, billing, and accounting Consequently, most corpora-tions have multiple networks Schools, at all grade levels from elementary throughpost-graduate, are using computer networks to provide students and teachers with in-stantaneous access to online information Federal, state, and local government officesrely on networks, as do military organizations In short, computer networks are every-where
The growth and uses of the global Internet† are among the most interesting and citing phenomena in networking In 1980, the Internet was a research project that in-volved a few dozen sites Today, the Internet has grown into a production communica-tions system that reaches all populated countries of the world Many users have high-speed Internet access through cable modems, DSL, optical, or wireless technologies.The advent and utility of networking has created dramatic economic shifts Datanetworking has made telecommuting available to individuals, and has changed businesscommunication In addition, an entire industry emerged that develops networking tech-nologies, products, and services The importance of computer networking has produced
ex-a demex-and in ex-all industries for people with more networking expertise Compex-anies needworkers to plan, acquire, install, operate, and manage the hardware and software sys-
tems that constitute computer networks and internets The advent of cloud computing
means that computing is moving from local machines to remote data centers As a
†Throughout this text, we follow the convention of writing Internet with an uppercase “I” to denote the
global Internet.
35
Trang 37result, networking has affected all computer programming — programmers no longercreate software for a single computer; they write applications that communicate acrossthe Internet.
1.2 Why Networking Seems Complex
Because computer networking is an active and rapidly changing field, the subjectseems complex Many technologies exist, and each technology has features that distin-guish it from the others Companies continue to create commercial networking productsand services, often by using technologies in new unconventional ways Finally, net-working seems complex because technologies can be combined and interconnected inmany ways
Computer networking can be especially confusing to a beginner because no singleunderlying theory exists that explains the relationship among all parts Multiple organi-zations have created networking standards, but some standards are incompatible withothers Various organizations and research groups have attempted to define conceptualmodels that capture the essence and explain the nuances among network hardware andsoftware systems, but because the set of technologies is diverse and changes rapidly,models are either so simplistic that they do not distinguish among details or so complexthat they do not help simplify the subject
The lack of consistency in the field has produced another challenge for beginners:instead of a uniform terminology for networking concepts, multiple groups each attempt
to create their own terminology Researchers cling to scientifically precise terminology.Corporate marketing groups often associate a product with a generic technical term orinvent new terms merely to distinguish their products or services from those of competi-tors Thus, technical terms are easily confused with the names of popular products Toadd further confusion, professionals sometimes use a technical term from one technolo-
gy when referring to an analogous feature of another technology Consequently, in dition to a large set of terms and acronyms that contains many synonyms, networkingjargon contains terms that are often abbreviated, misused, or associated with products
ad-1.3 The Five Key Aspects Of Networking
To master the complexity in networking, it is important to gain a broad ground that includes five key aspects of the subject:
back-d Network applications anback-d network programming
d Data communications
d Packet switching and networking technologies
d Internetworking with TCP/IP
d Additional networking concepts and technologies
Trang 381.3.1 Network Applications And Network Programming
The network services and facilities that users invoke are each provided by tion software — an application program on one computer communicates across a net-work with an application program running on another computer Network applicationservices span a wide range that includes email, file upload or download, web browsing,audio and voice telephone calls, distributed database access, and video teleconferencing.Although each application offers a specific service with its own form of user interface,all applications can communicate over a single, shared network The availability of aunified underlying network that supports all applications makes a programmer’s jobmuch easier because a programmer only needs to learn about one interface to the net-work and one basic set of functions — the same set of functions are used in all applica-tion programs that communicate over a network
applica-As we will see, it is possible to understand network applications, and even possible
to write code that communicates over a network, without understanding the hardwareand software technologies that are used to transfer data from one application to another
It may seem that once a programmer masters the interface, no further knowledge of working is needed However, network programming is analogous to conventional pro-gramming Although a conventional programmer can create applications without under-standing compilers, operating systems, or computer architecture, knowledge of theunderlying systems can help a programmer create more reliable, correct, and efficientprograms Similarly, knowledge of the underlying network system allows a program-mer to write better code The point can be summarized:
net-A programmer who understands the underlying network mechanisms
and technologies can write network applications that are faster, more
reliable, and less vulnerable.
1.3.2 Data Communications
The term data communications refers to the study of low-level mechanisms and
technologies used to send information across a physical communication medium, such
as a wire, radio wave, or light beam Data communications, which focuses on ways touse physical phenomena to transfer information, is primarily the domain of ElectricalEngineering Engineers design and construct a wide range of communications systems.Many of the basic ideas that engineers need have been derived from the properties ofmatter and energy that have been discovered by physicists For example, we will seethat the optical fibers used for high-speed data transfer rely on the properties of lightand its reflection at a boundary between two types of matter
Because it deals with physical concepts, data communications may seem somewhatirrelevant to our understanding of networking In particular, because many of the termsand concepts refer to physical phenomena, the subject may only seem useful for en-gineers who design low-level transmission facilities For example, modulation tech-
Trang 39niques that use physical forms of energy, such as electromagnetic radiation, to carry formation appear to be irrelevant to the design and use of protocols However, we willsee that several key concepts that arise from data communications influence the design
in-of communication protocols In the case in-of modulation, the concept in-of bandwidth lates directly to network throughput
re-As a specific case, data communications introduces the notion of multiplexing thatallows information from multiple sources to be combined for transmission across ashared medium and later separated for delivery to multiple destinations We will seethat multiplexing is not restricted to physical transmission — most protocols incorporatesome form of multiplexing Similarly, the concept of encryption introduced in datacommunications forms the basis of most network security Thus, we can summarize theimportance:
Although it deals with many low-level details, data communications
provides a foundation of concepts on which the rest of networking is
built.
1.3.3 Packet Switching And Networking Technologies
In the 1960s, a new concept revolutionized data communications: packet switching.Early communication networks had evolved from telegraph and telephone systems thatconnected a physical pair of wires between two parties to form a communication circuit.Although mechanical connection of wires was being replaced by electronic switches, theunderlying paradigm remained the same: form a circuit, and then send informationacross the circuit Packet switching changed networking in a fundamental way, andprovided the basis for the modern Internet: instead of forming a dedicated circuit, pack-
et switching allows multiple senders to transmit data over a shared network Packetswitching builds on the same fundamental data communications mechanisms as thephone system, but uses the underlying mechanisms in a new way Packet switchingdivides data into small blocks, called packets, and includes an identification of the in-tended recipient in each packet Devices located throughout the network each have in-formation about how to reach each possible destination When a packet arrives at one
of the devices, the device chooses a path over which to send the packet so the packeteventually reaches the correct destination
In theory, packet switching is straightforward However, many designs are ble, depending on the answers to basic questions How should a destination be identi-fied, and how can a sender find the identification of a destination? How large should apacket be? How can a network recognize the end of one packet and the beginning ofanother packet? If many computers are sending over a network, how can they coordi-nate to ensure that each receives a fair opportunity to send? How can packet switching
possi-be adapted to wireless networks? How can packet switching technologies possi-be designed
to meet various requirements for speed, distance, and economic cost? Many answershave been proposed, and many packet switching technologies have been created In
Trang 40fact, when one studies packet switching networks, a fundamental conclusion can bedrawn:
Because each network technology is created to meet various
require-ments for speed, distance, and economic cost, many packet switching
technologies exist Technologies differ in details such as the size of
packets and the method used to identify a recipient.
1.3.4 Internetworking With TCP/IP
In the 1970s, another revolution in computer networking arose: the concept of anInternet Many researchers who investigated packet switching looked for a single pack-
et switching technology that could handle all needs In 1973, Vinton Cerf and RobertKahn observed that no single packet switching technology would satisfy all needs, espe-cially because it would be possible to build low-capacity technologies for homes or of-fices at extremely low cost The solution was to stop trying to find a single best solu-tion, and instead, explore interconnecting many packet switching technologies into afunctioning whole They proposed to develop a set of standards for such an intercon-
nection, and the resulting standards became known as the TCP/IP Internet Protocol
Suite (usually abbreviated TCP/IP) The concept, now known as internetworking, is
extremely powerful It provides the basis of the global Internet, and forms an importantpart of the study of computer networking
One of the primary reasons for the success of TCP/IP standards lies in their ance of heterogeneity Instead of attempting to dictate details about packet switchingtechnologies, such as packet sizes or the method used to identify a destination, TCP/IPtakes a virtualization approach that defines a network-independent packet and anetwork-independent identification scheme, and then specifies how the virtual packetsare mapped onto each underlying network
toler-Interestingly, TCP/IP’s ability to tolerate new packet switching networks is a jor motivation for the continual evolution of packet switching technologies As the In-ternet grows, computers become more powerful and applications send more data, espe-cially photos and video To accommodate increases in use, engineers invent new tech-nologies that can transmit more data and process more packets in a given time As theyare invented, new technologies are incorporated into the Internet with extant technolo-gies That is, because the Internet tolerates heterogeneity, engineers can experimentwith new networking technologies without disrupting the existing networks To sum-marize:
ma-The Internet is formed by interconnecting multiple packet switching
networks Internetworking is substantially more powerful than a
sin-gle networking technology because the approach permits new
technol-ogies to be incorporated at any time without requiring the wholesale
replacement of old technologies.