CN1275143C - 数据处理系统及方法 - Google Patents
数据处理系统及方法 Download PDFInfo
- Publication number
- CN1275143C CN1275143C CN 03143123 CN03143123A CN1275143C CN 1275143 C CN1275143 C CN 1275143C CN 03143123 CN03143123 CN 03143123 CN 03143123 A CN03143123 A CN 03143123A CN 1275143 C CN1275143 C CN 1275143C
- Authority
- CN
- China
- Prior art keywords
- processing
- plane
- data
- core
- service
- 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.)
- Expired - Lifetime
Links
- 238000012545 processing Methods 0.000 title claims abstract description 326
- 238000000034 method Methods 0.000 title claims abstract description 24
- 238000003672 processing method Methods 0.000 claims abstract description 15
- 230000008569 process Effects 0.000 claims abstract description 10
- 230000006870 function Effects 0.000 claims description 113
- 238000004891 communication Methods 0.000 claims description 8
- 230000003370 grooming effect Effects 0.000 claims description 5
- 230000011664 signaling Effects 0.000 claims description 3
- 238000004458 analytical method Methods 0.000 claims description 2
- 238000007726 management method Methods 0.000 description 18
- 238000004364 calculation method Methods 0.000 description 10
- 238000013519 translation Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000013144 data compression Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000010354 integration Effects 0.000 description 3
- 238000004377 microelectronic Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Multi Processors (AREA)
Abstract
一种数据处理系统及方法,该数据处理系统包括有:至少一个单片多核处理器,每个单片多核处理器至少具有两个处理核;若干处理平面,用于将所要处理的数据进行划分若干类别;其中,根据需要排列组合处理平面,分配给处理平面或平面组合相应的处理核,以实现各个处理平面/平面组合的数据处理。相应其数据处理方法包括步骤:划分若干处理平面;根据需要排列组合处理平面,分配给处理平面或平面组合相应的处理核;建立运行程序;将各个处理核的所要运行程序按照一定格式组织成配置文件,该配置文件指明每个处理核要运行的程序存放的位置、程序运行时的位置;启动系统时,利用配置文件,启动处理器运行。
Description
技术领域
本发明涉及数据处理系统及方法,尤其涉及利用单片多核处理器的数据处理系统及方法。
背景技术
随着网络及互联网的迅猛发展,加之电子商务的产生,大公司要面对数以百万的顾客,单个处理器的能力有限,不能满足大数据量、高带宽、大用户量的应用需要。
为了满足需要,提高网络设备处理性能的传统做法是不断地在芯片上集成更多的晶体管和增加缓存容量,或者采用多个处理器,每个处理器完成相应的一个或多个功能。
然而集成更多的晶体管和增加缓存容量,只是单纯的增加容量而未必增强数据处理能力,这样,不仅没有从根本上解决问题,还增加网络设备的体积及重量;采用多个独立处理器,集成度低(一个多处理器系统会包括成百上千颗芯片以及数公里长的错综复杂的连线),设备的成本比较高,体积大,耗电多。
另外,采用多线程技术提高单核处理器的能力,该技术是指一个处理器同时处理两个独立程序的子任务。该技术着重于指令级并行(ILP)以提高其性能。因此,处理器向着大容量、通道复杂的趋势发展。由于数据通道的拥挤状况及复杂性,单核处理器发展到极限。因为指令级并行,而产生服务器更多负荷及不必要的电源消耗。
随着微电子技术的发展,电子器件集成度越来越高,在单一芯片中集成多个(包括两个)处理器核的器件已经提供商用。这种多核处理器中多个处理核可以同时并行运行程序,处理能力相当于传统单核处理器的数倍,又由于新工艺和高集成度,其性价比相对传统的单核处理器高得多。这种单片多核处理器不仅能快速地执行图形生成等繁重的计算任务,还能处理高带宽的通信以及直接连接多种设备等,因此,单片多核处理器可以解决上述单核处理器产生的问题。
但是单片多核处理器毕竟比单核处理器复杂,如何有效、合理、充分地使用单片多核处理器来处理数据,这是目前需要解决的问题。
发明内容
本发明解决的问题是提供一种采用单片多核处理器有效、合理地处理数据的数据处理系统及方法。
为解决上述问题,本发明数据处理系统包括有:
至少一个单片多核处理器,每个单片多核处理器至少具有两个处理核;若干处理平面,用于将所要处理的数据进行划分若干类别;其中,根据需要排列组合处理平面,分配给处理平面或平面组合相应的处理核,以实现各个处理平面/平面组合的数据处理。
所述处理平面按采用该数据处理系统设备的功能划分,包括:
控制平面,用于控制、管理设备和业务的功能的集合;
数据平面,控制平面的指挥下完成数据处理、数据转发、业务疏导的功能集合;
业务平面,指设备中提供具体业务相关的功能集合,主要完成具体业务的特色功能。
所述各个处理平面具有统一接口,包括:
配置接口,当一个平面设置另外一个平面的参数、指挥另外一个平
面完成某一功能时采用的接口;
获取接口,当一个平面需要从另外一个平面得到信息时,调用的接口,通过该接口获取信息;
通知接口,当一个平面需要通知另外一个平面某些情况、信息时调用的接口。
所述数据处理系统包括以下模式:
第一模式,控制平面、数据平面、业务平面的功能集中在一起实现,该数据处理系统每一个处理核都能运行完成控制平面、数据平面、业务平面的功能,多个处理核并行运行;
第二模式:控制平面、数据平面、业务平面功能分离开,单独实现,并且把这三者分别由不同的处理核处理;
第三模式:控制平面和业务平面的功能集成在一起,分配给一个或多个处理核处理,而数据平面的功能单独分配给一个或多个处理核处理;
第四模式:控制平面和数据平面的功能集成在一起,分配给一个或多个处理核运行而业务平面的功能单独分配给一个或多个处理核处理;
第五模式:数据平面和业务平面的功能集成在一起,分配给多个或一个处理核运行,控制平面的功能单独分配一个处理核处理。
相应地,本发明数据处理方法包括以下步骤:
1)划分若干处理平面;
2)根据需要排列组合处理平面,分配给处理平面或平面组合相应的处理核;
3)建立运行程序;
4)将各个处理核的所要运行程序按照一定格式组织成配置文件,该配置文件指明每个处理核要运行的程序存放的位置、程序运行时的位置;
5)启动系统时,利用配置文件,启动处理器运行。
步骤4)中的配置文件的内容包括项目有:处理器编号、处理核编号、程序存放的地址、程序运行的地址及程序的长度。
步骤5)启动系统还包括以下步骤:
51)上电启动系统;
52)启动第一个处理核;
53)第一个处理核读取配置文件;
54)从配置文件中获得各个处理核需要的运行程序,分别搬运到各个处理核的指令空间;
55)逐个启动每个处理核,使之运行各自的运行程序。
此外,该数据处理方法中多核的使用上采用并行操作方式。
与现有技术相比,本发明具有以下优点:
1.利用单片多核处理器强大的处理能力,提高网络设备的性能,降低设备成本。
2、本发明采用“根据需要排列组合处理平面,分配给处理平面或平面组合相应的处理核,以实现各个处理平面/平面组合的数据处理”,以保证向前/后的兼容性及可扩展性。
3、因为向后兼容的特点,可以保证及时利用微电子最新技术,迅速推出新的产品。例如当有8核的处理器推出时,可以替代4核处理器,只要很小的工作量就可以把原有软件移植到新的处理器上,推出更高性能产品。
附图说明
图1是本发明数据处理系统用于网络设备中硬件结构示意图。
图2是本发明数据处理系统中单片多核处理器结构示意图。
图3是本发明数据处理系统第一模式一实施例示意图。
图4是本发明数据处理系统第二模式一实施例示意图。
图5是本发明数据处理系统第三模式示意图。
图6是本发明数据处理系统采用多个单片多核处理器示意图。
图7是本发明数据处理方法流程图。
图8是本发明数据处理系统处理平面接口关系示意图。
图9是图7的进一步流程图。
具体实施方式
本发明数据处理系统及方法,为了叙述方便,在本具体实施方式中,仅以各种网络设备为例,对其数据处理系统及方法进行描述,诚然本发明的技术方案不局限于网络设备上的应用。
本发明数据处理系统,包括有:
至少一个单片多核处理器,每个单片多核处理器至少具有两个处理核;
若干处理平面,用于将所要处理的数据进行划分若干类别;
其中,根据需要排列组合处理平面,分配给处理平面或平面组合相应的处理核,而实现各个处理平面/平面组合的数据处理。
请参照图1所示,本发明数据处理系统用于网络设备中硬件结构包括单片多核处理器1、BOOTROM 2、存储器3、网络接口4等单元组成。BOOTROM 2中载有系统启动的程序,存储器3中保存系统运行时的程序和数据,网络接口4通过线缆或无线方式与其他网络设备相连,单片多核处理器1运行程序,完成网络设备的数据处理功能。
请参照图2所示,单片多核处理器1内包括:处理核集合10(至少包括有两个处理核)及若干外围接口电路12。其中外围接口电路12主要负责单片多核处理器1与外界的数据交互。处理核集合10(见图3-6)包括处理核101、处理核102......
就采用该数据系统处理数据的设备(如路由器、各种网关、交换机等网络设备)而言,按其功能基本分为三个处理平面:控制平面、数据平面、业务平面(有些简单的设备只包含其中部分功能)。其中,
控制平面:指用于控制、管理该设备和业务的功能集合,如,网络设备中信令、路由、设备管理、人机接口等方面。
数据平面:指该设备中数据处理、数据转发、业务疏导等方面的功能集合,在控制平面的“指挥”下完成疏导数据和业务的功能,如网络设备中的数据接收、发送、转发、更改等。
业务平面:指设备中提供具体业务相关的功能集合,主要完成具体业务的特色功能,如网络设备的用户管理、记费、加密、用户识别、VOIP(Voice Over IP)、VPN(虚拟个人网络)应用等。
在此,这种处理平面的划分不局限于网络设备,也不局限于这种划分规则。
本发明数据处理系统及方法重点在于如何分配单片多核处理器1的多个处理核,在本具体实施方式中列举五种分配模式,但本发明技术方案不局限于该五种模式。
第一模式:把控制平面、数据平面、业务平面的功能集中在一起实现,系统每一个处理核都能运行完成控制平面、数据平面、业务平面等的功能,多个处理核并行运行。这种模式将系统的三类功能都集中在一起,开发管理方便。每个处理核都能完成系统这三类功能,各个处理核之间耦合性很小,系统调度控制方面的工作量很小。多个处理核并行运行,不但提高系统的处理能力,同时整个系统的健壮性提高,即使一个处理核运行出现异常,也不会影响到其他处理核的正常运行,不会导致系统整个功能失效。这种模式对于系统扩容非常方便,只要采用含有更多核的处理器就可以提高系统的容量,而运行程序和系统体系结构几乎不需要修改。这种方式对于兼容以后的更多核处理器也很容易,因为它的体系结构与处理核的数量没有关系,同时可以兼容单核和多核的处理器。
这种模式也可以用于双协议栈或多协议栈网络设备,每个处理核分别运行一个完整的协议栈,比如IP/IPX(Internet Protocol/InternetworkPacket eXchange,网际协议/互联网包交换)双栈路由器、IP/SNA(Internet Protocol/System Network Architecture,网际协议/系统网络架构)双栈设备等。
如图3所示,利用双核处理器1实现的IP/SNA双栈设备,两个处理核101、102分别运行IP协议栈和SNA协议栈,而相应成为运行IP协议核101和运行SNA协议核102。假如有一个数据包要从IP网络转发到SNA网络,首先从IP网络接口41来的数据先进入系统存储器3中,接着运行IP协议核101对数据进行处理,处理完后把数据交给运行SNA协议核102处理,该处理核102处理完数据后通过SNA网络接口42把数据发出去。SNA网络来的数据按着相反的流程,经过类似的处理,被转发到IP网络。
第二模式:把控制平面、数据平面、业务平面功能分离开,单独实现,并且把这三者分别分配给不同的处理核运行。对于复杂的网络设备一般包含这三项功能,这就需要有单片多核处理器1包含三个(或以上)的处理核。当然对于相对简单的网络设备,可能只包含两项功能,也可以由两个处理核的处理器,按这种模式实现。
这种模式的优点:
1、功能的扩展(扩容)方便灵活。比如对于用户管理业务功能,当用户少时,可以只用一个处理核完成该功能,当用户增加时,可以灵活地把其他的处理核再分配完成该功能任务,这样就可以有多个处理核运行用户管理这个功能,提高处理能力和管理用户的数目。
2、新功能的增加非常方便。网络技术发展迅速,新业务层出不穷,当网络设备需要提供新业务时,只要开发新业务功能,把该功能分配给其中一个处理核运行,对网络原来的业务功能几乎没有影响,很容易实现不中断业务的功能升级。
3、业务功能的调整灵活。网络应用变化相对较快,各种的业务占总业务量的比例会随时间变化,通过调整分配给不同功能的处理核的数量,可以非常简便地调整各种业务的处理能力,同一台设备满足不同的应用需求,节省用户投资。
请参照图4所示,用一个四核的处理器1实现一个带数据加密业务路由器的例子。其中一个处理核101被分配完成控制平面的工作,如路由计算、设备管理、配置管理、人机接口等,而成为控制平面核101;另一个处理核102分配业务平面功能,即在本例中就是数据加密功能,而成为业务平面核102。剩余的两个处理核103、104分配数据平面功能主要完成数据的转发,而成为数据平面核103、104。
当路由器启动后,控制平面核101通过路由计算以及用户的配置生成转发表和一些数据处理的规则。当一个数据包从网络接口4进入设备,首先缓存在存储器3中,数据平面核103通过查找转发表和和处理规则,决定是否要对数据加密,如果需要加密,就把该数据提交给业务平面核102进行加密处理,业务平面核102完成加密后,把数据提交给数据平面核104,由数据平面核104把数据从网络接口4转发出去。如果从网上来的数据不需要加密(数据平面核103通过查处理规则得知),数据平面核104就把数据直接转发出去,而不需要把数据提交业务平面核102处理。
第三模式:控制平面和业务平面的功能集成在一起,分配给一个或多个处理核运行;数据平面的功能单独分配给一个或多个处理核运行。这种模式主要用在业务平面和控制平面处理工作量相对较小,而数据平面工作量较大的设备,优点是把数据平面工作单独剥离出来,容易提高系统数据吞吐量,适用于功能主要集中在数据转发的设备,比如交换机等。如图5所示,控制平面和业务平面集成一起,由控制平面和业务平面核101处理,数据平面由数据平面核102、103处理,其具体数据流程为现有技术,在此不再赘述。
第四模式:控制平面和数据平面的功能集成在一起,分配给一个或多个处理核运行;业务平面的功能单独分配给一个或多个处理核运行。这种模式特别适合于以业务处理为重的设备,如接入服务器、加密业务、VOIP业务等,同时也利于开发多业务设备,基于这种方案新的业务功能很容易加入。
第五模式:数据平面和业务平面的功能集成在一起,分配给多个或一个处理核运行,控制平面的功能单独分配一个处理核运行。一般来说网络设备控制平面功能需求相对稳定,变化较小,业务平面和数据平面的变化相对较大,这种方案将控制平面独立出来,减少控制平面与其他两个平面的耦合性。如果有新功能需求或新业务时,控制平面不变(或很少变化),只需要对业务和数据部分的功能模块进行开发、升级,就可以实现整个系统的功能升级。
第三模式、第四模式和第五模式在道理上相同,只是各自适合于不同的应用场合。
此外,若采用多个单片多核处理器的数据处理系统,这些处理器的处理核按照上面提到的五种模式分配,实现控制平面、数据平面、业务平面的功能,这种数据处理系统主要用于功能强大的设备,对于这些设备单片的处理能力已经不够,所以采用多个处理器,提高系统处理能力,但是处理核的功能分配还是可以按照上面提到的五种模式实现。
请参照图6所示,采用两个单片双核处理器1、5实现NAT(地址转换)业务路由器的一个例子,单片双核处理器1的一个处理核101分配处理控制平面,即控制平面核101,另外一个处理核102分配业务功能(地址转换),即业务平面核102;单片双核处理器5的两个处理核501、502都分配处理数据平面,即数据平面核501、502。处理器1的控制平面核101完成路由计算、配置管理、设备管理、人机接口等功能。业务平面核102完成地址转换功能。单片双核处理器5的两个处理核501、502都完成数据转发功能。
当路由器启动后,业务平面核101会根据网络拓扑计算路由并形成转发表,同时接受用户的地址转换规则,形成规则表。当数据从网络接口4进入设备,数据平面核501、502会根据规则确定该数据包是否需要进行地址转换,如果需要就把这个数据包提交业务平面核102,业务平面核102根据控制平面生成的地址转换规则把数据包中的IP地址和端口号做相应的转换,然后再把这个数据包提交给数据平面核501、502,并把数据包通过网络接口4转发出去。
综上所述,本发明数据处理系统,在本具体实施方式中,数据处理系统参考以下因素确定处理核与平面或平面组合的分配:
扩容因素,采用该数据处理系统的设备将来扩容时需要的主要功能属于哪个处理平面,该处理平面由单独处理核来实现;而对扩容影响不大的处理平面就可以合在一个处理核中,成为一个处理平面组合;
新业务因素,采用该数据处理系统的设备将来提供新业务所需要的处理能力,为了业务扩展方便,把新业务的处理分配一个单独的处理核;
处理能力因素,采用该数据处理系统的设备的各个处理平面或平面组合功能所需要的处理能力,结合所选用的单片多核处理器的能力,确定各个处理平面或平面组合所需要的处理核的数量及单片多核处理器的数量。
对上述这些因素进行分析并平衡分析结果,分配处理核及确定处理核的数量,选择一种合适的方式。
此外,为了保证设备将来的可扩展性、可移植性(如从4核的处理器移植到8核的处理器)本发明数据系统设计时要遵循下面的原则为更好:
每个处理平面或平面组合的功能实现(数据处理)与要运行该功能(要处理该数据)的处理核的数量无关。其解决方案是:
A.在多核的使用上要采用并行操作方式,不采用流水线方式。如果采用流水线方式,当处理能力不够时,如果想再加入新的处理核,就需要在多个处理核之间重新分配任务,调整流水线,这就意味着要重新设计。如果采用并行操作方式,只要把原来的运行程序在新的处理核上运行起来,就可以到达增强处理能力的目的。例如对于数据转发这个功能,包括了提取数据包头、查转发表、更改数据包头并从出端口转发出去等几个步骤,如果采用并行方式,就要求每个处理核都完成这个三个步骤。如果采用流水线方式,就把这个步骤分别分配给三个处理核,一个核专门处理数据包头提取功能,一个核处理查表功能,另外一个处理数据包头更改和转发到出端口功能。
B.各处理平面间的接口固定、统一,与各个平面是否在同一个处理核中运行无关,也就是说与采用哪种模式无关。
请参照图7所示,本发明数据处理系统中,各个处理平面之间的接口7统一包括:配置(set)接口71、获取(get)接口72及通知(inform)接口73。
配置接口71是当一个平面设置另外一个平面的参数、指挥另外一个平面完成某一功能时采用的接口。
获取接口72是当一个平面需要从另外一个平面得到信息时,调用的接口,通过该接口获取信息。
通知接口73是当一个平面需要通知另外一个平面某些情况、信息时调用的接口。
例如,在调用这些接口的过程中传递的参数如下:
set(source,destination,type,length,content)
get(source,destination,type,length,content)
inform(source,destination,type,length,content)
其中source表示接口的调用者,destination表示要通信的对象,type表示通信类型,length表示通信内容的长度,content表示通信的具体内容。
以一个控制平面和数据平面的为例:控制平面中有一个路由计算模块(功能),数据平面有一个数据包的转发模块(功能),数据包的转发是按照路由计算得出的转发表(FIB)来完成的,他们之间的交互采用这三个接口完成:
路由计算得出转发表(FIB)后,通过配置接口71把FIB表发送给数据平面的转发模块;
如果转发模块收到一个路由协议包,就利用通知接口73把这个路由协议包交给控制平面的路由计算模块,让路由计算模块利用这个协议包计算路由;
路由计算模块需要得到转发数据包的统计值,就可以调用获取接口72获取从数据转发模块获得这些统计值。
这样即使运行在不同的处理核内,而每个处理平面都采用同样的接口,这样就保证了处理平面与处理核的无关性。
请参照图8所示,相应地,本发明数据处理方法包括以下步骤:
6)执行步骤80,划分若干处理平面,并按照一定标准(例如功能),把所要处理数据分类到处理平面中,同一个领域最好采用统一的划分标准,以便扩充数据处理系统;
7)执行步骤82,根据需要排列组合处理平面,分配给处理平面或平面组合相应的处理核;
8)执行步骤84,建立其运行程序,当一个处理平面被分配多个处理核时,如果处理任务相同,则每个处理核可运行相同的运行程序,如数据平面负责数据转发,如果处理任务不同,则每个处理核的运行程序不同,如业务平面有多种业务;其流程及技术细节为现有技术,在此不再赘述。
9)执行步骤86,将各个处理核的运行程序按照一定格式组织成配置文件:
在完成各个处理器核的运行程序后,要把这些运行程序组织起来,形成一个配置文件,以便系统启动时能保证正确的程序运行在正确的处理核上。配置文件的内容包括多个(有几个处理核就有几个条目)如下的项目:
{处理器编号,处理核编号,程序存放的地址,程序运行的地址,程序的长度}
这个配置文件指明了每个处理核要运行的程序存放在非易失存储器中的位置、在内存中的位置(程序运行时的位置)、程序的长度。
10)执行步骤88,启动系统时,利用配置文件,启动处理器运行:
当系统启动时,第一个处理核根据这个配置文件把各个处理核的程序搬移到相应的位置,然后启动各个处理核运行,这样保证各个处理核按照所选的模式运行相应的运行程序。请参照图9所示,其系统启动还包括以下步骤:
执行步骤90,上电启动系统;
执行步骤91,启动第一个处理核;
执行步骤92,第一个处理核读取配置文件;
执行步骤93,从配置文件中获得各个处理核需要的运行程序,分别搬运到各个处理核的指令空间;
执行步骤94,逐个启动每个处理核,使之运行各自的运行程序。
下面举两个具体的实施例,
第一实施例:假如采用四核处理器实现一个多业务路由器,它的功能包括:人机接口、设备管理、网管代理、路由计算、数据转发、数据加密、数据压缩等。首先将这些功能分到三个平面中。
控制平面:人机接口、设备管理、网管代理、路由计算
数据平面:数据包转发。
业务平面:数据加密、数据压缩。
由于该设备主要是处理业务,而且数据加密和数据压缩需要很强的处理能力,而且考虑到将来可能还需要增加新的业务,所以可以分配两个处理核给业务平面,控制平面占用一个处理核,数据平面也占用一个处理核。
按照上面的方式分配完处理核,建立运行程序,把程序分成三部分:业务平面核的运行程序、控制平面核的运行程序、数据平面核的运行程序。把他们按照配置文件的格式组织起来,假设业务平面分别占用编号为1和2的处理核,控制平面占用编号为3的处理核,数据平面占用编号为4的处理核,由于只有一个单片多核处理器,所以其编号为1,配置文件中的项目如下:
{1,1,S_SADDR,S_DADDR1,S_LENGTH};
{1,2,S_SADDR,S_DADDR2,S_LENGTH};
{1,3,C_SADDR,C_DADDR,C_LENGTH};
{1,4,D_SADDR,D_DADDR1,D_LENGTH};
第二实施例:用一个四核处理器实现一个高速路由器,该路由器主要功能有:人机接口、设备管理、网管代理、路由计算、数据转发、少量的数据加密等。
将这些功能分到三个平面中:
控制平面:人机接口、设备管理、网管代理、路由计算
数据平面:数据转发
业务平面:数据加密
由于该路由器主要是完成高速的数据转发功能,所以可以分配三个处理核给数据平面完成数据转发功能(假设编号为1、2、3)。由于业务平面只有少量的数据加密,对处理能力要求不是很高,就与控制平面共用一个处理核(假设编号为4)。则配置文件内容如下:
{1,1,D_SADDR,D_DADDR1,D_LENGTH};
{1,2,D_SADDR,D_DADDR2,D_LENGTH};
{1,3,D_SADDR,D_DADDR3,D_LENGTH};
{1,4,S_C_SADDR,S_C_DADDR,S_C_LENGTH};
在上面的例子中,由于同样的程序只需要在非易失存储器中保留一份,所以其保存起始地址相同。
综上所述,本发明具有以下优点:
1、本发明利用单片多核处理器,可以提高设备的集成度,提供体积小性能高功能丰富的设备。
2、向后兼容的特点,可以保证及时利用微电子最新技术,迅速推出新的产品。例如当有8核的处理器推出时,可以替代4核处理器,只要很小的工作量就可以把原有程序移植到新的处理器上,推出更高性能产品。
3、数据处理系统具有很强的可扩展性,新功能、新业务很容易加入到系统中,设备的适应网络应用变化的能力强。
4、采用本发明技术方案可以快速推出新产品,缩短产品上市时间。
5、设备最终用户可以定制设备的功能,比如对于一个基于4核处理器的设备的可以定制一个核处理业务,两个核处理数据、一个核处理控制;也可以两个核处理业务、一个核处理数据、一个核处理控制。这样用户可以根据应用情况定制设备的各项功能的处理能力。
Claims (15)
1.一种数据处理系统,其特征在于,该数据处理系统包括有:
至少一个单片多核处理器,每个单片多核处理器至少具有两个处理核:
若干处理平面,用于将所要处理的数据进行划分若干类别;
其中,根据需要排列组合处理平面,分配给处理平面或平面组合相应的处理核,以实现各个处理平面/平面组合的数据处理。
2.如权利要求1所述的数据处理系统,其特征在于,所述处理平面按采用该数据处理系统设备的功能划分,包括:
控制平面,用于控制、管理设备和业务的功能的集合;
数据平面,控制平面的指挥下完成数据处理、数据转发、业务疏导的功能集合;
业务平面,指设备中提供具体业务相关的功能集合,主要完成具体业务的特色功能。
3.如权利要求2所述的数据处理系统,其特征在于,所述设备为网络设备,而其处理平面具体为:
控制平面,指网络设备中信令、路由、设备管理、人机接口;
数据平面,指数据接收、发送、转发、更改;
业务平面,指用户管理、记费、加密、用户识别、IP语音业务VOIP、虚拟个人网络应用。
4.如权利要求1至3任何一项所述的数据处理系统,其特征在于,各个处理平面具有统一接口,包括:
配置接口,当一个平面设置另外一个平面的参数、指挥另外一个平面完成某一功能时采用的接口;
获取接口,当一个平面需要从另外一个平面得到信息时,调用的接口,通过该接口获取信息;
通知接口,当一个平面需要通知另外一个平面某些情况、信息时调用的接口。
5.如权利要求4所述的数据处理系统,其特征在于,所述接口分别设置的参数包括:调用者source、通信的对象destination、通信类型type、通信内容的长度length、通信的具体内容content。
6.如权利要求4所述的数据处理系统,其特征在于,所述数据处理系统参考以下因素确定处理核与平面或平面组合的分配:
扩容因素,采用该数据处理系统的设备将来扩容时需要的主要功能属于哪个处理平面,该处理平面由单独处理核来实现;而对扩容影响不大的处理平面就可以合在一个处理核中,成为一个处理平面组合;
新业务因素,采用该数据处理系统的设备将来提供新业务所需要的处理能力,把新业务的处理分配一个单独的处理核;
处理能力因素,采用该数据处理系统的设备的各个处理平面或平面组合功能所需要的处理能力,结合所选用的单片多核处理器的能力,确定各个处理平面或平面组合所需要的处理核的数量及单片多核处理器的数量。
7.如权利要求2、3所述的数据处理系统,其特征在于,所述数据处理系统包括以下模式:
第一模式,控制平面、数据平面、业务平面的功能集中在一起实现,该数据处理系统每一个处理核都能运行完成控制平面、数据平面、业务平面的功能,多个处理核并行运行;
第二模式:控制平面、数据平面、业务平面功能分离开,单独实现,并且把这三者分别由不同的处理核处理;
第三模式:控制平面和业务平面的功能集成在一起,分配给一个或多个处理核处理,而数据平面的功能单独分配给一个或多个处理核处理;
第四模式:控制平面和数据平面的功能集成在一起,分配给一个或多个处理核运行而业务平面的功能单独分配给一个或多个处理核处理;
第五模式:数据平面和业务平面的功能集成在一起,分配给多个或一个处理核运行,控制平面的功能单独分配一个处理核处理。
8.一种数据处理方法,其特征在于,该方法包括以下步骤:
1)划分若干处理平面;
2)根据需要排列组合处理平面,分配给处理平面或平面组合相应的处理核;
3)建立运行程序;
4)将各个处理核的所要运行程序按照一定格式组织成配置文件,该配置文件指明每个处理核要运行的程序存放的位置、程序运行时的位置;
5)启动系统时,利用配置文件,启动处理器运行。
9.如权利要求8所述的数据处理方法,其特征在于,所述步骤1)按采用该数据处理方法的设备的功能将处理平面划分为三种:
控制平面,用于控制、管理设备和业务的功能的集合;
数据平面,指设备中控制平面的指挥下完成数据处理、数据转发、业务疏导的功能集合;
业务平面,指设备中提供具体业务相关的功能集合,主要完成具体业务的特色功能。
10.如权利要求8所述的数据处理方法,其特征在于,所述设备为网络设备,而其处理平面具体为:
控制平面,指网络设备中信令、路由、设备管理、人机接口;
数据平面,指数据接收、发送、转发、更改;
业务平面,指用户管理、记费、加密、用户识别、VOIP、虚拟个人网络应用。
11.如权利要求8-10任何一项所述的数据处理方法,其特征在于,步骤1)中各个处理平面具有统一接口,包括:
配置接口,当一个平面设置另外一个平面的参数、指挥另外一个平面完成某一功能时采用的接口;
获取接口,当一个平面需要从另外一个平面得到信息时,调用的接口,通过该接口获取信息;
通知接口,当一个平面需要通知另外一个平面某些情况、信息时调用的接口。
12.如权利要求11所述的数据处理方法,其特征在于,步骤2)中确定处理核与平面或平面组合的分配包括以下步骤:
21)分析扩容因素,采用该数据处理系统的设备将来扩容时需要的主要功能属于哪个处理平面,该处理平面由单独处理核来实现;而对扩容影响不大的处理平面就可以合在一个处理核中,成为一个处理平面组合;
22)分析新业务因素,采用该数据处理系统的设备将来提供新业务所需要的处理能力,把新业务的处理分配一个单独的处理核;
23)分析处理能力因素,采用该数据处理系统的设备的各个处理平面或平面组合功能所需要的处理能力,结合所选用的单片多核处理器的能力,确定各个处理平面或平面组合所需要的处理核的数量及单片多核处理器的数量;
24)平衡分析结果,分配处理核及确定处理核的数量。
13.如权利要求12所述的数据处理方法,其特征在于,步骤4)中的配置文件的内容包括项目有:处理器编号、处理核编号、程序存放的地址、程序运行的地址及程序的长度。
14.如权利要求13所述的数据处理方法,其特征在于,步骤5)启动系统还包括以下步骤:
51)上电启动系统;
52)启动第一个处理核;
53)第一个处理核读取配置文件;
54)从配置文件中获得各个处理核需要的运行程序,分别搬运到各个处理核的指令空间;
55)逐个启动每个处理核,使之运行各自的运行程序。
15.如权利要求8所述的数据处理方法,其特征在于,该数据处理方法中,多核的使用上采用并行操作方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 03143123 CN1275143C (zh) | 2003-06-11 | 2003-06-11 | 数据处理系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 03143123 CN1275143C (zh) | 2003-06-11 | 2003-06-11 | 数据处理系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1567187A CN1567187A (zh) | 2005-01-19 |
CN1275143C true CN1275143C (zh) | 2006-09-13 |
Family
ID=34471264
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 03143123 Expired - Lifetime CN1275143C (zh) | 2003-06-11 | 2003-06-11 | 数据处理系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1275143C (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI386846B (zh) * | 2006-03-30 | 2013-02-21 | Silicon Image Inc | 利用共享式非揮發性記憶體初始化多個處理元件之方法、系統及快閃記憶體元件 |
CN101453452B (zh) * | 2007-12-07 | 2012-11-28 | 国际商业机器公司 | 基于多核的sip消息处理方法及装置 |
CN101197782B (zh) * | 2007-12-26 | 2010-06-09 | 中兴通讯股份有限公司 | 一种基于多核处理器的网络设备的控制方法及系统 |
WO2010060283A1 (zh) * | 2008-11-28 | 2010-06-03 | 上海芯豪微电子有限公司 | 一种数据处理的方法与装置 |
CN101753388B (zh) * | 2008-11-28 | 2011-08-31 | 中国科学院微电子研究所 | 适用于多核处理器片上和片间扩展的路由及接口装置 |
CN101753360B (zh) * | 2009-12-16 | 2013-02-13 | 中兴通讯股份有限公司 | 应用系统启动的方法、并行管理系统和应用管理系统 |
TWI412999B (zh) | 2010-03-31 | 2013-10-21 | Wistron Corp | 平行化快速啟動方法及具有多處理單元之電子裝置 |
CN102214105B (zh) * | 2010-04-08 | 2017-05-31 | 纬创资通股份有限公司 | 平行化快速启动方法及具有多处理单元的电子装置 |
CN102362256B (zh) * | 2010-04-13 | 2014-07-30 | 华为技术有限公司 | 处理公共数据结构的方法及装置 |
CN102541633A (zh) * | 2011-12-16 | 2012-07-04 | 汉柏科技有限公司 | 基于多核cpu的数据平面和控制平面部署系统及方法 |
CN105094691B (zh) | 2014-05-21 | 2019-05-21 | 华为技术有限公司 | 一种数据操作的方法、设备和系统 |
CN104050036B (zh) * | 2014-05-29 | 2018-04-27 | 汉柏科技有限公司 | 多核处理器网络设备的控制系统及方法 |
CN104156234B (zh) * | 2014-07-22 | 2018-07-31 | 华为技术有限公司 | 启动多核处理器、bootloader大小端模式自适应的方法及装置 |
CN106407156B (zh) * | 2016-09-23 | 2018-11-23 | 深圳震有科技股份有限公司 | 一个bootrom引导多核cpu启动的方法及系统 |
CN108632070B (zh) * | 2017-03-23 | 2020-04-28 | 华为技术有限公司 | 虚拟网络设备的配置方法及服务器 |
-
2003
- 2003-06-11 CN CN 03143123 patent/CN1275143C/zh not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
CN1567187A (zh) | 2005-01-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1275143C (zh) | 数据处理系统及方法 | |
US20200328969A1 (en) | System and method of providing segment routing as a service | |
CN1652528A (zh) | 分布式路由器 | |
CN1277395C (zh) | 通信系统、发送装置和接收装置 | |
CN1649315A (zh) | 网络控制设备及其路径控制方法 | |
CN1864149A (zh) | 单连接和容错对称多计算系统上的组到组通信 | |
CN101047610A (zh) | 数据存储、读取、传输方法和管理服务器及网络节点 | |
CN1848792A (zh) | 跨混合网络的多协议标签交换虚拟专用网的实现方法 | |
CN1543142A (zh) | 路由器和地址标识信息管理服务器 | |
CN101051980A (zh) | 一种文件数据分发方法及相关设备 | |
CN1652084A (zh) | 计算机系统、管理装置、存储装置以及计算机装置 | |
CN101080915A (zh) | 用于使用移动网际协议旁路路由栈的方法、系统和计算机程序产品 | |
CN1975704A (zh) | 可重构处理器或装置 | |
CN1490979A (zh) | 信息路由选择方法和信息中继装置 | |
CN101061476A (zh) | 在线初始镜像同步及存储区域网络中的镜像同步验证 | |
CN101039247A (zh) | 一种点到点网络系统及重叠网间节点的互通方法 | |
CN1496517A (zh) | 用于宽带网络的计算机体系结构的数据同步系统和方法 | |
CN1467965A (zh) | 分组处理装置 | |
CN1859170A (zh) | 一种实现跨域路由分离的方法 | |
CN101040268A (zh) | 宽带网络计算机体系结构中的外部数据接口 | |
CN1779669A (zh) | 服务器、控制服务器的数据通信的方法、计算机产品 | |
CN1812406A (zh) | 通信设备、通信方法、通信程序和记录媒体 | |
CN101043510A (zh) | Pci-e总线分布式系统单板内及单板间数据通讯方法 | |
CN101052040A (zh) | 一种基于虚拟层和插件技术的网格互操作系统 | |
CN1926828A (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 | ||
CX01 | Expiry of patent term | ||
CX01 | Expiry of patent term |
Granted publication date: 20060913 |