[发明专利]一种数据处理方法及系统以及相关设备有效
申请号: | 201010150286.3 | 申请日: | 2010-04-15 |
公开(公告)号: | CN101840328A | 公开(公告)日: | 2010-09-22 |
发明(设计)人: | 支凌云;厉林寒;宋菲;宁佐林 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 彭愿洁;李文红 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据处理 方法 系统 以及 相关 设备 | ||
技术领域
本发明涉及数据处理领域,尤其涉及一种数据处理方法及系统以及相关设备。
背景技术
随着通信网络日益复杂,各种新型业务不断涌现,这就对网络业务流量的控制能力和网络安全提出了更高的要求,做为网络系统中的核心——通信处理器面临着更大的挑战,多核通信处理器为了解决高带宽的需求应运而生。
多核通信处理器在通信过程中存在多个技术难点,保序就是其中之一。多个处理器是并行处理各种数据包,但是对于同一个数据流中的数据包需要按照进来的顺序分发出去,而每个处理器之间处理数据包的延迟通常情况下都是不一致的,这样会导致先到的数据包可能晚处理完,而晚到的数据包有可能先处理完成,则必然会打乱数据包的顺序,影响真实的业务流。
多核通信处理器的通信过程中有一种模式称之为管道(PIPELINE)模式,在该模式下,一个数据包的处理需要多个处理器共同参与,每个处理器处理数据包的不同阶段,最终完成输出,由于一个数据流中的数据包需要多个阶段的处理才能完成输出,因此在每个处理阶段切换的过程中,从前一阶段的出口到下一阶段的入口也必须保证原先的顺序。
现有技术中的PIPELINE模式下包的保序通过如下方式实现:
请参阅图1,现有技术中采用临界区轮询模式,各处理器按顺序执行数据包的“读、处理、写”的操作,由图1可以看出,当处理器0未完成“写”操作时,即使处理器1已经完成了处理,也必须等待,同理,后续的各处理器也会进行相应的等待,最终使得输出的数据包能够保序。
但是,在上述的现有技术中,由于各处理器可能会有大量的时间在等待其前续处理器完成操作,因此影响了处理器的处理效率。
发明内容
本发明实施例提供了一种数据处理方法及系统以及相关设备,能够提高处理器的处理效率。
本发明实施例提供的数据处理方法,包括:对接收到的同一数据流中的各数据包进行顺序存储;接收各处理器发送的取包命令;根据预置的调度规则从存储的数据包中为各处理器分别选择数据包进行处理;接收各处理器发送的标签切换命令,所述标签切换命令用以指示所述处理器已完成当前阶段的处理;按照先进先出的顺序对处理后的数据包进行标签切换,当标签切换完成之后,根据后续处理器发送的取包命令将所述处理后的数据包提供给后续处理器进行处理直至处理完成。
本发明实施例提供的数据处理方法,包括:向包保序POE模块发送取包命令;从所述POE模块反馈的数据包缓存地址中获取相应的数据包进行处理;当对所述数据包处理完成之后,向所述POE模块发送标签切换命令并执行其他业务处理,所述标签切换命令用以指示所述处理器已完成当前阶段的处理。
本发明实施例提供的包保序模块,包括:存储单元,用于对接收到的同一数据流中的各数据包进行顺序存储;取包命令接收单元,用于接收各处理器发送的取包命令;分发单元,用于根据预置的调度规则从存储的数据包中为各处理器分别选择数据包进行处理;切换命令接收单元,用于接收各处理器发送的标签切换命令,所述标签切换命令用以指示所述处理器已完成当前阶段的处理;标签切换单元,用于按照先进先出的顺序对处理后的数据包进行标签切换;处理单元,用于当标签切换完成之后,根据后续处理器发送的取包命令将所述处理后的数据包提供给后续处理器进行处理直至处理完成。
本发明实施例提供的处理器,包括:取包命令发送单元,用于向包保序POE模块发送取包命令;数据包处理单元,用于从所述POE模块反馈的数据包缓存地址中获取相应的数据包进行处理;切换命令发送单元,用于当对所述数据包处理完成之后,向所述POE模块发送标签切换命令,所述标签切换命令用以指示所述处理器已完成当前阶段的处理;业务执行单元,用于在切换命令发送单元发送标签切换命令的同时执行其他业务处理。
本发明实施例提供的数据处理系统,包括包保序模块,以及处理器。
从以上技术方案可以看出,本发明实施例具有以下优点:
本发明实施例中,包保序(POE,Packet Order Enforce)模块在处理器完成数据包的处理之后会从处理器接收到标签切换命令,则POE模块可以按照先进先出(FIFO,First Input First Output)的顺序执行标签切换,因此能够实现包保序,而同时,处理器只需要执行取包、处理、发送标签切换命令的操作,当处理器发送了标签切换命令之后,后续的操作由POE模块进行,则处理器无需等待其他处理器的处理结果,而可以执行其他的业务流程,因此减少了处理器的等待时间,提高了处理器的处理效率。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010150286.3/2.html,转载请声明来源钻瓜专利网。