控制层面和数据层面区分

2018年7月13日22:23:43 发表评论 2,995 views

控制层面和数据层面区分

1.控制层面

控制层面就是各种协议工作的层面。它的作用是通过控制和管理各种网络协议的运行,使得路由器/交换机能够对整个网络的设备、链路和运行的协议有一个准确的了解,并在网络发生变化时也能及时感知并调整。控制层面为数据层面转发数据提供了各种必要的信息。控制层面占用的主要是软件资源,它消耗CPU。

控制层面:控制信息流。Rip的报文、OSPF的LSA传递。

2.数据层面

数据层面是针对数据发送来说的。控制层面构建了路由表等数据发送的必要信息,数据层面根据这些信息来发送数据。网络设备中,对数据的各种具体的处理、转发过程都属于数据层面的范畴。数据层面主要占用的是硬件资源。

数据层面:数据流。ICMP的ping包。

3.举例

假设有4台路由器A—B—C—D,其中A是数据发送者、D是接收者。A要发数据给D,首先要知道D在哪儿。D会把自己的路由信息先通过路由选择协议发给C,再传递给B,最后传递到A,即路由信息的流向是D—C—B—A,这就是控制层面,因为该层面传递的是路由信息,而路由信息属于控制信息,所以叫控制层面。当A—D的路由建立起来后,A就把生产流量通过A—B—C—D这个流向传递给D,这就是数据层面,因为该层面传递的是生产数据,是用户想要发送的数据,

所以叫数据层面。一般来说,控制层面和数据层面的方向相反。

典型的ospf计算cost是在控制层面的入接口累加,rip在控制层面的出接口累加。

 

管理平面/控制平面(统称控制平面)
管理平面是提供给网络管理人员使用TELNET、WEB、SSH、SNMP、RMON 等方式来管理设备,并支持、理解和执行管理人员对于网络设备各种网络协议的设置命令。管理平面提供了控制平面正常运行的前提,管理平面必须预先设置好控制平面中各种协议的相关参数,并支持在必要时刻对控制平面的运行进行干预。
控制平面用于控制和管理所有网络协议的运行,例如生成树协议、VLAN 协议、ARP协议、各种路由协议和组播协议等等的管理和控制。控制平面通过网络协议提供给路由器/交换机对整个网络环境中网络设备、连接链路和交互协议的准确了解,并在网络状况发生改变时做出及时的调整以维护网络的正常运行。控制平面提供了数据平面数据处理转发前所必须的各种网络信息和转发查询表项。控制平面并不占用过多的硬件资源,但在正常状况下依然是网络设备CPU资源的主要占用平面,因此除了优化网络设备对于控制平面的调度流程和效率,一般还可以通过提供多CPU或提高CPU的处理性能来提高网络设备的控制平面性能。
控制平面主要靠CPU资源来处理信息。

数据转发平面
网络设备的基本任务是处理和转发不同端口上各种类型的数据,对于数据处理过程中各种具体的处理转发过程,例如L2/L3/ACL/QOS/组播/安全防护等各功能的具体执行过程,都属于数据转发平面的任务范畴。数据转发平面在网络设备的各种平面任务当中需要占用决大部分的硬件资源,也直接地对其性能表现起决定作用,各个厂家都通过各种技术手段和芯片技术努力地提高网络设备数据平面的处理性能。
数据转发平面主要靠硬件资源来处理信息。
show ip cef 查看最终迭代的出接口,属数据平面范畴(转发信息数据库,FIB)

其实你只要确定一点就是,控制平面主要是软件层面,也就是一般的处理都要经过CPU(效率较低)
而数据平面式现代硬件技术发展的产物,它主要是用来转发数据用的(效率较高)。
也就是说我们平常常说的接收数据包以后查路由表(控制平面),准确点说应该是查找FIB表(数据转发平面)确定出接口、二层头,然后转发数据。
控制平面:各种协议工作的平面(OSPF、LDP等等)
数据平面:数据转发数据库所在的平面(FIB表、邻接表等)
它们的关系一般是数据平面的数据库信息来源于控制平面:比如FIB表其实是路由表的一个镜像;而邻接表其实是ARP缓存表的一个镜像。

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: