为什么数据帧不设计TTL机制防止“广播风暴”?
读了TCP/IP协议,发现IP协议的数据包中包含一个 TTL 8字节,代表数据包的存活时间。由这个TTL 可以控制数据包在网络传递的次数,进而防止数据包无限在网络传递,产生广播风暴。
然而,数据链路层的传递是以数据帧形式,这个数据帧(可以理解为 ethernet 帧)是没有 TTL 机制的,即交换机这个链路层是以数据帧(包含了数据包)形式传递。若当两个交换机 用两根线连接时,就形成一个网络环路,此时交换机的数据传递就会无限循环,形成一个广播风暴(网络风暴)。
此时,我们就想,为什么数据帧不设计TTL机制防止“广播风暴”?
解答如下:
- 第一,实际数据帧不光有以太,还有token ring\x.25\hdlc等。这些数据帧都体现在OSI 7层模型中的第二层,而第二层数据链路层的协议是没有STP的概念。上面讲的数据帧,严格来说为 ethernet frame(以太帧)。
- 其次,ethernet最早设计出来是在一个segment,以csma/cd模式连接几台电脑的组网,这种组网没有环路问题。最早的组网是用50欧姆的同轴电缆,黑色的,家里有线电视那种同轴电缆是65欧的,跟串串香一样,串起来组网,两边还要做堵头,用于信号反射,当然常见的是做成环网。没看错,就是环网。双绞线那都是后面的事情。在早期ethernet这种组网情况下,根本不存在环路的问题,因此没人考虑这个问题。
- 第三,STP是什么时候才有的事情ÿ