服務(wù)鏈的控制的制作方法
【專利摘要】本發(fā)明涉及配置成控制在提供多個服務(wù)提供模塊(300)的服務(wù)網(wǎng)絡(luò)(400)中提供的服務(wù)鏈的服務(wù)控制實體(100),其中從源地址到目的地地址的數(shù)據(jù)分組流的數(shù)據(jù)分組通過服務(wù)網(wǎng)絡(luò)(400)傳送以應(yīng)用服務(wù)鏈到數(shù)據(jù)分組流。鏈控制單元(110)確定要應(yīng)用到不同數(shù)據(jù)分組流的可能服務(wù)鏈,并且為每個服務(wù)鏈識別應(yīng)用到數(shù)據(jù)分組流的服務(wù)的預(yù)定義的序列和提供在服務(wù)的預(yù)定義的序列中包含的服務(wù)的服務(wù)提供模塊(300),以及識別不得不以什么順序通過識別的服務(wù)提供模塊(300)以便應(yīng)用服務(wù)的預(yù)定義的序列到數(shù)據(jù)分組流。模塊控制單元(120)控制服務(wù)提供模塊(300),并且指派端到端層的底層的入口網(wǎng)絡(luò)地址到服務(wù)鏈中包含的每個識別的服務(wù)提供模塊(300),其中,模塊控制單元(120)指派入口網(wǎng)絡(luò)地址到在對應(yīng)服務(wù)鏈中使用的服務(wù)提供模塊,使得服務(wù)提供模塊的入口網(wǎng)絡(luò)地址和作為對應(yīng)服務(wù)鏈中隨后服務(wù)提供模塊的相鄰服務(wù)提供模塊的入口網(wǎng)絡(luò)地址根據(jù)預(yù)定義關(guān)系相互相關(guān)。
【專利說明】
服務(wù)鏈的控制
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及配置成控制提供了多個服務(wù)提供模塊的服務(wù)網(wǎng)絡(luò)中提供的服務(wù)鏈的服務(wù)控制實體,以及涉及由服務(wù)控制實體控制服務(wù)鏈的方法。此外,本發(fā)明涉及配置成提供服務(wù)到數(shù)據(jù)分組流的服務(wù)提供模塊,以及涉及由服務(wù)提供模塊提供服務(wù)的方法。
【背景技術(shù)】
[0002]圖1中示出服務(wù)接入提供商的一般體系結(jié)構(gòu)。在端用戶(未顯示)與因特網(wǎng)30或任何其它數(shù)據(jù)網(wǎng)絡(luò)(PDN)之間的數(shù)據(jù)業(yè)務(wù)通過服務(wù)網(wǎng)絡(luò)10,其中,數(shù)據(jù)業(yè)務(wù)由一個或幾個服務(wù)提供模塊處理。諸如2G/3G、LTE和固定線路接入網(wǎng)絡(luò)的接入網(wǎng)絡(luò)51、52、53連接到網(wǎng)關(guān)40。視接入類型而定,這能夠是BNG(邊界網(wǎng)絡(luò)網(wǎng)關(guān))、GGSN(網(wǎng)關(guān)GPRS支持節(jié)點)或PGW(分組網(wǎng)關(guān))。在數(shù)據(jù)分組流激活時,網(wǎng)關(guān)為端用戶提供IP地址。它處理鑒權(quán)、記帳和計費,并且它可執(zhí)行另外的任務(wù),像充當3GPP網(wǎng)絡(luò)中的PCEF(策略和計費實行功能)。網(wǎng)關(guān)40是在本申請中指運營商受控網(wǎng)絡(luò)的服務(wù)網(wǎng)絡(luò)的入口點,網(wǎng)絡(luò)具有附連的提供為運營商或端用戶增值的服務(wù)的一個或更多個模塊。所述服務(wù)的示例是防火墻、HTTP報頭富集或內(nèi)容過濾模塊。
[0003]如圖1中所示的,運營商朝向因特網(wǎng)的界線是互連點20(PoI),因為分配到端用戶的IP地址通常是私有IP地址,到公共IP地址的網(wǎng)絡(luò)地址轉(zhuǎn)換21 (NAT)通常靠近PoI 20執(zhí)行。
[0004]利用當前技術(shù),服務(wù)網(wǎng)絡(luò)中的分配增值服務(wù)不靈活。以復(fù)雜的網(wǎng)絡(luò)和服務(wù)配置為代價,由選擇的服務(wù)基于端用戶數(shù)據(jù)業(yè)務(wù)或數(shù)據(jù)流的類型、源或目的地來對其進行處理僅在有限范圍內(nèi)是可能的。
[0005]電信網(wǎng)絡(luò)經(jīng)常包括透明地處理遍歷它們的業(yè)務(wù)的多個透明增值服務(wù)(TVAS),也稱為服務(wù)提供模塊。如在圖1中所示的邏輯網(wǎng)絡(luò)體系結(jié)構(gòu)中,TVAS連接到且在邏輯上屬于服務(wù)網(wǎng)絡(luò)。
[0006]利用“經(jīng)典”服務(wù)網(wǎng)絡(luò),意味著由傳輸基礎(chǔ)設(shè)施和實施服務(wù)的硬件設(shè)備組成的網(wǎng)絡(luò),其中,使用的大部分硬件組件的主要用途是支持服務(wù)的執(zhí)行和引導(dǎo)通過它們的業(yè)務(wù)。
[0007]術(shù)語“透明”在此情況下用于指未以任何方式明確由業(yè)務(wù)本身尋址(address),并且完全在電信提供商控制下的業(yè)務(wù)處理功能。這不同于像DNS(域名服務(wù)器)被引導(dǎo)的CDN(內(nèi)容輸送網(wǎng)絡(luò))服務(wù)器、由頂S(IP多媒體子系統(tǒng))實施并且明確經(jīng)SIP(會話發(fā)起協(xié)議)尋址的可配置的HTTP代理或服務(wù)的功能。因此,“透明”指請求數(shù)據(jù)分組流的用戶不知道提供的服務(wù),并且不直接尋址服務(wù)。
[0008]應(yīng)注意的是,術(shù)語“增值服務(wù)”要被給出非常寬泛的解釋,包括可以是對端用戶的價值、對網(wǎng)絡(luò)提供商的價值或可能對其它方的價值的實際和潛在增值。
[0009]由TVAS提供的服務(wù)的示例能夠是:
-防火墻
-蠕蟲過濾器/防病毒 -內(nèi)容過濾 -家長控制
-透明因特網(wǎng)高速緩存 -HTTP報頭富集 -深度分組檢查區(qū)分
TVAS相對非透明VAS的差別主要原因是透明網(wǎng)絡(luò)在TVAS的使用中起到核心作用,這是因為它是能夠指引業(yè)務(wù)到一個TVAS或節(jié)點的唯一實體。根據(jù)“透明”的定義,通信端點能夠不引導(dǎo)TVAS的使用。同樣地,大多數(shù)現(xiàn)有TVAS不實施對其它潛在TVAS的任何認知或在它們之間進行鏈接,并且因此能夠不引導(dǎo)業(yè)務(wù)到另一 TVAS。
[0010]同時,由于當前TVAS產(chǎn)品經(jīng)常基于連網(wǎng)設(shè)備平臺或利用此類平臺,TVAS部署在傳統(tǒng)網(wǎng)絡(luò)中的需要導(dǎo)致在服務(wù)實施本身與透明網(wǎng)絡(luò)之間的強烈相關(guān)性。這些相關(guān)性的示例是:
-盡管實際上只處理業(yè)務(wù)的一小部分,但由于對遍歷它們的所有業(yè)務(wù)的需要,在高吞吐量路由選擇/交換平臺上的TVAS
-對與傳輸裝備比較的高可用性的需要,即使服務(wù)本身不要求此類高可用性。應(yīng)確保經(jīng)TVAS發(fā)送的業(yè)務(wù)不會由于TVAS失效而被丟棄。
[0011]-集成NAT/NAPT(網(wǎng)絡(luò)地址和端口轉(zhuǎn)換)功能性以引導(dǎo)返回業(yè)務(wù)回到相同功能
-在其中有態(tài)TVAS功能要求對正確實例的智能負載平衡的情況下,與負載平衡功能的強集成。這可導(dǎo)致TVAS產(chǎn)品包括兩個負載平衡器作為組件,或者創(chuàng)建像實例的最大數(shù)量或在負載平衡器與TVAS服務(wù)器之間嚴格的連接性要求的限制。
[0012]引導(dǎo)業(yè)務(wù)通過服務(wù)提供模塊或TVAS鏈的一種方案是使用軟件定義的網(wǎng)絡(luò)技術(shù)而無需NAPT(網(wǎng)絡(luò)地址和端口轉(zhuǎn)換)來控制上行鏈路和下行鏈路業(yè)務(wù)。
[0013]如圖2中所示的,想法是由中央控制器70控制TVAS 81、82鏈。如圖2中所示的,所有TVAS 81、82、網(wǎng)關(guān)40和PoI 20均連接到OpenFlow網(wǎng)絡(luò)??刂破?0為每個數(shù)據(jù)流提供通過OpenFlow網(wǎng)絡(luò),通過其五元組(源IP地址、目的地IP地址、源端口、目的地端口和協(xié)議號)識別的路徑。OpenFlow交換機61、62、63主要基于匹配五元組信息和其流表中的條目來做出轉(zhuǎn)發(fā)決定。如果未發(fā)現(xiàn)匹配,則轉(zhuǎn)發(fā)分組到控制器70以用于分析??刂破饔峙渲猛ㄟ^OpenFlow網(wǎng)絡(luò)60的雙向路徑。通過此能夠在每數(shù)據(jù)流基礎(chǔ)上實現(xiàn)服務(wù)網(wǎng)絡(luò)中的業(yè)務(wù)引導(dǎo)。
[0014]業(yè)界存在將服務(wù)和應(yīng)用從專用硬件設(shè)備轉(zhuǎn)到數(shù)據(jù)中心的虛擬化環(huán)境的明顯趨勢。以RFx:s(對[信息、投標、報價、標書]的請求)請求虛擬的所有類型的以軟件為中心的產(chǎn)品,并且尤其是TVAS的供貨商將其產(chǎn)品提供為虛擬設(shè)備。
[0015]雖然存在極其數(shù)據(jù)平面處理密集的一些TVAS,這些TVAS如果部署為虛擬設(shè)備,則可造成相當大的性能退化,但存在極可能如在不遠的將來一樣被廣泛部署的其它TVAStJP使對于十分數(shù)據(jù)平面處理極其密集的那些TVAS,可能它們最終也將被虛擬化,如果未被虛擬化為典型的數(shù)據(jù)中心COTS(現(xiàn)成組件)硬件,至少被虛擬化為設(shè)計成支持正好此類應(yīng)用和服務(wù)的有效虛擬化的未面世硬件體系結(jié)構(gòu)。
[0016]預(yù)期TVAS的虛擬化將對如何實施服務(wù)鏈接有直接的影響。下面的因素能夠具有決定性的影響:
-虛擬(vTVAS)將在不同數(shù)據(jù)中心刀片上以低成本的不同“大小”,并且如編排系統(tǒng)所決定的一樣可部署/可例示。這允許實現(xiàn)像如下的可能性: -使實例專用于特定服務(wù)鏈(以便不再需要將來自此類TVAS實例的業(yè)務(wù)重新分類)
-選擇實例的位置,以便用于相同鏈的所有TVAS實例并置,或者位于相互靠近-創(chuàng)建鏈接那些TVAS實例的虛擬網(wǎng)絡(luò)拓撲,以便傳統(tǒng)路由選擇/轉(zhuǎn)發(fā)機制能夠處理業(yè)務(wù)引導(dǎo)
-虛擬化傳統(tǒng)服務(wù)和應(yīng)用的過程將要求一些軟件開發(fā),并且在進行此開發(fā)時,預(yù)期傳統(tǒng)裸機TVAS的虛擬化版本能夠獲得另外的功能性,像:
-從入口到出口,VLAN標記的留存
-實例的“大小”(特性、許可負載)方面的可變性,實例與像CR]性能和存儲器容量的計算資源直接相關(guān)
-提供有關(guān)當前負載的反饋/信息以便允許通過添加或移除實例以適應(yīng)變化的容量需要,實現(xiàn)自動橫向擴展和向內(nèi)擴展。
[0017]根據(jù)網(wǎng)絡(luò)功能虛擬化(NFV)倡議(“網(wǎng)絡(luò)功能虛擬化,簡介、益處、使能器、挑戰(zhàn)及行動呼吁,,("Network Funct1ns Virtualizat1n , An Introduct1n , Benefits,Enablers, Challenges and Call for Act1n", SDN and OpenFlow SDN and OpenFlowWorld Congress, October 2012)),即使界定到服務(wù)鏈接的入口的實體(通常為移動網(wǎng)絡(luò)中的GGSN或PGW和固定網(wǎng)絡(luò)中的BNG)可作為虛擬化設(shè)備移入數(shù)據(jù)中心。
[0018]用于傳統(tǒng)TVAS的基于SDN的業(yè)務(wù)引導(dǎo)方法十分強大,但由于其對SDN受控數(shù)據(jù)平面裝置、對SDN控制器及對源NAPT裝置的需求,也復(fù)雜且成本高的??蓴U展性和對關(guān)于以有線線速處理高帶寬的能力的懷疑也是個問題。
[0019 ] TVAS的虛擬化因此帶來了未由當前基于SDN的解決方案利用的高效率簡化改進的可能性。通過利用與即將到來的虛擬化過程或者適用于全新虛擬TVAS產(chǎn)品的TVAS更改而簡化服務(wù)鏈的方案十分保守,并且限于添加像VALN標記或更多常規(guī)標記或標簽的留存的修改,以便促進使用或改進傳統(tǒng)業(yè)務(wù)引導(dǎo)方法的效率。
[0020]在只利用標記的保持情況下,得到的基于SDN的方法通過降低在每個虛擬TVAS后對服務(wù)重新規(guī)范的需要,而獲得了定量化改進,但它們共享上面討論的體系結(jié)構(gòu)復(fù)雜性和相當大部分的成本。
[0021]基于為每個單鏈創(chuàng)建專用實例并且使用云編排以創(chuàng)建實行業(yè)務(wù)引導(dǎo)的虛擬拓撲以及獲得業(yè)務(wù)流以有效地使用基礎(chǔ)物理拓撲的方案兩者的方案隱含可能導(dǎo)致處理能力低效使用和復(fù)雜化的大量缺點和折中。此類缺點和折中的示例是:
-不同TVAS,由于它們實施的服務(wù)的性質(zhì),可在每計算能力或存儲容量的單位能夠處理的流的數(shù)量方面呈現(xiàn)巨大的差別。每鏈的vTVAS例示可導(dǎo)致極低利用的vTVAS實例
-一些TVAS要求在實例之間的協(xié)作/同步,以實現(xiàn)其目標(示例:透明高速緩存、內(nèi)容輸遞網(wǎng)絡(luò)、僵尸網(wǎng)絡(luò)攻擊檢測)。大量小尺寸的vTVAS能夠?qū)е赂叨鹊托А?br>[0022]-如果有包括非虛擬化TVAS(如上提及的,對于極其數(shù)據(jù)平面密集的服務(wù),其虛擬化可比其它服務(wù)來得更遲得多或者可能從沒有來)的需要,則將需要用于每鏈的專用硬件設(shè)備,或者方法將不得不與上述傳統(tǒng)方法之一組合,并且繼承所有其缺點。
[0023]雖然在前面的段落中未明確描述,但在TVAS內(nèi)實施有關(guān)服務(wù)鏈
接和有關(guān)鄰居TVAS(包括其編號(不同TVAS和不同實例)及其地址)的認知將也是可能的,以便它們能夠明確發(fā)送業(yè)務(wù)到鏈中的下一TVAS,并且對服務(wù)鏈中的添加,移除或其它更改做出反應(yīng)。雖然這是可能的,但復(fù)雜度將相當高,并且它將在某時以多供貨商方式成功實施是極不可能的。
[0024]相應(yīng)地,存在當數(shù)據(jù)分組流通過服務(wù)鏈時避免至少一些上面提及的缺點以及提供有效控制數(shù)據(jù)流通過服務(wù)鏈的可能性的需要。
【發(fā)明內(nèi)容】
[0025]此需要通過獨立權(quán)利要求項的特征來滿足。在隨附權(quán)利要求項中描述了其它實施例。
[0026]根據(jù)本發(fā)明的第一方面,提供了配置成控制在提供多個服務(wù)提供模塊的服務(wù)網(wǎng)絡(luò)中提供的服務(wù)鏈的服務(wù)控制實體。從源地址到目的地地址的數(shù)據(jù)分組流的數(shù)據(jù)分組通過服務(wù)網(wǎng)絡(luò)傳送,以應(yīng)用服務(wù)鏈到數(shù)據(jù)分組流,其中,在服務(wù)鏈中應(yīng)用服務(wù)的預(yù)定義的序列到數(shù)據(jù)分組流,其中,端到端層用于引導(dǎo)數(shù)據(jù)分組流從源地址到目的地地址。不同數(shù)據(jù)分組流能夠通過服務(wù)網(wǎng)絡(luò)傳送,以應(yīng)用流相關(guān)服務(wù)鏈到對應(yīng)數(shù)據(jù)分組流。服務(wù)控制實體包括鏈控制單元,鏈控制單元配置成確定要應(yīng)用到不同數(shù)據(jù)分組流的可能服務(wù)鏈,并且配置成為每個服務(wù)鏈識別在通過對應(yīng)服務(wù)鏈時應(yīng)用到數(shù)據(jù)分組流的服務(wù)的預(yù)定義的序列。鏈控制單元還配置成為每個服務(wù)鏈識別提供在服務(wù)的預(yù)定義的序列中包含的服務(wù)的服務(wù)提供模塊,并且配置成識別不得不以什么順序通過識別的服務(wù)提供模塊以便應(yīng)用服務(wù)的預(yù)定義的序列到數(shù)據(jù)分組流。服務(wù)控制實體的模塊控制單元配置成控制服務(wù)提供模塊,并且配置成指派端到端層的底層(underlying layer)的入口網(wǎng)絡(luò)地址到服務(wù)鏈中包含的每個識別的服務(wù)提供模塊,底層在服務(wù)網(wǎng)絡(luò)中用于將數(shù)據(jù)分組流指引到服務(wù)鏈的下一服務(wù)提供模塊。模塊控制單元為服務(wù)鏈中的每個服務(wù)提供模塊指派入口網(wǎng)絡(luò)地址到對應(yīng)服務(wù)鏈中使用的服務(wù)提供模塊,以這樣的方式服務(wù)提供模塊的入口網(wǎng)絡(luò)地址和作為對應(yīng)服務(wù)鏈中隨后服務(wù)提供模塊的相鄰服務(wù)提供模塊的入口網(wǎng)絡(luò)地址根據(jù)預(yù)定義關(guān)系相互相關(guān)。服務(wù)控制實體還包括配置成通知服務(wù)鏈分類單元在每個服務(wù)鏈中提供的第一服務(wù)提供模塊的入口網(wǎng)絡(luò)地址的傳送器,服務(wù)鏈分類單元識別進入服務(wù)網(wǎng)絡(luò)的數(shù)據(jù)分組流并且識別要應(yīng)用到每個數(shù)據(jù)分組流的服務(wù)鏈。
[0027]服務(wù)控制實體知道不得不以什么順序通過不同服務(wù)提供模塊以便應(yīng)用某個服務(wù)鏈。此外服務(wù)控制實體控制服務(wù)提供模塊,以這樣的方式它指派入口網(wǎng)絡(luò)地址到遵循預(yù)定義的關(guān)系的服務(wù)鏈中包含的服務(wù)提供模塊。此外,每個服務(wù)鏈分類單元被通知在不同服務(wù)鏈中每個入口點的入口網(wǎng)絡(luò)地址,以便服務(wù)鏈分類單元只需將數(shù)據(jù)分組流的數(shù)據(jù)分組轉(zhuǎn)發(fā)到識別的鏈的第一服務(wù)提供模塊。
[0028]在來自相鄰服務(wù)提供模塊的入口網(wǎng)絡(luò)地址遵循預(yù)定義的關(guān)系時,知道預(yù)定義的關(guān)系的服務(wù)提供模塊能夠?qū)?shù)據(jù)分組流指引到鏈中的下一服務(wù)提供模塊。
[0029]模塊控制單元可能配置成使用底層的可能網(wǎng)絡(luò)地址的預(yù)定義的范圍來指派入口網(wǎng)絡(luò)地址。此外,模塊控制單元能夠配置成為每個可能服務(wù)鏈使用在預(yù)定義的范圍內(nèi)預(yù)定義的范圍的子范圍。子范圍能夠是預(yù)定義的范圍的子集或一部分。對于每個可能服務(wù)鏈,使用預(yù)定義的范圍的一部分或子集。每個服務(wù)鏈使用底層的網(wǎng)絡(luò)地址的鏈特定子集來定義服務(wù)鏈。
[0030]底層的入口網(wǎng)絡(luò)地址可以是以太網(wǎng)MAC地址(媒體訪問控制)。在另一實施例中,底層的入口網(wǎng)絡(luò)地址是添加到數(shù)據(jù)分組流的封裝端到端層地址。
[0031]模塊控制單元可控制每個服務(wù)鏈中的服務(wù)提供模塊,以這樣的方式服務(wù)提供模塊使用預(yù)定義的關(guān)系,基于預(yù)定義的關(guān)系修改接收到的數(shù)據(jù)分組流的數(shù)據(jù)分組中包含的底層的入口網(wǎng)絡(luò)地址,并且使用根據(jù)預(yù)定義的關(guān)系修改的該修改的入口網(wǎng)絡(luò)地址作為底層的目的地網(wǎng)絡(luò)地址,以將數(shù)據(jù)分組流轉(zhuǎn)發(fā)到服務(wù)鏈中的下一服務(wù)提供模塊。
[0032]在此實施例中,服務(wù)鏈中的不同服務(wù)提供模塊使用預(yù)定義的關(guān)系,并且通過應(yīng)用預(yù)定義的關(guān)系到入口網(wǎng)絡(luò)地址以便生成數(shù)據(jù)分組應(yīng)轉(zhuǎn)發(fā)到的目的地網(wǎng)絡(luò)地址,確定鏈中下一服務(wù)提供模塊的目的地網(wǎng)絡(luò)地址。一旦數(shù)據(jù)分組流轉(zhuǎn)發(fā)到服務(wù)鏈中的第一服務(wù)提供模塊,每個服務(wù)提供模塊便能夠確定應(yīng)將數(shù)據(jù)分組流發(fā)送到哪里,而無需來自外部的進一步指示。這適用于除鏈中最后一個服務(wù)提供模塊外鏈的所有服務(wù)提供模塊。
[0033]模塊控制單元可控制每個服務(wù)鏈中數(shù)據(jù)分組流通過的最后服務(wù)提供模塊,以這樣的方式每個服務(wù)鏈中的最后服務(wù)提供模塊丟棄接收到的數(shù)據(jù)分組流的數(shù)據(jù)分組中的入口目的地地址,并且將端到端層的目的地地址考慮在內(nèi),轉(zhuǎn)發(fā)接收到的數(shù)據(jù)分組流的分組。此最后服務(wù)提供模塊因此將業(yè)務(wù)作為傳統(tǒng)路由選擇裝置處理。數(shù)據(jù)分組根據(jù)例如第3層IP轉(zhuǎn)發(fā)規(guī)則的端到端層的轉(zhuǎn)發(fā)規(guī)則而路由,而不是修正入口網(wǎng)絡(luò)地址以便確定目的地地址。
[0034]端到端層能夠是已知OSI層結(jié)構(gòu)的第三層,底層是OSI層模型的第二層。
[0035]在底層的可能網(wǎng)絡(luò)地址的預(yù)定義的范圍內(nèi),模塊控制單元可使用以下部分至少之一:指示底層的網(wǎng)絡(luò)地址在服務(wù)網(wǎng)絡(luò)內(nèi)在本地管理的可能網(wǎng)絡(luò)地址的預(yù)定義的范圍內(nèi)的部分、可用于指示服務(wù)網(wǎng)絡(luò)內(nèi)數(shù)據(jù)分組流的流方向的預(yù)定義的范圍內(nèi)的又一部分。第三部分可用于識別服務(wù)鏈,并且最后但并非最不重要的,第四部分能夠包含由服務(wù)鏈使用的底層的網(wǎng)絡(luò)地址。最后或第四部分對應(yīng)于子范圍或附屬范圍,并且包含由服務(wù)提供模塊使用的網(wǎng)絡(luò)地址,因此包含入口網(wǎng)絡(luò)地址。
[0036]服務(wù)鏈內(nèi)可能服務(wù)提供模塊用于提供單個服務(wù),例如,用于負載平衡。在本上下文中,鏈控制單元能夠在每個服務(wù)鏈中確定在服務(wù)鏈內(nèi)用于提供單個服務(wù)的服務(wù)提供模塊的最大數(shù)量。模塊控制單元然后指派與如服務(wù)提供模塊的確定的最大數(shù)量一樣多的入口網(wǎng)絡(luò)地址到每個服務(wù)鏈中的第一服務(wù)提供模塊。這使得易于使用服務(wù)鏈中的幾個服務(wù)提供模塊。對于提供相同服務(wù)的每個服務(wù)提供模塊,指派不同入口網(wǎng)絡(luò)地址到鏈的第一服務(wù)提供模塊,以便存在與提供單個服務(wù)的服務(wù)模塊一樣多的不同服務(wù)鏈。如從上述內(nèi)容中能夠看到的,可指派底層的幾個入口網(wǎng)絡(luò)地址到單個服務(wù)提供模塊。
[0037]此外,本發(fā)明涉及由服務(wù)控制實體實施的對應(yīng)方法,其中根據(jù)方法的一個步驟,確定要應(yīng)用到不同數(shù)據(jù)分組流的可能服務(wù)鏈。此外,為每個服務(wù)鏈識別在通過對應(yīng)服務(wù)鏈時應(yīng)用到數(shù)據(jù)分組流的服務(wù)的預(yù)定義的序列。此外,為每個服務(wù)鏈識別提供在服務(wù)的預(yù)定義的序列中包含的服務(wù)的服務(wù)提供模塊,并且識別不得不以什么順序通過識別的服務(wù)提供模塊以便應(yīng)用服務(wù)的預(yù)定義的序列到數(shù)據(jù)分組流。此外,指派端到端層的底層的入口網(wǎng)絡(luò)地址到服務(wù)鏈中每個識別的服務(wù)提供模塊,其中,底層的網(wǎng)絡(luò)地址在服務(wù)網(wǎng)絡(luò)中用于指引數(shù)據(jù)分組流到鏈的下一服務(wù)提供模塊。入口網(wǎng)絡(luò)地址被指派到對應(yīng)服務(wù)鏈中服務(wù)提供模塊,以這樣的方式服務(wù)提供模塊的入口網(wǎng)絡(luò)地址和作為對應(yīng)服務(wù)鏈中隨后服務(wù)提供模塊的相鄰服務(wù)提供模塊的入口網(wǎng)絡(luò)地址根據(jù)預(yù)定義關(guān)系相互相關(guān)。此外,服務(wù)鏈分類單元被通知在每個服務(wù)鏈中提供的第一服務(wù)提供模塊的入口網(wǎng)絡(luò)地址。
[0038]本發(fā)明還涉及在服務(wù)網(wǎng)絡(luò)中提供服務(wù)到數(shù)據(jù)分組流的服務(wù)提供模塊。服務(wù)提供模塊包括接收器,接收器配置成接收數(shù)據(jù)分組流之一的數(shù)據(jù)分組,數(shù)據(jù)分組包括端到端層的底層的入口網(wǎng)絡(luò)地址,入口網(wǎng)絡(luò)地址在服務(wù)網(wǎng)絡(luò)中用作將數(shù)據(jù)分組流指引到服務(wù)提供模塊的入口地址。此外服務(wù)提供模塊包括配置成處理數(shù)據(jù)分組流的數(shù)據(jù)分組以便應(yīng)用由服務(wù)提供模塊提供的服務(wù)的處理單元。處理單元配置成在應(yīng)用服務(wù)到數(shù)據(jù)分組時,保持底層的入口網(wǎng)絡(luò)地址。提供了地址計算單元,該單元配置成計算數(shù)據(jù)分組流將傳送到的服務(wù)鏈中的下一服務(wù)提供模塊的底層的目的地地址。地址計算單元配置成基于底層的入口網(wǎng)絡(luò)地址,并且基于提供在接收到的數(shù)據(jù)分組流的數(shù)據(jù)分組中包含的入口網(wǎng)絡(luò)地址與底層的目的地地址之間關(guān)系的預(yù)定義的關(guān)系,計算目的地地址。傳送器使用下一服務(wù)提供模塊的底層的計算的目的地地址,將數(shù)據(jù)分組流的數(shù)據(jù)分組傳送到服務(wù)鏈中下一服務(wù)提供模塊。
[0039]服務(wù)提供模塊留存入口網(wǎng)絡(luò)地址,并且使用后者為服務(wù)鏈的下一服務(wù)計算數(shù)據(jù)分組流將傳送到的目的地地址。用于基于入口網(wǎng)絡(luò)地址來確定目的地地址的預(yù)定義的關(guān)系能夠是十分簡單的關(guān)系,例如,服務(wù)提供模塊可只將網(wǎng)絡(luò)地址增加一。然而,應(yīng)理解的是,使服務(wù)鏈中第二相鄰服務(wù)提供模塊的入口網(wǎng)絡(luò)地址和第一服務(wù)提供模塊的入口網(wǎng)絡(luò)地址相關(guān)的任何其它關(guān)系均可使用。服務(wù)提供模塊修改目的地地址(它是第2層幀的MAC地址或封裝分組的第3層地址)并且使用修改的地址作為目的地地址。
[0040]服務(wù)提供模塊的接收器可配置成向上傳遞底層的入口網(wǎng)絡(luò)地址到端到端層,并且地址計算單元可在處理后將計算的目的地地址向下傳遞到底層,在其中它用作數(shù)據(jù)分組流的數(shù)據(jù)分組的目的地地址。服務(wù)提供模塊向上傳遞網(wǎng)絡(luò)地址到端到端層,而不是忽略底層的網(wǎng)絡(luò)。計算的目的地地址從端到端層傳遞回底層。接收器可向上傳遞底層的入口網(wǎng)絡(luò)地址到端到端層,其中,地址計算單元將計算的目的地地址向下傳遞到底層,在其中它用作數(shù)據(jù)分組流的分組的目的地地址。
[0041 ]服務(wù)提供模塊還能夠包括配置成指派底層的網(wǎng)絡(luò)地址到服務(wù)提供模塊的端口的端口控制單元,其中,在接收到用于指派網(wǎng)絡(luò)地址到端口(包括要被指派的入口網(wǎng)絡(luò)地址)的命令時,端口控制單元指派入口網(wǎng)絡(luò)地址到服務(wù)提供模塊的端口之一。
[0042]可從服務(wù)控制實體接收命令。
[0043]此外傳送器可傳送指派的網(wǎng)絡(luò)地址到服務(wù)網(wǎng)絡(luò)的轉(zhuǎn)發(fā)裝置,通知服務(wù)網(wǎng)絡(luò)的轉(zhuǎn)發(fā)實體網(wǎng)絡(luò)地址被指派到的端口。在指派的網(wǎng)絡(luò)地址是MAC地址時,使用無故ARP消息,能夠?qū)⒅概傻木W(wǎng)絡(luò)地址傳送到轉(zhuǎn)發(fā)實體,以通知第2層傳輸裝備MAC的位置。
[0044]也可能利用在不同服務(wù)提供模塊之間流動的IP分組的封裝,而不是使用第2層MAC地址。在此實施例中,在基于封裝的端到端層地址將數(shù)據(jù)分組流的數(shù)據(jù)分組傳送到服務(wù)鏈中的下一服務(wù)提供模塊前,地址計算單元將封裝端到端層地址作為目的地地址添加到接收到的數(shù)據(jù)分組。此外,地址計算單元配置成在應(yīng)用服務(wù)到接收到的數(shù)據(jù)分組流的數(shù)據(jù)分組前,移除接收到的數(shù)據(jù)分組流的數(shù)據(jù)分組中的封裝。
[0045]此外本發(fā)明涉及由服務(wù)提供模塊提供服務(wù)的對應(yīng)方法。在此方法中,接收數(shù)據(jù)分組流的數(shù)據(jù)分組,數(shù)據(jù)分組包括端到端層的底層的入口網(wǎng)絡(luò)地址,該入口網(wǎng)絡(luò)地址在服務(wù)網(wǎng)絡(luò)中用作將數(shù)據(jù)分組流指引到服務(wù)提供模塊的入口地址。此外,處理所述一個數(shù)據(jù)分組流的數(shù)據(jù)分組,以便應(yīng)用由服務(wù)提供模塊提供的服務(wù),其中,在處理后保持底層的入口網(wǎng)絡(luò)地址。此外,計算數(shù)據(jù)分組流將傳送到的服務(wù)鏈中的下一服務(wù)提供模塊的底層的目的地地址?;诘讓拥娜肟诰W(wǎng)絡(luò)地址,并且基于提供在接收到的數(shù)據(jù)分組流的數(shù)據(jù)分組中包含的入口網(wǎng)絡(luò)地址與底層的目的地地址之間關(guān)系的預(yù)定義的關(guān)系,計算目的地地址。此外,使用下一服務(wù)提供模塊的底層的計算的目的地地址,將數(shù)據(jù)分組流的分組傳送到服務(wù)鏈中下一服務(wù)提供模塊。
[0046]上面提及的特征和下面還將解釋的特征不但可單獨或如明確指示的一樣組合使用,而且可以以其它組合使用。除非另有明確提及,否則本發(fā)明的特征和實施例可組合。
【附圖說明】
[0047]在結(jié)合附圖閱讀時,本發(fā)明的各種特征和實施例將變得更明了。在這些圖形中,
圖1顯示服務(wù)接入提供商的網(wǎng)絡(luò)體系結(jié)構(gòu),
圖2顯示在軟件定義的網(wǎng)絡(luò)中的業(yè)務(wù)引導(dǎo),
圖3顯示結(jié)合本發(fā)明的特征的應(yīng)用服務(wù)鏈的數(shù)據(jù)分組流的控制,
圖4顯示MAC地址格式的示意圖,
圖5顯示兩個不同服務(wù)鏈和有關(guān)MAC地址的第一示例,
圖6顯示在結(jié)合雙向服務(wù)鏈使用的服務(wù)鏈中使用的MAC地址的另一示例,
圖7顯示其中不同服務(wù)提供模塊提供相同服務(wù)的服務(wù)鏈中帶有MAC地址的兩個表格,
圖8顯示結(jié)合本發(fā)明的特征的服務(wù)控制實體的示意框圖,
圖9顯示結(jié)合本發(fā)明的特征的服務(wù)提供模塊的示意框圖,
圖10顯示如何基于遍歷服務(wù)鏈的數(shù)據(jù)分組流中預(yù)定義的關(guān)系,修正入口網(wǎng)絡(luò)地址的示意框圖,
圖11示出包括由服務(wù)控制實體實施的以控制通過服務(wù)鏈的數(shù)據(jù)分組流的步驟的流程圖,以及
圖12顯示包括在應(yīng)用服務(wù)到數(shù)據(jù)分組流時由服務(wù)鏈中服務(wù)提供模塊實施的步驟的流程圖。
【具體實施方式】
[0048]在以下中,將參照附圖詳細地描述本發(fā)明。需要理解的是,不得以限制意義理解實施例的以下描述。圖形要視為示意性表示,并且圖中示出的元素不一定按比例顯示。相反,各種元素被表示使得其功能和一般用途變得對本領(lǐng)域技術(shù)人員明了。圖中顯示的各種功能塊、裝置、組件或功能單元之間的任何連接或耦合可通過間接連接或耦合實施。除非另有明確說明,否則,組件之間的耦合也可通過無線連接建立。此外,功能塊可在硬件、固件、軟件或其組合中實施。
[0049]圖3顯示其中可使用本發(fā)明的系統(tǒng)體系結(jié)構(gòu)。提供了控制不同服務(wù)提供模塊(圖3中命名為TVAS 300)的服務(wù)控制實體100。用戶裝置80可從服務(wù)器35請求數(shù)據(jù)分組流。來自服務(wù)器35的數(shù)據(jù)業(yè)務(wù)通過因特網(wǎng)30,到達互連點PoI 20,并且進入其中提供了服務(wù)鏈分類單元200的服務(wù)網(wǎng)絡(luò)400,服務(wù)鏈分類單元基于輸入數(shù)據(jù)分組或幀的服務(wù)特性,將其分類到不同服務(wù)鏈中。如下面將進一步詳細解釋的,此外服務(wù)鏈分類單元200將數(shù)據(jù)分組流發(fā)送到選擇的服務(wù)鏈的第一 MAC地址。服務(wù)提供單元300提供諸如防火墻、蠕蟲過濾器、內(nèi)容過濾、家長控制、深度分組檢查等的服務(wù)。服務(wù)提供模塊300附連到轉(zhuǎn)發(fā)裝置150。數(shù)據(jù)分組流的數(shù)據(jù)分組通過不同服務(wù)提供模塊時,數(shù)據(jù)分組被傳送到轉(zhuǎn)發(fā)裝置,其中,數(shù)據(jù)分組流通過附連的服務(wù)提供模塊。在下行鏈路方向上,在數(shù)據(jù)分組流離開服務(wù)網(wǎng)絡(luò)時,數(shù)據(jù)分組通過網(wǎng)關(guān)40和接入網(wǎng)絡(luò)50。
[0050]在以下中,我們將討論由服務(wù)鏈控制實體和服務(wù)提供模塊300實施的一些主要步驟,其中,以太網(wǎng)MAC地址用作入口網(wǎng)絡(luò)地址。然而,如下面將進一步指定的,可通過添加封裝來使用在MAC地址上方的層的地址,而不是使用MAC地址。在圖3中,端到端層用于將業(yè)務(wù)從用戶裝置80引導(dǎo)到服務(wù)器35,并且在另一方向上從服務(wù)器35引導(dǎo)到用戶裝置80。此網(wǎng)絡(luò)地址是利用普通或可轉(zhuǎn)換尋址方案在連接到網(wǎng)絡(luò)的節(jié)點之間提供連接性的端到端層地址。在服務(wù)網(wǎng)絡(luò)400中,在端到端層下的底層用于指引業(yè)務(wù)到不同服務(wù)提供模塊300或轉(zhuǎn)發(fā)裝置150。在底層用于在相鄰節(jié)點之間提供連接性時,這意味著它不一定指物理鄰近。在相鄰節(jié)點之間的連接性可能與其它端到端層利用相同技術(shù),因為它是在IP或MPLS(多協(xié)議標簽交換)網(wǎng)絡(luò)中使用隧穿時的情況。服務(wù)控制實體100預(yù)留一定范圍的以太網(wǎng)MAC地址,基本上是在本地管理單播地址的整個范圍的子集,即,八位字節(jié)形式XXX xxxlO中的第一個。此可能網(wǎng)絡(luò)地址的預(yù)定義范圍然后被進一步拆分成更小的范圍或子范圍,這些更小范圍或子范圍用于服務(wù)網(wǎng)絡(luò)400中提供的不同服務(wù)鏈。服務(wù)控制實體100知道在服務(wù)網(wǎng)絡(luò)400中可應(yīng)用到數(shù)據(jù)分組流的可能服務(wù)鏈。在服務(wù)鏈接域的入口的服務(wù)鏈分類單元200將分組發(fā)送到為從分類過程得到的服務(wù)鏈預(yù)留的第一 MAC地址。服務(wù)控制實體100以與遍歷服務(wù)提供模塊相同的順序為每個服務(wù)提供模塊300指派來自鏈特定MAC子集的MAC地址到服務(wù)提供模塊300的入口端口。在本上下文中,人們可注意到,一個服務(wù)提供模塊可在相同入口端口上具有許多不同MAC地址。在服務(wù)提供模塊中,從通過服務(wù)提供模塊的入口分組留存目的地以太網(wǎng)MAC地址,并且使用預(yù)定義的關(guān)系修正留存的MAC地址的值,例如,可將MAC地址值遞增一,并且然后由出口使用此地址將數(shù)據(jù)分組流的數(shù)據(jù)分組轉(zhuǎn)發(fā)到附連到轉(zhuǎn)發(fā)裝置150之一的下一服務(wù)提供模塊。例如帶有在為每個鏈預(yù)留的MAC地址范圍中最高MAC地址的服務(wù)提供模塊的在每個鏈中的最后服務(wù)提供模塊作為傳統(tǒng)路由選擇裝置處理業(yè)務(wù)。它丟棄地址,并且根據(jù)第3層IP轉(zhuǎn)發(fā)規(guī)則路由分組,而不是留存和遞增入口目的地MAC地址。
[0051]應(yīng)注意的是,上述服務(wù)鏈是單向的,如不同于在其它已知解決方案中服務(wù)鏈的意義。通過為上行鏈路服務(wù)鏈和下行鏈路服務(wù)鏈應(yīng)用上述步驟來處理雙向業(yè)務(wù),每個鏈使用不同MAC子集以便模仿技術(shù)領(lǐng)域中熟知的方法,其中,服務(wù)鏈的上行鏈路和下行鏈路遍歷是對稱的,兩個服務(wù)鏈可能包括相反順序的完全相同的服務(wù)提供模塊。然而,在上行鏈路和下行鏈路遍歷不一定對稱的情況下,其它情形是可能的。
[0052]概括來講,服務(wù)控制實體100實施必需的邏輯以將服務(wù)鏈映射到MAC地址范圍,指派和供應(yīng)在對應(yīng)TVAS或服務(wù)提供實體的入口 MAC地址,并且通知服務(wù)鏈分類單元200哪個第一MAC地址用于每個服務(wù)鏈。PoI 20是在服務(wù)網(wǎng)絡(luò)與因特網(wǎng)或外部網(wǎng)絡(luò)之間邊界的互連的點,通過互聯(lián)網(wǎng)或外部網(wǎng)絡(luò),能夠到達端用戶的端到端通信的另一端點。
[0053]此服務(wù)鏈分類單元200基于輸入分組或幀的服務(wù)特性或策略,將其分類到不同服務(wù)鏈中,并且將分組發(fā)送到用于選擇的服務(wù)鏈的第一MAC地址。此實體可在網(wǎng)關(guān)和/SPoI20內(nèi)并置,或者它可能經(jīng)轉(zhuǎn)發(fā)裝置150連接。在任何情況下,進入服務(wù)網(wǎng)絡(luò)400并且請求服務(wù)鏈接的任何數(shù)據(jù)分組業(yè)務(wù)均通過此實體。
[0054]轉(zhuǎn)發(fā)裝置150完全不知道服務(wù)鏈接,并且使用已知機制進行轉(zhuǎn)發(fā)。在上述實施例,轉(zhuǎn)發(fā)裝置使用以太網(wǎng)轉(zhuǎn)發(fā)。在兩個服務(wù)提供模塊之間可能使用IP隧道的備選實施例中,轉(zhuǎn)發(fā)模塊基于隧道的目的地IP地址,轉(zhuǎn)發(fā)或路由業(yè)務(wù)。
[0055]結(jié)合圖4,更詳細解釋MAC地址的哪個部分可由本發(fā)明使用來控制服務(wù)鏈。關(guān)于圖4,以太網(wǎng)MAC地址是6字節(jié)或48個比特長,其中,第一字節(jié)的最高有效比特指示地址是單播還是多播,以及地址是全局唯一的還是在本地管理。在下述示例中,我們假設(shè)MAC地址的完全范圍專用于服務(wù)鏈接,其第一字節(jié)是以二進制描述的00000010。如從圖4能夠看到的,在數(shù)字的此序列中數(shù)字I指示它是在本地管理的地址。此外這暗示40個比特的剩余范圍。
[0056]下一假設(shè)是在一個并且相同服務(wù)鏈中要鏈接的服務(wù)提供模塊的合理的最大數(shù)是16,這要求4個比特以便進行編碼。根據(jù)這些假設(shè),將采用以下模式,為每個服務(wù)鏈預(yù)留16個MAC地址的子集:
服務(wù)鏈O => MAC 02:00:00:00:00:00到02:00:00:00:00: Of服務(wù)鏈I => MAC 02:00:00:00:00:10到02:00:00:00:00:1f
服務(wù)鏈 1048576 => MAC 02:00:00:10:00:00到02:00:00:10:00: Of這意味著支持多達大約68,000,000,000個單向服務(wù)鏈或大約34,000,000,000個雙向服務(wù)鏈。結(jié)合圖5,顯示了兩個不同的服務(wù)鏈。第一服務(wù)鏈包括服務(wù)提供模塊TVAS-A、TVAS-B和Po 1-A,并且另一服務(wù)鏈包括服務(wù)提供模塊TVAS-B、TVAS-A、TVAS-C和Po 1-A。服務(wù)提供模塊將獲得指派到用于如圖5中所示的兩個服務(wù)鏈的其上行鏈路入口接口的指派的MAC地址。請注意,本發(fā)明中顯示的MAC地址大多數(shù)以十六進制形式指示。在圖5中顯示的示例中,最后字節(jié)指示每鏈使用的MAC地址,而圖5中顯示的第一字節(jié)中的數(shù)字2指示MAC地址在本地管理??赡艿姆?wù)鏈能夠包括以下服務(wù)鏈:深度分組檢查服務(wù)、報頭富集服務(wù)和防火墻服務(wù)。另一示例將是:視頻優(yōu)化服務(wù)、網(wǎng)絡(luò)地址轉(zhuǎn)換服務(wù)、內(nèi)容過濾服務(wù)。
[0057]在以下中,結(jié)合圖6,更詳細地解釋雙向服務(wù)鏈的處理。
[0058]首先,為促進適用于相同業(yè)務(wù)的上行鏈路和下行鏈路服務(wù)鏈的相關(guān),在此示例中,我們使用MAC地址的第9個比特(S卩,預(yù)留范圍的最高有效比特)指示上行鏈路(O)或下行鏈路(I),同時使所有其它比特保持相等。這暗示對應(yīng)于服務(wù)鏈O的下行鏈路服務(wù)鏈將是服務(wù)鏈0x800000000 [TVAS-B, TVAS-A, GW-A],并且對應(yīng)于服務(wù)鏈I的將是服務(wù)鏈0x800000001[TVAS-C, TVAS-A, TVAS-B, GW-A],這導(dǎo)致對應(yīng)實例具有如圖6中所示的指派到其下行鏈路入口接口的MAC地址。
[0059]在以下中,討論在服務(wù)提供模塊內(nèi)的業(yè)務(wù)處理。
[0060]在服務(wù)提供模塊內(nèi),在其內(nèi)容要由服務(wù)提供模塊處理的第2幀到達時,不但向上傳遞必需傳遞到更高層以便處理的第3層分組,而且向上傳遞與分組一起接收到的目的地第2層MAC地址。對于第3層服務(wù)提供模塊,將第2層信息傳遞到更高協(xié)議層的要求可以是不常見的;然而,它在本發(fā)明中用于確定下一服務(wù)提供模塊的目的地地址。在本上下文中,應(yīng)注意的是,不遵守分層連網(wǎng)規(guī)則是服務(wù)提供模塊的本性。根據(jù)定義,服務(wù)提供模塊確實如第7層應(yīng)用一樣處理有效負載的內(nèi)容,但它確實偽裝第2層或第3層裝置的行為,留存或偽裝在那些層的報頭。
[0061]處理分組以便應(yīng)用請求的服務(wù)的服務(wù)提供模塊在其處理工作結(jié)束時,可遞增接收到的第2層MAC地址,并且將它傳遞到協(xié)議棧的第2層以便將它用作輸出分組的目的地地址。此遞增反映在服務(wù)提供模塊中用于確定目的地地址的預(yù)確定的關(guān)系。此預(yù)定義的關(guān)系可由服務(wù)控制實體實施。然而,如何修正入口網(wǎng)絡(luò)地址的預(yù)定義的關(guān)系也可在服務(wù)提供模塊內(nèi)直接實施或預(yù)配置或手動配置,以進行地址計算操作。因此,服務(wù)控制實體不必以集中方式在服務(wù)提供模塊中存儲預(yù)定義的關(guān)系。預(yù)定義的關(guān)系也可在設(shè)計服務(wù)提供模塊時預(yù)配置,或者可由網(wǎng)絡(luò)的操作員手動配置。
[0062]服務(wù)提供模塊可發(fā)送用于單個輸入分組的幾個輸出分組,丟棄分組,或者將幾個輸入分組組合成不同數(shù)量的輸出分組。在顯示的示例中,從帶有MAC地址“A”的輸入分組的處理產(chǎn)生的輸出分組應(yīng)當留下具有“A+1”為目的地的服務(wù)提供模塊。
[0063]在TVAS處理是非侵入式情況下,S卩,它只讀取分組而沒有應(yīng)用任何修改到內(nèi)容,則整個發(fā)明能夠輕松地在協(xié)議棧的第2層部分中實施,而無需將MAC地址信息傳遞到更高層的軟件。
[0064]應(yīng)注意的是,TVAS具有不但更改已處理數(shù)據(jù)的內(nèi)容,而且更改IP報頭的充分自由。應(yīng)用網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)、隧穿或影響IP報頭的任何其它機制不阻止服務(wù)鏈接使分組保持通過正確的TVAS鏈。這與傳統(tǒng)機制相比是個大的優(yōu)點。
[0065]對于作為HTTP代理工作的TVAS的類型,能夠輕松地給出TVAS能夠如何利用此靈活性的示例。如由IETF RFC 2068定義的第一代HTTP代理的工作方式是配置UE HTTP客戶端使用HTTP代理的IP地址作為IP目的地,客戶端然后使用不同HTTP連接和由HTTP代理擁有的IP地址作為朝向另一端的HTTP服務(wù)器的源。由于此類型的代理要求修改UE(用戶實體)HTTP客戶端,并且由于客戶端如果愿意,則然后能夠輕松繞過代理,因此,許多理代HTTP代理屬于TVAS的類別,并且作為透明代理工作,也稱為攔截代理、內(nèi)聯(lián)代理或強制代理。透明代理在網(wǎng)絡(luò)層攔截普通通信而不要求任何特殊客戶端配置。現(xiàn)在,透明代理能夠?qū)嵤┎煌墑e的“透明性”。
[0066]1.在它在服務(wù)器側(cè)上使用其自己的地址時,“半透明”模式只在客戶端側(cè)是透明的(偽裝服務(wù)器的IP地址的所有權(quán))。此模式具有重要的優(yōu)點,像降低在代理的資源使用,并且允許朝向處理多個流的服務(wù)器的更高效通信。它也可能用于向用戶提供一定程度的匿名,或者避免對網(wǎng)絡(luò)地址轉(zhuǎn)換的需要。但此模式不適合最新的服務(wù)鏈接解決方案,這是因為遍歷半透明代理的分組不留存IP報頭,并且因此它們不能被許多服務(wù)鏈接解決方案識別為屬于相同流。
[0067]2.“完全透明”模式,其中代理在兩側(cè)上是透明的,也在其與服務(wù)器的通信中偽造客戶端的IP地址。這要求更復(fù)雜且更低效的實施,但由于它是在許多當前服務(wù)鏈接解決方案中可使用的唯一方式,因此,它是一些產(chǎn)品支持的部署模式。
[0068]對于基于SDN的服務(wù)鏈接解決方案,只“完全透明”模式可使用。
[0069]“半透明”部署模式將違反解決方案,并且此類TVAS不能使用。
[0070]應(yīng)當注意的是,在服務(wù)器側(cè)上移除透明要求可有相當大的優(yōu)點,像實行下行鏈路回歸而不對網(wǎng)絡(luò)和性能或資源使用改進提出另外的要求。
[0071]回到參照提供服務(wù)鏈的服務(wù)控制實體,圖3的服務(wù)控制實體100指派MAC地址到對應(yīng)服務(wù)提供模塊的入口接口。
[0072]指派本身暗示在vTVAS情況下將那些MAC地址綁定到屬于vTVAS實例的虛擬NIC(網(wǎng)絡(luò)接口卡),或者將那些MAC地址綁定到屬于硬件設(shè)備類型的TVAS的物理以太網(wǎng)接口。這是連網(wǎng)過程中的普通操作。數(shù)據(jù)中心環(huán)境中的編排系統(tǒng)通常確實指派不同MAC到在服務(wù)器刀片上的不同虛擬機,并且硬件設(shè)備確實也指派幾個MAC地址到其硬件接口,例如在實施像VRRP的高可用性機制時。本發(fā)明在更高標度執(zhí)行該操作,其中,幾十或成百上千個MAC地址能夠被指派到相同虛擬或物理接口,但這不應(yīng)導(dǎo)致任何實施困難。雖然ARP業(yè)務(wù)量將增加,但利用當前網(wǎng)絡(luò)環(huán)境中使用的帶寬值,量或ARP業(yè)務(wù)將還是創(chuàng)建可忽略的負載。
[0073]在MAC地址指派時,獲得新MAC地址的TVAS(更準確地說,托管它的操作系統(tǒng))應(yīng)發(fā)送無故ARP消息以通知第2層傳輸裝備MAC的位置。為避免截止,應(yīng)確保常規(guī)業(yè)務(wù)與源使用相同MAC地址,或者無故ARP消息應(yīng)定期發(fā)送。用于傳遞MAC地址的位置到第2層交換裝備的其它機制也是可能的。
[0074]服務(wù)器上的物理以太網(wǎng)端口如果不能明確配置要求數(shù)量的MAC地址,則能夠使用混雜以太網(wǎng)模式獲得發(fā)送到所有MAC的業(yè)務(wù)。由于指派的MAC經(jīng)無故ARP而變得為交換基礎(chǔ)設(shè)施所知,并且由于今天的以太網(wǎng)交換機確實全部實施MAC學(xué)習(xí),因此,這將不會產(chǎn)生任何性能影響。
[0075]指派業(yè)務(wù)流到服務(wù)鏈的服務(wù)鏈分類單元確保在數(shù)據(jù)分組進入服務(wù)網(wǎng)絡(luò)域時,數(shù)據(jù)分組流的數(shù)據(jù)分組發(fā)送到鏈中第一服務(wù)提供模塊的MAC地址。服務(wù)分類步驟然后導(dǎo)致指派第一服務(wù)提供模塊的MAC地址作為離開服務(wù)鏈分類單元200的以太網(wǎng)幀的目的地。無需其它進一步處理。如從圖3能夠推斷的,服務(wù)分類應(yīng)對上行鏈路和下行鏈路方向均進行。由轉(zhuǎn)發(fā)裝置進行的業(yè)務(wù)轉(zhuǎn)發(fā)可根據(jù)已知第2層以太網(wǎng)技術(shù)實施。對于上述實施例,要求用于所有TVAS的共用第2層域。
[0076]應(yīng)當注意到的是,這不排除在地理區(qū)域內(nèi)擴展和/或其中服務(wù)網(wǎng)絡(luò)的幾個子集經(jīng)第3層網(wǎng)絡(luò)互連的服務(wù)網(wǎng)絡(luò)的使用。在數(shù)據(jù)中心和云環(huán)境中,可能和常見的慣例是使用封裝技術(shù)實現(xiàn)共用第2層域涉及幾個數(shù)據(jù)中心和以其它方式不相交的網(wǎng)絡(luò)段。
[0077]每個鏈中的最后服務(wù)提供模塊與鏈中的其它服務(wù)提供模塊表現(xiàn)不同。鏈中的此最后服務(wù)提供模塊表現(xiàn)得像傳統(tǒng)服務(wù)提供模塊一樣,其中,輸出分組不使用通過輸入分組的MAC地址的算術(shù)遞增推導(dǎo)的目的地MAC地址,但其中,輸出分組根據(jù)傳統(tǒng)第3層轉(zhuǎn)發(fā)機制路由或轉(zhuǎn)發(fā)。這可以是下一跳的選擇中目的地IP地址的查找和使用由此類下一跳擁有的MAC地址。
[0078]在功能要求將導(dǎo)致將不具有第3層能力的服務(wù)提供模塊指定為鏈中的最后服務(wù)提供模塊的情況下,則應(yīng)通過將傳統(tǒng)第3層路由器作為出口節(jié)點添加到鏈來擴展鏈。雖然由于缺乏有效負載處理功能性而通常不被認為是服務(wù)提供模塊,但第3層路由器能夠用作出口服務(wù)提供模塊而無任何缺點。
[0079]在以下中,公開了如何獲得在不同TVAS實例之間的負載平衡,例如,在提供幾個TVAS以應(yīng)用單個服務(wù)時。
[0080]如果在硬件的一個特定件上部署的TVAS實施不能處理所有要求的業(yè)務(wù),并且如果不能利用或低效地利用功能更強大的硬件,則完成要求的常見方式是以協(xié)調(diào)方式使用TVAS的多個實例,即,多件硬件。這能夠在數(shù)據(jù)中心環(huán)境中輕松實現(xiàn),其中,此類實例能夠由編排系統(tǒng)自動創(chuàng)建(和銷毀)。
[0081]不同TVAS由于其實施的服務(wù)的不同相對處理和存儲需要而具有極不相同的處理容量。
[0082]TVAS容量經(jīng)常取決于處理的流的數(shù)量、處理的吞吐量、處理的訂戶的數(shù)量或其組合。假設(shè)有相同基礎(chǔ)硬件,一個特定TVAS A可能能夠處理X個數(shù)量流,而另一TVAS B可能能夠處理100倍X個數(shù)量的流。
[0083]雖然直至某個點,可能在不同硬件上部署不同TVAS以便補償那些容量差別,但這只能夠補償容量的小差別。特別是在最佳可能硬件只能夠接受要求的業(yè)務(wù)總量的一部分的情況下,可能相同的最高性能硬件用于兩種TVAS類型,以便每個類型需要的實例的數(shù)量將采用與其相對容量相同的比例。
[0084]關(guān)于吞吐量(例如,兆比特/秒),比例可類似,但它也可以成反比(即,TVAS A處理Y兆比特/秒,并且TVAS B處理1/100倍Y)。這暗示不同TVAS類型的實例的數(shù)量的比例也取決于在處理的實際業(yè)務(wù),并且可從一個網(wǎng)絡(luò)運營商到另一網(wǎng)絡(luò)運營商更改,甚至隨著時間在一個單網(wǎng)絡(luò)運營商內(nèi)更改。
[0085]能夠處理任何TVAS的多個實例的要求因此對于任何服務(wù)鏈接解決方案是至關(guān)重要的。本發(fā)明輕松地完成此要求,并且雖然最終它只是將帶有TVAS的多個實例的鏈作為多個鏈處理,但它確實允許以具有幾個優(yōu)點的十分簡單的方式進行此操作:
-用于在一個特定服務(wù)鏈內(nèi)支持多個實例(即,TVAS類型的有序集)的MAC地址范圍具有能夠用于識別該特定服務(wù)鏈的共用部分
-在創(chuàng)建或銷毀TVAS實例時,業(yè)務(wù)的特定子集向或從那些新實例移動,而對保持使用與以前完全相同TVAS實例的剩余業(yè)務(wù)無任何影響。與TVAS的創(chuàng)建或移除導(dǎo)致流的完全重新分發(fā),對有態(tài)TVAS有嚴重影響的其它傳統(tǒng)解決方案相比,這是巨大的優(yōu)點。
[0086]優(yōu)選實施例通過以下操作工作:
-從用于服務(wù)鏈接的MAC地址范圍預(yù)留多個比特以支持多個實例。
[0087]-它確實指派通過那些預(yù)留比特的所有可能值的置換得到的所有MAC地址,而不是指派每服務(wù)鏈一個單MAC地址到該服務(wù)鏈中每個TVAS的入口端口。
[0088]-那些MAC地址被指派到該特定TVAS的不同現(xiàn)有實例。
[0089]-如果創(chuàng)建了新實例,則從以前的實例將MAC移到新實例。
[0090]-如果銷毀了實例,則將它們原來指派的MAC移到剩余實例。
[0091]-注意,預(yù)留以支持多個實例的比特的數(shù)量可從一個鏈到另一個鏈不同。雖然5個比特(32個實例)可對于大多數(shù)鏈是個適合的選擇,但不排除對鏈可能過載的鏈不使用比特或只使用I或2個比特,以便避免在網(wǎng)絡(luò)中使用太多MAC地址,或者在可要求擴展到數(shù)百個實例的情況下,使用8個或更多個比特。
[0092]基于上面給出的示例和圖4的討論功能,結(jié)合圖7解釋用于多個實例的示例。
[0093 ] MAC范圍02: XX: XX: XX: XX: xx被預(yù)留用于服務(wù)鏈接。該范圍的最后4個比特被預(yù)留用于鏈內(nèi)的TVAS。第一服務(wù)鏈可由TVAS-A、TVAS-B和Po 1-A組成,并且第二服務(wù)鏈可由TVAS-B、TVAS-A、TVAS-C、Po1-A組成。此外,假設(shè)多達4個實例的可擴展性足以用于這兩個鏈,并且MAC范圍的兩個最左比特被預(yù)留用于此。此外,在圖7的實施例中,假設(shè)有TVAS-A的兩個實例。結(jié)果MAC指派將如圖7中所示。圖7的上半部分描述第一服務(wù)鏈,而第二服務(wù)鏈在圖7的下半部分中顯示。
[0094]如圖7中所示的,在MAC地址的第二字節(jié)中,描述了 4個實例。
[0095]如從上述示例能夠看到的,可能網(wǎng)絡(luò)地址能夠包含不同部分:第一部分,上述示例中的第一字節(jié)在其最后比特中的編碼,地址在本地管理。地址的第二部分能夠指示流的方向,在上述示例中,第二字節(jié)的第一比特。第三部分描述鏈編號,并且能夠在上面提及的第二部分與下面提及的第四部分之間的剩余比特中找到。第四部分描述鏈內(nèi)的服務(wù)提供模塊實例。在圖7中顯示的示例中,由于不必描述擴展性解決方案,因此,第二部分未使用。第三部分還被拆分成兩個不同部分以支持負載平衡。在圖7的示例中,有提供每鏈多達4個實例的可擴展性的第一第三部分和編碼實際服務(wù)鏈的第二第三部分。
[0096]在一個實施例中,地址可只具有關(guān)于鏈編號的第三部分和描述服務(wù)提供模塊編號的第四部分。第二部分也可編碼在第三部分內(nèi)。
[0097]上述發(fā)明的可擴展性相當高??赡芘c此類多實例要求的備選解決方案相比,上述支持多個實例的優(yōu)選實施例顯得浪費大量的MAC地址,但進行此操作的主要原因是即使MAC地址的使用存在此類浪費,可擴展量仍很高?;旧?,確定可擴展性的公式為:
#服務(wù)鏈 * Max(#TVAS每鏈)* Max(#實例每鏈)〈2#bits-1n-range
在為服務(wù)鏈接預(yù)留有40個比特的上面使用的示例中,這將允許像如下的組合:
8120個服務(wù)鏈,其中每鏈多達128個TVAS,其中每TVAS有多達I百萬個實例即使如果決定只為此預(yù)留30個比特(盡管可能有任何原因限制用于本地管理域的MAC范圍的使用),本發(fā)明仍能夠支持8120個鏈* 128個TVAS * 1024個實例每TVAS。
[0098]注意的是,通過在MAC范圍中使用多達全部46個可用比特(S卩,也使用第一八位字節(jié)的最左6個比特),或者通過以不同方式為不同鏈在服務(wù)鏈、TVAS類型和實例之間拆分范圍,可擴展性還能夠變得更高得多。但考慮到即使通過最平常的方案實現(xiàn)的極大可擴展性,可能不需要此類優(yōu)化。
[0099]實際上,實際上可使用的MAC地址的數(shù)量不完全取決于地址空間,而是也取決于交換裝備存儲和處理大量地址的能力。在今天的數(shù)據(jù)中心使用的當前第2層交換裝備由于其轉(zhuǎn)發(fā)表的有限大小,具有大約32,000個MAC地址的限制。另一方面,交換裝備要處理的MAC地址的數(shù)量與在前面公司中使用的..的最大數(shù)量”不成比例,而是與以下所述成比例:
-部署的服務(wù)鏈的實際數(shù)量
-每鏈使用的TVAS的平均數(shù)量
-每鏈預(yù)期(和供應(yīng))的實例的平均最大數(shù)量
使用所有服務(wù)鏈,所有鏈具有最高數(shù)量的TVAS,以及所有TVAS預(yù)期最高數(shù)量的實例的最差情況中的下限將仍允許實現(xiàn)像如下所述的數(shù)字:
32個服務(wù)鏈,其中每鏈多達32個TVAS,其中每TVAS多達32個實例但在有更低平均的任何實際部署中,處理成百上千個服務(wù)鏈,每鏈數(shù)十個TVAS和每TVAS成百上千個實例將根本不是問題。
[0100]在鏈中將傳統(tǒng)TVAS添加為“下一TVAS”應(yīng)可能完成而對解決方案根本無任何更改。大多數(shù)傳統(tǒng)TVAS確實允許指派另外的MAC地址到其入口接口而無需修改其實施,或需要輕微調(diào)諧其基礎(chǔ)操作系統(tǒng),這能夠通過配置或補丁來實現(xiàn)而不是新實施。如果碰巧有不允許此操作的TVAS,則實施有效MAC轉(zhuǎn)換實體是很簡單的,該MAC轉(zhuǎn)換實體只接收發(fā)送到根據(jù)本發(fā)明,應(yīng)屬于傳統(tǒng)TVAS的所有MAC地址的輸入分組,并且在將它們發(fā)送出之前,將目的地MAC地址替換成傳統(tǒng)TVAS的實際MAC地址。此類轉(zhuǎn)換實體能夠是專用虛擬機(可能與位于一些鏈中一個傳統(tǒng)TVAS前的TVAS共同托管,或者與傳統(tǒng)TVAS共同托管),能夠是OpenFlow交換機或vSwitch或?qū)S迷O(shè)備。
[0101]在基于本發(fā)明的解決方案中使用傳統(tǒng)TVAS的負面影響來自需要在傳統(tǒng)TVAS的出口將業(yè)務(wù)重新分類,以將它發(fā)送到每個鏈中的后面TVAS。為此,能夠使用基本上在本發(fā)明的介紹部分中描述的任何傳統(tǒng)解決方案,它們有自己的優(yōu)點和缺點。
[0102]如果選擇基于SDN的方案,則離開傳統(tǒng)TVAS的業(yè)務(wù)將要轉(zhuǎn)到實施流規(guī)則以將業(yè)務(wù)重新分類的OpenFlow交換機,但交換機然后根據(jù)本發(fā)明將它轉(zhuǎn)發(fā)到下一 MAC地址,而不是使用原來的基于SDN方案的轉(zhuǎn)發(fā)步驟。
[0103]如果選擇基于VLAN/元數(shù)據(jù)留存的解決方案,并且在它們不支持VLAN/元數(shù)據(jù)留存時使用專用TVAS實例,則存在兩種可能性:
1.如果傳統(tǒng)TVAS不支持留存,則解決方案極其簡單,并且我們只需在出口也有MAC轉(zhuǎn)換實體以將輸出業(yè)務(wù)分發(fā)到指派到鏈中下一 TVAS的所有MAC地址。通過配置IP地址為ECMP(等價多徑)默認網(wǎng)關(guān),并且確保對那些IP地址的ARP查詢產(chǎn)生所需MAC地址,甚至可能可避免此類實體。應(yīng)當注意到的是,雖然用于此對策的成本極低,但它確實繼承了基于VLAN/元數(shù)據(jù)的服務(wù)鏈接解決方案的缺點,即,需要每鏈的專用TVAS,這嚴重限制了能夠有效支持的服務(wù)鏈的數(shù)量。
[0104]2.如果傳統(tǒng)TVAS支持VLAN/元數(shù)據(jù)留存,貝蛾們能夠在TVAS的入口和出口類似地使用轉(zhuǎn)換實體,以便從MAC轉(zhuǎn)換到VLAN標記/元數(shù)據(jù)和從VLAN標記/元數(shù)據(jù)轉(zhuǎn)換到MAC,并且這樣,避免了對重新分類的需要。
[0105]為使基于本發(fā)明的服務(wù)鏈接解決方案優(yōu)于傳統(tǒng)解決方案,相當大數(shù)量的TVAS(相當大的比例或特定TVAS處理相當大部分的業(yè)務(wù))將實施它。與傳統(tǒng)TVAS的組合仍是可能的。
[0106]在上述示例中,底層的入口網(wǎng)絡(luò)地址是第2層MAC地址。然而,通過添加在服務(wù)提供模塊之間流動的IP分組的封裝,也能夠利用本發(fā)明。在功能上,在帶有第2層報頭的第2層幀內(nèi)第3層分組的成幀相當于封裝。
[0107]如果有任何原因要優(yōu)選第3層解決方案,像頻率的混合數(shù)據(jù)中心和非數(shù)據(jù)中心部署,則通過添加IP封裝(例如,GRE、IP-1n-1P、L2TP……),也能夠?qū)嵤┍景l(fā)明,其中,應(yīng)用相同的上述原理到封裝的分組的目的地IP地址的預(yù)留子范圍而不是到第2層幀的目的地MAC地址的預(yù)留子范圍。
[0108]TVAS將明顯需要支持要使用的特定封裝和解封裝,但這是相當簡單的要求。
[0109]出于可擴展性原因,由于為不同目的而指派的比特的可用數(shù)量更高,因此,可能優(yōu)選的是使用IPv6地址。
[0110]應(yīng)當注意到的是,本發(fā)明明確提及目的地址的功能修改,而無論它是第2層幀的MAC地址或封裝分組的第3層地址。上面的描述明確使用算術(shù)遞增,但可使用其它預(yù)定義的關(guān)系。
[0111]目的地地址外其它字段的功能修改的使用不在本發(fā)明的范圍內(nèi)(并且在根本上是不同的),因為這將未能實現(xiàn)本發(fā)明的主要成就,即在轉(zhuǎn)發(fā)基于目的地地址的情況下,能夠利用傳統(tǒng)傳輸基礎(chǔ)設(shè)施。
[0112]雖然本節(jié)描述第3層實施例,但應(yīng)當注意到的是,優(yōu)選的第2層實施例對于在地理區(qū)域內(nèi)擴展和/或服務(wù)網(wǎng)絡(luò)的幾個子集經(jīng)第3層網(wǎng)絡(luò)互連的服務(wù)網(wǎng)絡(luò)也是適當?shù)?。在?shù)據(jù)中心和云環(huán)境中,可能和通常使用的是使用封裝技術(shù)實現(xiàn)共用第2層域涉及幾個數(shù)據(jù)中心和在其它情況下不相交的網(wǎng)絡(luò)段。
[0113]結(jié)合圖8和9,更詳細討論在服務(wù)控制實體和服務(wù)提供模塊中提供的不同功能單
J L ο
[0114]圖8是指派網(wǎng)絡(luò)地址到服務(wù)提供模塊,識別可能服務(wù)鏈等的服務(wù)控制實體100的示意框圖。提供了鏈控制單元110,它確定可能服務(wù)鏈,為每個服務(wù)鏈確定應(yīng)用到數(shù)據(jù)分組流的服務(wù)的序列,以及確定提供要求的服務(wù)鏈的服務(wù)提供模塊。模塊控制單元120然后指派底層的入口網(wǎng)絡(luò)地址到服務(wù)提供模塊。在數(shù)據(jù)庫130中,可存儲不同的可能服務(wù)鏈。此外,在數(shù)據(jù)庫中也可存儲由服務(wù)提供模塊300用于修正入口網(wǎng)絡(luò)地址的預(yù)定義的關(guān)系。為實現(xiàn)到服務(wù)控制實體100外的其它節(jié)點或部分的通信,以示意圖方式顯示了包括傳送器141和接收器142的輸入輸出單元140 O應(yīng)理解的是,輸入輸出只是示意表示,并且輸入輸出單元可包含能夠與不同通信協(xié)議進行通信的不同接口。此外,應(yīng)理解的是,服務(wù)控制實體可包括圖8的上下文中未顯示的另外功能實體。此外,應(yīng)理解的是,不同的功能實體無需以實體的此顯示的分隔方式提供。作為硬件、軟件或硬件和軟件的組合,不同功能實體可包含到單個單元中,或者一些功能單元可包含到單個單元中。
[0115]圖9顯示服務(wù)提供模塊300的示意圖。服務(wù)提供模塊包括輸入輸出單元340,其中以示意圖方式顯示了傳送器341和接收器342,傳送器用于將數(shù)據(jù)分組或控制信號傳送到外部,而接收器用于接收數(shù)據(jù)或控制信號。除其它之外,接收器342可以用于接收數(shù)據(jù)分組流的數(shù)據(jù)分組。提供的處理單元310除其它之外,提供用于處理接收到的數(shù)據(jù)分組流的數(shù)據(jù)分組以便應(yīng)用服務(wù)提供模塊300提供的服務(wù)。地址計算單元320基于入口網(wǎng)絡(luò)地址和基于預(yù)定義的關(guān)系,計算底層的目的地地址。傳送器342將數(shù)據(jù)分組傳送到服務(wù)鏈中的下一服務(wù)提供模塊,或者如果這是最后服務(wù)提供模塊,則傳送到數(shù)據(jù)流退出服務(wù)網(wǎng)絡(luò)的網(wǎng)關(guān)或PoI。端口控制單元330指派網(wǎng)絡(luò)地址到服務(wù)提供模塊的端口。
[0116]上面結(jié)合圖8做出的與圖8中顯示的功能單元有關(guān)的一般陳述也適用于圖9。
[0117]結(jié)合圖10,以示意圖方式顯示網(wǎng)絡(luò)地址從一個服務(wù)提供模塊到下一服務(wù)提供模塊的遞增。數(shù)據(jù)分組流由服務(wù)提供模塊的第一模塊300-1接收。數(shù)據(jù)分組可來源于服務(wù)鏈分類單元200,該單元將數(shù)據(jù)分組流的數(shù)據(jù)分組傳送到鏈中的第一服務(wù)提供模塊,此處為模塊300-1。模塊300-1應(yīng)用需要的服務(wù),并且還確定數(shù)據(jù)分組傳遞到的目的地地址。此目的地地址計算是基于預(yù)定義的關(guān)系,在顯示的示例中是網(wǎng)絡(luò)地址簡單遞增一。相同過程在模塊300-2和300-3中執(zhí)行,這意味著在每個模塊中,應(yīng)用預(yù)定義的關(guān)系到入口網(wǎng)絡(luò)地址以計算目的地地址和下一跳。鏈中的最后服務(wù)提供基本模塊然后不遞增接收到的網(wǎng)絡(luò)地址,而是根據(jù)傳統(tǒng)第3層轉(zhuǎn)發(fā)機制路由或轉(zhuǎn)發(fā)數(shù)據(jù)分組。
[0118]結(jié)合圖11,概括由服務(wù)控制實體100執(zhí)行的主要步驟。在第一步驟110中,確定在服務(wù)網(wǎng)絡(luò)內(nèi)的可能服務(wù)鏈。對于每個確定的服務(wù)鏈,在步驟111中確定在服務(wù)鏈中應(yīng)用的服務(wù)的序列。在步驟112中,識別例如能夠提供每個服務(wù)鏈需要的服務(wù)的服務(wù)提供模塊。此外,在步驟112中,確定通過順序,這意味著確定不得不以什么順序通過不同服務(wù)提供模塊以便獲得服務(wù)的要求的序列。然后,可能在步驟113中指派入口網(wǎng)絡(luò)地址到不同服務(wù)提供模塊。入口網(wǎng)絡(luò)地址的指派使得在每個服務(wù)提供模塊基于預(yù)定義的關(guān)系確定目的地地址時,數(shù)據(jù)流被指引到服務(wù)鏈中正確的服務(wù)提供模塊。另外,在步驟114中,服務(wù)鏈分類單元得知為每個服務(wù)鏈提供的第一入口網(wǎng)絡(luò)地址。利用此知識,服務(wù)鏈分類單元然后能夠?qū)⑤斎霐?shù)據(jù)業(yè)務(wù)流分發(fā)到不同服務(wù)鏈。
[0119]結(jié)合圖12,概括由服務(wù)提供模塊300執(zhí)行的主要步驟。在步驟120中,接收如由服務(wù)提供模塊指派的入口網(wǎng)絡(luò)地址。在步驟121中,指派入口網(wǎng)絡(luò)地址到端口之一。在如步驟122中所示接收數(shù)據(jù)分組流時,服務(wù)提供模塊能夠在步驟123中應(yīng)用要求的服務(wù)。在數(shù)據(jù)分組流能夠傳遞到下一服務(wù)提供模塊前,在步驟124中計算目的地地址,計算使用使入口網(wǎng)絡(luò)地址與下一服務(wù)提供模塊的目的地網(wǎng)絡(luò)地址相關(guān)的預(yù)定義的關(guān)系。最后但并非最不重要的,在步驟124中,將數(shù)據(jù)分組流傳送到在步驟125中的計算的目的地地址。
[0120]上述討論的發(fā)明具有幾個優(yōu)點。首先,不存在對連網(wǎng)基礎(chǔ)設(shè)施的服務(wù)鏈接特定要求。不存在另外的要求,因此能夠使用今天的傳統(tǒng)第2層交換機而不是SDN傳輸裝備,或者不是大量的SDN軟件交換機加上無源硬件交換機的復(fù)雜組合。此外,支持非透明服務(wù)提供模塊而不干擾服務(wù)鏈接。如果有利于修改IP報頭,則能夠更改TVAS實施。無需另外的控制實體或控制接口。此外,能夠輕松支持虛擬TVAS和硬件設(shè)備TVAS。另外,在留存流狀態(tài)的同時能夠創(chuàng)建或銷毀TVAS實例。在創(chuàng)建或銷毀TVAS實例時,業(yè)務(wù)的特定子集向或從那些實例移動,而對保持使用與以前完全相同TVAS實例的剩余業(yè)務(wù)無任何影響。
[0121]TVAS無需對鏈中以前或隨后TVAS進行任何各類的認知。它們不以任何方式受鏈中任何其它TVAS的添加、移除或存在影響。如上提及的,解決方案在所有維、TVAS的數(shù)量、每TVAS實例的數(shù)量和不同鏈的數(shù)量方面可擴展。此外,能夠以任何順序鏈接TVAS,并且除常見的對稱鏈情況外,支持上行鏈路和下行鏈路任意鏈。這能夠在單向TVAS是一個方向的服務(wù)鏈的一部分而在相反方向被忽略的情況下是有用的。由于分組大小未增大,因此,MTU(最大傳送單元)問題被完全避免(在優(yōu)選實施例中,即第2層)。
【主權(quán)項】
1.一種配置成控制在提供多個服務(wù)提供模塊(300)的服務(wù)網(wǎng)絡(luò)(400)中提供的服務(wù)鏈的服務(wù)控制實體(100),其中從源地址到目的地地址的數(shù)據(jù)分組流的數(shù)據(jù)分組通過所述服務(wù)網(wǎng)絡(luò)(400)傳送以應(yīng)用服務(wù)鏈到所述數(shù)據(jù)分組流,其中在服務(wù)鏈中應(yīng)用服務(wù)的預(yù)定義的序列到所述數(shù)據(jù)分組流,端到端層用于引導(dǎo)所述數(shù)據(jù)分組流從所述源地址到所述目的地地址,其中不同數(shù)據(jù)分組流通過所述服務(wù)網(wǎng)絡(luò)(400)傳送,以應(yīng)用流相關(guān)的服務(wù)鏈到所述對應(yīng)數(shù)據(jù)分組流,所述服務(wù)控制實體(100)包括: -鏈控制單元(110),配置成確定要應(yīng)用到所述不同數(shù)據(jù)分組流的所述可能服務(wù)鏈,并且配置成為每個服務(wù)鏈識別在通過所述對應(yīng)服務(wù)鏈時應(yīng)用到所述數(shù)據(jù)分組流的服務(wù)的所述預(yù)定義的序列,所述鏈控制單元還配置成為每個服務(wù)鏈識別提供在服務(wù)的所述預(yù)定義的序列中包含的所述服務(wù)的所述服務(wù)提供模塊(300),以及識別不得不以什么順序通過所述識別的服務(wù)提供模塊(300)以便應(yīng)用服務(wù)的所述預(yù)定義的序列到所述數(shù)據(jù)分組流, -模塊控制單元(120),配置成控制所述服務(wù)提供模塊(300),并且配置成指派所述端到端層的底層的入口網(wǎng)絡(luò)地址到所述服務(wù)鏈中包含的每個所述識別的服務(wù)提供模塊(300),所述入口網(wǎng)絡(luò)地址在所述服務(wù)網(wǎng)絡(luò)中用于將所述數(shù)據(jù)分組流指引到所述服務(wù)鏈的所述下一服務(wù)提供模塊(300),其中所述模塊控制單元(120)為所述服務(wù)鏈中的每個所述服務(wù)提供模塊指派入口網(wǎng)絡(luò)地址到在所述對應(yīng)服務(wù)鏈中使用的所述服務(wù)提供模塊,以這樣的方式服務(wù)提供模塊的所述入口網(wǎng)絡(luò)地址和作為所述對應(yīng)服務(wù)鏈中所述隨后服務(wù)提供模塊的相鄰服務(wù)提供模塊的所述入口網(wǎng)絡(luò)地址根據(jù)預(yù)定義關(guān)系相互相關(guān), -傳送器(141),配置成通知服務(wù)鏈分類單元(200)在每個服務(wù)鏈中提供的所述第一服務(wù)提供模塊的所述入口網(wǎng)絡(luò)地址,所述服務(wù)鏈分類單元(200)識別進入所述服務(wù)網(wǎng)絡(luò)(400)的所述數(shù)據(jù)分組流并且識別要應(yīng)用到每個數(shù)據(jù)分組流的所述服務(wù)鏈。2.如權(quán)利要求1所述的服務(wù)控制實體(100),其中所述模塊控制單元(120)配置成使用所述底層的所述可能網(wǎng)絡(luò)地址的預(yù)定義的范圍來指派入口網(wǎng)絡(luò)地址,并且配置成為每個所述可能服務(wù)鏈使用在所述預(yù)定義的范圍內(nèi)的所述預(yù)定義的范圍的子范圍。3.如權(quán)利要求1或2所述的服務(wù)控制實體(100),其中所述模塊控制單元(120)配置成控制在每個所述服務(wù)鏈中的所述服務(wù)提供模塊(300),以這樣的方式所述服務(wù)提供模塊(300)使用所述預(yù)定義的關(guān)系,基于所述預(yù)定義的關(guān)系修改所述接收到的數(shù)據(jù)分組流的所述數(shù)據(jù)分組中包含的所述底層的所述入口網(wǎng)絡(luò)地址,并且使用根據(jù)所述預(yù)定義的關(guān)系修改的所述修改的入口網(wǎng)絡(luò)地址作為所述底層的目的地網(wǎng)絡(luò)地址,以將所述數(shù)據(jù)分組流轉(zhuǎn)發(fā)到所述服務(wù)鏈的所述下一服務(wù)提供模塊。4.如前面權(quán)利要求任一項所述的服務(wù)控制實體(100),其中所述模塊控制單元(120)配置成控制每個服務(wù)鏈中所述數(shù)據(jù)分組流通過的所述最后服務(wù)提供模塊,以這樣的方式每個服務(wù)鏈中的所述最后服務(wù)提供模塊丟棄所述接收到的數(shù)據(jù)分組流的所述數(shù)據(jù)分組中的所述入口目的地地址,并且將所述端到端層的所述目的地地址考慮在內(nèi),轉(zhuǎn)發(fā)所述接收到的數(shù)據(jù)分組流的所述數(shù)據(jù)分組。5.如權(quán)利要求2到4任一項所述的服務(wù)控制實體(100),其中所述模塊控制單元(120)配置成通過以下方式使用在可能網(wǎng)絡(luò)地址的所述預(yù)定義的范圍內(nèi)的以下部分至少之一:指示所述底層的所述網(wǎng)絡(luò)地址在所述服務(wù)網(wǎng)絡(luò)內(nèi)在本地管理的可能網(wǎng)絡(luò)地址的所述預(yù)定義的范圍內(nèi)的部分、指示所述服務(wù)網(wǎng)絡(luò)內(nèi)所述數(shù)據(jù)分組流的流方向的可能網(wǎng)絡(luò)地址的所述預(yù)定義的范圍內(nèi)的部分、識別所述服務(wù)鏈的可能網(wǎng)絡(luò)地址的所述預(yù)定義的范圍內(nèi)的部分、包含由服務(wù)鏈使用的所述底層的所述網(wǎng)絡(luò)地址的可能網(wǎng)絡(luò)地址的所述預(yù)定義的范圍內(nèi)的部分。6.如前面權(quán)利要求任一項所述的服務(wù)控制實體(100),其中所述鏈控制單元(110)配置成在每個服務(wù)鏈中確定用于在服務(wù)鏈內(nèi)提供單個服務(wù)的服務(wù)提供模塊(300)的最大數(shù)量,其中所述模塊控制單元(120)配置成指派與如服務(wù)提供模塊的所述確定的最大數(shù)量一樣多的入口網(wǎng)絡(luò)地址到每個服務(wù)鏈中的所述第一服務(wù)提供模塊。7.如前面權(quán)利要求任一項所述的服務(wù)控制單元,其中所述底層的所述入口網(wǎng)絡(luò)地址是以太網(wǎng)MAC地址。8.如權(quán)利要求1到6任一項所述的服務(wù)控制單元,其中所述底層的所述入口網(wǎng)絡(luò)地址是添加到所述數(shù)據(jù)分組流的封裝的端到端層地址。9.一種由服務(wù)控制實體(100)控制在提供多個服務(wù)提供模塊(300)的服務(wù)網(wǎng)絡(luò)(400)中提供的服務(wù)鏈的方法,其中從源地址到目的地地址的數(shù)據(jù)分組流的數(shù)據(jù)分組通過所述服務(wù)網(wǎng)絡(luò)傳送以應(yīng)用服務(wù)鏈到所述數(shù)據(jù)分組流,其中在服務(wù)鏈中應(yīng)用服務(wù)的預(yù)定義的序列到所述數(shù)據(jù)分組流,端到端層用于引導(dǎo)所述數(shù)據(jù)分組流從所述源地址到所述目的地地址,其中不同數(shù)據(jù)分組流通過所述服務(wù)網(wǎng)絡(luò)(400)傳送,以應(yīng)用流相關(guān)的服務(wù)鏈到所述對應(yīng)數(shù)據(jù)分組流,所述方法包括以下步驟: -確定要應(yīng)用到所述不同數(shù)據(jù)分組流的所述可能的服務(wù)鏈, -為每個服務(wù)鏈識別在通過所述對應(yīng)服務(wù)鏈時應(yīng)用到所述數(shù)據(jù)分組流的服務(wù)的所述預(yù)定義的序列, -為每個服務(wù)鏈識別提供在服務(wù)的所述預(yù)定義的序列中包含的所述服務(wù)的所述服務(wù)提供模塊, -識別不得不以什么順序通過所述識別的服務(wù)提供模塊以便應(yīng)用服務(wù)的所述預(yù)定義的序列到所述數(shù)據(jù)分組流, -指派所述端到端層的底層的入口網(wǎng)絡(luò)地址到所述服務(wù)鏈中包含的每個所述識別的服務(wù)提供模塊,所述入口網(wǎng)絡(luò)地址在所述服務(wù)網(wǎng)絡(luò)中用于將所述數(shù)據(jù)分組流指引到所述服務(wù)鏈的所述下一服務(wù)提供模塊,其中所述入口網(wǎng)絡(luò)地址被指派到在所述對應(yīng)服務(wù)鏈中使用的所述服務(wù)提供模塊,以這樣的方式服務(wù)提供模塊的所述入口網(wǎng)絡(luò)地址和作為所述對應(yīng)服務(wù)鏈中所述隨后服務(wù)提供模塊的相鄰服務(wù)提供模塊的所述入口網(wǎng)絡(luò)地址根據(jù)預(yù)定義關(guān)系相互相關(guān), -通知服務(wù)鏈分類單元在每個服務(wù)鏈中提供的所述第一服務(wù)提供模塊的所述入口網(wǎng)絡(luò)地址,所述服務(wù)鏈分類單元識別進入所述服務(wù)網(wǎng)絡(luò)的所述數(shù)據(jù)分組流并且識別要應(yīng)用到每個數(shù)據(jù)分組流的所述服務(wù)鏈。10.如權(quán)利要求9所述的方法,其中每個所述服務(wù)鏈中的所述服務(wù)提供模塊被控制,以這樣的方式所述服務(wù)提供模塊使用所述預(yù)定義的關(guān)系,基于所述預(yù)定義的關(guān)系修改所述接收到的數(shù)據(jù)分組流的所述數(shù)據(jù)分組中包含的所述底層的所述入口網(wǎng)絡(luò)地址,并且使用根據(jù)所述預(yù)定義的關(guān)系修改的所述修改的入口網(wǎng)絡(luò)地址作為所述底層的目的地網(wǎng)絡(luò)地址,以將所述數(shù)據(jù)分組流轉(zhuǎn)發(fā)到所述服務(wù)鏈的所述下一服務(wù)提供模塊。11.如權(quán)利要求9或10所述的方法,其中在每個服務(wù)鏈中,確定在服務(wù)鏈內(nèi)用于提供單個服務(wù)的服務(wù)提供模塊的最大數(shù)量,并且指派與如服務(wù)提供模塊的所述確定的最大數(shù)量一樣多的入口網(wǎng)絡(luò)地址到每個服務(wù)鏈中的所述第一服務(wù)提供模塊。12.—種配置成提供服務(wù)到服務(wù)網(wǎng)絡(luò)(400)中的數(shù)據(jù)分組流的服務(wù)提供模塊(300),所述服務(wù)網(wǎng)絡(luò)中提供多個服務(wù)提供模塊(300),其中從源地址到目的地地址的數(shù)據(jù)分組流的數(shù)據(jù)分組通過所述服務(wù)網(wǎng)絡(luò)傳送以應(yīng)用服務(wù)鏈到所述數(shù)據(jù)分組流,其中在服務(wù)鏈中應(yīng)用服務(wù)的預(yù)定義的序列到所述數(shù)據(jù)分組流,端到端層用于引導(dǎo)所述數(shù)據(jù)分組流從所述源地址到所述目的地地址,其中不同數(shù)據(jù)分組流通過所述服務(wù)網(wǎng)絡(luò)(400)傳送,以應(yīng)用流相關(guān)的服務(wù)鏈到所述對應(yīng)數(shù)據(jù)分組流,所述服務(wù)提供模塊包括: -接收器(342),配置成接收所述數(shù)據(jù)分組流之一的數(shù)據(jù)分組,所述數(shù)據(jù)分組包括所述端到端層的底層的入口網(wǎng)絡(luò)地址,所述入口網(wǎng)絡(luò)地址在所述服務(wù)網(wǎng)絡(luò)(400)中用作將所述數(shù)據(jù)分組流指引到所述服務(wù)提供模塊的入口地址, -處理單元(310),配置成處理所述一個數(shù)據(jù)分組流的所述數(shù)據(jù)分組,以便應(yīng)用由所述服務(wù)提供模塊提供的所述服務(wù),其中所述處理單元配置成在應(yīng)用所述服務(wù)到所述數(shù)據(jù)分組時,保持所述底層的所述入口網(wǎng)絡(luò)地址, -地址計算單元(320),配置成計算所述數(shù)據(jù)分組流將被傳送到的所述服務(wù)鏈中的所述下一服務(wù)提供模塊的所述底層的目的地地址,其中所述地址計算單元配置成基于所述底層的所述入口網(wǎng)絡(luò)地址,并且基于提供在所述接收到的數(shù)據(jù)分組流的所述數(shù)據(jù)分組中包含的所述入口網(wǎng)絡(luò)地址與所述底層的所述目的地地址之間的關(guān)系的預(yù)定義的關(guān)系,計算所述目的地地址, -傳送器(341),配置成使用所述下一服務(wù)提供模塊的所述底層的所述計算的目的地地址,將所述數(shù)據(jù)分組流的所述數(shù)據(jù)分組傳送到所述服務(wù)鏈中所述下一服務(wù)提供模塊。13.如權(quán)利要求12所述的服務(wù)提供模塊(300),其中所述接收器(342)配置成向上傳遞所述底層的所述入口網(wǎng)絡(luò)地址到所述端到端層,其中所述地址計算單元(320)配置成將所述計算的目的地地址向下傳遞到所述底層,在其中它用作所述數(shù)據(jù)分組流的所述數(shù)據(jù)分組的目的地地址。14.如權(quán)利要求12或13所述的服務(wù)提供模塊(300),還包括配置成指派所述底層的網(wǎng)絡(luò)地址到所述服務(wù)提供模塊的端口的端口控制單元(330),其中在接收到用于指派網(wǎng)絡(luò)地址到端口,包括要指派的所述入口網(wǎng)絡(luò)地址的命令時,所述端口控制單元指派入口網(wǎng)絡(luò)地址到所述服務(wù)提供模塊的所述端口之一。15.如權(quán)利要求14所述的服務(wù)提供模塊(300),其中所述傳送器(341)配置成傳送所述指派的網(wǎng)絡(luò)地址到所述服務(wù)網(wǎng)絡(luò)的轉(zhuǎn)發(fā)裝置(150),通知所述服務(wù)網(wǎng)絡(luò)的所述轉(zhuǎn)發(fā)裝置所述網(wǎng)絡(luò)地址指被派到的所述端口。16.如權(quán)利要求12到15任一項所述的服務(wù)提供模塊(300),其中所述地址計算單元(320)配置成在基于封裝的端到端層地址,將所述數(shù)據(jù)分組流的所述數(shù)據(jù)分組傳送到所述服務(wù)鏈中所述下一服務(wù)提供模塊前,將所述封裝的端到端層地址作為目的地地址添加到所述接收到的數(shù)據(jù)分組,并且配置成在應(yīng)用所述服務(wù)到所述接收到的數(shù)據(jù)分組流的所述數(shù)據(jù)分組前,移除所述接收到的數(shù)據(jù)分組流的所述數(shù)據(jù)分組中的所述封裝。17.—種由服務(wù)提供模塊(300)提供服務(wù)到服務(wù)網(wǎng)絡(luò)(400)中數(shù)據(jù)分組流的方法,所述服務(wù)網(wǎng)絡(luò)中提供多個服務(wù)提供模塊,其中從源地址到目的地地址的數(shù)據(jù)分組流的數(shù)據(jù)分組通過所述服務(wù)網(wǎng)絡(luò)傳送以應(yīng)用服務(wù)鏈到所述數(shù)據(jù)分組流,其中在服務(wù)鏈中應(yīng)用服務(wù)的預(yù)定義的序列到所述數(shù)據(jù)分組流,端到端層用于引導(dǎo)所述數(shù)據(jù)分組流從所述源地址到所述目的地地址,其中不同數(shù)據(jù)分組流通過所述服務(wù)網(wǎng)絡(luò)傳送,以應(yīng)用流相關(guān)的服務(wù)鏈到所述對應(yīng)數(shù)據(jù)分組流,所述方法包括以下步驟: -接收所述數(shù)據(jù)分組流之一的數(shù)據(jù)分組,所述數(shù)據(jù)分組包括所述端到端層的底層的入口網(wǎng)絡(luò)地址,所述入口網(wǎng)絡(luò)地址在所述服務(wù)網(wǎng)絡(luò)中用作將所述數(shù)據(jù)分組流指引到所述服務(wù)提供模塊的入口地址, -處理所述一個數(shù)據(jù)分組流的所述數(shù)據(jù)分組,以便應(yīng)用由所述服務(wù)提供模塊提供的所述服務(wù),其中在所述處理后保持所述底層的所述入口網(wǎng)絡(luò)地址, -計算所述數(shù)據(jù)分組流將被傳送到的所述服務(wù)鏈中的所述下一服務(wù)提供模塊的所述底層的目的地地址,其中基于所述底層的所述入口網(wǎng)絡(luò)地址,并且基于提供在所述接收到的數(shù)據(jù)分組流的所述數(shù)據(jù)分組中包含的所述入口網(wǎng)絡(luò)地址與所述底層的所述目的地地址之間的關(guān)系的預(yù)定義的關(guān)系,計算所述目的地地址,以及 -使用所述下一服務(wù)提供模塊的所述底層的所述計算的目的地地址,將所述數(shù)據(jù)分組流的所述數(shù)據(jù)分組傳送到所述服務(wù)鏈中所述下一服務(wù)提供模塊。18.如權(quán)利要求17所述的方法,其中所述底層的所述入口網(wǎng)絡(luò)地址被向上傳遞到所述服務(wù)提供模塊的所述端到端層,并且所述計算的目的地地址被向下傳遞到所述底層,在其中它用作所述數(shù)據(jù)分組流的所述數(shù)據(jù)分組的目的地地址。
【文檔編號】H04L29/12GK105850102SQ201380081922
【公開日】2016年8月10日
【申請日】2013年10月29日
【發(fā)明人】F.科特斯戈梅斯
【申請人】瑞典愛立信有限公司