在以太网中,如果某个CSMA/CD网络上的两台计算机在同时通信时会发生冲突,那么这个CSMA/CD网络就是一个 冲突域 (collision domain)。如果以太网中的各个网段以集线器连接,因为不能避免冲突,所以它们仍然是一个冲突域。
冲突域是在同一个网络上两个比特同时进行传输则会产生冲突;在网路内部数据分组所产生与发生冲突的这样一个区域称为冲突域,所有的共享介质环境都是一个冲突域,在共享介质环境中一定类型的冲突域是正常行为。
集线器是一种物理层设备,本身不能识别MAC地址和IP地址,当集线器下连接的主机设备间传输数据时, 数据包是以广播的方式进行传输 ,由每一台主机自己眼中MAC地址来确定是否接收。
这种情况下,同一时刻由集线器连接的网络中只能传输一组数据,如果发生冲突则需要重传。 集线器下连接的所有端口共享整个带宽,即所有端口为一个冲突域 ,如图所示。
交换机则是工作在数据链路层的设备,在接收到数据后,通过查找自身系统MAC地址表中的MAC地址与端口对应关系,将数据传送到目的端口。
交换机在同一时刻可进行多个端口之间的数据传输,每一端口都是独立的物理网段,连接在端口上的网络设备独自享有全部的带宽。因此, 交换机起到了分割冲突域的作用, 每一个端口为一个冲突域 ,如图所示。
二层交换机工作在数据链路层。
是基于MAC地址的基础上对数据包的转发。内部的ASIC的芯片来实现硬件转发。
二层交换机的端口发送和接受数据独立,从而可以将各端口归属于不同的冲突域,从而有效的隔离了冲突。
广播是一种信息的传播方式, 指网络中的某一设备同时向网络中所有的其它设备发送数据,这个数据所能广播到的范围即为广播域 (Broadcast Domain)。
在传输中当不知道目的MAC地址时,需要在网段内广播当前子网下所有的节点,相应的广播报文以及目的MAC查找失败报文会向所有端口转发,因此会消耗大量的网络带宽。而 二层交换机只能隔离冲突域,不能隔离广播域。
冲突域是基于第一层(物理层)
广播域是基于第二层(链路层)
两个交换机相连,广播域变大,数量不变,减少了可用带宽。冲突域数量增加。
路由器不传播任何广播流量,路由器能同时分割冲突域和广播域。
基本概念:
广播域:是基于第二层(链路层)的,是指网络中能接收任一设备发出的广播帧的所有设备的集合。 广播域就是说如果站点发出一个广播信号后能接收到这个信号的范围 。通常来说一个局域网就是一个广播域。广播域内所有的设备都必须监听所有的广播包,如果广播域太大了,用户的带宽就小了,并且需要处理更多的广播,网络响应时间将会长到让人无法容忍的地步。
冲突域:是基于第一层(物理层)的,在同一个冲突域中的每一个节点都能收听到所有被发送的帧。 一个站点向另一个站点发出信号,除目的站点外,有多少站点能收到这个信息,这些站点就构成一个冲突域 。
广播域和冲突域的计算:
集线器(HUB)所有端口都在同一个广播域、冲突域内,所以 HUB不能分割冲突域和广播域。
交换机(Switch)所有端口都在同一个广播域内,而 每一个端口就是一个冲突域 ,所以 交换机能分割冲突域,但分割不了广播域 。但是,虚拟局域网(Vlan)技术的交换机可以隔离广播域。
路由器(Router)的每个端口属于不同的广播域、冲突域。
也可以这样理解:
HUB属于第一层设备所以分隔不了冲突域;
交换机和网桥属于第二层设备所以能分割冲突域;
路由器属于第三层设备,所以既能分割冲突域又能分割广播域。
例1:
由于交换机和集线器都不能隔离广播域,所以图中只有1个广播域。
集线器不隔离冲突域,交换机隔离冲突域,共有5个冲突域。(交换机的一个端口就算一个冲突域,左边的交换机有四个,中间的交换机除去左边共享的一个,还有一个,共有5个。)
例2:
只有路由器能隔离广播域,因为路由器有2个接口,所以有2个广播域。
交换机和路由器能隔离冲突域,路由器有2个端口,划分了两个冲突域,右边的交换机划分了4个冲突域,所以一共有2+4=6个,因此有6个冲突域。交换机连接路由器的那个端口也是属于一个冲突域。路由器下两个冲突域,交换机下4个冲突域,换句话说,左面1个,右边5个,一共6个。交换机有4个端口连接主机,一个端口连接路由器,因为交换机每个端口就是一个冲突域,所以路由器右边有5个冲突域。
见
https://bbs.51cto.com/viewthread.php?tid=679885&extra=&page=1 思科认证。这道题软考也出过,但是软考答案是错的。关键就在于交换机连接路由器的那个端口也是属于一个冲突域。