计算机网络第五章

5.1运输层概述

运输层协议又称端到端协议

5.2运输层端口号,复用和分用的概念

运输层使用端口号区分不同的进程

注意:发送时的源端口,和回复时候的目的端口是一样的。

5.3udp和tcp的对比

tcp仅支持单播,即一对一的通信

下图,udp对应用进程交下来的报文既不合并也不拆分。tcp不能保证接收方应用进程所接受的数据块与发送方应用进程发送的数据块大小一样。接收方的tcp一方面从接收到的tcp报文段中取出数据载荷部分并储存在接收缓存中 ,一方面从接收缓存中的一些字节交给应用进程。udp是面向应用报文的,tcp是面向字节流的、

下图:接收方接收的UDP报文出现误码,不处理,发送方的报文被中间的路由器丢弃,发送方不作为,一切因为:无连接不可靠。

5.4tcp的流量控制

精髓就是滑动窗口机制

下图中的ACK是tcp报文段首部中的标志位,取值为1表示的是这是一个tcp确认报文段。小写ack201表示201号之前的都已经正确接收(这个关系到发送方的窗口滑动),300到500发送过去了,201到300的重传计时器超时了,那么只能重新包装发送出去,暂时不能发送其他数据,下图仔细想想窗口怎么滑动的

5.5TCP的拥塞控制

下图是有无拥塞控制的表现

下图ssthresh为“慢开始门限值”

注意上图是把拥塞窗口值和慢开始门限值都调整成为了当前门限值的一半

5.6TCP超时重传时间的选择

下图引出为什么要选择超时重传时间

下图是karn算法的应用,每个算出来的RTO(n)应该大于RTT(n+1),因为RTO4不满足,根据karn算法,把RTO4的值乘2作为RTO5来约束RTT5

5.7TCP可靠传输的实现(建议再看一遍视频)

接收方滑动窗口前的数据是“已发送过确认并且已经交付给主机的数据”

上图,如果丢失了,那么我发送的确认序号就是丢失的段的开始序号

5.8.1TCP的运输连接管理--TCP的连接建立

核心:三报文握手————建立TCP链接

四报文挥手————释放TCP链接

下图解释:一开始TCP服务器进程创建传输控制块,用来存储TCP链接中的一些重要信息,进入被动打开的“监听”模式,

第一个箭头:TCP连接请求报文段首部中的同部位SYN设置为1,表示这是一个TCP链接请求报文,序号进程seq被设置成x表示TCP客户进程所选择的初始序号(tcp中syn被设置为1的报文段不能携带数据,但要消耗掉一个序号)

第二个箭头:syn和ACK都设置为1,表示这是一个TCP请求连接确认报文段,ack是序号进程在第一个箭头上seq加1表示对其的确认,seq是tcp服务器进程所选择的初始序号。

第三个箭头:是一个普通的TCP确认报文段,ACK为1表示这是一个普通的,seq为第一个seq基础上加1,这个普通的TCP确认报文段可以携带数据,,如果不携带数据,不消耗序号,ack回复第二个箭头的seq故加1

5.8.2TCP的运输连接管理————TCP的链接释放

5.9TCP首部报文段的格式

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值