[發明專利]一種報文處理方法和裝置在審
| 申請號: | 201410411942.9 | 申請日: | 2014-08-20 |
| 公開(公告)號: | CN104184729A | 公開(公告)日: | 2014-12-03 |
| 發明(設計)人: | 李華生 | 申請(專利權)人: | 新華三技術有限公司 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06;H04L12/70 |
| 代理公司: | 北京博思佳知識產權代理有限公司 11415 | 代理人: | 林祥 |
| 地址: | 310052 浙*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 報文 處理 方法 裝置 | ||
本發明提出一種報文處理方法,應用于網絡設備,所述方法包括:為本地每臺虛擬機分別創建連接池;將隸屬于同一臺虛擬機的連接歸類到為該虛擬機創建的連接池中;當本地任一虛擬機發送或接收報文時,基于發送或接收報文的連接控制信息,在所述連接池中匹配對應的連接,并通過匹配到的連接發送或接收該報文。通過本發明可以提高對報文的處理效率。
技術領域
本發明涉及通信技術領域,尤其涉及一種報文處理方法和裝置。
背景技術
請參見圖1,網絡協議棧作為一個基礎功能組件,可以為分布式設備上的各節點之間提供通信服務。其中所述節點,對應于一個CPU系統,通常分布式設備上的一塊業務板上可存在一個或者多個節點。
當分布式設備支持虛擬化技術后,上述通信過程則發生在節點上的虛擬機上。在虛擬化技術中,各虛擬機之間的通信互相隔離,虛擬機之間的通信需要由網絡協議棧提供有連接、可靠、保序的傳輸機制,該機制的最終實現依賴于網絡協議棧的傳輸層。
在非虛擬化的條件下,傳輸層報文頭中通常包括傳輸序號、消息類型等信息。而在虛擬化的條件下,傳輸層報頭中除了傳輸序號、消息類型等信息以外,報文頭中還包括虛擬機ID。
請參見圖2,為了實現虛擬機之間的通信互相隔離,所有虛擬機在發送報文時,都從自己的用戶態進入協議棧的傳輸層,為了區分不同的虛擬機的每個報文,每個報文在協議棧的傳輸層進行匯聚時攜帶自身的虛擬機ID;在接收報文時,所有虛擬機的報文都從節點的物理層。網絡層進入協議棧的傳輸層,在傳輸層統一對這些報文進行分發,根據報文中不同的虛擬機ID上送到不同的虛擬機的應用程序中。
然而,由于物理層、網絡層是無連接的、不可靠的,并且對虛擬化不感知。當虛擬化以后,傳輸層維護的連接數將于虛擬機的個數呈倍數關系。當系統支持大量虛擬機后,任一虛擬機發送或者接收報文時,都需要遍歷所有虛擬機的全部連接,才可以匹配到自身的指定連接,報文的處理效率低下。
發明內容
有鑒于此,本發明提出一種報文處理方法,應用于網絡設備,所述網絡設備上被預先配置了一臺或多臺虛擬機,所述方法包括:
為本地每臺虛擬機分別創建連接池;
將隸屬于同一臺虛擬機的連接歸類到為該虛擬機創建的連接池中;
當本地任一虛擬機發送或接收報文時,基于發送或接收報文的連接控制信息,在所述連接池中匹配對應的連接,并通過匹配到的連接發送或接收該報文。
優選的,所述將隸屬于同一臺虛擬機的連接歸類到為該虛擬機創建的連接池中包括:
為發送的報文創建連接,并為該連接分配連接控制信息;
獲取所述報文中的虛擬機ID;
根據該虛擬機的ID查找已創建的連接池;
將為所述報文創建的連接添加到查找到的連接池中。
優選的,所述連接控制信息包括:本地端口號以及對端端口號;
當將隸屬于同一臺虛擬機的連接歸類到為該虛擬機創建的連接池中后,所述方法還包括:
以連接池中各連接的本地端口號和遠端端口為參數進行hash計算;
以計算出的hash值作為查找關鍵字對各連接進行分組。
優選的,所述基于發送或者接收報文的連接控制信息,在所述連接池中匹配對應的連接包括:
根據該報文所在虛擬機的ID查找連接池;
以該報文中的本地端口號和對端端口號為參數進行hash計算;
根據計算出的hash值在查找到的連接池中查找連接分組;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于新華三技術有限公司,未經新華三技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410411942.9/2.html,轉載請聲明來源鉆瓜專利網。





