文档介绍:第九章传输控制协议TCPTCP/IP详解卷1:CH17、CH18、CH19、CH20、CH21、CH22、CH23、CH24
主要内容
TCP首部
TCP的连接管理
TCP的数据传输
TCP的超时与重传
TCP的定时器管理
使用TCP的应用程序设计
使用TCP协议进行通信
TCP端口扫描
TCP首部
T C P提供一种面向连接的、可靠的字节流服务
在一个T C P连接中仅有两方进行彼此通信
广播和多播不能用于T C P
与IP协议相结合,TCP组成了因特网协议的核心。
TCP首部
传输控制协议TCP是TCP/IP协议栈中的传输层协议,它通过序列确认以及包重发机制,提供可靠的数据流发送和到应用程序的虚拟连接服务。
TCP服务提供了数据流传输、可靠性、有效流控制、全双工操作和多路复用技术等。
端口
…
发送 TCP 报文段
TCP
…
TCP
接收缓存
发送缓存
报文段
…
报文段
报文段
端口
发送端
接收端
向发送缓存
写入数据块
从接收缓存
读取数据块
应用进程
应用进程
TCP首部
TCP数据被封装在一个IP数据报中
TCP 的包格式
源端口(16)
目的端口(16)
顺序号(32)
头长(4)
确认序号(32)
保留(6)
窗口(16)
检验和(16)
紧急指针(16)
选项和填充(可选)
数据(可变长)
20字节
位 0
15
16
31
URG
ACK
PSH
RST
SYS
FIN
TCP首部
TCP
首部
20 字节的
固定首部
目的端口
首部
长度
检验和
选项(长度可变)
源端口
序号
紧急指针
窗口
确认号
保留
F
I
N
32 bit
S
Y
N
R
S
T
P
S
H
A
C
K
U
R
G
比特 0 8 16 24 31
填充
TCP 数据部分
TCP 首部
TCP 报文段
IP 数据部分
IP 首部
发送在前
TCP
首部
20
字节
固定
首部
目的端口
首部
长度
检验和
选项(长度可变)
源端口
序号
紧急指针
窗口
确认号
保留
F
I
N
S
Y
N
R
S
T
P
S
H
A
C
K
U
R
G
比特 0 8 16 24 31
填充
源端口和目的端口字段——各占 2 字节。端口是运输层与应用层的服务接口。运输层的复用和分用功能都要通过端口才能实现。
TCP
首部
20
字节
固定
首部
目的端口
首部
长度
检验和
选项(长度可变)
源端口
序号
紧急指针
窗口
确认号
保留
F
I
N
S
Y
N
R
S
T
P
S
H
A
C
K
U
R
G
比特 0 8 16 24 31
填充
序号字段——占 4 字节。TCP 连接中传送的数据流中的每一个字节都编上一个序号。序号字段的值则指的是本报文段所发送的数据的第一个字节的序号。