`IP Networks
`Second Edition
`
`DANIEL MINOLI
`EMMA MINOLI
`
`Wiley Publishing, Inc.
`
`
`
`Publisher: Robert Tpsen
`Editor: Margaret Eldridge
`Assistant Editor: Adaobi Obi
`Managing Editor: Angela Smith
`New Media Editor: Brian Snapp
`Text Design & Composition: North Market Street Graphics
`
`Designations used by companies to distinguish their products are often claimed as trade(cid:173)
`marks. In all instances where John Wiley & Sons, Inc., is aware of a daim, the product names
`appear in initial capital or ALL CAPITAL 1..enERS. Readers, however, should contact the appro(cid:173)
`priate companies for more complete information regarding trademarks and registration.
`
`111is text is printed on acid-free paper.(§
`
`Copyright © 2002 by Dan Minoli, Emmanuelle MinoH. All rights reserved.
`
`Published by Wiley Publishing, Inc., l.ndianapolis, Indiana
`
`Published simultaneously in Canada.
`
`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, scanning or
`otherwise, except as permitted under Sections l 07 or 108 of the 1976 United States Copy(cid:173)
`right Act, without either the prior written pennission of the Publisher, or authorization
`through payment of the appropriate peHopy fee to the Copyright Clearance Center, 222
`Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fox (978) 750-4744. Requests to
`the Publisher for permission should be addressed to the Legal Department, Vviley Publishing,
`Inc., 10475 Crosspointe Blvd., Indianapolis, IN 46256, (317) 572-3447, fox (317) 572-4447,
`E-mail: permcoordinator@wiley.com.
`
`This publication is designed to provide accurate and authoritative information in regard to
`the subject matter covered. It is sold with the understanding that the publisher is not
`engaged in professional services. Tf professional advice or other expert assistance is required,
`the services of a competent professional person should be sought.
`
`Library of Congress Catalogillg-i11-Publication Data:
`
`Minoli, Daniel
`Delivering voice over JP networks/ Dan Minoli, Emma Minoli.- 2nd ed.
`p.cm.
`ISBN 0-471-38606-5
`I. Internet telephony. 2. TCP/lP (Computer network protocol). 3. Digital telephone
`systems. 4. Computer networks. 5. Data transmission sytems. T. Minoli, Emma. Tl. Title.
`
`TKS105.8865 .M57 2002
`62 l.385-<lc21
`
`2002071368
`W'iley also publishes its books in a variety of electronk formats. Some content that appears in
`print may not be available in electronic versions. For more information about Wiley product~,
`visit our web site at IA>\Vw.wiley.com.
`
`Printed in the United States of America.
`
`10 9 8 7 6 5 4 3 2 I
`
`
`
`Contents
`
`xiii
`PREFACE
`ACT<NOI-VLEDGMENT
`A.BOUT THE AUTI-!ORS
`
`XV
`xvii
`
`1
`
`Introduction and Motivation
`Chapter 1:
`J
`1.1
`INTRODUCTION
`1.2 DRIVERS FOR VOICE OVER IP
`6
`12
`THE NEGATfVE DRIVERS
`1.3 APPROACHES FOR IP-BASED VOICE SYSTEMS
`15
`VOICE SERVERS APPROACH
`IPVO!CEAND VIDEO PHONES
`J .4 THE FUTURE
`18
`18
`REFERENCES
`
`18
`
`14
`
`An Overview of IP, IPOATM, MPLS,
`21
`
`Chapter 2:
`and RTP
`2.1
`2.2
`
`21
`lNTRODUCTfON
`24
`INTERNET PROTOCOL
`THE ROLE. OF THE IP
`IP ROUTING
`26
`IP DATAGRAMS
`29
`SUPPORT OF V0lCE AND VroEO IN ROUTERS
`IP VERSION 6 (IPv6)
`33
`36
`2.3
`IP OVER ATM (IP OATM)
`2.4 BASIC SYNOPSIS OF MPLS
`39
`MPLS FORWARDING/LABEL-SWITCHING MECHANISM
`43
`MPLS LABEL-DISTRIBlJT!ON MECHANISM
`2.5 REAL-TIME TRANSPORT PROTOCOL (RTP)
`45
`so
`2.6 RTP CONTROL PROTOCOL (RTCP)
`2. 7 STREAM CONTROL TRANSMISSION PROTOCOL (SCTP)
`
`24
`
`32
`
`41
`
`52
`
`V
`
`
`
`54
`2.8 ATM QoS MECHANISMS
`QUALITY OF SERVICE PARAMETERS
`57
`QoS CLASSES
`59
`REFERENCES
`61
`NOTES
`
`56
`
`Chapt er 3:
`3.1
`
`Issues in Packet Voice Communication
`63
`
`INTRODUCTION
`64
`SCOPE
`SUMMARY OF RESULTS
`66
`3.2 TRAFFIC MODELS
`66
`INTRODUCTION
`66
`SPEECH EVENTS
`67
`SPEAKER MODELS
`CALL ORIGINATION MODEL
`3.3 PERFORMANCE CRITERIA
`74
`RESULTS OF SUBJECTIVE STUDIES
`76
`SMOOTHNESS CRITERIA
`3.4 LINK MODEL
`78
`79
`INTRODUCTION
`MODEL DESCRIPTION
`3.5 RESULTS
`84
`PROPERTIES OF THE DELAY DISTRIBUTION
`86
`FINITE-BUFFER CASE
`EFFECT OF SPEECH MODELS
`OPTIMAL PACKET LENGTH
`92
`'fRANSlENT BEHAVIOR
`3.6 CONCLUSION
`95
`96
`REFERENCES
`
`65
`
`79
`
`72
`
`7 4
`
`84
`
`88
`90
`
`Chapter 4: Voice Technologies for Packet-Based
`Voice Applications
`101
`4.1
`101
`INTRODUCTION
`GENERAL OVERVIEW OF SPEECH TECHNOLOGY
`102
`WAVEFORM CODING
`VOCODJNG (ANALYSIS/SYNTHESIS) IN THE FREQUENCY DoMAJN
`4.2 G.727: AD PCM FOR PACKET NETWORK APPLICATIONS
`111
`111
`INTRODUCTION
`ADPCM ENCODER PRlNCIPLES
`ADPCM DECODER PRINCIPLES
`
`114
`121
`
`101
`
`63
`
`107
`
`
`
`4.3 EXAMPLE OF APPLICATION
`123
`REFERENCES
`123
`NOTES
`
`123
`
`5.2
`
`Chapter 5: Technology and Standards for Low-Bit-Rate
`Vocoding Methods
`125
`5.1
`125
`INTRODUCTION
`127
`OVERVJEW
`128
`VOCODERATIRIBUTES
`LINEAR PREDJC.TJON ANALYSIS-BY-SYNTHESIS (LPAS) CODING
`INTRODUCfl0NTO G.729 AND G.723.1
`133
`133
`DIFFERENTIATIONS
`STANDARDIZATION PROCESS
`STANDARDIZATION INTERVAL
`5.3 G.723.1
`136
`136
`INTRODUCTION
`ENCODER/DECODER
`5.4 G.728
`138
`LD-CELP ENCODER
`LD-CELP DECODER
`5.5 G.729
`140
`141
`ENCODER
`143
`DECODER
`5.6 EXAMPLE OF APPLICATIONS
`145
`H.263 VIDEO CODING FOR Low-BIT-RATE COlvHvfUN!CATION
`H.324 MULTIMEDIA COMMUNICATJON
`146
`H.323 MULTIMEDIA CoMMUNICATIONS STANDARD FOR LANs AND ENTERPRISE
`148
`NETWORKS
`150
`REFERENCES
`151
`NOTES
`
`134
`] 35
`
`136
`
`139
`140
`
`130
`
`145
`
`153
`
`Chapter 6: Voice over IP and the Internet
`6.1
`153
`INTRODUCTION
`6.2
`157
`IP/INTERNET BACKGROUND
`15 7
`INTERNET PROTOCOL SUITE
`157
`THE INTERNET
`6.3 VOICE TRANSMISSION AND APPROACHES IN ATM, FRAME RELAY, AND IP
`162
`ATM
`FRAME RELAY
`164
`IP
`
`164
`
`162
`
`
`
`165
`
`ITU-T H.323 GROUP OF STANDARDS
`STREAMlNG Aurno
`166
`l 67
`6.4 QoS PROBLEMS AND SOLUTIONS
`6.5 PROTOCOLS FOR QoS SUPPORT FOR AUDIO AND VIDEO APPLICATIONS
`RSVP APPLICATIONS
`169
`171
`IP MULTICAST
`INTERNET TELEPHONY SERVERS {ITSs)
`6.6
`6.7 THE VOICE OVER JP/INTERNET MARKET
`6.8 VOIP REGULATORY ISSUES
`177
`6.9 CONCLUSION
`180
`REFERENCES
`181
`NOTES
`181
`
`172
`177
`
`169
`
`183
`
`187
`
`189
`
`196
`
`209
`
`215
`
`Chapter 7: Signaling Approaches
`7 .1
`INTRODUCTION
`183
`7.2 SIGNALING IN C!Rcurr-SWITCHED NETWORKS
`7.3 H.323 STANDARDS
`189
`fuNCTJONAL ELEMENTS
`H.323 BASICS
`190
`EXAMPLE OF SIGNALING
`7.4 MGCP
`202
`7.5 SIP
`207
`SIP PROTOCOL COMPONENTS
`SIP-T
`210
`7 .6 OTHER IETF SIGNALING EFFORTS
`PINT AND SPIRITS
`215
`ENUM
`218
`TRIP
`219
`7.7 MEGACO
`219
`221
`7 .8 SIGTRAN PROTOCOLS
`PERFORMANCE CONSIDERATIONS FOR CCSS7 OVER IP
`SECURITY REQUIREMENTS FOR CCSS7 OVER IP
`223
`SCTP USE IN CCSS7
`223
`TRANSPORTING MTP OVER IP
`TRANSPORTING SCCP OVER IP
`7.9 SCTP
`230
`230
`INTRODUCTION
`230
`MOTIVATION
`230
`ARCHITECTURAL VIEW OF SCTP
`FlJNCTIONAL VIEW OF SCTP
`231
`KEY TERMS
`236
`SERIAL NUMBER ARITHMETIC
`
`223
`
`226
`229
`
`236
`
`
`
`239
`SCTP PACKET FORMAT
`SCTP ASSOCIATION STATE DIAGRAM
`260
`ASSOCIATION INITIALIZATION
`262
`USER DATA TRANSFER
`TERMINATION OF AN AssOCIATION
`276
`REFERENCES
`277
`NOTES
`
`258
`
`273
`
`Chapter 8: Quality of Service
`8.1
`279
`INTRODUCT[ON
`8.2 BACKGROUND
`281
`284
`8.3 QoS APPROACHES
`284
`PER-FLOW QoS
`288
`CLASS-BASED QoS
`289
`MPLS-BASED QoS
`TRAFFIC MANAGEMENT/QUEUE MANAGEMENT
`8.4 QoS DETAILS
`294
`294
`IETF CNTSERV APPROACH
`305
`IETF DIFFSERV APPROACH
`ADDITIONAL DETAILS ON QUEUE MANAGEMENT
`326
`CONCLUSION
`8.5 CASE STUDY
`327
`REAL-'DME SERVICE REQUIREMENTS
`330
`TECHNICAL CHALLENGES
`Cisco SOLUTIONS FOR SUPPORTING IP-BASED REAL-TIME SERVICES
`340
`REFERENCES
`342
`NOTES
`
`279
`
`327
`
`29}
`
`320
`
`330
`
`343
`
`Voice over MPLS and Voice over IP
`Chapter 9:
`343
`over MPLS
`9.]
`INTRODUCTION AND BACKGROUND
`9.2 MOTIVATIONS
`344
`349
`9.3 BASIC MPLS FEATURES
`MPLS FORWARDING/LABEL-SWITCHING MECHANISM
`356
`MPLS LABEL-DISTRIBUTION MECHANISM
`358
`OTHER FEATURES
`3 59
`COMPARJSON
`9 .4 QoS CAPABILITIES
`363
`365
`INTRODUCTION
`368
`DETAILS
`
`353
`
`
`
`370
`9.5 VOICE APPLICATIONS
`371
`IP HEADER COMPRESSION
`372
`VOIPOMPLS PROPOSAL
`MPLS FORUM SPECIFICATION
`374
`REFERENCES
`375
`NOTES
`376
`
`377
`
`Chapter 10: Telephone Number Mapping (ENUM)
`10.1
`lNTRODUCTfON
`377
`10.2 BACKGROUND
`379
`10.3
`383
`INTRODUCTION TO ENUM
`ENUM: AN EVOLVING ARCHITECTURE
`DEFINING ENUM APPLICATIONS
`387
`THE ENUM RoAD TO SUCCESS
`389
`] 0.4 SUMMARY OF CAPABILITIES AND ISSUES
`390
`CAPABILITIES
`390
`ADVOCACY
`397
`10.5 Nu1vlBER PORTABILITY
`TYPES OF NP
`400
`SPNP SCHEMES
`401
`405
`DATABASE QVER1ES IN THE NP ENVIRONMEJ\'T
`CALL ROUTING IN THE NP ENVIRONMENT
`408
`NP IMPLEMENTATIONS FOR GEOGRAPHIC E.164 NUMBERS
`NP-ENABLED NUMBER CONSERVATION METHODS
`411
`CONCLUSION
`414
`10.6 E. 164 NUMBERS AND DNS
`INTRODUCTION
`41 7
`41 7
`E.164 NUMBERS AND DNS
`FETCHING UNIFORM RESOURCE ]DENTIFIERS (URls) GIVEN AN E.164 NUMBER
`IANA CONSIDERATIONS
`420
`SECURITY CONSIDERATIONS
`420
`l O. 7 APPENDIX TO THE RFC 2916 SCENARIO
`REFERENCES
`4 22
`NOTES
`424
`
`411
`
`418
`
`398
`
`417
`
`385
`
`4 21
`
`Chapter 11 : Carrier Applications
`1 1. l
`INTRODUCrION AND OPPORTUNITIES
`427
`11.2 WHERE THE ACTION SHOULD BE
`432
`11.3 CARRIER VOICE NETWORKS
`439
`
`427
`
`
`
`·----y _______ ......... ~ ;;&.!. 0 ---.
`
`Contents
`
`458
`
`11.4 DEPLOYMENT AND ISSUES
`446
`450
`WIRELESS NETWORKS
`CABLE TELEPHONY NETWORKS
`l 1. 5 ENTERPRISE APPLICATlONS
`465
`11.6
`INTERNATIONAL OPPORTUNITJES
`11 . 7 EQUIPMENT/VENDOR TRENDS
`4 73
`REFERENCES
`474
`NOTES
`
`466
`469
`
`INDEX
`
`477
`
`
`
`transport portion based on ATM, POS, MPLS, and Ethernet. Media plane protocols
`are covered in this chapter; signaling plane protocols are covered in Chapter 7; and
`QoS protocols are covered in Chapter 8.
`This chapter covers the following issues that will play a role in voice over data
`networks:
`
`• IP and IPv6 [4, 5]
`• IP over ATM
`• MPLS
`• RTP
`• Stream Control Transmission Protocol (SCTP)
`
`2.2
`
`Internet Protocol
`
`This section highlights key IP functionabiJity and capabilities.
`
`The Role of the IP
`TCP/IP is the name for a family of communications protocols used to support
`intemetting in enterprise and interenterprise applications. Protocols include the
`Internet Protocol (IP), the Transmission Control Protocol (TCP), the User Data(cid:173)
`gram Protocol (UDP), and other protocols that support specific tasks, such as
`transferring files between computers, sending mail, or logging into another com(cid:173)
`puter. TCP/IP protocols are normally deployed in layers, with each layer responsi(cid:173)
`ble for a different facet of the communications. Each layer has a different
`responsibility.
`
`1. The link I.ayer (sometimes called the network interface layer) normally
`includes the device driver in the operating system and the corresponding
`network interface card in the computer. Together they handle all the hard(cid:173)
`ware details of physically interfacing with the cable.
`2. The network layer (sometimes called the internet layer) handles the move(cid:173)
`ment of packets in the network. Routing of packets, for example, takes
`place here. IP provides the network layer in the TCP/IP protocol suite.
`3. The transport layer provides a flow of data between two end system hosts
`for the application layer above. In the Internet protocol suite there are two
`transport protocols, TC-P and UDP. TCP provides a reliable flow of data
`between two hosts. It is concerned with such things as partitioning the data
`passed to it from the application into appropriately sized frames for the net(cid:173)
`work layer below, acknowledging received packets, and setting time-outs to
`
`
`
`make certain that the other end acknowledges packets that are sent. Because
`this reliable flow of data is provided by the transport layer, the application
`layer can ignore all those details. UDP, on the other hand, provides a much
`simpler service to the application layer. It sends packets of data called data(cid:173)
`grams from one host to the other, but there is no guarantee that the data(cid:173)
`grams will be delivered to the other end. Any desired reliability must be
`added by the application layer.
`4. The application layer handles the details of the particular application. There
`are many common TCP/IP applications that almost every implementation
`provides:
`• Telnet for remote login
`• The file transfer protocol (FTP)
`• The Simple Mail Transfer Protocol (SMTP) for e-mail
`• The Simple Network Management Protocol (SNMP)
`• Others
`
`In this architecture, TCP is responsible for verifying the correct delivery of
`data from the sender to the receiver. TCP allows a process on one end system to
`reliably Sf'_nd a stream of data to a process on another end system. It is connection(cid:173)
`oriented: Before transmitting data, participants must establish a connection. Data
`can be lost in the intermediate networks. TCP adds support to detect lost data and
`to trigger retransmissions until the data is correctly and completely received.
`IP is responsible for relaying packets of data [protocol data units (PDU)] from
`node to node. IP provides the basis for connectionless best-effort packet delivery
`service. IP's job is to move-specifically to route- blocks of data over each of the
`networks that sit between the end systems that want to communicate. IP provides
`for the carriage of datagrams from a source host to destination hosts, possibly pass(cid:173)
`ing through one or more gateways (routers) and networks in the process. An IP
`protocol data unit ( datagram) is a sequence of fields containing a header and a pay(cid:173)
`load. The header information identifies the source, destination, length, and charac(cid:173)
`teristics of the payload contents. The payload is the actual data. transported. Both
`end system hosts and routers iJ1 an internet are involved in the processing of the IP
`headers. The hosts must create and transmit them and process them on receipt; the
`routers must examine them for the purpose of making routing decisions and mod(cid:173)
`ify them (e.g., update some fields in the header) as the IP packets make their way
`from the source to the destination.
`IP protocols are supported over a variety of underlying media, such as ATM,
`frame relay, dedicated lines, ISDN, Ethernet, DSL, and so forth. As IP networks
`have become ubiquitous, the business community has become sophisticated about
`utilizing IP networks as a cost-effective corporate tool, first in data communica(cid:173)
`tions and now for other real-time applications. Organizations favor networks based
`
`
`
`on IP because of the flexibility and vendor support. IP networks run under the
`most widely used network operating systems; they are scaleable to a large degree;
`and they enjoy extensive implementation across product lines (e.g., in the routers,
`PC clients, server switches, etc.). As noted, a relatively uew IP application now in
`demand is toll-quality, low-bandwidth voice (and fax) transmission over IP net(cid:173)
`works.
`Intranets use the same WWW/HTML/HTTP and TCP/IP technology used for
`the Internet. When the Internet caught on in the early to mid-1990s, planners
`were not looking at it as a way to run their businesses. But just as the action of
`putting millions of computers around the world on the same protocol suite
`fomented the Internet revolution, so connecting islands of information in a corpo(cid:173)
`ration via intranets is now sparking. a corporate-based information revolution.
`Thousands of corporations now have intranets. Across the business world, employ(cid:173)
`ees from engineers to office workers are creating their own home pages and shar(cid:173)
`ing details of their projects with the rest of the company.
`
`IP Routing
`One of the common ways to interconnect LANs and subnetvrorks at this time is
`through the use of routers. Routers are found at the boundary points between two
`logical or physical subnetworks. Routing is a more sophisticated-and, hence, more
`effective- method of achieving intemetworking, as compared to bridging. 1n the(cid:173)
`ory, a router or, more specifically, a network layer relay, can translate between a
`subnetwork with a physical layer protocol Pl, a data link layer protocol DLl, and a
`network layer protocol Nl to a subnet..-.rork with a physical layer protocol P2, a
`data link layer protocol DL2, and a ner....,ork layer protocol N2. In general, how(cid:173)
`ever, a router is used for internetworking t..-.10 networks or subnetworks that use
`the same network layer but have different data link layer protocols [ 6-8] (see Fig(cid:173)
`ure 2.2).
`Routers have become the fundamental and the predominant building technol(cid:173)
`ogy for data internetworking; however, ATM technology will likely impact the
`overall outlook. Routers permit the physical as well as the logical interconnection
`of two networks. Routers support interconnection of LANs over WANs using tra(cid:173)
`ditional as well as new services, including frame relay and ATM. Some routers
`operate directly over synchronous optical network (SONET). They also are uti(cid:173)
`lized to interconnect dissimilar LANs, such as Token Ring to Ethernet. With the
`introduction of Layer 2 S\\7itching, ATM, and/or MPLS, however, the role of
`routers in enterprise networks could change slightly. For example, devices enabling
`connectivity between locations based on router technology may, conceivably, no
`longer be obligatory elements-but the concept of routing (forwarding frames at
`the network layer of the protocol model) will certainly continue to exist. In addi(cid:173)
`tion, routers work well for traditional data applications, but new broadband video
`and multimedia applications need different forwarding treatment, higher through(cid:173)
`put, and tighter QoS control.
`
`
`
`- - - · - - - - - - - - - - - -_ Voice over IP and the_ Internet~-@ "·"' __ _
`
`6.2
`
`IP /Internet Background
`
`Network communications can be categorized into two basic types, as implied in
`Chapter 2: circuit-switched (sometimes called connection-oriented) and packet- or
`fastpacket-switched (these can be connectionless or connection-oriented). Circuit(cid:173)
`switched networks operate by forming a dedicated connection (circuit) between
`two points. In packet-switched networks, data to be transferred across a network is
`segmented into small blocks caUed packets [ also called datagrams or protocol data
`units (PDUs)] that are multiplexed onto high-capacity intermachine connections.
`A packet, which usually contains a few hundred bytes of data, carries identification
`that enables the network hardware to knm,v how to send it forward to the specified
`destination. In frame relay, the basic transfer unit is the data link layer frame; in cell
`relay; this basic unit is the data link layer cell. Services such as frame relay and
`ATM use circuit-switching principles; namely, they use a call setup mechanism
`similar to that of a circuit-switched (ISDN) call. JP has become the de facto stan(cid:173)
`dard connectionless packet network layer protocol for both local area networks
`(LANs) and wide area net,..vorks (WANs). In a connectionless environment there is
`no call setup. Each packet finds its way across the network independently of the
`previous one.
`
`Internet Protocol Suite
`Chapter 2 provided a basic review of the TCP/IP and UDP/JP suite of networking
`protocols. TCP/IP is a family of over 100 data communications protocols used in
`the Internet and in intranets. In addition to the communication functions sup(cid:173)
`ported by TCP ( end-to-end reliability over a connection-oriented session) and IP
`(subnetwork-level routing and fo1vvarding in a connectionless manner), the other
`protocols in the suite support specific application-oriented tasks, for example,
`transferring files between computers, sending mail, or logging into a remote host.
`TCP/IP protocols support layered communication, with each layer responsible for
`a different facet of the communications (as seen in Table 6.2). Some of the VOIP
`applications utilize TCP, while others utilize RTCP and UDP.
`
`The Internet
`The same IP technology now used ex1:ensively in corporate internets is also used in
`(and, in fact, originated from) the Internet. The Jntemet is a global collection of
`interconnected business, government, and education computer networks-in effect,
`a net\.vork of networks. Recently there has been a near-total commercialization of the
`Internet, allowing it to be used for pure-business applications (the original roots of
`the Internet were in the research and education arenas). A person at a computer ter(cid:173)
`minal or personal computer equipped with the proper software communicates
`across the Internet by having the driver place the data in an IP packet and addressing
`
`
`
`Table 6.2 Functionality of the TCP/ IP Suite Layers
`
`Network interface
`layer
`
`Network layer
`(Internet layer)
`
`Transport layer
`
`Application layer
`
`This layer is responsible for accepting and transmitting
`IP datagrams. This layer may consist of a device driver
`( e.g., when the network is a local network to which the
`machine attaches directly) or of a complex subsystem
`that uses its own data link protocol.
`This layer handles communication from one machine to
`the other. It accepts a request to send data from the
`transport layer, along with the identification of the
`destination. It encapsulates the transport layer data
`unit in an IP datagram and uses the datagram routing
`algorithm to determine whether to send the datagram
`directly onto a router. The internet layer also handles
`the incoming datagrams and uses the routing algo(cid:173)
`rithm to determine whether the datagram is to be
`processed locally or be forwarded.
`In this layer the software segments the stream of data
`being transmitted into small data uni ts and passes each
`packet, along with a destination address, to the next
`layer for transmission. The sofuvare adds information
`to the packets, including codes that identify which
`application program sent it, as well as a checksum.
`This layer also regulates the flow of information and
`provides reliable transport, ensuring that data arrives in
`sequence and with no errors.
`At this level, users invoke application programs to
`access available services across the TCP/IP internet.
`The application program chooses the kind of transport
`needed, which can be either messages or stream of
`bytes, and passes it to the transport level.
`
`the packet to a particular destination on the Internet. Communications sofuvare in
`routers in the intervening networks between the source and destination networks
`reads the addresses on packets moving through the Internet and forwards the pack(cid:173)
`ets toward their destinations. TCP guarnntees end-to-end integrity.
`From a thousand or so networks in the mid-l 980s, the Internet has grown to
`an estimated 100 million connected network hosts with about 300 million people
`having access to it (as of 2001). The majority of these Internet users currently live
`in the United States or Europe, but the Internet is expected to have ubiquitous
`global reach over the next few years.
`In 1973, ARPA initiated a research program to investigate techniques and tech(cid:173)
`nologies for interlinking packet networks of various kinds. The objective was to
`develop communication protocols that would allmv nen.,,orked computers to com(cid:173)
`municate transparently across multiple packet nen.,,orks. The project became very
`successful and there was increasing demand to use the network, so the government
`separated military traffic from civilian research traffic, bridging the two by using
`
`