计算机网络传输层
UDP
UDP协议详解#
- UDP(User Datagram Protocol:用户数据报协议)
- UDP是一个非常简单的协议
UDP得到应用层传输过来的数据,直接进行封装,不合并不拆分
- UDP没有拥塞控制
- UDP的首部开销很小
TCP
TCP协议详解#
TCP是什么#
- TCP(Transmission Control Protocol:传输控制协议)
- TCP协议是计算机网络中非常复杂的一个协议
TCP的特点#
- TCP是面向连接的协议
- TCP的一个链接有两端(点对点通信)
- TCP提供可靠的传输服务
- TCP协议提供全双工的通信
- TCP是面向字节流的协议
TCP的首部#
#
可靠传输的基本原理#
- 停止等待协议
- 连续ARQ协议
停止等待协议#
- 发送的消息在路上丢失了
- 确认的消息在路上丢失了
- 确认的消息很久才到
- 停止等待协议是最简单的可靠传输协议
- 停止等待协议对信道的利用效率不高
连续ARQ协议#
TCP协议的可靠传输#
TCP的可靠传输基于ARQ协议#
- TCP的可靠传输基于ARQ协议
- TCP的滑动窗口以字节为单位
- 选择重传需要指定需要重传的字节
- 每一个字节都有唯一的32位序号
TCP协议的选择重传#
- TCP的可靠传输基于ARQ 协议
- 选择重传
TCP协议的流量控制#
- 流量控制指让发送方发送速率不要太快
- 流量控制是使用滑动窗口来实现的
TCP协议使用滑动窗口实现流量控制#
坚持定时器#
- 当接收到窗口为0的消息,则启动坚持定时器
- 坚持定时器每隔一段时间发送一个窗口探测报文
TCP协议的拥塞控制#
流量控制与拥塞控制的区别#
- 流量控制考虑点对点的通信量的控制
- 拥塞控制考虑整个网络,是全局性的考虑
拥塞控制的方法#
##
TCP连接的建立#
三次握手的过程#
为什么需要第三次握手#



#
TCP连接的释放#
四次挥手的过程#
等待计时器的作用

#
套接字
套接字与套接字编程#
- 使用端口(Port)来标记不同的网络进程
- 端口(Port)使用16比特位表示(0~65535)
- 套接字(Socket)是抽象概念,表示TCP连接的一端
- 通过套接字可以进行数据发送或接收
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步