TCP的滑动窗口、流量控制、拥塞控制和连接管理
套接字 socket = (IP地址:端口号)
面向字节流:TCP中的“流”指的是流入到进程或从进程流出的字节序列。虽然应用程序和TCP的交互是一次一个数据块(大小不等),但TCP把应用程序交下来的数据看成是一连串的无结构的字节流。
ARQ自动重传请求
重传的请求是自动进行的。接收方不需要请求发送方重传某个出差分组
TCP报文段
- 源端口和目的端口
- 序号。TCP连接中传送字节流中的每一个字节都按顺序编号。首部中的序号指的是本报文段所发送的数据的第一个字节的序号。
- 确认号(ack):期望收到对方下一个报文段的第一个数据字节的序号。若确认号 = N,则表明:到序号N-1为止的所有数据都已正确收到。
- 确认ACK。ACK=1时确认号子段才有效。在连接建立后所有传送的报文段都必须把ACK置1.
- 复位RST
- 同步SYN。
- 终止FIN。
- 窗口。窗口值作为接收方让发送方设置其发送窗口的依据。窗口字段明确指出了现在允许对方发送的数据量,窗口值是经常在动态变化着的。