网络层包含数据平面和控制平面,数据平面的主要功能是主要负责高速地处理和转发数据包。例如:路由器的控制平面通过开放最短通路优先协议(open shortest path first,OSPF)建立路由表项,并进一步生成转发信息表(forwarding information base,FIB)、快速转发表等,指导其数据平面进行IP报文的转发。网络设备数据平面的基本任务是处理和转发不同端口上各种类型的数据,具体的数据处理转发过程,例如第二层协议(layer 2,L2)/第三层协议(layer 3,L3)/访问控制技术(access control list,ACL)/服务质量(quality of service,QOS)/组播/安全防护等各功能的具体执行过程,都属于数据平面的任务范畴。数据平面也包含了数据流处理相关的各种机制,包括缓存器管理、拥塞避免、报文标签、队列和调度、流分类、流策略和流量整形等。
传统网络的高端设备(如核心交换机、核心路由器)采用了控制平面和数据平面物理相分离的设计方法,其主控板专注于控制平面的实现,而业务板则专注于数据平面的实现。如果主控板损坏,业务板仍能够有效地处理和转发报文。软件定义网络(software defined network,SDN)将传统网络架构重构为集中式控制网络架构,其核心思想是实现控制平面和数据平面的分离。网络设备不再承担控制平面的功能,所有数据报文的控制策略由远端的控制器通过南向接口协议下发,只保留数据平面,专注于数据包的高速处理和转发,降低了网络设备的复杂度。