浅谈对TCP与UDP的理解

1.UDP

UDP全称为User Datagram Protocol,即用户数据报协议。面向无连接的协议,属于传输层协议。
1.1 特点
(1)可一对多传输。 UDP的数据包头中最主要的是目的和源端口号,并且因为它不需要建立一对一的连接,因此可以一对多传输,并且可以向任何端口传输,任何端口可向它传输。
(2)传输过程简单。因为只需要关注目标端口号,没有其他复杂的包头结构,因此传输过程简单。
(3)无法可靠性传输。不能进行数据包的序号确认,因此无法保证数据的顺序也可能出现丢包情况。
1.2 可应用的实际场景
直播、实时游戏以及物联网。
以上场景都是强调实时性,强调流畅,可丢包,但不能出现卡顿现象。

2.TCP

TCP全称为Transmission Control Protocol,即传输控制协议。面向连接的协议,属于传输层协议。
2.1特点
(1)面向连接。只可一对一进行传输。并且需要三次握手和四次挥手。
(2)保证包顺序。在应答的过程中会对包的序号进行确认。
(3)不易丢包。包头中有确认需要,如果丢包,有确认与重传机制,包括两种方法:超时重试以及快速重传。还可通过累计应答来回复已收到包的序号,保证数据可靠传输。
(4)流量控制与拥塞控制。包头中有窗口大小,可以来标识自己目前的处理能力。
2.2 三次挥手的过程描述
A与B之间进行连接的建立过程,B为服务器。
(1)简要的描述:
A:你好,我是A。
B:你好A,我是B。
A:你好B,
A与B双方都有应答的过程。
(2)具体的描述。
首先A与B都处于关闭状态,首先是服务器先监听某个端口。
然后A通过SYN发送建立连接的请求,seq=x。B接收到之后,回复SYN和ACK,seq=y和ack=x+1。
然后A接收到B的应答,发送ACK,seq=x+1,ack=y+1。
通过以上,便可以建立双方的传输连接。
以上便为实际的三次握手过程。
2.3 四次挥手过程
(1)简要的描述
A:B,我已传输完毕。
B:好的,我知道了。
B:A,我也传输完毕。拜拜!
A:好的,拜拜!
(2)具体的描述
首先,A先向B发送FIN来表示自己要结束传输,seq=p。
然后,B收到结束请求之后,应答ACK,ack=p+1,表示自己已收到请求。
此时,B还没有结束传输,等到B也结束了传输之后,B向A发送FIN和ACK,seq=q,ack=p+1。
最后A接收到之后进行回复ACK,ack=q+1。
以上过程为正常情况下的断开连接。

以上为自己通过结合学习与自己的理解,如果有错误的地方,欢迎指出!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值