简述分组交换网中的时延类型以及这些时延与结点总时延的关系
分组从一台主机出发,经过一些列路由器传输,在另一台主机中结束它的历程。每个节点都经受了不同类型的时延,时延分为四类。
- 一、节点处理时延 (nodal processing delay)
检查分组首部和决定将该分组导向何处所需要的时间是处理时延的一部分,还有可能包括检查比特级别的差错所需要的时间。高速路由器的处理时延通常是微秒或更低的数量级。 - 二、排队时延 (queuing delay)
分组在链路上等待传输时,经受排队时延。一个特定分组的排队时延取决于先期到达的、正在排队等待向链路传输的分组数量。
到达分组期待发现的分组数量是到达该队列的流量强度和性质的函数。
实际的排队时延可以是毫秒到微秒量级。 - 三、传输时延 (transmission delay)
将分组的比特推向链路所需要的时间。假设分组长度是L比特,链路传输速率(带宽有关)是R bps,则传输时延是L/R。
实际的传输时延在毫秒到微秒量级。 - 四、传播时延 (propagation delay)
即比特从链路起点到链路所需要的时间。传播速率取决于传输介质。假设链路距离是d,链路传播速率是s,则传播时延是d/s。
在广域网中,传播时延是毫秒量级。
总时延
节点的总时延如下:
简述TCP协议的慢启动过程
慢启动通过逐步增大拥塞窗口的值来控制网络拥塞。
慢启动机制规定:
- 拥塞窗口的初始值为1
- 每收到一个对发出的数据段的ACK确认,便将拥塞窗口的值增加1
每完成一次传输轮次,拥塞窗口的值就翻倍,即拥塞窗口随着传输轮次的增加成指数增长。
随着传输轮次的增加,拥塞窗口的值会变得很大,因此TCP拥塞控制給慢启动增加一个阈值(又称慢启动门限),当拥塞窗口>阈值时,就要进行尝试拥塞避免。
当 拥塞窗口 < 阈值 时,使用慢启动算法
当 拥塞窗口 > 阈值 时,使用拥塞避免算法
当 拥塞窗口 = 阈值 时,既可以使用慢启动算法,也可时使用拥塞避免算法。
随着网络拥塞的出现和变化,阈值也会不断变化。TCP拥塞控制中,阈值的初始值为16
简述虚电路(VC)的组成及建立过程
发送方发送含有地址信息的特定的控制信息块(如:呼叫分组),该信息块途经的每个中间结点根据当前的逻辑信道(LC)使用状况,分配LC,并建立输入和输出LC映射表,所有中间结点分配的LC的串接形成虚电路(VC)。
简述地址解析协议ARP的作用及作用范围
使用地址解析协议,可根据网络层IP数据包包头中的IP地址信息解析出目标硬件地址(MAC地址)信息,以保证通信的顺利进行。
作用范围是在网络层
简述什么是无线链路的隐藏终端问题
隐藏终端(Hidden Stations):在通信领域,基站A向基站B发送信息,基站C未侦测到A也向B发送,故A和C同时将信号发送至B,引起信号冲突,最终导致发送至B的信号都丢失了。
简述报文鉴别码MAC的含义与作用
一个报文的可靠性要比它的秘密性重要许多倍。“可靠”一词意味着报文没有被改变或受到操纵,因而是可信的。为此,一个计算的报文鉴别码MAC(Messεtge Authentication Code)被附加在报文之后,同时传送给收件人,收件人自己可以计算报文的MAC并与接收到的MAC相比较,如果它们相同,则报文在旅程中未被改变,保障数据的可靠性。
简述交换机与路由器的异同
交换机和路由器都可用来交换网络
但它们的工作层次不同,交换机工作在数据链路层,路由器工作在网络层
数据转发所依据的对象不同,交换机利用MAC地址(物理地址)确定转发数据目的地址,而路由器利用的是IP地址
比较LS算法和DV算法的特点
LS算法和DV算法,这两种算法各有特点,分述如下:
- 1)工作原理的不同。
LS算法中,网络拓扑和所有的链路费用都是已知的,也就是说可用来做LS算法的输入。
DV算法中,每个节点仅与他的直接邻居交谈,但它为他的邻居提供了从其自己到网络中所有其他节点的最低费用。 - 2)算法结构不同。
LS算法是一种全局信息的算法,而DV算法是一种迭代的,异步的和分布式的算法。 - 3)时间复杂性。
LS算法在最差情况下的时间复杂度为n的平方阶。
DV算法,它存在对好消息的反应迅速,但对坏消息却反应迟钝。特别是对坏消息存在计数无穷大问题。当链路的权值变化很大时,它的时间复杂性也就很难确定了。 - 4)可扩展性。
DV算法可扩展性差。相对而言,LS算法可扩展性好,可靠。 - 5)跳数的限制。
DV使用跳数或向量来确定从一个设备到另一个设备的距离。不考虑每跳链路的速率。LS没有跳数的限制,使用“图形理论”算法或最短路径优先算法。
数据链路层提供的许多服务和运输层提供的服务是非常相似的,试述二者的的异同
- 相同:
二者都提供了差错检测、流量控制 - 不同:
差错检测方面:对于数据链路层而言,只保证接受到的数据没问题,至于中间丢失的数据压根不管。而运输层则对中途丢失的数据也做管理,它会通知给发送端。
流量控制方面:控制的对象不同。
试举例说明,为什么TCP在建立连接时要用三次握手?
假设有A和B两端要进行通信:
第一次:首先A发送一个(SYN)到B,意思是A要和B建立连接进行通信;如果是只有一次握手的话,这样肯定是不行的,A压根都不知道B是不是收到了这个请求。
第二次:B收到A要建立连接的请求之后,发送一个确认(SYN+ACK)给A,意思是收到A的消息了,B这里也是通的,表示可以建立连接;如果只有两次通信的话,这时候B不确定A是否收到了确认消息,有可能这个确认消息由于某些原因丢了。
第三次:A如果收到了B的确认消息之后,再发出一个确认(ACK)消息,意思是告诉B,这边是通的,然后A和B就可以建立连接相互通信了;这个时候经过了三次握手,A和B双方确认了两边都是通的,可以相互通信了,已经可以建立一个可靠的连接,并且可以相互发送数据。
第四次:这个时候已经不需要B再发送一个确认消息了,两边已经通过前三次建立了一个可靠的连接,如果再发送第四次确认消息的话,就浪费资源了。
发送窗口的大小取决于流量控制还是拥塞控制
TCP的慢启动机制、拥塞避免机制和加速递减机制都是通过改变拥塞窗口的大小来时对发送方的发送窗口进行控制。所以是取决于网络的拥塞控制,并且动态地在变化。