18、以太网交换机

截至到上一节的内容,我们几乎已经把局域网的数据链路层的知识学完了。接下来这一节,介绍工作在数据链路层的网络设备——交换机,并且用cisco packet tracer 6 模拟器来演示它的特点。

交换机是一种可以工作在数据链路层、网络层甚至更高层的网络设备,工作在数据链路层的称为二层交换机,工作在网络层称为三层交换机

在进行网络项目建设的时候,用于大量用户接入的一般就是二层交换机,用于流量汇聚和负责高速转发数据的,就用三层交换机。但是这并不意味着三层交换机不能做用于接入,只是三层交换机只用来做普通用户接入的话,成本就比较高,如果资金非常充足,用性能高的三层交换机做用户接入完全可以。

这一节,我们主要学习的是二层交换机中最主流的以太网交换机,当然也有像ATM交换机、帧中继交换机,这些都属于二层的交换机,但是以太网交换机是应用最广泛和最普遍的。


交换机的工作原理

以太网交换机毕竟是工作在数据链路层的设备,比集线器这个物理层的设备要高一级。集线器只是简单地把多台主机连接到一起,当其中一台主机A想要给另外一台主机B发送数据的时候,先发送给中心节点集线器,而集线器就会把这个数据发送给除了A的所有主机。

归根到底,是因为集线器是物理层的设备,因为物理层的设备是看不到数据帧里面的内容的,也就是集线器根本不知道每个数据帧的目的地址是谁、源地址是谁

交换机不一样,交换机是二层的设备,它收到数据帧之后可以看到这个帧的内容,可以知道这个帧的目的MAC地址和源MAC地址,相当于就知道了这个帧是从哪来的,要发到哪去。

交换机内部存储有一张表格,专业用语叫做“CAM表”。不过为了便于理解,我们可以形象地把这张表格理解成是一种“MAC-端口映射表”,里面记录了交换机和每个主机互相连接的端口编号和对应主机的MAC地址,通过查找这张表格,交换机就会知道该把数据帧从自己的哪个端口发出去,送给相应的主机。


MAC地址学习机制

刚才我们说了,交换机内部有一张MAC和端口的对应表,通过这张表可以把数据帧精准的发送到目的地。而当安装了一台新的交换机开始工作的时候,这台交换机里面的表是空的,这就意味着一个新交换机是一个什么都不知道的小白,如果有主机向这台小白交换机发送了一个数据帧,那小白也不知道该往哪个端口发出去,它只能向所有端口发出去。

看完上面这个过程,和集线器有点像,但是它们在本质上是不同的,因为在上述过程中,小白交换机自动的干了一件事,就是学习源MAC地址把这个帧的源MAC地址和收到这个帧的端口编号记录在自己的表上,这样做的目的就是为了以后再收到目的地址是这个的时候,直接从相应端口转发出去。

现在,我用cisco packet tracer软件搭建一个环境,有个直观地感受:

18、以太网交换机_第1张图片

在我搭建的这个虚拟环境中,四台主机连接到了一台以太网交换机上,交换机的Fa0/1端口连接到了主机PC0,Fa0/2端口连接到了主机PC1,Fa0/3端口连接到了主机PC2,Fa0/4端口连接到了主机PC3。(Fa指的是FastEthernet,也就是快速以太网,简单了解一下)。 

现在,这台交换机是一台刚上架的新交换机,MAC-端口映射表是空的。比如,当PC0给PC3发送一个数据帧,这时候交换机就会把这个帧向所有端口转发出去,同时它也记住了PC0的MAC地址与Fa0/1端口的对映,如下图:

18、以太网交换机_第2张图片

交换机把这个数据帧向除了Fa0/1的所有端口转发出去了,但是最终只有PC3会收到并回复,因为PC1和PC2收到以后,一对比帧的目的MAC地址不是自己,就会把数据丢弃了。

当PC3收到数据后,会给PC0回复一个确认,PC3把确认消息发到交换机,这时候交换机不是小白了,一看这个消息的目的MAC地址是PC0,交换机已经知道PC0的MAC地址了,所以直接把这个确认消息从自己的Fa0/1端口发出去,就能到达PC0。

下图为PC3给PC0回复确认,交换机直接转给PC0,不会向其他端口转发:

18、以太网交换机_第3张图片


冲突域和广播域

前面我们讲过,总线型的以太网,以及用集线器作为中心节点的星型以太网,都属于“共享式以太网”。

共享式以太网的特点就是:比如这个网络有10台主机组成,整个网络的带宽是10M,这10M带宽的网络资源由这10台主机来共享,那么每台主机实际分得的带宽就是1M

如果用交换机来组建一个星型拓扑的以太网,就不一样了,这种叫做“交换式以太网”,同样的情况下,用一台交换机来连接10台主机,总带宽也是10M的条件下,由于交换机的工作机制,这10M是由每台主机独享的,每台主机都能享受到10M的带宽

现在可以来介绍冲突域和广播域的概念了。

冲突域指的是:网络上如果有两台主机同时通信时会发生冲突的范围大小;广播域指的是:网络上有一台主机同时向这个网络上所有的主机发送数据,这个数据能被广播到的范围。

根据集线器和交换机的工作原理和特性,从狭义上来讲,集线器的所有端口都处在同一个冲突域和同一个广播域。交换机的所有端口都处在同一个广播域,而每个端口都是一个独立的冲突域

比如说,8台主机连接到一个集线器上,那么这8台主机就组成了同一个广播域、同一个冲突域;如果是8台主机连接到一个交换机上,那么这个环境下,总共就会有一个广播域、八个冲突域。

刚才是从狭义上来讲,也就是集线器作为物理层设备的代表,交换机作为链路层设备的代表,做了一下比较,现在我们可以把这个知识点抽象和提炼一般特征,从广义角度来看就是:
 

物理层设备 不分割冲突域、不分割广播域,设备所有端口都处在同一个广播域和冲突域
链路层设备 分割冲突域、不分割广播域,设备所有端口都处在同一个广播域,有几个端口就有几个冲突域

总的来说,这一节的内容很多,但是并不难,主要是理解,交换机作为现在主流的网络设备,一定要认真理解。当然,交换机的功能远不止我介绍的这些,关于它更高级的功能和特性,我们以后会单独开一个专门讲解路由交换技术的专栏。


参考教材:罗拥军《网络设备配置基础》

你可能感兴趣的:(计算机网络(TCP/IP原理),tcp/ip,网络)