跳到主要内容

TCP/IP

应用层
应用层
表示层
会话层
传输层
传输层
网络层
网络层
数据链路层
数据链路层
物理层
物理层

TCP

Segment header IPV4

SRC32
DEST32
Zeros8
protocol8
Tcp-Length16
SRC-Port16
DEST-Port16
SEQ-NO32
ACK-NO32
Data-Offset4
Reserved3
NS1
CWR1
ECE1
URG1
ACK1
PSH1
RST1
SYN1
FIN1
Window-Size16
Checksum16
Urgent-Pointer16
Options16
Data16

Connection Establishment

  1. ClientSEQ=randomSYNServerClient \xrightarrow[SEQ=random]{\text{SYN}}Server
  2. ClientACK=SEQ+1 SEQ=randomSYN  ACKServerClient \xleftarrow[ACK=SEQ+1 \space SEQ=random]{\text{SYN \space ACK}}Server
  3. ClientACK=1ACKServerClient \xrightarrow[ACK=1]{\text{ACK}}Server

Data Transmition

  1. ClientSEQ ACKPSH  ACKServerClient \xrightarrow[SEQ \space ACK]{\text{PSH \space ACK}}Server
  2. ClientACK=SEQACKServerClient \xleftarrow[ACK=SEQ]{\text{ACK}}Server

Connection Termination

  1. SideASEQ=ACK ACK=ACKFINSideBSideA \xrightarrow[SEQ=ACK \space ACK=ACK]{\text{FIN}}SideB
  2. SideASEQ=ACK ACK=SEQ+1FINSideBSideA \xleftarrow[SEQ=ACK \space ACK=SEQ+1]{\text{FIN}}SideB
  3. SideAACK=SEQ+1ACKSideBSideA \xrightarrow[ACK=SEQ+1]{\text{ACK}}SideB

Segment header IPV4

SRC32
DEST32
Zeros8
protocol8
Tcp-Length16
SRC-Port16
DEST-Port16
SEQ-NO32
ACK-NO32
Data-Offset4
Reserved3
NS1
CWR1
ECE1
URG1
ACK1
PSH1
RST1
SYN1
FIN1
Window-Size16
Checksum16
Urgent-Pointer16
Options16
Data16

UDP