单击此处编辑母版标题样式,编辑母版文本样式,第二级,第三级,第四级,第五级,2016/12/14,#,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2016/12/14,#,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2016/12/14,#,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2016/12/14,#,二层交换,收到帧,CPU,处理,BPDU,帧,Vlan,进规则有无,Tag?,FCS,校验错误,缓冲区满,有,无,丢弃,有,但端口不接收此,Vlan,根据,PVID,配置给帧打,Tag,In,过滤表,Mac,或,IP,端口学习,Mac,地址,在该,Vlan,内,查找目的,Mac,地址,符合丢,弃规则,转发到该,Vlan,内所有端口,转发到相,应端口,Vlan table,表匹配,转发到相应的,Vlan,端口,广播或找不到目的,MAC,地址,单播,组播,有,Igmp Snooping,没有,Igmp,数据帧出口,排队(,Qos,规则),超时,重新计算,FCS,出端口,没有出端口,Vlan,出规则,Tag,或,Untag,进端口,二层交换数据帧处理流程,二层交换设备一般通过内部的,ASIC,硬件芯片完成转发,硬件转发性能非常高。,D MAC,CRC,TYPE,S MAC,D MAC,CRC,TYPE,S MAC,IEEE 802.1Q,TAG,CFI,TPID,VLAN ID,PRI,DATA,DATA,DATA,DATA,6 Byte,6,2,4,6 Byte,6,2,4,4,1,3,12,16 Bit,TCI,0 x8100,COS,值,IEEE 802.1P,优先级,标准以太网帧,带有,1,个,802.1Q,标签的以太网帧,46,1500,802.1P 是 IEEE 802.1Q VLAN 标签技术标准的扩充协议,它们协同工作。,IEEE 802.1Q VLAN 标准中没有定义和使用优先级字段,而 802.1P 中那么定义了该字段。,二层报文,二层,802.1P,优先级,优先级,建议应用范围,7,关键性网络流量,如,RIP,和,OSPF,协议的路由表更新,65,延迟敏感应用程序,如交互式视频和语音,41,受控负载应用程序,如流式多媒体和关键性业务流量,0,缺省值,并在没有设置其它优先级值的情况下自动启用,PVID,PVID:默认VLAN ID缺省VLAN,只在入方向起作用。,端口,Tag,Trunk口发送时:,假设与PVID同,去掉,假设与PVID不同,直接发送,Access口:,进有VLAN,假设不是PVID,丢弃,进无VLAN,加PVID,接收,时:,Tagged,:数据无,VLAN,,加上,VLAN PVID,数据有,VLAN,,不再添加,Untagged,:不管输入是否有,VLAN,,都要加上,PVID,发送时:,Tagged,:数据,VLAN=PVID,,去掉,VLAN,数据,VLAN,PVID,,带,VLAN,,实现,VLAN,透传,Untagged,:去掉,VLAN,其实,就是,CISCO,中的,,trunk(tagged),和,acess(untagged),区别,【注意】,在Trunk链路中,假设vlan id=pvid,出端口时去掉vlan id 在trunk链路中传输,到了对端,收到无标签的数据帧时,交换时机自动打上pvid标签。,二层转发1个细节过程:,在MAC地址表项中如果找不到相应的端口,那么会把数据包播送到VLAN内,所有端口上,当目的设备对源设备回应时,交换机才可学习目的MAC地址,与哪个端口对应,参加MAC地址表,在下次传送数据时,就不用再需要对,所有端口进行播送了。,三,层交换,主交换引擎,L2,Table,L3,Table,快速转发通道,路由,处理模块,CPU,-Routing Protocols,-SNMP,Memory,-,Routing Table,第一次路由通道,A,B,三层交换机一般通过,VLAN,来划分二层网络并实现二层硬件转发;,同时,能够实现不同,VLAN,的直接三层硬件转发。,三,层数据处理流程,0,0,0,H Length,Packet Length,S IP,TTL,片偏移,标识,T,ype,O,f,S,ervice,version,标志,上层协议类型,首部校验和,D IP,(选项),+,数据,4 Bit,4,16,8,20 Byte,IP-Pre,TOS,值,DSCP,值,DSCP,三层报文,4 bit,中只能置,1,其中,1 bit,或全为,0,优先级,定义,建议使用范围,7,网络控制,网络控制数据,比如路由,6,网间控制,5,关键,语音数据,4,疾速,视频会议和视频流,3,闪速,语音控制数据,2,快速,数据业务,1,优先,0,普通,缺省标记值,三层,IP,优先级,4 bit的TOS值分别代表:,最小时延、最大吞吐量、最高可靠性和最小费用。,4 bit中只能置1其中1 bit。如果所有4 bit均为0,那么就意味着是一般效劳。,DSCP,由,RFC2474,定义,它重新命名了,IPv4,报头中,TOS,使用的那,1,字节和,IPv6,报头中数据类(,TrafficClass,)那,1,字节,新的名字称为,Diff-Serv,字段,(,Differentiated ServicesField,),。,该,字段的作用没有变,仍然被,QoS,工具用来标记数据,。,不同,的是,IPv4,使用,3,比特,而,DSCP,使用,6,比特,最低,2,比特,不用置,0,。,DSCP,RFC2474,定义,最高,3,比特,为级别类别选择代码(,ClassSelector Codepoints,,,CS,),其意义和,IPv4,报头中,IP,优先级的定义是相同的,,CS0,CS7,的级别相等于,IP,优先级,0,7,。但它并没有定义第,3,到第,5,比特的具体含义以及使用规则。,0,0,CS0CS7,保证,转发,(,Assured Forwarding,AF,)由,RFC2597,对,CS1CS4,进行进一步定义。它使用第,3,和第,4,比特做丢弃优先级标志。,01,低丢弃优先级;,10,中丢弃优先级;,11,高丢弃优先级。,这样,在同一类数据中,又根据被丢弃的可能性划分出,3,档。,AF,0,0,CS1,CS2,CS3,CS4,Lowdrop AF11,AF21,AF31,AF41,001,01,0,010,01,0,011,01,0,100,01,0,Mediumdrop,AF12,AF22,AF32,AF42,001,10,0,010,10,0,011,10,0,100,10,0,Highdrop,AF13,AF23,AF33,AF43,001,11,0,010,11,0,011,11,0,100,11,0,无,阻碍转发,(,Expedited Forwarding,EF,)由,RFC2598,定义,,DSCP,值为,46(101110),。,EF,服务适用于,低丢包率,低延迟,低抖动及保证带宽,的业务,如,VOIP,。,EF,1,0,1,1,1,0,0,0,三层交换报文转发过程实例-比较目的IP与源IP是否同一网段,主机,-A,主机,-B,三层,交换机,Vlan:10,MAC:00E0-D26B-8121,IP:100.1.1.2/24,Vlan:10,MAC:00E0-D26B-8121,IP:100.1.1.1/24,Vlan:20,MAC:00E0-D26B-8222,IP:200.1.1.1/24,Vlan:20,MAC:00E0-D26B-8212,IP:200.1.1.2/24,主机A主机B,首先主机A会将自己的IP地址和子网掩码做与操作,得出网路地址。,(如:Host-A的IP地址 100.1.1.2与自身掩码255.255.255.0做与操作后,得到的网络号是100.1.1.0),然后比较目的IP地址与自己的网络地址是不是在同一个子网。,(因为图中主机A和主机B不在同一子网内,所以需要进行三层转发),三层交换报文转发过程实例-ARP播送获取网关MAC地址,Ethernet,头,ARP,头,D-MAC,S-MAC,S-MAC,S-IP,D-MAC,D-IP,f,fff,-,ffff-ffff,00e0-d26b-8121,00e0-d26b-8121,100.1.1.2,0000-0000-0000,100.1.1.1,主机A想访问主机B首先要有主机B的MAC地址,由于主机A和主机B不在同一子网,,所以主机A首先会向缺省网关发送ARP播送报文来获取网关的MAC地址。ARP报文格式如下:,交换机收到ARP播送报文后,首先学习ARP报文Ethernet头部的源MAC地址,交换机芯片将自动记录主机,A的MAC地址(00e0-d26b-8121)、接收该ARP报文的交换机接口号(E1/0/0)及此接口所属的VLAN(VLAN,10)等信息,并形成一条MAC表项放入交换机MAC表中.同时,交换机也会通过软件把主机A的IP、MAC、,上连到交换机的接口等信息保存到交换机的硬件转发表里三层硬件表项,MAC表是没有IP的。,由于主机A发送的ARP播送报文中的目的IP地址(100.1.1.1)就是交换机上接收该ARP播送报文的接口,(E1/0/0)所属VLAN(VLAN 10)的IP地址,所以交换机将使用vlan10的MAC地址回复主机A的ARP请求ARP,回复报文如下:,三层交换报文转发过程实例,-,网关,回复,MAC,地址,Ethernet,头,ARP,头,D-MAC,S-MAC,S-MAC,S-IP,D-MAC,D-IP,00e0-d26b-8121,00e0-d26b-8111,00e0-d26b-8111,100.1.1.1,00e0-d26b-8121,100.1.1.2,三层交换报文转发过程实例,-,主机发送数据,主机,A,收到网关的,ARP,回应报文后,,会,使用网关,MAC,作为目的,MAC,来封装数据侦,侦格式如下:,Ethernet,头,IP,头,数据,D-MAC,S-MAC,S-IP,D-IP,DATA,00e0-d26b-8111,00e0-d26b-8121,100.1.1.2,200.1.1.2,交换机收到主机A发来的数据报文后,仍然会首先学习数据报文Ethernet头部的源MAC地址,然后根据Ethernet头部的目的MAC查找交换机的MAC表,此时发现目的MAC地址就是本地VLAN的MAC地址,这种情况下交换时机把该报文上送到交换芯片的三层引擎处理。三层引擎将首先查找硬件转发表。,1.如果三层硬件转发表中有匹配项,那么根据报文目的IP地址作相应处理:,目的IP地址就是本地的IP地址,那么交相应模块处理。,目的IP是其他设备IP地址,本地只是转发,那么根据硬件转发表项使用出接口MAC替换报文的源MAC地址,用下一跳MAC替换报文的目的MAC地址,同时TTL值减1,继续转发。此处与二层的区别在于需要对报文进行源、目的MAC进行替换,2.如果不匹配那么查找路由表,有匹配项那么按照上面2中的操作进行,同时把相应的目的IP、下一跳MAC、出接口等信息存储到硬件转发表项中,下次就不需要查路由表了,这就是所谓的一次路由屡次交换。,3.如果路由表也没有匹配项,那么丢弃报文。,三层交换报文转发过程实例,-,交换机接收转发数据,如果是,路由器,,此时报文会上送,CPU,,查看内存中的路由表。,此处,由于主机,A,数据报文的目的,IP,是主机,B,的地址,并且,主机,B,和交换机直连,,交换机的硬件转发表,/,路由表已经有主机,B,的路由表项,所以,交换机将主机,A,发来的报文中的源、目的,MAC,地址作替换,同时,TTL,值减,1,,然后发给主机,B,。经过,MAC,替换后的报文格式如下:,三层交换报文转发过程实例,-,交换