分布式交换技术还是比较常用的,于是我研究了一下基于分布式交换技术的架构设计,在这里拿出来和大家分享一下,希望对大家有用。在部署大型企业网络的时候, 接入层交换机、汇聚层交换机、核心交换机都必不可少。交换机被赋予的最高使命就是以最高速率转发数据包, 保证业务通畅, 衡量标准也就是包转发速率, 以Mpps(每秒百万个数据包)为单位。同时, 依靠VLAN和ACL(访问控制策略)提供一定的安全保障。
那么,一提到速率, 大家都会立刻联想到物理传输介质。谁都能感受到100Mbps和1000Mbps带来的差异; 10Gbps的以太网标准也已经由IEEE 802.3工作组于2000年正式制定, 目前; 而近几年, IEEE研究小组也早就宣布,已就以太网的下一目标达成一致,目标将现有以太网的速率提高10倍,提高到100Gbps,并预计这一目标将在2010年实现。因此, 面对不断提升的以太网传输技术, 用户没有必要也不会去质疑物理线路是阻碍日常应用的瓶颈所在。大家把目光集中在企业网内部的交换机等网络设备上, 首当其冲就是位于核心网的模块交换机。而目前厂家推出的模块交换机上通常配备的板卡接口相当丰富,百兆光口, 百兆电口, 千兆光口,千兆电口, 或者万兆接口, 这些已不是比拼的重点。因此, 市场更多的把目光放在了交换机内部的交换处理性能和扩展性上。而这里涉及的一个分布式交换技术也就是今天的主题, 中心交换和分布式交换,笔者借此和大家进行一下探讨。
控模块即模块交换机的神经中枢, 一方面需要扮演交换背板的角色, 完成甚高速数据交换;另一方面, 是管理员进行日常管理和维护工作的接口。由于对核心交换的要求很高, 因此, 一般背板速率都高达上百个GigaBit, 比如合勤科技MS-7206模块交换机的背板MM-7201提供384Gbps,配置双背板就可以达到768Gbps。 而业务模块也可以称作I/O模块,顾名思义, 输入/输出模块。接入层交换机和主机都可以直连在I/O模块提供接口。业务模块可以将收到的数据包提交核心模块, 如果背板处于高度负荷状态, 则必须等待其空闲。因为有可能该数据包的目的端口仍然在此业务模块, 那么这种情况下, 对背板的利用率是最差的;业务模块也可以自己本地直接进行数据包处理和转发。下面我们来看看中心交换和分布式交换技术的区别和优劣。
中心交换主要的特征就是, 业务模块没有任何处理机制, 只负责数据包的接收和发送, 所有收到的转发请求都直接提交背板进行处理。一旦背板处理完毕, 再由核心模块转发给对应的业务模块, 后者再将数据包转发给接入层交换机或主机。我们来看看基于此类分布式交换技术的架构设计。核心背板和所有业务模块直接连接,唯一负责数据报文的处理工作。
很明显, 从简单的二层帧处理和转发, 到三层IP路由协议的处理, 都重重地压在了核心背板上。如果厂家只设计了单个背板, 那么就会带来不小的风险, 长时间的高负荷运转很容易发生故障。当然也有厂家提出了双背板设计, 带来了冗余特性。
相比, 分布式交换更加灵活,业务模块本身就嵌入了交换处理芯片,本地即可处理二层转发任务和三层路由功能, 完全不需要核心模块的干预。达到最快速转发, 零延时。基于这种交分布式交换技术的系统中, 数据包的交换工作是业务模块本地完成的。如图 2所示, 每个业务模块和其他模块通过高速链路直连。业务模块收到转发请求后直接予以解析,如果只是二层转发,那么根据MAC地址表或者VLAN信息迅速转发到对应业务模块或对应端口;如果需要路由,不论是基于RIP还是OSPF,业务模块能够解决, 当然耗费的系统资源会相对多一点。这样的设计带来的挑战就是, 在每个业务模块上赋予足够的智能,软件功能必须齐全, 从VLAN,IGMP侦听,端口镜像, 路由协议, 带宽管理等等, 俨然一个独立的三层交换机。
2个主控模块带来的是冗余特性, 并通过负载均衡机制将工作性能提升到最高。每个业务模块同时和2个主控模块相连, 业务模块之间没有之间相连。这种设计下, 当数据包源端口和目的端口都在业务模块上的时候, 业务模块将本地处理而不需要提交核心模块;当数据包不符合该特征时, 业务模块将提交核心模块转发到其他业务模块上。在业务模块的处理能力上, 市场上也看到一些差异。合勤科技MS-7206交换机的业务模块在这一点上表现还是相当出色的, 全面具备L2/L3/L4交换能力; 有的厂家业务模块仅支持二层功能, 相对较少。随着硬件成本的进一步下降,今后将出现交换性能更高更快的交换模块,但是,整体架构的选择也是非常重要,各家厂商必定将取长补短,而最终受益者必定是我们最终用户。