專利名稱:用于輔助接入基于網(wǎng)絡(luò)服務(wù)的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及網(wǎng)絡(luò)通信系統(tǒng),并且更具體地涉及用于輔助(facilitate)接入由網(wǎng)絡(luò)通信系統(tǒng)提供的網(wǎng)絡(luò)服務(wù)的系統(tǒng)和方法。
背景技術(shù):
當(dāng)今的通信技術(shù)已帶來網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu)中顯著的擴(kuò)展和多樣化。網(wǎng)絡(luò)接入已經(jīng)從兩個網(wǎng)絡(luò)節(jié)點之間簡單的點到點連接線發(fā)展到了復(fù)雜的多點連接網(wǎng),其牽涉由分布在有線和無線網(wǎng)絡(luò)之間的移動電話、固定工作站、膝上型計算機(jī)、個人數(shù)字助理(PDA)、應(yīng)用服務(wù)器等等組成的成千上百的節(jié)點,其中每個網(wǎng)絡(luò)節(jié)點執(zhí)行從一個節(jié)點到另一節(jié)點遍歷網(wǎng)絡(luò)所必需的通信規(guī)則或協(xié)議。
通信網(wǎng)絡(luò)的多樣化及其相關(guān)通信協(xié)議已創(chuàng)建過多的用于通信的標(biāo)準(zhǔn)化模型。許多標(biāo)準(zhǔn)化模型采用開放系統(tǒng)互連(OSI)(Open SystemInterconnection)參考作為基本模型,這適宜于點到點數(shù)據(jù)通信。OSI模型為分布式應(yīng)用處理提供用于連接開放系統(tǒng)的基礎(chǔ),從而為發(fā)展允許數(shù)據(jù)資產(chǎn)通信的標(biāo)準(zhǔn)族提供通用基礎(chǔ)。從提供在兩個通信實體之間建立的物理輸入/輸出(I/O)端口的底層開始,OSI模型建立垂直排列或堆放的七個通信層。其他的六個層或?qū)Φ葘訉嶋H上根據(jù)用于特定層的已建立協(xié)議彼此連接。
例如,萬維網(wǎng)(WWW)(World Wide Web)或互聯(lián)網(wǎng)(Internet)不一定通過如由OSI參考模型所定義的點對點通信模型接入,而是反而利用普遍存在的網(wǎng)際協(xié)議(IP)(Internet Protocol)和例如超文本傳送協(xié)議(HTTP)以及可擴(kuò)展標(biāo)記語言(XML)的數(shù)據(jù)格式來支持其接口。由于互聯(lián)網(wǎng)內(nèi)的點對點通信正讓位于更加分布式接入,所以獨(dú)立計算應(yīng)用也讓位于更加綜合的解決方案,其中應(yīng)用、設(shè)備和服務(wù)在互聯(lián)網(wǎng)內(nèi)一起工作以實現(xiàn)共同目標(biāo)。此外,通信模型正朝向面向服務(wù)的表示或web(萬維網(wǎng))服務(wù)模型方向發(fā)展,因為現(xiàn)在較大百分比的商業(yè)處理涉及與之的交互作用日益自動化的貿(mào)易伙伴。web服務(wù)模型有助于其操作要求防火墻遍歷(traversal)的應(yīng)用、具有可變操作系統(tǒng)環(huán)境的操作以及具有可變中間件技術(shù)的操作的集成。
例如,用于在兩個程序之間交互作用的web服務(wù)模型基于使用傳送(例如HTTP)的XML標(biāo)準(zhǔn)。每個程序使用客戶識別的XML標(biāo)準(zhǔn)來公布其接口及其他能力??蛻羰褂没赬ML的協(xié)議與程序相互作用,該基于XML協(xié)議促進(jìn)松耦合并且對于涉及多方的程序是理想的。然而,松耦合的一個后果是要求來自未公布的web服務(wù)或web組件的服務(wù)的任何客戶可能被要求根據(jù)需求自動地發(fā)現(xiàn)(discover)web服務(wù)。
因為web服務(wù)應(yīng)用變得日益流行,所以正在開發(fā)許多執(zhí)行環(huán)境以適應(yīng)web組件應(yīng)用程序,例如Java環(huán)境、Microsoft.Net和Linux,這僅僅提到其中一部分。例如,Java 2 Enterprise Edition(J2EE)在供應(yīng)廠商市場和在巨大的開發(fā)者團(tuán)體內(nèi)極為流行。例如,J2EE通過把企業(yè)應(yīng)用基于能夠在許多不同類型的執(zhí)行平臺上執(zhí)行的標(biāo)準(zhǔn)化、模塊化組件之上來簡化企業(yè)應(yīng)用。
web服務(wù)定義了一個模型,其特征對于在企業(yè)之間和在企業(yè)內(nèi)部通過固定和移動網(wǎng)絡(luò)連接商業(yè)功能是理想的可以產(chǎn)生網(wǎng)絡(luò)服務(wù)中介器(Network Service Broker)(NSB),以便向可能正在分布在固定或移動網(wǎng)絡(luò)內(nèi)的終端上執(zhí)行的其他網(wǎng)絡(luò)組件提供網(wǎng)絡(luò)服務(wù)功能。然而,NSB所顯露(expose)的服務(wù)時常依賴于終端正在使用的特定移動或固定網(wǎng)絡(luò)。在移動終端的情況下,例如,當(dāng)移動終端穿越每個網(wǎng)絡(luò)時,漫游允許移動終端被顯露于大量的網(wǎng)絡(luò)。每個網(wǎng)絡(luò)可以有它自己的NSB,這允許接入由該NSB提供的網(wǎng)絡(luò)服務(wù)。然而,NSB及其附屬的網(wǎng)絡(luò)時常具有不同的商業(yè)關(guān)系,這使漫游協(xié)議變得復(fù)雜。
向web服務(wù)請求服務(wù)的現(xiàn)有方法中的另一個問題一般是發(fā)現(xiàn)由web服務(wù)提供的服務(wù)固有的復(fù)雜性。呈現(xiàn)給請求應(yīng)用的接口經(jīng)常是復(fù)雜的和定制的,這要求在所提供服務(wù)的完全發(fā)現(xiàn)能夠由請求應(yīng)用執(zhí)行之前具體了解web服務(wù)。一旦發(fā)現(xiàn),特定web服務(wù)的使用方法呈現(xiàn)出更進(jìn)一步的復(fù)雜度。正如所能夠明白的,在能夠進(jìn)行有意義的數(shù)據(jù)交換之前,要求正在執(zhí)行web服務(wù)發(fā)現(xiàn)和web服務(wù)的請求應(yīng)用對于該web服務(wù)被定制。
隨著對網(wǎng)絡(luò)服務(wù)的網(wǎng)絡(luò)接入變得日益分布化,現(xiàn)有技術(shù)網(wǎng)絡(luò)接入范例變得過時,迫切需要用于將來的簡化范例。例如,需要網(wǎng)絡(luò)服務(wù)或其中介器的簡化邏輯視圖,以便可以輔助來自不具有網(wǎng)絡(luò)服務(wù)特定知識的應(yīng)用的服務(wù)請求。網(wǎng)絡(luò)服務(wù)的簡化邏輯視圖應(yīng)當(dāng)被通用化,以便在任何執(zhí)行環(huán)境下可以輔助執(zhí)行。此外,應(yīng)當(dāng)允許網(wǎng)絡(luò)服務(wù)根據(jù)需要存在于任何網(wǎng)絡(luò)元件內(nèi),例如,移動終端、應(yīng)用服務(wù)器、個人計算機(jī)等。
因此,在網(wǎng)絡(luò)通信產(chǎn)業(yè)中需要向web服務(wù)客戶配備允許技術(shù),以便可以使用開發(fā)者友好的web服務(wù)或web組件。web服務(wù)客戶要求具有一個邏輯視圖的應(yīng)用程序接口(API),這減少web服務(wù)客戶的復(fù)雜性并且增加其可移植性。本發(fā)明解決現(xiàn)有技術(shù)的這些及其他缺點,并且提供超越現(xiàn)有技術(shù)的網(wǎng)絡(luò)服務(wù)接入的許多優(yōu)點。
發(fā)明內(nèi)容
本發(fā)明致力于用于輔助接入網(wǎng)絡(luò)服務(wù)的系統(tǒng)和方法。本發(fā)明涉及提供基于協(xié)議或基于軟件的接口模塊定義,其隱藏與通過網(wǎng)絡(luò)的web服務(wù)選擇所固有的發(fā)現(xiàn)和服務(wù)利用細(xì)節(jié)相關(guān)的復(fù)雜性。本發(fā)明使接口模塊能夠保持有關(guān)相關(guān)網(wǎng)絡(luò)之間的商業(yè)關(guān)系的信息,并且采用具有多個參數(shù)的判定函數(shù)(function)來按照應(yīng)用的請求自動地選擇最佳匹配NSB或web服務(wù)組件。本發(fā)明進(jìn)一步使接口模塊能夠自動地進(jìn)入與網(wǎng)絡(luò)的進(jìn)行匹配(matchmaking)處理,同時消除在網(wǎng)絡(luò)的所有者和SPI之間的直接交互作用。
根據(jù)本發(fā)明的一個實施方式,提供在具有多個服務(wù)組件的網(wǎng)絡(luò)內(nèi)建立網(wǎng)絡(luò)服務(wù)的一種方法。該方法提供多個接口模塊,以便與多個服務(wù)組件之一建立通信。該方法進(jìn)一步向多個接口模塊提供一個邏輯接入點,以輔助調(diào)用多個服務(wù)組件之一。該方法接收服務(wù)組件相關(guān)參數(shù)并選擇多個服務(wù)組件之一以響應(yīng)該調(diào)用。服務(wù)組件相關(guān)參數(shù)提供多個服務(wù)組件之一的動態(tài)選擇優(yōu)化。接口模塊是基于軟件或基于協(xié)議的模塊。
根據(jù)本發(fā)明的另一個實施方式,提供用于輔助網(wǎng)絡(luò)服務(wù)以響應(yīng)服務(wù)請求和相關(guān)服務(wù)請求參數(shù)的一種系統(tǒng)。該系統(tǒng)包括分布在網(wǎng)絡(luò)內(nèi)的多個服務(wù)組件和接口模塊,所述接口模塊具有多個接口對象,以便與多個服務(wù)組件之一建立通信。接口模塊包括查找對象,與多個接口對象通信,以建立在多個服務(wù)組件之一和多個接口對象之一之間所需的連接參數(shù);數(shù)據(jù)對象,與查找對象通信,以提供識別與多個服務(wù)組件相關(guān)的屬性的參數(shù);以及單個邏輯接入點,以允許外部接入多個接口對象。這些接口對象可以是基于軟件或者基于協(xié)議的對象。
根據(jù)本發(fā)明的另一個實施方式,提供一種計算機(jī)可讀媒體,具有用于在具有多個服務(wù)組件的網(wǎng)絡(luò)內(nèi)建立網(wǎng)絡(luò)服務(wù)的計算機(jī)可執(zhí)行指令。計算機(jī)可執(zhí)行指令執(zhí)行提供多個接口模塊以便與多個服務(wù)組件之一建立通信的步驟。至多個接口模塊的一個邏輯接入點允許外部調(diào)用多個服務(wù)組件之一。這些步驟進(jìn)一步包括接收服務(wù)組件相關(guān)參數(shù)并選擇多個服務(wù)組件之一,以響應(yīng)該調(diào)用。這些服務(wù)組件相關(guān)參數(shù)提供多個服務(wù)組件之一的動態(tài)選擇優(yōu)化。
本發(fā)明的上面概述不打算描述本發(fā)明的每個說明的實施方式或具體實現(xiàn)。這是隨后的附圖和相關(guān)討論的目的。
結(jié)合在下面示意圖中所說明的實施方式來描述本發(fā)明。
圖1表示通信網(wǎng)絡(luò);圖2表示從一組聯(lián)網(wǎng)的服務(wù)中介器中尋找服務(wù)中介器的應(yīng)用;圖3表示從一組聯(lián)網(wǎng)的web服務(wù)組件中尋找web服務(wù)組件的應(yīng)用;圖4表示對中介器范例的一個邏輯視圖的軟件接口解決方案;圖5表示對中介器范例的一個邏輯視圖的協(xié)議接口解決方案;和圖6表示用于解釋對web服務(wù)的簡化接入操作的流程圖。
具體實施例方式
在下面各種實施方式的描述中,參考附圖,這些附圖形成其一部分,并且在這些附圖中利用圖解說明了其中可以實行本發(fā)明的各種實施方式。應(yīng)當(dāng)理解,可以使用其他的實施方式并且可以進(jìn)行結(jié)構(gòu)和功能修改而不偏離本發(fā)明的范疇。
本發(fā)明致力于用于輔助接入網(wǎng)絡(luò)服務(wù)的系統(tǒng)和方法。本發(fā)明包括提供基于協(xié)議或基于軟件的接口模塊定義,其隱藏與通過網(wǎng)絡(luò)的web服務(wù)選擇所固有的發(fā)現(xiàn)和服務(wù)使用細(xì)節(jié)相關(guān)的復(fù)雜性。本發(fā)明使接口模塊能夠保持有關(guān)相關(guān)網(wǎng)絡(luò)之間商業(yè)關(guān)系的信息,并且采用具有多個參數(shù)的判定函數(shù)來根據(jù)應(yīng)用的請求自動選擇最佳匹配NSB或web服務(wù)組件。本發(fā)明進(jìn)一步使接口組件能夠自動地進(jìn)入與網(wǎng)絡(luò)進(jìn)行匹配處理,同時消除在網(wǎng)絡(luò)的所有者和SPI之間的直接交互作用。
圖1是根據(jù)本發(fā)明原理的采用開發(fā)者友好的web服務(wù)或web組件接入的網(wǎng)絡(luò)系統(tǒng)100的示范性實施方式。例如,終端110可以包括任何移動網(wǎng)絡(luò)元件,諸如移動終端設(shè)備(TE)、PDA或膝上型計算機(jī)。終端110也可以包括任何固定網(wǎng)絡(luò)元件,例如個人臺式計算機(jī)或應(yīng)用服務(wù)器。網(wǎng)絡(luò)130可以包括互聯(lián)網(wǎng)、移動通信網(wǎng)絡(luò)、公用或?qū)S藐懢€通信網(wǎng)或其任何組合。web服務(wù)組件140包括例如作為web服務(wù)提供給網(wǎng)絡(luò)130的任何網(wǎng)絡(luò)組件。一般,web服務(wù)組件140或是web服務(wù)、NSB或是包含與應(yīng)用120可接入的web服務(wù)一致的接口的任何組件。例如,web服務(wù)組件140被認(rèn)為是應(yīng)用120的服務(wù)端點,并且可以進(jìn)一步對應(yīng)于移動終端、服務(wù)器、網(wǎng)絡(luò)元件等等??梢允褂萌魏螖?shù)量的web服務(wù)協(xié)議(例如HTTP,簡單對象接入?yún)f(xié)議(Simple Object AccessProtocol)(SOAP)或商業(yè)交易協(xié)議(Business TransactionProtocol)(BTP)等等)實現(xiàn)協(xié)議接入web服務(wù)組件140,但是也可以使用其他的非web服務(wù)堆棧協(xié)議接入,例如傳輸控制協(xié)議/網(wǎng)際協(xié)議(Transmission Control Protocol/Internet Protocol)(TCP/IP)或用戶數(shù)據(jù)報協(xié)議(User Datagram Protocol)(UDP)。應(yīng)用120表示配備為請求任何網(wǎng)絡(luò)允許服務(wù)的任何節(jié)點,但是通過接口模塊150的交互作用,能夠根據(jù)需要連接到正確的端點或web服務(wù)組件。接口模塊150可以被舉例說明為運(yùn)行在多個執(zhí)行環(huán)境中的Java應(yīng)用程序,然而,也可以表示運(yùn)行在任何執(zhí)行環(huán)境(例如,Microsoft.NET或Linux環(huán)境)中的應(yīng)用程序。此外,在網(wǎng)絡(luò)130和接口模塊150之間的協(xié)議接口可以基于包括HTTP、SOAP、BTP等等的任何數(shù)量的協(xié)議堆棧。根據(jù)本發(fā)明,應(yīng)用120對web服務(wù)組件140不維持能見度,因為接口模塊150提供所有有效的商業(yè)相關(guān)功能,以隱藏從應(yīng)用120中選擇web服務(wù)組件140的復(fù)雜性??梢岳没谲浖蚧趨f(xié)議的接口來實現(xiàn)由接口模塊150提供的簡化邏輯視圖,其中關(guān)于最佳web服務(wù)組件或端點的選擇的細(xì)節(jié)從應(yīng)用120中被隱藏。此外,接口模塊150提供動態(tài)判定函數(shù),以便可以按要求自動地建立網(wǎng)絡(luò)130內(nèi)的商業(yè)關(guān)系。
圖2說明其中應(yīng)用202向SPI 208請求服務(wù)的情形,其中可以選擇多個NSB 212,220和238來提供所需的服務(wù)。如以下詳細(xì)討論的,應(yīng)用202通過利用接口206所表示的協(xié)議接口或軟件接口與SPI 208通信。網(wǎng)絡(luò)服務(wù)中介器220表示例如網(wǎng)絡(luò)B 222中的位置中介器,這是終端設(shè)備244,248和246的本地網(wǎng)絡(luò)。NSB 220處理通過接口206由應(yīng)用202向SPI 208提出的位置服務(wù)請求。協(xié)議接口210可以包括多個協(xié)議,以包括例如HTTP、SOAP或BTP。
網(wǎng)絡(luò)B 222包括子網(wǎng)B1 226和子網(wǎng)B2 228,它們可以表示網(wǎng)絡(luò)B222的單個運(yùn)營商擁有的網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu),但是其子網(wǎng)基礎(chǔ)結(jié)構(gòu)對于子網(wǎng)B1 226和B2 228具有兩個獨(dú)立的制造商。因此,與子網(wǎng)B1 226相關(guān)的基礎(chǔ)結(jié)構(gòu)具有與子網(wǎng)B2 228相關(guān)的基礎(chǔ)結(jié)構(gòu)復(fù)雜性不同的復(fù)雜性。然而,由位置中介器NSB 220對SPI 208隱藏復(fù)雜性的差異,以便SPI208在位置服務(wù)請求期間不需要了解子網(wǎng)B1 226和子網(wǎng)B2 228之間復(fù)雜性的差異。一般,SPI 208無需具體了解網(wǎng)絡(luò)A 216、B 222或C 240的復(fù)雜性,因為NSB 220使得復(fù)雜性對于SPI 208是透明的。
與TE 244,246和248相關(guān)存在若干漫游方案,例如,其中用作位置中介器的NSB 220考慮TE 244,246和248來處理來自應(yīng)用202的位置請求。一個這樣的漫游方案牽涉歸屬于網(wǎng)絡(luò)B 222中的TE 244漫游進(jìn)入網(wǎng)絡(luò)A 216。來自應(yīng)用202的位置請求214由SPI 208處理并且被轉(zhuǎn)送到NSB 220。因為TE 244漫游進(jìn)入網(wǎng)絡(luò)A 216,不再需要網(wǎng)絡(luò)B 222的位置更新,但現(xiàn)在需要網(wǎng)絡(luò)A 216的位置更新。然而,網(wǎng)絡(luò)A 216和網(wǎng)絡(luò)B 222各自可以具有位置中介器NSB 220所了解的不同的復(fù)雜性。通過在網(wǎng)絡(luò)A 216的運(yùn)營商與網(wǎng)絡(luò)B 222的運(yùn)營商之間具有適當(dāng)?shù)姆?wù)漫游協(xié)定,在被訪問網(wǎng)絡(luò)A 216的網(wǎng)絡(luò)元件(NE)218和網(wǎng)絡(luò)B 222的正確NE之間,允許位置中介器NSB 220結(jié)合位置中介器NSB 212來根據(jù)需要進(jìn)行位置更新,以確定TE 244的位置。不要求SPI 208利用位置中介器NSB 220和位置中介器NSB 212之間的漫游協(xié)定了解網(wǎng)絡(luò)A 216和網(wǎng)絡(luò)B 222之間復(fù)雜性的差異,因為位置中介器NSB 220隱藏網(wǎng)絡(luò)A 216和網(wǎng)絡(luò)B 222之間復(fù)雜性的差異。
存在一個類似的漫游效果,其中了解TE 244漫游情況的網(wǎng)絡(luò)B 222的正確的NE聯(lián)系網(wǎng)絡(luò)A 216的NE 218,以接收漫游TE 244的位置更新。在這種情況下,不在NSB 220到NSB 212連接內(nèi)處理漫游,而在NE層上處理漫游,其中網(wǎng)絡(luò)B 222的NE 224例如直接聯(lián)系網(wǎng)絡(luò)A 216的NE 218,以實施位置更新。由于在網(wǎng)絡(luò)A 216和網(wǎng)絡(luò)B 222的運(yùn)營商之間已建立的漫游協(xié)定,在網(wǎng)絡(luò)A和B之間的復(fù)雜性差異仍然對SPI208隱藏。
存在一個另外的漫游方案,以便歸屬于子網(wǎng)B1 226的TE 248漫游進(jìn)入子網(wǎng)B2 228。來自應(yīng)用202的位置請求232由SPI 208處理,并且被轉(zhuǎn)送到NSB 220。因為TE 248漫游進(jìn)入子網(wǎng)B2 228,所以不再需要子網(wǎng)B1 226的位置更新,而現(xiàn)在需要子網(wǎng)B2 228的位置更新。子網(wǎng)B1 226和子網(wǎng)B2 228各自可以具有位置中介器NSB 220所了解的不同的復(fù)雜性。位置中介器NSB 220服務(wù)于來自SPI 208的位置更新請求,而TE 248根據(jù)需要在子網(wǎng)B1 226和子網(wǎng)B2 228之間漫游,以確定TE 248的位置。然而,因為位置中介器NSB 220隱藏子網(wǎng)B1 226和子網(wǎng)B2 228之間復(fù)雜性的差異,所以不要求SPI 208利用位置中介器NSB 220了解子網(wǎng)B1 226和子網(wǎng)B2 228之間復(fù)雜性的差異。
存在進(jìn)一步的漫游方案,以便TE 246從網(wǎng)絡(luò)B 222漫游進(jìn)入網(wǎng)絡(luò)C 240。如所能夠看見的,位置請求236不由NSB 220處理,而是被直接發(fā)送給NSB 238。不利用位置中介器NSB 220的一個理由包括網(wǎng)絡(luò)B222的運(yùn)營商和網(wǎng)絡(luò)C 240的運(yùn)營商沒有適當(dāng)?shù)穆螀f(xié)定的可能性。如果例如網(wǎng)絡(luò)C 240由無線局域網(wǎng)(LAN)或企業(yè)LAN表示,則可能是這種情況。漫游協(xié)定在TE 246漫游進(jìn)入網(wǎng)絡(luò)C 240時不太可能是合適的,并且隨后不允許NSB 220處理來自SPI 208的位置更新請求。因為NSB 220和238是SPI 208可見的,并且還因為在網(wǎng)絡(luò)B 222和網(wǎng)絡(luò)C 240的運(yùn)營商之間不存在漫游協(xié)定,所以暴露出SPI 208確定NSB 220或238之中的哪一個用于TE 246的位置更新的問題。
當(dāng)SPI 208暴露出位置中介器選擇問題時,在SPI 208之內(nèi)或在SPI 208以外執(zhí)行的應(yīng)用202同樣遇到選擇問題。一旦應(yīng)用202暴露出選擇問題,應(yīng)用202變得緊密地耦合到SPI 208,并因而對于其他SPI應(yīng)用變得更不可移植。然后,處理位置中介器選擇問題所要求的專業(yè)化代碼基數(shù)增加容量,并且最后要求應(yīng)用202適合于SPI 208。
因此,本發(fā)明的一個重要方面是通過給應(yīng)用創(chuàng)建至中介器的一個邏輯視圖(OLVB)應(yīng)用程序接口(API)(One Logical View to BrokerApplication Program Interface)的范例來防止使應(yīng)用適合于其相應(yīng)主機(jī)SPI的必要性。換句話說,特定應(yīng)用可以和任何特定NSB通信,而沒有在由NSB提供的web服務(wù)或web組件中發(fā)現(xiàn)的任何特定復(fù)雜性的問題。
為了輔助OLVB范例,NSB參數(shù)列表204可能是必需的。例如,每個應(yīng)用可能需要提供它自己的唯一識別號碼,以便與此應(yīng)用通信的特定NSB可以跟蹤此應(yīng)用可利用的服務(wù)級別。如果請求TE的位置數(shù)據(jù)的應(yīng)用所使用的識別號碼指示出例如用于位置報告的粒度(granularity)是在城域級別上,則與此應(yīng)用通信的位置中介器僅僅在那個粒度上傳遞位置更新,即使可能存在其他的粒度。例如,當(dāng)通過使用全球定位系統(tǒng)(GPS)可獲得TE的精確坐標(biāo)時,就是這種情況。此外,可能要求此應(yīng)用的唯一識別號碼來執(zhí)行最終用戶或其他策略設(shè)置方可能已經(jīng)建立的安全性要求,以提供例如位置更新信息給請求應(yīng)用。
在其中特定SPI用作提供(host)應(yīng)用202的平臺的情況下,也可能要求唯一服務(wù)提供者識別號碼。為了獲得對由NSB提供的服務(wù)的接入,例如,根據(jù)強(qiáng)驗證方法,SPI的所有者的身份可能替換為實際SPI的身份。例如,SPI與NSB具有的商業(yè)協(xié)定也許與在SPI上提供該應(yīng)用的通信方不同。例如,當(dāng)蜂窩運(yùn)營商正在它的SPI中為企業(yè)客戶提供應(yīng)用時,企業(yè)客戶的無線LAN網(wǎng)絡(luò)通常不接受來自運(yùn)營商的SPI的查找。然而,如果向企業(yè)的NSB提供服務(wù)提供者的識別號碼,則接受在SPI和NSB之間的通信。
當(dāng)NSB的服務(wù)與特定TE或用戶身份有關(guān)時,可能需要唯一用戶識別號碼。例如,選擇正確位置中介器可能取決于TE的具體身份,因為即使TE的本地網(wǎng)絡(luò)的位置中介器也可能需要用戶識別號碼來確定在哪里將找到位置信息。當(dāng)可以從多個NSB獲得服務(wù)時,也可能要求費(fèi)用函數(shù)。通過使用費(fèi)用函數(shù),此應(yīng)用能夠定義和限制與NSB提供的服務(wù)有關(guān)的費(fèi)用。可能還需要商業(yè)協(xié)定,以便此應(yīng)用能夠確定或指示或執(zhí)行將利用哪個商業(yè)協(xié)定。在選擇處理期間,例如,按照NSB相關(guān)參數(shù)列表204中的商業(yè)協(xié)定的規(guī)定,SPI可以選擇是此商業(yè)協(xié)定的成員的服務(wù)中介器。將理解NSB相關(guān)參數(shù)列表204可以不表示根據(jù)本發(fā)明提供OLVB范例所要求的窮舉的參數(shù)列表,而用于表示對于提供OLVB范例可能是有用的參數(shù)的示范性列表。
圖3說明一般問題,其中應(yīng)用302呈現(xiàn)為具有多個web服務(wù)組件,根據(jù)NSB相關(guān)參數(shù)列表304從這些web服務(wù)組件中選擇最佳web服務(wù)組件。如以下詳細(xì)討論的,應(yīng)用302通過利用接口306所說明的協(xié)議接口或者軟件接口與SPI 308通信。通常,多個web服務(wù)組件314-320可以由SPI 308使用。每個web服務(wù)組件314-320都具有被報告給web服務(wù)注冊(registry)312的服務(wù)特征。通常,不要求web服務(wù)組件314-320是如上討論的web服務(wù),而僅僅需要的是具有符合web服務(wù)的接口的網(wǎng)絡(luò)組件。
按照用于web服務(wù)的、分布式的、基于web信息注冊的UniversalDiscovery Description Integration(通用發(fā)現(xiàn)描述綜合)(UDDI)規(guī)范的規(guī)定,可以實現(xiàn)注冊312。這些注冊是公眾可接入的,并且支持例如用于軟件公司、個體開發(fā)者、標(biāo)準(zhǔn)團(tuán)體的服務(wù)類型注冊以及用于描述公司支持服務(wù)的商業(yè)注冊類型。UDDI包括web上商業(yè)注冊的共享操作。UDDI商業(yè)注冊被用在服務(wù)級別上,以檢查給定方是否具有特殊的web服務(wù)接口。此外,UDDI商業(yè)注冊用于查找給定產(chǎn)業(yè)中具有給定服務(wù)類型的公司以及定位有關(guān)一方或預(yù)定方如何顯露web服務(wù)的信息。根據(jù)注冊312中提供的信息,獲得web服務(wù)組件314-320的操作特定的細(xì)節(jié)。從J2EE觀點出發(fā),UDDI注冊312只是包含具體的和相關(guān)的web服務(wù)信息(例如Java命名和目錄接口(JNDI))的儲存庫,并且它本身可以或不可以提供web服務(wù)組件。NSB相關(guān)參數(shù)列表304使得SPI 308能夠選擇web服務(wù)組件,例如,SPI 308或所提供應(yīng)用302的所有者與之可以具有商業(yè)協(xié)定。此外,NSB相關(guān)參數(shù)列表304輔助在不具有適當(dāng)?shù)漠?dāng)前商業(yè)協(xié)定的web服務(wù)組件314-320和SPI 308之間進(jìn)行匹配。進(jìn)一步,參數(shù)列表304能夠使用費(fèi)用函數(shù)在應(yīng)用302和web服務(wù)組件314-320之間進(jìn)行最經(jīng)濟(jì)合算的匹配。
圖4說明根據(jù)本發(fā)明的示范性J2EE web服務(wù)環(huán)境,說明在應(yīng)用402和NSB 424-428之間基于軟件接口的解決方案。NSB 424-428等效于圖2和圖3中所示的NSB,或可以表示具有web服務(wù)接口的實際的web服務(wù)或web組件。應(yīng)用402、軟件接口模塊432和庫420都可以在Java應(yīng)用服務(wù)器環(huán)境上共存。通常,bean(豆子)406-410和414表示軟件模塊、程序庫、代理或?qū)ο?,其方法、服?wù)、數(shù)據(jù)和功能通過軟件接口404由應(yīng)用402啟動。盡管舉例說明了J2EE實現(xiàn)方式,但應(yīng)注意任意數(shù)量的實現(xiàn)方式是可行的,例如Microsoft.NET和Linux應(yīng)用。
bean 406-410表示多個企業(yè)bean,例如,在Java環(huán)境內(nèi)的Enterprise Java Bean(EJB)容器內(nèi)執(zhí)行。每個企業(yè)bean可以表示應(yīng)用的商業(yè)邏輯,并且可以采用各種功能類型,例如會話或?qū)嶓w,并且可以為一個請求客戶執(zhí)行具體任務(wù)。例如,bean 410可以對應(yīng)于位置請求任務(wù),正如以上相對于圖2所討論的,可以聯(lián)系NSB 424-428之一來執(zhí)行TE的位置驗證。一般,企業(yè)bean 406-410組成向應(yīng)用402隱藏中介器或web服務(wù)復(fù)雜性的中介器服務(wù)特定的軟件庫或?qū)ο?,其中?yīng)用402支持OLVB范例,從而減少接口404的復(fù)雜性并增加應(yīng)用402的可移植性。當(dāng)然可能利用中介器424-428之間的一對一對應(yīng)關(guān)系建立企業(yè)bean 406-410,但是當(dāng)然在bean 406-410和中介器424-428之間也可以存在其他關(guān)系,例如多個bean的交互作用,以實現(xiàn)對中介器424-428的接口。
bean 414作為用于企業(yè)bean 406-410的通用功能的獨(dú)立功能塊存在。在J2EE實現(xiàn)方式中,bean 414稱為查找bean。查找bean 414包含判定函數(shù)412,其接收例如在圖2和3的NSB相關(guān)參數(shù)列表204和304中列出的參數(shù)作為輸入??梢酝ㄟ^任何bean 410、408、406提供這些參數(shù)或其子集。在這樣的情況下,應(yīng)用402與查找bean 414不直接通信444。另一個情況是可能的,其中在和bean 406-410通信之前,應(yīng)用402通過444主動地請求查找函數(shù)。這樣的通信可以使該應(yīng)用能夠?qū)⑦x擇哪個NSB具有一些增強(qiáng)的控制。然而,因為這可能限制應(yīng)用402的可移植性,所以正常的實現(xiàn)方式中不推薦從應(yīng)用402直接接入到查找函數(shù)414。判定函數(shù)412的輸出提供和匹配服務(wù)中介器424-428通信所要求的連接參數(shù)。通常,組件424-428可以表示web服務(wù)或具有web服務(wù)接口的web組件。
也可以實現(xiàn)查找bean 414的匹配函數(shù)416,以提供SPI和匹配服務(wù)中介器之間的動態(tài)商業(yè)關(guān)系。例如,雖然查找bean 414執(zhí)行的查找函數(shù)可以咨詢保存在本地或遠(yuǎn)程數(shù)據(jù)庫REG 418中的查找表,以建立至匹配NSB的連接,例如所要求的NSB的地址,但是查找函數(shù)不一定能防止在SPI和匹配NSB之間缺少商業(yè)關(guān)系的發(fā)生。進(jìn)行匹配函數(shù)416的作用是擴(kuò)展查找bean 414的半靜態(tài)查找函數(shù),以啟動在SPI的所有者或所提供應(yīng)用和NSB的所有者之間建立的實時商業(yè)關(guān)系。如果需要的話,也向應(yīng)用402提供至查找bean 414的外部連接444,然而,可能存在其他的實現(xiàn)方式,正如以上所討論的,其或者禁止、限制或者托管外部連接444。數(shù)據(jù)庫418表示數(shù)據(jù)注冊,很象web服務(wù)注冊430,其中可以存儲由NSB 424-428提供的web服務(wù)的屬性,并且以后由匹配函數(shù)416和判定函數(shù)412在web服務(wù)發(fā)現(xiàn)期間接入。
庫420表示例如能夠使用web服務(wù)相關(guān)協(xié)議的所有API,例如,支持XML文檔處理的用于XML處理的Java API(JAXP)、使得應(yīng)用能夠發(fā)送和接收面向文件XML消息的Java API for XML Messaging(用于XML消息傳送的Java API)(JAXM)、用于使用SOAP規(guī)范建立RPC功能的Java API for XML based Remote Procedure Calls(用于基于XML遠(yuǎn)程過程調(diào)用的Java API)(JAXM-RPC)以及用于XML接入web服務(wù)注冊的Java API for XML Registries(用于XML注冊的JavaAPI)(JAXR)。
如圖4所示的web服務(wù)環(huán)境提供根據(jù)本發(fā)明的示范性環(huán)境,這產(chǎn)生關(guān)于應(yīng)用402的OLVB范例。接口434和440向應(yīng)用402提供簡化的和可移植的API,這可以保持恒定而與應(yīng)用402的主應(yīng)用服務(wù)器無關(guān)。EJB 406-410可由應(yīng)用402通過接口434通過使用被發(fā)送到EJB406-410的特定客戶信息來舉例說明,例如可以通過使用Java消息服務(wù)(JMS)與消息驅(qū)動bean一起使用。一旦消息驅(qū)動bean已利用應(yīng)用402例示,接口436提供查找具有所要求的信息的bean 414,以便查找bean 414知道應(yīng)用402所請求的服務(wù)類型。應(yīng)用402可以通過接口444直接向查找bean 414傳送NSB相關(guān)參數(shù)204,或者可以通過接口434傳送NSB相關(guān)信息。
一旦查找bean 414擁有應(yīng)用402所請求的特殊商業(yè)類型和可以由應(yīng)用402提供的任何NSB相關(guān)參數(shù),查找bean 414在發(fā)現(xiàn)期間通過JAXR利用接口440來搜索web服務(wù)注冊430,以根據(jù)應(yīng)用402所請求的服務(wù)和選擇性相關(guān)的NSB相關(guān)參數(shù)來找到最佳匹配NSB。最佳匹配選擇過程是動態(tài)優(yōu)化選擇過程,它利用NSB相關(guān)參數(shù)和應(yīng)用402的服務(wù)請求來選擇具有最適合于應(yīng)用402的特征的最佳服務(wù)組件。然后,利用用于未來接入的動態(tài)優(yōu)化選擇過程的結(jié)果更新注冊418。最佳匹配NSB和相應(yīng)消息驅(qū)動bean實際上隨后通過存在于庫420內(nèi)的適當(dāng)?shù)腏ava API利用接口442和438連接。應(yīng)用402然后通過接口434和例示的EJB通信,以響應(yīng)于服務(wù)請求而接收數(shù)據(jù),從而結(jié)束該事務(wù)處理。
圖5說明了根據(jù)本發(fā)明的示范性J2EE web服務(wù)環(huán)境,說明在應(yīng)用502和NSB 524-528之間基于協(xié)議接口的方案。NSB 524-528等效于圖2和圖3中所示的NSB,或可以表示具有web服務(wù)接口的實際的web服務(wù)或web組件。應(yīng)用502、協(xié)議模塊532和庫520全部可以在Java應(yīng)用服務(wù)器環(huán)境上共存。盡管舉例說明了J2EE實現(xiàn)方式,但是應(yīng)注意到任何數(shù)量的實現(xiàn)方式是可行的,例如Microsoft.NET和Linux應(yīng)用。
圖5表示根據(jù)本發(fā)明的一個可選實施方式,使用協(xié)議接口模塊532作為替代圖4中所示的軟件接口模塊的一種可能選擇方案來實現(xiàn)OLVB范例。利用庫520中的web服務(wù)協(xié)議來端到端執(zhí)行應(yīng)用502和NSB524-528之間的通信,其中沒有應(yīng)用接口到web服務(wù)協(xié)議的映射。網(wǎng)絡(luò)地址翻譯(NAT)中介器506-510向應(yīng)用502隱藏NSB 524-528的IP地址,以使應(yīng)用502不必包括NSB 524-528的靜態(tài)IP地址。利用NAT代理506-510和查找函數(shù)514的功能來執(zhí)行正確服務(wù)中介器的選擇。
應(yīng)當(dāng)注意如圖4和5中所示的進(jìn)行匹配函數(shù)416和516盡可能多地尋求利用在互聯(lián)網(wǎng)上可獲得的預(yù)先存在的關(guān)鍵技術(shù),而不是復(fù)制它們。核心技術(shù)再利用的一個例子涉及Hewlett Packard(惠普)(HP)的e-Speak的關(guān)鍵技術(shù)。HP的e-Speak允許接入互聯(lián)網(wǎng)的消費(fèi)者能夠根據(jù)來自消費(fèi)者的查詢來查找和連接到服務(wù)提供者的能力。然而,e-Speak引擎也許不具有例如搜索出和找到消費(fèi)者所尋找的特定服務(wù)的“最佳”供應(yīng)商的能力,而是必須被給予術(shù)語“最佳”的定義。
在根據(jù)本發(fā)明進(jìn)行匹配函數(shù)和至現(xiàn)有關(guān)鍵技術(shù)如e-Speak的接合之間交互作用的一個可能例子是將HP的e-Speak表示為它自己的web服務(wù)、web組件或服務(wù)中介器。隨后可使用查找函數(shù)414或514來過濾HP的e-Speak的輸出,以便根據(jù)NSB相關(guān)參數(shù)204或304來找到“最佳”服務(wù)供應(yīng)商。過濾HP的e-Speak輸出的一個這樣的例子可以牽涉以法語撰寫的文檔的英文翻譯的服務(wù)請求,該服務(wù)費(fèi)用少于$25。HP的e-Speak被指派在網(wǎng)絡(luò)上找到所有的法語翻譯服務(wù)的任務(wù),但是費(fèi)用函數(shù)參數(shù)連同查找函數(shù)414或514將所有的e-Speak報告的翻譯服務(wù)提供者僅僅限制到其翻譯費(fèi)用不超過$25的那些提供者。
圖6說明了根據(jù)本發(fā)明的流程圖,用于結(jié)合圖4的示意圖解釋在TE 246從網(wǎng)絡(luò)B 222漫游到網(wǎng)絡(luò)C 240期間圖2的運(yùn)行情況。在步驟600,在TE 246漫游進(jìn)入網(wǎng)絡(luò)C 240之后,應(yīng)用202請求TE 246的位置更新。由應(yīng)用202為位置更新提供應(yīng)用ID、用戶ID和商業(yè)協(xié)定數(shù)據(jù)。步驟610檢驗NSB相關(guān)參數(shù)存在。步驟620指示應(yīng)用ID將利用最可能的分辨率接收位置更新,因為“應(yīng)用202”被特許了這樣的精度。用戶ID指示需要“TE 246”的位置請求,而商業(yè)協(xié)定參數(shù)指示在網(wǎng)絡(luò)B 222和網(wǎng)絡(luò)C 240之間沒有適當(dāng)?shù)纳虡I(yè)協(xié)定。判定函數(shù)412接收NSB相關(guān)參數(shù),并且在步驟630確定雖然根據(jù)參數(shù)列表NSB 238是正確的匹配,但是在NSB 220和NSB 238之間沒有適當(dāng)?shù)纳虡I(yè)協(xié)定。在步驟640調(diào)用進(jìn)行匹配函數(shù)416,以便自動地創(chuàng)建NSB 220和NSB 238之間的商業(yè)關(guān)系。步驟650調(diào)用由NSB 238提供的位置更新服務(wù),并且服務(wù)請求完成。
總之,開發(fā)者友好的API被實現(xiàn)為具有One Logical View toBroker(至中介器的一個邏輯視圖)范例,這簡化了服務(wù)請求應(yīng)用和服務(wù)中介器或web服務(wù)組件之間的接口。此外,該應(yīng)用被賦予更大的可移植性,因為在該應(yīng)用內(nèi)不了解web服務(wù)復(fù)雜性。啟用與請求應(yīng)用具有商業(yè)關(guān)系的NSB的半靜態(tài)查找。然而,在NSB與請求應(yīng)用不具有建立的商業(yè)關(guān)系的情況下,在服務(wù)請求期間建立動態(tài)操作,這提供服務(wù)提供實體和請求應(yīng)用之間商業(yè)關(guān)系的動態(tài)磋商。
使用上述規(guī)范,本發(fā)明可以通過使用標(biāo)準(zhǔn)編程和/或工程技術(shù)實現(xiàn)為網(wǎng)絡(luò)系統(tǒng)、網(wǎng)絡(luò)設(shè)備、處理或制品,以產(chǎn)生編程軟件、固件、硬件或其任何組合。
任何具有計算機(jī)可讀程序代碼的結(jié)果程序可以在一個或多個計算機(jī)可用媒體(例如,存儲裝置或發(fā)送裝置)內(nèi)實施,從而根據(jù)本發(fā)明制造計算機(jī)程序產(chǎn)品或制品。因此,在這里使用的術(shù)語“制品”和“計算機(jī)程序產(chǎn)品”預(yù)定包括在例如任何存儲設(shè)備上或任何發(fā)送裝置中的任何計算機(jī)可用媒體上(永久地、暫時或短暫地)存在的計算機(jī)程序。
執(zhí)行直接來自于一個媒體的程序代碼、在媒體上存儲程序代碼、將代碼從一個媒體拷貝到另一個媒體、使用發(fā)送裝置發(fā)送代碼、或其他等效動作可以涉及利用僅僅短暫實施程序代碼的存儲器或發(fā)送裝置作為在制造、使用或銷售本發(fā)明的初級或最終步驟。
存儲設(shè)備包括但是不限于硬盤驅(qū)動器、軟磁盤、光盤、磁帶、半導(dǎo)體存儲器,例如RAM,ROM,PROMS等等。發(fā)送裝置包括但是不限于互聯(lián)網(wǎng)、內(nèi)聯(lián)網(wǎng)、基于電話/調(diào)制解調(diào)器的網(wǎng)絡(luò)通信、硬連線/電纜通信網(wǎng)絡(luò)、蜂窩通信、無線電波通信、衛(wèi)星通信及其他固定或移動網(wǎng)絡(luò)系統(tǒng)/通信鏈路。
實施本發(fā)明的機(jī)器可以涉及一個或多個處理系統(tǒng),其包括但不限于CPU、存儲器/存儲設(shè)備、通信鏈路、通信/發(fā)送設(shè)備、服務(wù)器、I/O(輸入/輸出)設(shè)備、一個或多個處理系統(tǒng)的任何子部件或單獨(dú)的部分,包括軟件、固件、硬件或其任何組合或再組合,其如在權(quán)利要求書中所述實施本發(fā)明。
根據(jù)在這里提供的說明,本領(lǐng)域技術(shù)人員很容易能夠結(jié)合所述創(chuàng)建的軟件和合適的通用或?qū)S糜嬎銠C(jī)硬件,以創(chuàng)建實施本發(fā)明的計算機(jī)系統(tǒng)和/或計算機(jī)子部件,并且創(chuàng)建用于執(zhí)行本發(fā)明的方法的計算機(jī)系統(tǒng)和/或計算機(jī)子部件。
當(dāng)然,應(yīng)理解在不偏離本發(fā)明的范圍或精神的前提下,可以對在上文討論的各種具體實施方式
進(jìn)行各種修改和添加。例如,本發(fā)明可結(jié)合任何類型的執(zhí)行環(huán)境一起使用,而不局限于上述的示范性的J2EE執(zhí)行環(huán)境。根據(jù)上述對說明性的具體實施方式
的說明,本領(lǐng)域的普通技術(shù)人員將容易理解本發(fā)明可應(yīng)用于任何相當(dāng)?shù)膱?zhí)行環(huán)境,例如Microsoft.NET和Linux。因此,本發(fā)明的范圍不應(yīng)該受到上面討論的特殊實施方式的限制,而是應(yīng)該僅僅由下面提出的權(quán)利要求書及其等價物來規(guī)定。
權(quán)利要求
1.用于在具有多個服務(wù)組件的網(wǎng)絡(luò)內(nèi)建立網(wǎng)絡(luò)服務(wù)的一種方法,包括提供多個接口模塊,以便與多個服務(wù)組件之一建立通信;向多個接口模塊提供一個邏輯接入點,以輔助多個服務(wù)組件之一的調(diào)用;接收服務(wù)組件相關(guān)參數(shù);以及響應(yīng)于該調(diào)用,選擇多個服務(wù)組件之一,其中服務(wù)組件相關(guān)參數(shù)提供多個服務(wù)組件之一的動態(tài)選擇優(yōu)化。
2.根據(jù)權(quán)利要求1的方法,其中提供多個接口模塊包括提供可利用從一個邏輯接入點接收的消息接入的多個軟件對象。
3.根據(jù)權(quán)利要求2的方法,其中接收服務(wù)組件相關(guān)參數(shù)包括通過一個邏輯接入點接收服務(wù)組件相關(guān)參數(shù)。
4.根據(jù)權(quán)利要求3的方法,其中接收服務(wù)組件相關(guān)參數(shù)包括通過一個外部連接接收服務(wù)組件相關(guān)參數(shù)。
5.根據(jù)權(quán)利要求4的方法,其中選擇多個服務(wù)組件之一包括使用服務(wù)組件相關(guān)參數(shù)來減少潛在兼容服務(wù)組件的初始數(shù)量。
6.根據(jù)權(quán)利要求5的方法,其中選擇多個服務(wù)組件之一進(jìn)一步包括使用服務(wù)組件相關(guān)參數(shù)來啟動與多個服務(wù)組件之一的商業(yè)協(xié)定。
7.根據(jù)權(quán)利要求1的方法,其中提供多個接口模塊包括提供可利用從一個邏輯接入點接收的消息接入的多個網(wǎng)絡(luò)地址翻譯代理。
8.根據(jù)權(quán)利要求7的方法,其中接收服務(wù)組件相關(guān)參數(shù)包括通過一個邏輯接入點接收服務(wù)組件相關(guān)參數(shù)。
9.根據(jù)權(quán)利要求8的方法,其中接收服務(wù)組件相關(guān)參數(shù)包括通過一個外部連接接收服務(wù)組件相關(guān)參數(shù)。
10.根據(jù)權(quán)利要求9的方法,其中選擇多個服務(wù)組件之一包括使用服務(wù)組件相關(guān)參數(shù)來減少潛在兼容服務(wù)組件的初始數(shù)量。
11.根據(jù)權(quán)利要求10的方法,其中選擇多個服務(wù)組件之一進(jìn)一步包括使用服務(wù)組件相關(guān)參數(shù)來啟動與多個服務(wù)組件之一的商業(yè)協(xié)定。
12.用于輔助網(wǎng)絡(luò)服務(wù)以響應(yīng)服務(wù)請求和相關(guān)服務(wù)請求參數(shù)的一種系統(tǒng),包括分布在至少一個網(wǎng)絡(luò)內(nèi)的多個服務(wù)組件;和接口模塊,具有多個接口對象以便與多個服務(wù)組件之一建立通信,該接口模塊包括查找對象,與多個接口對象通信,以建立在多個服務(wù)組件之一和多個接口對象之一之間所需的連接參數(shù);數(shù)據(jù)對象,與查找對象通信,以提供識別與多個服務(wù)組件相關(guān)的屬性的參數(shù);以及單個邏輯接入點,允許外部接入多個接口對象。
13.根據(jù)權(quán)利要求12的系統(tǒng),其中多個接口對象包括可利用從單個邏輯接入點接收的消息接入的軟件對象。
14.根據(jù)權(quán)利要求13的系統(tǒng),其中查找對象包括一個進(jìn)行匹配函數(shù),以響應(yīng)于相關(guān)服務(wù)請求參數(shù)而促進(jìn)與多個服務(wù)組件之一的商業(yè)協(xié)定。
15.根據(jù)權(quán)利要求13的系統(tǒng),其中查找對象包括一個判定函數(shù),以接收相關(guān)服務(wù)請求參數(shù),并且響應(yīng)于相關(guān)服務(wù)請求參數(shù)而提供所需的連接參數(shù)。
16.根據(jù)權(quán)利要求12的系統(tǒng),其中多個接口對象包括可利用從單個邏輯接入點接收的消息接入的多個網(wǎng)絡(luò)地址翻譯代理。
17.根據(jù)權(quán)利要求16的系統(tǒng),其中查找對象包括一個進(jìn)行匹配函數(shù),以響應(yīng)于相關(guān)服務(wù)請求參數(shù)而促進(jìn)與多個服務(wù)組件之一的商業(yè)協(xié)定。
18.根據(jù)權(quán)利要求16的系統(tǒng),其中查找對象包括一個判定函數(shù),以接收相關(guān)服務(wù)請求參數(shù),并且響應(yīng)于相關(guān)服務(wù)請求參數(shù)而提供所需的連接參數(shù)。
19.一種計算機(jī)可讀媒體,具有計算機(jī)可執(zhí)行指令,用于在具有多個服務(wù)組件的網(wǎng)絡(luò)內(nèi)建立網(wǎng)絡(luò)服務(wù),這些計算機(jī)可執(zhí)行指令執(zhí)行包括以下的步驟提供多個接口模塊,以便與多個服務(wù)組件之一建立通信,其中至多個接口模塊的一個邏輯接入點允許外部調(diào)用多個服務(wù)組件之一;選擇地接收服務(wù)組件相關(guān)參數(shù);和響應(yīng)于該調(diào)用,選擇多個服務(wù)組件之一,其中服務(wù)組件相關(guān)參數(shù)提供多個服務(wù)組件之一的動態(tài)選擇優(yōu)化。
20.根據(jù)權(quán)利要求19的計算機(jī)可讀媒體,其中提供多個接口模塊的計算機(jī)可執(zhí)行指令步驟包括提供可利用從一個邏輯接入點接收的消息接入的多個軟件對象。
21.根據(jù)權(quán)利要求20的計算機(jī)可讀媒體,其中接收服務(wù)組件相關(guān)參數(shù)的計算機(jī)可執(zhí)行指令步驟包括通過一個邏輯接入點接收服務(wù)組件相關(guān)參數(shù)。
22.根據(jù)權(quán)利要求21的計算機(jī)可讀媒體,其中接收服務(wù)組件相關(guān)參數(shù)的計算機(jī)可執(zhí)行指令步驟包括通過一個外部連接接收服務(wù)組件相關(guān)參數(shù)。
23.根據(jù)權(quán)利要求22的計算機(jī)可讀媒體,其中選擇多個服務(wù)組件之一的計算機(jī)可執(zhí)行指令步驟包括使用服務(wù)組件相關(guān)參數(shù)來減少潛在兼容服務(wù)組件的初始數(shù)量。
24.根據(jù)權(quán)利要求23的計算機(jī)可讀媒體,其中選擇多個服務(wù)組件之一的計算機(jī)可執(zhí)行指令步驟進(jìn)一步包括使用服務(wù)組件相關(guān)參數(shù)來啟動與多個服務(wù)組件之一的商業(yè)協(xié)定。
25.根據(jù)權(quán)利要求19的計算機(jī)可讀媒體,其中提供多個接口模塊的計算機(jī)可執(zhí)行指令步驟包括提供可利用從一個邏輯接入點接收的消息接入的多個網(wǎng)絡(luò)地址翻譯代理。
26.根據(jù)權(quán)利要求25的計算機(jī)可讀媒體,其中接收服務(wù)組件相關(guān)參數(shù)的計算機(jī)可執(zhí)行指令步驟包括通過一個邏輯接入點接收服務(wù)組件相關(guān)參數(shù)。
27.根據(jù)權(quán)利要求26的計算機(jī)可讀媒體,其中接收服務(wù)組件相關(guān)參數(shù)的計算機(jī)可執(zhí)行指令步驟包括通過一個外部連接接收服務(wù)組件相關(guān)參數(shù)。
28.根據(jù)權(quán)利要求27的計算機(jī)可讀媒體,其中選擇多個服務(wù)組件之一的計算機(jī)可執(zhí)行指令步驟包括使用服務(wù)組件相關(guān)參數(shù)來減少潛在兼容服務(wù)組件的初始數(shù)量。
29.根據(jù)權(quán)利要求28的計算機(jī)可讀媒體,其中選擇多個服務(wù)組件之一的計算機(jī)可執(zhí)行指令步驟進(jìn)一步包括使用服務(wù)組件相關(guān)參數(shù)來啟動與多個服務(wù)組件之一的商業(yè)協(xié)定。
全文摘要
用于輔助web服務(wù)組件接入的系統(tǒng)和方法。為了減少應(yīng)用接口的復(fù)雜性以及隨后增加應(yīng)用(402)的可移植性,為應(yīng)用(402)建立One Logical View to Broker(至中介器的一個邏輯視圖)(OLVB)應(yīng)用程序接口(API)。網(wǎng)絡(luò)服務(wù)中介器相關(guān)參數(shù)(204,304)允許最佳匹配網(wǎng)絡(luò)服務(wù)中介器或web服務(wù)組件的請求,同時對應(yīng)用(402)隱藏選擇細(xì)節(jié)。使用查找函數(shù)(416)內(nèi)的進(jìn)行匹配函數(shù)(414),輔助在服務(wù)提供基礎(chǔ)結(jié)構(gòu)(208)和網(wǎng)絡(luò)服務(wù)中介器(212,232,238)之間的實時商業(yè)關(guān)系。
文檔編號H04L29/06GK1636200SQ03802110
公開日2005年7月6日 申請日期2003年1月6日 優(yōu)先權(quán)日2002年1月11日
發(fā)明者P·奈卡寧, S·波亞, H·科伊武 申請人:諾基亞有限公司