两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

允許報(bào)頭層的擴(kuò)展和塌縮以實(shí)現(xiàn)靈活修改的方法及其裝置的制造方法

文檔序號(hào):9527505閱讀:426來(lái)源:國(guó)知局
允許報(bào)頭層的擴(kuò)展和塌縮以實(shí)現(xiàn)靈活修改的方法及其裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及分組報(bào)頭修改。更具體地,本發(fā)明涉及一種使用位矢量來(lái)允許分組內(nèi) 的報(bào)頭層的擴(kuò)展和塌縮用于實(shí)現(xiàn)靈活修改的方法及其裝置。
【背景技術(shù)】
[0002] 網(wǎng)絡(luò)分組經(jīng)由因特網(wǎng)使用的協(xié)議、比如傳輸控制協(xié)議/網(wǎng)際協(xié)議/以太網(wǎng)協(xié)議 (TCP/IP/以太網(wǎng))承載數(shù)據(jù)。典型交換機(jī)能夠在向目的地或者向另一交換機(jī)發(fā)送出分組之 前修改傳入的分組的各種字段。出于各種原因而修改傳入的分組,比如分組將被轉(zhuǎn)發(fā)到何 處、目的地支持的協(xié)議、分組的優(yōu)先級(jí)、協(xié)議報(bào)頭的傳入格式等。由于網(wǎng)絡(luò)協(xié)議正在演變,協(xié) 議報(bào)頭的一個(gè)或者多個(gè)字段可以是可任選的,這使交換機(jī)的硬件變復(fù)雜,因?yàn)樵趨f(xié)議報(bào)頭 內(nèi)的給定的字段可能不總是處于固定的偏移。
[0003] 在分組的修改期間,現(xiàn)有技術(shù)的交換機(jī)線(xiàn)性地處理分組中的每個(gè)協(xié)議層。這樣的 處理會(huì)產(chǎn)生與網(wǎng)絡(luò)有關(guān)的性能問(wèn)題,包括時(shí)延,這可能使實(shí)現(xiàn)方式過(guò)度提供處理資源。

【發(fā)明內(nèi)容】

[0004] 用于修改分組報(bào)頭的裝置的實(shí)施例涉及使用位矢量來(lái)允許分組內(nèi)的協(xié)議報(bào)頭的 擴(kuò)展和塌縮用于實(shí)現(xiàn)靈活修改。重寫(xiě)引擎將每個(gè)協(xié)議報(bào)頭擴(kuò)展成通用格式并且應(yīng)用各種命 令來(lái)修改經(jīng)一般化的協(xié)議報(bào)頭。重寫(xiě)引擎針對(duì)經(jīng)一般化的協(xié)議報(bào)頭維護(hù)位矢量,其中在位 矢量中的每個(gè)位表示經(jīng)一般化的協(xié)議報(bào)頭的字節(jié)。在位矢量中被標(biāo)注為〇的位對(duì)應(yīng)于無(wú)效 字節(jié),而在位矢量中被標(biāo)注為1的位對(duì)應(yīng)于有效字節(jié)。重寫(xiě)引擎使用位矢量來(lái)去除在已經(jīng) 對(duì)經(jīng)一般化的協(xié)議報(bào)頭操作所有命令之后的所有無(wú)效字節(jié)以由此形成新協(xié)議報(bào)頭。
[0005] 在一個(gè)方面中,提供一種重寫(xiě)引擎的方法。該方法包括針對(duì)經(jīng)一般化的協(xié)議報(bào)頭 維護(hù)位矢量。經(jīng)一般化的協(xié)議報(bào)頭是被擴(kuò)展成通用格式的分組的協(xié)議報(bào)頭。通用格式包括 協(xié)議的所有可能字段。無(wú)論協(xié)議報(bào)頭對(duì)應(yīng)于協(xié)議的哪個(gè)變體,字段中的每個(gè)字段都具有相 同偏移。位矢量包括針對(duì)經(jīng)一般化的協(xié)議報(bào)頭的每個(gè)字節(jié)的每字節(jié)的位。
[0006] 該方法也包括基于對(duì)至少一個(gè)經(jīng)一般化的協(xié)議報(bào)頭的修改來(lái)更新位矢量。在一些 實(shí)施例中,修改使用來(lái)自在網(wǎng)絡(luò)交換機(jī)的存儲(chǔ)器中存儲(chǔ)的通用命令集合的至少一個(gè)命令來(lái) 修改至少一個(gè)經(jīng)一般化的協(xié)議報(bào)頭。
[0007] 該方法也包括使用經(jīng)更新的位矢量來(lái)壓縮至少一個(gè)經(jīng)一般化的協(xié)議報(bào)頭。在一些 實(shí)施例中,在使用經(jīng)更新的位矢量之前,對(duì)位矢量和經(jīng)更新的位矢量執(zhí)行X0R操作以確定 多少位被改變,這允許重寫(xiě)引擎考慮被刪除和添加的字節(jié)。
[0008] 在另一方面中,提供一種網(wǎng)絡(luò)交換機(jī)的方法。該方法包括在網(wǎng)絡(luò)交換機(jī)的傳入端 口處接收分組并且根據(jù)用于分組的每個(gè)協(xié)議報(bào)頭的通用格式來(lái)使該協(xié)議報(bào)頭一般化。檢測(cè) 從分組的協(xié)議報(bào)頭的缺失字段?;跈z測(cè),通過(guò)包括缺失字段來(lái)將協(xié)議報(bào)頭擴(kuò)展成通用格 式。
[0009] 該方法也包括針對(duì)每個(gè)經(jīng)一般化的協(xié)議報(bào)頭維護(hù)位矢量。位矢量包括針對(duì)無(wú)效字 段而被標(biāo)注為0的位和針對(duì)有效字段而被標(biāo)注為1的位
[0010] 該方法也包括:修改經(jīng)一般化的協(xié)議報(bào)頭中的至少一個(gè)經(jīng)一般化的協(xié)議報(bào)頭,由 此更新位矢量。在一些實(shí)施例中,修改使用來(lái)自在網(wǎng)絡(luò)交換機(jī)的存儲(chǔ)器中存儲(chǔ)的通用命令 集合的至少一個(gè)命令來(lái)修改至少一個(gè)經(jīng)一般化的協(xié)議報(bào)頭。在一些實(shí)施例中,對(duì)至少一個(gè) 經(jīng)一般化的協(xié)議報(bào)頭的修改是基于網(wǎng)絡(luò)交換機(jī)的傳出端口的出口端口類(lèi)型。
[0011] 該方法也包括使經(jīng)更新的位矢量塌縮。在一些實(shí)施例中,通過(guò)移位經(jīng)更新的位矢 量以去除在經(jīng)更新的位矢量中被標(biāo)注為0的每個(gè)位來(lái)使經(jīng)更新的位矢量塌縮。
[0012] 該方法也包括基于經(jīng)塌縮的位矢量形成緊湊協(xié)議報(bào)頭。經(jīng)由網(wǎng)絡(luò)交換機(jī)的傳出端 口發(fā)射至少具有緊湊協(xié)議報(bào)頭的分組。在一些實(shí)施例中,在發(fā)射分組之前,對(duì)針對(duì)執(zhí)行的所 有操作而添加或者刪除的字節(jié)的數(shù)目進(jìn)行計(jì)數(shù)。
[0013] 在又一方面中,提供一種網(wǎng)絡(luò)交換機(jī)。網(wǎng)絡(luò)交換機(jī)包括:輸入端口,用于接收分組; 以及存儲(chǔ)器,存儲(chǔ)通用命令集合。通用命令集合被用于報(bào)頭修改,而不管傳入報(bào)頭如何。在 一些實(shí)施例中,通用命令集合包括刪除命令、復(fù)制命令和移動(dòng)命令。
[0014] 網(wǎng)絡(luò)交換機(jī)也包括重寫(xiě)引擎。重寫(xiě)引擎使用位矢量以允許分組的協(xié)議報(bào)頭的擴(kuò)展 和塌縮,由此通過(guò)使用通用命令集合來(lái)實(shí)現(xiàn)分組的靈活修改。
[0015] 在一些實(shí)施例中,協(xié)議報(bào)頭中的每個(gè)協(xié)議報(bào)頭根據(jù)對(duì)應(yīng)協(xié)議特有的由軟件定義的 映射中的一個(gè)映射被一般化。在一些實(shí)施例中,由軟件定義的映射被存儲(chǔ)在存儲(chǔ)器中。
[0016] 每個(gè)經(jīng)一般化的協(xié)議報(bào)頭包括位矢量,位矢量具有針對(duì)無(wú)效字段而被標(biāo)注為0的 位和針對(duì)有效字段而被標(biāo)注為1的位。在一些實(shí)施例中,重寫(xiě)引擎在經(jīng)一般化的協(xié)議報(bào)頭 被修改之后更新位矢量。在一些實(shí)施例中,重寫(xiě)引擎去除在經(jīng)更新的位矢量中被標(biāo)注為〇 的每個(gè)位以使經(jīng)更新的位矢量塌縮。新報(bào)頭基于經(jīng)塌縮的位矢量而形成。
[0017] 在一些實(shí)施例中,網(wǎng)絡(luò)交換機(jī)也包括用于發(fā)射具有新報(bào)頭的分組的傳出端口。
[0018] 在又一方面中,提供一種網(wǎng)絡(luò)交換機(jī)。網(wǎng)絡(luò)交換機(jī)包括用于接收分組的輸入端口, 其中分組包括正文和協(xié)議報(bào)頭。網(wǎng)絡(luò)交換機(jī)也包括用于發(fā)射經(jīng)修改的分組的輸出端口。網(wǎng) 絡(luò)交換機(jī)也包括用于存儲(chǔ)協(xié)議的通用格式的由軟件定義的映射的集合和通用修改命令集 合的存儲(chǔ)器。通常,通用修改命令集合被用于報(bào)頭修改,而不管傳入報(bào)頭如何。
[0019] 網(wǎng)絡(luò)交換機(jī)也包括重寫(xiě)引擎。重寫(xiě)引擎基于來(lái)自由軟件定義的映射的集合的由軟 件定義的映射,將協(xié)議棧的每個(gè)協(xié)議報(bào)頭轉(zhuǎn)換成通用格式,并且針對(duì)每個(gè)經(jīng)轉(zhuǎn)換的協(xié)議報(bào) 頭維護(hù)位矢量。位矢量包括針對(duì)經(jīng)轉(zhuǎn)換的協(xié)議報(bào)頭的每個(gè)字節(jié)的每字節(jié)的位。位矢量包括 針對(duì)經(jīng)轉(zhuǎn)換的協(xié)議報(bào)頭的無(wú)效字段而被標(biāo)注為0的位和針對(duì)經(jīng)轉(zhuǎn)換的協(xié)議報(bào)頭的有效字 段而被標(biāo)注為1的位。重寫(xiě)引擎使用通用修改命令集合來(lái)修改每個(gè)經(jīng)轉(zhuǎn)換的協(xié)議報(bào)頭,更 新在位矢量之后的每個(gè)位矢量,使每個(gè)經(jīng)更新的位矢量塌縮以由此形成新協(xié)議棧,并且向 新協(xié)議棧附著正文以經(jīng)由輸出端口發(fā)射。
【附圖說(shuō)明】
[0020] 前文將從如附圖中所示本發(fā)明的示例實(shí)施例的以下更具體描述中變清楚,在附圖 中,相似標(biāo)號(hào)貫穿不同視圖指代相同部分。附圖未必按比例、代之以著重于圖示本發(fā)明的實(shí) 施例。
[0021] 圖1圖示分組的示例協(xié)議層組合。
[0022] 圖2圖示根據(jù)本發(fā)明的一些實(shí)施例的本地協(xié)議表的示例結(jié)構(gòu)。
[0023] 圖3圖示根據(jù)本發(fā)明的一些實(shí)施例的網(wǎng)絡(luò)交換機(jī)的示例方法。
[0024] 圖4圖示根據(jù)本發(fā)明的一些實(shí)施例的網(wǎng)絡(luò)交換機(jī)的另一示例方法。
[0025] 圖5圖示根據(jù)本發(fā)明的一些實(shí)施例的將傳入的分組的層進(jìn)行報(bào)頭擴(kuò)展成通用格 式的圖。
[0026] 圖6A-6B圖不根據(jù)本發(fā)明的一些實(shí)施例的協(xié)議報(bào)頭的不例一般化。
[0027] 圖7A-7C圖不根據(jù)本發(fā)明的一些實(shí)施例的協(xié)議報(bào)頭的另一不例一般化。
[0028] 圖8A-8C圖不根據(jù)本發(fā)明的一些實(shí)施例的協(xié)議報(bào)頭的又一不例一般化。
[0029] 圖9A-9F圖示根據(jù)本發(fā)明的一些實(shí)施例的協(xié)議報(bào)頭的示例修改。
[0030] 圖10A-10E圖示根據(jù)本發(fā)明的一些實(shí)施例的協(xié)議報(bào)頭的另一示例修改。
[0031] 圖11圖示根據(jù)本發(fā)明的一些實(shí)施例的重寫(xiě)引擎的方法。
[0032] 圖12圖示根據(jù)本發(fā)明的一些實(shí)施例的網(wǎng)絡(luò)交換機(jī)的又一方法。
[0033] 圖13圖示根據(jù)本發(fā)明的一些實(shí)施例的網(wǎng)絡(luò)交換機(jī)的又一方法。
[0034] 圖14圖示根據(jù)本發(fā)明的一些實(shí)施例的網(wǎng)絡(luò)交換機(jī)的又一方法。
[0035] 圖15圖示根據(jù)本發(fā)明的一些實(shí)施例的網(wǎng)絡(luò)交換機(jī)的又一方法。
[0036] 圖16圖示根據(jù)本發(fā)明的一些實(shí)施例的重寫(xiě)引擎的另一方法。
[0037] 圖17圖示根據(jù)本發(fā)明的一些實(shí)施例的網(wǎng)絡(luò)交換機(jī)的又一方法。
[0038] 圖18圖示根據(jù)本發(fā)明的一些實(shí)施例的重寫(xiě)引擎的又一方法。
[0039] 圖19圖示根據(jù)本發(fā)明的一些實(shí)施例的網(wǎng)絡(luò)交換機(jī)的又一方法。
[0040] 圖20圖示根據(jù)本發(fā)明的一些實(shí)施例的層結(jié)構(gòu)的示例圖。
[0041]圖21圖示根據(jù)本發(fā)明的一些實(shí)施例的重寫(xiě)引擎交換機(jī)的又一方法。
[0042] 圖22圖示根據(jù)本發(fā)明的一些實(shí)施例的網(wǎng)絡(luò)交換機(jī)的又一方法。
【具體實(shí)施方式】
[0043] 在以下描述中,出于說(shuō)明的目的而闡述許多細(xì)節(jié)。然而,本領(lǐng)域普通技術(shù)人員將認(rèn) 識(shí)到,可以在不使用這些具體細(xì)節(jié)的情況下實(shí)施本發(fā)明。因此,本發(fā)明并不旨在于限于所示 實(shí)施例,而是將被賦予與這里描述的原理和特征一致的最廣范圍。
[0044] 引言
[0045] 網(wǎng)絡(luò)設(shè)備、比如網(wǎng)絡(luò)交換機(jī)能夠切換/路由網(wǎng)絡(luò)流量。網(wǎng)絡(luò)交換機(jī)包括用于接收 和發(fā)送分組的至少一個(gè)輸入/傳入端口和至少一個(gè)輸出/傳出端口。在一些實(shí)施例中,網(wǎng) 絡(luò)交換機(jī)也包括解析器和重寫(xiě)器。解析器可以包括用于標(biāo)識(shí)網(wǎng)絡(luò)分組的內(nèi)容的一個(gè)或者多 個(gè)解析器引擎,并且重寫(xiě)器可以包括用于在分組從網(wǎng)絡(luò)交換機(jī)被發(fā)送出之前修改它們的一 個(gè)或者多個(gè)重寫(xiě)引擎。解析器引擎和重寫(xiě)引擎是靈活的并且在可編程基礎(chǔ)上操作。
[0046] 網(wǎng)絡(luò)交換機(jī)也包括用于存儲(chǔ)網(wǎng)絡(luò)交換機(jī)使用的數(shù)據(jù)的存儲(chǔ)器。例如存儲(chǔ)器存儲(chǔ)通 用命令集合。簡(jiǎn)言之,通用命令通常被用來(lái)修改協(xié)議報(bào)頭。對(duì)于另一示例,存儲(chǔ)器也存儲(chǔ)協(xié) 議的通用格式的由軟件定義的映射。簡(jiǎn)言之,根據(jù)對(duì)應(yīng)協(xié)議特有的由軟件定義的映射中的 一個(gè)映射表示每個(gè)協(xié)議報(bào)頭。如將變得清楚的那樣,這些映射可以被用在協(xié)議的不同變體 上以及用在包括新協(xié)議的不同協(xié)議上。對(duì)于又一示例,存儲(chǔ)器也存儲(chǔ)協(xié)議表。簡(jiǎn)言之,協(xié)議 表包括被編程到協(xié)議表中的每個(gè)協(xié)議層組合的每個(gè)協(xié)議層的層信息。對(duì)于又一示例,存儲(chǔ) 器也存儲(chǔ)計(jì)數(shù)器和統(tǒng)計(jì)量。
[0047] 在以太網(wǎng)中,分組包括多個(gè)協(xié)議層。每個(gè)協(xié)議層承載不同信息。公知層的一些示 例是:
[0048] ?以太網(wǎng)
[0049] ·PBB以太網(wǎng)
[0050] · ARP
[0051] · IPV4
[0052] · IPV6
[0053] · MPLS
[0054] · FC0E
[0055] · TCP
[0056] · UDP
[0057] · ICMP
[0058] · IGMP
[0059] · GRE
[0060] · ICMPv6
[0061] · VxLAN
[0062] · TRILL
[0063] · CNM
[0064] 在理論上,協(xié)議層可以按照任何順序出現(xiàn)。然而,這些層的僅一些公知組合出現(xiàn)。 這些層的有效組合的一些示例是:
[0065] ?以太網(wǎng)
[0066] ?以太網(wǎng)、ARP
[0067] ?以太網(wǎng)、CNM
[0068] ?以太網(wǎng)、FCoE
[0069] ?以太網(wǎng)、IPV4
[0070] ?以太網(wǎng)、IPV4、ICMP
[0071] ?以太網(wǎng)、IPV4、IGMP
[0072] 唯一分組標(biāo)識(shí)符
[0073] 在一些實(shí)施例中,網(wǎng)絡(luò)交換機(jī)支持17個(gè)協(xié)議和八個(gè)協(xié)議層。因此有817個(gè)可能協(xié) 議層組合。圖1圖示分組的示例協(xié)議層組合。例如分組可以包括三協(xié)議層組
當(dāng)前第1頁(yè)1 2 3 4 5 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
霍邱县| 赞皇县| 耿马| 千阳县| 蕉岭县| 惠安县| 兴化市| 大姚县| 洞头县| 中方县| 玉门市| 宜章县| 满城县| 栾川县| 上林县| 莱芜市| 潢川县| 乌兰浩特市| 吕梁市| 孟连| 大荔县| 衡阳县| 三门县| 航空| 东方市| 卫辉市| 峡江县| 古蔺县| 宁乡县| 两当县| 建瓯市| 山丹县| 望都县| 安徽省| 那坡县| 花莲市| 称多县| 海南省| 澄江县| 玉林市| 子长县|