一种信息处理的方法和装置的制造方法

文档序号:9276766阅读:212来源:国知局
一种信息处理的方法和装置的制造方法
【技术领域】
[0001]本发明涉及通信领域,特别涉及一种信息处理的方法和装置。
【背景技术】
[0002]随着大数据时代的到来,通信系统中对网络设备的处理能力要求越来越高。
[0003]从硬件上,仅仅依靠提高单核芯片的速度来提高中央处理器(CentralProcessing Unit,CPU)的处理能力会产生过多热量且无法带来相应的性能改善,其性价比也令人难以接受。另一方面,现在的系统都要求要进行多任务操作。在这种情况下,多核(PU无疑是一个很好的选择,其优势主要在两个方面:为用户带来更强大的计算性能;更重要的是可满足用户同时进行多任务处理和多任务计算环境的要求。
[0004]从软件架构上,为了提高报文转发能力,通常采用控制面与业务面分别处理的方法,使业务报文可以得到快速转发。
[0005]目前,多核CPU处理数据一般有两种方法。第一种方法:在对称多处理器(Symmetrical Mult1-Processing,SMP)操作系统内核中,运行一个内核线程,该线程绑定到特定的CPU核上,专门处理业务报文的转发。
[0006]然而,这种方法在业务面处理出现错误时,会影响操作系统的稳定性。
[0007]第二种方法:在多核系统中运行两个操作系统,一个做控制面报文处理,一个做业务面报文处理。
[0008]然而,这种方法会造成操作系统的冗余开销。

【发明内容】

[0009]本发明实施例提供一种信息处理的方法和装置,用以解决现有技术中,不同业务处理的核共用一个操作系统的情景下,由于某些业务处理错误时导致系统稳定性的问题。以及采用两个操作系统分别进行控制面报文和数据面报文的情境景下,存在操作系统冗余开销的问题。
[0010]本发明实施例提供的具体技术方案如下:
[0011]一种信息处理的方法,包括:
[0012]在多核处理器启动之后,当接收到报文时,调用第一类核判断所述报文的类型,并基于所述报文的类型,通过所述第一类核将所述报文发送至与所述报文的类型匹配的核所对应的存储空间中;其中,所述第一类核用于执行调度操作;
[0013]调用所述第二类核和/或第三类核对对应存储空间中的所述报文进行处理;其中,所述第二类核用于执行控制面报文的处理,所述第三类核用于执行数据面报文的处理;
[0014]当确定需要通过第二类核和/或第三类核发送报文时,将所述第二类核和/或第三类核对应的存储空间中的报文发送到指定的待发送存储空间中;
[0015]调用所述第一类核对所述待发送存储空间中的报文进行发送。
[0016]这样,提高了数据的处理和转发的效率,同时避免了操作系统的冗余开销问题,进而提升了网络系统的整体吞吐量。
[0017]较佳的,在多核处理器启动之前,进一步包括:
[0018]根据不同的业务处理内容,在多核处理器中划分为至少两个第一类核、一个第二类核和至少一个第三类核;
[0019]在自身的存储区域内,对应于所述一个第二类核划分出对应的存储空间,对应所述至少一个第三类核划分出对应的存储空间,以及划分出一个待发送存储空间。
[0020]较佳的,在多核处理器启动之后,在接收到报文之前,进一步包括:
[0021]调用所述第二类核对物理网卡进行初始化操作,并在所述第二类核中注册中断处理函数;其中,所述中断处理函数是虚拟网卡驱动中用于报文接收的函数。
[0022]较佳的,当接收到报文时,调用第一类核判断所述报文的类型,并基于报文的类型,通过所述第一类核将所述报文发送至与所述报文的类型匹配的处理器所对应的存储空间中,包括:
[0023]当接收到报文时,调用第一类核判断所述报文的类型,若所述报文的类型为控制面报文,则通过所述第一类核将所述报文发送至所述第二类核所对应的存储空间中,若所述报文的类型为数据面报文,则通过所述第一类核将所述报文发送至所述第三类核所对应的存储空间中。
[0024]较佳的,若所述报文的类型为控制面报文,则通过所述第一类核将所述报文发送至所述第二类核所对应的存储空间中,包括:
[0025]若所述报文的类型为控制面报文,则通过所述第一类核将所述报文直接发送至所述第二类核所对应的存储空间中;
[0026]若所述报文的类型为数据面报文,则通过所述第一类核将所述报文发送至所述第三类核所对应的存储空间中,包括:
[0027]若所述报文的类型为数据面报文,则通过所述第一类核根据五元组信息计算哈希HASH值,并基于所述HASH值将所述报文发送至所述第三类核中对应的存储空间中。
[0028]较佳的,调用第二类核和/或第三类核对对应存储空间中的报文进行处理,包括:
[0029]通过所述第一类核触发核间中断通知第二类核,并通过所述第二类核调用所述中断处理函数指示所述虚拟网卡驱动对所述报文进行处理;和/或,
[0030]通过第三类核对对应存储空间中的报文直接进行处理。
[0031]较佳的,当确定需要通过第二类核和/或第三类核发送报文时,将所述第二类核和/或第三类核对应的存储空间中的报文发送到指定的待发送存储空间中,包括:
[0032]当确定需要通过第二类核和/或第三类核发送报文时,调用所述第二类核和/或第三类核将所述报文缓存在各自对应的存储空间中;
[0033]确定所述第二类核和/或第三类核中任一核获取到自旋锁时,将所述第二类核和/或第三类核中任一核所对应的存储空间中的报文发送到指定的待发送存储空间中;其中,所述自旋锁用于表征核能否将报文发送到所述待发送存储空间中,所述待发送存储空间用于缓存待发送的报文。
[0034]较佳的,进一步包括:
[0035]若所述第二类核和/或第三类核没有获取到自旋锁,则通过所述第二类核和/或第三类核进行等待操作。
[0036]较佳的,调用所述第一类核对所述待发送存储空间中的报文进行发送,包括:
[0037]调用所述第一类核将所述待发送存储空间中的报文先发送至所述物理网卡,再由所述物理网卡进行后续的发送操作。
[0038]一种信息处理的装置,应用于多核处理器上,包括:
[0039]接收单元,用于在多核处理器启动之后,当接收到报文时,调用第一类核判断所述报文的类型,并基于报文的类型,通过所述第一类核将所述报文发送至与所述报文的类型匹配的核所对应的存储空间中;其中,所述第一类核用于执行调度操作;
[0040]第一处理单元,用于调用第二类核和/或第三类核对对应存储空间中的报文进行处理;其中,所述第二类核用于执行控制面报文的处理,所述第三类核用于执行数据面报文的处理;
[0041]发送单元,用于当确定需要通过所述第二类核和/或第三类核发送报文时,将所述第二类核和/或第三类核对应的存储空间中的报文发送到指定的待发送存储空间中;
[0042]第二处理单元,用于调用所述第一类核对所述待发送存储空间中的报文进行发送。
[0043]这样,提高了数据的处理和转发的效率,同时避免了操作系统的冗余开销问题,进而提升了网络系统的整体吞吐量。
[0044]较佳的,进一步包括划分单元,所述划分单元用于:
[0045]在多核处理器启动之前,根据不同的业务处理内容,在多核处理器中划分为至少两个第一类核、一个第二类核和至少一个第三类核;
[0046]在自身的存储区域内,对应于所述一个第二类核划分出对应的存储空间,对应所述至少一个第三类核划分出对应的存储空间,以及划分出一个待发送存储空间。
[0047]较佳的,在多核处理器启动之后,在接收到报文之前,所述接收单元进一步用于:
[0048]调用所述第二类核对物理网卡进行初始化操作,并在所述第二类核中注册中断处理函数;其中,所述中断处理函数是虚拟网卡驱动中用于报文接收的函数。
[0049]较佳的,当接收到报文时,调用第一类核判断所述报文的类型,并基于报文的类型,通过所述第一类核将所述报文发送至与所述报文的类型匹配的核所对应的存储空间中时,所述接收单元用于:
[0050]当接收到报文时,调用第一类核判断所述报文的类型,若所述报文的类型为控制面报文,则通过所述第一类核将所述报文发送至所述第二类核所对应的存储空间中,若所述报文的类型为数据面报文,则通过所述第一类核将所述报文发送至所述第三类核所对应的存储空间中。
[0051]较佳的,若所述报文的类型为控制面报文,则通过所述第一类核将所述报文发送至所述第二类核所对应的存储空间中时,所述接收单元用于:
[0052]若所述报文的类型为控制面报文,则通过所述第一类核将所述报文直接发送至所述第二类核所对应的存储空间中;
[0053]若所述报文的类型为数据面报文,则通过所述第一类核将所述报文发送至所述第三类核所对应的存储空间中时,所述接收单元用于:
[0054]若所述报文的类型为数据面报文,则通过所述第一类核根据五元组信息计算哈希HASH值,并基于所述HASH值将所述报文发送至所述第三类核中对
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1