You are previewing Understanding TCP/IP.
O'Reilly logo
Understanding TCP/IP

Book Description

"

A clear and comprehensive guide to TCP/IP protocols.

  • Essential reference to what's really going on at the network level

  • Covers Telnet, FTP, HTTP, SMTP, ESMTP, IMAP4, POP3, NNTP, and LDAP

  • IP4 and IP6

In Detail

This book covers in detail the Open System Interconnection (OSI) reference model and the TCP/IP protocols that operate that different layers. Its coverage includes various application protocols. The authors explain in an easy-to-read style networking concepts and protocols, with examples that make the book a practical guide in addition to its coverage of theory.

The TCP/IP protocol stack is the foundation of the internet and, more generally, network communication. Operating at various physical and logical layers, these protocols are the language that allow computers to communicate with each other. While most IT professionals don’t work at the protocol level regularly, there are times when a clear understanding of what’s going at the network level can be invaluable. This is the book to give that grounding and to act as a definitive reference when needed.

"

Table of Contents

  1. Understanding TCP/IP
    1. Understanding TCP/IP
    2. Credits
    3. About the Authors
    4. Acknowledgements
    5. Preface
      1. What This Book Covers
      2. What You Need for This Book
      3. Conventions
      4. Reader Feedback
      5. Customer Support
        1. Errata
        2. Questions
    6. 1. Introduction to Network Protocols
      1. 1.1 ISO OSI
        1. 1.1.1 Physical Layer
        2. 1.1.2 Data Link Layer
        3. 1.1.3 Network Layer
        4. 1.1.4 Transport Layer
        5. 1.1.5 Session Layer
        6. 1.1.6 Presentation Layer
        7. 1.1.7 Application Layer
      2. 1.2 TCP/IP
        1. 1.2.1 Internet Protocol
        2. 1.2.2 TCP and UDP
        3. 1.2.3 Application Protocols
      3. 1.3 Methods of Information Transmission
        1. 1.3.1 Synchronous Transmission
        2. 1.3.2 Packet Transmission
        3. 1.3.3 Asynchronous Transmission
      4. 1.4 Virtual Circuit
    7. 2. Network Monitoring Tools
      1. 2.1 Packet Drivers
      2. 2.2 MS Network Monitor
        1. 2.2.1 Frame Capturing
        2. 2.2.2 Viewing Captured Frames
        3. 2.2.3 Filters for Displaying Captured Frames
      3. 2.3 Ethereal
      4. 2.4 Homework
    8. 3. Physical Layer
      1. 3.1 Serial Line
        1. 3.1.1 Serial and Parallel Data Transport
        2. 3.1.2 Symmetrical and Asymmetrical Signals
        3. 3.1.3 Synchronous and Asynchronous Transport
        4. 3.1.4 V.24, V.35, and X.21 Protocols
        5. 3.1.5 Null Modem
      2. 3.2 Modems
        1. 3.2.1 Dial-Up Connection
        2. 3.2.2 Leased Lines
        3. 3.2.3 Automatic Modem
          1. 3.2.3.1 AT Commands
        4. 3.2.4 Synchronous Transmission
        5. 3.2.5 Baseband, Voice Band, and ADSL
        6. 3.2.6 Transmission Rate
          1. 3.2.6.1 The V.90 Recommendation
        7. 3.2.7 Data Compression
        8. 3.2.8 Error Detection
      3. 3.3 Digital Circuits
        1. 3.3.1 ISDN
          1. 3.3.1.1 Basic Rate
          2. 3.3.1.2 Higher Layer Protocols and Signalization
        2. 3.3.2 E and T Lines
      4. 3.4 LAN
        1. 3.4.1 Structured Cables
          1. 3.4.1.1 Copper Distribution
          2. 3.4.1.2 Optical Fibers
        2. 3.4.2 Ethernet (10 Mbps)
          1. 3.4.2.1 AUI
          2. 3.4.2.2 BNC
          3. 3.4.2.3 Twisted-Pair
            1. Optical Fiber
        3. 3.4.3 Fast Ethernet (100 Mbps)
        4. 3.4.4 Gigabyte Ethernet (1 Gbps)
    9. 4. Link Layer
      1. 4.1 Serial Line Internet Protocol
      2. 4.2 Compressed SLIP
      3. 4.3 High-Level Data Link Control Protocol
        1. 4.3.1 Flag
        2. 4.3.2 Address Field
        3. 4.3.3 Control Field
          1. 4.3.3.1 I-Frame
          2. 4.3.3.2 S-Frame
          3. 4.3.3.3 U-Frame
        4. 4.3.4 Data Field and a Transferred Protocol Type
        5. 4.3.5 Checksum
        6. 4.3.6 HDLC Protocol Summary
      4. 4.4 Point-To-Point Protocol
        1. 4.4.1 Dialing a Phone Line
        2. 4.4.2 Link Control Protocol
        3. 4.4.3 Authentication
          1. 4.4.3.1 Password Authentication Protocol
          2. 4.4.3.2 Challenge Handshake Authentication Protocols
          3. 4.4.3.3 Extensible Authentication Protocol
          4. 4.4.3.4 Radius Protocol
        4. 4.4.4 Call-Back Control Protocol
        5. 4.4.5 Other Protocols
          1. 4.4.5.1 Multilink Protocol
          2. 4.4.5.2 Bandwidth Allocation Protocol and Bandwidth Allocation Control Protocol
          3. 4.4.5.3 Compression Control Protocol
          4. 4.4.5.4 Encryption Control Protocol
          5. 4.4.5.5 Setting Encryption Keys
        6. 4.4.6 Internet Protocol Control Protocol
      5. 4.5 Frame Relay
        1. 4.5.1 A Frame Relay Protocol Frame
        2. 4.5.2 IP Through Frame Relay
        3. 4.5.3 Local Management Interface
        4. 4.5.4 Frame Relay Configuration on CISCO Routers
        5. 4.5.5 Frame Relay Protocol
      6. 4.6 Local Area Networks
        1. 4.6.1 Ethernet
      7. 4.7 Wireless Local Area Network
        1. 4.7.1 Typical WLAN Configuration
          1. 4.7.1.1 Peer-To-Peer Networks
          2. 4.7.1.2 Access Point
          3. 4.7.1.3 Roaming (Several Access Points)
          4. 4.7.1.4 Backbone Point-to-Point Connection
        2. 4.7.2 Antennas
        3. 4.7.3 Security of WLAN
          1. 4.7.3.1 Service Set ID
          2. 4.7.3.2 Wired Equivalent Privacy
          3. 4.7.3.3 IEEE 802.1X
      8. 4.8 Fixed Wireless Access
        1. 4.8.1 The Differences Between FWA and WLAN
        2. 4.8.2 The Main Benefits of FWA
    10. 5. Internet Protocol
      1. 5.1 IP Datagram
      2. 5.2. Internet Control Message Protocol
        1. 5.2.1 Echo
        2. 5.2.2 Destination Unreachable
        3. 5.2.3 Source Quench (Lower Sending Speed)
        4. 5.2.4 Redirect
        5. 5.2.5 ICMP Router Discovery
        6. 5.2.6 Time Exceeded
        7. 5.2.7 Subnet Address Mask Request
        8. 5.2.8 Time Synchronization
      3. 5.3 Fragmentation
      4. 5.4 Optional Entries in the IP Header
        1. 5.4.1 Record Route
        2. 5.4.2 Timestamp
        3. 5.4.3 Source Routing
        4. 5.4.4 IP Router Alert Option
      5. 5.5 ARP and RARP Protocols
        1. 5.5.1 ARP Filtering
        2. 5.5.2 Proxy ARP
        3. 5.5.3 Reverse ARP
      6. 5.6 Internet Group Management Protocol
      7. 5.7 Multicast and Link Protocol
    11. 6. IP Address
      1. 6.1 Network: First Period of History
        1. 6.1.1 Special-Use IP Addresses
        2. 6.1.2 Network Mask
      2. 6.2 Network: Second Period of History
        1. 6.2.1 Subnetworks
        2. 6.2.2 Super-Networks and Autonomous Systems
      3. 6.3 IP Addresses in the Intranet and Special-Use IP Addresses
      4. 6.4 Unnumbered Interface
        1. 6.4.1 Dynamic Address Assignment
      5. 6.5 Address Plan
      6. 6.6 Over 254 Interfaces in a LAN
    12. 7. Routing
      1. 7.1 Forwarding and Screening
      2. 7.2 Routing
        1. 7.2.1 Processing
      3. 7.3 Handling Routing Tables
        1. 7.3.1 List of Contents of a Routing Table in a Command Prompt
          1. 7.3.1.1 Contents of a Routing Table in UNIX
        2. 7.3.2 Routing Table Listing in Windows 2000/XP/2003
        3. 7.3.3 Contents of a Routing Table in Cisco Routers
        4. 7.3.4 Routing Table Entry Addition and Removal
      4. 7.4 Routing Protocols
        1. 7.4.1 Routing Vector Protocols
          1. 7.4.1.1 RVP Principle
          2. 7.4.1.2 RIP and RIP2
        2. 7.4.2 Link State Protocols
          1. 7.4.2.1 OSPF
        3. 7.4.3 IPG and EGP
        4. 7.4.4 Aggregation
        5. 7.4.5 Redistribution
      5. 7.5 Neutral Exchange Point
    13. 8. IP Version 6
      1. 8.1 Next Headers of IP Version 6 Datagram
        1. 8.1.1 Hop-By-Hop Options
        2. 8.1.2 Routing Header
        3. 8.1.3 Fragment Header
        4. 8.1.4 Authentication Header
        5. 8.1.5 Encapsulating Security Payload Header
      2. 8.2 ICMP Version 6 Protocol
        1. 8.2.1 Address Resolution
        2. 8.2.2 Router Discovery
        3. 8.2.3 Redirect
      3. 8.3. IP Addresses
        1. 8.3.1 Types of Address Inscription
        2. 8.3.2 Multicasts
        3. 8.3.3 Unicasts
      4. 8.4 Windows 2003
    14. 9. Transmission Control Protocol
      1. 9.1 TCP Segments
      2. 9.2 TCP Header Options
      3. 9.3 Establishing and Terminating a Connection with TCP
        1. 9.3.1 Establishing a Connection
        2. 9.3.2 Terminating a Connection
        3. 9.3.3 Aborting a Connection
      4. 9.4 Determining the Connection State
      5. 9.5 Response Delay Techniques
      6. 9.6 Window Technique
      7. 9.7 Network Congestion
        1. 9.7.1 Slow Start
        2. 9.7.2 Congestion Avoidance
        3. 9.7.3 Segment Loss
      8. 9.8 The Window Scale Factor
    15. 10. User Datagram Protocol
      1. 10.1 Fragmentation
      2. 10.2 Broadcasts and Multicasts
    16. 11. Domain Name System
      1. 11.1 Domains and Subdomains
      2. 11.2 Name Syntax
      3. 11.3 Reverse Domains
      4. 11.4 Resource Records
      5. 11.5 DNS Protocol
      6. 11.6 DNS Query
        1. 11.6.1 DNS Query Packet Format
        2. 11.6.2 DNS Query Packet Header
        3. 11.6.3 Question Section
        4. 11.6.4 The Answer Section, Authoritative Servers, and Additional Information
    17. 12. Telnet
      1. 12.1 The NVT Protocol
      2. 12.2 Telnet Protocol Commands
        1. 12.2.1 Signal for Synchronization
        2. 12.2.2 The Telnet Command Line
        3. 12.2.3 Communication Modes
      3. 12.3 Example of Windows NT Client Communication
      4. 12.4 Example of UNIX Client Communication
    18. 13. File Transfer Protocol
      1. 13.1 Architecture
      2. 13.2 Active Mode of FTP Protocol Communication
      3. 13.3 Passive Mode of FTP Protocol Communication
      4. 13.4 FTP Commands
      5. 13.5 Proxy
      6. 13.6 Return Codes
      7. 13.7 Abnormal Termination of Data Transfer
      8. 13.8 Anonymous FTP
    19. 14. Hypertext Transfer Protocol
      1. 14.1 Client-Server
      2. 14.2 Proxy
      3. 14.3 Gateway
      4. 14.4 Tunnel
      5. 14.5 More Intermediate Nodes
      6. 14.6 Uniform Resource Identifier
        1. 14.6.1 The http Scheme
        2. 14.6.2 The ftp Scheme
        3. 14.6.3 The mailto Scheme
        4. 14.6.4 The nntp Scheme
        5. 14.6.5 The telnet Scheme
        6. 14.6.6 The file Scheme
        7. 14.6.7 The pop Scheme
      7. 14.7 Relative URI
      8. 14.8 The HTTP Request
        1. 14.8.1 The GET Method
        2. 14.8.2 The POST Method
        3. 14.8.3 The HEAD Method
        4. 14.8.4 The TRACE Method
        5. 14.8.5 The OPTIONS Method
      9. 14.9 The HTTP Response
        1. 14.9.1 An Overview of Result Codes
      10. 14.10 Other Header Fields
        1. 14.10.1 Accept Header Field
        2. 14.10.2 Client Authentication
        3. 14.10.3 Proxy Authentication
        4. 14.10.4 Content Header Field
        5. 14.10.5 Redirection and Temporary Unavailability of Objects
        6. 14.10.6 Cache
        7. 14.10.7 Software Information
      11. 14.11 Cookie
        1. 14.11.1 Set-Cookie and Set-Cookie2 Header Fields
          1. 14.11.1.1 Cookie Header Field
    20. 15. Email
      1. 15.1 Email Architecture
        1. 15.1.1 DNS and Email
      2. 15.2 Mail Message Format
        1. 15.2.1 Basic Header Fields
      3. 15.3 MIME
        1. 15.3.1 MIME Header Fields
          1. 15.3.1.1 MIME-Version
          2. 15.3.1.2 Content-Type
          3. 15.3.1.3 Content-Transfer-Encoding
          4. 15.3.1.4 Content-Disposition
        2. 15.3.2 Standard Encoding Mechanisms
          1. 15.3.2.1 Quoted-Printable
          2. 15.3.2.2 Base64
        3. 15.3.3 Non-ASCII Text in Message Header Fields
        4. 15.3.4 Discrete Media Types in Content-Type
          1. 15.3.4.1 text
          2. 15.3.4.2 application
          3. 15.3.4.3 image
          4. 15.3.4.4 audio
          5. 15.3.4.5 video
          6. 15.3.4.6 model
        5. 15.3.5 Composite Media Types in Content-Type
          1. 15.3.5.1 multipart
          2. 15.3.5.2 message
      4. 15.4 SMTP
      5. 15.5 ESMTP
        1. VERB
        2. 8BITMIME
        3. SIZE
        4. ETRN
        5. 15.5.1 Message Delivery Receipt
          1. 15.5.1.1 Delivery Status Notification
          2. 15.5.1.2 The Disposition-Notification-To Header Field
      6. 15.6 POP3
      7. 15.7 IMAP4
        1. 15.7.1 Unauthenticated State
          1. 15.7.1.1 LOGIN
          2. 15.7.1.2 AUTHENTICATE
        2. 15.7.2 Authenticated State
          1. 15.7.2.1 CREATE, DELETE, RENAME, and LIST Commands
          2. 15.7.2.2 SUBSRCIBE, LSUB, and UNSUBSCRIBE Commands
          3. 15.7.2.3 STATUS
          4. 15.7.2.4 SELECT and EXAMINE Commands
        3. 15.7.3 Open Mailbox
          1. 15.7.3.1 COPY
          2. 15.7.3.2 SEARCH
          3. 15.7.3.3 FETCH
            1. 15.7.3.4 STORE
            2. 15.7.3.5 EXPUNGE
            3. 15.7.3.6 CLOSE
        4. 15.8 Mailing Lists
    21. 16. Forums
      1. 16.1 Message Format
      2. 16.2 NNTP Protocol
        1. 16.2.1 End User Communication
        2. 16.2.2 Communication Among Servers
        3. 16.2.3 Session Termination
    22. 17. Lightweight Directory Access Protocol
      1. 17.1 Protocol Principle
      2. 17.2 Data Model of LDAP Directory
      3. 17.3 LDAP Protocol Data Units
        1. 17.3.1 The Search Operation
          1. 17.3.1.1 Filters
        2. 17.3.2 Further Operations with Entries
          1. 17.3.2.1 The Add Operation
          2. 17.3.2.2 The Modify Operation
          3. 17.3.2.3 The Delete Operation
          4. 17.3.2.4 The Modify DN Operation
          5. 17.3.2.5 The Compare Operation
      4. 17.4 Server Programs
      5. 17.5 Client Programs
        1. 17.5.1 The LDAP Browser
        2. 17.5.2 The OpenLDAP Client
        3. 17.5.3 ADSIedit
        4. 17.5.4 MS Outlook Express and MS Outlook
      6. 17.6 Lightweight Directory Interchange Format
    23. A. CISCO Routers
      1. A.1 Interface Identification
      2. A.2 Cables
      3. A.3 Memory
      4. A.4 Console
      5. A.5 Commands
        1. A.5.1 Non-Privileged Mode
        2. A.5.2 Privileged mode
      6. A.6 Configuration
        1. A.6.1 Setting a Password for Privileged Mode
        2. A.6.2 Web
        3. A.6.3 ConfigMaker
      7. A.7 Debugging