408考研计算机网络 第五章 运输层

一、运输层概述

在这里插入图片描述
在这里插入图片描述
小结
在这里插入图片描述

二、运输层端口号、复用与分用的概念

1. 端口号

在这里插入图片描述

2. 发送方的复用和接收方的分用

在这里插入图片描述

3. TCP/IP体系的应用层常用协议所使用的运输层熟知端口号

在这里插入图片描述

4.运输层端口号的作用

输入域名后,用户PC中的DNS进程向DNS服务器发送查询请求,封装在UDP中。UDP首部的源端口号在短暂端口号49151~65535中挑选一个未被占用的,用来表示DNS客户端进程。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
现在,用户PC中的HTTP客户端进程可以向Web服务器发送HTTP请求报文了。TCP首部的源端口号在短暂端口号49151~65535中挑选一个未被占用的,用来表示HTTP客户端进程。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
小结
在这里插入图片描述

三、UDP和TCP的对比

1. UDP可以随时通信,TCP要先建立连接

在这里插入图片描述

2. 单播、多播、广播

在这里插入图片描述

3. 对应用报文的处理

UDP不处理应用报文。
TCP只把应用报文看作无结构的字节流,可能进行拆分等。
在这里插入图片描述

4. 适用场景

在这里插入图片描述

5. 数据报首部格式

在这里插入图片描述
小结
在这里插入图片描述

四、TCP的流量控制

1. 进行流量控制的原因

在这里插入图片描述

2. TCP流量控制的实现举例

在建立TCP连接时,A得知B的接收窗口大小为400,于是A将自己的发送窗口设置为400。
第一次流量控制
在这里插入图片描述
在这里插入图片描述
第二次流量控制
在这里插入图片描述
在这里插入图片描述
第三次流量控制
在这里插入图片描述
防止死锁
在这里插入图片描述
在这里插入图片描述
说明
1. 主机A所发送的零窗口探测报文段到达主机B时,如果主机B此时的接收窗口仍然为0,那么主机B根本就无法接受该报文段,又怎么会针对该报文段给主机A发回确认呢?
Ans: 实际上TCP规定,即使接收窗口为0,也必须接受零窗口探测报文段、确认报文段以及携带有紧急数据的报文段。
2. 如果零窗口探测报文段丢失了,会出现怎样的问题呢?还能否打破死锁的局面吗?
Ans: 零窗口探测报文段也有重传计时器。当重传计时器超时后,零窗口探测报文段会被重传。

练习
1.
在这里插入图片描述

小结
在这里插入图片描述

五、TCP的拥塞控制

1. 基本概念

在这里插入图片描述

2. TCP的四种拥塞控制算法

假设如下条件
在这里插入图片描述
在这里插入图片描述

2.1 慢开始

传输轮次是指,发送方给接收方发送数据报文段后,接收方给发送方发回相应的确认报文段。一个传输轮次所经历的时间即为RTT。RTT并非恒定值。使用传输轮次是为了强调:把拥塞窗口所允许发送的报文段都连续发送出去,并收到了对已发送的最后一个报文段的确认。

在执行慢开始算法时,发送方每收到一个对新报文段待确认时,把拥塞窗口的值加1
在这里插入图片描述
在这里插入图片描述

2.2 拥塞避免

当拥塞窗口值增长到慢开始门限值时,就改为执行拥塞避免算法。即每个传输轮次结束后,拥塞窗口值只能线性加1
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
说明
在这里插入图片描述
在这里插入图片描述

2.3 快重传

在这里插入图片描述

2.4 快恢复

在这里插入图片描述

3. TCP拥塞控制举例

在这里插入图片描述
练习
1.
在这里插入图片描述

小结
小结如图。
在这里插入图片描述

六、TCP超时重传时间的选择

在这里插入图片描述
在这里插入图片描述

1. RFC6298建议使用的RTO

在这里插入图片描述
关键在于RTT的测量,而RTT的测量比较复杂
在这里插入图片描述
策略及存在的问题
在这里插入图片描述

2. RTO的计算过程

在这里插入图片描述

小结
在这里插入图片描述

七、TCP可靠传输的实现

1. TCP基于以字节为单位的滑动窗口来实现可靠传输

在这里插入图片描述

1.1 描述发送窗口和接受窗口的状态

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
第一次重复确认,无事发生
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2. 补充说明

在这里插入图片描述
练习
1.
在这里插入图片描述
2.
在这里插入图片描述

小结
在这里插入图片描述

八、TCP的运输连接管理

在这里插入图片描述

1. TCP的连接建立

在这里插入图片描述

1.1 三报文握手

在这里插入图片描述
在这里插入图片描述
SYN == 1的报文段不能携带数据,但是要消耗一个序号。
普通的TCP确认报文段可以携带数据,但是如果不携带数据,则不消耗序号。
在这里插入图片描述
对第三个报文并不多余的说明
在这里插入图片描述
在这里插入图片描述
练习
1.
在这里插入图片描述
小结
在这里插入图片描述

2. TCP的连接释放

2.1 四报文挥手

TCP规定终止位FIN等于1的报文段,即使不携带数据,也要消耗一个序号。
此时从TCP服务器进程到TCP客户端进程这个方向的连接并未关闭。TCP客户端仍然需要接受TCP服务器发来的数据,这个状态可能会持续一段时间。
在这里插入图片描述
可能服务器又给客户端发了一些数据,所以seq从v变成w。
ack为u+1是对一开始连接释放请求报文的重复确认。
在这里插入图片描述
在这里插入图片描述
对等待2MSL的说明
在这里插入图片描述
同时可以使得本次连接持续时间内锁产生的所有报文段都从网络中消失,可以使得下一个新的TCP连接中,不会出现旧的报文段。

2.2 保活计时器

在这里插入图片描述

小结
小结如图。
在这里插入图片描述

九、TCP报文段的首部格式

在这里插入图片描述
与IP数据报的首部格式类似。

1. 源端口和目的端口字段

在这里插入图片描述
【举例】
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2. 序号、确认号和确认标志ACK字段

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3. 数据偏移字段

该字段以4字节为单位。
在这里插入图片描述

4.保留字段

在这里插入图片描述

5.窗口字段

接收窗口拥塞窗口中取小者。
在这里插入图片描述

6.校验和字段

在这里插入图片描述

7.同步标志位SYN

在这里插入图片描述

8.终止标志位FIN

在这里插入图片描述

9.复位标志位RST

在这里插入图片描述

10.推送标志位PSH

在这里插入图片描述

11.紧急标志位URG和紧急指针字段

在接收方和发送方都不用在缓存中排队。
在这里插入图片描述

12.选项字段

在这里插入图片描述

13.填充字段

在这里插入图片描述
小结
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值