TCP协议 UDP协议

TCP协议

TCP是面向连接的传输层的协议,它在进程交互时,会创建一个链接,然后在传输数据之后会取消连接,TCP的链接是虚连接。

TCP协议的特点

每一条TCP连接只能有两个端点,只能是点对点的数据链接,不能进行广播。

TCP提供可靠的按时交付的 无差错的 不重复的 按序到达的服务 可靠有序 不丢不重

TCP提供全双工通信
发送缓存(准备发送的数据和已经发送但是没有收到确认的数据)
接受缓存(按序到达但是还没有被接受应用程序读取的数据)

TCP是面向字节流的
TCP把应用程序交付下来的数据看成仅仅是连串的无结构的字节流

TCP报文段格式

在这里插入图片描述

序号: 表示本报文段所发送数据的第一个字节的序号
确认号 : 期望收到对方下一个报文段的第一个数据字节的序号
数据偏移(首部长度):TCP报文段的数据起始处距离TCP报文段的起始处有多远 以4字节为单位

6个控制位

紧急位URG : 当URG为1时,表示这是一个紧急数据,是最高等级的数据,需要尽快发送,不需要在缓存中排队。
确认位ACK: 当ACK为1时,确认位有效,在连接建立之后所有的传送的报文段都必须把ACK位置为1.
推送为PSH: 接收方应该尽快交付接受应用进程,不用等到缓存填满在向上交付。
复位RST:当RST等于1时,表示TCP连接出现严重差错,必须释放链接,然后重新建立链接。
同步位SYN:当SYN等于1时,表明是一连接请求/连接接受报文。
终止位FIN: 当FIN等于1时,表明此报文段发送方的数据以及全部发送完毕,要求释放链接
在这里插入图片描述

UDP协议

UDP协议在IP数据报服务之上增加了很少的服务,即复用分用和差错检测功能。

UDP协议的特点

UDP是无连接的,减少开销和发送数据的时延。
UDP使用最大努力交付 即不可靠交付
UDP是面向报文的 适合一次传输少量数据的网络应用
UDP没有拥塞控制 使用很多的实时应用
UDP的首部开销比较小

什么是面向报文?

UDP对应用层传下来的报文 不会进行改变 照样发送
即一次就发送一个完整的报文
使用UDP会吧整个应用层报文封装到传输层的数据传输单元 也就是一个用户数据报
在这里插入图片描述

扫描二维码关注公众号,回复: 11694794 查看本文章

TCP协议和UDP协议的区别

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/NuanShuTT/article/details/108580828