首页 > 编程知识 正文

传输层的流量控制,端到端流量控制

时间:2023-05-06 09:03:01 阅读:116245 作者:2644

1、TCP流量控制原理

流量控制是指发送端的发送速率不要太快,以便接收端能赶上接收。 利用滑动窗口机制实现发送端的流量控制。 TCP的窗口单位是字节,不是消息段。

其原理上是使用TCP分组中的窗口大小来进行控制,发送端的发送窗口不能大于来自接收端的接收窗口的大小。 窗口的两条边的相对运动会增加或减少窗口的大小。 在接收端没有缓存的情况下,发送窗口大小为零的消息,发送端什么数据也不能发送。

2、TCP拥塞控制原理

在某个时间点,如果对网络中某个资源的需求超过了该资源可以提供的可用部分,则网络性能会降低。 这称为拥塞。

拥塞控制是指防止网络中注入过多的数据,从而防止网络中的路由器和链路过载。 拥塞控制是一个全局过程,与流控制不同,拥塞控制是点对点通信量的控制。

进行拥塞控制的4种算法:

1 )慢启动(2)拥塞避免(Congestion Avoidance )3)快速重传(Fast Restrangsmit )快速恢复(Fast Recovery )。

发送端维持拥塞窗口cwnd (被称为congestion window的状态变量。 拥塞窗口的大小根据网络拥塞的程度而动态变化。 发送方使其发送窗口等于拥塞窗口,并且考虑到接收方的接收能力,发送方有可能小于拥塞窗口。

1 .慢启动和避免拥塞

1 )慢启动算法的思路是,不从一开始就发送大量数据,而是从网络拥塞的程度(即从小到大)逐渐增加拥塞窗口的大小。 一次传输会使拥塞窗口加倍(增加2的指数倍)。

为了防止窗口cwnd过大导致网络拥塞,还必须设置慢启动阈值ssthresh状态变量。 ssthresh的使用方法如下。

对于cwndssthresh,切换到拥塞避免算法。

2 )拥塞避免算法缓慢增加拥塞窗口,即每次经过往返时间RTT时,发送侧拥塞窗口cwnd递增1而不是加倍。 因此,拥塞窗口根据线性规律缓慢增加。

3 )无论是在慢启动阶段还是拥塞避免阶段,发送方都判断为网络发生了拥塞的情况(其根据是没有收到确认,认为是其他原因的分组丢失没有得到确认,但由于无法判定,所以视为拥塞)下的慢然后将拥塞窗口设定为1,执行慢启动算法。

2 .快速重传和快速恢复

1 )在快速重传中,接收器在接收到失序的消息段之后立即重复发送确认,以便在它发送数据时不发送确认,而是尽早通知发送器没有收到消息段。 该迅销公司算法规定,发送方如果连续收到三个重复确认,则必须立即重新发送对方尚未收到的消息,而不等待已设置的重新发送计时器到期。

2 )快速恢复算法有以下两个点:

发送方连续收到3个重复确认时,执行“乘法减少”算法,将ssthresh阈值减半。 但是,接下来慢启动算法不会运行。

考虑到如果网络拥挤的话就不会多次被重复确认,发送方现在认为网络有可能不拥挤。 因此,在这种情况下不执行慢启动算法,而是将cwnd设定为ssthresh的大小,执行拥塞避免算法。

3、ARP工作原理

从IP地址到MAC的转换。

1 )首先,每个主机在自己的ARP缓冲区中创建一个ARP列表,并显示IP地址和MAC地址之间的对应关系。

2 )源主机发送数据时,首先检查ARP列表中是否有与IP地址对应的目标主机的MAC地址,如果有,则直接发送数据,否则为源主机的IP地址、源主机的MAC地址、目的地

3 )如果该网络的所有主机都接收到此ARP分组,则首先检查分组中的IP地址是否是其IP地址。 否则,数据包将被忽略。 如果是,则首先从分组中提取源主机的IP地址和MAC地址,将其写入ARP列表,如果已经存在,则重写它,然后将它的MAC地址写入ARP响应分组,并且向源主机写入它自己想要搜索的MAC地址

4 )主机收到ARP响应数据包后。 将目标主机的IP地址和MAC地址写入ARP列表,并使用此信息发送数据。

4、DNS的工作原理

如果DNS客户端需要在程序中使用名称,则它会通过查询DNS服务器来解析名称。

域名解析进程:如果APP应用进程需要将主机名解析为IP地址,则APP应用进程调用解析程序,成为DNS的客户端,将解析的域名放入DNS请求消息中,并在UDP数据报上本地解析本地域名服务器搜索域名后,将相应的IP地址放入答复的消息中返回。 应用进程可以通过获取目标主机的IP地址进行通信。

5、网关的作用?

网关(Gateway )也称为协议转换器,用于两个上层协议的不同网络互连。 网关是起转换作用的计算机系统或设备。 在使用不同通信协议、数据格式或语言且体系结构完全不同的两个系统之间,网关是翻译器。 网桥不仅仅是传递信息,网关还必须将收到的信息重新打包,以满足目标系统的需要。 另外,网关还可以提供过滤和安全功能。

6、交换机和路由器的实现原理? 各不相同

哪个层次?

1)交换机用于局域网,利用主机的MAC地址进行数据传输,而不需要关心 IP数据包中的IP地址,它工作于数据链路层。

2)路由器识别网络是通过 IP 数据包中 IP 地址的网络号进行的,所以为了保证数据包路由的正确性,每个网络都必须有一个唯一的网络号。路由器通过 IP 数据包的 IP 地址进行路由的(将数据包递交给哪个下一跳路由器)。路由器工作于网络层。由于设备现在的发展,现在很多设备既具有交换又具有路由功能,两者的界限越来越模糊。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。