场景1:路由器收到数据包后,会根据数据包的目标IP地址,计算出目标网段,再确定终端设备的具体位置。这个过程中,还需要计算出接口,或数据包下一跳的地址。最终会生成一条路由,即路径,存储至路由表中。
在这个场景中,大致可分2个步骤,一个是路径的生成,一个是路径的执行。也就对应了路由器的控制平面和转发平面。举个生活中的例子,一个团队要完成一个计划,大致可分为计划的制定者与计划的执行者,制定者构建出大致的蓝图,执行者会进行具体的实施。同理,路由器的控制平面,是从宏观的角度指引,转发平面,是从具体微观角度的执行。在现实的场景中,路由器的CPU大多是双核,即有2个核心,一个核心用于控制平面,另一个核心用于转发平面。
如何理解控制平面,控制平面是指系统中用来传送信令、计算表项的部分。主要的功能有协议表项的计算与维护、协议报文的接收与发送。比如,在一台路由器中,控制平面可负责路由协议的学习、路由表项维护;在比如,在一台三层交换机中,控制平面可负责MAC地址学习工作。
如何理解转发平面,转发平面是指系统中用来进行数据报文的封装、转发的部分。具体的功能包括数据报文的接收、解封装、封装、转发等。例如,在网络层中,当系统接收到IP报文后,需要进行解封装、查路由表、从出接口转发等。
关于控制平面与转发平面关系,二者相对独立又协同工作。常规的设计逻辑应该是控制平面与转发平面分离,互不影响。这样做的效果是当系统的控制平面出现故障时,转发平面还可以继续工作。从而可以保证网络中原有的业务不受系统故障的影响,提高整个网络的可靠性。
【本文章技术支持:武汉科云信息技术有限公司】