throbber
Kirkland & Ellis LLP Library
`
`IIINillllllli'IIIII'IHIIIII
`
`5 0628 01267148 0
`
`Computer Networking
`
`77 Top-Down Approach Aatarinp' the internet
`
`James F. Kurose ♦ Keith W. Ross
`
`Epic Games Ex. 1014
`Page 1
`
`

`

`Senior Acquisitions Editor
`Assistant Editor
`Production Supervisor
`Art Editor
`Executive Marketing Manager
`Composition
`Technical Art
`Copy editor
`Proofreader
`Cover Design
`Interior Design
`Design Manager
`Cover Image
`
`Susan Hartman
`Lisa Kalner
`Patty Malitani
`Helen Recbenacker
`Michael Hirsch
`Pre-Press Company, Inc.
`PD & PS
`Roberta Lewis
`Holly McLean Aldis
`Joyce Cosentino
`Delgado Design
`Regina Hagen
`© 1999 PhotoDisc, Inc.
`
`Access the latest information about Addison-Wesley titles from our World Wide Web site:
`http://www.awl.com/cs
`
`The programs and applications presented in this book have been included for their instructional
`value. They have been tested with care, but arc not guaranteed for any particular purpose. The
`publisher does not offer any warranties or representations, not does it accept any liabilities with
`respect to the programs or applications.
`
`Library of Congress Cataloging-in-Publication Data
`Ross, Keith W„ 1956-
`Computer networking: a top-down approach featuring the Internet I Keith W. Ross,
`James F. Kurose.
`p. cm.
`Includes bibliographic references and index
`ISBN 0-201-47711-4
`1. Internet (Computer network) I. Kurose, James E
`TK5105.875.157 R689 2001
`004.6—dc21
`
`00-025295
`
`Copyright © 2001 by Addison Wesley Longman, Inc.
`
`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 the prior written permission of the publisher. Printed in the United States of America.
`
`2 3 4 5 6 7 8 9 10-MA-0201
`
`Epic Games Ex. 1014
`Page 2
`
`

`

`Computer
`Networks and
`the Internet
`
`1.1 ♦ What Is the Internet?
`
`In this book we use the public Internet, a specific computer network (and one which
`probably most readers have used), as our principle vehicle for discussing computer
`networking protocols. But what is the Internet? We would like to be able to give you
`a one-sentence definition of the Internet, a definition that you can take home and
`share with your family and friends. Alas, the Internet is very complex, both in terms
`of its hardware and software components, as well as in the services it provides.
`
`1.1.1 A Nuts and Bolts Description
`Instead of giving a one-sentence definition, let’s try a more descriptive approach.
`There are a couple of ways to do this. One way is to describe the nuts and bolts of
`the Internet, that is, the basic hardware and software components that make up the
`Internet. Another way is to describe the Internet in terms of a networking infrastruc­
`ture that provides services to distributed applications. Let’s begin with the nuts-and-
`bolts description, using Figure 1.1 to illustrate our discussion.
`The public Internet is a world-wide computer network, that is. a network that
`interconnects millions of computing devices throughout the world. Most of these
`computing devices are traditional desktop PCs, Unix-based workstations, and so
`
`1
`
`Epic Games Ex. 1014
`Page 3
`
`

`

`2
`
`CHAPTER I ■ Computer Networks and the Internet
`
`Figure 1.1 ♦ Some pieces of the Internet
`
`called servers that store and transmit information such as Web (WWW) pages and
`e-mail messages. Increasingly, nontraditional computing devices such as Web TVs,
`mobile computers, pagers, and toasters are being connected to the Internet. (Toast­
`ers are not the only rather unusual devices to have been hooked up to the Internet;
`see the The Future of the Living Room [Greenberg 1997].) In the Internet jargon, all
`of these devices are called hosts or end systems. The Internet applications with
`
`Epic Games Ex. 1014
`Page 4
`
`

`

`1.1 ■ What Is the Internet?
`
`3
`
`which many of us are familiar, such as the Web and e-mail, are network applica­
`tion programs that run on such end systems. We will look into Internet end systems
`in more detail in Section 1.3 and then delve deeply into the study of network appli­
`cations in Chapter 2.
`End systems, as well as most other “pieces” of the Internet, run protocols that
`control the sending and receiving of information within the Internet. TCP (the
`Transmission Control Protocol) and IP (the Internet Protocol) are two of the most
`important protocols in the Internet. The Internet’s principal protocols are collec­
`tively known as TCP/IP. We begin looking into protocols in Section 1.2. But that’s
`just a start—much of this book is concerned with computer network protocols!
`End systems are connected together by communication links. We’ll see in
`Section 1.5 that there are many types of communication links. Links are made up
`of different types of physical media, including coaxial cable, copper wire, fiber
`optics, and radio spectrum. Different links can transmit data al different rates. The
`link transmission rate is often called the link bandwidth and is typically measured
`in bits/second.
`Usually, end systems are not directly attached to each other via a single com­
`munication link. Instead, they arc indirectly connected to each other through inter­
`mediate switching devices known as routers. A router takes information arriving on
`one of its incoming communication links and then forwards that information on one
`of its outgoing communication links. The IP protocol specifies the format of the
`information that is sent and received among routers and end systems. The path that
`transmitted information takes from the sending end system, through a series of com­
`munications links and routers, to the receiving end system is known as a route or
`path through the network. We introduce routing in more detail in Section 1,4 and
`study the algorithms used to determine routes, as well as the internal structure of a
`router itself, in Chapter 4.
`Rather than provide a dedicated path between communicating end systems, the
`Internet uses a technique known as packet switching that allows multiple commu­
`nicating end systems to share a path, or parts of a path, al the same time. The earli­
`est ancestors of the Internet were the first packet-switched networks.
`The Internet is really a network of networks. That is. the Internet is an intercon­
`nected set of privately and publicly owned and managed networks. Any network
`connected to the Internet must run the IP protocol and conform to certain naming
`and addressing conventions. Other than these few constraints, however, a network
`operator can configure and run its network (that is, its little piece of the Internet)
`however it chooses. Because of the universal use of the IP protocol in the Internet,
`the IP protocol is sometimes referred to as the Internet dial tone.
`The topology of the Internet, that is, the structure of the interconnection among
`the various pieces of the Internet, is loosely hierarchical. Roughly speaking, from
`bottom-to-lop. the hierarchy consists of end systems connected to local Internet
`service providers (ISPs) though access networks. An access network may be a
`so-called local area network within a company or university, a dial telephone line
`
`Epic Games Ex. 1014
`Page 5
`
`

`

`4
`
`CHAPTER 1 ■ Computer Networks nnd the Internet
`
`with a modem, or a high-speed cable-based or phone-based access network. Local
`ISPs are in turn connected to regional ISPs, which are in turn connected to national
`and international ISPs. The national and international ISPs are connected together at
`the highest tier in the hierarchy. New tiers and branches (that is, new networks, and
`new networks of networks) can be added just as a new piece of Lego can be attached
`to an existing Lego construction, hi the first half of 1996, approximately 40,000 new
`networks were added to the Internet [Network 1996] -an astounding growth rate.
`At the technical and developmental level, the Internet is made possible through
`creation, testing, and implementation of Internet standards. These standards are
`developed by the Internet Engineering Task Force (IETF). The IETF standards doc­
`uments are called RFCs (request for comments). RFCs started out as general re­
`quest for comments (hence the name) to resolve architecture problems that faced the
`precursor to the Internet. RFCs, though not formally standards, have evolved to the
`point where they are cited as such. RFCs tend to be quite technical and detailed.
`They define protocols such as TCP, IP, HTTP (for the Web), and SMTP (for open­
`standards e-mail). There are more than 2,000 different RFCs.
`The public Internet (that is. the global network of networks discussed above) is
`the network that one typically refers to as the Internet. There are also many private
`networks, such as certain corporate and government networks, whose hosts are not
`accessible from (that is, they cannot exchange messages with) hosts outside of that
`private network. These private networks are often referred to as intranets, as they
`often use the same Internet technology (for example, the same types of host, routers,
`links, protocols, and standards) as the public Internet.
`
`1.1.2 A Service Description
`The preceding discussion has identified many of the pieces that make up the Inter­
`net. Let’s now leave the nuts-and-bolts description and take a more abstract, service-
`oriented view:
`
`♦ I he Internet allows distributed applications running on its end systems to ex­
`change data with each other. These applications include remote login, file trans­
`fer. electronic mail, audio and video streaming, real-time audio and video
`conferencing, distributed games, the World Wide Web, and much, much more
`[AT&T Apps 1998], It is worth emphasizing that the Web is not a separate net­
`work but rather just one of many distributed applications that use the communi­
`cation services provided by the Internet, The Web could also run over a network
`besides the Internet. One reason that the Internet is the communication medium
`of choice for the Web, however, is that no other existing packet-switched network
`connects more than 43 million [Network 1999] computers together and has over
`100 million users [Almanac 1998], (By the way, determining the number of com­
`puters hooked up to the Internet is a very difficult task, as no one is responsible
`for maintaining a list of who's connected. When a new network is added to the
`Internet, its administrators do not need to report which end systems are con­
`
`Epic Games Ex. 1014
`Page 6
`
`

`

`1.1 ■ What Is the Internet?
`
`5
`
`nected to that network. Similarly, an exiting network does not report its changes
`in connected end systems to any central authority.)
`* The Internet provides two services to its distributed applications: a connection-
`oriented service and a connectionless service. Loosely speaking, connection-
`oriented service guarantees that data transmitted from a sender to a receiver will
`eventually be delivered to the receiver in order and in its entirety. Connectionless
`service does not make any guarantees about eventual delivery. Typically, a dis­
`tributed application makes use of one or the other of these two services and not
`both. We examine these two different services in Section 1.3 and in great detail
`in Chapter 3.
`♦ Currently, the Internet does not provide a service that makes promises about
`how long it will take to deliver the data from sender to receiver. And except for
`increasing your access bit rale to your Internet service provider, you currently
`cannot obtain better service (for example, shorter delays) by paying more—
`a state of affairs that some (particularly Americans!) find odd. We’ll take a look
`at state-of-the art Internet research that is aimed at changing this situation in
`Chapter 6.
`
`Our second description of the Internet—in terms of the services it provides to
`distributed applications—is a nontraditional, but important, one. Increasingly, ad­
`vances in the nuts-and-bolts components of the Internet are being driven by the needs
`of new applications. So it’s important to keep in mind that the Internet is an infra­
`structure in which new applications are being constantly invented and deployed.
`We have given two descriptions of the Internet, one in terms of its hardware and
`software components, the other in terms of the services it provides to distributed ap­
`plications. But perhaps you are still confused as to what the Internet is. What is
`packet switching, TCP/IP, and connection-oriented service? What are routers? What
`kinds of communication links are present in the Internet? What is a distributed ap­
`plication? What does the Internet have to do with children’s toys? If you feel a bit
`overwhelmed by all of this now, don’t worry—the purpose of this book is to intro­
`duce you to both the nuts and bolts of the Internet, as well as the principles that gov­
`ern how and why it works. We will explain these important terms and questions in
`the subsequent sections and chapters.
`
`1.1.3 Some Good Hyperlinks
`As every Internet researcher knows, some of the best and most accurate information
`about the Internet and its protocols is not in hard-copy books, journals, or magazines.
`The best stuff about the Internet is in the Internet itself! Of course, there’s really too
`much material to sift through, and sometimes the gems are few and far between.
`Below, we list a few generally excellent Web sites for network- and Internet-related
`material. Throughout the book, we will also present links to relevant, high quality
`URLs that provide background, original, or advanced material related to the particular
`
`Epic Games Ex. 1014
`Page 7
`
`

`

`6 CHAPTER 1 ■ Computer Networks and the Internet
`
`topic under study. Here is a set of key links that you may want to consult while you
`proceed through this book:
`
`: The IETF is an
`♦ Internet Engineering Task Force (IETF),
`http://www.ictf.org
`open international community concerned with the development and operation of
`the Internet and its architecture. The IETF was formally established by the Inter­
`, in 1986. The IETF meets
`net Architecture Board (1AB).
`http://www.isi.edu/iab
`three times a year; much of its ongoing work is conducted via mailing lists by
`working groups. Typically, based upon previous IETF proceedings, working
`groups will convene at meetings to discuss the work of the IETF working groups.
`http://www.isoc.org
`The IETF is administered by the Internet Society,
`, whose
`Web site contains lots of high-quality. Internet-related material.
`> The World Wide Web Consortium (W3C),
`http://www.w3.org/Consortium
`:
`The W3C was founded in 1994 to develop common protocols for the evolution
`of the World Wide Web. This is an outstanding site with fascinating information
`on emerging Web technologies, protocols, and standards.
`> The Association for Computing Machinery (ACM),
`, and the
`http://www.acm.org
`Institute of Electrical and Electronics Engineers (IEEE),
`:
`http://www.ieee.org
`These are the two main international professional societies that have technical
`conferences, magazines, and journals in the networking area. The ACM Special
`Interest Group in Data Communications (SIGCOMM),
`http://www.acm.org/
`
`sigcomm, the IEEE Communications Society,
`, and the
`http://www.comsoc.org
`. arc the groups within these
`http://www.compiiter.org
`IEEE Computer Society,
`bodies whose efforts are most closely related to networking.
`♦ Data communications tutorials from the online magazine Data Communications,
`: One of the belter magazines for data communications
`http://www.data.com
`technology. The site includes many excellent tutorials.
`: You may be wondering
`♦ Media History Project,
`http://www.mediahistory.com
`how the Internet got started. Or you may wonder how electrical communications
`got started in the first place. And you may even wonder about what preceded
`electrical communications! Fortunately, the Web contains an abundance of ex­
`cellent resources available on these subjects. This site promotes the study of me­
`dia history from petroglyphs to pixels. Il covers the history of digital media, mass
`media, electrical media, print media, and even oral and scribal culture.
`
`1.2 ♦ What Is a Protocol?
`
`Now that we’ve got a bit of a feel for what the Internet is, let’s consider another im­
`portant buzzword in computer networking: “protocol.” What is a protocol? What
`does a protocol rfo? How would you recognize a protocol if you met one?
`
`Epic Games Ex. 1014
`Page 8
`
`

`

`1.2 ■ What 1$ a Protocol?
`
`7
`
`1.2.1 A Human Analogy
`It is probably easiest to understand the notion of a computer network protocol by
`first considering some human analogies, since we humans execute protocols all of
`the time. Consider what you do when you want to ask someone for the time of day.
`A typical exchange is shown in Figure 1.2. Human protocol (or good manners, at
`least) dictates that one first offers a greeting (the first "Hi” in Figure 1.2) to initiate
`communication with someone else. The typical response to a “Hi” message (at least
`outside of New York City) is a returned "Hi” message. Implicitly, one then takes a
`cordial “Hi” response as an indication that one can proceed ahead and ask for the
`time of day. A different response to the initial "Hi” (such as “Don't bother me!” or
`“I don’t speak English,” or an unprintable reply that one might receive in New York
`City) might indicate an unwillingness or inability to communicate. In this case, the
`human protocol would be to not ask for the time of day. Sometimes one gets no re­
`sponse at all to a question, in which case one typically gives up asking that person
`for the time. Note that in our human protocol, there are specific messages ive send,
`and specific actions we take in response to the received reply messages or other
`events (such as no reply within some given amount of time). Clearly transmitted and
`received messages, and actions taken when these messages are .sent or received or
`other events occur, play a central role in a human protocol. If people run different
`protocols (for example, if one person has manners but the other does not, or if one
`
`Figure 1.2 + A human protocol and a computer network protocol
`
`Epic Games Ex. 1014
`Page 9
`
`

`

`8 CHAPTFN 1 a Computer Networks and the Internet
`
`understands the concept of lime and the other does not) the protocols do not interop­
`erate and no useful work can he accomplished, The same is true in networking—it
`takes two (or more) communicating entities running the same protocol in order to
`accomplish a task.
`Let's consider a second human analogy. Suppose you’re in a college class
`(a computer networking class, for example!). The teacher is droning on about proto­
`cols and you’re confused. The teacher stops to ask, “Are there any questions?” (a
`message that is transmitted to, and received by, all students who are not sleeping).
`You raise your hand (transmitting an implicit message to the teacher). Your teacher
`acknowledges you with a smile, saying “Yes . .(a transmitted message encourag­
`ing you to ask your question—teachers love to be asked questions) and you then ask
`your question (that is, transmit your message to your teacher). Your teacher hears
`your question (receives your question message) and answers (transmits a reply to
`you). Once again, we see that the transmission and receipt of messages, and a set of
`conventional actions taken when these messages are sent and received, are at the
`heart of this question-aod-answer protocol.
`
`1.2.2 Network Protocols
`A network protocol is similar to a human protocol, except that (he entities exchang­
`ing messages and taking actions are hardware or software components of a com­
`puter network, components that we will study shortly in the following sections.
`All activity in the Internet that involves two or more communicating remote entities
`is governed by a protocol. Protocols in routers determine a packet’s path from
`source to destination; hardware-implemented protocols in the network interface
`cards of two physically connected computers control the flow of bits on the “wire”
`between the two computers; a congestion-control protocol controls the rate at which
`packets are transmitted between sender and receiver. Protocols arc running every­
`where in the Internet, and consequently much of this book is about computer net­
`work protocols,
`As an example of a computer network protocol with which you are probably
`familiar, consider what happens when you make a request to a Web server, that is.
`when you type in the URL of a Web page into your Web browser. The scenario is
`illustrated in rhe right half of Figure 1.2. First, your computer will send a “connec­
`tion request” message to the W'eb server and wait for a reply. The Web server will
`eventually receive your connection request message and return a "connection reply”
`message. Knowing that it is now OK to request the Web document, your computer
`then sends the name of the Web page it wants to fetch from that Web server in a
`“get” message. Finally, the Web server returns the contents of the Web document to
`your computer.
`Given the human and networking examples above, the exchange of messages
`and the actions taken when these messages are sent and received are the key defin­
`ing elements of a protocol:
`
`Epic Games Ex. 1014
`Page 10
`
`

`

`1.3 ■ The Network Edge
`
`9
`
`,4 protocol defines the formal and the order of messages exchanged between
`two or more communicating entities, as well as the actions taken on the trans­
`mission and/or receipt of a message or other event.
`
`The Internet, and computer networks in general, make extensive use of pro­
`tocols. Different protocols are used to accomplish different communication tasks.
`As you read through this book, you will learn that some protocols arc simple and
`straightforward, while others are complex and intellectually deep. Mastering the
`field of computer networking is equivalent to understanding the what. why. and how
`of networking protocols,
`
`1.3 4 The Network Edge
`
`In the previous sections we presented a high-level description of the Internet and
`networking protocols. We are now going to delve a bit more deeply into the compo­
`nents of the Internet. We begin in this section al the edge of network and look at the
`components with which we are most familiar—the computers (for example. PC’s and
`workstations) that we use on a daily basis. In the next section we will move from the
`network edge to the network core and examine switching and routing in computer
`networks. Then in Section 1.5 we will discuss the actual physical links that carry the
`signals sent between the computers and the switches.
`
`1.3.1 End Systems, Clients, and Servers
`In computer networking jargon, the computers that we use on a daily basis are often
`referred to as hosts or end systems. They are referred to as hosts because they host
`(run) application-level programs such as a Weh browser or server program, or an
`e-mail program. They are also referred to as end systems because they sit at the edge
`of the Internet, as shown in Figure 1.3. Throughout this book we will use the terms
`hosts and end systems interchangeably: that is. host — end system.
`Hosts are sometimes further divided into two categories: clients and servers. In­
`formally. clients often tend to be desktop PCs or workstations, whereas servers are
`more powerful machines. But there is a more precise meaning of a client and a server
`in computer networking. In the so-called client/server model, a client program run­
`ning on one end system requests and receives information from a server running on
`another end system. Studied in detail in Chapter 2. this client/server model is un­
`doubtedly the most prevalent structure for Internet applications. The Web. e-mail, file
`transfer, remote login (for example, Telnet), newgroups. and many other popular ap­
`plications adopt the client/server model. Since a client typically rims on one com­
`puter and the server tuns on another computer, client/server Internet applications arc.
`
`Epic Games Ex. 1014
`Page 11
`
`

`

`10 CHAPTER I ■ Computer Networks and the Internet
`
`Figure 1.3 ♦ End-system interaction
`
`by definition, distributed applications. The client and the server interact with each
`other by communicating (that is, sending each other messages) over the Internet. At
`this level of abstraction, the routers, links and other “pieces" of the Internet serve as a
`"black box" that transfers messages between the distributed, communicating compo­
`nents of an Internet application. This is the level of abstraction depicted in Figure 1.3.
`Computers (for example, a PC or a workstation), operating as clients and
`servers, arc the most prevalent type of end system. However, an increasing number
`of alternative devices, such as so-called network computers and thin clients |Thin-
`planet 2000], Web TVs and set top boxes [Mills 1998], digital cameras, and other
`
`Epic Games Ex. 1014
`Page 12
`
`

`

`1.3 ■ The Network Edge 11
`
`devices are being attached to the Internet as end systems. For an interesting discus­
`sion of the continuing evolution of Internet applications, see [AT&T Apps 1998;
`Dertouzos 1999; Lucky 1997].
`
`1.3.2 Connectionless and Connection-Oriented Services
`We have seen that end systems exchange messages with each other according to an
`application-level protocol in order Io accomplish some task. The links, routers, and
`other pieces of the Internet provide the means to transport these messages between the
`end-system applications. Bui what are the characteristics of the communication ser­
`vices that are provided? The Internet, and more generally TCP/IP networks, provide
`two types of services to its applications: connectionless service and connection-
`oriented service. A developer creating an Internet application (for example, an e-mail
`application, a tile transfer application, a Web application, or an Internet phone appli­
`cation) must program the application to use one of these two services. Here, we only
`briefly describe these two services; we discuss them in much more detail in Chapter 3,
`which covers transport layer protocols.
`
`Connection-Oriented Service
`When an application uses the connection-oriented service, the client and the server
`(residing in different end systems) send control packets to each other before sending
`packets with real data (such as e-mail messages). This so-called handshaking proce­
`dure alerts the client and server, allowing them to prepare for an onslaught of pack­
`ets. It is interesting to note that this initial handshaking procedure is similar to the
`protocol used in human interaction. The exchange of‘’Hi s” we saw in Figure 1.2 is
`an example of a human "handshaking protocol" (even though handshaking is not
`literally taking place between the two people). The two TCP messages that are
`exchanged as part of the WWW interaction shown in Figure 1.2 are two of (he three
`messages exchanged when TCP sets up a connection between a sender and receiver.
`The third TCP message (not shown) that forms the final part of the TCP three-way
`handshake (see Section 3.5) is contained in the gel message shown in Figure 1.2.
`Once the handshaking procedure is finished, a connection is said to be estab­
`lished between the two end systems. But the two end systems are connected in a
`very loose manner, hence the terminology connection-oriented. In particular, only
`the end systems themselves are aware of this connection; the packet switches (that
`is, routers) within (he Internet are completely oblivious to the connection. This is
`because a TCP connection consists of nothing more (han allocated resources
`(buffers) and stale variables in the end systems. The packet switches do not main­
`tain any connection-state information,
`The Internet's connection-oriented service comes bundled with several other
`services, including reliable data transfer, flow control, and congestion control. By
`reliable data transfer, we mean that an application can rely on the connection to
`
`Epic Games Ex. 1014
`Page 13
`
`

`

`IS CHAPTER 1 ■ Computer Networks and the Interne!
`
`deliver all of its data without error and in the proper order. Reliability in the Internet
`is achieved through the use of acknowledgments and retransmissions. To gel a pre­
`liminary idea about how the Internet implements the reliable transport service, con­
`sider an application that has established a connection between end systems A and B,
`When end system U receives a packet from A. it sends an acknowledgment; when end
`system A receives the acknowledgment, it knows that the corresponding packet has
`definitely been received. When end system A doesn’t receive an acknowledgment, it
`assumes that the packet it sent was not received by B; it therefore retransmits the
`packet. Flow control makes sure that neither side of a connection overwhelms the
`other side by sending too many packets too fast. Indeed, the application al one side of
`the connection may not be able to process information as quickly as it receives the
`information. Therefore, there is a risk of overwhelming either side of an application.
`The flow-control service forces lhe sending end system to reduce its rate whenever
`there is such a risk. We shall see in Chapter 3 that the Internet implements the llow
`control service by using sender and receiver buffers in the communicating end sys­
`tems. The Internet's congestion-control service helps prevent lhe Internet from en­
`tering a state of gridlock. When a router becomes congested, its buffers can overflow
`and packet loss can occur. In such circumstances. if every pair of communicating end
`systems continues to pump packets into the network as fast as they can, gridlock sets
`in and few packets are delivered to their destinations. The Internet avoids this prob­
`lem by forcing end systems to decrease the rate at which they send packets into lhe
`network during periods of congestion. End systems are alerted to the existence of
`severe congestion when they slop receiving acknowledgments for lhe packets they
`have sent.
`We emphasize here that although the Internet’s connection-oriented service
`comes bundled with reliable data transfer, flow control, and congestion control,
`these three features are by no means essential components of a connection-oriented
`service. A different type of computer network may provide a connection-oriented
`service to its applications without bundling in one or more of these features. Indeed,
`any protocol that performs handshaking between the communicating entities before
`transferring data is a connection-oriented service |lren 1999].
`The Internet's connection-oriented service has a name—TCP (Transmission
`Control Protocol); the initial version of lhe TCP protocol is defined in the Internet
`Request for Comments RFC 793 [RFC 793]. The services that TCP provides to an
`application include reliable transport, flow control, and congestion control. Il is
`important to note that an application need only care about the services that are
`provided; it need not worry about how TCP actually implements reliability, flow
`control, or congestion control. IVe, of course, are very interested in how TCP imple­
`ments these services, and we shall cover these topics in detail in Chapter 3.
`
`Connectionless Service
`There is no handshaking with the Internet's connectionless service. When one side of
`an application wants to send packets to another side of an application, the sending ap­
`
`Epic Games Ex. 1014
`Page 14
`
`

`

`1.4 ■ The Network Core
`
`13
`
`plication simply sends the packets. Since there is no handshaking procedure prior to
`the transmission of the packets, data can be delivered faster. But there are no ac­
`knowledgments either, so a source never knows for sure which packets arrive at the
`destination. Moreover, the service makes no provision for flow control or congestion
`control. The Internet’s connectionless service is provided by UDP (User Datagram
`Protocol); UDP is defined in the Internet Request for Comments RFC 768.
`Most of the more familiar Internet applications use TCP. the Internet's connec­
`tion-oriented service. These applications include Telnet (remote login), SMTP (for
`electronic mail), FTP (for file transfer), and HTTP (for the Web). Nevertheless.
`UDP. the Internet’s connectionless service, is used by many applications, including
`many of the emerging multimedia applications, such as Internet phone, audio-on-
`demand, and video conferencing.
`
`1.4 4 The Network Core
`
`Having examined the end systems and end-end transport service model of the Inter­
`net in Section 1.3. let us now delve more deeply into the “inside” of the network. In
`this section we study the network core—the mesh of routers that interconn

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket