网络二三层转发原理-非常好理解.ppt

上传人:公**** 文档编号:568460959 上传时间:2024-07-24 格式:PPT 页数:33 大小:1.99MB
返回 下载 相关 举报
网络二三层转发原理-非常好理解.ppt_第1页
第1页 / 共33页
网络二三层转发原理-非常好理解.ppt_第2页
第2页 / 共33页
网络二三层转发原理-非常好理解.ppt_第3页
第3页 / 共33页
网络二三层转发原理-非常好理解.ppt_第4页
第4页 / 共33页
网络二三层转发原理-非常好理解.ppt_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《网络二三层转发原理-非常好理解.ppt》由会员分享,可在线阅读,更多相关《网络二三层转发原理-非常好理解.ppt(33页珍藏版)》请在金锄头文库上搜索。

1、 二层与三层交换基础2024/7/242024/7/242 2二层与三层交换n n基本概念n n二三层转发依据:fdb表,路由表,arp表n n二层转发原理n n三层转发原理及ip选路机制n n 硬件芯片转发与软件转发的联系2024/7/242024/7/243 3网络分层概念n n首先,复习一下网络分层概念七层:七层: 应用层,应用层,telnet/ftp/telnet/ftp/路由协议路由协议四层:四层: 传输层,传输层,TCP/UDPTCP/UDP三层:三层: 网络层,通常是网络层,通常是IPIP,数据包称为报文,数据包称为报文二层:二层: 链路层,比如以太网,数据包称为帧链路层,比如以

2、太网,数据包称为帧一层:一层: 物理层物理层L2 HEADERL3 HEADERDATA以太网头IP头L4 HEADERTCP头2024/7/242024/7/244 4链路层n n链路层:负责直接相连的网络设备之间的通讯链路层:负责直接相连的网络设备之间的通讯n n二层设备:连接同类型的链路网段,如两个以二层设备:连接同类型的链路网段,如两个以太网的物理网段太网的物理网段HUB/交换机L2L1L2L2L1L3L32024/7/242024/7/245 5链路层地址n n在以太网使用的地址是MAC地址n n6 6字节数字,如字节数字,如 00-50-FC-1F-C0-3A00-50-FC-1F

3、-C0-3An n特殊地址特殊地址 :FF-FF-FF-FF-FF-FFFF-FF-FF-FF-FF-FF广播地址广播地址n nMAC地址没有层次关系,所有的MAC地址只有数值的不同,没有网络上的包含关系n n一个MAC地址唯一代表网络上的一个点2024/7/242024/7/246 6链路层n n链路层网络是一个平面的网络:没有层次关系等于HUBHUBHUB2024/7/242024/7/247 7网络层n n网络层:负责一个网络内的通讯网络层:负责一个网络内的通讯n n三层设备:连接多个三层设备:连接多个IPIP网段网段3层交换机/路由器L2L1L3L2L1L3L2L2L320.0.0.0

4、/830.0.0.0/82024/7/242024/7/248 8网络层地址n nIP地址:4字节数字n nIP地址有层次关系n n10.0.0.0/8 10.0.0.0/8 是一个大网络地址是一个大网络地址n n10.1.0.0/16 10.1.0.0/16 是其中的一个子网是其中的一个子网n n10.1.30.23/16 10.1.30.23/16 是这个子网中的一个主机地址是这个子网中的一个主机地址n n10.1.255.255/1610.1.255.255/16是这个子网中的广播地址是这个子网中的广播地址网络地址主机地址掩码长度2024/7/242024/7/249 9网络层n n在网

5、络层,才可以组建大型网络10.1.30.2310.2.10.11180.23.6.310.0.0.0/8180.23.0.0/162024/7/242024/7/241010二层与三层交换基础n n基本概念n n二三层转发依据:fdb表,路由表,arp表n n二层转发原理n n三层转发原理及ip选路机制n n 硬件芯片转发与软件转发的联系2024/7/242024/7/241111fdb表n n网络设备都以网络设备都以macmac地址来唯一地标识自己,而交换机要实地址来唯一地标识自己,而交换机要实现设备之间的通信必须知道自己的哪个端口上连接着哪台现设备之间的通信必须知道自己的哪个端口上连接着哪

6、台设备,因此特别需要一张设备,因此特别需要一张macmac地址与端口号一一对应的表,地址与端口号一一对应的表,以便在交换机内部实现二层数据转发,这张二层转发表就以便在交换机内部实现二层数据转发,这张二层转发表就是是fdbfdb(Forwarding DatabaseForwarding Database)表)表n n为了在交换机之间也实现二层数据转发,又引入了带为了在交换机之间也实现二层数据转发,又引入了带tagtag的的vlanvlan每个交换机的端口分别以每个交换机的端口分别以tagtag方式加入某个方式加入某个vlanvlan,只要只要tagtag值相同,所属值相同,所属vlanvlan

7、都在同一个网段里,则这几个端都在同一个网段里,则这几个端口就可以实现数据通信,由于网络设备可以以口就可以实现数据通信,由于网络设备可以以tagtag方式属方式属于多个于多个vlanvlan,因此只有,因此只有macmac地址不足以唯一地表示一条地址不足以唯一地表示一条fdbfdb表项,必须是表项,必须是vlan_ID+macvlan_ID+mac地址二者一块来表示地址二者一块来表示2024/7/242024/7/241212FDB表的构成要素n n= = = = = = = = = = = = n nMAC VLAN SLOT/PORT TRUNK VID VIDX TYPEMAC VLAN

8、SLOT/PORT TRUNK VID VIDX TYPEn n= = = = = = = = = = = = n n00:1f:64:00:ff:10 2001 CPU - - - 00:1f:64:00:ff:10 2001 CPU - - - - -n n00:1f:64:00:ff:10 2002 CPU - - - 00:1f:64:00:ff:10 2002 CPU - - - - -n n00:1f:64:00:02:51 3 2/6 - - - 00:1f:64:00:02:51 3 2/6 - - - DYNAMICDYNAMIC2024/7/242024/7/241313路

9、由表路由表是三层转发的依据;路由表是三层转发的依据; 表项结构如下:表项结构如下:S 0.0.0.0/0 10/0 via 13.0.0.2, vlan6S 0.0.0.0/0 10/0 via 13.0.0.2, vlan6S* 0.0.0.0/0 1/0 via 192.168.1.254, vlan7S* 0.0.0.0/0 1/0 via 192.168.1.254, vlan7C* 10.0.0.8/30 is directly connected, vlan2C* 10.0.0.8/30 is directly connected, vlan2C* 11.0.0.8/30 is d

10、irectly connected, vlan3C* 11.0.0.8/30 is directly connected, vlan3C* 12.0.0.0/24 is directly connected, vlan4C* 12.0.0.0/24 is directly connected, vlan4C* 13.0.0.0/30 is directly connected, vlan6C* 13.0.0.0/30 is directly connected, vlan6C* 127.0.0.0/8 is directly connected, loC* 127.0.0.0/8 is dir

11、ectly connected, loC* 172.16.1.0/24 is directly connected, vlan2001C* 172.16.1.0/24 is directly connected, vlan2001C* 192.168.5.0/24 is directly connected, vlan10C* 192.168.5.0/24 is directly connected, vlan10S* 192.168.23.0/24 1/0 via 10.0.0.10, vlan2S* 192.168.23.0/24 1/0 via 10.0.0.10, vlan22024/

12、7/242024/7/241414arp表arparp为为IPIP地址到对应的硬件地址提供动态映射关系:地址到对应的硬件地址提供动态映射关系:arparp表的构成要素如下:表的构成要素如下:SYSTEM(config)# show eth-port 2/6 arpSYSTEM(config)# show eth-port 2/6 arp=IP MAC SLOT/PORT TRUNKID VID VIDX ISTAG STATICIP MAC SLOT/PORT TRUNKID VID VIDX ISTAG STATIC=11 .0 .0 .10 00:1f:64:00:02:51 2 /6 -

13、 3 - FALSE FALSE11 .0 .0 .10 00:1f:64:00:02:51 2 /6 - 3 - FALSE FALSE172.16 .2 .1 00:1f:64:00:02:51 2 /6 - 2002 - TRUE FALSE172.16 .2 .1 00:1f:64:00:02:51 2 /6 - 2002 - TRUE FALSE2024/7/242024/7/241515二层与三层交换基础n n基本概念n n二三层转发依据:fdb表,路由表,arp表n n二层转发原理n n三层转发原理及ip选路机制n n二三层转发总结2024/7/242024/7/241616二层

14、交换n n二层交换:在一个二层网络内部(比如一个VLAN),将收到的帧选择适当的端口发出去。n n通过MAC学习得到MAC与端口的对应信息,称为FDB表n n对收到的包按目的MAC做交换,不修改帧里的源和目的MAC地址。n n没有表项的帧在VLAN内做广播2024/7/242024/7/241717二层转发的原理(一)n nMAC学习: 从端口收到的帧中读出MAC地址,得到它们的对应信息HUBMAC1MAC2MAC3MAC4port1port2port3port4FDB表MAC1 : Port1 MAC2 : Port2MAC3,MAC4 : Port3MAC5,MAC6,MAC7 : Por

15、t42024/7/242024/7/241818二层转发的原理(二)n n按FDB表做交换HUBMAC1MAC2MAC3MAC4port1port2port3port4目的MACMAC4MAC1 : Port1 MAC2 : Port2MAC3,MAC4 : Port3MAC5,MAC6,MAC7 : Port4接收抛弃2024/7/242024/7/241919二层与三层交换基础n n基本概念n n二三层转发依据:fdb表,路由表,arp表n n二层转发原理n n三层转发原理及ip选路机制n n硬件芯片转发与软件转发的联系2024/7/242024/7/242020三层转发的原理(一)n n

16、通过路由协议或配置得到远方网段的路由H1配置缺省路由:配置缺省路由:0.0.0.0/0 下一跳下一跳20.1.1.1020.1.1.1/2430.1.1.20/2440.1.1.1/24接口e120.1.1.10/24接口e230.1.1.10/24R1R2R3H1H2R1得到路由:得到路由:40.1.1.0/24 下一跳下一跳30.1.1.20 出口出口e240.1.1.40/24R42024/7/242024/7/242121路由协议n n路由协议的功能是在路由器之间交换路由信息n n它使用特殊的协议报文,里面装有路由数据n n不是象MAC地址学习那样,从任何收到的包上反向学习。远方地址没

17、有路由就不能通,也就没有包可以学。2024/7/242024/7/242222三层转发的原理(二)n n链路层把收到的IP报文上交给IP层M1, M2, IPL2L1L2L3L3IP1, IP2, ICMPDATA以太网头,从M1发送到M2IP头,从IP1(20.1.1.1)发送到IP2(40.1.1.1)H1 IP=20.1.1.1MAC=M1 IP=20.1.1.10MAC=M2R1ETHIPDATAIPDATA2024/7/242024/7/242323三层转发的原理(三)n nIP层按路由做转发目的IP=40.1.1.1转发表得到路由: 40.1.1.0/24 下下一跳一跳30.1.1

18、.20 出口出口e2路由1:40.0.0.0/8 路由2:40.1.1.0/24 路由3:40.1.2.0/24路由表的“最佳匹配”把报文交以太网接口e2向30.1.1.20发送2024/7/242024/7/242424三层转发的原理(四)n n链路层把帧发送到邻居M2, M3, IPL2L1L2L3IP1, IP2, ICMPDATA以太网头,从M1发送到M2IP头,从IP1(20.1.1.1)发送到IP2(40.1.1.1)R2 IP=30.1.1.20MAC=M3 IP=30.1.1.10MAC=M2R1ETHIPDATAIPDATAL3MAC地址变了,而IP地址都没有变!2024/7

19、/242024/7/242525三层转发的原理(五)20.1.1.1/2430.1.1.20/2440.1.1.1/24接口e120.1.1.10/24接口e230.1.1.10/24R1R2R3H1H240.1.1.40/24源IP和目的IP都一直不变源MAC和目的MAC在每个网段间都要改变 M1-M2 M2-M3 M3-M4 M4-M52024/7/242024/7/242626三层转发过程总结n n链路层收到一个以太网帧n n检查校验和等参数是否合法n n如果目的MAC地址不是我的,也不是组播和广播MAC,就进行二层转发n n如果目的MAC地址是设备的MAC地址,则删除帧头,把数据部分按

20、帧头里的协议类型交上层协议处理(如IP)2024/7/242024/7/242727三层转发过程总结n nIP层收到IP包(就是以太网帧的数据)n n检查校验和等参数是否合法n n如果IP地址是接口IP地址之一,说明是本地报文,按IP头里的协议类型交上层协议处理(如TCP)n n否则,用目的IP地址查转发表n n有路由则交“出接口”对应的链路协议发出,没有路由则送cpu处理2024/7/242024/7/242828三层转发过程总结n n链路协议链路协议( (以太网以太网) )得到这个要发出的得到这个要发出的IPIP包,以及出包,以及出接口和下一跳接口和下一跳IPIP地址信息地址信息n n在在

21、IPIP包前面添加以太网帧头,源包前面添加以太网帧头,源MACMAC地址是我的地址是我的MACMAC地址,目的地址,目的MACMAC地址是下一跳的地址是下一跳的 MACMAC地址地址(用下一跳(用下一跳IPIP地址查地址查ARPARP表得到),发出。表得到),发出。n n如果如果ARPARP表里没有找到下一跳表里没有找到下一跳IPIP地址,则需要发送地址,则需要发送ARPARP请求去解析这个请求去解析这个IPIP,暂缓发送,暂缓发送IPIP包或丢包。包或丢包。2024/7/242024/7/2429292024/7/242024/7/243030三层转发过程中的IP选路n n选路原则:选路原则

22、:1.1.当掩码长度互不相同的时候,按照最长掩码匹配当掩码长度互不相同的时候,按照最长掩码匹配原则选路;原则选路;2.2.当掩码长度相同的时候,相应的直连路由优先;当掩码长度相同的时候,相应的直连路由优先;3.3.当掩码长度相同,且不存在相应的直连路由的时当掩码长度相同,且不存在相应的直连路由的时候,候, distancedistance值小的优先;值小的优先;4.4.当掩码长度相同,且不存在相应的直连路由的时当掩码长度相同,且不存在相应的直连路由的时候,候, distancedistance值也相同的时候,值也相同的时候,metricmetric值小的优值小的优先;先;2024/7/2420

23、24/7/243131 硬件芯片转发与软件转发的联系n n基本概念n n二三层转发依据:fdb表,路由表,arp表n n二层转发原理n n三层转发原理及ip选路机制n n 硬件芯片转发与软件转发的联系2024/7/242024/7/243232 硬件芯片转发与软件转发的联系1.L21.L2转发基本上都是由硬件转发芯片处理的;特例,转发基本上都是由硬件转发芯片处理的;特例,arparp,BPDUBPDU,DHCPDHCP,RIPRIP,OSPFOSPF,PIMPIM,IGMPIGMP等协议报文,目的等协议报文,目的MACMAC不是设备的不是设备的macmac(是特定的组播或者是广播),但是这类报

24、文都是需要(是特定的组播或者是广播),但是这类报文都是需要cpucpu处理的,处理的,硬件芯片的硬件芯片的L2L2转发机制可以判断出这类特殊报文,并直接将他们从二转发机制可以判断出这类特殊报文,并直接将他们从二层送上层送上cpucpu;2.L32.L3转发优先被硬件转发芯片处理,如果硬件路由表项无法找到匹配的转发优先被硬件转发芯片处理,如果硬件路由表项无法找到匹配的路由,或虽然有路由但是没有出接口,那么就会将报文送往路由,或虽然有路由但是没有出接口,那么就会将报文送往cpucpu处理;处理;3.3.含有含有TCPTCP,UDPUDP,ICMPICMP,httphttp,httpshttps字段的(帧类型字段的(帧类型0x08000x0800)上层)上层IPIP类协议报文:如果其类协议报文:如果其IPIP字段的目的字段的目的IPIP是设备的是设备的IPIP,则报文被送往,则报文被送往cpucpu处理;如果其处理;如果其IPIP字段的目的字段的目的IPIP不是设备的不是设备的IPIP,则报文会按照通常的三,则报文会按照通常的三层转发流程进行转发;层转发流程进行转发;2024/7/242024/7/243333 THANK YOU THANK YOU!谢谢!谢谢!

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号