**
二层交换技术
**
二层交换技术发展比较成熟,二层交换机属于数据链路层设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。
具体工作流程:
当交换机从某个端口收到一个数据包,它先读取报头中的源MAC地址,这样它就知道源MAC地址的及其是连接在哪个端口上。
再去读取包头中的目的 MAC 地址,并在地址表中查找相应的端口;
如表中有与这目的 MAC 地址对应的端口,把数据包直接复制到这端口上;
如表中找不到相应的端口则把数据包广播到所有端口上,当目的机器对源机器回应时,交换机又可以学习目的 MAC 地址与哪个端口对应,下次再传送数据时就不再需要对所有端口进行广播了。
不断的循环这个过程,对于全网的 MAC 地址信息都可以学习到,二层交换机就是这
样建立和维护它自己的地址表。
从二层交换机的工作原理可以推知以下三点:
由于交换机对多数端口的数据进行同时交换,这就要求具有很宽的交换总线带宽,如果二层交换机有 N 个端口,每个端口的带宽是 M,交换机总线带宽超过 N×M,那么这交换机就可以实现线速交换;
学习端口连接的机器的 MAC 地址,写入地址表,地址表的大小(一般两种表示方式:一为 BEFFER RAM,一为 MAC 表项数值),地址表大小影响交换机的接入容量;
还有一个就是二层交换机一般都含有专门用于处理数据包转发的ASIC (Application specific Integrated Circuit)芯片,因此转发速度可以做到非常快。
由于各个厂家采用 ASIC 不同,直接影响产品性能。
以上三点也是评判二层交换机性能优劣的主要技术参数。
路由技术原理
路由器工作在 OSI 模型的第三层——网络层操作,其工作模式与二层交换相似,但路由器工作在第三层,这个区别决定了路由和交换在传递包时使用不同的控制信息,实现功能的方式就不同。
路由器工作原理是在路由器的内部也有一个表,这个表所标示的是:如果数据包要去某一个地方,下一步应该向哪里走。如果从路由表中能找到数据包下一步往哪里走,就把链路层信息加上转发出去;如果不能知道下一步走向哪里,则将此包丢弃,然后返回一个信息交给源地址。
路由技术实质上来说不过两种功能:决定最优路由和转发数据包。路由表中写入各种信息,由路由算法计算出到达目的地址的最佳路径,然后用相对简单直接的转发机制发送数据包。接受数据的下一台路由器依照相同的工作方式继续转发,依次类推,直到数据包到达目的路由器。而路由表的维护,也有两种不同的方式。一种是路由信息的更新,将部分或者全部的路由信息公布出去,路由器通过互相学习路由信息,就掌握了全网的拓扑结构,这一类的路由协议称为距离矢量路由协议;另一种是路由器将自己的链路状态信息进行广播,通过互相学习掌握全网的路由信息,进而计算出最佳的转发路径,这类路由协议称为链路状态路由协议。
由于路由器需要做大量的路径计算工作,一般处理器的工作能力直接决定其性能的优劣。当然这一判断还是对中低端路由器而言,因为高端路由器往往采用分布式处理系统体系设计。
三层交换技术及其原理
先通过一个简单的网络来介绍三层交换机的工作过程,假设组网结构如下:
使用 IP 的设备 A------------------三层交换机------------------使用 IP 的设备 B
比如 A 要给 B 发送数据,已知目的 IP,那么 A 就用子网掩码取得网络地址,判断目的 IP 是否与自己在同一网段。
如果在同一网段,但不知道转发数据所需的 MAC 地址,A 就发送一个 ARP 请求,B返回其 MAC 地址,A 用此 MAC 封装数据包并发送给交换机,交换机起用二层交换模块,查找 MAC 地址表,将数据包转发到相应的端口。
如果目的 IP 地址显示不是同一网段的,那么 A 要实现和 B 的通讯,在流缓存条目中没有对应 MAC 地址条目,就将第一个正常数据包发送向一个缺省网关,这个缺省网关一般在操作系统中已经设好,对应第三层路由模块,所以可见,对于不是同一子网的数据,最先在 MAC 表中放的是缺省网关的 MAC 地址;然后就由三层模块接收到此数据包,查询路由表以确定到达 B 的路由,将构造一个新的帧头,其中以缺省网关的 MAC 地址为源MAC 地址,以主机 B 的 MAC 地址为目的 MAC 地址。通过一定的识别触发机制,确立主机 A 与 B 的 MAC 地址及转发端口的对应关系,并记录进流缓存条目表,以后的 A 到 B 的数据,就直接交由二层交换模块完成。这就通常所说的一次路由多次转发。
以上就是三层交换机工作过程的简单概括,可以看出三层交换的特点:由硬件结合实现数据的高速转发。这就不是简单的二层交换机和路由器的叠加,三层路由模块直接叠加在二层交换的高速背板总线上,突破了传统路由器的接口速率限制,速率可达几十Gbit/s。算上背板带宽,这些是三层交换机性能的两个重要参数。
结论
二层交换机用于小型的局域网络。这个就不用多言了,在小型局域网中,广播包影响不大,二层交换机的快速交换功能、多个接入端口和低廉价格为小型网络用户提供了很完善的解决方案。
路由器的优点在于接口类型丰富,支持的三层功能强大,路由能力强大,适合用于大型的网络间的路由,它的优势在于选择最佳路由,负荷分担,链路备份及和其他网络进行路由信息的交换等等路由器所具有功能。
三层交换机的最重要的功能是加快大型局域网络内部的数据的快速转发,加入路由功能也是为这个目的服务的。如果把大型网络按照部门,地域等等因素划分成一个个小局域网,这将导致大量的网际互访,单纯的使用二层交换机不能实现网际互访;如单纯的使用路由器,由于接口数量有限和路由转发速度慢,将限制网络的速度和网络规模,采用具有路由功能的快速转发的三层交换机就成为首选。
三层交换机工作原理
三层交换机
通俗一点来说就是具有二层交换技术+三层转发技术的交换机。
基于三层交换机优秀的性能,在大型企业局域网中,从接入层到核心层大多都用三层交换机,而少用二层交换机。
工作原理
还是上面的这个结构
使用 IP 的设备 A------------------三层交换机------------------使用 IP 的设备 B
一般的情况下,设备A要联系设备B,上面已经说的很清楚了,现在要说的是当A不知道B的MAC地址,并且不在同一网段的时候,A首先向三层交换机发送一个请求包,也就是上面的第一个正常的数据包,这个时候,交换机实际上会向所有端口广播一个ARP请求,当B收到这个ARP请求后向三层交换机回复自己的MAC地址,然后,三层交换模块保存地址并发送给A。也就是上面所说一样,得到MAC地址以后,交换机以后就直接通过端口转发传输数据,需要注意的是,三层交换机会将这个MAC地址保存到二层引擎的地址表中,以后发送的所有数据包全部交给二层模块处理。