專利名稱:用于服務(wù)質(zhì)量的協(xié)議轉(zhuǎn)換網(wǎng)關(guān)的系統(tǒng)和方法
技術(shù)領(lǐng)域:
目前描述的技術(shù)大體涉及通信網(wǎng)絡(luò)。更明確地說,目前描述的技術(shù)涉及用于服務(wù)質(zhì) 量的協(xié)議轉(zhuǎn)換網(wǎng)關(guān)的系統(tǒng)和方法。
背景技術(shù):
通信網(wǎng)絡(luò)用于各種環(huán)境中。通信網(wǎng)絡(luò)通常包括通過一個或一個以上鏈路連接的兩個 或兩個以上節(jié)點。 一般來說,通信網(wǎng)絡(luò)用于支持在所述鏈路上的兩個或兩個以.卜.參與者 節(jié)點與通信網(wǎng)絡(luò)中的中間節(jié)點之間的通信。在網(wǎng)絡(luò)中可存在許多種節(jié)點。例如,網(wǎng)絡(luò)可 包括例如客戶端、服務(wù)器、工作站、交換機和/或路由器的節(jié)點。鏈路可為(例如)在電 話線上的調(diào)制解調(diào)器連接、導(dǎo)線、以太網(wǎng)鏈路、非同步轉(zhuǎn)移模式(ATM)電路、衛(wèi)星鏈 路和/或光纖電纜。
通信網(wǎng)絡(luò)可能實際上由一個或一個以上較小的通信網(wǎng)絡(luò)組成。例如,經(jīng)常將因特網(wǎng) 描述為經(jīng)互連計算機網(wǎng)絡(luò)的網(wǎng)絡(luò)。每一網(wǎng)絡(luò)可利用不同結(jié)構(gòu)和/或拓撲。例如, 一個網(wǎng)絡(luò) 可為具有星狀拓撲的交換式以太網(wǎng)絡(luò),而另一網(wǎng)絡(luò)可為光纖分布式數(shù)據(jù)接口 (FDDI)環(huán)。
通信網(wǎng)絡(luò)可載運多種數(shù)據(jù)。例如,網(wǎng)絡(luò)可與用于互動式實時對話的數(shù)據(jù)并排地載運 大量文件轉(zhuǎn)移。在一網(wǎng)絡(luò)上發(fā)送的數(shù)據(jù)常以包、單元或幀的方式發(fā)送。或者,數(shù)據(jù)可作 為串流來發(fā)送。在某些例子中,數(shù)據(jù)串流或流可能實際上為包序列。例如因特網(wǎng)的網(wǎng)絡(luò) 在各種節(jié)點之間提供通用數(shù)據(jù)路徑并在不同需求下載運大量數(shù)據(jù)。
網(wǎng)絡(luò)上的通信一般涉及多級通信協(xié)議。協(xié)議堆疊(也稱為聯(lián)網(wǎng)堆疊或協(xié)議族)是指 用于通信的協(xié)議集合。每一協(xié)議可能集中于特定類型的通信能力或形式。例如, 一個協(xié) 議可能與由銅導(dǎo)線連接的裝置進行通信所需的電信號有關(guān)。例如,其它協(xié)議可能解決由 許多中間節(jié)點分離的兩個節(jié)點之間的排序和可靠傳輸。
協(xié)議堆疊中的協(xié)議一般存在于層級結(jié)構(gòu)中。常將協(xié)議分類成多個層。用于協(xié)議層的 一個參考模型是開放式系統(tǒng)互連(OSI)模型。OSI參考模型包括七個層物理層、數(shù) 據(jù)鏈路層、網(wǎng)絡(luò)層、傳輸層、會話層、表示層和應(yīng)用層。物理層是"最低"層,而應(yīng)用 層是"最高"層。兩個眾所周知的傳輸層協(xié)議是傳輸控制協(xié)議(TCP)與用戶數(shù)據(jù)報協(xié) 議(UDP)。眾所周知的網(wǎng)絡(luò)層協(xié)議是因特網(wǎng)協(xié)議(IP)。
在傳輸節(jié)點處,將要傳輸?shù)臄?shù)據(jù)從最高到最低從協(xié)議堆疊的所述層向下傳遞。相反,在接收節(jié)點處,數(shù)據(jù)從最低到最高從所述層向上傳遞。在每一層處,可通過在所述層處 處置通信的協(xié)議來操縱數(shù)據(jù)。例如,傳輸層協(xié)議可將標(biāo)頭添加到數(shù)據(jù),所述標(biāo)頭允許在 到達目的地節(jié)點后對包進行排序。依據(jù)應(yīng)用而定,可能不使用某些層,或即便某些層存 在,也可能僅傳遞數(shù)據(jù)。
一種通信網(wǎng)絡(luò)是戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)。戰(zhàn)術(shù)數(shù)*網(wǎng)絡(luò)也可稱為戰(zhàn)術(shù)通信網(wǎng)絡(luò)。戰(zhàn)術(shù)數(shù)據(jù)網(wǎng) 絡(luò)可由組織(例如軍隊(例如陸軍、海軍和/或空軍))內(nèi)的單位利用。戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)內(nèi) 的節(jié)點可包括(例如)個別士兵、飛機、指揮單位、衛(wèi)星和/或無線電。戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)可 用于傳送例如語音、位置遙測、傳感器數(shù)據(jù)和/或?qū)崟r視頻等數(shù)據(jù)。
如何可運用戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)的實例如下。后勤護衛(wèi)隊可能正在路上為戰(zhàn)場上的戰(zhàn)斗單 位提供補給。所述護衛(wèi)隊與所述戰(zhàn)斗單位兩者可能正在通過衛(wèi)星無線電鏈路來將位置遙 測提供給指揮所。無人駕駛飛機(UAV)可能正在沿所述護衛(wèi)隊正在前進的道路巡邏且 還正在通過衛(wèi)星無線電鏈路將實時視頻數(shù)據(jù)傳輸?shù)街笓]所。在所述指揮所,分析者可能 正在檢查所述視頻數(shù)據(jù),同時控制者正在給所述UAV分派任務(wù)以提供特定路段的視頻。 所述分析者接著可能認出所述護衛(wèi)隊正在接近的臨時爆炸裝置(IED)并通過直接無線 電鏈路向所述護衛(wèi)隊發(fā)出命令,要求其停止并警告所述護衛(wèi)隊所述IED的存在。
在戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)內(nèi)可能存在的各種網(wǎng)絡(luò)可能具有許多不同的結(jié)構(gòu)和特性。例如,指 揮單位中的網(wǎng)絡(luò)可能包括千兆位以太網(wǎng)局域網(wǎng)(LAN)以及在低得多的處理量且更高等 待時間下操作的到衛(wèi)星和戰(zhàn)場-宇.位的無線電鏈路。戰(zhàn)場爭位可能經(jīng)由衛(wèi)星并經(jīng)由直接路 徑射頻(RF)兩者來通信。可以點對點、多播或廣播的方式發(fā)送數(shù)據(jù),其取決于數(shù)據(jù)的 性質(zhì)和/或網(wǎng)絡(luò)的特定物理特性。網(wǎng)絡(luò)可能包括(例如)經(jīng)設(shè)立以中繼數(shù)據(jù)的無線電。此 外,網(wǎng)絡(luò)可能包括高頻(HF)網(wǎng)絡(luò),其允許長距離通信。例如,還可使用微波網(wǎng)絡(luò)。由 于鏈路和節(jié)點類型的多樣性和其它原因,戰(zhàn)術(shù)網(wǎng)絡(luò)常具有過度復(fù)雜的網(wǎng)絡(luò)尋址方案和路 由表。此外,某些網(wǎng)絡(luò)(例如基于無線電的網(wǎng)絡(luò))可使用突發(fā)來操作。即,不是連續(xù)地 傳輸數(shù)據(jù),而是其發(fā)送周期性的數(shù)據(jù)突發(fā)。這較有用,因為無線電在必須由所有參與者 共享的特定信道上廣播,且一次僅可傳輸一個無線電。
戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)一般受到帶寬約束。即,在任一給定時刻,將要傳送的數(shù)據(jù)一般多于 可用帶寬。例如,這些約束可能歸因于帶寬需求超過供應(yīng)和/或可用的通信技術(shù)不供應(yīng)足 夠的帶寬來滿足用戶的需要。例如,在某些節(jié)點之間,帶寬可能在千位/秒的級別上。在 帶寬受約束的戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)中,較不重要的數(shù)據(jù)可能堵塞網(wǎng)絡(luò),從而阻止更重要的數(shù)據(jù) 及時地通過或者甚至根本上阻止到達接收節(jié)點。此外,所述網(wǎng)絡(luò)的部分可能包括內(nèi)部緩 沖以補償不可靠的鏈路。這可能引起額外的延遲。此外,當(dāng)緩沖器變滿時,可能丟棄數(shù)據(jù)。
在許多例子中,無法增加網(wǎng)絡(luò)的可用帶寬。例如,通過衛(wèi)星通信鏈路的可用帶寬可 能是固定的且在不部署另一衛(wèi)星的情況下無法有效增加。在這些情形下,必須管理帶寬, 而不是僅擴展帶寬以處置需求。在較大的系統(tǒng)中,網(wǎng)絡(luò)帶寬是關(guān)鍵資源。需要應(yīng)用盡可 能有效率地利用帶寬。此外,需要應(yīng)用避免"堵塞管道",即,當(dāng)帶寬有限時數(shù)據(jù)淹沒 鏈路。當(dāng)帶寬分配變化時,應(yīng)用程序應(yīng)優(yōu)選作出反映。帶寬可由于(例如)服務(wù)質(zhì)量、 干擾、信號障礙、優(yōu)先級再分配和視線而動態(tài)地變化。網(wǎng)絡(luò)可為高易失性的且可用帶寬 可顯著地且不預(yù)先通知而變化。
除了帶寬約束之外,戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)可能會經(jīng)歷高等待時間。例如,涉及通過衛(wèi)星鏈 路進行通信的網(wǎng)絡(luò)可能會招致在半秒或半秒以上的級別上的等待時間。對于某些通信來 說,這可能不是問題,但對于其它通信(例如實時、互動式通信(例如語音通信))來 說,非常需要盡可能地最小化等待時間。
許多戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)的另一共同特性是數(shù)據(jù)損失。數(shù)據(jù)可能由于多種原因而損失。例 如,具有將要發(fā)送的數(shù)據(jù)的節(jié)點可能遭到損壞或毀壞。作為另一實例,目的地節(jié)點可能 臨時脫離網(wǎng)絡(luò)。這可能因為(例如)所述節(jié)點已移出范圍,通信鏈路受到阻礙和/或節(jié)點 正受到干擾而發(fā)生。數(shù)據(jù)可能因為目的地節(jié)點無法接收數(shù)據(jù)以及中間節(jié)點缺乏足夠容量 以緩沖數(shù)據(jù)直到目的地節(jié)點變得可用而損失。此外,中間節(jié)點可能根本無法緩沖數(shù)據(jù), 而將其留給發(fā)送節(jié)點來確定數(shù)據(jù)是否曾實際到達目的地。
戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)中的應(yīng)用程序常不知道和/或不慮及網(wǎng)絡(luò)的特定特性。例如,應(yīng)用程序 可能只假定其具有其所需量的可用帶寬。作為另一實例,應(yīng)用程序可能假定數(shù)據(jù)不會在 網(wǎng)絡(luò)中損失。未考慮基本通信網(wǎng)絡(luò)的特定特性的應(yīng)用程序可能以實際上惡化問題的方式 來運作。例如,應(yīng)用程序可能連續(xù)地發(fā)送數(shù)據(jù)串流,其可能恰好與在較大束中以較低頻 率發(fā)送一樣有效。所述連續(xù)串流可能在(例如)廣播無線電網(wǎng)絡(luò)中招致大得多的額外開 銷,其有效地使其它節(jié)點無法通信,而較低頻率的突發(fā)將允許較有效地使用共享帶寬。
某些協(xié)議在戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)上無法正常工作。例如,例如TCP的協(xié)議可能因為此類網(wǎng) 絡(luò)可能遭遇的高損失率與等待時間而無法在基于無線電的戰(zhàn)術(shù)網(wǎng)絡(luò)上正常工作。TCP需 要發(fā)生若干形式的信號交換和確認以便發(fā)送數(shù)據(jù)。高等待時間和損失可能導(dǎo)致TCP命中
超時而無法在此類網(wǎng)絡(luò)上發(fā)送許多(如果存在的話)有意義的數(shù)據(jù)。
使用戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)傳送的信息相對于網(wǎng)絡(luò)中的其它數(shù)據(jù)常具有各種優(yōu)先級等級。例 如,警告飛機內(nèi)接收者的危險可能比用于數(shù)英里遠的地面部隊的位置遙測信息具有更高 優(yōu)先級。作為另一實例,關(guān)于交戰(zhàn)的來自總部的命令可能比在安全線后方的后勤通信具有更高優(yōu)先級。優(yōu)先級等級可能取決于發(fā)送者和/或接收者的特定情形。例如,與一單位 僅正在遵循標(biāo)準巡邏路線時相比,在所述單位正在主動投入戰(zhàn)斗時,位置遙測數(shù)據(jù)可能 具有高得多的優(yōu)先級。類似地,與UAV僅在路上時相比,在其正在目標(biāo)區(qū)域上方時, 來自其的實時視頻數(shù)據(jù)可能具有更高優(yōu)先級。
存在經(jīng)由網(wǎng)絡(luò)遞送數(shù)據(jù)的若干方法。 一種供許多通信網(wǎng)絡(luò)使用的方法是"盡力(best effort)"方法。即,關(guān)于容量、等待時間、可靠性、排序和錯誤,給定其它需求,將會 盡網(wǎng)絡(luò)所能而處置傳送的數(shù)據(jù)。因而,網(wǎng)絡(luò)不提供任一給定數(shù)據(jù)段會及時到達其目的地 的保證或根本不保證。此外,不保證數(shù)據(jù)會按發(fā)送次序或甚至在沒有改變所述數(shù)據(jù)中的 一個或一個以上位的傳輸錯誤的情況下到達。
另一方法是服務(wù)質(zhì)量(QoS)。 QoS是指網(wǎng)絡(luò)關(guān)于載運的數(shù)據(jù)提供各種形式的保證的 一項或一項以上能力。例如,支持QoS的網(wǎng)絡(luò)可向數(shù)據(jù)串流保證一定量的帶寬。作為另 一實例,網(wǎng)絡(luò)可保證在兩個特定節(jié)點之間的包具有某一最大等待時間。此類保證可能在 其中兩個節(jié)點是兩個正在經(jīng)由網(wǎng)絡(luò)進行對話的人的語音通信的情況下較有用。例如,此 類情況下在數(shù)據(jù)遞送中的延遲可能導(dǎo)致惱人的通信間隙和/或死寂(dead silence)。
QoS可視為網(wǎng)絡(luò)向選定網(wǎng)絡(luò)業(yè)務(wù)提供較好服務(wù)的能力。QoS的主要目標(biāo)是提供優(yōu)先 級,包括專用帶寬、受控的抖動和等待時間(某一實時和互動業(yè)務(wù)所需的),和改進的 損失特性。另一重要目標(biāo)是確保為-一個流提供優(yōu)先級不會使其它流失敗。即,針對后續(xù)
流所作的保證不得破壞對現(xiàn)有流所作的保證。
QoS的目前方法經(jīng)常需要網(wǎng)絡(luò)中的每個節(jié)點支持QoS,或最少使網(wǎng)絡(luò)中的特定通信
中所涉及的每個節(jié)點支持QoS。例如,在冃前系統(tǒng)中,為了在兩個節(jié)點之間提供等待時
間保證,在那兩個節(jié)點之間載運業(yè)務(wù)的每個節(jié)點必須知道并同意尊重且能夠尊重所述保證。
存在若干提供QoS的方法。 一種方法是整合服務(wù),或"IntServ"。 IntServ提供一種 QoS系統(tǒng),其中網(wǎng)絡(luò)中的每個節(jié)點均支持所述服務(wù)且那些服務(wù)在建立連接時保留。IntServ
因為必須在每個節(jié)點處維持的大量狀態(tài)信息以及與建立此類連接相關(guān)聯(lián)的額外開銷而 無法適當(dāng)?shù)乜s放。
另一提供QoS的方法是區(qū)分服務(wù),或"DiffServ"。 DiffServ是一類服務(wù)模型,其增 強例如因特網(wǎng)的網(wǎng)絡(luò)的盡力服務(wù)。DiffServ按用戶、服務(wù)要求和其它標(biāo)準來區(qū)分業(yè)務(wù)。 接著,DiffServ標(biāo)記包,使得網(wǎng)絡(luò)節(jié)點可經(jīng)由優(yōu)先級列隊或帶寬分配,或通過為特定業(yè) 務(wù)流選擇專用路線來提供不同的服務(wù)等級。通常, 一節(jié)點具有用于每一類服務(wù)的多種隊 列。節(jié)點接著基于類類別從那些隊列中選擇下一包來發(fā)送?,F(xiàn)有QoS解決方案常為網(wǎng)絡(luò)特定的且每一網(wǎng)絡(luò)類型或結(jié)構(gòu)可能需要不同的QoS配 置。由于現(xiàn)有QoS解決方案所利用的機制的緣故,在目前QoS系統(tǒng)看來相同的消息可 能基于消息內(nèi)容而實際上具有不同的優(yōu)先級。然而,數(shù)據(jù)消費者可能需要存取高優(yōu)先級 數(shù)據(jù)而不被低優(yōu)先級數(shù)據(jù)淹沒?,F(xiàn)有QoS系統(tǒng)無法在傳輸層處基于消息內(nèi)容來提供 QoS。
如所提及,現(xiàn)有QoS解決方案需要至少特定通信中所涉及的節(jié)點支持QoS。然而, 在網(wǎng)絡(luò)"邊緣"處的節(jié)點即便其不能作出總體保證,但可適于提供QoS的某一改進。在 節(jié)點是通信中的參與節(jié)點(即傳輸和/或接收節(jié)點)的情況下和/或在節(jié)點位于網(wǎng)絡(luò)中的 阻塞點處的情況下,將節(jié)點視為處于網(wǎng)絡(luò)邊緣處。阻塞點是其中所有業(yè)務(wù)必須通過到另 一部分的網(wǎng)絡(luò)區(qū)段。例如,從LAN到衛(wèi)星鏈路的路由器或網(wǎng)關(guān)將為阻塞點,因為從所 述LAN到不在所述LAN上的任一節(jié)點的所有業(yè)務(wù)均必須通過所述網(wǎng)關(guān)到達衛(wèi)星鏈路。
如上文所論述,現(xiàn)有應(yīng)用程序無法設(shè)計成經(jīng)由具有特定特性的網(wǎng)絡(luò)(例如戰(zhàn)術(shù)數(shù)據(jù) 網(wǎng)絡(luò))與節(jié)點進行通信。例如,傳統(tǒng)和/或商用現(xiàn)貨(COTS)應(yīng)用程序可能期望使用提 供許多服務(wù)(例如TCP)的復(fù)雜傳輸層協(xié)議經(jīng)由高速、可靠網(wǎng)絡(luò)與節(jié)點進行通信。由此, 當(dāng)經(jīng)由例如戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)的網(wǎng)絡(luò)與節(jié)點進行通信時,此類應(yīng)用程序可能展現(xiàn)不合需要的 行為。例如,經(jīng)由具有低帶寬、高等待時間和高數(shù)據(jù)損失率的戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)與節(jié)點通信 的應(yīng)用程序可能無法正確地起作用,或根本不能起作用,這歸因于阻止協(xié)議(例如TCP) 適當(dāng)操作的超時和丟失數(shù)據(jù)。因此,非常需要能夠透明地允許應(yīng)用程序使用QoS經(jīng)由戰(zhàn) 術(shù)數(shù)據(jù)網(wǎng)絡(luò)與一個或一個以上節(jié)點通信,而不需要修改應(yīng)用程序。
因而,需要在戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)中提供QoS的系統(tǒng)和方法。需要用于在戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)的 邊緣上提供QoS的系統(tǒng)和方法。此外,需要用于QoS的協(xié)議轉(zhuǎn)換網(wǎng)關(guān)的系統(tǒng)和方法。
發(fā)明內(nèi)容
本發(fā)明的實施例提供用于促進數(shù)據(jù)通信的系統(tǒng)和方法。 一種方法包括在網(wǎng)絡(luò)中提供 服務(wù)質(zhì)量,其包括接收數(shù)據(jù);確定所述數(shù)據(jù)的優(yōu)先級;轉(zhuǎn)換所述數(shù)據(jù)以產(chǎn)生經(jīng)轉(zhuǎn)換數(shù) 據(jù);以及傳送所述經(jīng)轉(zhuǎn)換數(shù)據(jù)。至少部分基于第一協(xié)議來接收所述數(shù)據(jù)。所述數(shù)據(jù)的優(yōu) 先級經(jīng)確定以支持服務(wù)質(zhì)量標(biāo)準。所述經(jīng)轉(zhuǎn)換數(shù)據(jù)至少部分基于第二協(xié)議。所述第二協(xié) 議不同于所述第一協(xié)議。
某些實施例提供一種用于在網(wǎng)絡(luò)中提供基于內(nèi)容的服務(wù)質(zhì)量的數(shù)據(jù)通信系統(tǒng),其包 括接收組件、優(yōu)先級確定組件、轉(zhuǎn)換組件和通信組件。所述接收組件適于至少部分基于 第一協(xié)議來接收數(shù)據(jù)塊。所述優(yōu)先級確定組件適于至少部分基于所述數(shù)據(jù)塊的內(nèi)容和規(guī)則來確定所述數(shù)據(jù)塊的優(yōu)先級。所述轉(zhuǎn)換組件適于轉(zhuǎn)換所述數(shù)據(jù)塊以產(chǎn)生經(jīng)轉(zhuǎn)換數(shù)據(jù) 塊。所述經(jīng)轉(zhuǎn)換數(shù)據(jù)塊至少部分基于第二協(xié)議。所述第二協(xié)議不同于所述第一協(xié)議。所 述通信組件適于傳送所述經(jīng)轉(zhuǎn)換數(shù)據(jù)塊。
某些實施例提供一種計算機可讀媒體,其包括用于在計算機上執(zhí)行的指令組,所述 指令組包括接收例行程序、優(yōu)先級確定例行程序、轉(zhuǎn)換例行程序和通信例行程序。所述 接收例行程序經(jīng)配置以接收數(shù)據(jù)。至少部分基于第一協(xié)議來接收所述數(shù)據(jù)。所述優(yōu)先級 確定例行程序經(jīng)配置以至少部分基于規(guī)則來確定所述數(shù)據(jù)的優(yōu)先級。所述轉(zhuǎn)換例行程序 經(jīng)配置以產(chǎn)生經(jīng)轉(zhuǎn)換數(shù)據(jù)。所述經(jīng)轉(zhuǎn)換數(shù)據(jù)至少部分基于第二協(xié)議。所述第二協(xié)議不同 于所述第一協(xié)議。所述通信例行程序經(jīng)配置以傳送所述經(jīng)轉(zhuǎn)換數(shù)據(jù)。
圖1說明與本發(fā)明的一實施例一起操作的戰(zhàn)術(shù)通信網(wǎng)絡(luò)環(huán)境。
圖2展示根據(jù)本發(fā)明的一實施例在七層OSI網(wǎng)絡(luò)模型中的數(shù)據(jù)通信系統(tǒng)的定位。
圖3描繪根據(jù)本發(fā)明的一實施例使用數(shù)據(jù)通信系統(tǒng)所促進的多個M絡(luò)的實例。
圖4說明與本發(fā)明的一實施例一起操作的數(shù)據(jù)通信環(huán)境。
圖5說明根據(jù)本發(fā)明的一實施例的數(shù)據(jù)通信系統(tǒng)的一實施例。
圖6說明根據(jù)本發(fā)明的一實施例用于傳送數(shù)據(jù)的方法的流程圖。
當(dāng)結(jié)合附圖閱讀時將更好地理解本發(fā)明的某些實施例的先前概述以及以下詳細描
述。出于說明本發(fā)明的目的,在圖式中展示某些實施例。然而,應(yīng)了解,本發(fā)明不限于
附圖所示的布置和手段。
具體實施例方式
圖1說明使用本發(fā)明的一實施例操作的戰(zhàn)術(shù)通信網(wǎng)絡(luò)環(huán)境100。網(wǎng)絡(luò)環(huán)境100包括 多個通信節(jié)點U0、 一個或一個以上網(wǎng)絡(luò)120、連接所述節(jié)點與網(wǎng)絡(luò)的一個或一個以上 鏈路130,和促進網(wǎng)絡(luò)環(huán)境100的組件上的通信的一個或一個以上通信系統(tǒng)150。以卜 論述假定網(wǎng)絡(luò)環(huán)境100包括一個以上網(wǎng)絡(luò)120與一個以上鏈路130,但應(yīng)了解,其它環(huán) 境也是可能的并在預(yù)期之中。
例如,通信節(jié)點UO可為和/或包括無線電、傳輸器、衛(wèi)星、接收器、工作站、服務(wù) 器和/或其它計算或處理裝置。
例如,網(wǎng)絡(luò)120可為用于在節(jié)點110之間傳輸數(shù)據(jù)的硬件和/或軟件。例如,網(wǎng)絡(luò) 120可包括一個或一個以上節(jié)點110。
鏈路130可為有線和/或無線連接以允許在節(jié)點110和/或網(wǎng)絡(luò)120之間進行傳輸。例如,通信系統(tǒng)150可包括用于在所述節(jié)點110、網(wǎng)絡(luò)120和鏈路130之間促進數(shù) 據(jù)傳輸?shù)能浖?、固件?或硬件。如圖1所說明,通信系統(tǒng)150可相對于所述節(jié)點110、 網(wǎng)絡(luò)120和/或鏈路130來實施。在某些實施例中,每個節(jié)點IIO包括一通信系統(tǒng)150。 在某些實施例中, 一個或一個以上節(jié)點110包括一通信系統(tǒng)150。在某些實施例中,一 個或一個以上節(jié)點110不包括通信系統(tǒng)150。
通信系統(tǒng)150提供動態(tài)數(shù)據(jù)管理以幫助確保在戰(zhàn)術(shù)通信網(wǎng)絡(luò)(例如網(wǎng)絡(luò)環(huán)境100) 上的通信。如圖2所示,在某些實施例中,系統(tǒng)150在OSI七層協(xié)議模型中作為傳輸層 的一部分和/或在其頂部而操作。例如,系統(tǒng)150可給予傳遞到傳輸層的戰(zhàn)術(shù)網(wǎng)絡(luò)中的較 高優(yōu)先級數(shù)據(jù)優(yōu)先。系統(tǒng)150可用于促進單一網(wǎng)絡(luò)(例如局域網(wǎng)(LAN)或廣域網(wǎng)(WAN)) 中或橫跨多個網(wǎng)絡(luò)的通信。圖3中展示多網(wǎng)絡(luò)系統(tǒng)的一實例。例如,系統(tǒng)150可用于管 理可用帶寬而非向網(wǎng)絡(luò)添加額外帶寬。
在某些實施例中,系統(tǒng)150為軟件系統(tǒng),但在各種實施例中系統(tǒng)150可包括硬件和 軟件組件兩者。例如,系統(tǒng)150可獨立于網(wǎng)絡(luò)硬件。g卩,系統(tǒng)150可適于在多種硬件和 軟件平臺上運作。在某些實施例中,系統(tǒng)150在網(wǎng)絡(luò)邊緣上操作而不在網(wǎng)絡(luò)內(nèi)部的節(jié)點 上操作。然而,系統(tǒng)150也可在網(wǎng)絡(luò)內(nèi)部操作,(例如)在網(wǎng)絡(luò)中的"阻塞點"處操作。
系統(tǒng)150可使用規(guī)則和模式或簡檔來執(zhí)行處理量管理功能,例如優(yōu)化可用帶寬、設(shè) 定信息優(yōu)先級和管理網(wǎng)絡(luò)中的數(shù)據(jù)鏈路。"優(yōu)化"帶寬意味著當(dāng)前描述的技術(shù)可用于增 加在一個或-'個以上網(wǎng)絡(luò)中傳送數(shù)據(jù)的帶寬使用效率。例如,優(yōu)化帶寬使用可包括移除 功能上冗余的消息、消息串流管理或定序,和消息壓縮。例如,設(shè)定信息優(yōu)先級可包括 以比基于因特網(wǎng)協(xié)議(IP)的技術(shù)更精細的粒度來區(qū)分消息類型,和經(jīng)由基于選定規(guī)則 的定序算法將消息定序到數(shù)據(jù)串流上。例如,數(shù)據(jù)鏈路管理可包括網(wǎng)絡(luò)測量的基于規(guī)則 的分析以影響規(guī)則、模式和/或數(shù)據(jù)傳輸?shù)淖兓DJ交蚝啓n可包括與對于特定網(wǎng)絡(luò)健康 狀態(tài)或條件的操作需求相關(guān)的一組規(guī)則。系統(tǒng)150提供動態(tài)、"在運行中"重新配置模 式,包括在運行中定義并切換到新模式。
通信系統(tǒng)150可經(jīng)配置以適應(yīng)(例如)在易失性、帶寬受限網(wǎng)絡(luò)中的變化的優(yōu)先級 和服務(wù)等級。系統(tǒng)150可經(jīng)配置以管理用于改進數(shù)據(jù)流的信息,以幫助增加網(wǎng)絡(luò)中的響 應(yīng)能力并減少通信等待時間。此外,系統(tǒng)150可經(jīng)由可升級并可縮放的靈活結(jié)構(gòu)來提供 互操作性以改進通信的可用性、存活性和可靠性。例如,系統(tǒng)150支持一種數(shù)據(jù)通信結(jié) 構(gòu),所述數(shù)據(jù)通信結(jié)構(gòu)可自主地適應(yīng)動態(tài)變化的環(huán)境,同時使用預(yù)定義且可預(yù)測的系統(tǒng) 資源和帶寬。
在某些實施例中,系統(tǒng)150提供對帶寬受約束的戰(zhàn)術(shù)通信網(wǎng)絡(luò)的處理量管理,同時保持對使用所述網(wǎng)絡(luò)的應(yīng)用程序透明。系統(tǒng)150以減小的復(fù)雜度向所述網(wǎng)絡(luò)提供橫跨多 個用戶和環(huán)境的處理量管理。如上文所提及,在某些實施例中,系統(tǒng)150在OSI七層模 型的層四(傳輸層)內(nèi)和/或在其頂部在主機節(jié)點上運行且不需要專用網(wǎng)絡(luò)硬件。系統(tǒng) 150可對層四接口透明地操作。g卩,應(yīng)用程序可利用用于傳輸層的標(biāo)準接口且不知道系 統(tǒng)150的操作。例如,當(dāng)應(yīng)用程序開啟套接時,系統(tǒng)150可在此刻在協(xié)議堆疊中過濾數(shù) 據(jù)。系統(tǒng)150通過允許應(yīng)用程序在網(wǎng)絡(luò)上的通信裝置處使用(例如)操作系統(tǒng)所提供的 TCP/IP套接接口而非特定針對系統(tǒng)150的接口來實現(xiàn)透明性。例如,系統(tǒng)150規(guī)則可以 可擴展標(biāo)記語言(XML)來編寫和/或經(jīng)由自定義動態(tài)鏈接庫(DLL)來提供。
在某些實施例中,系統(tǒng)150在網(wǎng)絡(luò)邊緣上提供服務(wù)質(zhì)量(QoS)。例如,所述系統(tǒng)的 QoS能力在網(wǎng)絡(luò)邊緣上提供基于內(nèi)容、基于規(guī)則的數(shù)據(jù)優(yōu)先級確定。例如,優(yōu)先級確定 可包括區(qū)分和/或定序。例如,系統(tǒng)150可基于用戶可配置的R分規(guī)則將消息區(qū)分成隊列。 所述消息按照由用戶配置的定序規(guī)則(例如資源缺乏、循環(huán)、相對頻率等)規(guī)定的次序 而定序成數(shù)據(jù)串流。例如,通過在邊緣上使用QoS,傳統(tǒng)QoS方法不能區(qū)分的數(shù)據(jù)消息 可基于消息內(nèi)容來進行區(qū)分。例如,規(guī)則可以XML來實施。例如,在某些實施例中, 為了適應(yīng)超過XML的能力和/或為了支持極低等待時間要求,系統(tǒng)150允許動態(tài)鏈接庫 具備自定義代碼。
可經(jīng)由系統(tǒng)150來定制網(wǎng)絡(luò)上的入站和/或出站數(shù)據(jù)。例如,優(yōu)先級確定保護客戶端 應(yīng)用程序使其不受高容量、低優(yōu)先級數(shù)據(jù)的影響。系統(tǒng)150幫助確保應(yīng)用程序接收數(shù)據(jù) 以支持特定操作情景或約束。
在某些實施例中,當(dāng)主機連接到包括路由器作為到帶寬受約束的戰(zhàn)術(shù)網(wǎng)絡(luò)的接口的 LAN時,所述系統(tǒng)通過代理在稱為QoS的配置中操作。在此配置中,去往本地LAN的 包繞過系統(tǒng)并直接到達LAN。所述系統(tǒng)在網(wǎng)絡(luò)邊緣上將QoS施加到去往帶寬受約束的 戰(zhàn)術(shù)鏈路的包。
在某些實施例中,系統(tǒng)150經(jīng)由命令簡檔切換來提供對多個操作情景和/或網(wǎng)絡(luò)環(huán)境 的動態(tài)支持。簡檔可能包括允許用戶或系統(tǒng)改變到所命名簡檔的名稱或其它識別符。例 如,簡檔還可包括一個或一個以上識別符,例如功能兀余規(guī)則識別符、區(qū)分規(guī)則識別符、 歸檔接口識別符、定序規(guī)則識別符、預(yù)傳輸接口識別符、傳輸后接口識別符、傳輸識別 符和/或其它識別符。例如,功能冗余規(guī)則識別符指定(例如)從過期數(shù)據(jù)或?qū)嵸|(zhì)上類似 數(shù)據(jù)檢測功能冗余的規(guī)則。例如,區(qū)分規(guī)則識別符指定將消息區(qū)分成隊列以供處理的規(guī) 則。例如,歸檔接口識別符指定到歸檔系統(tǒng)的接口。定序規(guī)則識別符識別定序算法,所 述定序算法控制隊列前方的樣本和(因此)數(shù)據(jù)串流上數(shù)據(jù)的定序。例如,預(yù)傳輸接口識別符指定用于預(yù)傳輸處理的接口,其用于例如加密和壓縮等特殊處理。例如,傳輸后 接口識別符識別用于傳輸后處理的接口,其用于例如解密和解壓縮等處理。傳輸識別符 指定用于選定傳輸?shù)木W(wǎng)絡(luò)接口。
例如,簡檔還可包括其它信息,例如隊列大小確定信息。例如,隊列大小確定信息 識別隊列的數(shù)目與每一隊列專用的存儲器和輔助存儲裝置的量。
在某些實施例中,系統(tǒng)150提供用于優(yōu)化帶寬的基于規(guī)則的方法。例如,系統(tǒng)150 可采用隊列選擇規(guī)則以將消息區(qū)分成消息隊列,使得可向消息指派優(yōu)先級和數(shù)據(jù)串流上 的適當(dāng)相對頻率。系統(tǒng)150可使用功能冗余規(guī)則來管理功能上冗余的消息。例如,如果 消息與仍未經(jīng)由網(wǎng)絡(luò)發(fā)送的先前消息充分不同(如由規(guī)則所定義),那么消息是功能上 冗余的。S口,如果提供新消息,其與已經(jīng)調(diào)度以被發(fā)送但仍未被發(fā)送的較舊消息并非充 分不同,那么可丟棄較新消息,因為較舊消息將載運功能上等同的信息且在隊列中更前 面。此外,功能冗余可包括實際的復(fù)制消息和在已發(fā)送較舊消息之前到達的較新消息。 例如,節(jié)點可能由于基礎(chǔ)網(wǎng)絡(luò)的特性而接收特定消息的相同副本,例如出于故障容忍原 因由兩個不同路徑發(fā)送的消息。作為另一實例,新消息可含有取代仍未被發(fā)送的較舊消 息的數(shù)據(jù)。在此情形下,系統(tǒng)150可丟棄較舊信息并只發(fā)送新消息。系統(tǒng)150還可包括 優(yōu)先級定序規(guī)則以確定數(shù)據(jù)串流的基于優(yōu)先級的消息序列。此外,系統(tǒng)150可包括傳輸 處理規(guī)則以提供預(yù)傳輸和傳輸后特殊處理,例如壓縮和/或加密。
在某些實施例中,系統(tǒng)150提供故障容忍能力以幫助保護數(shù)據(jù)完整性和可靠性。例 如,系統(tǒng)150可使用用戶定義的隊列選擇規(guī)則以將消息區(qū)分成隊列。例如,所述隊列根 據(jù)用戶定義的配置來確定大小。例如,所述配置指定隊列可能消耗的最大存儲器量。此 外,所述配置可能允許用戶指定位置和可用于隊列溢出的輔助存儲裝置的量。在填充隊 列中的存儲器之后,可在輔助存儲裝置內(nèi)將消息列隊。當(dāng)輔助存儲裝置也填滿時,系統(tǒng) 150可在隊列中移除最舊消息,記錄錯誤消息,并將最新消息列隊。如果針對操作模式 啟用歸檔,那么可使用未經(jīng)由網(wǎng)絡(luò)發(fā)送消息的指示符來歸檔出列消息。
例如,可針對特定應(yīng)用基于每一鏈路而配置在系統(tǒng)150中用于隊列的存儲器和輔助 存儲裝置。在網(wǎng)絡(luò)可用性周期之間的較長時間可對應(yīng)于較多存儲器和輔助存儲裝置以支 持網(wǎng)絡(luò)中斷。系統(tǒng)150可與網(wǎng)絡(luò)建模和模擬應(yīng)用程序整合,(例如)以幫助識別大小確 定來幫助確保隊列經(jīng)適當(dāng)?shù)卮笮〈_定且中斷之間的時間足以幫助實現(xiàn)穩(wěn)定狀態(tài)并幫助 避免最終隊列溢出。
此外,在某些實施例中,系統(tǒng)150提供計量入站("定形")與出站("管制")數(shù)據(jù) 的能力。管制和定形能力有助于解決網(wǎng)絡(luò)中的定時的失配。定形有助于防止網(wǎng)絡(luò)緩沖器充滿在低優(yōu)先級數(shù)據(jù)后面排隊等候的高優(yōu)先級數(shù)據(jù)。管制有助于防止應(yīng)用程序數(shù)據(jù)消費 者由于低優(yōu)先級數(shù)據(jù)而超限。管制和定形由兩個參數(shù)來支配有效鏈路速度和鏈路比例。
例如,系統(tǒng)150可形成數(shù)據(jù)串流,其不超過有效鏈路速度乘以鏈路比例??呻S網(wǎng)絡(luò)變化
而動態(tài)地修改所述參數(shù)。所述系統(tǒng)還可存取檢測到的鏈路速度以支持關(guān)于數(shù)據(jù)計量的應(yīng)
用程序等級決策。由系統(tǒng)150提供的信息可與其它網(wǎng)絡(luò)操作信息組合來幫助決定什么鏈 路速度適合給定的網(wǎng)絡(luò)情景。
圖4說明與木發(fā)明的一實施例一起操作的數(shù)據(jù)通信環(huán)境400。環(huán)境400包括數(shù)據(jù)通 信系統(tǒng)410、源節(jié)點420、第一目的地節(jié)點431和第二目的地節(jié)點432。
數(shù)據(jù)通信系統(tǒng)410與源節(jié)點420通信。例如,數(shù)據(jù)通信系統(tǒng)410可通過過程間通信 或使用應(yīng)用程序編程接口 (API)(例如套接),經(jīng)由鏈路(例如高速LAN)與源節(jié)點420 通信。例如,源節(jié)點420可為與數(shù)據(jù)通信系統(tǒng)410相同的計算系統(tǒng)的一部分。
數(shù)據(jù)通信系統(tǒng)410與第一目的地節(jié)點431通信。數(shù)據(jù)通信系統(tǒng)410可經(jīng)由第一鏈路 441與第一目的地節(jié)點431通信。例如,第一鏈路441可為到第一目的地節(jié)點431的直 接鏈路。或者,第一鏈路441可為網(wǎng)絡(luò)的一部分,數(shù)據(jù)通信系統(tǒng)410可經(jīng)由所述網(wǎng)絡(luò)與 第一目的地節(jié)點431通信。例如,第一鏈路441可為高速LAN的-一部分?;蛘撸?一 鏈路441可包括過程間通信或API (例如套接)。例如,源節(jié)點420可為與數(shù)據(jù)通信系統(tǒng) 410相同的計算系統(tǒng)的一部分。在某些實施例中,第一鏈路441不是戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)的一 部分。在某些實施例中,第一目的地節(jié)點431在與源節(jié)點420相同的網(wǎng)絡(luò)上。在某些實 施例中,第一目的地節(jié)點431在與源節(jié)點420相同的計算系統(tǒng)上。
數(shù)據(jù)通信系統(tǒng)410與第二目的地節(jié)點432通信。數(shù)據(jù)通信系統(tǒng)410可經(jīng)由第二鏈路 442與第二冃的地節(jié)點432通信。例如,第二鏈路442可為到第二冃的地節(jié)點432的直 接鏈路?;蛘?,第二鏈路442可為網(wǎng)絡(luò)的一部分,數(shù)據(jù)通信系統(tǒng)410可經(jīng)由所述網(wǎng)絡(luò)與 第二目的地節(jié)點432通信。例如,第二鏈路442可為無線電或衛(wèi)星鏈路。在某些實施例 中,第二鏈路442為戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)的一部分。在某些實施例中,第二鏈路442受帶寬約 束。在某些實施例中,第二鏈路442是不可靠的和/或間歇地斷開。在某些實施例中,第 二鏈路442是與第一鏈路441不同的鏈路。在某些實施例中,第二鏈路442是與第一鏈 路441不同的網(wǎng)絡(luò)的一部分。
源節(jié)點420將數(shù)據(jù)傳送到數(shù)據(jù)通信系統(tǒng)410。源節(jié)點420可包括(例如)應(yīng)用程序。 如上文所論述,源節(jié)點420可經(jīng)由鏈路與數(shù)據(jù)通信系統(tǒng)410通信。例如,源節(jié)點420可 經(jīng)由高速LAN與數(shù)據(jù)通信系統(tǒng)410通信。
例如,數(shù)據(jù)通信系統(tǒng)410可類似于上文描述的通信系統(tǒng)150。圖5說明根據(jù)本發(fā)明的一實施例的數(shù)據(jù)通信系統(tǒng)410的一實施例。圖5中所說明的數(shù)據(jù)通信系統(tǒng)410的實施 例包括接收組件510、優(yōu)先級確定組件520、轉(zhuǎn)換組件530和通信組件540。接收組件 510與優(yōu)先級確定組件520通信。優(yōu)先級確定組件520與轉(zhuǎn)換組件530通信。轉(zhuǎn)換組件 530與通信組件540通信。在某些實施例中,優(yōu)先級確定組件520與通信組件540通信。
在某些實施例中,數(shù)據(jù)通信系統(tǒng)410適于從源節(jié)點420接收數(shù)據(jù)。例如,可由接收 組件510接收數(shù)據(jù)。接收組件510適于接收數(shù)據(jù)。在某些實施例中,接收組件510適于 至少部分基于一協(xié)議來接收數(shù)據(jù)。
在某些實施例中,數(shù)據(jù)通信系統(tǒng)410可包括一個或一個以上隊列,其用于存儲、組 織數(shù)據(jù)和/或確定數(shù)據(jù)的優(yōu)先級?;蛘?,可使用其它數(shù)據(jù)結(jié)構(gòu)來存儲、組織數(shù)據(jù)和/或確 定數(shù)據(jù)的優(yōu)先級。例如,可使用表、樹、或鏈接列表。例如,可由優(yōu)先級確定組件520 來提供所述隊列或其它數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)優(yōu)先級確定組件520適于確定數(shù)據(jù)的優(yōu)先級。例 如,可從接收組件510接收數(shù)據(jù)。
在某些實施例中,數(shù)據(jù)通信系統(tǒng)410適于將數(shù)據(jù)從使用一個協(xié)議轉(zhuǎn)換成使用第二協(xié) 議。例如,可由轉(zhuǎn)換組件530轉(zhuǎn)換數(shù)據(jù)。轉(zhuǎn)換組件530適于轉(zhuǎn)換數(shù)據(jù)以產(chǎn)生經(jīng)轉(zhuǎn)換數(shù)據(jù)。 例如,可從接收組件510接收將要轉(zhuǎn)換的數(shù)據(jù)。例如,可從優(yōu)先級確定組件520接收將 要轉(zhuǎn)換的數(shù)據(jù)。轉(zhuǎn)換組件530適于將使用第一協(xié)議接收的數(shù)據(jù)轉(zhuǎn)換成使用第二協(xié)議轉(zhuǎn)換 的數(shù)據(jù)。
在某些實施例中,數(shù)據(jù)通信系統(tǒng)410適于將數(shù)據(jù)傳送到第 -目的地節(jié)點431。在某 些實施例中,數(shù)據(jù)通信系統(tǒng)410適于將數(shù)據(jù)傳送到第二目的地節(jié)點432。例如,可由通 信組件540傳送數(shù)據(jù)。通信組件540適于傳送數(shù)據(jù)。例如,數(shù)據(jù)可為從接收組件510接 收的數(shù)據(jù)。例如,數(shù)據(jù)可為由優(yōu)先級確定組件520確定優(yōu)先級的數(shù)據(jù)。例如'數(shù)據(jù)可為 由轉(zhuǎn)換組件530轉(zhuǎn)換的數(shù)據(jù)。例如,數(shù)據(jù)可為由轉(zhuǎn)換組件530產(chǎn)生的經(jīng)轉(zhuǎn)換數(shù)據(jù)。
第一 目的地節(jié)點431從數(shù)據(jù)通信系統(tǒng)410接收數(shù)據(jù)。第一 目的地節(jié)點431可包括(例 如)應(yīng)用程序。如上文所論述,第一目的地節(jié)點431可經(jīng)由鏈路(例如鏈路441)與數(shù) 據(jù)通信系統(tǒng)410通信。
在某些實施例中,第一目的地節(jié)點431和數(shù)據(jù)通信系統(tǒng)410是相同計算機系統(tǒng)的一 部分。例如,第一目的地節(jié)點431可為在與數(shù)據(jù)通信系統(tǒng)410相同的計算機系統(tǒng)上運行 的應(yīng)用程序。此實施例可類似于上文論述的其中源節(jié)點420是與數(shù)據(jù)通信系統(tǒng)410相同 的計算機系統(tǒng)的一部分的實施例。
第二目的地節(jié)點432從數(shù)據(jù)通信系統(tǒng)410接收數(shù)據(jù)。第二目的地節(jié)點432可包括(例 如)應(yīng)用程序、無線電或衛(wèi)星。如上文所論述,第二目的地節(jié)點432可經(jīng)由鏈路(例如鏈路442)與數(shù)據(jù)通信系統(tǒng)410通信。
數(shù)據(jù)通信系統(tǒng)410、源節(jié)點420、第一目的地節(jié)點431和/或第二目的地節(jié)點432所 接收、存儲、確定優(yōu)先級、處理、傳送和/或傳輸?shù)臄?shù)據(jù)可包括數(shù)據(jù)塊。所述數(shù)據(jù)塊可為 (例如)包、單元、幀和/或串流。例如,數(shù)據(jù)通信系統(tǒng)410可從源節(jié)點420接收數(shù)據(jù)包。 作為另一實例,數(shù)據(jù)通信系統(tǒng)410可處理來自源節(jié)點420的數(shù)據(jù)串流。
在操作中,源節(jié)點420至少部分提供和/或產(chǎn)生由數(shù)據(jù)通信系統(tǒng)410處置的數(shù)據(jù)。源 節(jié)點420可包括(例如)應(yīng)用程序。如上文所論述,源節(jié)點420可經(jīng)由鏈路與數(shù)據(jù)通信 系統(tǒng)410通信。例如,源節(jié)點420可經(jīng)由高速LAN與數(shù)據(jù)通信系統(tǒng)410通信。例如, 源節(jié)點420可產(chǎn)生連續(xù)數(shù)據(jù)串流或可突發(fā)數(shù)據(jù)。例如,如上文所論述,數(shù)據(jù)可為數(shù)據(jù)塊。
可使用一個或一個以上協(xié)議來傳送數(shù)據(jù)。例如,源節(jié)點420可使用網(wǎng)絡(luò)層和傳輸層 協(xié)議來傳送數(shù)據(jù)??赏ㄟ^一個或一個以上協(xié)議(例如數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層和/或傳輸層協(xié) 議)在數(shù)據(jù)通信系統(tǒng)410處接收數(shù)據(jù)。例如,所述協(xié)議可為和/或包括傳輸協(xié)議,例如傳 輸控制協(xié)議(TCP)、用戶數(shù)據(jù)報協(xié)議(UDP)或串流控制傳輸協(xié)議(SCTP)。作為另一 實例,所述協(xié)議可為和/或包括因特網(wǎng)協(xié)議(IP)、因特網(wǎng)包交換(IPX)、以太網(wǎng)、非同 步轉(zhuǎn)移模式(ATM)、文件轉(zhuǎn)移協(xié)議(FTP)和/或?qū)崟r傳輸協(xié)議(RTP)。
在某些實施例中,源節(jié)點420和數(shù)據(jù)通信系統(tǒng)410是相同計算機系統(tǒng)的'部分。例 如,源節(jié)點420可為在與數(shù)據(jù)通信系統(tǒng)410相同的計算機系統(tǒng)上運行的應(yīng)用程序。所述 應(yīng)用程序可經(jīng)由由(例如)過程間通信或傳輸層接口 (例如套接)所定義的協(xié)議將數(shù)據(jù) 傳送到數(shù)據(jù)通信系統(tǒng)410。即,可使用符合API (例如套接)的協(xié)議來傳送數(shù)據(jù)。從應(yīng) 用程序的角度來看,所述應(yīng)用程序可能不知道正在經(jīng)由接口將數(shù)據(jù)傳遞到數(shù)據(jù)通信系統(tǒng) 410。因而,例如,在某些實施例中,數(shù)據(jù)通信系統(tǒng)410可用作和/或由源節(jié)點420視為 計算系統(tǒng)的驅(qū)動器。
由數(shù)據(jù)通信系統(tǒng)410接收數(shù)據(jù)。例如,可由接收組件接收數(shù)據(jù)。例如,所述接收組 件可類似于接收組件510。如上文所論述,可使用和/或根據(jù)至少一個協(xié)議來傳送數(shù)據(jù)。 例如,數(shù)據(jù)可經(jīng)由一個或一個以上協(xié)議(例如數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層和/或傳輸層協(xié)議)。 在某些實施例中,從源節(jié)點420接收數(shù)據(jù)。例如,如上文所論述,源節(jié)點420可產(chǎn)生數(shù) 據(jù)并使用一協(xié)議將其傳送到數(shù)據(jù)通信系統(tǒng)410。在某些實施例中,從第一 目的地節(jié)點431 接收數(shù)據(jù)。例如,第一目的地節(jié)點431可響應(yīng)于從源節(jié)點420發(fā)送的消息。在某些實施 例中,從第二目的地節(jié)點432接收數(shù)據(jù)。例如,第二目的地節(jié)點432可經(jīng)由第二鏈路442 響應(yīng)于來自源節(jié)點420的消息。因而,在某些實施例中,從源節(jié)點420的角度來看,相 對于第一目的地節(jié)點431和/或第二目的地節(jié)點432,數(shù)據(jù)通信系統(tǒng)410可用作網(wǎng)關(guān)、轉(zhuǎn)發(fā)器和/或代理。
在某些實施例中,數(shù)據(jù)通信系統(tǒng)410無法接收全部數(shù)據(jù)。例如,某些數(shù)據(jù)可能存儲 于緩沖器中,且數(shù)據(jù)通信系統(tǒng)410可能只接收標(biāo)頭信息和指向緩沖器的指針。舉例來說, 數(shù)據(jù)通信系統(tǒng)410可掛在操作系統(tǒng)的協(xié)議堆疊內(nèi),且當(dāng)應(yīng)用程序通過傳輸層接口 (例如 套接)將數(shù)據(jù)傳遞到操作系統(tǒng)時,所述操作系統(tǒng)可接著向數(shù)據(jù)通信系統(tǒng)410提供對數(shù)據(jù) 的存取。
在某些實施例中,數(shù)據(jù)通信系統(tǒng)410可組織數(shù)據(jù)和/或確定數(shù)據(jù)的優(yōu)先級。在某些實 施例中,數(shù)據(jù)通信系統(tǒng)410可確定用于數(shù)據(jù)塊的優(yōu)先級。例如,當(dāng)由數(shù)據(jù)通信系統(tǒng)410 接收數(shù)據(jù)塊時,數(shù)據(jù)通信系統(tǒng)410的優(yōu)先級確定組件可確定用于所述數(shù)據(jù)塊的優(yōu)先級。 作為另一實例,可將數(shù)據(jù)塊存儲于數(shù)據(jù)通信系統(tǒng)410內(nèi)的隊列中,且優(yōu)先級確&組件可 基于針對所述數(shù)據(jù)塊和/或針對所述隊列所確定的優(yōu)先級來從所述隊列中提取所述數(shù)據(jù) 塊。例如,所述優(yōu)先級確定組件可類似于優(yōu)先級確定組件520。
例如,數(shù)據(jù)通信系統(tǒng)410進行的數(shù)據(jù)的優(yōu)先級確定可用于提供和/或支持QoS。例如, 數(shù)據(jù)通信系統(tǒng)410可為經(jīng)由戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)接收的數(shù)據(jù)確定優(yōu)先級。例如,所述優(yōu)先級可 基于所述數(shù)據(jù)的內(nèi)容。例如,具有針對戰(zhàn)場中單元的命令的來自將軍的數(shù)據(jù)可能被給予 比兩個未在巡邏的士兵之間的聊天會話高的優(yōu)先級。所述優(yōu)先級可用于確定應(yīng)將數(shù)據(jù)放 置到多個隊列中的哪個隊列以供數(shù)據(jù)通信系統(tǒng)410的隨后通信。例如,可將較高優(yōu)先級 數(shù)據(jù)放置于既定用于保持較高優(yōu)先級數(shù)據(jù)的隊列內(nèi),且進而,數(shù)據(jù)通信系統(tǒng)410在確定 接下來要傳送什么數(shù)據(jù)的過程中可首先關(guān)注較高優(yōu)先級隊列。
可至少部分基于一個或一個以上規(guī)則來確定數(shù)據(jù)的優(yōu)先級。如上文所論述,所述規(guī) 則可為用戶定義的。例如,在某些實施例中,規(guī)則可以XML來編寫和/或經(jīng)由自定義 DLL來提供。規(guī)則可指定(例如)從一個應(yīng)用程序或節(jié)點接收的數(shù)據(jù)比來自另一應(yīng)用程 序或節(jié)點的數(shù)據(jù)更受優(yōu)待。
在某些實施例中,數(shù)據(jù)通信系統(tǒng)410不丟棄數(shù)據(jù)。即,盡管數(shù)據(jù)可能為低優(yōu)先級, 但數(shù)據(jù)通信系統(tǒng)410不會丟棄數(shù)據(jù)。而是,可將數(shù)據(jù)延遲一時間周期,這可能取決于所 接收的較高優(yōu)先級數(shù)據(jù)的量。
從數(shù)據(jù)通信系統(tǒng)410傳送數(shù)據(jù)。在某些實施例中,通信組件用于傳送數(shù)據(jù)。例如, 所述通信組件可類似于通信組件540。例如,可將數(shù)據(jù)傳送到第一目的地節(jié)點431和/ 或第二目的地節(jié)點432。例如,如上文所論述,可經(jīng)由第一鏈路441和/或第二鏈路442 傳送數(shù)據(jù)。
在某些實施例中,當(dāng)數(shù)據(jù)將被傳送到不在戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)上的節(jié)點時,可根據(jù)接收所述數(shù)據(jù)所使用的協(xié)議由數(shù)據(jù)通信系統(tǒng)410來傳送所述數(shù)據(jù)。例如,當(dāng)既定將數(shù)據(jù)傳送到 第一目的地節(jié)點431時,數(shù)據(jù)通信系統(tǒng)410經(jīng)由第一鏈路441傳送數(shù)據(jù)。在某些實施例 中,數(shù)據(jù)通信系統(tǒng)410以與接收數(shù)據(jù)所用的協(xié)議相同的協(xié)議來傳送數(shù)據(jù)。在某些實施例 中,數(shù)據(jù)通信系統(tǒng)410使用過程間通信來與第一目的地節(jié)點431通信。
在某些實施例中,當(dāng)數(shù)據(jù)將被傳送到在戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)上的節(jié)點時,數(shù)據(jù)通信系統(tǒng)410 可轉(zhuǎn)換所述數(shù)據(jù)。例如,當(dāng)既定將數(shù)據(jù)傳送到第二目的地節(jié)點432時,數(shù)據(jù)通信系統(tǒng)410 可轉(zhuǎn)換所述數(shù)據(jù)。在某些實施例中,可至少部分由轉(zhuǎn)換組件來轉(zhuǎn)換數(shù)據(jù)。例如,所述轉(zhuǎn) 換組件可類似于轉(zhuǎn)換組件530。在某些實施例中,轉(zhuǎn)換組件530適于產(chǎn)生經(jīng)轉(zhuǎn)換數(shù)據(jù)。 例如,所述經(jīng)轉(zhuǎn)換數(shù)據(jù)可至少部分基于所接收數(shù)據(jù)。
轉(zhuǎn)換可包括將數(shù)據(jù)從一個協(xié)議轉(zhuǎn)換到另一協(xié)議。例如,可移除和/或變更用于接收數(shù) 據(jù)所使用的傳輸、網(wǎng)絡(luò)和/或數(shù)據(jù)鏈路層協(xié)議的標(biāo)頭以符合另一傳輸、網(wǎng)絡(luò)和/或數(shù)據(jù)鏈 路層協(xié)議。作為另一實例,可轉(zhuǎn)換經(jīng)由TCP接收的數(shù)據(jù)以使用UDP來傳送。作為另一 實例,可轉(zhuǎn)換使用UDP經(jīng)由戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)從第二目的地節(jié)點432接收的數(shù)據(jù)以使用TCP 經(jīng)由高速LAN傳送到源節(jié)點420。作為另一實例,數(shù)據(jù)的轉(zhuǎn)換可包括將數(shù)據(jù)從由第一協(xié) 議使用的格式重新格式化和/或重新構(gòu)建成由第二協(xié)議使用的格式。
在某些實施例中,數(shù)據(jù)的轉(zhuǎn)換至少部分在確定數(shù)據(jù)的優(yōu)先級之前以及至少部分在確 定數(shù)據(jù)的優(yōu)先級之后發(fā)生。例如,可在確定優(yōu)先級之前移除來自接收數(shù)據(jù)所用的傳輸協(xié) 議的標(biāo)頭信息。接著,在確定優(yōu)先級之后,可將用于不同傳輸協(xié)議的標(biāo)頭信息添加到數(shù) 據(jù)以完成轉(zhuǎn)換。
在某些實施例中,數(shù)據(jù)通信系統(tǒng)410包括預(yù)訂。例如,所述預(yù)訂可為在表中的規(guī)則 或條目。數(shù)據(jù)通信系統(tǒng)410可至少部分基于所述預(yù)訂來接收數(shù)據(jù)。例如,所述預(yù)訂可包 括源地址、目的地地址、源端口、目的地端口和/或協(xié)議類型中的一者或一者以上。例如, 所述預(yù)訂可指定數(shù)據(jù)通信系統(tǒng)410應(yīng)通過指示應(yīng)從源節(jié)點420的IP地址接收TCP數(shù)據(jù) 而從源節(jié)點420接收數(shù)據(jù)。在某些實施例中,所述預(yù)訂至少部分由用戶定義。
在某些實施例中,數(shù)據(jù)通信系統(tǒng)410包括公告。例如,所述公告可為在表中的規(guī)則 或條目。數(shù)據(jù)通信系統(tǒng)410可至少部分基于所述公告來傳輸數(shù)據(jù)。例如,所述公告可包 括源地址、目的地地址、源端口、目的地端口和/或協(xié)議類型中的一者或一者以上。例如, 所述公告可指定數(shù)據(jù)通信系統(tǒng)410應(yīng)通過指示應(yīng)將UDP數(shù)據(jù)發(fā)送到第二目的地節(jié)點432 的IP地址而將數(shù)據(jù)傳輸?shù)降诙康牡毓?jié)點432。在某些實施例中,所述公告至少部分由 用戶定義。
在某些實施例中,預(yù)訂與公告相關(guān)聯(lián)。即,類似于上述預(yù)訂的特定預(yù)訂與類似于上述公告的特定公告相關(guān)聯(lián)。例如,預(yù)訂可指定具有源節(jié)點420的源IP地址的TCP數(shù)據(jù) 將由數(shù)據(jù)通信系統(tǒng)410接收,且數(shù)據(jù)通信系統(tǒng)410將使用UDP傳輸協(xié)議將所述數(shù)據(jù)傳 輸?shù)降诙康牡毓?jié)點432的目的地IP地址。
在某些實施例中,數(shù)據(jù)的轉(zhuǎn)換至少部分在操作系統(tǒng)的協(xié)議堆疊中發(fā)生。例如,數(shù)據(jù) 通信系統(tǒng)410可從TCP套接讀取數(shù)據(jù),確定所述數(shù)據(jù)的優(yōu)先級,并接著至少部分基于公 告和預(yù)訂關(guān)聯(lián)度將所述數(shù)據(jù)寫入到UDP套接。數(shù)據(jù)的轉(zhuǎn)換以從TCP套接接收和讀取數(shù) 據(jù)開始并以使用UDP套接寫入和傳輸數(shù)據(jù)而完成。
在某些實施例中,數(shù)據(jù)通信系統(tǒng)410包括模式或簡檔指示符。例如,所述模式指示 符可表示數(shù)據(jù)通信系統(tǒng)410的當(dāng)前模式或狀態(tài)。如上文所論述,數(shù)據(jù)通信系統(tǒng)410可使 用規(guī)則、公告、預(yù)訂和模式或簡檔來執(zhí)行處理量管理功能,例如優(yōu)化可用帶寬、設(shè)定信 息優(yōu)先級和管理網(wǎng)絡(luò)中的數(shù)據(jù)鏈路。例如,不同模式可能會影響規(guī)則、公告、預(yù)訂、模 式和/或數(shù)據(jù)傳輸?shù)淖兓?。模式或簡檔可包括與對于特定網(wǎng)絡(luò)健康狀態(tài)或條件的操作需求 相關(guān)的一組規(guī)則、公告和/或預(yù)訂。數(shù)據(jù)通信系統(tǒng)410可提供模式的動態(tài)重新配置,例如 包括"在運行中"定義并切換到新模式。
在某些實施例中,數(shù)據(jù)通信系統(tǒng)410對其它應(yīng)用程序透明。例如,由所述數(shù)據(jù)通信 系統(tǒng)410執(zhí)行的處理、組織和/或確定優(yōu)先級可能對源節(jié)點420或其它應(yīng)用程序或數(shù)據(jù)源 透明。例如,在與數(shù)據(jù)通信系統(tǒng)410相同的系統(tǒng)上或在連接到所述數(shù)據(jù)通信系統(tǒng)410的 源節(jié)點420上運行的應(yīng)用程序可能不知道數(shù)據(jù)通信系統(tǒng)410所執(zhí)行的確定數(shù)據(jù)的優(yōu)先 級。
如上文所論述,例如,數(shù)據(jù)通信系統(tǒng)410的組件、元件和/或功能性可在硬件、L古l件 中和/或作為指令組在軟件中以各種形式單獨實施或組合實施。某些實施例可作為駐留在 計算機可讀媒體(例如存儲器、硬盤、DVD或CD)上的指令組而提供,以用于在通用 計算機或其它處理裝置上執(zhí)行。
例如,在一個實施例中,指揮中心(例如戰(zhàn)術(shù)操作中心(TOC))包括高速LAN, 和包括上文描述的數(shù)據(jù)通信系統(tǒng)410的網(wǎng)關(guān)服務(wù)器。數(shù)據(jù)通信系統(tǒng)410可在連接到所述 網(wǎng)關(guān)服務(wù)器的網(wǎng)絡(luò)上的節(jié)點之間使用QoS來促進通信。
指揮中心的LAN連接例如工作站、服務(wù)器和視頻會議站等節(jié)點。例如,所述節(jié)點 可運行傳統(tǒng)和/或COTS應(yīng)用程序。例如,所述節(jié)點可使用傳輸層協(xié)議TCP來相互通信。 TCP在高速LAN上工作良好。所述網(wǎng)關(guān)服務(wù)器連接所述指揮中心LAN與其它高速網(wǎng)絡(luò) 和一個或一個以上戰(zhàn)術(shù)數(shù)據(jù)M絡(luò)。例如,可將所述M關(guān)服務(wù)器連接到在指揮中心的另一 部分中的另一LAN,且可在兩個LAN之間路由數(shù)據(jù)。在兩個LAN上的節(jié)點可使用TCP相互通信。例如,在指揮中心的兩個不同部分中的指揮宮可經(jīng)由兩個LAN進行視頻會 議。作為另一實例,可經(jīng)由兩個LAN使用TCP將由后勤指揮官產(chǎn)生的數(shù)據(jù)傳送到在TOC 的另一部分中的交通控制指揮官。
所述網(wǎng)關(guān)服務(wù)器還連接到戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)。例如,所述網(wǎng)關(guān)服務(wù)器可^由戰(zhàn)術(shù)數(shù)據(jù)網(wǎng) 絡(luò)連接指揮中心LAN與一節(jié)點(例如無線電、衛(wèi)星或飛機)。例如,指揮中心中的指揮 官可使用在指揮中心LAN卜.的一節(jié)點上運行的應(yīng)用程序向戰(zhàn)場中的單位發(fā)布命令,其 中所述指揮中心LAN通過戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)卜.的網(wǎng)關(guān)服務(wù)器與戰(zhàn)場中的單位的無線電通信。 然而,指揮官用于發(fā)布命令的應(yīng)用程序可經(jīng)設(shè)計成使用TCP來傳送。如十.文所提及, TCP可能無法通過戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)較好地起作用(如果確實起作用的話)。因而,數(shù)據(jù)通 信系統(tǒng)410可透明地轉(zhuǎn)換TCP數(shù)據(jù)以使用例如UDP的另一協(xié)議來將數(shù)據(jù)傳送到戰(zhàn)場中 的單位。
通信也可在其它方向上通過網(wǎng)關(guān)服務(wù)器而發(fā)生。例如,飛機可通過網(wǎng)關(guān)服務(wù)器經(jīng)由 戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)使用衛(wèi)星無線電與在指揮中心LAN上的計算機上運行的應(yīng)用程序通信。 可使用包括UDP傳輸層協(xié)議的協(xié)議從飛機傳送數(shù)據(jù)。網(wǎng)關(guān)服務(wù)器可接著轉(zhuǎn)換所述數(shù)據(jù) 并經(jīng)由協(xié)議(包括TCP)將所述經(jīng)轉(zhuǎn)換數(shù)據(jù)傳送到在指揮屮心屮的'節(jié)點上運行的應(yīng)ffl 程序。
圖6說明根據(jù)本發(fā)明的 -實施例用于傳送數(shù)據(jù)的方法600的流程圖。方法600包括 以下步驟,下文將對其進行更詳細描述。在步驟610處,接收數(shù)據(jù)。在步驟620處,確 定數(shù)據(jù)的優(yōu)先級。在步驟630處,轉(zhuǎn)換數(shù)據(jù)。在步驟640處,傳送數(shù)據(jù)。參考上述系統(tǒng) 的元件來描述方法600,但應(yīng)了解,其它實施方案是可能的。
在步驟610處,接收數(shù)據(jù)。例如,可在數(shù)據(jù)通信系統(tǒng)410處接收數(shù)據(jù)。例如,可由 接收組件接收數(shù)據(jù)。例如,所述接收組件可類似于接收組件510。例如,可經(jīng)由一個或 一個以上鏈路接收數(shù)據(jù)。例如,可由源節(jié)點420提供和/或產(chǎn)生數(shù)據(jù)。例如,可經(jīng)由高速 LAN從指揮中心中的工作站在數(shù)據(jù)通信系統(tǒng)410處接收數(shù)據(jù)。作為另一實例,可由在相 同系統(tǒng)上運行的應(yīng)用程序通過過程間通信機制將數(shù)據(jù)提供到數(shù)據(jù)通信系統(tǒng)410。如上文 所論述,例如,所述數(shù)據(jù)可為數(shù)據(jù)塊。在某些實施例中,通過戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)接收數(shù)據(jù)。 例如,可從第二目的地節(jié)點432接收數(shù)據(jù)。例如,可經(jīng)由第二鏈路442接收數(shù)據(jù)。作為 另一實例,可從戰(zhàn)場中的單位經(jīng)由衛(wèi)星無線電接收數(shù)據(jù)。
在某些實施例中,數(shù)據(jù)通信系統(tǒng)410可能不接收全部數(shù)據(jù)。例如,某些數(shù)據(jù)可存儲 于緩沖器內(nèi),且數(shù)據(jù)通信系統(tǒng)410可能僅接收標(biāo)頭信息和指向緩沖器的指針。例如,可 將數(shù)據(jù)通信系統(tǒng)410掛在操作系統(tǒng)的協(xié)議堆疊內(nèi),且當(dāng)應(yīng)用程序通過傳輸層接口 (例如套接)將數(shù)據(jù)傳遞到操作系統(tǒng)時,所述操作系統(tǒng)可接著向數(shù)據(jù)通信系統(tǒng)410提供對數(shù)據(jù) 的存取。
在步驟620處,確定數(shù)據(jù)的優(yōu)先級。例如,所述數(shù)據(jù)可由數(shù)據(jù)通信系統(tǒng)410來確定 優(yōu)先級和/或組織。例如,所述數(shù)據(jù)可由優(yōu)先級確定組件來確定優(yōu)先級。例如,所述優(yōu)先 級確定組件可類似于優(yōu)先級確定組件520。例如,將要確定優(yōu)先級的數(shù)據(jù)可為在步驟610 處接收的數(shù)據(jù)。在某些實施例中,數(shù)據(jù)通信系統(tǒng)410可為數(shù)據(jù)塊確定優(yōu)先級。例如,當(dāng) 由數(shù)據(jù)通信系統(tǒng)410接收數(shù)據(jù)塊時,數(shù)據(jù)通信系統(tǒng)410的優(yōu)先級確定組件可為所述數(shù)據(jù) 塊確定優(yōu)先級。作為另一實例,可將數(shù)據(jù)塊存儲于數(shù)據(jù)通信系統(tǒng)410內(nèi)的隊列中,且優(yōu) 先級確定組件520可基于針對所述數(shù)據(jù)塊和/或針對所述隊列確定的優(yōu)先級來從所述隊 列中提取所述數(shù)據(jù)塊。
例如,數(shù)據(jù)的優(yōu)先級確定可用于提供和/或支持QoS。例如,數(shù)據(jù)通信系統(tǒng)410可為 通過戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)接收的數(shù)據(jù)確定優(yōu)先級。例如,所述優(yōu)先級可基于所述數(shù)據(jù)的內(nèi)容。 例如,具有用于戰(zhàn)場中的單位的命令的來自將軍的數(shù)據(jù)可能被給予比兩個未在巡邏的士
兵之間的聊天會話高的優(yōu)先級。所述優(yōu)先級可用于確定應(yīng)將數(shù)據(jù)放置到多個隊列中的哪 個隊列中以供數(shù)據(jù)通信系統(tǒng)410的隨后通信。例如,可將較高優(yōu)先級數(shù)據(jù)放置于既定用 于保持較高優(yōu)先級數(shù)據(jù)的隊列內(nèi),且進而,數(shù)據(jù)通信系統(tǒng)410在確定接下來要傳送什么 數(shù)據(jù)的過程中可首先關(guān)注較高優(yōu)先級隊列。
可至少部分基于一個或一個以上規(guī)則來確定數(shù)據(jù)的優(yōu)先級。如上文所論述,例如, 所述規(guī)則可為用戶定義的和/或基于系統(tǒng)和/或操作約束來編程。例如,在某些實施例中, 規(guī)則可以XML來編寫和/或經(jīng)由自定義DLL來提供。規(guī)則可指定(例如)從一個應(yīng)用 程序或節(jié)點接收的數(shù)據(jù)比來自另一應(yīng)用程序或節(jié)點的數(shù)據(jù)更受優(yōu)待。
在某些實施例中,不丟棄將要確定優(yōu)先級的數(shù)據(jù)。即,盡管數(shù)據(jù)可能為低優(yōu)先級, 但數(shù)據(jù)通信系統(tǒng)410不會丟棄所述數(shù)據(jù)。而是,可將數(shù)據(jù)延遲一時間周期,這可能取決
于所接收的較高優(yōu)先級數(shù)據(jù)的量。
在步驟630處,轉(zhuǎn)換數(shù)據(jù)。例如,所述數(shù)據(jù)可由數(shù)據(jù)通信系統(tǒng)410轉(zhuǎn)換。例如,所 述數(shù)據(jù)可由轉(zhuǎn)換組件轉(zhuǎn)換。例如,所述轉(zhuǎn)換組件可類似于轉(zhuǎn)換組件530。例如,所述數(shù) 據(jù)可為在步驟610處接收的數(shù)據(jù)。例如,所述數(shù)據(jù)可為在步驟620處確定優(yōu)先級的數(shù)據(jù)。
所述轉(zhuǎn)換可包括將數(shù)據(jù)從一個協(xié)議轉(zhuǎn)換到另一協(xié)議。例如,可移除和/或變更用于接 收數(shù)據(jù)所使用的傳輸、網(wǎng)絡(luò)和/或數(shù)據(jù)鏈路層協(xié)議的標(biāo)頭以符合另一傳輸、網(wǎng)絡(luò)和/或數(shù) 據(jù)鏈路層協(xié)議。作為另一實例,可轉(zhuǎn)換經(jīng)由TCP接收的數(shù)據(jù)以使用UDP來傳送。作為 另一實例,可轉(zhuǎn)換使用UDP經(jīng)由戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)從第二目的地節(jié)點432接收的數(shù)據(jù)以使用TCP經(jīng)由高速LAN傳送到源節(jié)點420。作為另一實例,數(shù)據(jù)的轉(zhuǎn)換可包括將數(shù)據(jù)從 由第一協(xié)議使用的格式重新格式化和/或重新構(gòu)建成由第二協(xié)議使用的格式。
在某些實施例中,數(shù)據(jù)的轉(zhuǎn)換至少部分在在步驟620處確定數(shù)據(jù)的優(yōu)先級之前以及 至少部分在在步驟620處確定數(shù)據(jù)的優(yōu)先級之后發(fā)生。例如,可在在步驟620處確定數(shù) 據(jù)的優(yōu)先級之前移除來自接收數(shù)據(jù)所用的傳輸協(xié)議的標(biāo)頭信息。接著,在在步驟620處 確定優(yōu)先級之后,可將用于不同傳輸協(xié)議的標(biāo)頭信息添加到數(shù)據(jù)以完成轉(zhuǎn)換。
在某些實施例中,數(shù)據(jù)的轉(zhuǎn)換至少部分在操作系統(tǒng)的協(xié)議堆疊中發(fā)生。例如,數(shù)據(jù) 通信系統(tǒng)410可從TCP套接讀取數(shù)據(jù),確定所述數(shù)據(jù)的優(yōu)先級,并接著至少部分基于公 告和預(yù)訂關(guān)聯(lián)度將數(shù)據(jù)寫入到UDP套接。數(shù)據(jù)的轉(zhuǎn)換以從TCP套接接收和讀取數(shù)據(jù)開 始,且以使用UDP套接寫入和傳輸數(shù)據(jù)而完成。
在步驟640處,傳送數(shù)據(jù)。例如,可由數(shù)據(jù)通信系統(tǒng)410傳送數(shù)據(jù)。例如,可由通 信組件傳送數(shù)據(jù)。例如,所述通信組件可類似于通信組件540。例如,所傳送的數(shù)據(jù)可 為在步驟610處接收的數(shù)據(jù)。例如,所傳送的數(shù)據(jù)可為在步驟620處確定優(yōu)先級的數(shù)據(jù)。 例如,所傳送的數(shù)據(jù)可為在步驟630處轉(zhuǎn)換的數(shù)據(jù)。
例如,可從數(shù)據(jù)通信系統(tǒng)410傳送數(shù)據(jù)。例如,可將數(shù)據(jù)傳送到第一目的地節(jié)點431 和/或第二目的地節(jié)點432。例如,可經(jīng)由一個或一個以上鏈路傳送數(shù)據(jù)。例如,可經(jīng)由 第一鏈路441和/或第二鏈路442傳送數(shù)據(jù)。作為另一實例,可通過戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)由數(shù)據(jù) 通信系統(tǒng)410將數(shù)據(jù)傳送到無線電。作為另一實例,可由數(shù)據(jù)通信系統(tǒng)410通過過程間 通信機制和/或API (例如套接)將數(shù)據(jù)提供到在相同系統(tǒng)上運行的應(yīng)用程序。
在某些實施例中,可至少部分基于預(yù)訂來接收數(shù)據(jù)。例如,所述預(yù)訂可類似于上文 描述的預(yù)訂。例如,所述預(yù)訂可包括源地址、目的地地址、源端口、目的地端口和/或協(xié) 議類型中的一者或一者以上。例如,所述預(yù)訂可指定數(shù)據(jù)通信系統(tǒng)410應(yīng)通過指示應(yīng)從 源節(jié)點420的IP地址接收TCP數(shù)據(jù)而從源節(jié)點420接收數(shù)據(jù)。在某些實施例中,所述 預(yù)訂至少部分由用戶定義。
在某些實施例中,數(shù)據(jù)可至少部分基于公告來傳送。例如,所述公告可類似于上文 描述的公告。例如,所述公告可包括源地址、目的地地址、源端口、目的地端口和/或協(xié) 議類型中的一者或一者以上。例如,所述公告可指定數(shù)據(jù)通信系統(tǒng)410應(yīng)通過指示應(yīng)將 UDP數(shù)據(jù)發(fā)送到第二目的地節(jié)點432的IP地址來將數(shù)據(jù)傳輸?shù)降诙康牡毓?jié)點432。在 某些實施例中,所述公告至少部分由用戶定義。
在某些實施例中,預(yù)訂與公告相關(guān)聯(lián)。即,特定預(yù)訂與特定公告相關(guān)聯(lián)。例如,預(yù) 訂可指定具有源節(jié)點420的源IP地址的TCP數(shù)據(jù)將由數(shù)據(jù)通信系統(tǒng)410接收,且數(shù)據(jù)通信系統(tǒng)410將使用UDP傳輸協(xié)議將所述數(shù)據(jù)傳輸?shù)降诙康牡毓?jié)點432的目的地IP 地址。
例如,在某些實施例中,模式或簡檔指示符可表示數(shù)據(jù)通信系統(tǒng)410的目前模式或 狀態(tài)。如上文所論述,所述規(guī)則、公告、預(yù)訂和模式或簡檔可用于執(zhí)行處理量管理功能, 例如優(yōu)化可用帶寬、設(shè)定信息優(yōu)先級和管理網(wǎng)絡(luò)中的數(shù)據(jù)鏈路。例如,不同模式可能會 影響規(guī)則、公告、預(yù)訂、模式和/或數(shù)據(jù)傳輸?shù)淖兓?。模式或簡檔可包括與針對特定網(wǎng)絡(luò) 健康狀態(tài)或條件的操作需求相關(guān)的一組規(guī)則、公告和/或預(yù)訂。數(shù)據(jù)通信系統(tǒng)410可提供 模式的動態(tài)重新配置,例如包括"在運行中"定義并切換到新模式。
在某些實施例中,數(shù)據(jù)的優(yōu)先級確定對其它應(yīng)用程序透明。例如,由數(shù)據(jù)通信系統(tǒng) 410執(zhí)行的處理、組織和/或確定優(yōu)先級可能對源節(jié)點420或其它應(yīng)用程序或數(shù)據(jù)源透明。 例如,在與數(shù)據(jù)通信系統(tǒng)410相同的系統(tǒng)上或在連接到所述數(shù)據(jù)通信系統(tǒng)410的源節(jié)點 420上運行的應(yīng)用程序可能不知道數(shù)據(jù)通信系統(tǒng)410所執(zhí)行的確定數(shù)據(jù)的優(yōu)先級。
例如,方法600的步驟中的一個或一個以上步驟可在硬件、固件中和/或作為指令組 在軟件中而單獨實施或組合實施。某些實施例可作為駐留于計算機可讀媒體(例如存儲 器、硬盤、DVD或CD)上的指令組而提供,以用于在通用計算機或其它處理裝置上執(zhí) 行。
本發(fā)明的某些實施例可省略這些步驟中的- 一者或-'者以上和/或以不同于所列舉的 次序的次序來執(zhí)行所述步驟。例如,在本發(fā)明的某些實施例中可不執(zhí)行某些步驟。作為 另一實例,可以不同于上文所列舉的次序的時間次序(包括同時)來執(zhí)行某些步驟。
因而,本發(fā)明的某些實施例提供用于QoS的協(xié)議轉(zhuǎn)換網(wǎng)關(guān)的系統(tǒng)和方法。此外'某 些實施例允許將以一個協(xié)議傳送的數(shù)據(jù)轉(zhuǎn)換成另一協(xié)議以供橫跨戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)傳送到 一節(jié)點。此外,某些實施例允許基于操作條件和系統(tǒng)要求的動態(tài)協(xié)議切換。某些實施例 提供用于QoS的協(xié)議轉(zhuǎn)換網(wǎng)關(guān)的技術(shù)效果。此外,某些實施例提供允許將以一個協(xié)議傳 送的數(shù)據(jù)轉(zhuǎn)換成另一協(xié)議以供橫跨戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)傳送到一節(jié)點的技術(shù)效果。此外,某些 實施例提供允許基于操作條件和系統(tǒng)要求的動態(tài)協(xié)議切換的技術(shù)效果。
權(quán)利要求
1. 一種用于在網(wǎng)絡(luò)中提供服務(wù)質(zhì)量的方法,所述方法包括接收數(shù)據(jù),其中至少部分基于第一協(xié)議來接收所述數(shù)據(jù);確定所述數(shù)據(jù)的優(yōu)先級,其中所述數(shù)據(jù)的優(yōu)先級經(jīng)確定以支持多個服務(wù)標(biāo)準;轉(zhuǎn)換所述數(shù)據(jù)以產(chǎn)生經(jīng)轉(zhuǎn)換數(shù)據(jù),其中所述經(jīng)轉(zhuǎn)換數(shù)據(jù)至少部分基于第二協(xié)議,其中所述第二協(xié)議不同于所述第一協(xié)議;以及傳送所述經(jīng)轉(zhuǎn)換數(shù)據(jù)。
2. 根據(jù)權(quán)利要求1所述的方法,其中所述第一協(xié)議和所述第二協(xié)議中的至少一者包括 在協(xié)議堆疊的傳輸層處的協(xié)議。
3. 根據(jù)權(quán)利要求1所述的方法,其中所述優(yōu)先級確定步驟包括至少部分基于所述數(shù)據(jù) 的內(nèi)容將數(shù)據(jù)塊插入在多個隊列的至少一者中。
4. 根據(jù)權(quán)利要求1所述的方法,其中至少部分基于預(yù)訂來接收所述數(shù)據(jù),其中所述預(yù) 訂包括地址和協(xié)議類型。
5. 根據(jù)權(quán)利要求1所述的方法,其中至少部分基于公告來轉(zhuǎn)換所述數(shù)據(jù),其中所述公 告包括地址和協(xié)議類型。 '
6. 根據(jù)權(quán)利要求1所述的方法,其中應(yīng)用程序產(chǎn)生所述接收的數(shù)據(jù),且其中所述轉(zhuǎn)換 步驟對所述應(yīng)用程序透明。
7. —種用于在網(wǎng)絡(luò)中提供基于內(nèi)容的服務(wù)質(zhì)量的數(shù)據(jù)通信系統(tǒng),所述系統(tǒng)包括接收組件,其中所述接收組件適于至少部分基于第一協(xié)議來接收數(shù)據(jù)塊; 優(yōu)先級確定組件,其中所述優(yōu)先級確定組件適于至少部分基于所述數(shù)據(jù)塊的內(nèi)容和規(guī)則來確定所述數(shù)據(jù)塊的優(yōu)先級轉(zhuǎn)換組件,其中所述轉(zhuǎn)換組件適于轉(zhuǎn)換所述數(shù)據(jù)塊以產(chǎn)生經(jīng)轉(zhuǎn)換數(shù)據(jù)塊,其中所述經(jīng)轉(zhuǎn)換數(shù)據(jù)塊至少部分基于第二協(xié)議,其中所述第二協(xié)議不同于所述第一協(xié)議;以及通信組件,其中所述通信組件適于傳送所述經(jīng)轉(zhuǎn)換數(shù)據(jù)塊。
8. 根據(jù)權(quán)利要求7所述的系統(tǒng),其中通過戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)接收所述數(shù)據(jù)塊,且其中通過 非戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)的網(wǎng)絡(luò)傳送所述經(jīng)轉(zhuǎn)換數(shù)據(jù)塊。
9. 根據(jù)權(quán)利要求7所述的系統(tǒng),其中通過非戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)的網(wǎng)絡(luò)接收所述數(shù)據(jù)塊,且 其中通過戰(zhàn)術(shù)數(shù)據(jù)網(wǎng)絡(luò)傳送所述經(jīng)轉(zhuǎn)換數(shù)據(jù)塊。
10. 根據(jù)權(quán)利要求7所述的系統(tǒng),其進一步包括模式指示符,其中至少部分基于所述模 式指示符來轉(zhuǎn)換所述數(shù)據(jù)塊。
全文摘要
本發(fā)明的實施例提供用于促進數(shù)據(jù)通信的系統(tǒng)和方法。方法(600)包括在網(wǎng)絡(luò)中提供服務(wù)質(zhì)量,其包括接收數(shù)據(jù);確定所述數(shù)據(jù)的優(yōu)先級;轉(zhuǎn)換所述數(shù)據(jù)以產(chǎn)生經(jīng)轉(zhuǎn)換數(shù)據(jù);以及傳送所述經(jīng)轉(zhuǎn)換數(shù)據(jù)。至少部分基于第一協(xié)議來接收所述數(shù)據(jù)。所述數(shù)據(jù)的優(yōu)先級經(jīng)確定以支持服務(wù)質(zhì)量標(biāo)準。所述經(jīng)轉(zhuǎn)換數(shù)據(jù)至少部分基于第二協(xié)議。所述第二協(xié)議不同于所述第一協(xié)議。
文檔編號H04L29/06GK101473623SQ200780022583
公開日2009年7月1日 申請日期2007年6月14日 優(yōu)先權(quán)日2006年6月16日
發(fā)明者唐納德·L·史密斯, 安東尼·P·加盧希奧, 羅伯特·J·克納齊克 申請人:賀利實公司