计算机网络---UDP协议与TCP协议

传输层,负责应用程序之间的数据传输的协议,UDP与TCP

UDP协议格式:
在这里插入图片描述
源端口与目的端口: 都为16位比特位,表示数据从那个进程来,发送到哪里去,负责应用程序之间的数据传输。
数据报长度: 16位比特位,表示UDP报文头部在内的整体数据报长度,由于其为16比特位,能表示的最大大小为65535,也标志着,UDP数据报最大大小为65535。
校验和: 16比特位,用于判断接受到的数据和发送的数据是否一致。

UDP协议的特性:
无连接,不可靠,面向数据报。

  • 无连接:通信的时候,不需要建立连接,只需要知道对方的地址信息,就可以发送数据。
  • 不可靠:通信的过程中,并不保证数据安全可靠以及有序到达对端。
  • 面向数据报:因为UDP是有最大传输大小的,数据过长的话,则需要程序员自己在应用层手动将数据报进行分割。
    TCP协议是TCP/IP协议族中一个重要的协议,更加靠近应用层,具有更强的可操作性。
TCP服务的特点
  • 面向连接
    使用TCP协议通信时,双方必须先建立连接,然后才能进行数据的传输,双方都必须为其分配一定的内核资源,用于管理连接信息,通信结束后,双方都需要释放内核资源。同时TCP是一个全双工通信。
  • 可靠传输
    TCP采用发送应答的方式,发送端发送的每一个数据都必须得到接收端的应答,才能认为这个数据发送成功,同时TCP采用超时重传机制,如果在规定时间内没有收到接收应答,则重新发送一份。
  • 面向数据流服务
    将数据进行划分传输,接收方接收的数据包可能是乱序,重复的,所以还需要对其进行重排,整理最后发送给应用层。

注意:使用TCP协议,不是简单的双方通信协议,而是发送方将数据放入发送缓冲区中,当TCP模块真正发送数据的时候,才从缓冲区中读取数据;对方主机接收到数据后,先是将数据放入到接收缓冲区中,通知应用程序接受数据。

TCP协议头部结构

TCP头部信息出现在每个TCP报文段中,用于指定通信的源端口,目的端口,管理TCP连接等。TCP头部结构分为:固定头部结构,头部选项。

  • 固定头部结构
    在这里插入图片描述
  1. 源端口号:表示该数据报来自哪。
  2. 目的端口号:表示发送给哪。
  3. 32位序号:通信从建立到断开,过程中一个传输方向序号值加上偏移量。
  4. 32确认号:用于对另一方发送过来的TCP报文段进行响应,值是收到TCP报文序号值+1。
TCP建立连接与断开连接

在这里插入图片描述在这里插入图片描述TCP半关闭状态
因为TCP是一个全双工通信,所以允许两个方向都进行独立关闭。通信的一方可以给对方发送结束报文,告诉对方已经完成数据通信,也允许对方继续给自己发送数据,直到对方也发送结束报文后,则会关闭连接。这种单方面关闭的状态称为半关闭状态。
在这里插入图片描述

TCP超时重传与连接超时

超时重传: TCP底层有一个计时器,当发送端在计时器规定的时间内没有收到接收端接收相应,发送端则认为接收端没有收到数据,则重新发送一个数据报给接收端。

**连接超时:**当客户端与服务器距离很远,或者网络异常,导致服务器对客户端发送的连接请求没有应答,则客户端将重新连接,如果重连失败,则通知程序连接超时。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值