用於部署供給服務的ems的通用框架的製作方法
2023-06-09 06:28:16 1
專利名稱:用於部署供給服務的ems的通用框架的製作方法
技術領域:
本發明涉及實現用於在元件管理系統(EMS)伺服器與一個或多個 EMS客戶端之間供給(provision) —種或多種服務的EMS框架。
背景技術:
利用網絡元件管理系統(EMS)伺服器,EMS客戶端可在諸如路由器 之類的網絡元件上供給服務。EMS伺服器是負責在網絡元件上施行 (administer)服務的伺服器。操作性地連接到EMS伺服器的EMS客戶端 允許管理員管理和配置網絡元件上由EMS伺服器供給的服務。例如,如 果管理員希望在特定路由器上部署特定服務,例如IP語音(VoIP),則 管理員可利用EMS客戶端來與EMS伺服器通信。在利用EMS客戶端配 置該服務之後,管理員可通過從EMS客戶端向EMS伺服器發送指令以使 EMS伺服器供給在該特定路由器上配置的服務,來在該特定路由器上部署 該服務。為使EMS伺服器支持新服務供給,需要大量定製的開發。例如,必 須定義EMS客戶端和EMS伺服器之間用於新服務的接口。此外,必須在 EMS伺服器上創建和實現控制EMS伺服器如何持續存儲和取得與新服務 相關的數據的軟體。還需要修改EMS伺服器以支持對與新服務相關聯的 數據的轉換。此外,必須配置EMS伺服器以幫助將與新服務相關的數據 傳輸到網絡元件。由於多種原因,為使EMS伺服器支持新服務而需要的大量定製開發 是不利的。首先,由於每種新服務需要從無到有地創建大部分的軟體,因 此很可能向定製軟體中引入一個或多個錯誤(bug)。其次,高程度的定 制增加了開發的時間量和成本。最後,EMS中為每種供給的服務創建的定 制接口在EMS客戶端和EMS伺服器之間產生了大量接口。大量接口使得用戶體驗更加複雜,並且增加了IT管理員必須維護和支持的接口量。基於 上述原因,在本領域中需要在不產生上述方法的缺點的情況下支持EMS 伺服器對新服務的供給。本部分中描述的方法是可以實行的方法,但不一定是先前已經構思到 或實行過的方法。因此,除非另有指明,否則不應當僅因為本部分中描述 的任何方法被包括在本部分中而假定其為現有技術。
在附圖中以示例方式而非限制方式圖示了本發明的實施例,附圖中類 似的標號指代類似的元件,其中圖1是圖示根據一個實施例的系統的體系結構的框圖; 圖2是圖示一個實施例的高級功能性步驟的流程圖;圖3是根據一個實施例的EMS伺服器的框圖;圖4是圖示向EMS伺服器的通用框架添加新服務模塊時的功能性步 驟的流程圖;圖5是圖示根據一個實施例在取得一個或多個網絡元件的配置信息時 涉及的功能性步驟的流程圖;以及圖6是圖示可以實現一個實施例的計算機系統的框圖。
具體實施方式
在下面的描述中,出於說明目的,給出了大量具體細節以提供對本發 明的完全理解。然而,本領域普通技術人員應當清楚,沒有這些具體細節 也可以實施本發明。在其他情況下,公知的結構和設備以框圖形式示出, 以避免不必要地模糊對這裡描述的各種實施例的描述。功能概述EMS伺服器的通用框架使得EMS客戶端與EMS伺服器之間交換的訊 息(communication)能夠被EMS伺服器利用相同通用框架以類似的方式 處理,即使這些訊息涉及不同服務也是如此。無需對EMS伺服器的通用框架進行任何修改,新的服務就可被添加到EMS伺服器所支持的服務列 表。在一個實施例中,用於在網絡元件上施行特定服務的訊息被從EMS 客戶端發送到EMS伺服器。該訊息包含描述要在網絡元件上施行的特定 服務的服務數據。在接收到訊息之後,EMS伺服器構造存儲了訊息中包含的服務數據的 通用記錄的實例。通過在通用記錄的實例中存儲服務數據,就可以利用相 同的通用組件來處理所有被EMS伺服器所支持的服務。EMS伺服器隨後基於哪種服務與存儲在實例中的服務數據相關聯,選 擇服務模塊來處理通用記錄的實例。EMS選擇來處理實例的所選服務模塊 被配置為處理存儲有與被施行的特定服務相關聯的服務數據的通用記錄的 實例。例如,如果存儲在通用記錄的實例中的服務數據是針對IP語音服務 的,則所選服務模塊是被配置為供給IP語音服務的模塊。所選擇的服務模塊在網絡元件上供給該服務。在網絡元件上供給該服 務的結果被存儲在描述在網絡元件處處理服務數據的結果的結果數據中。 EMS伺服器隨後在諸如資料庫之類的持久性存儲裝置中存儲結果數據。體系結構概述圖1是圖示根據一個實施例的系統100的體系結構的框圖。網絡100 包括一個或多個網絡元件、 一個或多個EMS伺服器、 一個或多個EMS客 戶端、 一個或多個網絡管理站(NMS)以及一個或多個通信鏈路。網絡元件,例如圖l所示的網絡元件102、 104和106,是指能夠作為 EMS伺服器所供給的服務的主體的任何硬體組件。網絡元件的非限制性的 說明性示例包括路由器、防火牆和伺服器。雖然圖1圖示了包括三個網絡 元件的實施例,但是本發明的實施例可包括一個或多個網絡元件。EMS伺服器,例如圖1所示的EMS伺服器110和112,是指能夠向 一個或多個網絡元件供給服務的任何功能性組件。雖然圖1示出了包括兩 個EMS伺服器的系統,但本發明的實施例也可包括一個或多個EMS服務 器。根據一個實施例的EMS伺服器可向一個或多個網絡元件供給一種或多種服務,不論每個網絡元件是何種類型的,也不論所供給的服務是何種 類型的。換言之, 一個實施例中的EMS伺服器可向任何網絡元件提供該EMS伺服器支持的任何服務,即使在該EMS伺服器在向具有不同製造者 類型或型號的多個網絡元件提供相同服務的情況下也是如此。根據本發明實施例的EMS伺服器包括通用框架。將參考圖3描述通 用框架的組件,圖3是根據一個實施例的EMS伺服器的框圖。圖3示出 了具有通用框架310的EMS伺服器110。通用框架310是指EMS伺服器 內的一組功能性組件,這組功能性組件使得EMS客戶端與EMS伺服器之 間交換的訊息能夠被EMS伺服器以類似的方式處理,即使這些訊息涉及 不同服務也是如此。下面將會更詳細描述通用框架310執行的處理。如圖3所示,通用框架包括通用接口 320、通用引擎330、服務模塊 340、 342、 344和資料庫管理器350。通用接口,例如通用接口 320,是指 允許每個EMS客戶端利用相同的接口與EMS伺服器交換訊息而不論哪種 服務與該訊息相關聯的任何通用接口。下面將會更詳細描述通用接口 320 的操作。通用引擎,例如通用引擎330,是指創建和存儲通用記錄的實例的任 何功能性組件。通用記錄的實例被實施例用於存儲來自EMS客戶端的訊 息內所包含的服務數據。服務數據是描述要在網絡元件上施行的特定服務 的數據。下面將會更詳細描述通用引擎330的操作。服務模塊,例如服務模塊340、 342和344,是指能夠處理通用記錄的 實例的任何功能性組件。服務模塊處理通用記錄的實例以獲得其中包含的 服務數據。服務模塊與網絡元件交換包含服務數據或結果數據的XML文 檔。結果數據是描述在網絡元件處處理服務數據的結果的數據。下面將會 更詳細描述服務模塊的操作。資料庫管理器,例如資料庫管理器350,是指允許通用框架310的組件在資料庫中存儲數據的任何功能性組件。EMS客戶端,例如圖1所示的EMS客戶端120和122,是指能夠與 EMS伺服器通信並且能夠指示EMS伺服器在網絡元件上施行服務的任何 軟體或硬體組件。雖然在圖1中只示出了兩個EMS客戶端,即EMS客戶端120和122,但在各種實施例中任何數目的EMS客戶端都可被操作性地 連接到特定EMS伺服器。EMS客戶端可以但不一定要被配置為指示EMS 在網絡元件上施行不同於另一 EMS客戶端的不同服務。NMS伺服器,例如圖1所示的NMS伺服器130,是指能夠監視一個 或多個EMS伺服器的操作狀態的任何硬體或軟體組件。管理員可利用 NMS伺服器來監視一個或多個以及作為EMS伺服器之一所供給的服務的 主體的任何網絡元件的狀態。雖然圖1隻示出一個NMS伺服器,即NMS 伺服器130,但實施例可部署任何數目的NMS伺服器,包括零個NMS服 務器。通信鏈路140和142可由提供NMS伺服器與EMS伺服器之間的數據 交換的任何介質或機構實現。通信鏈路150和152可由提供EMS客戶端 與EMS伺服器之間的數據交換的任何介質或機構實現。通信鏈路160、 162和164可由提供EMS伺服器與網絡元件之間的數據交換的任何介質或 機構實現。通信鏈路140、 142、 150、 152、 160、 162和164的示例包括 但不限於諸如區域網(LAN)、廣域網(WAN)、乙太網或網際網路之類 的網絡或者一個或多個陸地、衛星或無線鏈路。通用EMS框架圖2是圖示一個實施例的高級功能性步驟的流程圖200。在執行流程 圖200所示的步驟時,EMS伺服器可利用相同通用框架以類似的方式處理 在EMS伺服器與一個或多個EMS客戶端之間交換的涉及不同服務的訊 息。被配置為執行圖2所示的功能性步驟的EMS伺服器可使其操作被修 改,以在EMS伺服器的通用框架沒有任何變化的情況下在一個或多個網 絡元件上供給新的服務。下面將會參考圖3說明圖2的高級功能性步驟, 圖3是根據一個實施例的EMS伺服器的框圖。雖然圖2所示的步驟可用於處理從任何數目的EMS客戶端到EMS服 務器的任何數目的訊息,但是現在將描述處理單個訊息以在網絡元件上施 行特定服務的情形。在步驟210中,在EMS伺服器處從EMS客戶端接收 到用於在網絡元件上施行特定服務的訊息。EMS伺服器可被配置為將一種或多種服務供給到一個或多個網絡元件上。例如,參考圖3, EMS伺服器 110可從EMS客戶端120接收到用於在網絡元件102上施行特定服務(例 如IP語音)的訊息。EMS伺服器110當前也可能正在網絡元件102上供 給若干種其他服務。在一個實施例中,EMS伺服器利用暴露(expose)的API提供通用框 架,以幫助每個EMS客戶端與EMS伺服器之間的通信。例如,EMS服務 器IIO可提供向每個EMS客戶端暴露一個API的通用接口 320,該API允 許每個EMS客戶端120利用COBRA協議與EMS伺服器110交換訊息。 由於每個EMS客戶端120利用通用接口 320與EMS伺服器110交換訊 息,因此每個EMS客戶端120可以以相同的方式與EMS伺服器110交換 訊息,而不論哪種服務與該訊息相關聯。在一個實施例中,在步驟210中EMS伺服器所接收的訊息被利用 COBRA協議發送。在另一個實施例中,通用接口 320被配置為利用諸如 COBRA、 HTTP或SSH之類的多種傳輸協議從EMS客戶端接收訊息。步驟210中接收到的訊息包含描述要在網絡元件上施行的特定服務的 服務數據。例如,如果要在網絡元件上施行的特定服務是IP語音,則服務 數據包含描述IP語音服務並且描述其將如何被部署在網絡元件上的數據。 在執行步驟210之後,處理進行到步驟220。在步驟220中,創建和存儲存儲步驟210中接收到的訊息內所包含的 服務數據的通用記錄的實例。通用記錄是能夠存儲與任何服務相關聯的服 務數據的任何記錄。例如,通用記錄可用以下偽代碼實現struct Requeststring clientName; OperationTag operation; RecordList configRecordList;在上述偽代碼示例中,clientName標識哪個客戶端向EMS伺服器發送 了服務數據,operation標識要執行的服務的操作,configRecordList是指存儲與操作相關的數據的名稱/值對的集合。上述偽代碼只是說明性的,因為 其他實施例可利用不同的格式或結構來創建通用記錄。在一個實施例中,存儲步驟210中接收到的訊息內所包含的服務數據的通用記錄的實例由通用引擎330創建。通用引擎330所創建的特定通用 記錄實例是遵從通用記錄的結構的新通用記錄。例如,如果在執行步驟 220時使用面向對象的技術,則通用記錄可在一個類中實現,而實例可在 通用記錄類的新實例中實現。通用引擎330可採用構造器來創建通用記錄 的實例。構造器是能夠創建通用記錄的實例的任何功能性組件。下面將會 更詳細描述構造器的操作。在構造通用記錄的實例之後,通用引擎330隨後將步驟210中接收到 的訊息內所包含的服務數據存儲在新創建的通用記錄的實例中。然後,通 用引擎330將具有服務數據的實例存儲在易失性或非易失性存儲器中。在一個實施例中,通用記錄可被構造為包括一種或多種特定方法。這 一種或多種特定方法可被用於對某一類型的服務數據執行不需要對其他類 型的服務數據執行的特殊處理。例如,如果XYZ型服務要求執行特殊操 作,但其他服務不要求執行該操作,則構造器構造具有執行該操作的一種 或多種特定方法的存儲服務數據的通用記錄的實例。從而,可通過執行實 例中所包括的一種或多種特定方法來對與XYZ型服務相關聯的服務數據 執行該操作。在通用記錄的實例中定義的特殊方法可根據需要由通用框架 310的各種組件執行。通用引擎330可利用構造器構造這一種或多種特定方法。構造器確定 與服務數據相關聯的對象類型。對象類型標識哪種類型的服務與服務數據 相關聯,因為每種服務具有不同對象類型的服務數據。如果確定與服務數 據相關聯的對象類型要求添加一種或多種特定方法,則構造器可構造實例 以包括該一種或多種特定方法。在其他實施例中,構造器可利用服務數據 內所包含的其他屬性來標識與服務數據相關聯的服務和/或作為作出有關是 否構造具有一種或多種特定方法的實例的確定的基礎。例如,服務數據可 包含標識一種或多種特定方法應當被包括在構造來存儲服務數據的實例中 的數據,例如標籤。在一個實施例中,在執行步驟220時,通用引擎330對服務數據執行驗證檢査,以確保服務數據遵從一組驗證規則。驗證規則可被存儲在位於通用引擎330處或可由通用引擎330訪問的位置處的持久性存儲裝置中。 可執行驗證檢査以確保在步驟210中的訊息中接收到的服務數據有效。如 果服務數據未通過一個或多個驗證規則,則EMS伺服器可通知發送了包 含服務數據的訊息的EMS客戶端服務數據包含一個或多個差錯。在執 行步驟220之後,處理進行到步驟230 。在步驟230中,對實例執行通用處理。注意,步驟230是可選的,某 些實施例不執行步驟230,而是在執行步驟220之後,處理直接進行到步 驟240。在執行步驟230的實施例中,對步驟220中創建的任何通用記錄 實例執行相同的通用處理,而不論哪種服務與該實例所存儲的服務數據相 關聯。換言之,如果兩個不同的實例各包含與不同服務相關聯的服務數 據,則仍對這兩個實例執行相同的通用處理。在一個實施例中,通用引擎 330執行步驟230。在一個實施例中,在步驟230中執行的通用處理包括將關於該實例的 信息記錄到持久性存儲裝置。所記錄的關於實例的信息包括日後可能有用 的關於實例的接收或內容的任何信息。例如,所記錄的關於實例的信息可 包括但不限於實例是在何時被接收到的,哪個EMS客戶端發送了包含 存儲在實例內的服務數據的訊息,以及存儲實例內的服務數據的內容。該 信息可被記錄到通用引擎330可訪問的任何持久性存儲裝置。例如,通用 引擎可與資料庫管理器350通信以將信息記錄在資料庫360中。在一個實施例中,在步驟230中執行的通用處理包括對與實例相關聯 的任何差錯執行差錯處理。在另一個實施例中,在步驟230中執行的通用 處理包括對實例執行一個或多個安全性檢査。例如,可檢査與發送了在步 驟210中接收到的訊息的用戶相關聯的一組許可,以確定用戶是否有足夠 的特權來發送包含在步驟210中接收到的服務數據的訊息。注意,在本發明的實施例中,在步驟230中執行的通用處理可包括上 述操作中的一種或多種。從而,在一個實施例中,步驟230的通用處理可 包括將關於實例的信息記錄到持久性存儲裝置、對實例執行一個或多個安全性檢査以及對與實例相關聯的任何差錯執行差錯處理。在執行步驟230之後,處理進行到步驟240。在步驟240中,基於哪種服務與存儲在實例中的服務數據相關聯,選 擇服務模塊來處理步驟220中創建的實例。在一個實施例中,在步驟240 中選擇的服務模塊被配置為處理存儲有與這樣的服務相關聯的服務數據的 通用記錄的實例,該服務和與存儲在實例中的服務數據相關聯的服務是相 同服務。例如,如果在步驟220中創建的通用記錄的實例存儲與IP語音服 務相關聯的服務數據,則在步驟240中選擇的服務模塊被配置為處理存儲 有與IP語音服務相關聯的服務數據的通用記錄的實例。從而,雖然EMS 伺服器110的通用框架310可包括任何數目的服務模塊340-344,但為使 EMS伺服器供給與存儲在實例內的服務數據相關聯的服務,EMS伺服器 必須具有被配置為處理存儲有與待處理實例具有相同類型的服務數據的通 用記錄實例的服務模塊。換言之,如果在步驟220中創建的通用記錄的實 例存儲有與服務ABC相關聯的服務數據,則EMS伺服器110必須包括被 配置為處理存儲有與服務ABC相關聯的服務數據的通用記錄實例的服務 模塊,以向網絡元件供給服務ABC。在另一個實施例中,在步驟240中,被選擇來處理在步驟220中創建 的實例的服務模塊是基於與存儲在實例中的服務數據相關聯的網絡元件的 類型的。在這種實施例中,特定服務模塊處理與特定類型的網絡元件相關 聯的所有通用記錄。從而,特定服務模塊能夠處理與用於特定類型的網絡 元件的多種服務相關聯的通用記錄。在執行步驟240之後,處理進行到步 驟250。在步驟250中,在步驟240中所選擇的服務模塊處處理實例,以產生 描述在網絡元件處處理服務數據的結果的結果數據。所選擇的服務模塊將 信息發送到存儲在實例中的服務數據所標識的一個或多個網絡元件。發送 到一個或多個網絡元件的信息使得這一個或多個網絡元件中的每一個能夠 接收該服務。在一個實施例中,服務數據標識系統100中的一個或多個網 絡元件中的哪些應當接收與服務數據相關聯的服務。在另一個實施例中, 通用引擎330維護標識網絡100中的一個或多個網絡元件中的哪些應當接收由EMS伺服器IIO所支持的每種服務的信息。在一個實施例中,所選擇的服務模塊通過創建包含存儲在實例內的服務數據的傳出(outbound) XML文檔來處理實例。傳出XML文檔被發送 到被標識為接收服務的一個或多個網絡元件。接收到傳出XML文檔的網 絡元件從傳出XML文檔讀取服務數據並處理服務數據。然後,處理了服 務數據的網絡元件創建包含描述在網絡元件處處理服務數據的結果的結果 數據的響應XML文檔。然後,創建了響應XML文檔的網絡元件將響應 XML文檔發送到EMS伺服器。EMS伺服器接收響應XML文檔並從響應XML讀取結果數據。EMS 伺服器創建新的通用記錄實例,然後,將結果數據存儲在剛才創建的通用 記錄的實例中。通過將結果數據存儲在通用記錄的實例中,描述在網絡元 件處處理任何服務的結果的結果數據可被通用框架310處理,這是因為通 用記錄的結構對於通用框架310的組件來說是已知的。在執行步驟250之 後,處理進行到步驟260。在步驟260中,存儲在步驟250中產生的結果數據。在一個實施例 中,在步驟250中創建來存儲結果數據的實例被處理以取得結果數據。在 一個實施例中,所選擇的服務模塊通過與資料庫管理器350通信以指示數 據庫管理器350將結果數據存儲在資料庫360中,來存儲結果數據。數據 庫360可被用於存儲結果數據,它是指能夠經久地存儲數據的任何持久性 存儲裝置。資料庫360的非限制性的說明性示例包括關係資料庫、分級數 據庫、面向對象的資料庫和多維資料庫。在一個實施例中,資料庫管理器350通過諮詢將通用記錄的欄位映射 到資料庫360中的特定列和表的一組信息,從而在資料庫360中存儲結果 數據。資料庫管理器350基於諮詢的該組信息來確定如何將結果數據存儲 在資料庫360中。資料庫管理器350可基於諮詢的該組信息自動地構造從 資料庫360取得或存儲數據所需的SQL査詢。該組信息可被存儲在資料庫 管理器350處,或存儲在資料庫管理器350可訪問的位置處。雖然以上已經參考用於在網絡元件上施行特定服務的單個訊息描述了 圖2所示的步驟,但是其他實施例也可處理從任何數目的EMS客戶端到EMS伺服器的任何數目的訊息。在一個實施例中,管理員可利用EMS客 戶端122來向EMS伺服器110發送一個或多個訊息,以使得EMS伺服器 向網絡元件102供給多種服務。在另一個實施例中,管理員可利用EMS客戶端122來向EMS伺服器 IIO傳輸一個或多個訊息,以使得EMS伺服器向多個網絡元件(例如網絡 元件102、 104和106)供給相同的服務。EMS伺服器110可被配置為向 網絡100中的任何網絡元件供給服務,而不論網絡元件的類型、型號或制 造者如何,這是因為EMS伺服器110的通用框架310可包括被配置為向 具有這些特性的網絡元件供給服務的特定服務模塊340。關於EMS伺服器 的通用框架310如何支持向任何網絡元件供給任何服務的額外描述在以下 題為"向EMS伺服器添加新服務"的部分中描述。在通用框架310處理通用記錄的實例時,由於處理的共通性可以產生 許多優點。包括向通用記錄的實例存儲數據以及從中取得數據的資料庫交 互可自動執行,因為資料庫管理器350被配置為從通用記錄的實例讀取數 據和向其寫入數據。類似地,數據轉換、差錯處理和請求/響應處理可以自動執行,因為所有服務數據都被存儲在通用記錄的實例中,而不論哪種服 務與服務數據相關聯。向EMS伺服器添加新服務通用框架310允許相對容易地以最低限度的時間需求在無需改變通用 框架310的情況下配置EMS伺服器以支持新服務的供給。圖4是圖示在 向EMS伺服器的通用框架添加新服務時的功能性步驟的流程圖。注意, 流程圖400中的步驟序列只是說明性的;其他實施例可以以任何順序執行 圖4所示的步驟序列。首先,在步驟410中,新服務的名稱被添加到EMS伺服器所支持的 服務的列表。步驟410可由用戶通過從EMS客戶端向EMS伺服器發送指 示EMS伺服器添加具有訊息內包含的名稱的新服務的訊息來執行。在一 個實施例中,EMS伺服器所支持的服務的列表在通用引擎330處被EMS 伺服器維護。EMS伺服器所支持的服務的列表在EMS伺服器初始化期間被EMS伺服器使用。EMS伺服器的初始化在下文中更詳細描述。在步驟420中,處理包含與新服務相關聯的服務數據的通用記錄的實 例的新服務模塊被添加到EMS伺服器的通用框架。在一個實施例中,步 驟420可由用戶通過從EMS客戶端向EMS伺服器發送指示EMS伺服器 根據訊息中包含的信息添加新服務模塊的訊息來執行。在一個實施例中,服務模塊處理針對特定服務和特定類型的網絡元件 的通用記錄的實例,例如, 一類網絡元件可包括特定製造者、型號或網絡 元件種類。在EMS伺服器的通用框架中,為EMS伺服器支持的每種新服 務以及新服務可能被供給到的每種特定類型的網絡元件創建新的服務模 塊。為了說明,假定與EMS客戶端120相關聯的用戶希望向EMS伺服器 IIO添加新服務XYZ,並且用戶希望網絡元件102、 104和106接收到該 服務。另外還假定網絡元件102和104具有相同類型,但網絡元件106具 有與網絡元件102和104不同的類型。因此,將需要向EMS伺服器IIO的 通用框架310添加兩個新的服務模塊,這是因為(a)為向網絡元件102和 104供給服務XYZ需要一個服務模塊,以及(b)為向網絡元件106供給 服務XYZ需要另一個服務模塊。在步驟430中,資料庫被更新以容納與新服務相關聯的數據。可通過 向資料庫360添加具有被配置為存儲與新服務相關聯的數據的一列或多列 的表來執行步驟430。資料庫管理器350可基於從用戶接收到的訊息中所 包含的描述新服務的數據需求的信息來執行步驟430。在步驟440中,將通用記錄的欄位映射到資料庫中的特定表的一組信 息被更新,以反映新服務的結果數據被存儲在資料庫中何處。該組信息可 被存儲在資料庫管理器350處,或存儲在資料庫管理器350可訪問的位置 處。資料庫管理器350可基於從用戶接收到的訊息中所包含的描述新服務 的數據需求的信息來執行步驟440。在步驟450中,如果新服務要求包含與新服務相關聯的服務數據的通 用記錄的實例包括一種或多種特殊方法,則構造器被更新以創建具有一種 或多種特殊方法的通用記錄的實例。步驟450可由通用引擎330根據EMS伺服器接收到的發送自EMS客戶端的訊息中所包含的信息來執行。初始化EMS伺服器通用框架310使得EMS伺服器110能夠自動發現任何網絡元件的配 置信息,並將所發現的配置信息存儲在資料庫360中。EMS伺服器110可 在EMS伺服器110最初被開啟時執行自動發現,以利用EMS伺服器110 向其提供服務的每個網絡元件的配置信息來填充資料庫360。換言之,在 執行圖2所示的功能性步驟之前,EMS伺服器已經自動發現了 EMS服務 器向其提供服務的任何網絡元件的配置信息。圖5是圖示根據一個實施例在取得一個或多個網絡元件的配置信息時 涉及的功能性步驟的流程圖。注意,流程圖500中的步驟序列只是說明性 的;其他實施例可以以任何順序執行圖5所示的步驟序列。在步驟510中,在於步驟210中接收到訊息之前,EMS伺服器利用所 支持服務的列表來確定EMS伺服器支持哪些服務。所支持服務的列表還 描述網絡100中的哪些網絡元件與EMS伺服器所支持的一組服務中的每 一種相關聯。在一個實施例中,通用引擎330維持所支持服務的列表。在步驟520中,EMS伺服器向EMS伺服器向其供給服務的每個網絡 元件發送對配置信息的請求。在接收到請求後,在每個接收到請求的網絡 元件處處理請求。在網絡元件處理請求之後,網絡元件向EMS伺服器發 送描述網絡元件的當前操作配置的配置信息。在步驟530中,EMS伺服器從至少一個網絡元件接收到描述發送了配 置信息的網絡元件的當前操作配置的配置信息。換言之,EMS伺服器接收 到來自在步驟520中EMS伺服器向其請求配置信息的至少一個網絡元件 的描述當前操作配置的配置信息。在步驟540中,接收到的描述每個網絡元件的當前操作配置的配置信 息被存儲在資料庫中。例如,接收到的配置信息可被存儲在資料庫360 中。然後,當EMS客戶端對特定網絡元件作出配置改變或EMS伺服器需 要特定網絡元件的當前操作配置以在該特定網絡元件上部署服務時,EMS 伺服器可通過諮詢資料庫360來取得該特定網絡元件的當前操作配置。實現機構圖6是圖示可以實現EMS伺服器110的實施例的計算機系統600的框 圖。計算機系統600包括總線602或用於傳輸信息的其他通信機構和耦合 到總線602用於處理信息的處理器604。計算機系統600還包括主存儲器 606,如隨機存取存儲器(RAM)或其他動態存儲設備,其耦合到總線 602,用於存儲信息和處理器604執行的指令。主存儲器606還可用於存 儲在處理器604要執行的指令的執行期間的臨時變量或其他中間信息。計 算機系統600還包括只讀存儲器(ROM) 608或其他靜態存儲設備,其耦 合到總線602,用於存儲靜態信息和處理器604的指令。提供了諸如磁碟 或光碟之類的存儲設備610,其耦合到總線602,用於存儲信息和指令。計算機系統600可以經由總線602耦合到顯示器612,顯示器612例 如是陰極射線管(CRT),用於向計算機用戶顯示信息。包括字母數字鍵 和其他鍵的輸入設備614耦合到總線602,用於將信息和命令選擇傳輸到 處理器604。另一類用戶輸入設備是光標控制616,如滑鼠、跟蹤球、或 光標方向鍵,其用於將方向信息和命令選擇傳輸到處理器604,並控制顯 示器612上的光標移動。該輸入設備一般具有兩軸(第一軸(例如x)和 第二軸(例如y))上的兩個自由度,其允許設備指定平面中的位置。本發明涉及使用計算機系統600來實現這裡描述的技術。根據本發明 的一個實施例,這些技術是響應於處理器604執行包含在主存儲器606中 的一條或多條指令的一個或多個序列而由計算機系統600執行的。這些指 令可以從另一個機器可讀介質(如存儲設備610)讀取到主存儲器606 中。包含在主存儲器606中的指令序列的執行使得處理器604執行這裡描 述的過程步驟。在替換實施例中,硬連線電路可用來替代軟體指令或與軟 件指令相組合以實現本發明。從而,本發明的實施例並不限於硬體電路和 軟體的任何特定組合。這裡所用的術語"機器可讀介質"指參與提供使得機器以特定方式工 作的數據的任何介質。在利用計算機系統600實現的實施例中,例如在向 處理器604提供指令以供執行時,涉及各種機器可讀介質。這種介質可以採取許多形式,包括但不限於非易失性介質、易失性介質和傳輸介質。非 易失性介質例如包括光碟或磁碟,如存儲設備610。易失性介質包括動態存儲器,如主存儲器606。傳輸介質包括同軸電纜、銅線和光纖,包括包 含總線602的線路。傳輸介質還可以採用聲波或光波的形式,如在無線電 波和紅外數據通信期間生成的聲波或光波。機器可讀介質的常見形式例如包括軟盤、柔性盤、硬碟、磁帶、或任 何其他磁介質、CD-ROM、任何其他光介質、穿孔卡、紙帶、任何其他具 有孔圖案的物理介質、RAM、 PROM、和EPROM、 FLASH-EPROM、任 何其他存儲器晶片或存儲器盒、這裡所描述的載波、或者計算機可以讀取 的任何其他介質。機器可讀介質的各種形式可用來承載供處理器604執行的一條或多條 指令的一個或多個序列。例如,指令可以最初承載在遠程計算機的磁碟 上。遠程計算機可以將指令加載到其動態存儲器中,並利用數據機經 由電話線發送指令。位於計算機系統600本地的數據機可以接收電話 線上的數據,並使用紅外發送器將數據轉換為紅外信號。紅外檢測器可以 接收紅外信號中承載的數據,並且適當的電路可以將數據放到總線602 上。總線602將數據攜帶到主存儲器606,處理器604從主存儲器606取 得數據並執行指令。主存儲器606接收的指令可以可選地在處理器604執 行之前或之後存儲在存儲設備610上。計算機系統600還包括耦合到總線602的通信接口 618。通信接口 618提供了到連接到本地網絡622的網絡鏈路620的雙向數據通信耦合。 例如,通信接口 618可以是綜合業務數字網絡(ISDN)卡或數據機, 以提供到相應類型的電話線的數據通信連接。作為另一個示例,通信接口 618可以是區域網(LAN)卡,以提供到兼容LAN的數據通信連接。也可 以實現無線鏈路。在任何這樣的實現方式中,通信接口 618發送和接收電 的、電磁的或光信號,這些信號承載了代表各類信息的數字數據流。網絡鏈路620 —般通過一個或多個網絡提供到其他數據服務的數據通 信。例如,網絡鏈路620可以通過本地網絡622提供到主機計算機624的 連接,或者提供到由網際網路服務供應商(ISP) 626操作的數據設備的連接。ISP 626又通過環球分組數據通信網絡(現在通常稱為"網際網路")628提供數據通信服務。本地網絡622和網際網路628都使用電的、電磁的 或光信號,這些信號承載數字數據流。經過各種網絡的信號和網絡鏈路 620上並且經過通信接口 618的信號(其承載去往和來自計算機系統600 的數字數據)是傳輸信息的載波的示例性形式。計算機系統600可以通過網絡、網絡鏈路620和通信接口 618發送消 息和接收包括程序代碼在內的數據。在網際網路示例中,伺服器630可以通 過網際網路628、 ISP 626、本地網絡622和通信接口 618發送對應用程式的 請求代碼。接收代碼可由處理器604在接收時執行,和/或存儲在存儲設備610或 其他非易失性存儲介質中以供隨後執行。以這種方式,計算機系統600可 以獲得載波形式的應用代碼。在前述說明書中,已參考大量的具體細節描述了本發明的實施例,這 些細節可依據實現方式而有所不同。從而,關於本發明的限定以及申請人 希望對本發明的限定的唯一且排他的指標是本申請提出權利要求時的特定 形式的權利要求集合,其中包括任何後續的改動。在這裡對於包含在這些 權利要求中的術語明確給出的任何定義都應當決定這種術語用在權利要求 中時的含義。因而,未在權利要求中明確闡述的任何限制、要素、屬性、 特徵、優點都不應當以任何方式限制這種權利要求的範圍。因此,說明書 和附圖是示例性的,而非限制性的。
權利要求
1. 一種由機器實現的方法,包括在網絡元件管理系統(「EMS」)伺服器處從EMS客戶端接收用於在網絡元件上施行特定服務的訊息,其中所述訊息包含描述要在所述網絡元件上施行的所述特定服務的服務數據,並且所述特定服務是一組服務之一;創建和存儲包括所述服務數據的通用記錄的實例;基於哪種服務與存儲在所述實例中的服務數據相關聯,從一組服務模塊中確定所選服務模塊來處理所述實例,其中所述所選服務模塊被配置為處理存儲有與所述特定服務相關聯的服務數據的所述通用記錄的實例;以及在所述所選服務模塊處處理所述實例以產生描述在所述網絡元件處處理所述服務數據的結果的結果數據。
2. 如權利要求1所述的方法,還包括 將所述結果數據存儲在持久性存儲裝置中。
3. 如權利要求1所述的方法,還包括對所述實例執行通用處理,其中對所述通用記錄的任何實例執行相同 的通用處理,而不論哪種服務與所述實例所存儲的服務數據相關聯。
4. 如權利要求3所述的方法,其中執行通用處理的步驟包括將關於所述實例的信息記錄到持久性存儲裝置。
5. 如權利要求3所述的方法,其中執行通用處理的步驟包括對所述實例執行一個或多個安全性檢查。
6. 如權利要求3所述的方法,其中執行通用處理的步驟包括對與所述實例相關聯的任何差錯執行差錯處理。
7. 如權利要求3所述的方法,其中執行通用處理的步驟包括將關於所述實例的信息記錄到持久性存儲裝置; 對所述實例執行一個或多個安全性檢査;以及 對與所述實例相關聯的任何差錯執行差錯處理。
8. 如權利要求1所述的方法,其中所述EMS客戶端是一組EMS客戶 端之一,並且該組EMS客戶端中的每個EMS客戶端在所述網絡元件上施 行該組服務中的不同服務。
9. 如權利要求1所述的方法,其中創建和存儲所述通用記錄的實例的 步驟還包括-確定所述服務數據的對象類型;以及基於所述對象類型構造所述實例以包括一種或多種特定方法。
10. 如權利要求1所述的方法,其中創建和存儲所述通用記錄的實例 的步驟還包括對所述服務數據執行驗證檢査以確保所述服務數據遵從一組驗證規則。
11. 如權利要求1所述的方法,其中所述實例是第一實例,並且所述 處理步驟還包括創建包含存儲在所述第一實例內的所述服務數據的傳出XML文檔; 將所述傳出XML文檔發送到所述網絡元件;接收來自所述網絡元件的響應XML文檔,其中所述響應XML文檔包 含所述結果數據;以及在所述EMS伺服器處,構造包含所述結果數據的第二實例。
12. 如權利要求11所述的方法,其中將所述結果數據存儲在資料庫中 的步驟包括處理所述第二實例以從所述第二實例取得所述結果數據。
13. 如權利要求1所述的方法,其中所述存儲步驟包括 諮詢將所述通用記錄的欄位映射到所述資料庫中的特定表的一組信息;以及基於該組信息確定如何存儲所述結果數據。
14. 如權利要求1所述的方法,還包括通過執行以下步驟來將所述EMS伺服器配置為支持該組服務中的新服務向所述EMS添加處理包含與所述新服務相關聯的服務數據的通用記錄的實例的新服務模塊;更新資料庫以容納與所述新服務相關聯的數據; 如果所述新服務要求包含與所述新服務相關聯的服務數據的通用記錄的實例包括一種或多種特殊方法,則添加創建具有所述一種或多種特殊方法的通用記錄的實例的構造器;以及更新將所述通用記錄的欄位映射到所述資料庫中的特定表的一組信息以反映所述新服務的結果數據被存儲在所述資料庫中何處。
15. 如權利要求1所述的方法,還包括通過將新服務添加到所述EMS伺服器支持的服務的列表中,來將所 述EMS伺服器配置為支持所述新服務。
16. 如權利要求1所述的方法,其中所述網絡元件是一個或多個網絡 元件之一,並且還包括在接收所述訊息之前,所述EMS伺服器利用所支持服務的列表來確 定該組服務中的哪些服務被所述EMS伺服器所支持,其中所述所支持服 務的列表還描述所述一個或多個網絡元件的組中的哪些網絡元件與該組服 務中的每種服務相關聯;從所述EMS伺服器向所述一個或多個網絡元件中的每一個發送對請 求的接收者的配置信息的請求;從所述一個或多個網絡元件中的至少一個接收描述發送了配置信息的 網絡元件的當前操作配置的配置信息;以及將接收到的配置信息存儲在所述資料庫中。
17. 如權利要求1所述的方法,還包括定義可定製方法以處理存儲有與該組服務中的特定服務相關聯的服務 數據的實例。
18. 如權利要求17所述的方法,還包括確定所述實例是否存儲有與所述特定服務相關聯的服務數據;以及 僅當確定所述實例存儲有與所述特定服務相關聯的服務數據時,才對 所述實例執行所述可定製方法。
19. 一種用於向網絡元件供給服務的方法,包括利用EMS伺服器在所述網絡元件上部署所述服務,其中所述EMS伺服器包括將接收自EMS客戶端的服務數據存儲在通 用記錄的實例中的通用框架,並且所述通用框架包括通用引擎和一組服務 模塊;其中所述EMS伺服器利用所述通用引擎來處理所述實例,而不論哪 種服務與所述服務數據相關聯,並且所述通用引擎記錄關於所述實例的信 息,並且其中所述EMS伺服器基於哪種服務與存儲在所述實例中的服務數據 相關聯,從該組服務模塊中選擇特定服務模塊來處理所述實例。
20. —種承載有一個或多個指令序列的機器可讀介質,其中由一個或 多個處理器執行所述一個或多個指令序列使得所述一個或多個處理器執行 以下步驟在網絡元件管理系統("EMS")伺服器處從EMS客戶端接收用於 在網絡元件上施行特定服務的訊息,其中所述訊息包含描述要在所述網絡 元件上施行的所述特定服務的服務數據,並且所述特定服務是一組服務之創建和存儲包括所述服務數據的通用記錄的實例;基於哪種服務與存儲在所述實例中的服務數據相關聯,從一組服務模 塊中確定所選服務模塊來處理所述實例,其中所述所選服務模塊被配置為 處理存儲有與所述特定服務相關聯的服務數據的所述通用記錄的實例;以 及在所述所選服務模塊處處理所述實例以產生描述在所述網絡元件處處 理所述服務數據的結果的結果數據。
21. 如權利要求20所述的機器可讀介質,其中由所述一個或多個處理 器執行所述一個或多個指令序列還使得所述一個或多個處理器執行以下步驟將所述結果數據存儲在持久性存儲裝置中。
22. 如權利要求20所述的機器可讀介質,其中由所述一個或多個處理 器執行所述一個或多個指令序列還使得所述一個或多個處理器執行以下步對所述實例執行通用處理,其中對所述通用記錄的任何實例執行相同 的通用處理,而不論哪種服務與所述實例所存儲的服務數據相關聯。
23. 如權利要求22所述的機器可讀介質,其中執行通用處理的步驟包括將關於所述實例的信息記錄到持久性存儲裝置。
24. 如權利要求22所述的機器可讀介質,其中執行通用處理的步驟包括對所述實例執行一個或多個安全性檢查。
25. 如權利要求22所述的機器可讀介質,其中執行通用處理的步驟包括對與所述實例相關聯的任何差錯執行差錯處理。
26. 如權利要求22所述的機器可讀介質,其中執行通用處理的步驟包括將關於所述實例的信息記錄到持久性存儲裝置; 對所述實例執行一個或多個安全性檢査;以及 對與所述實例相關聯的任何差錯執行差錯處理。
27. 如權利要求20所述的機器可讀介質,其中所述EMS客戶端是一 組EMS客戶端之一,並且該組EMS客戶端中的每個EMS客戶端在所述 網絡元件上施行該組服務中的不同服務。
28. 如權利要求20所述的機器可讀介質,其中創建和存儲所述通用記 錄的實例的步驟還包括確定所述服務數據的對象類型;以及基於所述對象類型構造所述實例以包括一種或多種特定方法。
29. 如權利要求20所述的機器可讀介質,其中創建和存儲所述通用記 錄的實例的步驟還包括對所述服務數據執行驗證檢查以確保所述服務數據遵從一組驗證規則。
30. 如權利要求20所述的機器可讀介質,其中所述實例是第一實例,並且所述處理步驟還包括創建包含存儲在所述第一實例內的所述服務數據的傳出XML文檔; 將所述傳出XML文檔發送到所述網絡元件;接收來自所述網絡元件的響應XML文檔,其中所述響應XML文檔包 含所述結果數據;以及在所述EMS伺服器處,構造包含所述結果數據的第二實例。
31. 如權利要求30所述的機器可讀介質,其中將所述結果數據存儲在 資料庫中的步驟包括處理所述第二實例以從所述第二實例取得所述結果數據。
32. 如權利要求20所述的機器可讀介質,其中所述存儲步驟包括 諮詢將所述通用記錄的欄位映射到所述資料庫中的特定表的一組信息;以及基於該組信息確定如何存儲所述結果數據。
33. 如權利要求20所述的機器可讀介質,還包括 通過執行以下步驟來將所述EMS伺服器配置為支持該組服務中的新服務向所述EMS添加處理包含與所述新服務相關聯的服務數據的通 用記錄的實例的新服務模塊;更新資料庫以容納與所述新服務相關聯的數據;如果所述新服務要求包含與所述新服務相關聯的服務數據的通用 記錄的實例包括一種或多種特殊方法,則添加創建具有所述一種或多種特 殊方法的通用記錄的實例的構造器;以及更新將所述通用記錄的欄位映射到所述資料庫中的特定表的一組 信息以反映所述新服務的結果數據被存儲在所述資料庫中何處。
34. 如權利要求20所述的機器可讀介質,其中由所述一個或多個處理 器執行所述一個或多個指令序列還使得所述一個或多個處理器執行以下步- 通過將新服務添加到所述EMS伺服器支持的服務的列表中,來將所 述EMS伺服器配置為支持所述新服務。
35. 如權利要求20所述的機器可讀介質,其中所述網絡元件是一個或 多個網絡元件之一,並且由所述一個或多個處理器執行所述一個或多個指令序列還使得所述一個或多個處理器執行以下步驟在接收所述訊息之前,所述EMS伺服器利用所支持服務的列表來確 定該組服務中的哪些服務被所述EMS伺服器所支持,其中所述所支持服 務的列表還描述所述一個或多個網絡元件的組中的哪些網絡元件與該組服 務中的每種服務相關聯;從所述EMS伺服器向所述一個或多個網絡元件中的每一個發送對請 求的接收者的配置信息的請求;從所述一個或多個網絡元件中的至少一個接收描述發送了配置信息的 網絡元件的當前操作配置的配置信息;以及將接收到的配置信息存儲在所述資料庫中。
36. 如權利要求20所述的機器可讀介質,其中由所述一個或多個處理 器執行所述一個或多個指令序列還使得所述一個或多個處理器執行以下步 驟定義可定製方法以處理存儲有與該組服務中的特定服務相關聯的服務 數據的實例。
37. 如權利要求36所述的機器可讀介質,其中由所述一個或多個處理 器執行所述一個或多個指令序列還使得所述一個或多個處理器執行以下步驟確定所述實例是否存儲有與所述特定服務相關聯的服務數據;以及 僅當確定所述實例存儲有與所述特定服務相關聯的服務數據時,才對 所述實例執行所述可定製方法。
38. —種承載有用於向網絡元件供給服務的一個或多個指令序列的機 器可讀介質,其中由一個或多個處理器執行所述一個或多個指令序列使得 所述一個或多個處理器執行以下步驟利用EMS伺服器在所述網絡元件上部署所述服務, 其中所述EMS伺服器包括將接收自EMS客戶端的服務數據存儲在通 用記錄的實例中的通用框架,並且所述通用框架包括通用引擎和一組服務模塊;其中所述EMS伺服器利用所述通用引擎來處理所述實例,而不論哪 種服務與所述服務數據相關聯,並且所述通用弓1擎記錄關於所述實例的信 息,並且其中所述EMS伺服器基於哪種服務與存儲在所述實例中的服務數據 相關聯,從該組服務模塊中選擇特定服務模塊來處理所述實例。
39. —種設備,包括用於在網絡元件管理系統("EMS")伺服器處從EMS客戶端接收 用於在網絡元件上施行特定服務的訊息的裝置,其中所述訊息包含描述要 在所述網絡元件上施行的所述特定服務的服務數據,並且所述特定服務是 一組服務之一;用於創建和存儲包括所述服務數據的通用記錄的實例的裝置; 用於基於哪種服務與存儲在所述實例中的服務數據相關聯,從一組服 務模塊中確定所選服務模塊來處理所述實例的裝置,其中所述所選服務模 塊被配置為處理存儲有與所述特定服務相關聯的服務數據的所述通用記錄 的實例;以及用於在所述所選服務模塊處處理所述實例以產生描述在所述網絡元件 處處理所述服務數據的結果的結果數據的裝置。
40. 如權利要求39所述的設備,還包括用於將所述結果數據存儲在持久性存儲裝置中的裝置。
41. 如權利要求39所述的設備,還包括用於對所述實例執行通用處理的裝置,其中對所述通用記錄的任何實 例執行相同的通用處理,而不論哪種服務與所述實例所存儲的服務數據相 關聯。
42. 如權利要求41所述的設備,其中所述用於執行通用處理的裝置包括用於將關於所述實例的信息記錄到持久性存儲裝置的裝置。
43. 如權利要求41所述的設備,其中所述用於執行通用處理的裝置包括用於對所述實例執行一個或多個安全性檢査的裝置。
44. 如權利要求41所述的設備,其中所述用於執行通用處理的裝置包括 ? 用於對與所述實例相關聯的任何差錯執行差錯處理的裝置。
45. 如權利要求41所述的設備,其中所述用於執行通用處理的裝置包括用於將關於所述實例的信息記錄到持久性存儲裝置的裝置; 用於對所述實例執行一個或多個安全性檢査的裝置;以及 用於對與所述實例相關聯的任何差錯執行差錯處理的裝置。
46. 如權利要求39所述的設備,其中所述EMS客戶端是一組EMS客 戶端之一,並且該組EMS客戶端中的每個EMS客戶端在所述網絡元件上 施行該組服務中的不同服務。
47. 如權利要求39所述的設備,其中所述用於創建和存儲所述通用記 錄的實例的裝置還包括用於確定所述服務數據的對象類型的裝置;以及 用於基於所述對象類型構造所述實例以包括一種或多種特定方法的裝置。
48. 如權利要求39所述的設備,其中用於創建和存儲所述通用記錄的 實例的裝置還包括用於對所述服務數據執行驗證檢查以確保所述服務數據遵從一組驗證 規則的裝置。
49. 如權利要求39所述的設備,其中所述實例是第一實例,並且所述 用於處理的裝置還包括用於創建包含存儲在所述第一實例內的所述服務數據的傳出XML文 檔的裝置;用於將所述傳出XML文檔發送到所述網絡元件的裝置; 用於接收來自所述網絡元件的響應XML文檔的裝置,其中所述響應 XML文檔包含所述結果數據;以及用於在所述EMS伺服器處,構造包含所述結果數據的第二實例的裝置。
50. 如權利要求49所述的設備,其中所述用於將所述結果數據存儲在 資料庫中的裝置包括-用於處理所述第二實例以從所述第二實例取得所述結果數據的裝置。
51. 如權利要求39所述的設備,其中所述用於存儲的裝置包括 用於諮詢將所述通用記錄的欄位映射到所述資料庫中的特定表的一組信息的裝置;以及用於基於該組信息確定如何存儲所述結果數據的裝置。
52. 如權利要求39所述的設備,還包括用於通過執行以下步驟來將所述EMS伺服器配置為支持該組服務中 的新服務的裝置向所述EMS添加處理包含與所述新服務相關聯的服務數據的通 用記錄的實例的新服務模塊;更新資料庫以容納與所述新服務相關聯的數據;如果所述新服務要求包含與所述新服務相關聯的服務數據的通用 記錄的實例包括一種或多種特殊方法,則添加創建具有所述一種或多種特 殊方法的通用記錄的實例的構造器;以及更新將所述通用記錄的欄位映射到所述資料庫中的特定表的一組 信息以反映所述新服務的結果數據被存儲在所述資料庫中何處。
53. 如權利要求39所述的設備,還包括-用於通過將新服務添加到所述EMS伺服器支持的服務的列表中,來 將所述EMS伺服器配置為支持所述新服務的裝置。
54. 如權利要求39所述的設備,其中所述網絡元件是一個或多個網絡 元件之一,並且還包括用於在接收所述訊息之前,利用所支持服務的列表來確定該組服務中 的哪些服務被所述EMS伺服器所支持的裝置,其中所述所支持服務的列 表還描述所述一個或多個網絡元件的組中的哪些網絡元件與該組服務中的 每種服務相關聯;用於從所述EMS伺服器向所述一個或多個網絡元件中的每一個發送對請求的接收者的配置信息的請求的裝置;用於從所述一個或多個網絡元件中的至少一個接收描述發送了配置信息的網絡元件的當前操作配置的配置信息的裝置;以及用於將接收到的配置信息存儲在所述資料庫中的裝置。
55. 如權利要求39所述的設備,還包括用於定義可定製方法以處理存儲有與該組服務中的特定服務相關聯的 服務數據的實例的裝置。
56. 如權利要求55所述的設備,還包括用於確定所述實例是否存儲有與所述特定服務相關聯的服務數據的裝置;以及用於僅當確定所述實例存儲有與所述特定服務相關聯的服務數據時, 才對所述實例執行所述可定製方法的裝置。
57. —種用於向網絡元件供給服務的設備,包括用於利用EMS伺服器在所述網絡元件上部署所述服務的裝置, 其中所述EMS伺服器包括將接收自EMS客戶端的服務數據存儲在通用記錄的實例中的通用框架,並且所述通用框架包括通用引擎和一組服務模塊;用於處理所述實例而不論哪種服務與所述服務數據相關聯的裝置; 用於記錄關於所述實例的信息的裝置,以及用於基於哪種服務與存儲在所述實例中的服務數據相關聯,從該組服 務模塊中選擇特定服務模塊來處理所述實例的裝置。
58. —種包括存儲有指令的存儲器的設備,所述指令在被一個或多個 處理器執行時,使得所述一個或多個處理器執行以下步驟在網絡元件管理系統("EMS")伺服器處從EMS客戶端接收用於 在網絡元件上施行特定服務的訊息,其中所述訊息包含描述要在所述網絡 元件上施行的所述特定服務的服務數據,並且所述特定服務是一組服務之創建和存儲包括所述服務數據的通用記錄的實例; 基於哪種服務與存儲在所述實例中的服務數據相關聯,從一組服務模塊中確定所選服務模塊來處理所述實例,其中所述所選服務模塊被配置為 處理存儲有與所述特定服務相關聯的服務數據的所述通用記錄的實例;以 及在所述所選服務模塊處處理所述實例以產生描述在所述網絡元件處處 理所述服務數據的結果的結果數據。
59. 如權利要求58所述的設備,其中所述存儲器還包括在被所述一個或多個處理器執行時使得所述一個或多個處理器執行以下步驟的一條或多條附加指令將所述結果數據存儲在持久性存儲裝置中。
60. 如權利要求58所述的設備,其中所述存儲器還包括在被所述一個或多個處理器執行時使得所述一個或多個處理器執行以下步驟的一條或多條附加指令對所述實例執行通用處理,其中對所述通用記錄的任何實例執行相同 的通用處理,而不論哪種服務與所述實例所存儲的服務數據相關聯。
61. 如權利要求60所述的設備,其中執行通用處理的步驟包括將關於所述實例的信息記錄到持久性存儲裝置。
62. 如權利要求60所述的設備,其中執行通用處理的步驟包括對所述實例執行一個或多個安全性檢查。
63. 如權利要求60所述的設備,其中執行通用處理的步驟包括對與所述實例相關聯的任何差錯執行差錯處理。
64. 如權利要求60所述的設備,其中執行通用處理的步驟包括 將關於所述實例的信息記錄到持久性存儲裝置; 對所述實例執行一個或多個安全性檢査;以及 對與所述實例相關聯的任何差錯執行差錯處理。
65. 如權利要求58所述的設備,其中所述EMS客戶端是一組EMS客 戶端之一,並且該組EMS客戶端中的每個EMS客戶端在所述網絡元件上 施行該組服務中的不同服務。
66. 如權利要求58所述的設備,其中創建和存儲所述通用記錄的實例 的步驟還包括-確定所述服務數據的對象類型;以及基於所述對象類型構造所述實例以包括一種或多種特定方法。
67. 如權利要求58所述的設備,其中創建和存儲所述通用記錄的實例的步驟還包括對所述服務數據執行驗證檢査以確保所述服務數據遵從一組驗證規
68. 如權利要求58所述的設備,其中所述實例是第一實例,並且所述處理步驟還包括創建包含存儲在所述第一實例內的所述服務數據的傳出XML文檔; 將所述傳出XML文檔發送到所述網絡元件;接收來自所述網絡元件的響應XML文檔,其中所述響應XML文檔包 含所述結果數據;以及在所述EMS伺服器處,構造包含所述結果數據的第二實例。
69. 如權利要求59所述的設備,其中將所述結果數據存儲在資料庫中 的步驟包括處理所述第二實例以從所述第二實例取得所述結果數據。
70. 如權利要求58所述的設備,其中所述存儲步驟包括 諮詢將所述通用記錄的欄位映射到所述資料庫中的特定表的一組信息;以及基於該組信息確定如何存儲所述結果數據。
71. 如權利要求58所述的設備,其中所述存儲器還包括在被所述一個 或多個處理器執行時使得所述一個或多個處理器執行以下步驟的一條或多 條附加指令通過執行以下步驟來將所述EMS伺服器配置為支持該組服務中的新 服務向所述EMS添加處理包含與所述新服務相關聯的服務數據的通 用記錄的實例的新服務模塊;更新資料庫以容納與所述新服務相關聯的數據; 如果所述新服務要求包含與所述新服務相關聯的服務數據的通用記錄的實例包括一種或多種特殊方法,則添加創建具有所述一種或多種特 殊方法的通用記錄的實例的構造器;以及更新將所述通用記錄的欄位映射到所述資料庫中的特定表的一組 信息以反映所述新服務的結果數據被存儲在所述資料庫中何處。
72. 如權利要求58所述的設備,其中所述存儲器還包括在被所述一個或多個處理器執行時使得所述一個或多個處理器執行以下步驟的一條或多條附加指令通過將新服務添加到所述EMS伺服器支持的服務的列表中,來將所 述EMS伺服器配置為支持所述新服務。
73. 如權利要求58所述的設備,其中所述網絡元件是一個或多個網絡 元件之一,並且所述存儲器還包括在被所述一個或多個處理器執行時使得 所述一個或多個處理器執行以下步驟的一條或多條附加指令在接收所述訊息之前,所述EMS伺服器利用所支持服務的列表來確 定該組服務中的哪些服務被所述EMS伺服器所支持,其中所述所支持服 務的列表還描述所述一個或多個網絡元件的組中的哪些網絡元件與該組服 務中的每種服務相關聯;從所述EMS伺服器向所述一個或多個網絡元件中的每一個發送對請 求的接收者的配置信息的請求;從所述一個或多個網絡元件中的至少一個接收描述發送了配置信息的 網絡元件的當前操作配置的配置信息;以及將接收到的配置信息存儲在所述資料庫中。
74. 如權利要求58所述的設備,其中所述存儲器還包括在被所述一個 或多個處理器執行時使得所述一個或多個處理器執行以下步驟的一條或多 條附加指令定義可定製方法以處理存儲有與該組服務中的特定服務相關聯的服務 數據的實例。
75. 如權利要求74所述的設備,其中所述存儲器還包括在被所述一個 或多個處理器執行時使得所述一個或多個處理器執行以下步驟的一條或多 條附加指令確定所述實例是否存儲有與所述特定服務相關聯的服務數據;以及僅當確定所述實例存儲有與所述特定服務相關聯的服務數據時,才對 所述實例執行所述可定製方法。
76. —種用於向網絡元件供給服務的設備,包括存儲有指令的存儲 器,所述指令在被一個或多個處理器執行時,使得所述一個或多個處理器 執行以下步驟利用EMS伺服器在所述網絡元件上部署所述服務,其中所述EMS伺服器包括將接收自EMS客戶端的服務數據存儲在通 用記錄的實例中的通用框架,並且所述通用框架包括通用引擎和一組服務 模塊;其中所述EMS伺服器利用所述通用引擎來處理所述實例,而不論哪 種服務與所述服務數據相關聯,並且所述通用弓1擎記錄關於所述實例的信息,並且其中所述EMS伺服器基於哪種服務與存儲在所述實例中的服務數據 相關聯,從該組服務模塊中選擇特定服務模塊來處理所述實例。
全文摘要
提供了用於部署供給服務的EMS的方法和設備。用於在網絡元件上施行特定服務的訊息被從EMS客戶端發送到EMS伺服器。該訊息包含描述要在網絡元件上施行的特定服務的服務數據。EMS伺服器構造存儲有服務數據的通用記錄的實例。EMS伺服器基於哪種服務與存儲在實例中的服務數據相關聯來選擇用於處理實例的服務模塊。實例被處理以產生描述在網絡元件處處理服務數據的結果的結果數據。EMS伺服器將結果數據存儲在持久性存儲裝置中。該通用框架使得EMS客戶端與EMS伺服器之間的涉及不同服務的訊息能夠被以類似的方式處理。在無需修改通用框架的情況下,新服務被添加。
文檔編號G06F13/00GK101268450SQ200580019076
公開日2008年9月17日 申請日期2005年6月6日 優先權日2004年6月10日
發明者塞·V·拉瑪莫爾蒂, 尼拉·格珀爾, 戴維·D·沃德, 普拉薩德·彥爾那尼, 景·孫, 薩特亞那拉亞那·拉著 申請人:思科技術公司