TCP/IP网络互连原理、协议和体系结构(卷Ⅰ 第5版 英文版)

TCP/IP网络互连原理、协议和体系结构(卷Ⅰ 第5版 英文版)
作 者: 库默
出版社: 人民邮电出版社
丛编项: 典藏原版书苑
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: 网络协议
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  Douglas E.Comer 是普度大学著名的计算机科学教授和Cisco公司的客座讲师,是国际公认的网络、TCP/IP和因特网专家。他的书已经被翻译为16种语言,在世界各地的公司和学校中得到广泛采用。他的里程碑式的三卷本《TCP/IP网络互连》对网络技术和网络教育产生了革命性的影响,他的创新性工作仍然影响着本科生和研究生课程。作为ACM的会员,他获得了包括Usenix Lifetime Achievement Award在内的众多荣誉。

内容简介

“随着语音和数据网的持续发展,理解因特网成了21世纪通信工程师面对的最重要的课题。Comer这部经典著作的第5版仍然是出色的指南。”——Vinton Cerf博士,MCI公司技术战略高级副总裁、TCP/IP发明人之一“这是我读过的最好的TCP/IP图书,Comer博士利用精彩的图表和简明的陈述清楚地解释了复杂的思想。通过最新的第5版,Comer博士使这本经典教材跟上了时代。”——John Lin,贝尔实验室“2005年Comer的新作再次超越巅峰,并对VoIP,RSS和MPLS这些新兴技术进行了精彩阐释,令这本沉甸甸的佳作极具可读性……”——Paul Mockapetris,域名系统(DNS)的发明人Douglas Comer的《TCP/IP网络互连》对因特网所使用的协议和技术做了清晰且容易理解的描述,一代人的专业人员受益于它。现在,Comer对他的经典著作的第I卷做了全面更新,将重点转移到当今使用最广泛的因特网协议和技术,尤其是那些重要性迅速提高的协议和技术。第5版延续了以前版本的阐述方式。Comer仔细地解释了网络互连的基本概念和机制,说明了网络如何桅成一个统一的通信系统。他清晰地介绍了网络互连设计原理、它们的目的和影响。第5版主要从以下几方面进行了大规模修订:对MPLS、IP切换和实时服务(尤其是VoIP)做了全新的讨论;新增一章讨论了流量管理、队列和调度;更新了对因特网安全性和防火墙的讨论,包括有状态防火墙底层的技术;更新了对IPSec网络设计、IP路由选择和最新的IPv6特性的介绍;系统化地介绍了通过NAT和VPN进行私有网络互连;用强调现代硬件的新示例改进了对CIDR寻扯的介绍;更新了对TCP的讨论,包括选择性确认(SACK)、显式拥塞通知(ECN)和快速重传机制。

图书目录

Chapter I Introduction And Overview.

1.1 The Motivation For lnternetworking

1.2 The TCP/IP Internet

1.3 Internet Services

1.4 History And Scope Of The Internet

1.5 The Internet Architecture Board

1.6 The lAB Reorganization

1.7 Internet Request For Comments

1.8 Future Growth And Technology

1.9 Organization Of The Text

1.10 Summary

Chapter 2 Review Of Underlying Network Technologies

2.1 Introduction

2.2 Two Approaches To Network Communication

2.3 Wide Area And Local Area Networks

2.4 Ethernet Technology

2.5 Switched Ethernet

2.6 Asynchronous Transfer Mode

2.7 Summary

Chapter 3 Internetworking Concept And Architectural Model

3.1 Introduction

3.2 Application-Level Interconnection

3.3 Network-Level Interconnection

3.4 Properties Of The Intemet

3.5 Intemet Architecture

3.6 Interconnection Through IP Routers

3.7 The User's View

3.8 All Networks Are Equal

3.9 The Unanswered Questions

3.10 Summary

Chapter 4 Classful Internet Addresses

4.1 Introduction

4.2 Universal Identifiers

4.3 The Original Classful Addressing Scheme

4.4 Addresses Specify Network Connections

4.5 Network And Directed Broadcast Addresses

4.6 Limited Broadcast

4.7 The All-Os Address

4.8 Subnet And Classless Extensions

4.9 IP Multicast Addresses

4.10 Weaknesses In Intemet Addressing

4.11 Dotted Decimal Notation

4.12 Loopback Address

4.13 Summary Of Special Address Conventions

4.14 Intemet Addressing Authority

4.15 Reserved Address Prefixes

4.16 An Example

4.17 Network Byte Order

4.18 Summary

Chapter 5 Mapping Internet Addresses To Physical Addresses (ARP)

5.1 Introduction

5.2 The Address Resolution Problem

5.3 Two Types Of Physical Addresses

5.4 Resolution Through Direct Mapping

5.5 Resolution Through Dynamic Binding

5.6 The Address Resolution Cache

5.7 ARP Cache Timeout

5.8 ARP Refinements

5.9 Relationship Of ARP To Other Protocols

5.10 ARP Implementation

5.11 ARP Encapsulation And Identification

5.12 ARP Protocol Format

5.13 Automatic ARP Cache Revalidation

5.14 Reverse Address Resolution (RARP )

5.15 Summary

Chapter 6 Internet Protocol: Connectionless Datagram Delivery(ipv4)

6.1 Introduction

6.2 A Virtual Network

6.3 Intemet Architecture And Philosophy

6.4 The Conceptual Service Organization

6.5 Connectionless Delivery System

6.6 Purpose Of The Intemet Protocol

6.7 The IPv4 Datagram

6.8 Intemet Datagram Options

6.9 Summary

Chapter 7 Internet Protocol: Forwarding IP Datagrsms

7.1 Introduction

7.2 Forwarding In An Intemet

7.3 Direct And Indirect Delivery

7.4 Table-Driven IP Forwarding

7.5 Next-Hop Forwarding

7.6 Default Routes

7.7 Host-Specific Routes

7.8 The IP Forwarding Algorithm

7.9 Forwarding With IP Addresses

7.10 Handling Incoming Datagrams

7.11 Establishing Routing Tables

7.12 Summary

Chapter 8 Internet Protocol: Error And Control Messages(ICMP)

8.1 Introduction

8.2 The Intemet Control Message Protocol

8.3 Error Reporting Vs. Error Correction

8.4 ICMP Message Delivery

8.5 ICMP Message Format

8.6 Testing Destination Reachability And Status (Ping)

8.7 Echo Request And Reply Message Format

8.8 Reports Of Unreachable Destinations

8.9 Congestion And Datagram Flow Control

8.10 Source Quench Format

8.11 Route Change Requests From Routers

8.12 Detecting Circular Or Excessively Long Routes

8.13 'Reporting Other Problems

8.14 Clock Synchronization And Transit Time Estimation

8.15 Older ICMP Messages No Longer Needed

8.16 Summary

Chapter 9 Classless And Subnet Address Extensions (CIDR)

9.1 Introduction

9.2 Review Of Relevant Facts

9.3 Minimizing Network Numbers

9.4 Proxy ARP

9.5 Subnet Addressing

9.6 Flexibility In Subnet Address Assignment

9. 7 Variable-Length Subnets

9.8 Implementation Of Subnets With Masks

9.9 Subnet Mask Representation ,

9.10 Forwarding In The Presence Of Subnets

9.11 The Subnet Forwarding Algorithm

9.12 A Unified Forwarding Algorithm

9.13 Maintenance Of Subnet Masks

9.14 Broadcasting To Subnets

9.15 Anonymous Point-To-Point Networks

9.16 Classless Addressing And Supernetting

9.17 CIDR Address Blocks And Bit Masks

9.18 Address Blocks And CIDR Notation

9.19 A Classless Addressing Example

9.20 Data Structures And Algorithms For Classless Lookup

9.21 Longest-Match And Mixtures Of Route Types

9.22 CIDR Blocks Reserved For Private Networks

9.23 Summary

Chapter 10 Protocol Layering

10.1 Introduction

10.2 The Need For Multiple Protocols

10.3 The Conceptual Layers Of Protocol Software

10.4 Functionality Of The Layers

10.5 X. 25 And Its Relation To The ISO Model

10.6 Locus Of lnteUigence

10.7 The Protocol Layering Principle

10.8 Layering In The Presence Of Network Substructure

10.9 Two Important Boundaries In The TCP/IP Model

10.10 The Disadvantage Of Layering

10.11 The Basic Idea Behind Multiplexing And Demultiplexing

10.12 Summary

Chapter 11 User Datagram Protocol (UDP)

11.1 Introduction

11.2 Identifying The Ultimate Destination

11.3 The User Datagram Protocol

11.4 Format Of UDP Messages

11.5 UDP Pseudo-Header

11.6 UDP Encapsulation And Protocol Layering

11.7 Layering And The UDP Checksum Computation

11.8 UDP Multiplexing, Demultiplexing, And Ports

11.9 Reserved And Available UDP Port Numbers

11.10 Summary

Chapter 12 Reliable Stream Transport Service (TCP)

12.1 Introduction

12.2 The Need For Stream Delivery

12.3 Properties Of The Reliable Delivery Service

12.4 Providing Reliability

12.5 The Idea Behind Sliding Windows

12.6 The Transmission Control Protocol

12.7 Ports, Connections, And Endpoints

12.8 Passive And Active Opens

12.9 Segments, Streams, And Sequence Numbers

12.10 Variable Window Size And Flow Control

12.11 TCP Segment Format

12.12 Out Of Band Data

12.13 TCP Options

12.14 TCP Checksum Computation

12.15 Acknowledgements, Retransmission, And Timeouts

12.16 Accurate Measurement Of Round Trip Samples

12.17 Karn's Algorithm And Timer Backoff

12.18 Responding To High Variance In Delay

12.19 Response To Congestion

12.20 Fast Recovery And Other Modifications

12.21 Explicit Feedback Mechanisms (SACK and ECN)

12.22 Congestion, Tail Drop, And TCP

12.23 Random Early Detection (RED)

12.24 Establishing A TCP Connection

12.25 Initial Sequence Numbers

12.26 Closing a TCP Connection

12.27 TCP Connection Reset

12.28 TCP State Machine

12.29 Forcing Data Delivery

12.30 Reserved TCP Port Numbers

12.31 TCP Performance

12.32 Silly Window Syndrome And Small Packets

12.33 Avoiding Silly Window Syndrome

12.34 Summary

Chapter 13 Routing Architecture: Cores, Peers, And Algorithms

13.1 Introduction

13.2 The Origin Of Routing Tables

13.3 Forwarding With Partial Information

13.4 Original Internet Architecture And Cores

13.5 Beyond The Core Architecture To Peer Backbones

13.6 Automatic Route Propagation

13.7 Distance Vector (Bellman-Ford) Routing

13.8 Reliability And Routing Protocols

13.9 Link-State (SPF) Routing

13.10 Summary

Chapter 14 Routing Between Peers (BGP)

14.1 Introduction

14.2 Routing Update Protocol Scope

14.3 Determining A Practical Limit On Group Size

14.4 A Fundamental Idea: Extra Hops

14.5 Autonomous System Concept

14.6 Exterior Gateway Protocols And Reachability

14.7 BGP Characteristics

14.8 BGP Functionality And Message Types

14.9 BGP Message Header

14.10 BGP OPEN Message

14.11 BGP UPDATE Message

14.12 Compressed Mask-Address Pairs

14.13 BGP Path Attributes

14.14 BGP KEEPAL1VE Message

14.15 Information From The Receiver's Perspective

14.16 The Key Restriction Of Exterior Gateway Protocols

14.17 The Internet Routing Architecture

14.18 BGP NOTIFICATION Message

14.19 Summary

Chapter 15 Routing Within An Autonomous System (RIP, 0SPF)

15.1 Introduction

15.2 Static Vs. Dynamic Interior Routes

15.3 Routing Information Protocol .(RIP)

15.4 Stow Convergence Problem

15.5 Solving The Slow Convergence Problem

15.6 RIP1 Message Format

15.7 RIP2 Address Conventions

15.8 RIP Route Interpretation And Aggregation

15.9 RIP2 Extensions And Message Format

15.10 The Disadvantage Of RIP Hop Counts

15.11 Delay Metric (HELLO)

15.12 Delay Metrics And Oscillation

15.13 Combining RIP, Hello, And BGP

15.14 Gated: Inter-Autonomous System Communication

15.15 The Open SPF Protocol (OSPF)

15.16 Routing With Partial Information

15.17 Summary

Chapter 16 internet Multicasting

16.1 Introduction

16.2 Hardware Broadcast

16.3 Hardware Origins Of Multicast

16.4 Ethernet Multicast

16.5 IP Multicast

16.6 The Conceptual Pieces

16.7 IP Multicast Addresses

16.8 Multicast Address Semantics

16.9 Mapping IP Multicast To Ethernet Multicast

16.10 Hosts And Multicast Delivery

16.11 Multicast Scope

16.12 Extending Host Software To Handle Multicasting..

16.13 Intemet Group Management Protocol

16.14 IGMP Implementation

16.15 Group Membership State Transitions

16.16 IGMP Membership Query Message Format

16.17 1GMP Membership Report Message Format

16.18 Multicast Forwarding And Routing Information

16.19 Basic Multicast Forwarding Paradigms

16.20 Consequences Of TRPF

16.21 Multicast Trees

16.22 The Essence Of Multicast Route Propagation

16.23 Reverse Path Multicasting

16.24 Multicast Routing Protocols

16.25 Reliable Multicast And ACK Implosions

16.26 Summary

Chapter 17 IP Switching And MPLS

17.1 Introduction

17.2 Switching Technology

17.3 Large Networks, Label Swapping, And Paths

17.4 Using Switching With IP

17.5 IP Switching Technologies And MPLS

17.6 Classification, Flows, And Higher Layer Switching

17.7 Hierarchical Use Of MPLS

17.8 MPLS Encapsulation

17.9 Label Switching Router

17.10 Control Processing And Label Distribution

17.11 MPLS And Fragmentation

17.12 Mesh Topology And Traffic Engineering

17.13 Summary

Chapter 18 Mobile IP

18.1 Introduction

18.2 Mobility, Routing, and Addressing

18.3 Mobile IP Characteristics

18.4 Overview Of Mobile.IP Operation

18.5 Mobile Addressing Details

18.6 Foreign Agent Discovery

18.7 Agent Registration

18.8 Registration Message Format

18.9 Communication With A Foreign Agent

18.10 Datagram Transmission And Reception

18.11 The Two-Crossing Problem

18.12 Communication With Computers On the Home Network

18.13 Summary

Chapter 19 Private Network Interconnection (NAT, VPN)

19.1 Introduction

19.2 Private And Hybrid Networks

19.3 VPN Addressing And Routing

19.4 Extending VPN Technology To Individual Hosts

19.5 A VPN With Private Addresses

19.6 Network Address Translation (NAT)

19.7 NAT Translation Table Creation

19.8 Multi-Address NAT

19.9 Port-Mapped NAT

19.10 Interaction Between NAT And ICMP

19.11 Interaction Between NAT And Applications

19.12 NAT In The Presence Of Fragmentation

19.13 Conceptual Address Domains

19.14 Slirp And Iptables

19.15 Summary

Chapter 20 Client-Server Model Of Interaction

20.1 Introduction

20.2 The Client-Server Model

20.3 A Simple Example: UDP Echo Server

20.4 Time And Date Service

20.5 The Complexity of Servers

20.6 Broadcasting A Request

20.7 Alternatives To The Client-Server Model

20.8 Summary

Chapter 21 The Socket Interface

21.1 Introduction

21.2 The UNIX I/0 Paradigm And Network I/0

21.3 Adding Network I/0 to UNIX

21.4 The Socket Abstraction

21.5 Creating A Socket

21.6 Socket Inheritance And Termination

21.7 Specifying A Local Address

21.8 Connecting Sockets To Destination Addresses

21.9 Sending Data Through A Socket

21.10 Receiving Data Through A Socket

21.11 Obtaining Local And Remote Socket Addresses

21.12 Obtaining And Setting Socket Options

21.13 Specifying A Queue Length Fora Server

21.14 How A Server Accepts Connections

21.15 Servers That Handle Multiple Services

21.16 Obtaining And Setting Host Names

21.17 Obtaining And Setting The Internal Host Domain

21.18 Socket Library Calls

21.19 Network Byte Order Conversion Routines

21.20 IP Address Manipulation Routines

21.21 Accessing The Domain Name System

21.22 Obtaining Information About Hosts

21.23 Obtaining Information About Networks

21.24 Obtaining Information About Protocols

21.25 Obtaining Information About Network Services

21.26 An Example Client

21.27 An Example Server

21.28 Summary

Chapter 22 Bootstrap And Autoconfiguration (DHCP)

22.1 Introduction

22.2 History Of Bootstrapping

22.3 Using IP To Determine An IP Address

22.4 The DHCP Retransmission Policy

22.5 The DHCP Message Format

22.6 The Need For Dynamic Configuration

22.7 DHCP Lease Concept

22.8 Multiple Addresses And Relays

22.9 Address Acquisition States

22.10 Early Lease Termination

22.11 Lease Renewal States

22.12 DHCP Options And Message Type

22.13 Option Overload

22.14 DHCP And Domain Names

22.15 Summary

Chapter 23 The Domain Name System (DNS)

23.1 Introduction

23.2 Names For Machines

23.3 Flat Namespace

23.4 Hierarchical Names

23.5 Delegation Of Authority For Names

23.6 Subset Authority

23.7 Intemet Domain Names

23.8 Top-Level Domains

23.9 Name Syntax And Type

23.10 Mapping Domain Names To Addresses

23.11 Domain Name Resolution

23.12 Efficient Translation

23.13 Caching: The Key To Efficiency

23.14 Domain Name System Message Format

23.15 Compressed Name Format

23.16 Abbreviation Of Domain Names

23.17 Inverse Mappings

23.18 Pointer Queries

23.19 Object Types And Resource Record Contents

23.20 Obtaining Authority For A Subdomain

23.21 Dynamic DNS Update And Notification

23.22 DNS Security Extensions (DNSSEC)

23.23 Summary

Chapter 24 Remote Login And Desktop (TELNET, SSH)

24.1 Introduction

24.2 Remote Interactive Computing

24.3 TELNET Protocol

24.4 Accommodating Heterogeneity

24.5 Passing Commands That Control The Remote Side

24.6 Forcing The Server To Read A Control Function

24.7 TELNET Options

24.8 TELNET Option Negotiation

24.9 Secure Shell (SSH)

24.10 Other Remote Access Technologies

24.11 Summary

Chapter 25 File Transfer And Access (FTP, TFTP, NFS)

25.1 Introduction

25.2 Remote File Access, Transfer, And Storage Networks

25.3 On-line Shared Access

25.4 Sharing By File Transfer

25.5 FTP: The Major TCP/IP File Transfer Protocol

25.6 FTP Features

25.7 FTP Process Model

25.8 TCP Port Numbers And Data Connections

25.9 The User's View Of FTP

25.10 Anonymous FTP

25.11 Secure File Transfer (SSL-FTP, Scp, Sftp)

25.12 TFTP

25.13 NFS

25.14 Implementation Of NFS (RPC And XDR)

25.15 Summary

Chapter 26 Electronic Mall (SMTP, POP, IMAP, MIME)

26.1 Introduction

26.2 Electronic Mail

26.3 Mailbox Names And Aliases

26.4 Alias Expansion And Mail Forwarding

26.5 TCP/IP Standards For Electronic Mail Service

26.6 Simple Mail Transfer Protocol (SMTP)

26.7 Mail Retrieval And Mailbox Manipulation Protocols

26.8 The MIME Extensions For Non-ASCII Data

26.9 MIME Multipart Messages

2610 Summary

Chapter 27 World Wide Web (H'I-I'P)

27.1 Introduction

27.2 Importance Of The Web

27.3 Architectural Components

27.4 Uniform Resource Locators

27.5 An Example Document

27.6 Hypertext Transfer Protocol

27.7 HTTP GET Request

27.8 Error Messages

27.9 Persistent Connections And Lengths

27.10 Data Length And Program Output

27.11 Length Encoding And Headers

27.12 Negotiation

27.13 Conditional Requests

27.14 Proxy Servers And Caching

27.15 Caching

27.16 Other HTTP Functionality

27.17 HTFP, Security, And E-Commerce

27.18 Summary

Chapter 28 Voice And Video Over IP (RTP, RSVP, QoS)

28.1 Introduction

28.2 Digitizing And Encoding

28.3 Audio And Video Transmission And Reproduction

28.4 Jitter And Playback Delay

28.5 Real-time Transport Protocol (RTP)

28.6 Streams, Mixing, And Multicasting

28.7 RTP Encapsulation

28.8 RTP Control Protocol (RTCP)

28.9 RTCP Operation

28.10 IP Telephony And Signaling

28.11 Quality Of Service Controversy

28.12 QoS, Utilization, And Capacity

28.13 IntServ Resource Reservation

28.14 IntServ Enforcement (COPS)

28.15 DiffServ And Per-Hop Behavior

28.16 Traffic Scheduling

28.17 Traffic Policing

28.18 Summary

Chapter 29 Network Management (SNMP)

29.1 Introduction

29.2 The Level Of Management Protocols

29.3 Architectural Model

29.4 Protocol Framework

29.5 Examples of MIB Variables

29.6 The Structure Of Management Information

29.7 Formal Definitions Using ASN. 1

29.8 Structure And Representation Of MIB Object Names

29.9 Simple Network Management Protocol

29.10 SNMP Message Format

29.11 An Example Encoded SNMP Message

29.12 New Features In SNMPv3

29.13 Summary

Chapter 30 Internet Security And Firewall Design (IPsec, SSL)

30.1 Introduction

30.2 Protecting Resources

30.3 Information Policy

30.4 Intemet Security

30.5 1P Security (IPsec)

30.6 IPsec Authentication Header

30.7 Security Association

30.8 IPsec Encapsulating Security Payload

30.9 Authentication And Mutable Header Fields

30.10 IPsec Tunneling

30.11 Required Security Algorithms

30.12 Secure Sockets (SSL and TLS)

30.13 Firewalls And Intemet Access

30.14 Multiple Connections And Weakest Links

30.15 FirewaU Implementation And Packet Filters

30.16 Security And Packet Filter Specification

30.17 The Consequence Of Restricted Access For Clients

30.18 Stateful FirewaUs

30.19 Content Protection And Proxies

30.20 Monitoring And Logging

30.21 Summary

Chapter 31 A Next Generation IP (IPv6)

31.1 Introduction

31.2 Why Change?

31.3 Beyond IPv4

31.4 The Road To A New Version Of lP

31.5 The Name Of The Next IP

31.6 Features Of lPv6

31.7 General Form Of An IPv6 Datagram

31.8 1Pv6 Base Header Format

31.9 IPv6 Extension Headers

31.10 Parsing An 1Pv6 Datagram

31.11 IPv6 Fragmentation And Reassembly

31.12 The Consequence Of End-To-End Fragmentation

31.13 IPv6 Source Routing

31.14 IPv6 Options

31.15 Size Of The IPv6 Address Space

31.16 IPv6 Colon Hexadecimal Notation

31.17 Three Basic IPv6 Address Types

31.18 The Duality Of Broadcast And Multicast

31.19 An Engineering Choice And Simulated Broadcast

31.20 Proposed IPv6 Address Space Assignment

31.21 Embedded IPv4 Addresses And Transition

31.22 Unspecified And Loopback Addresses

31.23 Unicast Address Structure

31.24 Interface Identifiers

31.25 Local Addresses

31.26 Autoconfiguration And Renumbering

31.27 Summary

Appendix I A Look At RFCs

Appendix 2 Glossary Of Internetworklng Terms And Abbreviations

Bibliography

Index