欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于第二層多網(wǎng)絡鏈路隧道的協(xié)議的制作方法

文檔序號:7978516閱讀:257來源:國知局
用于第二層多網(wǎng)絡鏈路隧道的協(xié)議的制作方法
【專利摘要】一種用于使用隧道聯(lián)合信息以允許網(wǎng)絡裝置傳輸和接收第二層數(shù)據(jù)包的方法和系統(tǒng)通過多個網(wǎng)絡鏈路在不同的第二層網(wǎng)絡之間提供第二層隧道。第三層數(shù)據(jù)包用于封裝第二層數(shù)據(jù)包。所述隧道聯(lián)合信息包括網(wǎng)絡鏈路標識和隧道序列號。所述網(wǎng)絡鏈路標識用于識別所述一個或多個第三層數(shù)據(jù)包所屬的網(wǎng)絡鏈路和虛擬專用隧道,并且所述隧道序列號用于識別網(wǎng)絡鏈路中的所述一個或多個第三層數(shù)據(jù)包的序列。
【專利說明】用于第二層多網(wǎng)絡鏈路隧道的協(xié)議

【技術領域】
[0001] 本發(fā)明涉及數(shù)據(jù)通信領域。更確切地說,本發(fā)明涉及一種用于使用隧道聯(lián)合信息 (tunnel association information)以允許多個網(wǎng)絡鏈路在第二層數(shù)據(jù)上打開隧道的方法 和設備。

【背景技術】
[0002] 第二層隧道在多個遠距離網(wǎng)絡之間建立隧道網(wǎng)絡以創(chuàng)建虛擬專用網(wǎng)(VPN)。第二 層隧道創(chuàng)建可以通過輸入正確指令以設置隧道接口來手動地完成,或者可以通過在網(wǎng)絡裝 置中輸入服務以協(xié)商正確的隧道接口來自動地完成。
[0003] 第二層隧道協(xié)議(L2TP)(由互聯(lián)網(wǎng)工程任務組公布的標準)是用于支持第二層虛 擬專用網(wǎng)(VPN)的隧道協(xié)議。該隧道協(xié)議無法單獨地提供任何加密或保密性;該隧道協(xié)議 取決于在隧道內(nèi)穿過的加密協(xié)議以提供私密性。IPsec通常用于通過提供保密性、授權和完 整性來保護L2TP數(shù)據(jù)包。這兩個協(xié)議的組合通常稱為L2TP/IPsec。
[0004] 實施L2TP的問題在于性能,因為仍然可用于有效載荷的字節(jié)數(shù)減少。在L2TP/ IPsec下,仍然可用于有效載荷的字節(jié)數(shù)由于多層次的封裝而進一步減少。另外,IPsec設 置和維修起來相對復雜。L2TP或L2TP/IPsec在結合網(wǎng)絡上的實施會進一步減少仍然可用 于有效載荷的字節(jié)數(shù)并且增加設置和維修的復雜性,兩個或兩個以上的邏輯或物理網(wǎng)絡連 接組合在該結合網(wǎng)絡中。
[0005] 有利效果
[0006] 本發(fā)明允許使用隧道聯(lián)合信息,所述隧道聯(lián)合信息在第三層數(shù)據(jù)包中含有網(wǎng)絡鏈 路標識(NLID)和隧道序列號(TSN),以在第三層網(wǎng)絡上提供第二層隧道,同時提高性能并 且與其他第二層隧道方法和系統(tǒng)相比降低復雜性。


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

[0007] 為了解決上述問題,本發(fā)明揭示使用隧道聯(lián)合信息以解決該問題的方法和系統(tǒng)。 根據(jù)本發(fā)明的實施例,在將第二層數(shù)據(jù)包封裝在第三層數(shù)據(jù)包中時,網(wǎng)絡裝置使用隧道聯(lián) 合信息。在將第二層數(shù)據(jù)包從接收到的第三層數(shù)據(jù)包中去封裝時,網(wǎng)絡裝置也使用隧道聯(lián) 合信息。隧道聯(lián)合信息的使用允許第三層數(shù)據(jù)包通過屬于同一 VPN的不同網(wǎng)絡鏈路進行傳 輸和接收。因此,第三層數(shù)據(jù)包可以具有不同的源地址和目標地址并且產(chǎn)生更高的吞吐量 和可靠性。隧道聯(lián)合信息存儲在協(xié)議標頭中。隧道聯(lián)合信息包括網(wǎng)絡鏈路標識和隧道序列 號。網(wǎng)絡鏈路標識用于識別第三層數(shù)據(jù)包所屬的網(wǎng)絡鏈路和虛擬專用隧道。隧道序列號用 于識別網(wǎng)絡鏈路中的所述一個或多個第三層數(shù)據(jù)包的序列。
[0008] 揭示一種由處理引擎、網(wǎng)絡接口、封裝引擎、去封裝引擎、協(xié)議引擎以及存儲系統(tǒng) 組成的系統(tǒng)來解決上述問題。處理引擎由封裝引擎、去封裝引擎和處理引擎組成。封裝引 擎用于將接收到的第二層數(shù)據(jù)包封裝在一個或多個待傳遞的第三層數(shù)據(jù)包中。去封裝引擎 用于將第三層數(shù)據(jù)包去封裝成部分或完整的第二層數(shù)據(jù)包并且從第三層數(shù)據(jù)包中檢索協(xié) 議標頭。加密引擎用于對第二層數(shù)據(jù)包和第三層數(shù)據(jù)包進行加密和解密。協(xié)議引擎用于創(chuàng) 建和檢索含有隧道聯(lián)合信息的協(xié)議標頭。存儲系統(tǒng)用于向處理引擎提供指令并且提供臨時 存儲。

【專利附圖】

【附圖說明】
[0009] 附圖并入本說明書中并構成本說明書的一部分,說明了本發(fā)明的各實施例,并與

【具體實施方式】一起解釋本發(fā)明。在附圖中,
[0010] 圖1是圖示了網(wǎng)絡環(huán)境的網(wǎng)絡圖,其中網(wǎng)絡裝置采用第二層虛擬專用網(wǎng)隧道的示 例性方法,
[0011] 圖2是圖示了一種示例性方法的流程圖,其中當發(fā)送第二層數(shù)據(jù)包時,網(wǎng)絡裝置 采用第二層虛擬專用網(wǎng)隧道,
[0012] 圖3是圖示了一種示例性方法的流程圖,其中當接收第三層數(shù)據(jù)包時,網(wǎng)絡裝置 采用第二層虛擬專用網(wǎng)隧道,
[0013] 圖4是本發(fā)明的示例性互聯(lián)網(wǎng)協(xié)議數(shù)據(jù)包格式,
[0014] 圖5是圖示了一種示例性系統(tǒng)的框圖,其中網(wǎng)絡裝置采用第二層虛擬專用網(wǎng)隧 道,
[0015] 圖6是圖示了網(wǎng)絡連接、網(wǎng)絡鏈路與虛擬專用網(wǎng)隧道之間的關系的框圖。

【具體實施方式】
[0016] 現(xiàn)在下文將參考附圖來更加全面地描述不同實施例,附圖中示出優(yōu)選實施例???以提出許多不同的形式并且所描述的實施例不應被理解為限于本文中所提出的實施例。相 反,這些實施例用以使本發(fā)明全面且完整,且用于將范圍完全傳達給所屬領域的技術人員。 相同數(shù)字始終指代相同元件。
[0017] 圖1圖示了兩個遠距離的第二層網(wǎng)絡如何可以通過實施本發(fā)明的實施例經(jīng)由第 三層網(wǎng)絡連接在一起的網(wǎng)絡環(huán)境。可以采用同一網(wǎng)絡環(huán)境來通過第三層網(wǎng)絡連接三個或三 個以上的遠距離第二層網(wǎng)絡。本發(fā)明中可以采用的第二層網(wǎng)絡協(xié)議包括以太網(wǎng)、令牌環(huán)網(wǎng)、 幀中繼網(wǎng)、PPP、X. 25和ATM。本發(fā)明中可以采用的第三層網(wǎng)絡協(xié)議包括互聯(lián)網(wǎng)協(xié)議(IP)第 4版、IPv6、互聯(lián)網(wǎng)分組交換協(xié)議和可路由協(xié)議組。
[0018] 計算裝置101a、101b和101c連接到開關102上并且處于同一第二層網(wǎng)絡中,以使 得它們可以通過第二層通信協(xié)議彼此通信。計算裝置l〇2a、102b和102c連接到開關106上 并且處于同一第二層網(wǎng)絡中,以使得它們也可以通過第二層通信協(xié)議彼此通信。然而,計算 裝置101a、101b和101c中的任一者都無法通過第二層通信協(xié)議與計算裝置102a、102b和 102c中的任一者直接通信,即使計算裝置101a、101b、101c、102a、102b和102c都使用同一 第二層通信協(xié)議,例如,以太網(wǎng)。這是因為開關102和開關106通過互聯(lián)網(wǎng)104分開。為了 允許計算裝置101a、101b和101c能夠感知計算裝置102a、102b和102c處于同一網(wǎng)絡中, 必須在計算裝置l〇la、101b、101c、102a、102b和102c之間建立虛擬專用網(wǎng)(VPN)。路由器 103和路由器105 -起通過互聯(lián)網(wǎng)104在開關102與開關106之間建立VPN。
[0019] 路由器103通過VPN將第二層數(shù)據(jù)包從開關102經(jīng)由互聯(lián)網(wǎng)104路由到路由器 105上,方式是首先將第二層數(shù)據(jù)包封裝在一個或多個第三層數(shù)據(jù)包中,隨后通過網(wǎng)絡連接 120a、120b和120c中的一者或多者傳遞一個或多個第三層數(shù)據(jù)包。連接的網(wǎng)絡連接120a、 120b和120c分別通過三個網(wǎng)絡接口連接到路由器103上,并且可以使用光纖、以太網(wǎng)、ATM、 幀中繼網(wǎng)、1'1/^1、1? ¥4、1?¥6、無線技術、1丨^、1丨1&?、高速分組接入技術和36--長期演進 技術(LTE)來實施。因此,可以傳送第二層數(shù)據(jù)包的不同部分的一個或多個第三層數(shù)據(jù)包 可以具有不同的第三層源地址和目標地址。如果多個第三層數(shù)據(jù)包用于封裝一個第二層數(shù) 據(jù)包,那么第二層數(shù)據(jù)包分段成多個第三層數(shù)據(jù)包。網(wǎng)絡連接120a、120b和120c可以由相 同或不同的網(wǎng)絡服務供應商提供,以將路由器103連接到互聯(lián)網(wǎng)104上。
[0020] 類似地,網(wǎng)絡連接121a和121b分別通過兩個網(wǎng)絡接口連接到路由器105上,并且 可以使用光纖、以太網(wǎng)、ATM、幀中繼網(wǎng)、T1/E1、IPv4、IPv6、無線技術、Wi-Fi、WiMax、高速分 組接入技術和3GPP長期演進技術(LTE)來實施。網(wǎng)絡連接121a和121b可以由相同或不 同的網(wǎng)絡服務供應商提供,以將路由器105連接到互聯(lián)網(wǎng)104上。
[0021] 網(wǎng)絡連接,例如,由路由器103的天線網(wǎng)絡接口部署的LTE連接,可以含有一個或 多個網(wǎng)絡鏈路。屬于同一 VPN的數(shù)據(jù)包可以由一個或多個網(wǎng)絡連接傳送。屬于同一 VPN的 數(shù)據(jù)包也可以由一個或多個網(wǎng)絡鏈路傳送。網(wǎng)絡連接可以傳送多個VPN隧道。然而,網(wǎng)絡 鏈路僅可以傳送屬于一個VPN隧道的數(shù)據(jù)包。網(wǎng)絡鏈路可以使用面向連接的協(xié)議(例如, TCP)或無連接協(xié)議(例如,UDP)。
[0022] 圖6圖示了網(wǎng)絡連接、網(wǎng)絡鏈路與建立在邏輯網(wǎng)絡120a、120b、120c、121a和121b 中的VPN隧道之間的關系。例如,路由器105與路由器103之間建立有兩個VPN,即VPNa和 VPNb。VPNa通過使用兩個網(wǎng)絡鏈路,即網(wǎng)絡鏈路131a和131b來實施。網(wǎng)絡鏈路131a使用 網(wǎng)絡連接121a的第三層源地址和網(wǎng)絡連接120b的第三層目標地址來傳送屬于VPNa的數(shù) 據(jù)包。網(wǎng)絡鏈路131b也傳送屬于VPNa的數(shù)據(jù)包,但是使用網(wǎng)絡連接121a的第三層源地址 和網(wǎng)絡連接120c的第三層目標地址。例如,當?shù)诙訑?shù)據(jù)包通過VPNa從路由器105傳遞 到路由器103時,所述第二層數(shù)據(jù)包可以分段成兩個第三層數(shù)據(jù)包,所述第三層數(shù)據(jù)包可 以具有相同的第三層源地址和不同的第三層目標地址。
[0023] VPNb通過使用三個網(wǎng)絡鏈路,即網(wǎng)絡鏈路132a、132b和132c來實施。網(wǎng)絡鏈路 132a使用網(wǎng)絡連接121a的第三層源地址和網(wǎng)絡連接120a的第三層目標地址來傳送屬于 VPNb的數(shù)據(jù)包。網(wǎng)絡鏈路132b也傳送屬于VPNb的數(shù)據(jù)包,但是使用網(wǎng)絡連接121b的第三 層源地址和網(wǎng)絡連接120b的第三層目標地址。網(wǎng)絡鏈路132c也傳送屬于VPNb的數(shù)據(jù)包, 但是使用網(wǎng)絡連接121b的第三層源地址和網(wǎng)絡連接120c的第三層目標地址。當多個第二 層數(shù)據(jù)包通過VPNb從路由器105傳遞到路由器103時,所述第二層數(shù)據(jù)包可以通過不同的 網(wǎng)絡鏈路傳送并且因此封裝第二層數(shù)據(jù)包的第三層數(shù)據(jù)包可以具有不同的第三層源地址 和不同的第三層目標地址。
[0024] 具有不同的第三層源地址和不同的第三層目標地址的第三層數(shù)據(jù)包可以封裝屬 于同一隧道的第二層數(shù)據(jù)包有效載荷的原因是利用了第三層數(shù)據(jù)包內(nèi)部的隧道聯(lián)合信息。
[0025] 隧道聯(lián)合信息由一系列位表不并且包含在協(xié)議標頭中。協(xié)議標頭由一系列位組 成。表示協(xié)議標頭的位的數(shù)目根據(jù)將要輸入VPN隧道的信息的本質和信息的數(shù)量而變化。 根據(jù)本發(fā)明各實施例中的一者,隧道聯(lián)合信息可以出于安全的目的進行加密。根據(jù)本發(fā)明 各實施例中的一者,隧道聯(lián)合信息包括網(wǎng)絡鏈路標識(NLID)和隧道序列號(TSN)。NLID用 于識別第三層數(shù)據(jù)包所屬的網(wǎng)絡鏈路。網(wǎng)絡鏈路是使用邏輯網(wǎng)絡建立在兩個網(wǎng)絡節(jié)點之間 的鏈路。
[0026] 由于可以存在使用同一對的第三層源地址和目標地址在兩個網(wǎng)絡裝置之間實施 的多個網(wǎng)絡鏈路,因此表示NLID的位的數(shù)目應足夠長,以避免混淆網(wǎng)絡鏈路的標識。另外, NLID用于允許接收路由器能夠認識到接收到的第三層數(shù)據(jù)包屬于特定的VPN隧道,而不屬 于其他網(wǎng)絡流量。TSN用于協(xié)助接收路由器(例如,路由器105)將屬于網(wǎng)絡鏈路的接收到 的第三層數(shù)據(jù)包重新排序到正確的序列中。TSN由路由器103分配。根據(jù)本發(fā)明的一個實 施例,在網(wǎng)絡鏈路的壽命期間,每一個TSN應該是唯一的。根據(jù)本發(fā)明的一個實施例,當網(wǎng) 絡鏈路的壽命超過時間周期時,TSN可以再次被重新使用。表示TSN的位的數(shù)目應該足夠 長,以避免混淆數(shù)據(jù)包序列。根據(jù)本發(fā)明的一個實施例,用以表示NLID的位的數(shù)目是32個 位。根據(jù)本發(fā)明的一個實施例,用以表示TSN的位的數(shù)目也是32個位。
[0027] 根據(jù)本發(fā)明各實施例中的一者,對于源地址、目標地址或者對于一對源地址和目 標地址,NLID是唯一的。因此,同一 TSN可以重新用于不同的源地址、目標地址或一對源地 址和目標地址。根據(jù)本發(fā)明各實施例中的一者,端口號也是NLID的一部分。
[0028] 互聯(lián)網(wǎng)104由互連的計算機網(wǎng)絡運行的第三層協(xié)議的一個或多個系統(tǒng)組成?;ヂ?lián) 網(wǎng)104的互連計算機網(wǎng)絡的系統(tǒng)可以是專用計算機網(wǎng)絡或公用計算機網(wǎng)絡。當路由器105 通過網(wǎng)絡連接121a和121中的一者或這兩者從互聯(lián)網(wǎng)104接收一個或多個第三層數(shù)據(jù)包 時,所述路由器將一個或多個第三層數(shù)據(jù)包轉換回第二層數(shù)據(jù)包并且隨后將第二層數(shù)據(jù)包 傳遞到開關106。使用同一 VPN隧道,來自開關106的第二層數(shù)據(jù)包也可以被發(fā)送到開關 102。因此,計算裝置101a、101b和101c以及計算裝置102a、102b和102c處于同一 VPN中 并且能夠使用同一第二層網(wǎng)絡協(xié)議相互通信。
[0029] 根據(jù)本發(fā)明各實施例中的一者,路由器103與互聯(lián)網(wǎng)104之間的網(wǎng)絡連接的數(shù)目 至少為一。根據(jù)本發(fā)明各實施例中的一者,互聯(lián)網(wǎng)104與路由器105之間的網(wǎng)絡連接的數(shù) 目至少為一。當路由器103與互聯(lián)網(wǎng)104之間僅存在一個網(wǎng)絡連接以及互聯(lián)網(wǎng)104與路由 器106之間存在一個網(wǎng)絡連接時,屬于VPN隧道的所有第三層數(shù)據(jù)包必須穿過路由器103 與互聯(lián)網(wǎng)104之間的同一網(wǎng)絡連接以及還穿過路由器105與互聯(lián)網(wǎng)104之間的同一網(wǎng)絡連 接。在這種情況下,與L2TP相比,由本發(fā)明提供的性能提高、更多冗余以及帶寬增加的益處 并不顯著。
[0030] 方法
[0031] 圖2是圖示了通過使用隧道聯(lián)合以將第二層數(shù)據(jù)包封裝在第三層數(shù)據(jù)包中的本 發(fā)明各實施例中的一者的流程圖。當路由器103在步驟201處接收第二層數(shù)據(jù)包時,路由 器103通過首先在步驟202處創(chuàng)建協(xié)議標頭來將第二層數(shù)據(jù)包封裝成一個或多個第三層數(shù) 據(jù)包。隨后,在步驟203處,協(xié)議標頭通過路由器103用隧道聯(lián)合信息來填充。隧道聯(lián)合信 息用于允許路由器103能夠與路由器105通信,以便將第三層數(shù)據(jù)包與VPN隧道相聯(lián)系。
[0032] 根據(jù)本發(fā)明各實施例中的一者,路由器103對第二層數(shù)據(jù)包進行加密。在步驟204 處,路由器103決定第二層數(shù)據(jù)包是否必須通過手動設置的或在網(wǎng)絡裝置之間協(xié)商的以下 預定義規(guī)則來進行加密。如果決定第二層數(shù)據(jù)包必須進行加密,那么在步驟205處,加密信 息將被添加到協(xié)議標頭中。加密信息包括密碼信息和種子值信息。根據(jù)本發(fā)明各實施例中 的一者,加密通過使用高級加密標準來進行,并且相關的初始化向量被認為是加密信息并 且被添加到隧道聯(lián)合信息中且存儲在協(xié)議標頭中。在步驟206處,根據(jù)本發(fā)明的一個實施 例,對完整的第二層數(shù)據(jù)包進行加密。根據(jù)本發(fā)明的另一實施例,還對協(xié)議標頭進行加密。 當協(xié)議標頭進行加密時,存儲在協(xié)議標頭中的加密信息未進行加密,以便促進在接收網(wǎng)絡 裝置處的解密過程。步驟205和步驟206的排序可以交換。根據(jù)本發(fā)明各實施例中的一者, 路由器103不會對第二層數(shù)據(jù)包進行加密并且因此步驟204、205和206不存在。
[0033] 在步驟207處,創(chuàng)建第三層數(shù)據(jù)包標頭信息。第三層數(shù)據(jù)包標頭用源地址、目標地 址以及路由器103的端口信息來填充。然而,當路由器103具有一個以上的網(wǎng)絡連接時,路 由器103可以具有一個以上的第三層源地址和/或一個以上的第三層目標地址。當?shù)谌龑?數(shù)據(jù)包通過一個以上的網(wǎng)絡連接傳遞到互聯(lián)網(wǎng)104時,屬于同一 VPN隧道的第三層數(shù)據(jù)包 的源地址和目標地址可以彼此不同。例如,在圖1所示的網(wǎng)絡處,通過路由器103從開關 102接收的第二層數(shù)據(jù)包通過三個不同的第三層數(shù)據(jù)包進行封裝。第一個第三層數(shù)據(jù)包使 用網(wǎng)絡120a通過路由器103傳送到網(wǎng)絡連接121a,因此第一個第三層數(shù)據(jù)包的源地址和目 標地址分別是網(wǎng)絡連接120a和網(wǎng)絡連接121a的地址。第二個第三層數(shù)據(jù)包使用網(wǎng)絡120a 通過路由器103傳送到網(wǎng)絡連接121b,因此第二個第三層數(shù)據(jù)包的源地址和目標地址分別 是網(wǎng)絡連接120a和網(wǎng)絡121b的地址。第三個第三層數(shù)據(jù)包使用網(wǎng)絡連接120c通過路由 器103傳送到網(wǎng)絡連接121b,因此第二個第三層數(shù)據(jù)包的源地址和目標地址分別是網(wǎng)絡連 接120c和網(wǎng)絡121b的地址。取決于許多決策因素,例如,網(wǎng)絡延時和網(wǎng)絡帶寬,路由器103 確定將要使用的網(wǎng)絡連接,這對所屬領域的技術人員而言是很容易選擇和實施的。
[0034] 在步驟208處,路由器103組合有效載荷,所述有效載荷是在步驟201處從開關 102接收到的原始第二層數(shù)據(jù)包,協(xié)議標頭和第三層數(shù)據(jù)包標頭組合在一起,以形成一個或 多個第三層數(shù)據(jù)包。在步驟209處,路由器103將一個或多個第三層數(shù)據(jù)包傳遞到互聯(lián)網(wǎng) 104。當一個第三層數(shù)據(jù)不足以將協(xié)議標頭和完整的第二層數(shù)據(jù)包封裝在一起時,第二層數(shù) 據(jù)包可以進行分段并且被封裝入多個第三層數(shù)據(jù)包中。所述分段可以依靠第三層分段來完 成,以使得協(xié)議標頭和第二層數(shù)據(jù)包一起被看作一個有效載荷并且根據(jù)使用的第三層協(xié)議 進行分段。因此,第一個第三層數(shù)據(jù)包含有完整的協(xié)議標頭以及第二層數(shù)據(jù)包的一部分,并 且隨后的第三層數(shù)據(jù)包不含有協(xié)議標頭。另一方面,分段可以依靠網(wǎng)絡鏈路協(xié)議來完成,以 使得每個第三層數(shù)據(jù)包含有完整的協(xié)議標頭和第二層數(shù)據(jù)包的一部分。
[0035] 根據(jù)本發(fā)明各實施例中的一者,第三層數(shù)據(jù)包標頭含有用于路由的信息,包括用 于數(shù)據(jù)鏈路層、網(wǎng)絡層以及0SI模型的運輸層的信息。
[0036] 圖4圖示了用以傳送利用本發(fā)明部署的VPN隧道的第三層數(shù)據(jù)包的一個實施例。 第三層數(shù)據(jù)包是由IP標頭401、UDP標頭402、協(xié)議標頭403以及有效載荷404組成的IP數(shù) 據(jù)包。IP標頭401由一系列位組成并且是由互聯(lián)網(wǎng)工程任務組(IETF)發(fā)布的RFC79中所 描述的IPv4或者也由IETF發(fā)布的RFC2460中所描述的IPv6的標頭。UDP標頭由一系列位 組成并且傳送由IETF發(fā)布的RFC768中所描述的用戶數(shù)據(jù)協(xié)議的信息。協(xié)議標頭403由一 系列位組成并且含有本發(fā)明中所描述的隧道聯(lián)合信息。有效載荷404由一系列位組成并且 傳送完整的第二層數(shù)據(jù)包或第二層數(shù)據(jù)包的一部分。
[0037] 在第三層數(shù)據(jù)包可以使用VPN隧道來封裝第二層數(shù)據(jù)包之前,建立VPN隧道所需 的過程和對應信息包括對所屬領域的技術人員而言顯而易見的存取。對應信息可以由網(wǎng)絡 裝置管理員輸入和/或可以在網(wǎng)絡裝置之間進行交換。如何交換VPN隧道建立信息對所屬 領域的技術人員同樣是顯而易見的。
[0038] 用于封裝第二層數(shù)據(jù)包的第三層數(shù)據(jù)包的數(shù)目取決于許多因素,包括第二層數(shù)據(jù) 包的數(shù)據(jù)包尺寸、第三層數(shù)據(jù)包的有效載荷尺寸、互聯(lián)網(wǎng)104中常規(guī)允許的第三層數(shù)據(jù)包 的尺寸、用戶法則、標準以及其他因素。如何確定用于封裝的第三層數(shù)據(jù)包的數(shù)目對所屬領 域的技術人員是顯而易見的。
[0039] 當?shù)诙訑?shù)據(jù)包通過網(wǎng)絡鏈路進行發(fā)送以檢查網(wǎng)絡鏈路的健康狀況、VPN隧道的 健康狀況或者傳送非有效載荷信息時,NLID和TSN可以被設置為零。除了那些以外,NLID 和TSN的值是非零的,因為NLID和TSN用于識別網(wǎng)絡鏈路和數(shù)據(jù)包序列。
[0040] 根據(jù)本發(fā)明各實施例中的一者,隧道聯(lián)合信息進一步包括全球序列號(GSN),所述 全球序列號用于通過接收網(wǎng)絡裝置將從VPN隧道接收到的數(shù)據(jù)包安排至正確的序列。根據(jù) 本發(fā)明的一個實施例,在VPN隧道的壽命期間,每一個GSN應該是唯一的。根據(jù)本發(fā)明的一 個實施例,當網(wǎng)絡鏈路的壽命超過時間周期時,GSN可以再次被重新使用。表示GSN的位的 數(shù)目應該足夠長,以避免混淆數(shù)據(jù)包序列。根據(jù)本發(fā)明的一個實施例,用以表示GSN的位的 數(shù)目是32個位。
[0041] 根據(jù)本發(fā)明各實施例中的一者,隧道聯(lián)合信息進一步包括第二層隧道指示符,所 述第二層隧道指示符用于通知接收網(wǎng)絡裝置第三層數(shù)據(jù)包含有第二層隧道的內(nèi)容。第二層 隧道指示符可以通過使用一個或多個位嵌入到協(xié)議標頭中。
[0042] 根據(jù)本發(fā)明各實施例中的一者,隧道聯(lián)合信息進一步包括數(shù)據(jù)偏移指示符,所述 數(shù)據(jù)偏移指示符指示出用戶UDP與協(xié)議標頭之間的偏移的數(shù)量。數(shù)據(jù)偏移指示符可以通過 使用一個或多個位嵌入到協(xié)議標頭中。
[0043] 根據(jù)本發(fā)明各實施例中的一者,隧道聯(lián)合信息進一步包括版本指示符,所述版本 指示符確定正被使用的VPN隧道協(xié)議的版本并且允許向后和向前的兼容性。版本指示符可 以通過使用一個或多個位嵌入到協(xié)議標頭中。
[0044] 根據(jù)本發(fā)明各實施例中的一者,隧道聯(lián)合信息進一步包括保留位的數(shù)目,當更多 的信息必須在隧道聯(lián)合信息中傳送時,這些位保留用于將來使用。
[0045] 根據(jù)本發(fā)明各實施例中的一者,隧道聯(lián)合信息進一步包括任選的時間戳指示符, 所述任選的時間戳指示符確定時間戳信息是否可用于協(xié)議標頭中。時間戳信息可以用于計 算數(shù)據(jù)包的發(fā)送與數(shù)據(jù)包的接收之間的時差,或者用于計算數(shù)據(jù)包的發(fā)送與對應確認的接 收之間的往返時間。時間戳指示符和時間戳信息可以通過使用一個或多個位嵌入到協(xié)議標 頭中。
[0046] 根據(jù)本發(fā)明各實施例中的一者,隧道聯(lián)合信息進一步包括確認指示符,所述確認 指示符確定確認信息是否包含在協(xié)議標頭中。確認信息用于數(shù)已成功接收到的數(shù)據(jù)包的數(shù) 目。確認指示符和確認信息可以通過使用一個或多個位嵌入到協(xié)議標頭中。根據(jù)本發(fā)明各 實施例中的一者,確認信息指示出已接收到的數(shù)據(jù)包的最高序列號,例如,TSN。
[0047] 根據(jù)本發(fā)明各實施例中的一者,隧道聯(lián)合信息進一步包括交替的確認指示符,所 述交替的確認指示符確定交替的確認信息是否包含在協(xié)議標頭中。交替的確認信息用于數(shù) 已成功接收到的數(shù)據(jù)包的數(shù)目并且用于確認接收到一個以上的數(shù)據(jù)包。交替的確認指示符 和交替的確認信息可以通過使用一個或多個位嵌入到協(xié)議標頭中。
[0048] 根據(jù)本發(fā)明各實施例中的一者,協(xié)議標頭所使用的字節(jié)數(shù)是屬于用于路由的第三 層數(shù)據(jù)包的標頭的字節(jié)數(shù)以及從第三層數(shù)據(jù)包的總字節(jié)數(shù)中減去的屬于封裝的第二層數(shù) 據(jù)包的有效載荷的字節(jié)數(shù)。
[0049] 圖3是圖示了通過使用隧道聯(lián)合以將第二層數(shù)據(jù)包去封裝在第三層數(shù)據(jù)包中的 本發(fā)明各實施例中的一者的流程圖。當路由器105在步驟301處從互聯(lián)網(wǎng)104接收第三層 數(shù)據(jù)包時,路由器105通過檢驗第三層數(shù)據(jù)包的端口數(shù)來確定第三層數(shù)據(jù)包是否屬于任何 VPN隧道。如果在步驟302處,端口數(shù)與預定義的端口數(shù)匹配,那么路由器105認為第三層 數(shù)據(jù)包屬于VPN隧道。預定義的端口數(shù)可以通過網(wǎng)絡管理員、網(wǎng)絡裝置的制造商進行預先 確定,或者可以在網(wǎng)絡裝置之間進行協(xié)商。隨后在步驟303處,路由器105識別協(xié)議標頭。 根據(jù)一個實施方式,協(xié)議標頭緊靠著第三層數(shù)據(jù)包的標頭。
[0050] 由于含有隧道聯(lián)合信息的協(xié)議標頭,在步驟304處通過讀取存儲在協(xié)議標頭中的 NLED,路由器105能夠確定第三層數(shù)據(jù)包所屬的網(wǎng)絡鏈路和VPN并且確定第三層數(shù)據(jù)包是 含有整個第二層數(shù)據(jù)包還是含有部分第二層數(shù)據(jù)包。當對第三層數(shù)據(jù)包的有效載荷進行 加密且路由器105首先識別來自存儲在協(xié)議標頭中的隧道聯(lián)合信息的加密信息時,在步驟 305處確定且隨后在步驟307處利用在步驟306處從協(xié)議標頭中檢索的信息對有效載荷進 行加密。根據(jù)本發(fā)明各實施例中的一者,對第三層數(shù)據(jù)包的部分有效載荷進行加密,例如, 未對封裝的第二層數(shù)據(jù)包的標頭進行加密,但是對第二層數(shù)據(jù)包的內(nèi)容進行加密。根據(jù)一 個實施例,對第三層數(shù)據(jù)包的整個有效載荷進行加密。
[0051] 根據(jù)一個實施例,當?shù)谌龑訑?shù)據(jù)包不含有加密的有效載荷時,步驟305、306和307 不存在。
[0052] 在步驟308處,第三層數(shù)據(jù)包進行去封裝以檢索整個或部分第二層數(shù)據(jù)包。
[0053] 當完整的第二層數(shù)據(jù)包從一個或多個第三層數(shù)據(jù)包中去封裝時,隨后在步驟309 處,路由器105能夠傳遞第二層數(shù)據(jù)包。
[0054] 根據(jù)一個實施例,接收路由器,例如,路由器105認為接收到的第三層數(shù)據(jù)包是可 靠的,即使屬于同一 VPN隧道的第三層數(shù)據(jù)包具有不同的源地址或目標地址,因為接收路 由器依靠隧道聯(lián)合信息來辨別可靠的第三層數(shù)據(jù)包。當存在一個以上傳送用于VPN隧道的 第三層數(shù)據(jù)包的網(wǎng)絡連接時會發(fā)生這種情況。在相同情況下,先前技術認為第三層數(shù)據(jù)包 中的一些并不可靠,因為源地址不同或目標地址不同。
[0055] 系統(tǒng)
[0056] 圖5圖示了實施本發(fā)明各實施例中的一者的網(wǎng)絡裝置。系統(tǒng)由連接到內(nèi)部網(wǎng)絡上 的一個或多個第一網(wǎng)絡接口 505 ;連接到一個或多個公用和/或專用網(wǎng)上的一個或多個第 二網(wǎng)絡接口 506;處理引擎501和存儲裝置507組成。第一網(wǎng)絡接口 505和第二網(wǎng)絡接口 506可以通過將與光纖、纜線或天線連接的媒介來實施。處理引擎501可以通過使用一個或 多個中央處理單元、網(wǎng)絡處理器、微處理器、微控制器、FPGA、ASIC或能夠執(zhí)行指令的任何裝 置來實施,以執(zhí)行系統(tǒng)的基本算術、邏輯和輸入/輸出操作。
[0057] 封裝引擎502用于將第二層數(shù)據(jù)包封裝成一個或多個第三層數(shù)據(jù)包并且將協(xié)議 標頭輸入到每個第三層數(shù)據(jù)包中。去封裝引擎504用于將第三層數(shù)據(jù)包去封裝成部分或完 整的第二層數(shù)據(jù)包并且從第三層數(shù)據(jù)包中檢索協(xié)議標頭。加密引擎用于對第二層數(shù)據(jù)包和 第三層數(shù)據(jù)包進行加密和解密。所述領域的一般技術人員應了解,用以封裝、去封裝、加密 和解密數(shù)據(jù)包的許多不同實施方式適用于實踐本發(fā)明。封裝引擎502、協(xié)議引擎503和去封 裝引擎504的功能通過處理引擎501來傳送??商娲?,封裝引擎502、協(xié)議引擎503和去 封裝引擎504的功能可以通過中央處理單元、網(wǎng)絡處理器、微處理器、微控制器、FPGA、ASIC 或能夠執(zhí)行指令的任何裝置來實施,以執(zhí)行系統(tǒng)的基本算術、邏輯和輸入/輸出操作。
[0058] 存儲裝置507可以通過使用DRAM、SDRAM、閃存RAM、光學存儲器、磁性存儲器、硬盤 和/或能夠提供存儲能力的任何其他材料來實施。
[0059] 網(wǎng)絡裝置通過一個或多個第一網(wǎng)絡接口 505連接到一個或多個局域網(wǎng)上。在局域 網(wǎng)中,計算裝置通過第二層技術彼此通信。網(wǎng)絡裝置還通過一個或多個第二網(wǎng)絡接口 506 連接到一個或多個廣域網(wǎng)上。在廣域網(wǎng)中,計算裝置通過第三層技術彼此通信。網(wǎng)絡裝置 通過使用一個或多個第二網(wǎng)絡接口 506經(jīng)由一個或多個廣域網(wǎng)建立具有其他網(wǎng)絡裝置的 一個或多個VPN隧道。
[0060] 當在第一網(wǎng)絡接口 505中的一者處接收第二層數(shù)據(jù)包且第二層數(shù)據(jù)包將通過VPN 隧道傳遞到另一局域網(wǎng)時,第二層數(shù)據(jù)包首先通過封裝引擎502與協(xié)議標頭一起被封裝在 一個或多個第三層數(shù)據(jù)包中,隨后通過一個或多個第二網(wǎng)絡接口 506傳遞到廣域網(wǎng)上。協(xié) 議引擎503用于創(chuàng)建含有隧道聯(lián)合信息的協(xié)議標頭。
[0061] 當通過VPN隧道在第二網(wǎng)絡接口 505中的一者處接收第三層數(shù)據(jù)包(含有源于另 一局域網(wǎng)的整個或部分第二層數(shù)據(jù)包)且第三層數(shù)據(jù)包將傳遞局域網(wǎng)時,協(xié)議標頭從第三 層數(shù)據(jù)包中檢索到并且隨后通過使用協(xié)議引擎502和去封裝引擎504進行去封裝以檢索整 個或部分第二層數(shù)據(jù)包。如果第二層數(shù)據(jù)包分段成一個或多個第三層數(shù)據(jù)包時,網(wǎng)絡裝置 不會將第二層數(shù)據(jù)包傳遞到局域網(wǎng),直到整個第二層數(shù)據(jù)包可用為止。協(xié)議引擎503用于 從協(xié)議標頭中檢索隧道聯(lián)合信息。
[0062] 存儲裝置507用于向處理引擎501提供指令,以在將第二層數(shù)據(jù)包封裝成一個或 多個第三層數(shù)據(jù)包期間提供臨時存儲,并且以在將一個或多個第三層數(shù)據(jù)包去封裝成第二 層數(shù)據(jù)包期間提供臨時存儲。根據(jù)本發(fā)明的一個實施例,存儲裝置507用于直接向封裝引 擎502、協(xié)議引擎503和去封裝引擎507提供指令。
[0063] 所述領域的一般技術人員應了解,許多不同的硬件組合也將適用于實踐本發(fā)明。
[0064] 在不脫離本發(fā)明的精神和范圍的情況下,替代實施例對于本發(fā)明所涉及領域的技 術人員而言是顯而易見的。因此,本發(fā)明的范圍由所附權利要求書指出而非由先前的描述 指出。
【權利要求】
1. 一種用于計算機連網(wǎng)的方法,所述方法包括: 通過一個或多個處理器、一個或多個網(wǎng)絡接口,或一個或多個處理器和一個或多個網(wǎng) 絡接口的組合在網(wǎng)絡裝置中執(zhí)行:接收第二層數(shù)據(jù)包;創(chuàng)建協(xié)議標頭,其中隧道聯(lián)合信息 存儲在所述協(xié)議標頭中,其中所述隧道聯(lián)合信息包括網(wǎng)絡鏈路標識和隧道序列號;利用所 述協(xié)議標頭將所述第二層數(shù)據(jù)包封裝成一個或多個第三層數(shù)據(jù)包,其中所述第三層數(shù)據(jù)包 具有相同或不同的源地址,其中所述第三層數(shù)據(jù)包具有相同或不同的目標地址;將所述一 個或多個第三層數(shù)據(jù)包傳遞到一個或多個所述網(wǎng)絡接口上;其中所述網(wǎng)絡鏈路標識用于識 別所述第二層數(shù)據(jù)包所屬的網(wǎng)絡鏈路和虛擬專用隧道;其中所述隧道序列號用于識別網(wǎng)絡 鏈路中的所述一個或多個第三層數(shù)據(jù)包的序列。
2. -種用于計算機連網(wǎng)的方法,所述方法包括: 通過一個或多個處理器、一個或多個網(wǎng)絡接口,或一個或多個處理器和一個或多個網(wǎng) 絡接口的組合在網(wǎng)絡裝置中執(zhí)行:通過一個或多個網(wǎng)絡接口接收一個或多個第三層數(shù)據(jù) 包,其中所述第三層數(shù)據(jù)包可能不具有相同的源地址,其中所述第三層數(shù)據(jù)包可能不具有 相同的目標地址;從每個第三層數(shù)據(jù)包中檢索協(xié)議標頭,其中隧道聯(lián)合信息存儲在所述協(xié) 議標頭中,其中所述隧道聯(lián)合信息包括網(wǎng)絡鏈路標識和隧道序列號;從所述一個或多個第 三層數(shù)據(jù)包中去封裝第二層數(shù)據(jù)包;將所述第二層數(shù)據(jù)包傳遞到所述網(wǎng)絡接口的一者上; 其中所述網(wǎng)絡鏈路標識用于識別所述第二層數(shù)據(jù)包所屬的網(wǎng)絡鏈路和虛擬專用隧道;其中 所述隧道序列號用于識別網(wǎng)絡鏈路中的所述一個或多個第三層數(shù)據(jù)包的序列。
3. 根據(jù)權利要求1或2所述的方法,其進一步包括:對所述一個或多個第三層數(shù)據(jù)包 的有效載荷進行加密。
4. 根據(jù)權利要求1或2所述的方法,其中當所述一個或多個第三層數(shù)據(jù)包的所述有效 載荷進行加密時,所述隧道聯(lián)合信息包括初始化向量。
5. 根據(jù)權利要求1或2所述的方法,其中所述隧道聯(lián)合信息包括全球序列號。
6. 根據(jù)權利要求1或2所述的方法,其中所述隧道聯(lián)合信息包括版本指示符。
7. 根據(jù)權利要求1或2所述的方法,其中所述隧道聯(lián)合信息包括時間戳指示符。
8. 根據(jù)權利要求1或2所述的方法,其中所述隧道聯(lián)合信息包括確認指示符。
9. 根據(jù)權利要求1或2所述的方法,其中所述第二層數(shù)據(jù)包是以太網(wǎng)數(shù)據(jù)包。
10. 根據(jù)權利要求1或2所述的方法,其中所述一個或多個第三層數(shù)據(jù)包是互聯(lián)網(wǎng)協(xié)議 數(shù)據(jù)包。
11. 根據(jù)權利要求1或2所述的方法,其中所述一個或多個第三層數(shù)據(jù)包使用用戶數(shù)據(jù) 報協(xié)議進行傳遞。
12. 根據(jù)權利要求1或2所述的方法,其中所述網(wǎng)絡鏈路標識的長度為三十二個位。
13. 根據(jù)權利要求1或2所述的方法,其中所述隧道序列號的長度為三十二個位。
14. 根據(jù)權利要求2所述的方法,其進一步包括:在所述去封裝之前將所述一個或多個 第三層數(shù)據(jù)包安排成正確的順序。
15. -種傳輸和接收通信數(shù)據(jù)的網(wǎng)絡裝置,所述網(wǎng)絡裝置包括:連接到一個或多個局 域網(wǎng)上的一個或多個局域網(wǎng)網(wǎng)絡接口;連接到一個或多個廣域網(wǎng)上的一個或多個廣域網(wǎng)網(wǎng) 絡接口;處理引擎,所述處理引擎耦合到所述一個或多個局域網(wǎng)網(wǎng)絡接口和所述一個或多 個廣域網(wǎng)網(wǎng)絡接口上,所述處理引擎包括封裝引擎,用于將接收到的第二層數(shù)據(jù)包封裝在 一個或多個待傳遞的第三層數(shù)據(jù)包中、去封裝引擎,用于將一個或多個接收到的第三層數(shù) 據(jù)包去封裝成待傳遞的第二層數(shù)據(jù)包,以及協(xié)議引擎,用于處理隧道聯(lián)合信息,其中隧道聯(lián) 合信息包括網(wǎng)絡鏈路標識和隧道序列號;存儲系統(tǒng),用于向所述處理引擎提供指令;其中 所述網(wǎng)絡鏈路標識用于識別所述第二層數(shù)據(jù)包所屬的網(wǎng)絡鏈路和虛擬專用隧道;其中所述 隧道序列號用于識別網(wǎng)絡鏈路中的所述一個或多個第三層數(shù)據(jù)包的序列。
16. 根據(jù)權利要求15所述的網(wǎng)絡裝置,其進一步包括:對所述一個或多個第三層數(shù)據(jù) 包的有效載荷進行加密。
17. 根據(jù)權利要求15所述的網(wǎng)絡裝置,其中當所述一個或多個第三層數(shù)據(jù)包的所述有 效載荷進行加密時,所述隧道聯(lián)合信息包括初始化向量。
18. 根據(jù)權利要求15所述的網(wǎng)絡裝置,其中所述隧道聯(lián)合信息包括全球序列號。
19. 根據(jù)權利要求15所述的網(wǎng)絡裝置,其中所述隧道聯(lián)合信息包括版本指示符。
20. 根據(jù)權利要求15所述的網(wǎng)絡裝置,其中所述隧道聯(lián)合信息包括時間戳指示符。
21. 根據(jù)權利要求15所述的網(wǎng)絡裝置,其中所述隧道聯(lián)合信息包括確認指示符。
22. 根據(jù)權利要求15所述的網(wǎng)絡裝置,其中所述第二層數(shù)據(jù)包是以太網(wǎng)數(shù)據(jù)包。
23. 根據(jù)權利要求15所述的網(wǎng)絡裝置,其中所述一個或多個第三層數(shù)據(jù)包是互聯(lián)網(wǎng)協(xié) 議數(shù)據(jù)包。
24. 根據(jù)權利要求15所述的網(wǎng)絡裝置,其中所述一個或多個第三層數(shù)據(jù)包使用用戶數(shù) 據(jù)報協(xié)議進行傳遞。
25. 根據(jù)權利要求15所述的網(wǎng)絡裝置,其中所述網(wǎng)絡鏈路標識的長度為三十二個位。
26. 根據(jù)權利要求15所述的網(wǎng)絡裝置,其中所述隧道序列號的長度為三十二個位。
27. 根據(jù)權利要求15所述的網(wǎng)絡裝置,其進一步包括:在所述去封裝之前將所述一個 或多個第三層數(shù)據(jù)包安排成正確的順序。
【文檔編號】H04L29/06GK104067562SQ201180074664
【公開日】2014年9月24日 申請日期:2011年11月11日 優(yōu)先權日:2011年11月11日
【發(fā)明者】宋浩偉, 陳永康, 吳錦超, 周杰懷 申請人:柏思科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
呼和浩特市| 平昌县| 鹤岗市| 灵寿县| 五常市| 宁强县| 皋兰县| 濮阳县| 牙克石市| 四子王旗| 枣庄市| 师宗县| 凤翔县| 华安县| 德惠市| 五寨县| 彰武县| 东台市| 平阴县| 明溪县| 牙克石市| 禄丰县| 伊金霍洛旗| 勐海县| 开化县| 柯坪县| 泗洪县| 嘉鱼县| 麦盖提县| 浙江省| 苏尼特右旗| 星子县| 秭归县| 黄梅县| 溧阳市| 花莲市| 常宁市| 丰城市| 罗田县| 桃园县| 通渭县|