计算机网络-传输层

UDP (User Datagram Protocol)用户数据报协议
UDP数据报在网络传输中的位置
在这里插入图片描述
报文信息
在这里插入图片描述
附wireshark抓包
在这里插入图片描述
UDP无法保证可靠的交付数据,首部开销小,UDP没有拥塞控制,发送到网络中就完了,

TCP(Transmission Control Protocol)传输控制协议。
面向连接的协议,提供可靠的传输协议,全双工,面向字节流的协议
报文头部长度为20个字节
在这里插入图片描述
序号:表示的这一个数据报文中数据首字节需要,0-2^32 -1
确认号:期望收到数据的首字节序号。
数据偏移:数据偏移首部的距离。
TCP标记:在这里插入图片描述
窗口:指明允许对方发送的数据量
紧急指针:紧急数据,指定紧急数据在报文中的位置。

可靠传输的基本原理
停止等待协议:设置超市时间,每次发送后等待接受方确认,对于信道的利用率不高。
ARQ(Automatic Repeat reQuest)协议(自动重传请求,超时重传定时器): 批量发送与确认。 比如发送了序号为1、2、3、4、5的消息,收到接受方接受到5的确认消息,发送就认为1、2、3、4、5都已经接受到了。然后将窗口滑倒6、7、8、9、10
TCP可靠性传输是基于ARQ协议,滑动窗口以字节为单位。
在这里插入图片描述
如上图,收到确认23、24的确认消息,窗口向后滑动,发送30、31.如果窗口左边的数据一直都没有收到消息,窗口不会向右滑动,这个时候就需要把窗口中的数据重新发送数据,
在这里插入图片描述
效率比较低,可以选择重传,指定需要重传的字节即TCP报文中的序号。

流量控制:让发送方的发送速度不要太快。考虑点对点的通信量的控制。
在这里插入图片描述
如果接受方发送的报文包含窗口大小,但是这个报文丢失了,而上一次发送的报文设置的窗口大小为0,这样就会陷入相互等待,发送方在等待接收方发送窗口大小的报文,接受方等待发送方发送消息。坚定定时器解决了这种问题,只要接受窗口为0,发送方启动坚定定时器,坚定定时器每隔一段时间发送一个窗口探测报文。

TCP拥塞控制:考虑的是整个网络,是全局性的考虑。
慢启动算法:由小到打逐渐增加发送数据量,比如先发送一个报文,接受到了这个报文,就发送1+1=2个报文,然后接收到了2个报文,然后发送2+2=4个报文,然后发送4个报文,以此递加,到达慢启动阈值就不增加。
拥塞避免算法:到达慢启动阈值后,会尝试每次递加报文窗口数,直到发送拥塞。
三次握手
在这里插入图片描述
为啥需要三次握手,两次不行么?
如果客户端发送的第一次请求连接在网络传输中需要很长的时间才能到到服务端,在这个时间段内,客户端发起了第二次请求连接,第二次请求连接被服务端先接受到,服务端发出确认,客户端接收到,再次发送确认请求,连接建立,而第一次的请求服务端后收到,发送给客户端确认请求,客户端发送请求到服务端,此时连接已经建立,无法再次建立。(逻辑有误,未完待续。。。)
四次挥手
在这里插入图片描述
主动关闭端会存在等待计时器,一般为2分钟,才会释放对端口的占用。 主要是为了保证发送方发送的报文信息能到达接受方,如果接受方长时间接受不到,则会发送第三次报文,这端时间内因为有等待定时间的存在,则端口会一直被占用,可以接受到信息。
部分图片摘自某课网

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值