3 传输控制协议TCP概述
A TCP最主要的特点
1 面向连接的传输层协议
2 每一条TCP连接只能有两个端点,且只能是点对点的
3 提供可靠交付的服务(无差错、不丢失、不重复、不乱序)
4 全双工通信,两端设有发送缓存和接收缓存
5 面向字节流,TCP中的流指流入到进程或从进程流出的字节序列
B TCP的连接
TCP连接的端点叫做套接字或插口
有:套接字socket = (IP地址:端口号)
每一条TCP连接唯一地被通信两端的两个端点确定
即:TCP连接 ::= {socket1,socket2} = {(IP1:prot1),(IP2:port2)}
Socket在不同技术中有不同的意思,需要注意区分
4 可靠传输的工作原理
理想传输信道的两个特点:1 无差错 2 不限速
A 停止等待协议(0-1协议,A-B协议)(可靠传输协议,常称为自动重传请求ARQ)
A为发送方,B为接收方
停止等待,就是每发送完一个分组就停止发送,等待对方的确认,收到确认后再发下一个分组
1 无差错情况
发送一个确认一个,重复无差错
2 出现差错
两种差错情况:
①传输过程出错未到达B ②到达B但检验报文出错并丢弃
实现超时重传,三个注意点
① A在发送完一个分组后,必须暂留已发送分组的副本,只有在收到确认后才清除缓存
② 分组和确认分组都必须进行编号,以分辨哪一个收到了确认哪个没有
③ 超时计时器设置的重传时间应该比数据在分组传输的平均往返时间更长一些
3 确认丢失和确认迟到
确认丢失,导致发送方A重复发送
此时应采取两个行动:
①丢弃重复的分组
②向A发送确认
上述可靠传输协议,常称为自动重传请求ARQ
4 信道利用率
假定在A和B之间有一条直通的信道来传送分组: