CN1728702A - 一种将路由器的控制平面同数据平面的硬件相分离的方法 - Google Patents
一种将路由器的控制平面同数据平面的硬件相分离的方法 Download PDFInfo
- Publication number
- CN1728702A CN1728702A CN 200410070682 CN200410070682A CN1728702A CN 1728702 A CN1728702 A CN 1728702A CN 200410070682 CN200410070682 CN 200410070682 CN 200410070682 A CN200410070682 A CN 200410070682A CN 1728702 A CN1728702 A CN 1728702A
- Authority
- CN
- China
- Prior art keywords
- module
- protocol
- data
- plane
- processing unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种将路由器的控制平面同数据平面的硬件相分离的方法,该方法所涉及的控制平面对应于路由器的主处理单元,数据平面对应于路由器的从处理单元,含多个接口单元。本发明在控制平面与数据平面之间设置由设备管理模块、虚拟驱动模块和内部通信模块组成的RAL路由适配层软件,形成路由适配层的虚拟接口以模拟数据平面上的从处理单元线路接口单元,完成对数据平面的硬件进行逻辑分离屏蔽,控制平面通过对RAL软件中的虚拟接口与设备管理模块的操作,并结合RAL中的内部通信模块分别实现对数据平面的协议数据报文和硬件管理的信息交换。有利于路由器上层协议软件的移植和扩展,适应于底层硬件实现方式的不断更新,并缩短系统调试周期和产品的研发周期。
Description
技术领域
本发明涉及计算机通信技术领域,具体地说,本发明涉及计算机通信领域中的基于嵌入式实时操作系统的网络路由软件设计问题,具体涉及一种提供路由适配层将高性能路由器的控制平面与数据平面相分离的方法,尤其涉及分布式体系结构的高性能路由器领域。
背景技术
互联网的不断高速化发展,为信息的实时、高速传输提出了很大挑战,高性能路由器作为网络互联的核心节点,它的体系结构也因此发生了很大的变化。从体系结构来看,高性能路由器主要经历了从单处理器到并行处理器,从共享总线到交换结构的发展过程,大致可分为单处理器共享总线式体系结构、多处理器共享总线式体系结构、多处理器交换式体系结构、共享并行处理器交换式体系结构四个阶段。近年来,高性能路由器体系结构的研究和国内外主流厂商生产的大部分商用高性能路由器的实现方案中,普遍采用了集中式交换与协议处理、分布式数据报文处理和转发的体系结构。
在国内外网络设备制造商研制的高性能路由器中,分布式体系结构是十分普遍的。Cisco 12000系列千兆位交换路由器(Gigabits Switching Router)是Cisco公司为支持核心骨干网而设计开发的路由选择产品,属于高性能路由器。它基于高速的分布式路由选择结构和先进的交换核心,由千兆比特路由处理器(Gigabits Routing Processor)负责在网络拓扑中运行路由选择协议和生成路由选择表,并且提供系统控制和管理功能。分组转发功能由每个线路接口卡(Line Card,LC)执行,每个LC能够独立查找转发表并且转发收发到的数据包。华为公司的Quidway Netengine 80/40/20系列也属于骨干网核心路由器,该系列路由器采用基于网络处理器的分布式硬件体系结构,具有电信级可靠性、线速转发性能、完善的(Quality ofService,QoS)机制和丰富的业务处理能力。
上述高性能路由器和商用高性能路由器虽然在设计实现思路和方式上各有不同,但它们的运行机制和体系结构的设计原则是一致的。如果仅考虑整体设计中与软件系统关系紧密的部分,且忽略通常用硬件实现的高速交换结构,那么路由器的结构可以粗略地抽象为图1所示的分布式体系结构。分布式体系结构基于路由与转发分离的思想,使用了两级处理器,由一个主处理单元和若干个从处理单元构成,主处理单元与从处理单元间的数据交换采用了网络交换的方式。主处理单元负责实现设备管理、路由计算等功能,并负责将转发表下发到从处理单元。从处理单元上有多个接口单元(Interface Unit,IU),可根据主处理单元下发的转发表独立进行路由转发。我们所说的高性能路由器中,主控处理模块对应于主处理单元,线路接口模块相当于从处理单元。
我们将主处理单元和从处理单元又可称为控制平面(Control Plane)和数据平面(Data Plane)。它们二者的区别主要有两点:
1.数据平面处理数据包的速度必须达到线速,而控制平面只需处理少得多的数据包(例如路由变化报文、新建链路等)。数据平面之所以要以线速运转,是因为收包、分类的速度要跟得上数据包到达的速度,以避免优先级倒置的发生(例如,由于收到大量高速的不重要的数据包而导致较重要的数据包丢失)。
2.数据平面与控制平面的第二点区别在于,每个数据包所需要的处理工作的多少。一方面,数据平面只进行较少的处理,选用一般水平的处理器即可满足运算需求。另一方面,控制平面经常运行运算性较强的程序,通常需要由处理能力较强的处理器来担任。不同的数据流需要不同类型的处理方法,例如数据报文统计数据的计算和网际协议(Inernet Protocol,IP)选项处理就各有不同。
正是由于数据平面与控制平面采用了适合不同处理对象的不同处理方式,两者紧密联系、相互配合,就能够在快速处理并转发大量数据报文的同时,又可以高效地运行路由协议,进而提高路由器的整机性能指标。
由于高性能路由器体系结构以及实现方式的多样化以及各个厂家对各自以前技术的继承性,目前各个厂家均未使用RAL(Routing Adaptive Layer,RAL)路由器适配层。
高性能路由器分布式体系结构在控制平面上采用了集中式处理,我们可以使用路由适配层将处理结果下发给数据平面,在数据平面内完成数据报文的线速率转发,可以大大提高报文转发与处理的效率,提高路由器的整体性能。但是同时它也面临着一些不可避免的问题,给路由器整个设计增加了难度:
1.分布式的各个处理单元之间必须实现可靠、高效的通信,否则将严重影响路由器上层软件的运行以及整体性能;
2.分布式结构使上层软件(主要是路由协议和网络管理)难以管理和控制从处理单元上的IU;
3.现代网络路由器除了提供基本的路由转发功能之外,诸如QoS保证、区分服务(Differentiated Services,DiffServ)、主动网络支持等功能需求也日益迫切,因此要求路由器基础平台便于软件移植和扩展;
4.可用于实现路由器的硬件技术日益广泛,例如网络处理机、网络引擎、ASIC技术、网络接口卡(Network Interface Card,NIC)等,且硬件体系结构的实现方式也不断更新,应该尽可能地降低其对路由器上层软件设计所产生的影响;
5.如何设计一种可扩展的且不依赖于硬件具体实现方式的软件体系结构,构建通用性强的路由器基础平台,方便商用路由软件的移植和应用;
由此可见,构建便于商用路由软件移植的开放性好、通用性强、可扩展的高性能路由器支撑软件,是一个值得深入研究探讨的问题,它是增强高性能路由器可用性的关键所在。从另一个方面来说,正是由于高性能路由器体系结构的特点和面临的问题,决定了该体系结构中需要有一个健壮的、通用的、能与各种商用协议软件良好适配的软件结构作为整个路由软件的支撑软件。本发明提供的路由器适配层RAL软件结构用以解决以上技术问题。
发明内容
本发明要解决的技术问题是提供一种将路由器的控制平面同数据平面的硬件相分离的方法,实现上层应用软件同底层硬件充分隔离,使上层协议软件的移植和扩展功能增强以及适应于底层硬件实现方式的不断更新,实时可靠地完成控制平面与数据平面的信息交互,缩短系统调试周期和产品的研发周期。
为解决上述问题,本发明提出了一种将路由器的控制平面同数据平面的硬件相分离的方法,该分离方法涉及到的控制平面对应于路由器的主处理单元,控制平面内包括协议层和网络管理层,完成主处理单元的设备管理、计算功能,数据平面对应于路由器的从处理单元,有多个IU(Interface Unit)接口单元,完成各类数据报文以及协议报文的收发。在控制平面与数据平面之间设置一路由适配层(Routing Adaptive Layer,RAL),从而在控制平面内抽象为虚拟接口单元(Virtual Interface Unit,VIU)以模拟数据平面上的从处理单元线路接口,完成对数据平面的硬件进行逻辑分离屏蔽,控制平面通过对RAL软件中的虚拟接口与设备管理模块的操作,并结合RAL中的内部通信模块分别实现对数据平面的协议数据报文和硬件管理的信息交换。RAL作为一个独立的子系统运行于控制平面,屏蔽数据平面的硬件细节,使得数据平面与控制平面充分分离,缩短系统调试周期和产品的研发周期。
作为实现本发明的一种方案,可以将RAL路由适配层分为设备管理模块、虚拟驱动模块和内部通信模块。
内部通信模块处于路由适配层的底层并运行于内部交换网络,将其分别分布在主处理单元模块和线路接口单元模块上,负责路由器内部网络的通信,实时完成控制平面与数据平面上的从处理单元上间的相关信息交互,对底层硬件实行初步屏蔽分离;
设备管理模块位于内部通讯模块之上,将管理的数据分为转发表、从处理单元和接口单元的配置管理信息两部分,在控制平面内通过数据平面的状态通告完成对数据平面中设备的管理与配置,同时将控制平面内的协议层计算所得的转发表下发给数据平面完成系统功能。
虚拟驱动模块也位于内部通讯模块之上,模拟从处理单元上的接口单元,形成收发协议报文功能和数量与此一致的路由适配层虚拟接口单元,该模块对控制平面内的协议层采用标准的驱动程序接口实现无缝连接,协议层对不同的虚拟接口单元的操作都会反应到相对应的数据平面内实际的接口单元上,反之,接口单元的状态变化以及收包动作会通过路由适配层反映到虚拟接口单元上,供协议层软件使用。
为了提高保证路由器实时可靠高效的通信,内部通信模块的通信方式选用TCP的流控机制和应答机制,具体使用基于巴克码分隔符的TCP实时传输方法。
路由适配层的数据流分从处理单元硬件状态的相关信息及管理配置信息,协议数据报文以及主、从处理单元互相探测报文。在数据上报时,从处理单元通过其上的内部通信模块,将数据传送到主处理单元,再由内部通信模块根据数据类型进行分流,如果是从处理单元的硬件信息或配置信息,就交给设备管理模块中的硬件管理模块进行处理,如果是接口单元的协议数据,就交给与该接口单元对应的虚拟接口单元的虚拟驱动程序处理后,通过标准接口函数上交协议软件;在数据下发时,上层协议软件触发相应的模块进行工作,如果是管理配置命令或者转发表信息,触发的是路由适配层中设备管理模块,将要下达给从处理单元的信息交给内部通信模块,再由传送到指定的从处理单元上进行处理;如果是协议数据报文,触发的是路由适配层中虚拟驱动模块,将要发送的协议报文交给内部通信模块,再根据虚拟接口单元信息传送到与之相对应的数据平面上的接口单元处理。
与现有分布式体系结构的路由器相比,本发明采用虚拟驱动程序模拟数据平面上的从处理单元线路接口行为特征,由此在控制平面内完成对数据平面硬件细节的屏蔽,并采用高效实时的内部通信协议完成控制平面与数据平面的信息交互。本发明的突出优点在于RAL软件作为一个独立的子系统运行于控制平面,屏蔽数据平面的硬件细节,使得数据平面与控制平面充分分离,提高了路由软件的可移植性,同时提高了数据平面与控制平面间数据交互的可靠性。另外,RAL的使用提高了软硬件开发的并行性,缩短研发周期。
附图说明
图1是现有高性能路由器中主从处理单元连接关系图。
图2是本发明路由适配层在路由器体系结构中的逻辑位置图。
图3是本发明高性能路由器系统软件体系结构图。
图4是本发明内部通信模块的内部数据分流示意图。
图5是本发明协议报文在RAL软件中的状态示意图。
图6是本发明基于分隔符的TCP实时数据处理算法流程图。
图7是本发明虚拟驱动模块中IU与VIU的对应关系示意图。
图8是本发明不同架构下的产品研发流程对比图:(a)是不包括路由适配层的产品研发过程;(b)是包括路由适配层的产品研发过程图。
具体实施方式
参见图1、图2、图4所示,本发明涉及到的控制平面对应于路由器的主处理单元,控制平面内包括协议层和网络管理层,完成主处理单元的设备管理、计算功能,数据平面对应于路由器的从处理单元,有多个接口单元,负责数据报的收发处理。在控制平面与数据平面之间设置一路由适配层。
在整个路由器体系结构中,RAL介于主处理单元的应用软件和从处理单元之间,如图2所示。RAL运行于高性能路由器的控制平面上,作为一个独立的软件子系统,从逻辑上隔离应用软件和底层硬件,使协议软件通过控制RAL来达到操纵底层硬件的目的。它使得网络管理软件、路由协议软件及基本协议栈可以无缝地与路由器硬件平台结合,在最大程度上保证了其与上层软件平台的无关性。路由器上运行的应用软件大致可分为两类,一类为协议软件,一类为网络管理软件,因此RAL中相应地设置了虚拟驱动模块和设备管理模块,供上层应用软件使用,其中协议软件通过虚拟驱动间接管理数据平面上实际IU的收发包动作,网络管理软件通过控制设备管理来对从处理单元和IU进行管理配置及监控,即网络管理软件对用户负责,而设备管理软件对整个硬件设备进行维护与管理。此外,高性能路由器的分布式体系结构决定了主从处理单元间实时可靠的信息交换必然需要内部通信模块。
基于上述考虑,RAL分为内部通信、虚拟驱动和设备管理三大模块。内部通信模块位于硬件抽象层的底部,用于屏蔽路由器在硬件上的分布式结构;虚拟驱动模块和设备管理模块都在内部通信模块上层,前者抽象从处理单元的收发包操作及接口状态,后者管理控制从处理单元的工作状态。内部通信模块运行于路由器内部交换网络之上,负责主处理单元和从处理单元之间的通信。虚拟驱动模块位于路由器操作系统的底层,用于模拟从处理单元上IU的行为,即相对上层软件虚拟出与IU功能相同、数量一致的虚拟接口单元(Virtual Interface Unit,VIU)。设备管理模块分为转发表管理和硬件管理两个模块,前者负责管理转发表,并且定期下发或更新转发表;后者负责统一管理所有从处理单元,统计从处理单元上报的各类系统信息,监控从处理单元的运行情况。
经过路由适配层的数据流主要有两类:一是从处理单元硬件状态的相关信息及管理配置信息等;二是IU收到的协议数据报文,除此之外就是主、从处理单元间的相互探测报文。
数据上报时,从处理单元通过其上的内部通信模块,将数据传送到主处理单元,再由内部通信模块根据数据类型进行分流。如果是从处理单元硬件信息或配置信息,就交给设备管理模块中的硬件管理模块进行处理;如果是IU的协议数据,就交给与该IU对应的VIU的虚拟驱动程序处理后,通过标准函数送交协议软件处理。
数据下发时,通常是上层应用软件触发路由适配层中相应的模块进行工作。如果是管理配置命令,触发的是设备管理模块,它将要下达给从处理单元的命令交给内部通信模块,再由内部通信模块传送到指定的从处理单元上进行处理;如果是协议数据报文,触发的是虚拟驱动模块,它将要发送的协议报文交给内部通信模块,再由内部通信模块根据VIU信息传送到与之相对应的IU处理。
假设IU收到一个路由协议报文,它所在的从处理单元会对报文进行初步的分析,确定不是需转发的数据报文后,就会将其交给其上的内部通信模块处理。内部通信模块把它传送到主处理单元,然后根据IU的信息把它转交给虚拟驱动模块中相应的VIU处理。虚拟驱动模块则将该报文通过驱动程序的标准接口传送给协议栈。假定该报文经过相关的路由协议处理后,引起了路由表的变化,从而引发转发表的改变。设备管理模块中转发表管理子模块发现转发表有所改变,就会立即将改动的表项交给内部通信模块进行转发表的更新。内部通信模块把转发表项由主处理单元传送到从处理单元,这样从处理单元上的转发表得到了更新,与主处理单元保持一致。
由上述示例可以看出,路由适配层的存在,使得高性能路由器的分布式体系结构可以在主处理单元上抽象成为一个逻辑上的整体的非分布式的结构。图1中所示的主处理单元和从处理单元在物理上是分布式的,但经过RAL的虚拟和抽象,将从处理单元的功能虚拟到了主处理单元之上,因此主、从处理单元在逻辑上是集中的。经过抽象后整体的高性能路由器系统软件体系结构如图3所示,图中的相关英文缩写这样解释:CLI:Command Line interface,命令行接口;TELNET:Telnet,远程登陆;SNMP:Simple NetworkManagement Protocol,简单网络管理协议;BGP4+:Boundary Gate Protocolversion 4+,边界网关协议;RIPng:Routing Information Protocol nextgeneration,下一代路由信息协议;OSPFv3:Open Shortest Path First version 3,开放式最短路径优先;MPLS:Multiprotocol Label Switching,多协议标签交换;RTM:Routing Table Management,路由表管理;Private MIB&PublicMIB:Private/Public Management Information Base私有/公有管理信息库;TCP:Transfer Control Protocol,传输控制协议;UDP:User Datagram Protocol,用户报文协议;Ipv6:Inernet Protocol version 6,网际协议版本6;BSP:BoardSupporting Packet,板级支持包;PPP:Point to Point Protocol,点到点协议;ETH:Ethernet,以太网;ATM:Asynchronous Transfer Mode,异步传输模式。从图中箭头代表的数据流可以看出,底层的硬件细节和路由器的分布式体系结构相对于协议层、管理层等上层软件是完全不可见的,即路由适配层在控制平面内屏蔽数据平面内的IU的硬件实现细节,使得路由器上层协议在控制平面内直接完成对数据平面内IU的操作。
内部通信模块处于路由适配层的底层,负责实现主处理单元和从处理单元之间实时、可靠的数据交换。也就是说,它起到了初步屏蔽路由器的分布式体系结构的作用,可以实时完成向上层软件提供来自于从处理单元上的相关信息,保证了路由器软件体系结构逻辑上的非分布特征。
数据在内部通信模块中的分流情况如图4所示。其中,内部通信模块分布在主控处理模块和线路接口模块上,负责路由器内部网络的通信。线路接口模块上的内部通信把数据传递到主处理器后,主处理器的内部通信需要首先对其进行分流处理,把数据分为设备管理配置信息和协议数据报文两类,再送到各自对应的设备管理模块和虚拟驱动模块。
内部通信模块将来自数据平面内IU的协议报文交虚拟驱动模块,并通过符合POSIX标准的接口函数送交协议栈软件处理。协议报文在整个RAL软件中的状态如图5所示,即来自不同类型IU的不同类型链路帧由RAL软件数据平面上部分统一封装在内部通信报文格式内,交RAL软件在控制平面上部分处理将协议报文送交协议栈。
内部通信模块中,为了提高通信的考靠性,我们选择利用了传输控制协议(Transfer Control Protocol,TCP)的流控机制以及应答机制,然而TCP是基于流传输的,会产生胡涂窗口综合症与数据包粘滞现象。因此我们采用了基于分隔符的TCP实时传输方法。包粘滞的情况不外乎两种,一种是粘在一起的包是由完整的数据包组成的,另一种是粘在一起的包中含有不完整的数据包。具体又可细分为三大类,一是粘滞数据是由完整的数据包组成,二是粘滞数据是由完整数据包和应用程序数据残缺的数据包组成,三是粘滞数据是由完整数据包和应用程序数据残缺的数据包组成。
针对这两种情况,基于分隔符的TCP实时数据处理算法流程可以使用如图6所示的方案。
虚拟驱动模块是路由适配层软件中的主要部分,它的功能是模拟从处理单元上的IU。为了较为透明地实现这一功能,虚拟驱动模块采取网络接口驱动程序的方式,对上层完全采用标准的驱动程序接口,实现了与上层软件几乎无缝的结合。
在虚拟驱动模块中,VIU与IU的对应关系如图7所示,协议软件对不同VIU所进行的操作,会通过硬件抽象层的处理,反映到从处理单元的IU上。反之,IU的状态变化以及收包的动作,也会通过硬件抽象层反映到VIU上,从而触发协议软件的一系列变化。
虚拟驱动与真实网络接口驱动的唯一区别,仅限于收发包的处理方式上。由于虚拟驱动模块的下层是内部通信模块,而非真正的硬件设备,所以它的收发动作并不是对真实的网络接口卡的操作,而是与内部通信模块之间的数据传递。
设备管理模块也处于内部通信之上,它的功能是维护从处理单元的正常运行。它所管理的数据分为两部分:一是转发表,二是从处理单元及IU的配置管理信息。设备管理模块主要在管理平面内通过数据平面的状态通告完成对数据平面中设备的管理与配置,同时将管理平面内的协议软件计算所得的转发表下发给数据平面完成系统功能。
本发明采用虚拟驱动程序模拟数据平面上的从处理单元线路接口行为特征,由此在控制平面内完成对数据平面硬件细节的屏蔽,并采用高效实时的内部通信协议完成控制平面与数据平面的信息交互。本发明的突出优点在于RAL软件作为一个独立的子系统运行于控制平面,屏蔽数据平面的硬件细节,使得数据平面与控制平面充分分离,提高了路由软件的可移植性,同时提高了数据平面与控制平面间数据交互的可靠性。另外,RAL的使用提高了软硬件开发的并行性,缩短研发周期。具体的说,RAL软件的设计可以达到以下效果:
1.适应分布式的路由器体系结构:将高性能路由器分布式转发和集中式处理的两大特点统一起来,对上层软件屏蔽底层硬件的细节。既方便了主处理单元管理控制整个路由器系统,又给予从处理单元一定的独立转发空间;
2.开放性好:RAL给上层软件提供了统一的接口,方便了协议软件等上层应用程序的升级和移植,对于提高路由器基础平台的开放性具有重要意义;
3.可扩展性好:两级以上的多级处理单元也可采用类似的抽象层软件进行分级管理;
4.符合标准化设计需求:对上层软件提供标准的编程接口;
5.保证上层软件的平台无关性:研发时可以软硬件同时开发,大大缩短了研发的工作过程;
6.分离软硬件功能:使软硬件接口定义更加清晰,系统联调时易于进行错误定位,使调试周期缩短。
另外,从产品的研发过程来看。加入RAL后,会使得高性能路由器的研发周期缩短,并简化了其调试流程。图8给出了不同的体系结构下的产品研发流程对比。从图中可以看出,加入硬件抽象层后,软硬件可以不受对方进度制约地独立调试,提前发现设计实现过程中的错误并进行修改。RAL使产品研发中软硬件功能分离更明确,便于并行开发设计和调试,大大缩短了研发周期、简化了调试过程。
在高性能路由器中,RAL的提出,使得路由器软硬件充分的分离,利于上层协议软件的移植、升级等,同时提高了整机的稳定性与运行的可靠性,利于整个系统的整机管理。
Claims (9)
1、一种将路由器的控制平面同数据平面的硬件相分离的方法,其控制平面对应于路由器的主处理单元,控制平面包括协议层和网络管理层软件,负责完成主处理单元的设备管理以及路由计算功能,数据平面对应于路由器的从处理单元,有多个接口单元,完成各类数据报文以及协议报文的收发,其特征在于:该方法通过在控制平面与数据平面之间设置一路由适配层,在控制平面内将接口单元抽象成虚拟接口以模拟数据平面上的从处理单元线路接口,在控制平面内完成对数据平面的硬件进行逻辑分离屏蔽,控制平面通过对路由适配层软件中的虚拟接口与设备管理模块的操作,并结合路由适配层中的内部通信模块分别实现对数据平面的协议数据报文和硬件管理的信息交换。
2、根据权利要求1所述的分离方法,其特征在于:将路由适配层分为设备管理模块、虚拟驱动模块和内部通信模块,其中设备管理模块与虚拟驱动模块均通过内部通信模块完成与数据平面上的从处理单元间的通信。
3、根据权利要求2所述的分离方法,其特征在于:将内部通信模块置于路由适配层的底层并运行于内部交换网络,并将其分别分布在主处理单元模块和线路接口单元模块上,负责路由器内部网络的通信,实时完成控制平面与数据平面上的从处理单元间的相关信息交互,对底层硬件实行初步屏蔽分离。
4、根据权利要求3所述的分离方法,其特征在于:将设备管理模块置于内部通信模块之上,将管理的数据分为转发表、从处理单元和接口单元的配置管理信息两种类型,在控制平面内根据数据平面的状态通告完成对数据平面中设备的管理与配置,同时将控制平面内的协议软件计算所得的转发表下发给数据平面完成系统功能。
5、根据权利要求4所述的分离方法,其特征在于:将虚拟驱动模块也置于内部通信模块之上,模拟从处理单元上的接口单元,形成收发数据包功能和数量与此一致的硬件抽象层虚拟接口单元,该模块对控制平面内的协议层软件采用标准的驱动程序接口实现无缝连接,协议层对不同的虚拟接口单元的操作都会反应到相对应的接口单元上,反之,接口单元状态的变化以及收发包动作会通过路由适配层反映到虚拟接口单元上,供协议层软件使用。
6、根据权利要求5所述的分离方法,其特征在于:所述路由适配层的数据流分从处理单元硬件状态的相关信息及管理配置信息,协议数据报文以及主、从处理单元间的相互探测报文。
7、根据权利要求6所述的分离方法,其特征在于:在数据上报时,从处理单元通过其上的内部通信模块,将数据传送到主处理单元,再由内部通信模块根据数据类型进行分流,如果是从处理单元硬件信息或配置信息,就交给设备管理模块中的硬件管理模块进行处理,如果是接口单元的协议数据,就交给与该接口单元对应的虚拟接口单元的虚拟驱动程序处理后,通过标准接口函数上交协议软件。
8、根据权利要求6所述的分离方法,其特征在于:在数据下发时,上层协议软件触发相应的模块进行工作,如果是管理配置命令或者转发表信息,触发的是路由适配层中设备管理模块,将要下达给从处理单元的信息交给内部通信模块,将其传送到指定的从处理单元上进行处理;如果是与协议数据报文相关的回应报文,触发的是路由适配层中虚拟驱动模块,将要发送的协议报文交给内部通信模块,再根据虚拟接口单元信息传送到与之相对应的接口单元进行处理。
9、根据权利要求2所述的分离方法,其特征在于:内部通信模块的通信方式选用传输控制协议TCP的流控机制和应答机制,具体使用基于巴克码分隔符的TCP实时传输方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200410070682XA CN100512283C (zh) | 2004-07-29 | 2004-07-29 | 一种将路由器的控制平面同数据平面的硬件相分离的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200410070682XA CN100512283C (zh) | 2004-07-29 | 2004-07-29 | 一种将路由器的控制平面同数据平面的硬件相分离的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1728702A true CN1728702A (zh) | 2006-02-01 |
CN100512283C CN100512283C (zh) | 2009-07-08 |
Family
ID=35927709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB200410070682XA Expired - Fee Related CN100512283C (zh) | 2004-07-29 | 2004-07-29 | 一种将路由器的控制平面同数据平面的硬件相分离的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100512283C (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100413264C (zh) * | 2006-10-20 | 2008-08-20 | 清华大学 | 可扩展路由器系统传输适配子层通信模式的性能评价方法 |
CN102231708A (zh) * | 2011-07-04 | 2011-11-02 | 清华大学 | 虚拟路由装置及其路由方法 |
CN102255799A (zh) * | 2011-06-23 | 2011-11-23 | 中国人民解放军国防科学技术大学 | 一种支持转发和控制分离的内部网络接口映射方法及装置 |
CN103229468A (zh) * | 2012-11-19 | 2013-07-31 | 华为技术有限公司 | 分组交换资源分配方法及设备 |
CN103685041A (zh) * | 2012-09-04 | 2014-03-26 | 清华大学 | 一种基于比特粒度可编程的路由器及路由方法 |
CN103902498A (zh) * | 2013-12-18 | 2014-07-02 | 曲阜师范大学 | 一种面向异构计算的软件定义服务器系统及方法 |
CN104125147A (zh) * | 2014-08-11 | 2014-10-29 | 烽火通信科技股份有限公司 | 实现下一跳的配置数据分离的方法 |
CN104584504B (zh) * | 2013-08-26 | 2017-09-26 | 华为技术有限公司 | 数据面的特性配置方法和装置 |
CN110830295A (zh) * | 2019-11-08 | 2020-02-21 | 迈普通信技术股份有限公司 | 一种设备管理方法及系统 |
CN113364610A (zh) * | 2018-03-30 | 2021-09-07 | 华为技术有限公司 | 网络设备的管理方法、装置及系统 |
CN113572652A (zh) * | 2021-09-27 | 2021-10-29 | 之江实验室 | 一种有线Mesh网络测试方法 |
CN114347072A (zh) * | 2021-12-06 | 2022-04-15 | 埃夫特智能装备股份有限公司 | 一种机器人控制器模拟化平台及其虚拟方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102231709B (zh) * | 2011-07-04 | 2013-07-10 | 清华大学 | 虚拟路由装置的控制平面结构及其控制方法 |
-
2004
- 2004-07-29 CN CNB200410070682XA patent/CN100512283C/zh not_active Expired - Fee Related
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100413264C (zh) * | 2006-10-20 | 2008-08-20 | 清华大学 | 可扩展路由器系统传输适配子层通信模式的性能评价方法 |
CN102255799A (zh) * | 2011-06-23 | 2011-11-23 | 中国人民解放军国防科学技术大学 | 一种支持转发和控制分离的内部网络接口映射方法及装置 |
CN102255799B (zh) * | 2011-06-23 | 2015-04-08 | 中国人民解放军国防科学技术大学 | 一种支持转发和控制分离的内部网络接口映射方法及装置 |
CN102231708A (zh) * | 2011-07-04 | 2011-11-02 | 清华大学 | 虚拟路由装置及其路由方法 |
CN103685041B (zh) * | 2012-09-04 | 2017-04-19 | 清华大学 | 一种基于比特粒度可编程的路由器及路由方法 |
CN103685041A (zh) * | 2012-09-04 | 2014-03-26 | 清华大学 | 一种基于比特粒度可编程的路由器及路由方法 |
CN103229468A (zh) * | 2012-11-19 | 2013-07-31 | 华为技术有限公司 | 分组交换资源分配方法及设备 |
WO2014075310A1 (zh) * | 2012-11-19 | 2014-05-22 | 华为技术有限公司 | 分组交换资源分配方法及设备 |
US9794192B2 (en) | 2012-11-19 | 2017-10-17 | Huawei Technologies Co., Ltd. | Method and device for allocating packet switching resource |
CN103229468B (zh) * | 2012-11-19 | 2016-05-25 | 华为技术有限公司 | 分组交换资源分配方法及设备 |
CN104584504B (zh) * | 2013-08-26 | 2017-09-26 | 华为技术有限公司 | 数据面的特性配置方法和装置 |
CN103902498B (zh) * | 2013-12-18 | 2016-12-07 | 曲阜师范大学 | 一种面向异构计算的软件定义服务器系统及方法 |
CN103902498A (zh) * | 2013-12-18 | 2014-07-02 | 曲阜师范大学 | 一种面向异构计算的软件定义服务器系统及方法 |
CN104125147B (zh) * | 2014-08-11 | 2017-05-17 | 烽火通信科技股份有限公司 | 实现下一跳的配置数据分离的方法 |
CN104125147A (zh) * | 2014-08-11 | 2014-10-29 | 烽火通信科技股份有限公司 | 实现下一跳的配置数据分离的方法 |
CN113364610A (zh) * | 2018-03-30 | 2021-09-07 | 华为技术有限公司 | 网络设备的管理方法、装置及系统 |
CN113364610B (zh) * | 2018-03-30 | 2022-08-09 | 华为技术有限公司 | 网络设备的管理方法、装置及系统 |
CN110830295A (zh) * | 2019-11-08 | 2020-02-21 | 迈普通信技术股份有限公司 | 一种设备管理方法及系统 |
CN110830295B (zh) * | 2019-11-08 | 2022-07-29 | 迈普通信技术股份有限公司 | 一种设备管理方法及系统 |
CN113572652A (zh) * | 2021-09-27 | 2021-10-29 | 之江实验室 | 一种有线Mesh网络测试方法 |
CN114347072A (zh) * | 2021-12-06 | 2022-04-15 | 埃夫特智能装备股份有限公司 | 一种机器人控制器模拟化平台及其虚拟方法 |
Also Published As
Publication number | Publication date |
---|---|
CN100512283C (zh) | 2009-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100512283C (zh) | 一种将路由器的控制平面同数据平面的硬件相分离的方法 | |
CN101605084B (zh) | 基于虚拟机的虚拟网络报文处理方法和系统 | |
CN102160328B (zh) | 用于协调分布式虚拟网络交换环境中的多播消息传送的中央控制器 | |
CN1206600C (zh) | 一种全分布式的集群网络服务器系统 | |
CN102957619B (zh) | 虚拟路由系统及方法 | |
CN102231708A (zh) | 虚拟路由装置及其路由方法 | |
CN103856417B (zh) | 软件定义网络报文转发方法和系统 | |
CN1875585A (zh) | 利用mac限制来控制动态未知l2泛滥 | |
CN104521198A (zh) | 用于虚拟以太网接口绑定的系统和方法 | |
CN1928839A (zh) | 一种远程内存服务器及其实现方法 | |
CN101330390A (zh) | 基于多核网络处理器的慢速路径、快速路径及其接口设计方法 | |
CN1625153A (zh) | 维持vr机密性的vrrp技术 | |
CN101098256A (zh) | 一种基于简单网络管理协议的集群管理方法和系统 | |
CN102231709B (zh) | 虚拟路由装置的控制平面结构及其控制方法 | |
CN1199405C (zh) | 用虚拟路由器构建的企业外部虚拟专网系统及方法 | |
Xingtao et al. | Network virtualization by using software-defined networking controller based Docker | |
CN105471601A (zh) | 一种通过主交换机对堆叠中的所有从交换机进行管理的方法 | |
CN1455347A (zh) | 一种分布式并行调度宽带网络服务器系统 | |
CN1905508A (zh) | 多生成树协议的分布式处理系统及处理方法 | |
CN108600106B (zh) | 一种低时延的数据交换装置及方法 | |
CN101621528B (zh) | 基于以太交换机集群管理的会话系统及会话通道实现方法 | |
CN1180582C (zh) | 多标签协议交换虚拟私有网配置管理系统及其划分方法 | |
CN1914866A (zh) | 分布式有限状态机 | |
CN109995679A (zh) | 基于任务驱动的芯片级多异构通讯核的NoC系统 | |
CN1697337A (zh) | 通信系统中的倒换方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090708 Termination date: 20160729 |