[發(fā)明專利]使用通用修改指令來實現(xiàn)分組的靈活修改的方法及其裝置有效
| 申請?zhí)枺?/td> | 201510272670.3 | 申請日: | 2015-05-25 |
| 公開(公告)號: | CN105282136B | 公開(公告)日: | 2020-05-05 |
| 發(fā)明(設計)人: | C·辛格;T·丹尼爾;G·施密特;S·帕特爾 | 申請(專利權)人: | 凱為有限責任公司 |
| 主分類號: | H04L29/06 | 分類號: | H04L29/06 |
| 代理公司: | 北京市金杜律師事務所 11256 | 代理人: | 王茂華;董典紅 |
| 地址: | 美國加利*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 使用 通用 修改 指令 實現(xiàn) 分組 靈活 方法 及其 裝置 | ||
本公開涉及使用通用修改指令來實現(xiàn)分組的靈活修改的方法及其裝置。用于修改分組報頭的裝置的實施例涉及通過向經(jīng)一般化的協(xié)議報頭應用命令來對分組進行可編程修改。以該協(xié)議特有的通用格式表示傳入的分組的每個協(xié)議報頭以實現(xiàn)對分組報頭的修改。檢測從協(xié)議報頭的缺失字段,并且將協(xié)議報頭擴展成最大大小,使得協(xié)議報頭包含該協(xié)議的所有可能字段、包括缺失字段。無論協(xié)議報頭對應于協(xié)議的哪個變體,字段中的每個字段都具有相同偏移。修改使用向擴展的協(xié)議報頭應用的命令集合。所有命令因此通用,因為這些命令獨立于傳入的報頭(例如大小和協(xié)議)。
技術領域
本發(fā)明涉及分組報頭修改。更具體地,本發(fā)明涉及一種使用通用修改指令來實現(xiàn)分組的靈活修改的方法及其裝置。
背景技術
網(wǎng)絡分組經(jīng)由因特網(wǎng)使用的協(xié)議、比如傳輸控制協(xié)議/網(wǎng)際協(xié)議/以太網(wǎng)協(xié)議(TCP/IP/以太網(wǎng))承載數(shù)據(jù)。典型交換機能夠在向目的地或者向另一交換機發(fā)送出分組之前修改傳入的分組的各種字段。出于各種原因而修改傳入的分組,比如分組將被轉發(fā)到何處、目的地支持的協(xié)議、分組的優(yōu)先級、協(xié)議報頭的傳入的格式等。由于網(wǎng)絡協(xié)議正在演變,協(xié)議報頭的一個或者多個字段可以是可任選的,這使交換機的硬件變復雜,因為在協(xié)議報頭內的給定的字段可能不總是處于固定的偏移。
在分組的修改期間,現(xiàn)有技術的交換機線性地處理分組中的每個協(xié)議層。這樣的處理會產生與網(wǎng)絡有關的性能問題,包括時延,這可能使實現(xiàn)方式過度提供處理資源。
發(fā)明內容
用于修改分組報頭的裝置的實施例涉及通過向經(jīng)一般化的協(xié)議報頭應用命令來對分組進行可編程修改。以該協(xié)議特有的通用格式表示傳入的分組的每個協(xié)議報頭以實現(xiàn)對分組報頭的修改。檢測從協(xié)議報頭的缺失字段,并且將協(xié)議報頭擴展成最大大小,使得協(xié)議報頭包含該協(xié)議的所有可能字段、包括缺失字段。無論協(xié)議報頭對應于協(xié)議的哪個變體,字段中的每個字段都具有相同偏移。修改使用向擴展的協(xié)議報頭應用的命令集合。所有命令因此通用,因為這些命令獨立于傳入的報頭(例如大小和協(xié)議)。
在一個方面中,提供一種網(wǎng)絡設備的重寫引擎的方法。該方法包括根據(jù)用于分組的每個協(xié)議報頭的通用格式來使該協(xié)議報頭一般化。通用格式包括協(xié)議的所有可能字段。這樣,無論協(xié)議報頭對應于協(xié)議的哪個變體,字段中的每個字段都具有相同偏移。每個經(jīng)一般化的協(xié)議報頭包括位矢量。位矢量包括針對經(jīng)一般化的協(xié)議報頭的每個字節(jié)的每字節(jié)的位。位矢量包括針對無效字段而被標注為0的位和針對有效字段而被標注為1的位。這里,無效字段是在接收的分組的協(xié)議報頭中不存在的字段,而有效字段是在接收的分組的協(xié)議報頭中存在的字段。
該方法也包括使用來自在網(wǎng)絡交換機的存儲器中存儲的通用命令集合的至少一個命令來修改至少一個經(jīng)一般化的協(xié)議報頭。至少一個經(jīng)一般化的協(xié)議報頭的修改是基于網(wǎng)絡交換機的傳出端口的出口端口類型。至少一個經(jīng)一般化的協(xié)議報頭的修改造成位矢量被更新。在一些實施例中,該方法也包括對位矢量和更新的位矢量執(zhí)行XOR操作以確定多少位被改變。
由于通用命令集合被用于報頭修改,而不管傳入的分組的報頭如何,所以通用命令集合可以被用來修改協(xié)議的第一變體的分組報頭和修改協(xié)議的第二變體的分組報頭。相似地,通用命令集合可以被用來修改協(xié)議的第一變體的分組報頭和修改協(xié)議的第二變體的分組報頭。
在另一方面中,提供一種網(wǎng)絡交換機的方法。該方法包括在網(wǎng)絡交換機的存儲器中維護通用命令集合。在一些實施例中,在通用命令集合中的每個通用命令表現(xiàn)為軟件編程的微代碼。
在一些實施例中,通用命令集合包括刪除命令,其中刪除命令的參數(shù)包括起始Start和大小Size。刪除命令通過將位矢量中的與經(jīng)一般化的協(xié)議報頭內的從Start定位起的Size個字節(jié)對應的位標注為零來刪除這些字節(jié)。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于凱為有限責任公司,未經(jīng)凱為有限責任公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510272670.3/2.html,轉載請聲明來源鉆瓜專利網(wǎng)。





