三层交换原理图解

来源:互联网 发布:mac snip 编辑:程序博客网 时间:2024/05/01 11:39

(一)大家常常听到的“一次路由,多次交换”,可以简单的理解为:在完成对收到的第一个新数据流进行路由后,产生一个MAC地址与IP地址的映射表,当具有相同地址信息的数据流再次通过时,即根据此表直接在二层完成转发。


(二)下面以一个例子,解释三层交换机的转发原理。

如图1所示,该组网内,通信的源主机、目的主机连接在同一台三层交换机上,但它们位于不同VLAN(网段)。

对于三层交换机来说,这两台主机都位于它的直连网段内,它们的IP对应的路由都是直连路由。

                 

                                    图   三层转发组网1

 

1中标明了两台主机(AB)MACIP地址、网关,以及三层交换机S3600MAC、不同VLAN配置的三层接口IP

源主机:    简称PC A        |      MAC地址 简称MAC A    |      IP 1.1.1.2    |      网关1.1.1.1                    

目的主机简称PC B        |      MAC地址 简称MAC B    |      IP 2.1.1.2    |      网关2.1.1.1                         

交换机:  简称S3600      |      MAC地址 简称MAC S    |      VLAN2三层接口IP        1.1.1.1

                                                                             VLAN3三层接口IP        2.1.1.1


(三) PC A  PC B 发起ICMP请求(ping)时,数据交换的过程如下:(假设三层交换机上还未建立任何硬件转发表项,此次交换为首次)

1 根据前面的描述,PC A检查出目的IP地址2.1.1.2PC B)与自己不在同一网段,因此它发出请求:请求网关地址1.1.1.1对应MACARP请求;

2 三层交换机S3600收到PC AARP请求后,检查请求报文发现被请求IP是自己的三层接口IP,因此发送ARP应答并将自己的三层接口MACMAC S)包含在其中。同时它还会把PC AIP地址与MAC地址对应(1.1.1.2<==>MAC A)关系记录到自己的ARP表项中去(因为ARP请求报文中包含了发送者的IPMAC);

3 PC A得到网关(S3600VLAN2 1.1.1.1)的ARP应答后,组装ICMP请求报文并发送,源MACMAC A、源IP1.1.1.2、报文的目的MACMAC S、目的IP2.1.1.2

4 S3600收到报文后,首先根据报文的源MAC+VID(即VLAN ID)更新MAC地址表。然后,根据报文的目的MACVID查找MAC地址表,发现匹配了自己三层接口MAC的表项。(这里说明一下,在BCM的chip中,MAC地址条目可以简单分为两种:一种是交换机通过收取报文时源MAC地址的学习。第二种是当为三层交换机为VLAN配置三层接口IP后,会在交换芯片的MAC地址表中添加三层接口MACVID的表项,并且为表项的三层转发标志置位。当报文的目的MAC匹配这样的表项以后,说明需要作三层转发,于是继续查找交换芯片的三层表项)

5 交换芯片根据报文的目的IP去查找其三层表项,由于之前未建立任何表项,因此查找失败,于是将报文送到CPU去进行软件处理;

6 CPU根据报文的目的IP去查找其软件路由表,发现匹配了一个直连网段(PC B对应的网段),于是继续查找其软件ARP表,仍然查找失败。然后S3600会在目的网段对应的VLAN 3的所有端口发送请求地址2.1.1.2对应MACARP请求;

7 PC B收到S3600发送的ARP请求后,检查发现被请求IP是自己的IP,因此发送ARP应答并将自己的MACMAC B)包含在其中。同时,将S3600IPMAC的对应关系(2.1.1.1<==>MAC S)记录到自己的ARP表中去;

8 S3600收到PC BARP应答后,将其IPMAC对应关系(2.1.1.2<==>MAC B)记录到自己的ARP表中去,并将PC AICMP请求报文发送给PC B,报文的目的MAC修改为PC BMACMAC B),源MAC修改为自己的MACMAC S)。同时,在交换芯片的三层表项中根据刚得到的三层转发信息添加表项(内容包括IPMAC、出口VLAN、出端口),这样后续的PC A发往PC B的报文就可以通过该硬件三层表项直接转发了;

9 PC B收到S3600转发过来的ICMP请求报文以后,回应ICMP应答给PC AICMP应答报文的转发过程与前面类似,只是由于S3600在之前已经得到PC AIPMAC对应关系了,也同时在交换芯片中添加了相关三层表项,因此这个报文直接由交换芯片硬件转发给PC A

10 这样,后续的往返报文都经过查MAC=>查三层转发表的过程由交换芯片直接进行硬件转发了。

从上述流程可以看出,三层交换机正是充分利用了一次路由(首包CPU转发并建立三层硬件表项)、多次交换(后续包芯片硬件转发)的原理实现了转发性能与三层交换的完美统一。


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 孩子数学计算能力差怎么办 股票没有客户号怎么办 五岁宝宝鼻炎怎么办 孩子怕老师家长怎么办 孩子得了厌学症怎么办 幼儿不好好吃饭怎么办 孩子在学校胆小怎么办 孩子胆小没自信怎么办 特别倔强的学生怎么办 初中生注意力不集中怎么办 父母水平太低怎么办 父母不肯买电脑怎么办 与父母性格不合怎么办 父母和孩子吵架怎么办 如果有孩子离婚怎么办 离婚时成年孩子怎么办 父母离婚后孩子怎么办 父母吵架闹离婚怎么办 父母吵架后冷战怎么办 家里每天都吵架怎么办 夫妻因为钱吵架怎么办 离婚了很痛苦怎么办 身份证丢了怎么办离婚 和老婆离婚了怎么办 老婆跟前任联系怎么办 离异小孩上户口怎么办 离婚之后孩子户口怎么办 父母离婚孩子户口怎么办 夫妻离婚孩子户口怎么办 孩子有心理阴影怎么办 孩子心里有障碍怎么办 初中的孩子厌学怎么办 孩子抑郁了家长怎么办 大人得地图舌怎么办 孩子老挨欺负怎么办 工作做错了事情怎么办 父母和邻居吵架怎么办 父亲总是骂我怎么办 小孩依赖性太强怎么办 小孩子摔到头吐怎么办 小孩智商低上学怎么办