throbber
Internet Core Protocols
`The Definitive Guide
`
`Eric A. Hall
`
`O’REILLY*
`Beijing - Cambridge - Farnham- K6ln- Paris - Sebastopol - Taipei - Tokyo
`
`ROKU EXH. 1002
`
`ROKU EXH. 1002
`
`

`

`1
`
`An Introduction
`to TCP/IP
`
`If you’ve been using TCP/IP-based networking products for any length of time at
`all, you’re probably already aware of how IP addressing, routing, and other funda-
`mental aspects of the Internet family of protocols work, at least from a user’s per-
`spective.
`
`What you probably don’t know—unless you’ve been formally trained in these sub-
`jects—is what makes TCP/IP work from the wire’s perspective, or from the per-
`spective of the applications in use on your network. This chapter provides you
`with an introduction to these viewpoints, providing you with a better understand-
`ing of the nature of the traffic on your network.
`
`A Brief History of the Internet
`Before you can understand how TCP/IP works—or why it works the way it
`does—you first have to understand the origins of the networking protocols and
`the history of the Internet. These subjects provide a foundation for understanding
`the basic design principles behind TCP/IP, which in turn dictate how it is used
`today.
`
`TCP/IP presented a radical departure from the traditional computer networking
`services in use during its development. In the early days of commercial comput-
`ing (the late 1960s), most companies bought a single large system for all of their
`data processing needs. These systems used proprietary networking architectures
`and protocols, which primarily consisted of plugging dumb terminals or line print-
`ers into an intelligent communications controller, each of which used proprietary
`networking protocols to communicate with the central hosts.
`
`Most of the early computer networks used this hierarchical design for their propri-
`etary network protocols and services. As users’ computing requirements expanded,
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`1
`
`ROKU EXH. 1002
`
`

`

`2
`
`Chapter 1: An Introduction to TCP/IP
`
`they rarely bought a different system from a different vendor, but instead added
`new components to their existing platforms or replaced the existing system with a
`newer, larger model. Cross-platform connectivity was essentially unheard of, and
`was not expected. To this day, you still can’t plug an IBM terminal into a DEC sys-
`tem and expect it to work. The protocols in use by those devices are completely
`different from each other.
`
`As the use of computers became more critical to national defense, it became clear
`to the U.S. military in particular that major research centers and institutions needed
`to be able to share their computing resources cooperatively, allowing research
`projects and supercomputers to be shared across organizational boundaries. Yet,
`since each site had different systems (and therefore different networking technolo-
`gies) that were incompatible with the others, it was not possible for users at one
`site to use another organization’s computing services easily. Nor could programs
`easily be ported to run on these different systems, as each of them had different
`languages, hardware, and network devices.
`
`In an effort to increase the sharing of resources, the Advanced Research Projects
`Agency (ARPA) of the Department of Defense (DOD) began coordinating the
`development of a vendor-independent network to tie the major research sites
`together. The need for a vendor-independent network was the first priority, since
`each facility used different computers with proprietary networking technology. In
`1968, work began on a private packet-switched network, which eventually became
`known as ARPAnet.
`
`ARPAnet was the world’s first wide-area packet-switching network, designed to
`allow individual units of data to be routed across the country as independent enti-
`ties. Previous networks had been circuit-switched, involving dedicated end-to-end
`connections between two specific sites. In contrast, the ARPAnet allowed organiza-
`tions to interconnect into a mesh-like topology, allowing data to be sent from one
`site to another using a variety of different routes. This design was chosen for its
`resilience and built-in fault-tolerance: if any one organization were bombed or oth-
`erwise removed from the network, it wouldn’t affect the rest of the organizations
`on the network.
`
`During this same time period, other network providers also began interconnecting
`with the ARPAnet sites, and when these various networks began connecting to
`each other, the term “Internet” came into use. Over the next few years, more orga-
`nizations were added to the ARPAnet, while other networks were also being
`developed, and new network technologies such as Ethernet were beginning to
`gain popularity as well.
`
`All of this led to the conclusion that networking should be handled at a higher
`layer than was allowed by the ARPAnet’s packet-switching topology. It became
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ROKU EXH. 1002
`
`

`

`A Brief Historyof the Internet
`
`3
`
`increasingly important to allow for the exchange of data across different physical
`networks, and this meant moving to a set of networking protocols that could be
`implemented in software on top of any physical
`topology, whether that be a
`packet-switched WAN such as ARPAnet or a local area network (LAN) topology
`such as Ethernet.
`
`TCP/IP to the Rescue
`
`In 1973, work began on the TCP/IP protocol suite, a software-based set of network-
`ing protocols that allowed any system to connect to any other system, using any
`network topology. By 1978, IP version 4 (the same version that we use today) had
`been completed, although it would be another four years before the transition
`away from ARPAnetto IP would begin. Shortly thereafter, the University of Califor-
`nia at Berkeley also began bundling TCP/IP with their freely distributed version of
`Unix, which was a widely used operating system in the research community.
`
`The introduction and wide-scale deployment of TCP/IP represented a major
`ground-shift
`in computer networking. Until
`the introduction of TCP/IP, almost
`every other network topology required that hardware-based network nodes send
`traffic to a central host for processing, with the central host delivering the data to
`the destination node on behalf of the sender. For example, Figure 1-1 shows a
`host-centric networking architecture. In this model, devices are attached to a cen-
`tralized system that coordinates all network traffic. A user at a terminal could not
`even send a screen of text to a printer without first sending the data to the central
`host, which would parse the data and eventually sendit to the printer for printing.
`
`
`
`
`
`Mainframe
`
`a
`
`Network node
`
`
`
`Communications Controller
`
`et
`
`Network node
`
`Figure 1-1. Host-centric networking
`
`
`
`ROKU EXH. 1002
`
`ROKU EXH. 1002
`
`

`

`4
`
`Chapter 1: An Introduction to TCP/IP
`
`But with TCP/IP, each network device was treated as a fully functional, self-aware
`network end-point, capable of communicating with any other device directly,
`without having to talk to a central host first. IP networks are almost anarchic, with
`every device acting as a self-aware, autonomous unit, responsible for its own net-
`work services, as illustrated in Figure 1-2.
`
`
`
`
`
`Mainframe
`
`
`
`Network node
`Network node
`
`
`Figure 1-2. Node-centric networking
`
`This design allowed for application- and resource-sharing on a national scale,
`since a top-down model simply would not work with millions of widely distrib-
`uted devices. In addition, this design also provided reliability in case any part of
`the network was damaged, since a host-based model would simply stop function-
`ing if the central host was destroyed or disabled.
`
`The Internet Today
`
`Overtime, the ARPAnet evolved into an open “network-of-networks” using TCP/IP,
`with educational, commercial, and other organizations connected to each other
`through an interwoven mesh of networks. Today this type of mesh architecture is
`far less common, replaced by a much morestructured hierarchy.
`
`Rather than organizations connecting to each other directly, most organizations
`now connect
`to a local network access provider who routes network traffic
`upwards and outwards to other end-point networks.
`
`Generally speaking, there are only a handful of top-level Internet Service Provid-
`ers (ISPs), each of which provide major interconnection services around the coun-
`try or globe. Most of these firms are telecommunications companies that specialize
`
`ROKU EXH. 1002
`
`ROKU EXH. 1002
`
`

`

`A Brief History of the Internet
`
`5
`
`in large-scale networking (such as long-distance providers like MCI WorldCom and
`Sprint).
`
`Below these top-level carriers are local or regional access providers who offer
`regional access and lower-speed connection services to end users directly (these
`mid-level carriers are sometimes referred to as Internet Access Providers, or
`“IAPs”). This design is represented in Figure 1-3.
`
`National ISPs
`
`Regional IAPs
`
`End-User Nets
`
`Figure 1-3. The hierarchical architecture of the Internet
`
`Visually, the Internet can be thought of as a few major networking companies who
`provide large-scale “backbone” services around the world, followed by a large
`number of secondary providers that resell bandwidth on those networks. At the
`end of the line are the end-leaf organizations that actually generate the traffic that
`crosses these networks.
`
`The Internet, Defined
`
`Simply having a lot of interconnected networks does not by itself mean that you
`have the “Internet.” To “internet” (with a lowercase “i”) means to interconnect net-
`works. You can create an internet of Macintosh networks using AppleTalk and
`some routers, for example. The term “Internet” (with a capital “I”) refers to the
`specific global network of TCP/IP-based systems, originally consisting of ARPAnet
`and the other research networks.
`
`There have been lots of private and public networks that have offered a multi-
`layer network design (private SNA* networks from the 1980s are a good example
`of this). Therefore, the Internet in particular is a collection of networks that sup-
`port host-to-host communications using TCP/IP protocols.
`
`* SNA stands for Systems Network Architecture, a proprietary IBM networking protocol.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ROKU EXH. 1002
`
`

`

`6
`
`Chapter 1: An Introduction to TCP/IP
`
`Under this definition, the network is made up of intelligent end-point systems that
`are self-deterministic, allowing each end-point system to communicate with any
`host it chooses. Rather than being a network where communications are con-
`trolled by a central authority (as found in many private networks), the Internet is
`specifically meant to be a collection of autonomous hosts that can communicate
`with each other freely.
`
`This is an important distinction, and one that is often overlooked. For example,
`many of the private networks have offered mail-delivery services for their custom-
`ers, allowing a user on one network to send email to another user on another net-
`work, but only by going through a predefined mail gateway service. Conversely,
`the Internet allows users to exchange mail directly, without going through a cen-
`tral politburo first. In this regard, the Internet is a collection of self-deterministic,
`autonomous hosts.
`
`Having hosts communicate with each other directly is not enough to make the
`Internet, however. Many networks have offered users the ability to communicate
`directly with other hosts on those networks, and those networks have not been
`considered as parts of the Internet per se. For example, there have been many pri-
`vate DECnet networks that have offered this capability, and Novell offers a similar
`service using IPX today.
`
`The last key criteria is that the Internet is a collection of networks that allows host-
`to-host communications through voluntary adherence to open protocols and pro-
`cedures defined by Internet standards. Therefore, in order for these networks to be
`parts of the Internet, they must also use Internet protocols and standards, allow-
`ing for vendor-neutral networking.
`
`This is perhaps the most important part of the entire definition, since the use of
`consistent protocols and services is what allows the Internet to function at all. For
`example, it is not enough for a private network to allow users to send email mes-
`sages to each other directly. Rather, those users must use the same protocols and
`services to exchange email messages, and those protocols must be defined as
`Internet standards.
`
`TCP/IP’s Architecture
`A key part of understanding the distributed nature of TCP/IP is the realization that
`TCP/IP is a modular family of protocols, providing a wide range of highly seg-
`mented functions. TCP/IP is not a single monolithic protocol, but instead is a col-
`lection of protocols that
`range from application-specific functions like web
`browsing down to the low-level networking protocols like IP and TCP.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ROKU EXH. 1002
`
`

`

`TCP/IP’s Architecture
`
`7
`
`One common tool used for comparing different kinds of protocols is the OSI* Ref-
`erence Model, which is a simplistic breakdown of networking functions from the
`physical wiring up to the applications that run on the network. By comparing
`TCP/IP to the OSI Reference Model, it is easier to understand how each of the
`major protocols interact with each other.
`
`An Introduction to the OSI Reference Model
`
`The OSI Reference Model is a conceptual model that uses seven “layers” to iden-
`tify the various functions provided by a network, and these seven layers can be
`used to compare different protocols using a common framework. Each layer
`within the OSI Reference Model has a very specific function, and each layer
`depends on the other layers in order for the entire model to function properly.
`Each layer only communicates with the layers immediately above or below it. If
`there is a problem at one layer, it is the responsibility of that specific layer to pro-
`vide feedback to the layers surrounding it.
`
`The OSI Reference Model is extremely useful as a tool for discussing various net-
`work services. For example, if we were to look at a simple network service such
`as printing a document to a locally attached printer, we could use the OSI Refer-
`ence Model to determine how this simple task was being achieved. We could also
`use the model to determine how printing over a Novell network was done, or
`how printing over a TCP/IP network was accomplished. Because all three of these
`examples use the same model, they can all be compared to each other even
`though they all use extremely different technologies to achieve the same objective.
`
`Not all networking technologies have seven layers, nor do they all match up to the
`seven layers in the OSI Reference Model exactly. Most of them do not match it
`except in small, specific ways, although all of them can be compared to the model
`with a little bit of thought. This flexibility is what makes it such a popular tool.
`
`The following list briefly describes each of the seven layers and the purpose each
`serve. Remember that this is a conceptual model, with very little direct meaning to
`the real world.
`
`The physical layer
`The physical layer is concerned with the physical wiring used to connect dif-
`ferent systems together on the network. Examples include serial and parallel
`cables, Ethernet and Token Ring cabling, telephone wiring, and even the spe-
`cific connectors and jacks used by these cabling systems. Without strictly stan-
`dardized definitions for
`the cabling and connectors, vendors might not
`implement them in such a way that they would function with other implemen-
`tations, which in turn would make it
`impossible for any communication
`
`* OSI stands for Open Systems Interconnect, an alternate suite of network protocols.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ROKU EXH. 1002
`
`

`

`8
`
`Chapter 1: An Introduction to TCP/IP
`
`whatsoever to occur. Each of these wiring systems therefore follows very strict
`standards, ensuring that network devices will at least be able to communicate
`without having to worry about issues such as voltage and impedance.
`
`The data-link layer
`The data-link layer defines how information is transmitted across the physical
`layer, and is responsible for making sure that the physical layer is functioning
`properly. Some networks—such as the public telephone network, radio, and
`television—use analog sine-waves to transmit information, while most com-
`puter networks use square-wave pulses to achieve this objective. If there are
`any problems with transmitting the information on the physical cabling (per-
`haps due to a damaged wire or circuit), then this layer must deal with those
`errors, either attempting to retransmit the information or reporting the failure
`to the network layer.
`
`The network layer
`The network layer is used to identify the addresses of systems on the net-
`work, and for the actual transmission of data between the systems. The net-
`work layer must be aware of the physical nature of the network, and package
`the information in such a way that the data-link layer can deliver it to the
`physical layer. For example, if a telephone line is the physical layer, then the
`network layer must package the information in such a way that the data-link
`layer can transmit it over an analog circuit. Likewise, if the physical layer is a
`digital Ethernet LAN, then the network layer must encapsulate the information
`into digital signals appropriate for Ethernet, and then pass it to the data-link
`layer for transmission.
`
`On many networks, the network layer does not provide any integrity check-
`ing. It simply provides the packaging and delivery services, assuming that if
`the data-link layer is not reporting any errors then the network is operational.
`Broadcast television and radio work in this manner, assuming that if they can
`transmit a signal, then it can also be received. Many digital networking tech-
`nologies also take this approach, leaving it up the higher-level protocols to
`provide delivery tracking and reliability guarantees.
`
`The transport layer
`The transport layer provides the reliability services lacking from the network
`layer, although only for basic transmission services, and not for any applica-
`tion- or service-specific functions. The transport layer is responsible for verify-
`ing that the network layer is operating efficiently, and if not, then the transport
`layer either requests a retransmission or returns an error to the layer above it.
`Since higher-level services have to go through the transport layer, all transport
`services are guaranteed when this layer is designed into the network software
`and used. Not all systems mandate that the transport layer provide reliability,
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ROKU EXH. 1002
`
`

`

`TCP/IP’s Architecture
`
`9
`
`and many networks provide unreliable transport layers for nonessential ser-
`vices such as broadcast messages.
`
`The session layer
`The session layer is responsible for establishing connections between sys-
`tems, applications, or users. The session layer may receive this request from
`any higher layer, and then will negotiate a connection using the lower layers.
`Once a connection is established, the session layer simply provides an inter-
`face to the network for the higher layers to communicate with. Once the
`higher layers are finished, the session layer is responsible for destroying the
`connection.
`
`The presentation layer
`The presentation layer provides a consistent set of interfaces for applications
`and services to utilize when establishing connections through the session
`layer. Although these interfaces could also exist at
`the session layer,
`that
`would burden it unnecessarily. It is better to have the session layer only man-
`age sessions and not worry about verifying data or providing other extended
`services. An example of a service provided by the presentation layer is data-
`compression, allowing applications to take advantage of
`the performance
`gains that compression provides without forcing the applications to develop
`these services themselves, and without forcing the transport layer to provide
`this service when it may not always be needed.
`
`The application layer
`Finally,
`the application layer provides the network’s interface to end-user
`application protocols such as HTTP and POP3. This layer should not be con-
`fused with the part of the end-user application that displays data to the end
`user. That function is an entirely separate service, and is outside the scope of
`the OSI Reference Model.
`
`Although every network must use all seven layers of the OSI Reference Model in
`some form or another, not every network design provides distinct protocols or ser-
`vices that match all seven layers precisely. TCP/IP is one such networking design,
`with many layers that do not match up to each of the layers used by the OSI Ref-
`erence Model.
`
`Comparing TCP/IP to the OSI Reference Model
`
`TCP/IP does not strictly conform to the OSI Reference Model. Some portions of
`the OSI Reference Model map directly to some of the protocols and services pro-
`vided by TCP/IP, while many of the layers do not map to each other directly at all.
`For example, the actual delivery of data over the network is handled at the physi-
`cal layer, and in this case, the wire is the physical layer. There are no services in
`TCP/IP that correspond with the physical or data-link layers. Rather, IP passes data
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ROKU EXH. 1002
`
`

`

`10
`
`Chapter 1: An Introduction to TCP/IP
`
`to a network adapter’s device driver, which provides an interface to the data-link
`layer in use with the physical layer.
`
`Figure 1-4 shows how TCP/IP matches up with the OSI Reference Model. Notice
`that TCP/IP does not provide any physical or data-link layer services directly, but
`instead relies on the local operating system for those services.
`
`OSI MODEL
`
`TCP/IP
`
`ApplicationASCIAD@S | Binary
`
`Session
`pee
`
`Transport
`
`Network
`
`TC?and UDP
`
`IP
`
`
`
`
`
`Network
`aDeelek|
`Topology
`Physical
`
`
`Figure 1-4. TCP/IP in comparisonto the OSI Reference Model
`
`The specific layers offered by TCP/IP include:
`
`The Internet Protocol
`
`IP itself works at the network layer of the OSI reference model. It is responsi-
`ble for tracking the addresses of devices on the network, determining how IP
`datagrams are to be delivered, and sending IP packets from one host
`to
`another across a specific segment. In essence, IP provides a virtual representa-
`tion of the network that is independent of any of the individual network seg-
`ments, acting more like a national delivery service than a local courier service.
`
`The Transport Protocols (TCP and UDP)
`TCP/IP provides two protocols that work at the transport layer: TCP and UDP.
`TCP provides a highly monitored and reliable transport service, while UDP
`provides a simple transport with no error-correcting or flow-control services. It
`is also interesting to note that TCP and UDP also provide session layer ser-
`vices, managing all of the connections between the different hosts. When an
`application protocol such as HTTP is used to exchange data between a web
`client and a web server, the actual session-managementfor this exchange is
`handled by TCP.
`
`ROKU EXH. 1002
`
`ROKU EXH. 1002
`
`

`

`TCP/IP Protocols and Services In-Depth
`
`11
`
`Presentation Services
`TCP/IP does not provide a presentation layer service directly. However, some
`applications use a character-based presentation service called the Network Vir-
`tual Terminal (NVTs are a subset of the Telnet specification), while others
`might use IBM’s NetBIOS or Sun’s External Data Representation (XDR) pro-
`gramming libraries for this service. In this regard, TCP/IP has many presenta-
`tion layer services that it can use, but it does not have a formal service that
`every application protocol must use.
`
`Application Protocols (HTTP, SMTP, etc.)
`TCP/IP provides an assortment of application protocols, providing the end-user
`applications with access to the data being passed across the transport proto-
`cols. These protocols include the Simple Message Transfer Protocol (SMTP),
`which is used by electronic mail systems to move mail messages around the
`Internet, and the Hyper-Text Transfer Protocol (HTTP), which is used by web
`browsers to access data stored on web servers, among many others.
`
`All of these services get called upon whenever an application wants to exchange
`data with another application across the Internet. For example, a mail client will
`use the SMTP application protocol whenever a user wants to send a mail message
`to a remote mail server, and the SMTP protocol uses rules defined by the NVT
`specification whenever it exchanges data with TCP. In turn, TCP provides error-
`correction and flow-control services back to SMTP. IP is used to move the TCP
`segments between the source and destination networks, while hardware-specific
`protocols (like Ethernet-specific framing) will be used to move the IP packets
`between the various systems on the network itself.
`
`TCP/IP Protocols and Services In-Depth
`Whenever data is exchanged between two applications across a TCP/IP network,
`each of the major layers provided by TCP/IP come into play.
`
`This can be seen with email clients that use the Simple Message Transfer Protocol
`(SMTP) to send mail to a local server, as is shown in Figure 1-5. The email soft-
`ware on the client contains local application-specific code for parsing and display-
`ing email messages, but everything else is done with network protocols such as
`SMTP, TCP, and IP.
`
`As data is passed through each of the different layers, packets are generated that
`contain two distinct elements: headers and data. As information is passed down
`through the protocol stack, each layer encapsulates the previous layer’s informa-
`tion (including both the header and the data) into a new packet, containing a new
`layer-specific header and the newly minted data segment. This process is shown in
`Figure 1-6.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ROKU EXH. 1002
`
`

`

`12
`
`readand write data
`
`formatdata
`
`open connection
`
`send IPpacket
`
`send datalink frame
`
`
`
`
`Chapter 1: An Introduction to TCP/IP
`
`Server
`
`read and write data
`
`format data
`
`open connection
`
`read IP packet
`
`Physical Media
`
`Physical Media
`
`receive datalink frame
`
`
`
`
`Figure 1-5. Some ofthe layers used by TCP/IP applications
`
`Web browser
`
`
`
`
`
`
`
`
`Figure 1-6. The sub-parts of layers
`
`the physical network is used to transfer bits of data
`At the bottom-most layer,
`(called “frames”) between two devices on the network. IP packets are contained
`within these network-specific frames. The only reason IP is used for this process is
`because the data can go over a variety of different network topologies, and as
`such the TCP/IP applications must have a way of addressing and routing traffic
`consistently, regardless of the specific networks in use.
`
`Embedded within the IP datagrams are TCP segments, which provide a reliable
`virtual circuit for the SMTP application protocol to use. TCP does things like open
`a connection between two application protocol end-points,
`resend lost data,
`
`ROKU EXH. 1002
`
`ROKU EXH. 1002
`
`

`

`TCP/IP Protocols and Services In-Depth
`
`13
`
`remove duplicates, and exert flow control, each of which is beyond the simple
`delivery function of IP itself, yet is common enough to be useful as a separate, dis-
`tinct service.
`
`The SMTP application protocol contains application-specific semantics. In this
`case, this might consist of an SMTP command such as “RCPT TO ehall” and an
`application-specific response code such as 250 (“okay”). Note that the commands
`and data used by SMTP conform to the NVT specification, which prescribes how
`the data should be formatted, the types of data allowed, and so forth, although
`SMTP is doing all of the real work.
`
`As can be seen, each of the layers in the TCP/IP suite provide specific functional-
`ity to the layers above and below it, making the overall design extremely modu-
`lar. It is this modularity that makes TCP/IP so powerful, and also what makes it so
`complex.
`
`Data-Link Services
`
`When two devices on a network communicate with each other, they don’t use IP
`to do so. Rather, they use protocols that are specific to the wire itself. For exam-
`ple, devices on an Ethernet segment use a predefined series of electrical impulses
`to communicate with each other. Whenever an Ethernet device wants to send data
`to another device on the same network, it raises and lowers the voltage of the
`shared medium so that a series of “on” and “off” voltage patterns are generated.
`These changes in voltage are interpreted as bits by the other devices on the
`network.
`
`The changes in voltage are dictated by protocols that are specific to the different
`types of physical networks. Ethernet networks have data-link protocols that will
`not work with technologies like Token Ring. Similarly, modems use protocols spe-
`cific to different types of modem technology.
`
`Much of IP’s functionality is determined by the physical media that the IP device is
`connected to. When an IP device has information that it needs to send to another
`device on the same wire, it has to understand the characteristics of the wire in
`order to prepare the information so that is usable for that particular medium.
`
`One of the issues that IP has to deal with is the mechanisms used for the network-
`specific addressing. Just as physical networks have to provide mechanisms for
`encapsulating and disseminating data on the wire, they also have to provide a way
`for devices to locate each other, using addressing methods defined by the low-
`level protocols.
`
`On shared networks, each device must have a unique hardware address in order
`for devices to indicate which node the traffic is for. Ethernet networks use a 48-bit
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`ROKU EXH. 1002
`
`

`

`14
`
`Chapter 1: An Introduction to TCP/IP
`
`Media Access Control (MAC) address for this purpose, while Frame Relay net-
`works use Data-Link Connection Identifier (DLCD addresses, and so on. This con-
`cept is illustrated in Figure 1-7, where IP traffic for 192.168.10.40 is sent to the
`Ethernet address of 00:00:c0:c8:b3:27, using Ethernet-specific signalling.
`
`ethernet traffic for 00:00:c0:c8:b3:27
`
`Ferret
`192.168.10.10
`
`Figure 1-7. Topology-specific protocols and addressing
`
`In contrast, modems are point-to-point; only two devices can communicate over
`any given circuit. As such, modem circuits don’t use addresses per se, but instead
`just send and receive data over dedicated “transmit” and “receive” wires as
`needed. The sameis true of T-1 lines and most other point-to-point circuit-based
`networks.
`
`In all of these cases, the IP stack running on the local device must understand the
`addressing mechanisms used by the hardware, and implement it accordingly, just
`as it must understand the framing characteristics and signalling mechanisms in use
`on the physical network.
`
`The Internet Protocol
`
`When an IP-enabled device wants to send data to another IP node, the data-link
`services on that device convert the IP datagrams into a format usable by the local
`network medium, and then send the data to the destination system using the
`addressing and framing mechanismsdictated by the network.
`
`These steps occur on each of the networks that an IP datagram traverses onits
`way to the final destination system. If an IP datagram were sent from a dial-up
`user working at her home in Los Angeles to a server in Rome,Italy, the number of
`networks that would be crossed could be quite high. But at each step of the way,
`the data would be transmitted using the low-level protocols appropriate for each
`of the particular networks being crossed.
`
`In this regard, IP provides a virtual representation of the global Internet to the
`hosts that are on it. IP provides a datagram formatting and addressing mechanism
`that is not dependent upon any of the specific characteristics of the individual
`
`ROKU EXH. 1002
`
`ROKU EXH. 1002
`
`

`

`TCPAP Protocols and Services In-Depth
`
`15
`
`networks that make up the global Internet. Data can be sent to an IP address, and
`the data will be encapsulated and transmitted according to the rules of each of the
`intermediary networks, with the IP datagram being used to provide delivery clues
`to the sending, receiving, and intermediary devices. Essentially, routing occurs at
`the network layer (IP), while delivery occurs at
`the data-link layer (Ethernet,
`modems, whatever).
`
`This conceptis illustrated in Figure 1-8. In that example, data sent over a modem
`would be encapsulated into a form usable by the dial-up connection. Once
`received, the data would be determined to be an IP datagram, and would then get
`converted into a form that was usable by the LAN connection and sent out again.
`The r

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