第三章 传输层
仅个人学习总结,不具有普适性与正确性
知识点
- TCP不提供Delay guarantees 和 bandwidth guarantees服务
- TCP提供可靠数据传输、流量控制、拥塞控制、有序传输服务
- UDP仅提供差错检验和数据交付服务
- 两个不同源IP或者源端口号的TCP报文将被定向到两个不同的套接字,除非该报文携带了创建初始连接的请求。当客户“敲门”时,服务端建立一个新的套接字,之后就使用这个套接字进行数据交换。对于当今的高性能web服务器通常使用一个进程,但是为每个新的客户链接创建一个具有新套接字的新线程与之通信。
- 而UDP报文如果源IP或者源端口号不同,但是目的IP和端口相同,就能被定向到同一个套接字
- 0~1023 周知端口号
- UDP报文首部仅包含源端口号,目的端口号,长度(首部加数据)与校验和。每个字段由两个字节组成
- 最大传输单元:用来通知对方所能接受数据服务单元的最大尺寸
- 最大报文长度:用于在TCP连接建立时,收发双方协商通信时每一个报文段所能承载的最大数据长度,不包括首部。这个值TCP协议在实现的时候往往用MTU值代替(需要减去IP数据包首部的大小20Bytes和TCP数据段的首部20Bytes)所以一般MSS值1460
- TCP报文结构
- TCP只确认数据流中第一个丢失字节之前的字节——累计确认
- 序号空间为K时,为了避免窗口过大而出现接收方无法确定收到分组是新的分组还是重传分组,GBN协议允许窗口最大K-1,SR协议允许窗口最大为K/2
- 一旦收到三个冗余ACK,发送发执行快速重传
- 流量控制(flow control)用于适应接收方读取速率,拥塞控制(congestion control)用于适应网络传输的速率(例如路由器)
- TCP通过让发送方维护一个接收窗口(recv window)的变量来提供流量控制
- TCP通过超时和冗余ACK来感知拥塞
- TCP的通信双方,有一方发送了带有FIN标志的数据段后,表示单方面释放连接,表示本方已经无数据发送,但可以接收数据
英文名词
- saturation 饱和
- congestion 拥塞
- flow 流量
- multiplexing 多路复用
- demultiplexing 多路分解
- duplex 双工
- MSS Maximum Segment Size 最大报文长度
- MTU Maximum Transmission Unit 最大传输单元
- Cumulative acknowledgements 累计确认
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
- 最新
- 最热
查看全部