1.一種報(bào)文處理方法,其特征在于,包括:
轉(zhuǎn)發(fā)設(shè)備forwarding element通過(guò)入端口接收?qǐng)?bào)文;
所述forwarding element確定第一偏移offset、第一長(zhǎng)度length和第一表的標(biāo)識(shí);
所述forwarding element根據(jù)所述第一offset和所述第一length確定第一關(guān)鍵字key,根據(jù)所述第一key查找所述第一表,確定第一指令instruction;以及
所述forwarding element根據(jù)所述第一instruction處理所述報(bào)文。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述forwarding element根據(jù)所述第一offset和所述第一length確定所述第一key包括:
所述forwarding element獲取所述報(bào)文中的第一數(shù)據(jù)段data segment,所述第一data segment的起始位置根據(jù)所述第一offset確定,所述第一data segment的長(zhǎng)度為所述第一length;以及
所述forwarding element確定所述第一data segment為所述第一key。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述forwarding element根據(jù)所述第一offset和所述第一length確定所述第一key包括:
所述forwarding element獲取中間數(shù)據(jù)metedata中的第二data segment,所述第二data segment的起始位置根據(jù)所述第一offset確定,所述第二data segment的長(zhǎng)度為所述第一length;以及
所述forwarding element確定所述第二data segment為所述第一key。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,
所述metedata存儲(chǔ)于所述forwarding element的寄存器registers;或者
所述metedata存儲(chǔ)于所述forwarding element的存儲(chǔ)器memory。
5.根據(jù)權(quán)利要求1至4中任一所述的方法,其特征在于,
所述第一instruction用于指示所述forwarding element執(zhí)行操作,所述操作包括下述操作中的至少一個(gè):修改所述報(bào)文、計(jì)算所述報(bào)文的校驗(yàn)和checksum、寫metedata、讀metedata、計(jì)數(shù)器更新counter update、對(duì)所述報(bào)文進(jìn)行承諾訪問(wèn)速率CAR處理,丟棄所述報(bào)文,發(fā)送所述報(bào)文和修改所述報(bào)文的基礎(chǔ)偏移base offset。
6.根據(jù)權(quán)利要求1至4中任一所述的方法,其特征在于,
所述forwarding element根據(jù)所述第一指令處理所述報(bào)文包括:
所述forwarding element根據(jù)所述第一表確定所述報(bào)文的base offset、第二offset、第二length和第二表的標(biāo)識(shí),所述報(bào)文的base offset、所述第二offset、所述第二length和所述第二表的標(biāo)識(shí)對(duì)應(yīng)所述第一key;
所述forwarding element根據(jù)所述報(bào)文的base offset、所述第二offset和所述第二length確定第二key,根據(jù)所述第二key查找所述第二表,確定第二instruction;以及
所述forwarding element根據(jù)所述第二instruction處理所述報(bào)文。
7.根據(jù)權(quán)利要求1至6中任一所述的方法,其特征在于,
所述forwarding element是路由器、交換機(jī)、防火墻或者負(fù)載均衡器。
8.一種forwarding element,其特征在于,包括:
接收電路,用于通過(guò)入端口接收?qǐng)?bào)文;
查找單元,用于確定第一offset、第一長(zhǎng)度length和第一表的標(biāo)識(shí);
確定單元,用于根據(jù)所述第一offset和所述第一length確定第一key,根據(jù)所述第一key查找所述第一表,確定第一instruction;以及
處理單元,用于根據(jù)所述第一instruction處理所述報(bào)文。
9.根據(jù)權(quán)利要求8所述的forwarding element,其特征在于,所述查找單元用于:
獲取所述報(bào)文中的第一data segment,所述第一data segment的起始位置根據(jù)所述第一offset確定,所述第一data segment的長(zhǎng)度為所述第一length;以及
確定所述第一data segment為所述第一key。
10.根據(jù)權(quán)利要求8所述的forwarding element,其特征在于,所述查找單元用于:
獲取metedata中的第二data segment,所述第二data segment的起始位置根據(jù)所述第一offset確定,所述第二data segment的長(zhǎng)度為所述第一length;以及
確定所述第二data segment為所述第一key。
11.根據(jù)權(quán)利要求10所述的forwarding element,其特征在于,還包括registers或者memory;
所述metedata存儲(chǔ)于所述registers或者所述memory。
12.根據(jù)權(quán)利要求8至11中任一所述的forwarding element,其特征在于,
所述第一instruction用于指示所述forwarding element執(zhí)行操作,所述操作包括下述操作中的至少一個(gè):修改所述報(bào)文、計(jì)算所述報(bào)文的checksum、寫metedata、讀metedata、counter update、對(duì)所述報(bào)文進(jìn)行CAR處理,丟棄所述報(bào)文,發(fā)送所述報(bào)文和修改所述報(bào)文的base offset。
13.根據(jù)權(quán)利要求8至11中任一所述的forwarding element,其特征在于,所述處理單元用于:
根據(jù)所述第一表確定所述報(bào)文的base offset、第二offset、第二length和第二表的標(biāo)識(shí),所述報(bào)文的base offset、所述第二offset、所述第二length和所述第二表的標(biāo)識(shí)對(duì)應(yīng)所述第一key;
根據(jù)所述報(bào)文的base offset、所述第二offset和所述第二length確定第二key,根據(jù)所述第二key查找所述第二表,確定第二instruction;以及
根據(jù)所述第二instruction處理所述報(bào)文。
14.根據(jù)權(quán)利要求8至13中任一所述的forwarding element,其特征在于,
所述forwarding element是路由器、交換機(jī)、防火墻或者負(fù)載均衡器。