`
`~~fi..~~~hr:~·1r-t/~}t,~1j· -- · .l · L
`f!?~•~ter~etworking
`. ...
`
`•• - •
`
`•
`
`-
`
`,_. :\;.'- ,.• ~ ~:_.;_:
`
`.
`
`Merilee Ford
`H. Kim Lew
`Steve Spanier
`lim Stevenson
`
`-~
`
`Ci sco PRE SS
`New Riders Publishing
`201 West 103rd Street
`Indianapolis, IN 46290 USA
`
`0 Aiders\
`
`Ex.1012
`APPLE INC. / Page 1 of 21
`
`
`
`Copyright© 1997 by New Riders Publishing
`Cisco Press logo is a trademark of Cisco Systems, Inc.
`All rights reserved. No part of this book may be reproduced or transmitted in any form or by any
`means, electronic or mechanical, including photocopying, recording, or by any information stor(cid:173)
`age and retrieval system, without written permission from the publisher, except for the inclusion
`of brief quotations in a review.
`Printed in the United States of America 1 2 3 4 5 6 7 8 9 0
`Library of Congress Cataloging-in-Publication Data
`* '' ~-crP data available upon request•=·'":•
`
`Warning and Disclaimer
`This book is designed to provide information about internetworking technologies. Every effort
`has been made to make this book as complete and as accurate as possible, but no warranty or
`fitness is implied.
`The information is provided on an "as is" basis. The author, New Riders Publishing, and Cisco
`Systems Inc. shall have neither liability nor responsibility to any person or entity with respect to
`any loss or damages arising from the information contained in this book or from the use of the
`disks or programs that may accompany it.
`Don Fowley
`Julie Fairweather
`Ann Trump Daniel, Macmillan
`H. Kim Lew, Cisco Systems
`Mary Foote
`Carla Hall
`
`Publisher:
`Publishing Manager:
`Executive Editor-in-Chief:
`Cisco Systems Representative:
`Marketing Manager:
`Managing Editor:
`
`Project Managers:
`
`Senior Editors:
`
`Copy Editor:
`Technical Editor:
`Cover Designer:
`Cover Production:
`Cover Art:
`Interior Layout and Design:
`Indexer:
`
`Tracy Turgeson
`Gina Brown
`Cliff Shubs
`Sarah Kearns
`Suzanne Snyder
`Krista Hansing
`H. Kim Lew
`Sandra Schroeder
`Aren Howell
`Provided by Cisco Systems
`Argosy
`Brad Herriman
`
`Ex.1012
`APPLE INC. / Page 2 of 21
`
`
`
`Contents
`at a Glance
`
`PART 1
`
`Chapter 1
`
`INTRODUCTION TO INTERNETWORKING
`
`3
`lnternetworking Basics
`3
`What is an Internetwork?
`Open Systems Interconnection (OSI) Reference Model
`Information Formats
`17
`ISO Hierarchy of Networks
`20
`Connection-Oriented and Connectionless Network
`Services
`21
`Internetwork Addressing
`Flow-Control Basics
`30
`Error-Checking Basics
`31
`Multiplexing Basics
`32
`Standards Organizations
`
`34
`
`23
`
`Chapter 2
`
`37
`
`Introduction to LAN Protocols
`What is a LAN?
`38
`LAN Protocols and the OSI Reference Model
`LAN Media-Access Methods
`39
`LAN Transmission Methods
`40
`
`38
`
`5
`
`111
`
`Ex.1012
`APPLE INC. / Page 3 of 21
`
`
`
`lV
`
`Internetworking Technologies Handbook
`
`Chapter 3
`
`Chapter 4
`
`Chapter 5
`
`LAN Topologies
`LAN Devices
`42
`
`40
`
`45
`
`Introduction to WAN Technologies
`What is a WAN?
`45
`Point-to-Point Links
`46
`Circuit Switching
`4 7
`Packet Switching
`48
`WAN Virtual Circuits
`WAN Dialup Services
`WAN Devices
`50
`
`49
`50
`
`55
`Bridging and Switching Basics
`55
`What are Bridges and Switches?
`Link-Layer Device Overview
`56
`Types of Bridges
`58
`Types of Switches
`60
`
`63
`Routing Basics
`63
`What is Routing?
`Routing Components
`Routing Algorithms
`Network Protocols
`
`64
`67
`7 5
`
`Chapter 6
`
`77
`Network Management Basics
`77
`What is Network Management?
`Network Management Architecture
`ISO Network Management Model
`
`78
`79
`
`PART2
`
`LAN PROTOCOLS
`
`Chapter 7
`
`Ethernet Technologies
`Background
`8 7
`
`87
`
`
`
`Ex.1012
`APPLE INC. / Page 4 of 21
`
`
`
`Contents at a Glance
`
`v
`
`88
`
`Ethernet and IEEE 802.3
`100-Mbps Ethernet
`93
`103
`lO0VG-AnyLAN
`Gigabit Ethernet
`106
`
`Chapter 8
`
`Chapter 9
`
`Fiber Distributed Data Interface (FDDI)
`Background
`111
`FDDI Transmission Media
`FDDI Specifications
`114
`FDDI Station-Attachment Types
`FDDI Fault Tolerance
`117
`FDDI Frame Format
`122
`Copper-Distributed Data Interface (CDDI)
`
`116
`
`113
`
`111
`
`123
`
`125
`
`Token Ring/IEEE 802.5
`Background
`125
`Physical Connections
`Token Ring Operation
`Priority System
`128
`Fault-Management Mechanisms
`129
`Frame Format
`
`126
`127
`
`129
`
`PART3
`
`WAN TECHNOLOGIES
`
`135
`Chapter 10 Frame Relay
`135
`Background
`137
`Frame Relay Devices
`138
`Frame Relay Virtual Circuits
`Congestion-Control Mechanisms
`141
`Frame Relay Local Management Interface (LMI)
`143
`Frame Relay Network Implementation
`Frame Relay Frame Formats
`145
`
`142
`
`
`
`
`
`Ex.1012
`APPLE INC. / Page 5 of 21
`
`
`
`Vl
`
`lnternetworking Technologies Handbook
`
`Chapter 11 High-Speed Serial Interface
`Background
`151
`HSSI Interface Basics
`HSSI Operation
`152
`
`151
`
`151
`
`Chapter 12
`
`155
`
`Integrated Services Digital Network (ISDN)
`Background
`155
`ISDN Components
`Services
`157
`Layer 1
`158
`Layer 2
`160
`Layer 3
`161
`
`155
`
`163
`
`Chapter 13 Point-to-Point Protocol
`Background
`163
`163
`PPP Components
`164
`General Operation
`Physical-Layer Requirements
`PPP Link Layer
`165
`
`164
`
`169
`
`Chapter 14 Switched Multimegabit Data Service (SMDS)
`Background
`169
`169
`SMDS Network Components
`SMDS Interface Protocol (SIP)
`171
`Distributed Queue Dual Bus (DQDB)
`SMDS Access Classes
`174
`SMDS Addressing Overview
`17 5
`SMDS Reference: SIP Level 3 PDU Format
`SMDS Reference: SIP Level 2 Cell Format
`
`176
`178
`
`173
`
`Chapter 15 Asymmetric Digital Subscriber Line (ADSL)
`Background
`181
`ADSL Technology Overview
`
`182
`
`181
`
`
`
`Ex.1012
`APPLE INC. / Page 6 of 21
`
`
`
`Contents at a Glance
`
`vu
`
`183
`ADSL Operation
`ADSL Reference Model
`
`185
`
`Chapter 16 Synchronous Data-Link Control and
`Derivatives
`189
`Background
`189
`SDLC Types and Topologies
`SDLC Frame Format
`190
`Derivative Protocols
`193
`
`190
`
`197
`Chapter 17 X.25
`197
`Background
`X.25 Devices and Protocol Operation
`X.25 Protocol Suite
`201
`LAPB Frame Format
`205
`X.121 Address Format
`206
`
`197
`
`PART 4
`
`BRIDGING AND SWITCHING
`
`211
`
`212
`
`Chapter 18 Asynchronous Transfer Mode (ATM) Switching
`Background
`211
`ATM Devices and Network Environment
`ATM Cell-Header Format
`215
`217
`ATM Services
`218
`ATM Switching Operation
`ATM Reference Model
`219
`ATM Addressing
`224
`227
`ATM Connections
`ATM and Multicasting
`228
`229
`ATM Quality of Service (QOS)
`ATM Signaling and Connection Establishment
`ATM Connection-Management Messages
`231
`LAN Emulation (LANE)
`232
`
`230
`
`Ex.1012
`APPLE INC. / Page 7 of 21
`
`
`
`Vlll
`
`Internetworking Technologies Handbook
`
`Chapter 19 Data-Link Switching
`Background
`243
`DLSw Contrasted with Source-Route Bridging
`DLSw SNA Support
`246
`DLSw Switch-to-Switch Protocol (SSP)
`DLSw Operation
`248
`DLSw Message Formats
`
`245
`
`248
`
`243
`
`253
`
`259
`Chapter 20 LAN Switching
`Background
`259
`LAN Switch Operation
`260
`LAN Switch and the OSI Model
`
`263
`
`265
`Chapter 21 Tag Switching
`Background
`265
`Tag-Switching Architecture
`Destination-Based Routing
`Hierarchical Routing
`2 71
`Flexible Routing using Explicit Routes
`Multicast Routing
`273
`Tag Switching with ATM
`Quality of Service
`275
`IP Switching
`276
`
`266
`268
`
`274
`
`272
`
`Chapter 22 Mixed-Media Bridging
`Background
`277
`278
`Translation Challenges
`280
`Translational Bridging
`Source-Route Transparent Bridging
`
`277
`
`283
`
`Chapter 23 Source-Route Bridging (SRB)
`Background
`285
`SRB Algorithm
`285
`Frame Format
`287
`
`285
`
`Ex.1012
`APPLE INC. / Page 8 of 21
`
`
`
`Contents at a Glance
`
`IX
`
`Chapter 24 Transparent Bridging
`Background
`291
`Transparent Bridging Operation
`297
`Frame Format
`
`291
`
`291
`
`PARTS
`
`NETWORK PROTOCOLS
`
`301
`Chapter 25 AppleTalk
`301
`Background
`302
`AppleTalk Network Components
`AppleTalk Physical and Data-Link Layers
`Network Addresses
`313
`AppleTalk Address-Resolution Protocol (AARP)
`Datagram-Delivery Protocol (DDP) Overview
`AppleTalk Transport Layer
`318
`AppleTalk Upper-Layer Protocols
`AppleTalk Protocol Suite
`328
`
`324
`
`307
`
`315
`317
`
`331
`Chapter 26 DECnet
`Background
`331
`DECnet Phase IV Digital Network Architecture
`(DNA)
`332
`DECnet/OSI Digital Network Architecture (DNA)
`336
`DECnet Media Access
`DECnet Routing
`337
`DECnet End-Communications Layer
`339
`DECnet/OSI Transport Layer
`DECnet Phase IV Upper Layers
`339
`DECnet/OSI Upper Layers
`341
`
`338
`
`335
`
`Chapter 27
`
`IBM Systems Network Architecture (SNA)
`Protocols
`345
`Background
`345
`Traditional SNA Environments
`
`346
`
`Ex.1012
`APPLE INC. / Page 9 of 21
`
`
`
`X
`
`Internetworking Technologies Handbook
`
`353
`IBM Peer-Based Networking
`Basic Information Unit (BIU) Format
`Path-Information Unit (PIU) Format
`
`360
`361
`
`Chapter 28
`
`365
`
`Internet Protocols
`Background
`365
`366
`Internet Protocol (IP)
`Address-Resolution Protocol (ARP) Overview
`Internet Routing
`377
`Internet Control-Message Protocol (ICMP)
`Transmission-Control Protocol (TCP)
`381
`User Datagram Protocol (UDP)
`385
`Internet Protocols Application-Layer Protocols
`
`377
`
`379
`
`389
`
`Chapter 29 NetWare Protocols
`Background
`389
`391
`NetWare Media Access
`Internetwork Packet Exchange (IPX) Overview
`IPX Encapsulation Types
`392
`Service-Advertisement Protocol (SAP)
`NetWare Transport Layer
`394
`NetWare Upper-Layer Protocols and Services
`IPX Packet Format 396
`
`393
`
`386
`
`391
`
`395
`
`Chapter 30 Open System Interconnection (OSI) Protocols
`Background
`399
`OSI Networking Protocols
`
`400
`
`399
`
`411
`Chapter 31 Banyan VINES
`Background
`411
`Media Access
`412
`412
`Network Layer
`Transport Layer
`420
`Upper-Layer Protocols
`
`420
`
`Ex.1012
`APPLE INC. / Page 10 of 21
`
`
`
`Contents at a Glance
`
`Chapter 32 Xerox Network Systems (XNS)
`Background
`421
`XNS Hierarchy Overview
`Media Access
`423
`Network Layer
`423
`Transport Layer
`425
`Upper-Layer Protocols
`
`422
`
`426
`
`XI
`
`421
`
`PART6
`
`ROUTING PROTOCOLS
`
`Chapter 33 Border Gateway Protocol (BGP)
`Background
`431
`BGP Operation
`433
`BGP Routing
`434
`BGP Message Types
`BGP Packet Formats
`
`435
`436
`
`431
`
`443
`
`Chapter 34 Enhanced IGRP
`Background
`443
`Enhanced IGRP Capabilities and Attributes
`Underlying Processes and Technologies
`445
`Routing Concepts
`446
`Enhanced IGRP Packet Types
`
`448
`
`444
`
`Chapter 35
`
`IBM Systems Network Architecture (SNA)
`Routing
`451
`Background
`451
`IBM SNA Session Connectors
`452
`IBM SNA Transmission Groups (TGs)
`IBM SNA Explicit and Virtual Routes
`IBM SNA Class of Service (COS)
`454
`IBM SNA Subarea Routing
`457
`IBM Advanced Peer-to-Peer Networking (APPN)
`Routing
`458
`
`453
`453
`
`Ex.1012
`APPLE INC. / Page 11 of 21
`
`
`
`XII
`
`Intemetworking Technologies Handbook
`
`Chapter 36
`
`Interior-Gateway Routing Protocol
`Background
`465
`IGRP Protocol Characteristics
`
`466
`
`465
`
`Chapter 37
`
`Internet Protocol (IP) Multicast 471
`Background
`471
`Internet Group-Membership Protocol (IGMP)
`IP Multicast Routing Protocols
`4 73
`
`4 72
`
`Chapter 38 NetWare Link-Services Protocol (NLSP)
`Background
`4 77
`NLSP Hierarchical Routing
`NLSP Operation
`481
`NLSP Hierarchical Addressing
`NLSP Hello Packets
`483
`
`482
`
`4 78
`
`477
`
`Chapter 39 Open Systems Interconnection (OSI) Routing
`Protocol
`489
`Background
`489
`End System-to-Intermediate System (ES-IS)
`491
`Intermediate System-to-Intermediate System (IS-IS)
`Integrated IS-IS
`495
`Interdomain Routing Protocol (IDRP)
`
`496
`
`492
`
`Chapter 40 Open Shortest Path First (OSPF)
`Background
`499
`500
`Routing Hierarchy
`SPF Algorithm
`503
`Packet Format
`504
`Additional OSPF Features
`
`505
`
`499
`
`Chapter 41 Resource-Reservation Protocol (RSVP)
`Background
`507
`RSVP Data Flows
`
`508
`
`507
`
`Ex.1012
`APPLE INC. / Page 12 of 21
`
`
`
`Contents at a Glance
`
`xiu
`
`RSVP Quality of Service (QOS)
`RSVP Session Start-up
`511
`RSVP Reservation Style
`511
`RSVP Soft State Implementation
`RSVP Operational Model
`514
`RSVP Messages
`517
`RSVP Packet Format
`
`519
`
`510
`
`513
`
`Chapter 42 Routing-Information Protocol (RIP)
`Background
`523
`Routing Updates
`524
`RIP Routing Metric
`524
`RIP Stability Features
`525
`RIP Timers
`525
`Packet Formats
`525
`
`523
`
`Chapter 43 Simple Multicast Routing Protocol (SMRP)
`Background
`529
`SMRP Multicast Transport Services
`SMRP Transaction Example
`539
`SMRP Packet Format
`540
`
`530
`
`529
`
`PART 7
`
`NETWORK MANAGEMENT
`
`Chapter 44
`
`IBM Network Management 545
`Background
`545
`IBM Network-Management Functional Areas
`546
`IBM Network-Management Architectures
`549
`IBM Network-Management Platforms
`551
`
`Chapter 45 Remote Monitoring (RMON) 553
`Background
`553
`RMON Groups
`554
`
`Ex.1012
`APPLE INC. / Page 13 of 21
`
`
`
`xtv
`
`Internetworking Technologies Handbook
`
`Chapter 46 Simple Network-Management Protocol
`(SNMP)
`557
`Background
`557
`558
`SNMP Basic Components
`SNMP Basic Commands
`559
`SNMP Management-Information Base (MIB)
`SNMP and Data Representation
`562
`SNMP Version 1 (SNMPv1)
`562
`SNMP Version 2 (SNMPv2)
`564
`SNMP Management
`566
`SNMP Security
`566
`567
`SNMP Interoperability
`SNMP Reference: SNMPv1 Message Formats
`SNMP Reference: SNMPv2 Message Format
`
`560
`
`568
`570
`
`lnternetworking Terms and Acronyms
`
`575
`
`Index 665
`
`
`
`Ex.1012
`APPLE INC. / Page 14 of 21
`
`
`
`32
`
`Internetworking Technologies Handbook
`
`over the contents of the packet and then compares its computed value with that
`contained in the packet. If the values are equal, the packet is considered valid.
`If the values are unequal, the packet contains errors and is discarded.
`
`MULTIPLEXING BASICS
`
`Multiplexing is a process in which multiple data channels are combined into a
`single data or physical channel at the source. Multiplexing can be implemented
`at any of the OSI layers. Conversely, demultiplexing is the process of separating
`multiplexed data channels at the destination. One example of multiplexing is
`when data from multiple applications is multiplexed into a single lower-layer
`data packet. Figure 1-18 illustrates this example.
`
`Spreadsheet
`
`Word
`Processing
`
`Figure 1-18
`Multiple
`applications can be
`multiplexed into a
`single lower-layer User Applications
`data packet.
`
`Application Data
`
`►
`
`►
`
`Lower-Layer Header -► I 1 Data
`
`Source
`
`Another example of multiplexing is when data from multiple devices is com(cid:173)
`bined into a single physical channel (using a device called a multiplexer).
`Figure 1-19 illustrates this example.
`
`
`
`
`
`
`
`Ex.1012
`APPLE INC. / Page 15 of 21
`
`
`
`Chapter 1
`
`•
`
`Internetworking Basics
`
`33
`
`Data
`Channels
`
`A
`
`B
`
`C
`
`Physical
`Channel
`
`Data
`Channels
`
`gA
`g s
`Multiplexer gc
`
`Figure 1-19
`Multiple devices
`can be multiplexed
`into a single
`physical channel.
`
`A multiplexer is a physical-layer device that combines multiple data streams
`into one or more output channels at the source. Multiplexers demultiplex the
`channels into multiple data streams at the remote end and thus maximize the
`use of the bandwidth of the physical medium by enabling it to be shared by mul(cid:173)
`tiple traffic sources.
`
`Some methods used for multiplexing data are time-division multiplexing
`(TDM), asynchronous time-division multiplexing (ATDM), frequency-division
`multiplexing (FDM), and statistical multiplexing.
`
`In TDM, information from each data channel is allocated bandwidth based on
`preassigned time slots, regardless of whether there is data to transmit. In
`ATDM, information from data channels is allocated bandwidth as needed, by
`using dynamically assigned time slots. In FDM, information from each data
`channel is allocated bandwidth based on the signal frequency of the traffic. In
`statistical multiplexing, bandwidth is dynamically allocated to any data chan(cid:173)
`nels that have information to transmit.
`
`
`
`Ex.1012
`APPLE INC. / Page 16 of 21
`
`
`
`Chapter 28
`
`•
`
`Internet Protocols
`
`381
`
`IRDP offers several advantages over other methods of discovering addresses of
`neighboring routers. Primarily, it does not require hosts to recognize routing
`protocols, nor does it require manual configuration by an administrator.
`
`Router-Advertisement messages enable hosts to discover the existence of neigh(cid:173)
`boring routers but not which router is best to reach a particular destination. If
`a host uses a poor first-hop router to reach a particular destination, it receives
`a Redirect message identifying a better choice.
`
`TRANSMISSION-CONTROL PROTOCOL (TCP)
`
`The TCP provides reliable transmission of data in an IP environment. TCP cor(cid:173)
`responds to the transport layer (Layer 4) of the OSI reference model. Among
`the services TCP provides are stream data transfer, reliability, efficient flow con(cid:173)
`trol, full-duplex operation, and multiplexing.
`
`With stream data transfer, TCP delivers an unstructured stream of bytes identi(cid:173)
`fied by sequence numbers. This service benefits applications because they do not
`have to chop data into blocks before handing it off to TCP. Instead, TCP groups
`bytes into segments and passes them to IP for delivery.
`
`TCP offers reliability by providing connection-oriented, end-to-end reliable
`packet delivery through an internetwork. It does this by sequencing bytes with
`a forwarding acknowledgment number that indicates to the destination the
`next byte the source expects to receive. Bytes not acknowledged within a spec(cid:173)
`ified time period are retransmitted. The reliability mechanism of TCP allows
`devices to deal with lost, delayed, duplicate, or misread packets. A time-out
`mechanism allows devices to detect lost packets and request retransmission.
`
`TCP offers efficient flow control, which means that, when sending acknowledg(cid:173)
`ments back to the source, the receiving TCP process indicates the highest
`sequence number it can receive without overflowing its internal buffers.
`
`Full-duplex operation means that TCP processes can both send and receive at
`the same time.
`
`
`
`Ex.1012
`APPLE INC. / Page 17 of 21
`
`
`
`382
`
`Internetworking Technologies Handbook
`
`Finally, TCP's multiplexing means that numerous simultaneous upper-layer
`conversations can be multiplexed over a single connection.
`
`TCP Connection Establishment
`
`To use reliable transport services, TCP hosts must establish a connection-ori(cid:173)
`ented session with one another. Connection establishment is performed by
`using a "three-way handshake" mechanism.
`
`A three-way handshake synchronizes both ends of a connection by allowing
`both sides to agree upon initial sequence numbers. This mechanism also guar(cid:173)
`antees that both sides are ready to transmit data and know that the other side
`is ready to transmit as well. This is necessary so that packets are not transmitted
`or retransmitted during session establishment or after session termination.
`
`Each host randomly chooses a sequence number used to track bytes within the
`stream it is sending and receiving. Then, the three-w ay handshake proceeds in
`the following manner:
`
`The first host (Host A) initiates a connection by sending a packet with the initial
`sequence number (X) and SYN bit set to indicate a connection request. The sec(cid:173)
`ond host (Host B) receives the SYN, records the sequence number X, and replies
`by acknowledging the SYN (with an ACK = X + 1). Host B includes its own
`initial sequence number (SEQ= Y). An ACK= 20 means the host has received
`bytes 0 through 19 and expects byte 20 next. This technique is called forward
`acknowledgment. Host A then acknowledges all bytes Host B sent with a for(cid:173)
`ward acknowledgment indicating the next byte Host A expects to receive (ACK
`= y + 1).
`
`Data transfer then can begin.
`
`Positive Acknowledgment and Retransmission (PAR)
`
`A simple transport protocol might implement a reliability-and-flow-control
`technique where the source sends one packet, starts a timer, and waits for an
`· or
`acknowledgment before sending a new packet. If the acknowledgment 15 n
`
`Ex.1012
`APPLE INC. / Page 18 of 21
`
`
`
`Chapter 28
`
`•
`
`Internet Protocols
`
`383
`
`received before the timer expires, the source retransmits the packet. Such a tech(cid:173)
`nique is called positive acknowledgment and retransmission.
`
`By assigning each packet a sequence number, PAR enables hosts to track lost or
`duplicate packets caused by network delays that result in premature retransmis(cid:173)
`sion. The sequence numbers are sent back in the acknowledgments so that the
`acknowledgments can be tracked.
`
`PAR is an inefficient use of bandwidth, however, because a host must wait for
`an acknowledgment before sending a new packet, and only one packet can be
`sent at a time.
`
`TCP Sliding Window
`
`A TCP sliding window provides more efficient use of network bandwidth than
`PAR because it enables hosts to send multiple bytes or packets before waiting
`for an acknowledgment.
`
`In TCP, the receiver specifies the current window size in every packet. Because
`TCP provides a byte-stream connection, window sizes are expressed in bytes.
`This means that a window is the number of data bytes that the sender is allowed
`to send before waiting for an acknowledgment. Initial window sizes are indi(cid:173)
`cated at connection setup but might vary throughout the data transfer to pro(cid:173)
`vide flow control. A window size of zero, for instance, means "Send no data."
`
`In a TCP sliding-window operation, for example, the sender might have a
`sequence of bytes to send (numbered 1 to 10) to a receiver who has a window
`size of five. The sender then would place a window around the first five bytes
`and transmit them together. It would then wait for an acknowledgment.
`
`The receiver would respond with an ACK = 6, indicating that it has received
`bytes 1 to 5 and is expecting byte 6 next. In the same packet, the receiver would
`indicate that its window size is 5. The sender then would move the sliding win(cid:173)
`dow five bytes to the right and transmit bytes 6 to 10. The receiver would
`respond with an ACK= 11, indicating that it is expecting sequenced byte 11
`next. In this packet, the receiver might indicate that its window size is 0
`
`Ex.1012
`APPLE INC. / Page 19 of 21
`
`
`
`384
`
`Internetworking Technologies Handbook
`
`(because, for example, its internal buffers are full). At this point, the sender can(cid:173)
`not send any more bytes until the receiver sends another packet with a window
`size greater than 0.
`
`T
`CP Packet Format
`F igure 28-10 illustrates the fields and overall format of a TCP packet.
`
`I
`
`Figure 28-10
`Twelve fields
`comprise a TCP
`packet.
`
`32 bits
`
`I
`
`Source Port
`
`Destination Port
`
`Sequence Number
`
`Acknowledgement Number
`
`Data Offset
`
`I Reserved I Flags
`
`Checksum
`
`Window
`
`Urgent Pointer
`
`Options (+ Padding)
`
`Data (Variable)
`
`T
`CP Packet Field Descriptions
`T he following descriptions summarize the TCP packet fields illustrated in Fig-
`re 28-10:
`u
`
`• Source Port and Destination Port -
`
`Identify points at which up-
`
`per-layer source and destination processes receive TCP services. -
`
`Ex.1012
`APPLE INC. / Page 20 of 21
`
`
`
`Chapter 28
`
`•
`
`Internet Protocols
`
`385
`
`• Sequence Number - Usually specifies the number assigned to the first
`byte of data in the current message. In the connection-establishment
`phase, this field also can be used to identify an initial sequence number
`to be used in an upcoming transmission.
`
`• Acknowledgment Number - Contains the sequence number of the
`next byte of data the sender of the packet expects to receive.
`
`• Data Offset -
`
`Indicates the number of 32-bit words in the TCP header.
`
`• Reserved - Remains reserved for future use.
`
`• Flags - Carries a variety of control information, including the SYN
`and ACK bits used for connection establishment, and the FIN bit used
`for connection termination.
`
`• Window - Specifies the size of the sender's receive window (that is, the
`buffer space available for incoming data).
`
`• Checksum -
`
`Indicates whether the header was damaged in transit.
`
`• Urgent Pointer - Points to the first urgent data byte in the packet.
`
`• Options - Specifies various TCP options.
`
`• Data - Contains upper-layer information.
`
`USER DATAGRAM PROTOCOL (UDP)
`
`The User Datagram Protocol (UDP) is a connectionless transport-layer protocol
`(Layer 4) that belongs to the Internet protocol family. UDP is basically an inter(cid:173)
`face between IP and upper-layer processes. UDP protocol ports distinguish mul(cid:173)
`tiple applications running on a single device from one another.
`
`Unlike the TCP, UDP adds no reliability, flow-control, or error-recovery func(cid:173)
`tions to IP. Because of UDP's simplicity, UDP headers contain fewer bytes and
`consume less network overhead than TCP.
`
`
`
`Ex.1012
`APPLE INC. / Page 21 of 21
`
`