[發明專利]一種數據處理方法及系統以及相關設備有效
| 申請號: | 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.szxzyx.cn/pat/books/201010150286.3/2.html,轉載請聲明來源鉆瓜專利網。





