计网千层饼之第四层-运输层
一.运输层(传输层)协议*2
1.TCP(大哥)+UDP(三弟), 看了王道的视频后记起来的一个记法:大哥(玄德)靠谱(可靠),三弟(翼德)不靠谱(不可靠)
2.端口:
1)服务端:
①熟知端口 0-123
②登记端口 1024-49151
2)客户端:
运行时才会动态选择 49152-65535
3)套接字 socket
唯一表示进程—socket::={ IP , pot端口 }
4)TCP连接
TCP连接 ::={socket1, socket2}={ {IP1,pot1} , {IP2, pot2} }
5)熟知端口
FTP TELNET SMTP DNS TFTP HTTP SNMP
21 23 25 53 69 80 161
二.TCP滑动窗口协议。
1.在TCP中,窗口的大小是在TCP三次握手后协定的,不是固定的。
2.四个部分:
①在窗口前;
②在窗口中已发送
③在窗口中未发送
④窗口后面;
3.虽然需要按照队列顺序发送,但是如果某一个部分没有发送成功并不会影响下一个报文段的传输,而是当作已填充窗口,如果窗口的满了,窗口也会移动到下一个位置,第一个位置还是允许刚才失败的报文段继续发送,因为TCP不是平等协议【中断】的。
4.超时重传:顾名思义,当传送超时,则重新发送。 必须传送完毕才能进行下一步。
5.【TCP最终完成传输的判断是累计的,累计不足则传输失败。】
三.TCP流量控制-滑动窗口协议
1.流量控制:让发送端慢点,要让接收方来得及接收
2.利用滑动窗口的性质,窗口的大小是接收方给出,发送方要按照窗口大小来发送数据,因此窗口大小可变。
注意:
如果窗口滑动到最后位置,但是数据并没有发送完毕,发送方会等待接收方发送一个请求【窗口的大小】如果接收方正在忙碌,一直发送的窗口大小是0,那么发送方和接收方在互相等待,形成死锁。
TCP死锁解决方法:
一旦接收方发送的窗口大小为0,计时器开始计时,计时器到时间,则发送方发给接收方一个探测报文段,当接收方收到探测报文段后,会发送给发送方一个窗口大小,如果不是0,则开始发送数据,否则计 时器继续开始计时,重复操作。
四.可靠传输:
①ARQ (automatic-repeat-reQuest)
我理解为slide-window 中的 计时器
②停止等待
超时重传
确认丢失和迟到
信道利用率
无差错情况
求点赞👍👍👍
原创不易,点赞容易。
您的鼓励就是我的最大动力!!!。
本篇博客到此结束,谢谢大家观看。