当前位置:数据网络技术专区 → 正文

三层交换机转换一次路由多次转发

责任编辑:editor03 |来源:企业网D1Net  2013-07-03 09:38:18 本文摘自:计世网

“第三层交换的原理是,假设两个使用IP的主机A、B通过第三层交换机进行通信。发送站点A在开始发送时,把自己的IP地址与B站的IP地址比较,判断B站是否与自己在同一子网内。若目的站B与发送站A在同一子网内,则进行二层的转发。若两个站点不在同一子网内,如发送站A要与目的站B通信,发送站A要向”缺省网关“发出ARP请求(地址解析)封包,而”缺省网关“的IP地址其实是三层交换机的三层交换模块。当发送站A对”缺省网关“的IP地址广播出一个ARP请求时,如果三层交换模块在以前的通信过程中已经知道B站的MAC地址,则向发送站A回复B的MAC地址。否则三层交换模块根据路由信息向B站广播一个ARP请求,B站得到此ARP请求后向三层交换模块回复其MAC地址,三层交换模块保存此地址并回复给发送站A,同时将B站的MAC地址发送到二层交换引擎的MAC地址表中。从这以后,A向B发送的数据包便全部交给二层交换处理,信息得以高速交换。由于仅仅在路由过程中才需要三层处理,绝大部分数据都通过二层交换转发,因此第三层交换机的速度很快,接近第二层交换机的速度,同时比相同路由器的价格低很多”。

其中的这句话令我郁闷了半天“当发送站A对”缺省网关“的IP地址广播出一个ARP请求时,如果三层交换模块在以前的通信过程中已经知道B站的MAC地址,则向发送站A回复B的MAC地址。否则三层交换模块根据路由信息向B站广播一个ARP求”。

分析:既然A和B不在同一个网段,A发送ARP请求网关的MAC地址,怎么三层交换机就返回了B的MAC地址呢?

分析上面这段文章,笔者认为这种观点违背了主机与缺省网关通信的基本原理。文章提到“当发送站A对”缺省网关“的IP地址广播出一个ARP请求时,如果三层交换模块在以前的通信过程中已经知道B站的MAC地址,则向发送站A回复B的MAC地址。否则三层交换模块根据路由信息向B站广播一个ARP 请求”。实际上,A站向三层交换模块发送网关IP地址的ARP请求时,ARP请求报文并不包含B站IP地址,三层交换模块只会把自己IP地址对应的MAC 地址回复给A站,根本不会向发送站A回复B的MAC地址。这是错误之一。

退一步说,即便三层交换模块回复B站的MAC地址,由于B站和A站不在同一子网,A站也不会把B站的目的MAC地址封装在A站要发送的以太网帧中。这是错误之二。

再者,三层交换模块接收A站发送到B站的以太网帧,三层交换模块从以太网帧的IP包中提取B站的IP地址,通过查找路由表,寻找到B站的下一跳,若B站与第三层交换机某一接口在同一网段,第三层交换机向B站IP地址广播ARP请求,从B站的ARP应答中可得知B站的MAC地址;若B站与三层交换机某一接口不在同一网段,中间相隔了好几跳,三层交换模块只会向下一跳IP地址广播ARP请求,下一跳ARP应答的应是下一跳IP地址的MAC地址,三层交换模块无从得知B站的MAC地址。这是错误之三。

要达到“路由一次,处处交换”或“基于目的MAC地址的第二层交换”的目的,必须改变现存主机与缺省网关的通信机制或第三层交换机的路由规则,换句话说,以一种新的主机与缺省网关的通信机制替代现有的通信机制。就像前面描述的3Com公司的快速IP技术一样。实际网络中主机和第三层交换机都工作得很好,无需主机做任何改变,也无需改变原有的网络设施。在第三层交换机替代传统路由器的场合,子网间的流量转发性能却得到了空前的提高。这并不是改变了交换机对三层报文转发机制的结果,即“路由一次,处处交换”或“基于目的MAC地址的第二层交换”的结果,而是第三层交换机基于硬件快速转发三层报文的结果。

关键字:转发路由三层交换机

本文摘自:计世网

x 三层交换机转换一次路由多次转发 扫一扫
分享本文到朋友圈
当前位置:数据网络技术专区 → 正文

三层交换机转换一次路由多次转发

责任编辑:editor03 |来源:企业网D1Net  2013-07-03 09:38:18 本文摘自:计世网

“第三层交换的原理是,假设两个使用IP的主机A、B通过第三层交换机进行通信。发送站点A在开始发送时,把自己的IP地址与B站的IP地址比较,判断B站是否与自己在同一子网内。若目的站B与发送站A在同一子网内,则进行二层的转发。若两个站点不在同一子网内,如发送站A要与目的站B通信,发送站A要向”缺省网关“发出ARP请求(地址解析)封包,而”缺省网关“的IP地址其实是三层交换机的三层交换模块。当发送站A对”缺省网关“的IP地址广播出一个ARP请求时,如果三层交换模块在以前的通信过程中已经知道B站的MAC地址,则向发送站A回复B的MAC地址。否则三层交换模块根据路由信息向B站广播一个ARP请求,B站得到此ARP请求后向三层交换模块回复其MAC地址,三层交换模块保存此地址并回复给发送站A,同时将B站的MAC地址发送到二层交换引擎的MAC地址表中。从这以后,A向B发送的数据包便全部交给二层交换处理,信息得以高速交换。由于仅仅在路由过程中才需要三层处理,绝大部分数据都通过二层交换转发,因此第三层交换机的速度很快,接近第二层交换机的速度,同时比相同路由器的价格低很多”。

其中的这句话令我郁闷了半天“当发送站A对”缺省网关“的IP地址广播出一个ARP请求时,如果三层交换模块在以前的通信过程中已经知道B站的MAC地址,则向发送站A回复B的MAC地址。否则三层交换模块根据路由信息向B站广播一个ARP求”。

分析:既然A和B不在同一个网段,A发送ARP请求网关的MAC地址,怎么三层交换机就返回了B的MAC地址呢?

分析上面这段文章,笔者认为这种观点违背了主机与缺省网关通信的基本原理。文章提到“当发送站A对”缺省网关“的IP地址广播出一个ARP请求时,如果三层交换模块在以前的通信过程中已经知道B站的MAC地址,则向发送站A回复B的MAC地址。否则三层交换模块根据路由信息向B站广播一个ARP 请求”。实际上,A站向三层交换模块发送网关IP地址的ARP请求时,ARP请求报文并不包含B站IP地址,三层交换模块只会把自己IP地址对应的MAC 地址回复给A站,根本不会向发送站A回复B的MAC地址。这是错误之一。

退一步说,即便三层交换模块回复B站的MAC地址,由于B站和A站不在同一子网,A站也不会把B站的目的MAC地址封装在A站要发送的以太网帧中。这是错误之二。

再者,三层交换模块接收A站发送到B站的以太网帧,三层交换模块从以太网帧的IP包中提取B站的IP地址,通过查找路由表,寻找到B站的下一跳,若B站与第三层交换机某一接口在同一网段,第三层交换机向B站IP地址广播ARP请求,从B站的ARP应答中可得知B站的MAC地址;若B站与三层交换机某一接口不在同一网段,中间相隔了好几跳,三层交换模块只会向下一跳IP地址广播ARP请求,下一跳ARP应答的应是下一跳IP地址的MAC地址,三层交换模块无从得知B站的MAC地址。这是错误之三。

要达到“路由一次,处处交换”或“基于目的MAC地址的第二层交换”的目的,必须改变现存主机与缺省网关的通信机制或第三层交换机的路由规则,换句话说,以一种新的主机与缺省网关的通信机制替代现有的通信机制。就像前面描述的3Com公司的快速IP技术一样。实际网络中主机和第三层交换机都工作得很好,无需主机做任何改变,也无需改变原有的网络设施。在第三层交换机替代传统路由器的场合,子网间的流量转发性能却得到了空前的提高。这并不是改变了交换机对三层报文转发机制的结果,即“路由一次,处处交换”或“基于目的MAC地址的第二层交换”的结果,而是第三层交换机基于硬件快速转发三层报文的结果。

关键字:转发路由三层交换机

本文摘自:计世网

电子周刊
回到顶部

关于我们联系我们版权声明隐私条款广告服务友情链接投稿中心招贤纳士

企业网版权所有 ©2010-2024 京ICP备09108050号-6 京公网安备 11010502049343号

^