您现在的位置: 天下网吧 >> 网吧天下 >> 网吧行业 >> 网吧资讯 >> 正文

网吧网管技术新知:例解三层交换具体原理

[作者:ivy整理 来源:中国it实验室 时间:2013-11-8我来说两句

  二层交换机的二层数据交换一般都是使用ASIC(Application Specific Integrated Circuit ,专用集成电路)的硬件芯片中的CAM表来实现的,因为是硬件转发,所以转发性能非常高。而三层交换机的三层转发也是依靠ASIC芯片完成的(路由器的路由功能主要依靠CPU软件进行的),但其中除了二层交换用的CAM表外,还保存有专门用于三层转发的三层硬件转发表。

  三层交换机的三层交换原理比较复杂,不同网络环境下、不同厂家的三层交换机的三层交换流程都不完全相同。如图7-55所示的仅一个直接连接在一台三层交换机上的两个不同网段主机三层交换的基本流程,各主要步骤解释如下:

  (1) 源主机在发起通信之前,将自己的IP地址与目的主机的IP地址进行比较,如果源主机判断目的主机与自己位于不同网段时,它需要通过网关来递交报文的,所以它首先需要通过一个ARP请求报文获取网关的MAC地址(在源主机不知道网关MAC地址的情形下),即源主机先发送ARP请求帧以获取网关IP地址对应的 MAC地址。

  (2)网关在收到源主机发来的ARP请求报文后以一个ARP应答报文进行回应,在应答报文中的“源MAC地址”就包含了网关的MAC地址。

  (3)在得到网关的ARP应答后,源主机再用网关MAC地址作为报文的“目的MAC地址”,以源主机的IP地址作为报文的“源IP地址”,以目的主机的IP地址作为“目的IP地址”,先把发送给目的主机的数据发给网关。


图7-55 三层交换基本流程

  (4)网关在收到源主机发送给目的主机的数据后,由于查看得知源主机和目的主机的IP地址不在同一网段,于是把数据报上传到三层交换引擎(ASIC芯片),在里面查看有无目的主机的三层转发表。

  (5)如果在三层硬件转发表中没有找到目的主机的对应表项,则向CPU请求查看软件路由表,如果有目的主机所在网段的路由表项,则还需要得到目的主机的MAC地址,因为数据包在链路层是要经过帧封装的。于是三层交换机CPU向目的主机所在网段发送一个ARP广播请求包,以获得目的主机MAC地址。

  (6)交换机获得目的主机MAC地址后,向ARP表中添加对应的表项,并转发由源主机到达目的主机的灵气包。同时三层交换机三层引擎会结合路由表生成目的主机的三层硬件转发表。

  以后到达目的主机的数据包就可以直接利用三层硬件转发表中的转发表项进行数据交换,不用再查看CPU中的路由表了。

  以上流程适用位于不同VLAN(网段)中的主机互访时属于这种情况,这时用于互连的交换机作三层交换转发。这就是“一次路由,多次交换”的原理。


本文来源:中国it实验室 作者:ivy整理

我来说两句(请遵守法律法规)
声明
本文来源地址:0
声明:本站所发表的文章、评论及图片仅代表作者本人观点,与本站立场无关。若文章侵犯了您的相关权益,请及时与我们联系,我们会及时处理,感谢您对本站的支持!联系邮箱:support@txwb.com.,本站所有有注明来源为天下网吧或天下网吧论坛的原创作品,各位转载时请注明来源链接!
天下网吧 网吧天下