TCP/IP详解·卷1:协议(英文版第2版)

TCP/IP详解·卷1:协议(英文版第2版) pdf epub mobi txt 电子书 下载 2025

[美] 福尔,史蒂文斯 著
图书标签:
  • TCP/IP
  • 网络协议
  • 计算机网络
  • 数据通信
  • 网络编程
  • 互联网
  • 协议分析
  • RFC
  • 网络技术
  • 排错
想要找书就要到 新城书站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
出版社: 机械工业出版社
ISBN:9787111382287
版次:2
商品编码:10995850
品牌:机工出版
包装:平装
开本:16开
出版时间:2012-05-01
用纸:胶版纸
页数:1047

具体描述

编辑推荐

  

内容简介

  《TCP/IP详解》是已故网络专家、著名技术作家W. Richard Stevens的传世之作,内容详尽且极具专业,被誉为TCP/IP领域的不朽名著。

  《TCP/IP详解·卷1:协议(英文版第2版)》是《TCP/IP详解》的第1卷,主要讲述TCP/IP协议,结合大量实例讲述TCP/IP协议族的定义原因,以及在各种不同的操作系统中的应用及工作方式。第2版在保留Stevens卓越的知识体系和写作风格的基础上,新加入的作者Kevin R. Fall结合其作为TCP/IP协议研究领域领导者的尖端经验来更新本书,反映了全新的协议和很好的实践方法。首先,他介绍了TCP/IP的核心目标和体系结构概念,展示了它们如何能连接不同的网络和支持多个服务同时运行。接着,他详细解释了IPv4和IPv6网络中的互联网地址。然后,他采用自底向上的方式来介绍TCP/IP的结构和功能:从链路层协议(如Ethernet和Wi-Fi),经网络层、传输层到应用层。

  书中依次全面介绍了ARP、DHCP、NAT、防火墙、ICMPv4/ICMPv6、广播、多播、UDP、DNS等,并详细介绍了可靠传输和TCP,包括连接管理、超时、重传、交互式数据流和拥塞控制。此外,还介绍了安全和加密的基础知识,阐述了当前用于保护安全和隐私的重要协议,包括EAP、IPsec、TLS、DNSSEC和DKIM。

  本书适合任何希望理解TCP/IP协议如何实现的人阅读,更是TCP/IP领域研究人员和开发人员的专业参考书。无论你是初学者还是功底深厚的网络领域高手,本书都是案头必备,将帮助你更深入和直观地理解整个协议族,构建更好的应用和运行更可靠、更高效的网络。

  本书特色:

  ·W. Richard Stevens传奇般的TCP/IP指南,现在被顶端网络专家Kevin R. Fall更新,反映了新一代的基于TCP/IP的网络技术。

  ·展示每种协议的实际工作原理,并解释其来龙去脉。

  ·新增加的内容包括RPC、访问控制、身份认证、隐私保护、NFS、SMB/CIFS、DHCP、NAT、防火墙、电子邮件、Web、Web服务、无线、无线安全等。

作者简介

  Kevin R. Fall博士有超过25年的TCP/IP工作经验,并且是互联网架构委员会成员。他是互联网研究任务组中延迟容忍网络研究组(DTNRG)的联席主席,该组致力于在极端和挑战性能的环境中探索网络。他是一位IEEE院士。

  W. Richard Stevens博士(1951—1999)是国际知名的Unix和网络专家,受人尊敬的技术作家和咨询顾问。他教会了一代网络专业人员使用TCP/IP的技能,使互联网成为人们日常生活的中心。Stevens于1999年9月1日去世,年仅48岁。在短暂但精彩的人生中,他著有多部经典的传世之作,包括《TCP/IP 详解》(三卷本)、《UNIX网络编程》(两卷本)以及《UNIX环境高级编程》。2000年他被国际专业机构Usenix追授“终身成就奖”。

精彩书评

  “我认为本书之所以领先群伦、,是源于其对细节的注重和对历史的关注。书中介绍了计算机网络的背景知识,并提供了解决不断演变的网络问题的各种方法。本书一直在不懈努力以获得精确的答案和探索剩余的问题域。对于致力于完善和保护互联网运营或探究解决长期存在问题的可选方案的工程师,本书提供的见解将是无价的。作者对当今互联网技术的全面阐述和透彻分析是值得称赞的。”

  ——Vint Cerf, 互联网先驱

  

  这本书必定是TCP/IP开发人员和用户的圣经。在我拿到本书并开始阅读的数分钟内,我就遇到了多个曾经困扰我的同事及我本人许久的难题,Stevens清晰和明确的阐述让我豁然开朗。他揭秘了此前一些网络专家讳莫如深的许多奥妙。我本人参与过几年TCP/IP的实现工作,以我的观点,这本书堪称目前最详尽的参考书了。

  ——Robert A. Ciampa,3COM公司网络工程师



  《TCP/IP详解 卷1》对于开发人员、网络管理员以及任何需要理解TCP/IP技术的人来说,都是极好的参考书。内容非常全面,既能提供足够的技术细节满足专家的需要,同时也为新手准备了足够的背景知识和相关注解。

  ——Bob Williams,NetManage公司营销副总裁

目录

Foreword v
Chapter Introduction
1.1 Architectural Principles
1.1.1 Packets, Connections, and Datagrams
1.1.2 The End-to-End Argument and Fate Sharing
1.1.3 Error Control and Flow Control
1.2 Design and Implementation
1.2.1 Layering
1.2.2 Multiplexing, Demultiplexing, and Encapsulation in Layered
Implementations
1.3 The Architecture and Protocols of the TCP/IP Suite
1.3.1 The ARPANET Reference Model
1.3.2 Multiplexing, Demultiplexing, and Encapsulation in TCP/IP
1.3.3 Port Numbers
1.3.4 Names, Addresses, and the DNS
1.4 Internets, Intranets, and Extranets
1.5 Designing Applications
1.5.1 Client/Server
1.5.2 Peer-to-Peer
1.5.3 Application Programming Interfaces (APIs)
Preface to the Second Edition vii
Adapted Preface to the First Edition xiii
1.6 Standardization Process
1.6.1 Request for Comments (RFC)
1.6.2 Other Standards
1.7 Implementations and Software Distributions
1.8 Attacks Involving the Internet Architecture
1.9 Summary
1.10 References
Chapter The Internet Address Architecture
2.1 Introduction
2.2 Expressing IP Addresses
2.3 Basic IP Address Structure
2.3.1 Classful Addressing
2.3.2 Subnet Addressing
2.3.3 Subnet Masks
2.3.4 Variable-Length Subnet Masks (VLSM)
2.3.5 Broadcast Addresses
2.3.6 IPv6 Addresses and Interface Identifiers
2.4 CIDR and Aggregation
2.4.1 Prefixes
2.4.2 Aggregation
2.5 Special-Use Addresses
2.5.1 Addressing IPv4/IPv6 Translators
2.5.2 Multicast Addresses
2.5.3 IPv4 Multicast Addresses
2.5.4 IPv6 Multicast Addresses
2.5.5 Anycast Addresses
2.6 Allocation
2.6.1 Unicast
2.6.2 Multicast
2.7 Unicast Address Assignment
2.7.1 Single Provider/No Network/Single Address
2.7.2 Single Provider/Single Network/Single Address
2.7.3 Single Provider/Multiple Networks/Multiple Addresses
2.7.4 Multiple Providers/Multiple Networks/Multiple Addresses
(Multihoming)
Contents xvii
2.8 Attacks Involving IP Addresses
2.9 Summary
2.10 References
Chapter Link Layer
3.1 Introduction
3.2 Ethernet and the IEEE LAN/MAN Standards
3.2.1 The IEEE LAN/MAN Standards
3.2.2 The Ethernet Frame Format
3.2.3 .1p/q: Virtual LANs and QoS Tagging
3.2.4 .1AX: Link Aggregation (Formerly .3ad)
3.3 Full Duplex, Power Save, Autonegotiation, and .1X Flow Control
3.3.1 Duplex Mismatch
3.3.2 Wake-on LAN (WoL), Power Saving, and Magic Packets
3.3.3 Link-Layer Flow Control
3.4 Bridges and Switches
3.4.1 Spanning Tree Protocol (STP)
3.4.2 .1ak: Multiple Registration Protocol (MRP)
3.5 Wireless LANs—IEEE .11(Wi-Fi)
3.5.1 .11 Frames
3.5.2 Power Save Mode and the Time Sync Function (TSF)
3.5.3 .11 Media Access Control
3.5.4 Physical-Layer Details: Rates, Channels, and Frequencies
3.5.5 Wi-Fi Security
3.5.6 Wi-Fi Mesh (802.11s)
3.6 Point-to-Point Protocol (PPP)
3.6.1 Link Control Protocol (LCP)
3.6.2 Multi link PPP (MP)
3.6.3 Compression Control Protocol (CCP)
3.6.4 PPP Authentication
3.6.5 Network Control Protocols (NCPs)
3.6.6 Header Compression
3.6.7 Example
3.7 Loopback
3.8 MTU and Path MTU
3.9 Tunneling Basics
3.9.1 Unidirectional Links
x viii Contents
3.10 Attacks on the Link Layer
3.11 Summary
3.12 References
Chapter ARP: Address Resolution Protocol
4.1 Introduction
4.2 An Example
4.2.1 Direct Delivery and ARP
4.3 ARP Cache
4.4 ARP Frame Format
4.5 ARP Examples
4.5.1 Normal Example
4.5.2 ARP Request to a Nonexistent Host
4.6 ARP Cache Timeout
4.7 Proxy ARP
4.8 Gratuitous ARP and Address Conflict Detection (ACD)
4.9 The arp Command
4.10 Using ARP to Set an Embedded Device’s IPv4 Address
4.11 Attacks Involving ARP
4.12 Summary
4.13 References
Chapter The Internet Protocol (IP)
5.1 Introduction
5.2 IPv4 and IPv6 Headers
5.2.1 IP Header Fields
5.2.2 The Internet Checksum
5.2.3 DS Field and ECN (Formerly Called the ToS Byte or IPv6 Traffic Class)
5.2.4 IP Options
5.3 IPv6 Extension Headers
5.3.1 IPv6 Options
5.3.2 Routing Header
5.3.3 Fragment Header
5.4 IP Forwarding
5.4.1 Forwarding Table
5.4.2 IP Forwarding Actions
Contents xix
5.4.3 Examples
5.4.4 Discussion
5.5 Mobile IP
5.5.1 The Basic Model: Bidirectional Tunneling
5.5.2 Route Optimization (RO)
5.5.3 Discussion
5.6 Host Processing of IP Datagrams
5.6.1 Host Models
5.6.2 Address Selection
5.7 Attacks Involving IP
5.8 Summary
5.9 References
Chapter System Configuration: DHCP and Autoconfiguration
6.1 Introduction
6.2 Dynamic Host Configuration Protocol (DHCP)
6.2.1 Address Pools and Leases
6.2.2 DHCP and BOOTP Message Format
6.2.3 DHCP and BOOTP Options
6.2.4 DHCP Protocol Operation
6.2.5 DHCPv6
6.2.6 Using DHCP with Relays
6.2.7 DHCP Authentication
6.2.8 Reconfigure Extension
6.2.9 Rapid Commit
6.2.10 Location Information (LCI and LoST)
6.2.11 Mobility and Handoff Information (MoS and ANDSF)
6.2.12 DHCP Snooping
6.3 Stateless Address Autoconfiguration (SLAAC)
6.3.1 Dynamic Configuration of IPv4 Link-Local Addresses
6.3.2 IPv6 SLAAC for Link-Local Addresses
6.4 DHCP and DNS Interaction
6.5 PPP over Ethernet (PPPoE)
6.6 Attacks Involving System Configuration
6.7 Summary
6.8 References
xx Contents
Chapter Firewalls and Network Address Translation (NAT)
7.1 Introduction
7.2 Firewalls
7.2.1 Packet-Filtering Firewalls
7.2.2 Proxy Firewalls
7.3 Network Address Translation (NAT)
7.3.1 Traditional NAT: Basic NAT and NAPT
7.3.2 Address and Port Translation Behavior
7.3.3 Filtering Behavior
7.3.4 Servers behind NATs
7.3.5 Hairpinning and NAT Loopback
7.3.6 NAT Editors
7.3.7 Service Provider NAT (SPNAT) and Service Provider IPv6
Transition
7.4 NAT Traversal
7.4.1 Pinholes and Hole Punching
7.4.2 UNilateral Self-Address Fixing (UNSAF)
7.4.3 Session Traversal Utilities for NAT (STUN)
7.4.4 Traversal Using Relays around NAT (TURN)
7.4.5 Interactive Connectivity Establishment (ICE)
7.5 Configuring Packet-Filtering Firewalls and NATs
7.5.1 Firewall Rules
7.5.2 NAT Rules
7.5.3 Direct Interaction with NATs and Firewalls: UPnP, NAT-PMP,
and PCP
7.6 NAT for IPv4/IPv6 Coexistence and Transition
7.6.1 Dual-Stack Lite (DS-Lite)
7.6.2 IPv4/IPv6 Translation Using NATs and ALGs
7.7 Attacks Involving Firewalls and NATs
7.8 Summary
7.9 References
Chapter ICMPv4 and ICMPv6: Internet Control Message Protocol
8.1 Introduction
8.1.1 Encapsulation in IPv4 and IPv6
8.2 ICMP Messages
8.2.1 ICMPv4 Messages
Contents xxi
8.2.2 ICMPv6 Messages
8.2.3 Processing of ICMP Messages
8.3 ICMP Error Messages
8.3.1 Extended ICMP and Multipart Messages
8.3.2 Destination Unreachable (ICMPv4 Type , ICMPv6 Type )
and Packet Too Big (ICMPv6 Type )
8.3.3 Redirect (ICMPv4 Type , ICMPv6 Type )
8.3.4 ICMP Time Exceeded (ICMPv4 Type , ICMPv6 Type )
8.3.5 Parameter Problem (ICMPv4 Type , ICMPv6 Type )
8.4 ICMP Query/Informational Messages
8.4.1 Echo Request/Reply (ping) (ICMPv4 Types /8, ICMPv6 Types
129/128)
8.4.2 Router Discovery: Router Solicitation and Advertisement
(ICMPv4 Types , )
8.4.3 Home Agent Address Discovery Request/Reply (ICMPv6 Types
144/145)
8.4.4 Mobile Prefix Solicitation/Advertisement (ICMPv6 Types /147)
8.4.5 Mobile IPv6 Fast Handover Messages (ICMPv6 Type )
8.4.6 Multicast Listener Query/Report/Done (ICMPv6 Types
130/131/132)
8.4.7 Version Multicast Listener Discovery (MLDv2) (ICMPv6
Type )
8.4.8 Multicast Router Discovery (MRD) (IGMP Types /49/50,
ICMPv6 Types /152/153)
8.5 Neighbor Discovery in IPv6
8.5.1 ICMPv6 Router Solicitation and Advertisement (ICMPv6 Types
133, )
8.5.2 ICMPv6 Neighbor Solicitation and Advertisement (IMCPv6 Types
135, )
8.5.3 ICMPv6 Inverse Neighbor Discovery Solicitation/Advertisement
(ICMPv6 Types /142)
8.5.4 Neighbor Unreachability Detection (NUD)
8.5.5 Secure Neighbor Discovery (SEND)
8.5.6 ICMPv6 Neighbor Discovery (ND) Options
8.6 Translating ICMPv4 and ICMPv6
8.6.1 Translating ICMPv4 to ICMPv6
8.6.2 Translating ICMPv6 to ICMPv4
8.7 Attacks Involving ICMP
x xii Contents
8.8 Summary
8.9 References
Chapter Broadcasting and Local Multicasting (IGMP and MLD)
9.1 Introduction
9.2 Broadcasting
9.2.1 Using Broadcast Addresses
9.2.2 Sending Broadcast Datagrams
9.3 Multicasting
9.3.1 Converting IP Multicast Addresses to MAC/Ethernet Addresses
9.3.2 Examples
9.3.3 Sending Multicast Datagrams
9.3.4 Receiving Multicast Datagrams
9.3.5 Host Address Filtering
9.4 The Internet Group Management Protocol (IGMP) and Multicast Listener
Discovery Protocol (MLD)
9.4.1 IGMP and MLD Processing by Group Members (“Group
Member Part”)
9.4.2 IGMP and MLD Processing by Multicast Routers (“Multicast
Router Part”)
9.4.3 Examples
9.4.4 Lightweight IGMPv3 and MLDv2
9.4.5 IGMP and MLD Robustness
9.4.6 IGMP and MLD Counters and Variables
9.4.7 IGMP and MLD Snooping
9.5 Attacks Involving IGMP and MLD
9.6 Summary
9.7 References
Chapter User Datagram Protocol (UDP) and IP Fragmentation
10.1 Introduction
10.2 UDP Header
10.3 UDP Checksum
10.4 Examples
10.5 UDP and IPv6
10.5.1 Teredo: Tunneling IPv6 through IPv4 Networks
Contents xxiii
10.6 UDP-Lite
10.7 IP Fragmentation
10.7.1 Example: UDP/IPv4 Fragmentation
10.7.2 Reassembly Timeout
10.8 Path MTU Discovery with UDP
10.8.1 Example
10.9 Interaction between IP Fragmentation and ARP/ND
10.10 Maximum UDP Datagram Size
10.10.1 Implementation Limitations
10.10.2 Datagram Truncation
10.11 UDP Server Design
10.11.1 IP Addresses and UDP Port Numbers
10.11.2 Restricting Local IP Addresses
10.11.3 Using Multiple Addresses
10.11.4 Restricting Foreign IP Address
10.11.5 Using Multiple Servers per Port
10.11.6 Spanning Address Families: IPv4 and IPv6
10.11.7 Lack of Flow and Congestion Control
10.12 Translating UDP/IPv4 and UDP/IPv6 Datagrams
10.13 UDP in the Internet
10.14 Attacks Involving UDP and IP Fragmentation
10.15 Summary
10.16 References
Chapter Name Resolution and the Domain Name System (DNS)
11.1 Introduction
11.2 The DNS Name Space
11.2.1 DNS Naming Syntax
11.3 Name Servers and Zones
11.4 Caching
11.5 The DNS Protocol
11.5.1 DNS Message Format
11.5.2 The DNS Extension Format (EDNS0)
11.5.3 UDP or TCP
11.5.4 Question (Query) and Zone Section Format
11.5.5 Answer, Authority, and Additional Information Section Formats
11.5.6 Resource Record Types
x xiv Contents
11.5.7 Dynamic Updates (DNS UPDATE)
11.5.8 Zone Transfers and DNS NOTIFY
11.6 Sort Lists, Round-Robin, and Split DNS
11.7 Open DNS Servers and DynDNS
11.8 Transparency and Extensibility
11.9 Translating DNS from IPv4 to IPv6 (DNS64)
11.10 LLMNR and mDNS
11.11 LDAP
11.12 Attacks on the DNS
11.13 Summary
11.14 References
Chapter TCP: The Transmission Control Protocol (Preliminaries)
12.1 Introduction
12.1.1 ARQ and Retransmission
12.1.2 Windows of Packets and Sliding Windows
12.1.3 Variable Windows: Flow Control and Congestion Control
12.1.4 Setting the Retransmission Timeout
12.2 Introduction to TCP
12.2.1 The TCP Service Model
12.2.2 Reliability in TCP
12.3 TCP Header and Encapsulation
12.4 Summary
12.5 References
Chapter TCP Connection Management
13.1 Introduction
13.2 TCP Connection Establishment and Termination
13.2.1 TCP Half-Close
13.2.2 Simultaneous Open and Close
13.2.3 Initial Sequence Number (ISN)
13.2.4 Example
13.2.5 Timeout of Connection Establishment
13.2.6 Connections and Translators
13.3 TCP Options
13.3.1 Maximum Segment Size (MSS) Option
Contents xxv
13.3.2 Selective Acknowledgment (SACK) Options
13.3.3 Window Scale (WSCALE or WSOPT) Option
13.3.4 Timestamps Option and Protection against Wrapped
Sequence Numbers (PAWS)
13.3.5 User Timeout (UTO) Option
13.3.6 Authentication Option (TCP-AO)
13.4 Path MTU Discovery with TCP
13.4.1 Example
13.5 TCP State Transitions
13.5.1 TCP State Transition Diagram
13.5.2 TIME_WAIT (2MSL Wait) State
13.5.3 Quiet Time Concept
13.5.4 FIN_WAIT_2 State
13.5.5 Simultaneous Open and Close Transitions
13.6 Reset Segments
13.6.1 Connection Request to Nonexistent Port
13.6.2 Aborting a Connection
13.6.3 Half-Open Connections
13.6.4 TIME-WAIT Assassination (TWA)
13.7 TCP Server Operation
13.7.1 TCP Port Numbers
13.7.2 Restricting Local IP Addresses
13.7.3 Restricting Foreign Endpoints
13.7.4 Incoming Connection Queue
13.8 Attacks Involving TCP Connection Management
13.9 Summary
13.10 References
Chapter TCP Timeout and Retransmission
14.1 Introduction
14.2 Simple Timeout and Retransmission Example
14.3 Setting the Retransmission Timeout (RTO)
14.3.1 The Classic Method
14.3.2 The Standard Method
14.3.3 The Linux Method
14.3.4 RTT Estimator Behaviors
14.3.5 RTTM Robustness to Loss and Reordering
x xvi Contents
14.4 Timer-Based Retransmission
14.4.1 Example
14.5 Fast Retransmit
14.5.1 Example
14.6 Retransmission with Selective Acknowledgments
14.6.1 SACK Receiver Behavior
14.6.2 SACK Sender Behavior
14.6.3 Example
14.7 Spurious Timeouts and Retransmissions
14.7.1 Duplicate SACK (DSACK) Extension
14.7.2 The Eifel Detection Algorithm
14.7.3 Forward-RTO Recovery (F-RTO)
14.7.4 The Eifel Response Algorithm
14.8 Packet Reordering and Duplication
14.8.1 Reordering
14.8.2 Duplication
14.9 Destination Metrics
14.10 Repacketization
14.11 Attacks Involving TCP Retransmission
14.12 Summary
14.13 References
Chapter TCP Data Flow and Window Management
15.1 Introduction
15.2 Interactive Communication
15.3 Delayed Acknowledgments
15.4 Nagle Algorithm
15.4.1 Delayed ACK and Nagle Algorithm Interaction
15.4.2 Disabling the Nagle Algorithm
15.5 Flow Control and Window Management
15.5.1 Sliding Windows
15.5.2 Zero Windows and the TCP Persist Timer
15.5.3 Silly Window Syndrome (SWS)
15.5.4 Large Buffers and Auto-Tuning
15.6 Urgent Mechanism
15.6.1 Example
15.7 Attacks Involving Window Management
Contents xxvii
15.8 Summary
15.9 References
Chapter TCP Congestion Control
16.1 Introduction
16.1.1 Detection of Congestion in TCP
16.1.2 Slowing Down a TCP Sender
16.2 The Classic Algorithms
16.2.1 Slow Start
16.2.2 Congestion Avoidance
16.2.3 Selecting between Slow Start and Congestion Avoidance
16.2.4 Tahoe, Reno, and Fast Recovery
16.2.5 Standard TCP
16.3 Evolution of the Standard Algorithms
16.3.1 NewReno
16.3.2 TCP Congestion Control with SACK
16.3.3 Forward Acknowledgment (FACK) and Rate Halving
16.3.4 Limited Transmit
16.3.5 Congestion Window Validation (CWV)
16.4 Handling Spurious RTOs—the Eifel Response Algorithm
16.5 An Extended Example
16.5.1 Slow Start Behavior
16.5.2 Sender Pause and Local Congestion (Event )
16.5.3 Stretch ACKs and Recovery from Local Congestion
16.5.4 Fast Retransmission and SACK Recovery (Event )
16.5.5 Additional Local Congestion and Fast Retransmit Events
16.5.6 Timeouts, Retransmissions, and Undoing cwnd Changes
16.5.7 Connection Completion
16.6 Sharing Congestion State
16.7 TCP Friendliness
16.8 TCP in High-Speed Environments
16.8.1 HighSpeed TCP (HSTCP) and Limited Slow Start
16.8.2 Binary Increase Congestion Control (BIC and CUBIC)
16.9 Delay-Based Congestion Control
16.9.1 Vegas
16.9.2 FAST
x xviii Contents
16.9.3 TCP Westwood and Westwood+
16.9.4 Compound TCP
16.10 Buffer Bloat
16.11 Active Queue Management and ECN
16.12 Attacks Involving TCP Congestion Control
16.13 Summary
16.14 References
Chapter TCP Keepalive
17.1 Introduction
17.2 Description
17.2.1 Keepalive Examples
17.3 Attacks Involving TCP Keepalives
17.4 Summary
17.5 References
Chapter Security: EAP, IPsec, TLS, DNSSEC, and DKIM
18.1 Introduction
18.2 Basic Principles of Information Security
18.3 Threats to Network Communication
18.4 Basic Cryptography and Security Mechanisms
18.4.1 Cryptosystems
18.4.2 Rivest, Shamir, and Adleman (RSA) Public Key Cryptography
18.4.3 Diffie-Hellman-Merkle Key Agreement (aka Diffie-Hellman or DH)
18.4.4 Signcryption and Elliptic Curve Cryptography (ECC)
18.4.5 Key Derivation and Perfect Forward Secrecy (PFS)
18.4.6 Pseudorandom Numbers, Generators, and Function Families
18.4.7 Nonces and Salt
18.4.8 Cryptographic Hash Functions and Message Digests
18.4.9 Message Authentication Codes (MACs, HMAC, CMAC, and GMAC)
18.4.10 Cryptographic Suites and Cipher Suites
18.5 Certificates, Certificate Authorities (CAs), and PKIs
18.5.1 Public Key Certificates, Certificate Authorities, and X.509
18.5.2 Validating and Revoking Certificates
18.5.3 Attribute Certificates
Contents xxix
18.6 TCP/IP Security Protocols and Layering
18.7 Network Access Control: .1X, .1AE, EAP, and PANA
18.7.1 EAP Methods and Key Derivation
18.7.2 The EAP Re-authentication Protocol (ERP)
18.7.3 Protocol for Carrying Authentication for Network Access (PANA)
18.8 Layer IP Security (IPsec)
18.8.1 Internet Key Exchange (IKEv2) Protocol
18.8.2 Authentication Header (AH)
18.8.3 Encapsulating Security Payload (ESP)
18.8.4 Multicast
18.8.5 L2TP/IPsec
18.8.6 IPsec NAT Traversal
18.8.7 Example
18.9 Transport Layer Security (TLS and DTLS)
18.9.1 TLS .2
18.9.2 TLS with Datagrams (DTLS)
18.10 DNS Security (DNSSEC)
18.10.1 DNSSEC Resource Records
18.10.2 DNSSEC Operation
18.10.3 Transaction Authentication (TSIG, TKEY, and SIG(0))
18.10.4 DNSSEC with DNS64
18.11 DomainKeys Identified Mail (DKIM)
18.11.1 DKIM Signatures
18.11.2 Example
18.12 Attacks on Security Protocols
18.13 Summary
18.14 References
Glossary of Acronyms
Index





























前言/序言





深入探究互联网基石:网络协议的精妙世界 想象一下,您正在向远方的朋友发送一封电子邮件,或者在线浏览令人兴奋的新闻。这一切流畅无碍的背后,是一套庞大而精密的通信协议在辛勤工作,它们如同无形的交通规则,指导着数据在千丝万缕的网络中穿梭,最终抵达目的地。这套协议的灵魂,便是TCP/IP协议族,它不仅是现代互联网的基石,更是连接全球的生命线。 本书将带领您踏上一段深度探索TCP/IP协议族奥秘的旅程。我们将剥离那些看似神秘的技术术语,深入剖析每一层协议的设计哲学、工作机制以及它们之间如何协同配合,共同构建起我们赖以生存的数字世界。这不是一本简单的操作指南,也不是泛泛而谈的网络入门读物。我们将以严谨的态度,系统地梳理TCP/IP协议族的体系结构,从最底层的数据链路层,逐步向上,直至应用层,展现数据的诞生、传输、路由、交付以及最终被解读的完整生命周期。 从比特流到信息洪流:数据传输的严谨流程 我们的探索始于物理层和数据链路层,在这里,抽象的概念变得 tangible。您将理解数据是如何被编码成电信号或光信号,如何在物理介质上传播。我们将深入探讨以太网(Ethernet)的工作原理,了解MAC地址如何扮演着网络设备的“身份证”,以及帧(Frame)的封装过程,如何将网络层的数据包裹起来,准备在局域网内进行传输。ARP(地址解析协议)将在这一阶段揭开面纱,它如何巧妙地将IP地址与MAC地址进行匹配,为后续的数据传输铺平道路。 IP:数据传输的“邮递员”,负责“送达” 随着我们向上推进到网络层,IP(Internet Protocol)将成为我们关注的焦点。IP协议就像一个高效的“邮递员”,负责将数据包(Packet)从源主机可靠地传输到目标主机,即使它们身处天壤之别。我们将详细分析IP数据包的结构,理解其头部包含的关键信息,如源IP地址、目标IP地址、TTL(生存时间)以及协议字段等。更重要的是,我们将深入探讨IP的路由机制。路由器是如何根据IP地址进行转发决策的?路由表是如何构建和维护的?我们将揭示BGP(边界网关协议)等路由协议在构建全球互联网路由表中的作用,理解数据包如何在复杂的网络拓扑中找到最短或最优的路径。NAT(网络地址转换)技术也将在此阶段进行深入解析,它如何巧妙地允许多台私有IP地址的设备共享一个公共IP地址,缓解了IPv4地址的枯竭问题。 TCP与UDP:两种截然不同的“通信风格” 当数据包抵达目标主机的网络层后,传输层将接过接力棒,负责端到端的通信。在这里,我们将遇见两位性格迥异的“通信者”:TCP(Transmission Control Protocol)和UDP(User Datagram Protocol)。 TCP:可靠性的守护者。 TCP以其卓越的可靠性而闻名,它是构建绝大多数对数据完整性要求极高的应用的基石,例如网页浏览、文件传输和电子邮件。我们将深入解析TCP的三次握手(Three-way Handshake)过程,理解它如何建立一个稳定可靠的连接,确保数据的有序、无损和无重复传输。慢启动(Slow Start)、拥塞避免(Congestion Avoidance)、快速重传(Fast Retransmit)和快速恢复(Fast Recovery)等拥塞控制算法将逐一展现在您面前,它们是TCP在复杂网络环境中保持高效和稳定的关键。我们也将在窗口机制(Sliding Window)上下功夫,理解TCP如何通过滑动窗口机制实现高效的数据传输和流量控制。 UDP:速度的优先者。 与TCP的严谨不同,UDP则是一个追求速度的“信使”。它不保证数据的可靠传输,也不进行连接的建立,而是直接将数据报(Datagram)发送出去。这种“尽力而为”的特性使得UDP在一些对实时性要求极高但对少量丢包容忍度较高的应用中大放异彩,例如在线游戏、流媒体传输和DNS(域名系统)查询。我们将探讨UDP头部信息的简洁性,以及它在特定场景下的优势。 应用层:数据的最终“诠释者” 在传输层的保障之下,数据最终抵达应用层,等待被应用程序理解和使用。这一层协议更加贴近我们的日常使用,涵盖了我们与互联网交互的方方面面。我们将一一剖析那些耳熟能详的应用层协议: HTTP/HTTPS:网页的语言。 超文本传输协议(HTTP)是万维网(World Wide Web)的核心,它定义了浏览器和Web服务器之间如何进行通信。我们将深入了解HTTP请求和响应的格式,GET、POST等请求方法,以及状态码的含义。HTTPS(HTTP Secure)将作为HTTP的安全升级版被详细介绍,理解SSL/TLS(Secure Sockets Layer/Transport Layer Security)协议如何为网络通信提供加密和身份验证,保护您的在线隐私。 DNS:互联网的“电话簿”。 域名系统(DNS)扮演着互联网“电话簿”的角色,它将我们易于记忆的域名(如www.example.com)解析成机器可识别的IP地址。我们将探讨DNS的层级结构、查询过程,以及各种DNS记录类型,理解这个庞大的分布式数据库是如何高效运作的。 FTP:文件传输的桥梁。 文件传输协议(FTP)是实现文件在网络上进行传输的标准协议,我们将了解其工作模式,包括控制连接和数据连接的建立,以及主动模式和被动模式的区别。 SMTP/POP3/IMAP:电子邮件的传递者。 电子邮件的发送和接收依赖于一系列应用层协议,包括用于发送邮件的SMTP(Simple Mail Transfer Protocol),以及用于接收邮件的POP3(Post Office Protocol version 3)和IMAP(Internet Message Access Protocol)。我们将解析它们各自的功能和交互方式。 协议之间的协同:精妙的“交响乐” 本书的独特之处在于,它不仅会逐一讲解各个协议,更重要的是,将强调它们之间如何进行协同工作,共同完成复杂的网络通信任务。您将看到,从用户在浏览器中输入网址的那一刻起,一系列的协议是如何依次启动、协同配合,最终将网页内容呈现在您眼前。IP协议负责将数据包路由到正确的服务器,TCP协议保证了数据的可靠传输,DNS协议解析了域名,而HTTP协议则定义了浏览器和服务器之间的对话内容。 掌握网络技术的“内功心法” 通过对TCP/IP协议族的深入理解,您将获得一套宝贵的“内功心法”,能够从根本上理解互联网的工作原理。这不仅对于网络工程师、系统管理员、安全专家而言至关重要,对于任何希望更深入了解数字化世界运作方式的个人,都将是一次极具价值的学习体验。您将能够更精准地诊断网络问题,更有效地设计和部署网络应用,更深刻地理解网络安全的关键所在。 本书旨在为您提供一个全面、深入且易于理解的学习路径,帮助您掌握TCP/IP协议族的精髓,从而更好地驾驭这个日益互联的世界。准备好迎接这场技术之旅,开启您对网络世界更深层次的探索吧!

用户评价

评分

这是一本真正能让你“看见”网络传输的书。我一直觉得网络通信是个黑箱,数据进去,信息出来,中间的过程就像魔法。这本书彻底打破了这个魔法,让我看到了协议层层封装、解封装的精妙设计。作者在解释ARP协议的时候,那种“邻居之间如何互相认识”的比喻,让我一下子就明白了它的作用。还有IP协议中的分片和重组,更是让人惊叹于网络是如何在不完美的网络环境下,依然能够尽可能地将数据完整送达。我最喜欢的部分是关于TCP的连接管理,从三次握手到四次挥手,每一步都有其特定的含义和目的,这让我理解了为什么网络连接会有一个建立和关闭的过程。书中的插图虽然不多,但都恰到好处,能够帮助理解一些关键的概念。虽然阅读过程中会遇到一些比较晦涩的技术名词,需要借助其他资料或者反复阅读,但每一次的理解都会让我觉得自己在网络世界的认知上又前进了一大步,感觉自己不再是茫然的旁观者,而是能窥探到网络核心运作机制的“内部人士”。

评分

坦白说,一开始拿到这本书,我确实有点被它的厚度和密集的专业术语给吓到了。网络协议对我来说,一直是个比较抽象和难以捉摸的领域。但当我真正沉下心来,逐页翻阅的时候,才发现这本书的魅力所在。作者并没有一开始就抛出复杂的概念,而是循序渐进,从最基础的网络概念讲起,然后逐步深入到TCP/IP的各个核心协议。我特别欣赏它在解释每一个协议时,都会先交代其产生的背景和解决的问题,这样我就能理解这个协议存在的“意义”。书中的图表质量非常高,很多关键的网络交互过程,通过简单的示意图就能一目了然,大大减轻了理解的难度。我甚至会跟着书中的讲解,在自己的电脑上尝试一些简单的网络命令,来验证书中的描述,这种理论与实践相结合的学习方式,让我觉得收获特别大。虽然我对其中的一些深入细节还有些模糊,但整体上,这本书已经为我构建了一个坚实而清晰的网络协议知识框架。

评分

这本书真是打开了我理解网络世界的钥匙!一直以来,我都知道互联网是靠着一堆协议在运转,但具体是怎么回事,我一直迷迷糊糊。读完这本《TCP/IP详解·卷1:协议(英文版第2版)》之后,那种困惑感荡然无存。作者用极其详尽但又逻辑清晰的方式,一步一步地剖析了TCP/IP协议栈的每一个层级,从最底层的物理层,到我们最熟悉的HTTP协议,每一个概念都讲得透彻入微。我尤其喜欢它对各个协议的报文格式进行细致讲解的部分,就像给网络通信过程中的每一个“信封”和“信纸”都做了详细的解剖,让我能够理解数据究竟是如何封装、传输、拆解的。书中丰富的图示也是一大亮点,它们极大地帮助我可视化了复杂的网络过程,比如三次握手的动态过程,又或者是数据包在不同协议层之间的穿梭。而且,这本书并不是那种枯燥乏味的理论堆砌,它更多的是一种“实战”的指导,让你在理解理论的同时,也能思考如何在实际的网络应用中运用这些知识。我感觉自己不再仅仅是网络的使用者,而是开始真正理解网络工作的“幕后故事”了。

评分

这本书的阅读体验,可以说是“艰辛”与“愉悦”并存。艰辛在于,它确实是一本需要投入大量时间和精力的“硬菜”,里面的技术细节非常丰富,很多时候需要反复咀嚼才能领会。但是,一旦你克服了初期的学习门槛,那种豁然开朗的感觉是无与伦比的。作者在讲解IP地址、子网掩码、路由选择这些基础概念时,就像在为搭建一座摩天大楼打下坚实的地基。而当他深入讲解TCP、UDP、ARP、ICMP等核心协议时,就如同在描绘建筑的钢筋骨架,让你清晰地看到数据流动的轨迹。我尤其喜欢书里对TCP的可靠传输机制的细致描述,比如序列号、确认应答、超时重传等,这些机制的巧妙设计,让我对互联网的稳定运行有了更深的敬意。这本书不仅仅是技术手册,更像是一位资深工程师在分享他的毕生绝学,让你在理解枯燥技术的同时,也能感受到网络工程的智慧和艺术。

评分

我之前对网络协议的认知,基本上停留在“知道有这么回事”的层面,这次终于有机会深入了解。这本书的篇幅确实不小,但它带来的知识量和深度绝对是物超所值的。作者在讲解每一个协议时,都仿佛是一位经验丰富的工程师,将自己多年的实践经验和深刻理解娓娓道来。他不仅介绍了协议的“是什么”,更重要的是“为什么是这样”。比如,为什么TCP要有三次握手?为什么UDP可以丢包?这些看似基本的问题,在这本书里都得到了非常有说服力的解答。我印象最深刻的是关于TCP拥塞控制的那部分,它就像是在描述一场精密的“交通管制”,如何在高流量的网络环境下,巧妙地平衡效率和稳定性。书中的案例分析也很到位,通过一些实际的网络故障场景,来印证理论知识的运用,让我觉得这些抽象的协议瞬间变得鲜活起来。这本书确实需要耐心去读,因为涉及到的细节非常多,但每一次的阅读都像是在攀登一座知识的高峰,收获的风景也越来越壮丽。

评分

很好不错,经典中的经典,好好

评分

看网上说的这两本书是这方面的传世之作,很值得嘟嘟,所以就买回来了,还有一本没买,等着看看,呵呵

评分

跟快递员说放快递柜,等了半天没收到短信,原来快递员把电话弄错,提货短信发给别人了,打了好几个电话,总算取到货了;然而包装箱不仅破了,其中的一本书还有点问题,里面有没裁开的页,封底的防伪标志也是不完整的;促销活动买的,价格打了折扣,希望京东别这样让购物体验也跟着打折扣

评分

我心爱的书 被磕到了一点点 没办法物流的锅

评分

印刷和纸张都挺好的,但为什么卷一是白色的纸张,卷二和卷三是黄色的

评分

这本书同事推荐的,确实不错,值得大家阅读。

评分

好评 !点赞!加油干。撸起袖子加油干!tcp

评分

帮同学买的,没想到这么厚,这个价格也是可以了,很值。

评分

很好的一本学习tcp/ip的书籍,

相关图书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 book.cndgn.com All Rights Reserved. 新城书站 版权所有