硬件设备及报文转发流程



模块连接逻辑图

网络设备从逻辑上可以分为以下三个平面:数据平面、控制管理平面和监控平面
控制平面

转发平面

监控平面

网络设备对报文的处理流程
设备处理报文分为业务报文和协议报文
对于业务报文设备只会进行抓啦发,从一个接口进入之后一句转发表项从另外一个接口发送出去。
协议报文(ARP、OSPF、BGP等协议)设备在收到之后会交由控制层面进行处理,如ARP报文交由控制层面处理、判断后决定是否回应,是否学习ARP报文中的源MAC、源IP。
以交换网板为中心,可将报文在设备的行程一分为二,前半程称 上行,后半程称 下行

业务报文转发处理流程
PFE(Packet Forwarding Engine)包转发引擎
业务报文:服务、应用在交互过程中涉及的报文
切片:把报文送往交换网板之前,进行切片处理,也就是把报文按照一定粒度进行切片,切成固定长度。
重组:将交换网板发送过来的已经切片的报文进行重组。
业务报文从接口进入上行接口板处理之后,通过框式交换机内部总线交由交换网板,交换网板交由下行接口板处理之后从接口发出去。

当报文从接口板进入时,设备需要依据转发表项确定报文的出接口。
报文到达交换网板时依据明确了出接口、下行接口板、因此表项查询需要在上行接口板的处理过程中完成。

转发表项存在主控板上,报文进入接口板之后,接口板从主控板出查询表项
每次转发都需要与主控板进行通信,转发效率低,报文时延增加,对高速率接口板而言转发速率严重下跌。

转发表项存放在接口板上,报文进入接口板之后直接在接口板完成报文查询,报文转发效率高。
所有接口板上都要存储转发表项,控制平面资源占用率高。

高端设备业务报文不经过主控板CPU处理,由接口板提供转发信息查询。
接口板上存在的转发信息并非存在于主控板上的转发表项,主控板生成转发表项之后,生成对应的转发信息下发在接口板

接口板执行转发的部件为包转发引擎PFE,通常为NP或者ASIC芯片,报文直接由接口板独立完成转发,无需主控板参与。
高端框式设备把转发层面和控制层面分配在不同的组建,控制层面组件(主控板)负责运行转发相关协议、维护转发表项、转发平面组件(接口板)一句控制层面下发的转发信息能够独立完成转发工作,互不已更新,控制层面组件高负载时并不会影响转发平面的正常工作,这种工作机制被称为转控分离。

主控板CPU收到协议报文之后进行相应的处理之后如果需要回应报文,则主控板会构造协议报文进行回应,如收到发往自身的ARP Request、ICMP Echo Request报文,主控板处理之后构造ARP Reply、ICMP Echo Reply进行回应
主控板CPU处理能力有限,如果过多协议报文上送CPU处理,会造成繁忙,无法及时响应,所以设备默认限制了各种类型的协议报文上送主控板的CPU速率。
在转发引擎PFE上做报文解析时,如果从二层帧头的协议字段就可以直接判断出是需要上送本机CPU处理的协议报文,或者目的地址为特点的保留组播IP地址的协议报文,上行不需要查表抓啦发
报文通过上行表转发后,获得报文的目的接口板和出接口信息,以便交换网板能根据目的的单板信息把数据交换到对应的下行单板,而下行淡斑根据出接口信息发送报文。那么通过报文解析就能识别出来的协议报文,上行不查表转发,其目的接口板和出接口信息填成与入接口板相同的板号,出接口为CPU。
对于能够根据二层帧头或者目的IP地址可识别出的协议报文,上行LPU将会上送CPU

更新: 2025-03-13 10:29:30
原文: https://www.yuque.com/yuhui.net/network/fr9ds1fm2vl3w75x

评论(0)
暂无评论