TWI234977B - Methods and apparatus for dependency-based impact simulation and vulnerability analysis - Google Patents

Methods and apparatus for dependency-based impact simulation and vulnerability analysis Download PDF

Info

Publication number
TWI234977B
TWI234977B TW092124578A TW92124578A TWI234977B TW I234977 B TWI234977 B TW I234977B TW 092124578 A TW092124578 A TW 092124578A TW 92124578 A TW92124578 A TW 92124578A TW I234977 B TWI234977 B TW I234977B
Authority
TW
Taiwan
Prior art keywords
service
scope
computing environment
patent application
dependency
Prior art date
Application number
TW092124578A
Other languages
English (en)
Other versions
TW200417221A (en
Inventor
Alexander Keller
Original Assignee
Ibm
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ibm filed Critical Ibm
Publication of TW200417221A publication Critical patent/TW200417221A/zh
Application granted granted Critical
Publication of TWI234977B publication Critical patent/TWI234977B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/091Measuring contribution of individual network components to actual service level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5009Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
    • H04L41/5012Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF] determining service availability, e.g. which services are available at a certain point in time

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Description

1234977 五、發明說明(1) 本申請案與下列同時提出的美國專利申請有關,分別 為:代理人案號YOR920 020096US1標題:”分散式系統的真 因識別和問題確定之方法與裝置;,,代理人案號 Y 0 R 9 2 0 0 2 0 0 9 7 U S1標題:π分散式系統的相依性管理方法與 裝置;π代理人案號SOM920020003US1標題·· ”分散式應用與 服務的拓撲發現和說明之方法與裝置;”以及代理人案號 SOM920020004US1標題:”衝擊分析和問題確定之方法與裝 置;π上述揭示在此列出做為參考。 一、【發明所屬之技術領域】 本發明與为政式運鼻糸統有關,更特別地,係有關分 析和確定一模擬的服務中斷期間之潛在影響的方法與裝 置’且係基於此分散式運算系統的不同元件間之相依性。 二、【先前技術】 對於整合性故障管理來說,分散式運算系統的各元件 間之相依性辨認與追蹤變得愈來愈重要。應用程式、服務 及其元件係有賴各種不同的支援服務,其可能會被外包給 服務供應商。此外,新興基於網路的(基於全球資訊網)商 業架構允許基於網路的e化商業(電子商業)應用程式在執 行時間編輯。 必須了解的是,專有名詞”執行時間”一般泛指當一段 程式在電腦記憶體内被執行且係運作中的這段期間,與待 用(dormant)或僅僅置於電腦的硬碟中相對。因此,能夠在 4IBM0373TW.ptd 第6頁 1234977 五、發明說明(2) 執行期間編輯電子商業應用立 ^ 功能而不需關掉和重開李 〜未著有旎力執行此項 用程式。傳統上,電應Λ程式,且不需重新編譯應 課(翻譯成機械碼)->dt命週期為:寫程式碼_>編 時(on-the-f ly)"組譯幾段 而^有上述功能就可以"即 也就是說’不需關掉/編譯開而應^ 的其他複數:服務程式務:j j效::響提供給-客戶 務程式之元件間,也存在於-糸統的不同服 程式之客戶與飼服元件間:在=重f統和網域的服務 =服務程式被知類為子元件(dependent),而被苴 式所依賴的服務程式被歸類為父元件(邮⑽化二卜- 必須特別注意的是’一服務程式通常扮演此兩 (例如’ -名稱服務程式為許多應用和服務 其他服務程式的特殊功能,例如作業系統和— 、、周路協疋及機制)。此外,相依性關係具有遞移性 (transitive),也就是說,一給定元件的子元件,除了相 依於此元件本身之外,也相依於此元件之父元件。 相依性存在於一分散式系統的不同元件間,例如終端 用戶服務、系統服務、應用程式、和其邏輯與物理元件。 然而,由於在現今的系統中服務相依性係非明確地表現, 因此導致問題確定、隔離和解析等任務顯得特別困難。 在已知的軟體發展(如美國專利號4, 75 L 635和美國專
1234977 五、發明說明(3) 利號5,960,196)、維護(如美國專利號5,493,682 )及軟體包 裝(如美國專利號5, 835, 777)的領域中,處理個別的軟體元 件模組,可形成一程式套件的細微部分,且需要原始程式 碼的可得性以產生套件軟體產品。軟體開發人員可取得原 始程式碼,而該服務使用者則無法取得。這些發明主要針 對已包裝好的軟體產品。 電子電機工程師學會標準1 387. 2 (標題,,可攜式作業系 統介面(POS IX)系統管理,第二篇:軟體管理” IEEE. 1 995 ) k 出軟體分配(distribution) / 部署(deployment) / 安裝 (installation)。此IEEE標準定義一種機制以保證新軟體 元件(即將被安裝)不會與一現存的軟體安裝狀態衝突。此 IEEE標準定義三種關係:預先必要(prereqUisife)、排斥 必要(exrequisite)、同時必要(corequisite),這三種關 係有助於上述的相容性檢驗。這需要對欲安裝新軟體的每 一個系統皆個別執行此種檢驗。根據丨EEE標準,存在於其 他系統的軟體資產係不被列入考慮的。此外,丨EEE標準沒 有提及有關於實例應用及服務程式的問題,因此並不能代 表任何一種確定在執行時間元件間的相依性之方法。 開放群組(系統管理··分散式軟體管理,C a £規範 C701,開放群組,1 998年1月)延伸ΙΕΕΕ 1 387· 2,定義了幾 個命令(swinstall、swlist、swm〇dify 等等),係在一特 疋系統啟動的軟體安裝工具。開放群組也定義一種軟體定 義檔案格式,以確保前述命令所需的資訊可以自啟動命令 的系統中取得。IEEE 1 387· 2的不足之處(即侷限於一個& 1234977 五、發明說明(4) 一隔離系統,而沒有提及任何右 沾淡—女土、&门谈h 17有關執行時間元件間相依性 的確疋方法)也同樣出現在開放群組。 目前作業系統資產管理的普^ + .rnnM, T S理的實施方法(如IBM ΛΙΧ目標資 料官理者(ODM),L 1 nux Red Ha十太从—^ at套件管理者(RPM)或
Microsoft Windows 登錄編轾哭、# 儿 ^ ^ τγγγ 1〇〇7 ο,. ^ Τ ★科為)若非採用開放群組規範及 IΕ Ε Ε 1 3 8 7 · 2標準,即係以一直士 ^ ..m LU a / M專有的格式描述軟體資產清 早。因此,刖述限制也適用於曰此 ^ x i用於目則作業系統資產管理的實 施方法。 η λ cf ^ r;整個程式套件的電子軟體分配技術(如美國專利號 e/oy,525及美國專利號5, 721,824 )或有關更新(update)/ 修改u〇rrecu〇n)/校準(fix)/修補(patch)(如美國專利號 5, 999, 740、美國專利號5, 8〇5, 891及美國專利號 5, 953, 533 ),依照定義係被限定於(每次一個或很多個)實 體軟體套件的分配/部署/安裝,且不考慮應用程式的執行 P白此外此等技術一次處理一個系統,且不考慮應用 及服務程式的跨系統觀點。 有關確定現存軟體/硬體組態(如美國專利號 5, 867, 71 4)的衝突之技術也侷限於一個單一系統,且不考 慮執行時間的觀點。 雖然屬於事件關連(event c〇rreUti〇n)技術領域(例 如參考Gruschke et al· ,π整合事件管理:利用相依性圖 形的事件關連技術,DS0M , 98,1 9 98 &Katker et a 1 ·’ ”整合性故障管理的故障隔離及事件關連技術,i μ 97 ’ 1 997 )的現存專利著述(如美國專利號5, 917, 831)已經 第9頁 4IBM0373TlV.ptd 1234977 五、發明說明(5) 集中焦點在辨識及描述一專有格式的服務相依性,有關相 依性資訊如何在故障管理流程中的不同實體間被確實地交 換之議題,仍然無法釐清。既然參與外包應用程式的故障 管理之不同團隊,不可能皆使用相同的工具組,因此定義 開放格式以規定及交換相依性資訊是非常重要的。 再者,由於與涉及故障管理的分散式系統元件有關之 異質性(heterogeneity),在考慮現有技術的限制下,確定 一模擬系統失效(例如,服務中斷)的潛在影響是極端困難^ 的0 總括言之’在現存的技術中’已有一些關於確定軟體 產品間的關係之技術被描述及實行。這些現存的技術都有 一項或多項以下這些不足之處: (a) 他們只處理一軟體產品的安裝及配置方面之問題· 換言之’他們並沒有嘗試以設計及執行時間的觀點解決問 題; 式; 性 (b) 他們不處理巡查多重系統的端對端應用及服務程 換言之’他們只提出存在於一單一隔離系統的軟體特 (c) 軟體資產資訊係以一專有的格式描述,這導致 式各樣異質的系統間分享資訊顯得極端困難;以及 合 (d) 他們不能有效地辨識一模擬的服游丄 各 J 谈的服務中斷所造成之潛 在影響。 9 三 容 内 明發 η
1234977 五、發明說明(6) 本發明所提供的技術,係關於辨識依照一運算環境的 模擬元件失效所造成的潛在影響,以及確定有關模擬元件 失效的運算環境之脆弱性。藉由範例說明,此具有新穎性 的技術可以被應用在一個分散式運算環境。此運算環境也 可以是一個自主運算環境。 例如,以本發明的某一方面來看,一種以電腦為基礎 的技術,用於確定與運算環境相關的至少一特定元件土 (s u b j e c t c 〇 m p 〇 n e n t )之模擬條件所造成的潛在影響,此 術包含以下的步驟/運算。首先,運算環境中的一個或多 兀件,依照至少一個特定元件被識別,且與每—個被 元件相關的潛在條件狀態被確定。然後,資訊被呈現紙= 使用者,係基於對應條件狀態的一個或多個被辨二二 少一部份。 叫凡忏至 至現給使用者的資訊可以包含一種以脆弱性 係基於對應條件狀態的一個或多個被辨識元件至, 份。藉由範例說明’表示内容可以包含一個脆弱性八; 圖,標出與每-個或多個被辨識元件有關的; 性。此外,呈現給使用者的資訊可以包含可能=可症 終端使用者(end-user)列表、可能受到 ,」衫響之 及/或可能受到影響之主機列表。更進一牛'之70件列表、 者的資訊可以包含一種比較内容,係比較\說’呈現給使用 定元件之模擬條件所造成的潛在影燮土;父一個特 次確定。 仕〜β之第一次確定與第二
1234977 五、發明說明(7) 一個使用於此環境的真實 , 此環境的元件之虛擬如,-個代表-可能“ 多種的广:,多個元件的辨識,可以包含巡查 環境的元件之至少义之:少-部份,此關係有 至少-元件有關之完Γ二;二能夠計算一與運/ 別、一姓槿魅幻R 種形式呈現,包含一巧 、、口構類別及一運算類別。 藉由範例說明,一侗士从π 程式、中介軟是一種服務、一 式、-種乂、硬體、-種設備驅 有名1 ”亓杜],、統或一種有關運算環境的系統。不 1 並非 著下文蛘:月ϋ以上這些與其他目的、特色及優點, 描述時心:J:Ϊ說實施例而變得明顯易懂,閱 貝併參考隨後的附圖。 四、【實施方式】 本發ί文::内容將舉一分散式運算環境作為例證 t v算:’本發明係更廣泛地適用於“ 1 Mi ^ 查詢等)相依性的運算環境,JU + ^ 喊的確定、隔離和解析。 兄以大te 如同本文討論内容所引用,專有名詞”系 :一個不 「使用於 一種或 關運算 環境的 安裝及 !/能類 種應用 動程 過,專 將會隨 讀詳細 以解釋 種特殊 需要管 簡化問 1234977 五、發明說明(8) 個電腦系統、-個軟體系統及/或其組合。專 統也了以指一應用程式及/或一服務程式。因此,片^多 重糸統係指幾個系统的鱼人 ® ^ 士…®㈣甘/A 合。再者,專有名詞Π元件Π可以 才曰一個^、、、充、〔、本身或一個系統中的一個或多個部分。 如刖文所述,由於在現今的系統中服 確地表現’導致問題的確定、隔離和解析顯得特=月 解決此一問題需要確定及計算巡查不同系統和網域間的服 務與應用程式間之相依性,換言之,即建立一個"乂全門球的服 的”服務相依性模型,而且能導引系統管理者能夠透過結果 導向圖resultlnS directed graph)從頂至底及相反方 向。此種機制的需求=下述這兩個方案來作最好的說明。 第一種方案有關管理一般由網際網路或應用服務業者 USP/ASP)所提供的外包服務。外包服務導致分層服務體 系例如’應用服務業者的服務依賴由一網際網路服務 業者所提供的IP連結(網際網路協定連結),而一網際網路 服務業者的服務則依賴一電信業者的廣域網4。在每一 層丄服務係透過一服務存#點(SAP)而被搁取。服務存取點 界疋不同組織領域間的界線,且服務等級協定(SLAS)係在 此被被定義與遵守。通常上述作業係透過在每一層監測一 組由提供者所公佈的特定參數而完成。如果在一上層服務 發生中斷或性能降低的情形,就必須從頂至底詳細研究服 務階層以辨認問題的真因(root cause)。 /第一種方案有關無法”即時”處理的定期維護作業,因 而衫響服務及其客戶··例如,隨著新版作業系統而更新電
4IBM0373TW.ptd 第13頁 1234977 五、發明說明(9) 子郵件伺服器、網路設備更換或升級新版韌體等等。在所 有情況下,對於網路及伺服器管理者來說,重要的是預先 確定多少,甚至哪些服務及使用者會受到維護作業影響。 我們稱此項作業為衝擊分析(impact analysis)。 進一步以衝擊分析的概念引導出衝擊模擬及脆弱性分 析$概念。根據選擇一執行於一電腦系統的特定服務(或一 特疋服務執行例),衝擊模擬可以確定哪些其他服務、使用 者及主機系統可能被此服務的中斷所影響。這使得一管理 者能主動地模擬系統中斷及分析其環境的脆弱性,以辨認 現存的缺點、改善此缺點,進而驗證實施的改善作業是否 成功。當有系統地提供服務資料給一衝擊分析員,它就可
以建立此分散式系統環境的”脆弱性分布圖1丨 map)π 〇 J 前述的作業會隨著以下的因素而進一步加重。 相,性模型提供一種直接簡單的方式,以辨認一觀察 ,的問題之可能真因。如果_個系統的相依性圖形為已 圖形沿一受損的系統至其父元件(並存於同一主機 = 統)將揭露哪些實體可能已經失效。追探向 源(換言之’往向上的方向)將得到一服務的 即是遭受中斷的服務所可能導致失效的元 件。下列些問題需要提出來討論: (a)規模:在很多相關系統間的相依 =但可能變得非常大。從工程的觀點來看在單 = 置存放-完整的實例化相依性模型並不需要(且有時也不可 第14頁 4IBM0373T^.ptd 1234977 五、發明說明(10) 能)。由於相關相依性的遽增數量和動態變化,因而使得廉 用於網路管理平台的傳統機制’例如在平台資料庫保存— 實例化網路分布圖,無法應用於相依性分析。 此兩因素限制了以一’’網路管理模式”方法來部署應用 程式、服務及中介軟體的相依性模型之可行性。例如,典 型的外包商資料中心主控數量龐大(數千)之網路應用程式 及 > 料庫伺服器。這意味著同時執行的數量龐大之程式實 例’例如,網路應用程式及資料庫伺服器。一個能夠建構 一相依性模型的系統應該提供一些功能,允許適當規模可 擴充性,透過分配巡查與管理流程有關的系統相依性之儲 存與運鼻而達成。 口 (b)動態:主機管理的應用程式(執行於網路應用伺服 器中)、具有很短的生命週期,通常只有幾秒鐘。根據收到 的扃求,一網路應用程式的商業邏輯(通常以一個或多個爪 哇伺服小程式實行)被應用伺服器的爪哇伺服小程式具體 現、執行其任務,然後被爪哇伺服小程式引擎移除。因 2二,算在這些❺態實體間的相依性之系、统,需 ,枓正確性與取得資料而產生的工作負載間之做出權衡。 = 一貝^ ·異質性來自三種不同的形式。第一,提供 給客戶的服務間之差異很大。 應商參與提供一服務給一客戶的供 可能來自於不同的供庫商。最ί貫仃一服務的產品
Li::2 特定作業系統、網路協定、軟體產品 及挺供給客戶的服務。 ^
1234977
(d)相依性資料的手動維護:由於現今 提供適當的管理工呈(^1^1^1,11^ + +.、幻糸、•充通吊次有 一主機系站,一BE^ n),就算侷限於一單 戰。必須了解的是,名詞”工具"係指程式瑪n 明確(甚至是標準化)&介面以揭露一(受管 :特徵與性能,如此一來就能被管理應用程式戶:;子;,; :丄:管理資源取得,相依性資料也並沒有被 性資料至-特定管理元件,而且還要遵循一專有=相; t相依性資料係不完整與過時的(由於易出錯的手動流 程),另外由於不同的操作員各自獨立地輸入規則,而沒有 自動方法可以檢查規則基準的一致性,所以相依性 時候甚至是不一致的。 (e) 相依性分類法:相依性的概念係非常粗糙且需要重 新改善以發揮功效。相關的例子是相依性強度(指出有關在 一元件的父元件失效之情況下,此元件受影響的可能性及 程度)、嚴重性(在一個企業的目標及政策下,此相依性有 多重要)、形式化的程度(換言之,取得相依性有多困難)及 其他很多例子。因此有需要增加相依性的屬性以使其更能 適當地勝任;相對地,有需要將這些屬性反映在相依性表 示式(dependency representation)。 (f) 問題確定特徵:更需要有結合儲存在每一系統的區 域相依性圖形(local dependency graph)至一制式相依性 模型(uniform dependency model)的設施。此外,此類設
1234977 五、發明說明(12) 施應提供一應用程式介面(application programming i n ter face,AP I )以允許管理應用程式對相依性模型提出詢 問。這些詢問將被允許檢索一特定服務直接依賴的實體, 或遞迴地確疋一整組包括次父元件(sub-antecedent)的節 點。這個被管理應用程式所接收的節點列表,使得應用程 式能執行特定問題確定常式,以檢查這些服務程式是否正 在運作。 上述的討論顯示,建立一服務生命週期的三個不同階 段之對映表(mapping)是报重要的: (a ) —被k供給客戶的(抽象)服務,例如,,,網站代管 服務”、”管理儲存服務"、” IP連結服務”、”管理資料庫服 務”等等; ' (b) —服務的工具,換言之 即被用於提供服務的(複 網際網路應 數個)產品,例如,"IBM通用資料庫7· 1版 用伺服器3. 2版”;以及 身(C) 一工具的(複數個)執行例(instance),即流程或作 業,例如:"(^2常駐程式((^6111〇11)”、,,1^3常駐程式"。 雖然個別取得每一單一階段的資訊之作業係可實行 的,但是結合該等三個階段以忐糸—/ 右t Μ撕Μ ^ 徊1自杈^成為一個制式相依性模型係 ,滿挑我的,並且也沒有在先前的工作中做處理。此外, 在排除相依性資料的手動操作與維護需求時,有需要 一有效可計算之相依性模型以提出 及異質性需求。 扠出基礎W的規模、動態 如同本文以τ附圖戶斤圖*,本發明提出這些及其他需
求。也就 的分散式 模型”)。 中檢索相 資料之機 上述 得大量的 安裝工具 工具也能 1234977
:ί發:具有一些特徵,係在代表管理應用程式 70 之間’计算執行時間相依性(一,,相依性 价i Ϊ提供一種一般且制式的方式,I電腦系統 了,貝料,以提供一種檢索個別電腦系統的組態 」,或以一種機械可讀格式提供此類資料。 糸統有一個好處,就是可以從這些電腦系統中獲 應用/、服務官理資料,而不需在個別應用/服務上 不過,如果這種應用/服務工具可以取得,則此 夠被本發明所使用。 本發明所描述的系統之執行可以透過以下任一應用程 式觸發·· 一特定(管理)應用程式(如衝擊分析員、真因分析 員)、一網路管理平台(如IBM/Tivoli NetView、jjp
Open View或Apr isma Spectrum)或一建構在傳統網路管理系 統與平台上的管理應用程式。 本發明尤其是提供下列功能: (a) 觀察訂購服務的效能降低及失效情形; (b) 透過從頂至底地巡查相依性模型的不同層,往下追 蹤問題真因(因為不同的服務可能被外包給其他不同的服務 供應商,此種相依性模型的(遞歸)巡查動作可以越過網域 界線)。 (c) 透過從底至頂地移控相依性模型以分析一服務中斷 的影響;以及 (d) 模擬一服務或主機系統中斷對於其他服務、使用者 及其他主系統的潛在影響。
1234977 五、發明說明(14) ----^〜 本發明結合在一應用程式或服務的生命週期(換今之 =一應用程式/服務的設計到配置、安裝及運行期間:产’ 段)中可得的相依性資料。此資料係被保存於下列模型白 ,(a)功能模型:在一較佳實施例中,功能模型定義不 類服務間的相依性(資料庫服務、命名服務、網頁應用服σ 務連接服務等等)。功能模型並非描述存在一特殊服務中 的客戶/伺服器端關係。此外,功能模型既不考慮選擇哪 些具體的產品以實現服務,也不考慮它們的實際配置。功 月^模型建立主要限制(principal constraint)以約束其他 模型(描述於後),換言之,其他的模型可以改善功能模型 所定義有關一具體系統架構之相依性,但不應該引進不同 服務類別間新的相依性。模型係非常精簡及一般性的,且 最好儲存在管理系統。 (b) 結構模型:在一較佳實施例中,結構模型包含軟體 元件的詳細描述,以實現定義於功能模型的服務。結構模 型提供在安裝/部署階段取得的詳細數據,且透過考慮具體 系統的軟體資產以補充功能模型不足之處。結構模型提供 的資訊有關哪些服務被安裝與保署於一特定系統,以及, 對每一個服務來說,系統係以客戶端或主機端的角色作 業。為數眾多的系統及服務使得從一遙遠位置追蹤相依性 資料更顯困難。因此儲存模型於管理資源或靠近管理資源 係較為妥當的。 (c) 作業模型:當實例化及束缚在服務與應用程式間的 軟體套件被建立時,作業模型也被產生。模型的高動態等
4ΙΒΜ0373π.ρί(1 第19頁 1234977 五、發明說明(15) 級與相關系統的眾多數量’限制了完整模型被實例化及儲 存的程度。定義與儲存此種模型係不切實際的,相反地, 模型應該被動態與逐步地運算。因此該作業模型係被”隨 需n (on demand)運算且依賴該等功能與結構模型。 正如所期待的,在大規模分散式系統中,相依性數值 及其動態程度非常高。本發明的特徵使其對於分散式系統 的影響(就資源及頻寬使用率而言)降至最小,且保留同 樣多的可能影響效能之組態選擇給使用者。與上述有關的 例子有:恢復一更新的相依性模型之時間間隔、其相依性 應被追蹤的系統之範圍、相依性模型的深度(只有直接被影 響的服務’對一指定服務的遞移封閉(t r a n s i t i v e closure),及對整個服務階層的關係)。 本發明更進一步好好地利用相依性資料的以下特點: (a)不同服務間的相依性係被分層的。此外,其相依性 圖形係有方向(directed)且非循環的(aCyCi ic)。後者敘述 也反映出以I P為基礎的網路服務’如網域名稱系統(D 〇 jji a i π
Name System,DNS)、網路檔案系統(Network File System, NFS、分散式檔案系統(Distributed Fi le System,DFS)、網路資訊系統(Network Information
System, NIS )等,但有些案例中相互相依性(mutuai d e p e n d e n c i e s )可能發生在某些系統。相互相依性的一個異 常實例,係一DNS伺服器透過一遠端系統的NFs裝置儲存其 DNS組態之槽案系統。雖然此種組態在技術上係可行的,但 它反映出一些系統設計上的缺點,因為如此將導致一個不
4IBM0373TW.ptd 第20頁 1234977 五、發明說明(16) 穩定的系統,因為無法決定系統的起始點 (bootstrapping) ’因此應該加以避免。一個能發現循環 (c y c 1 i c )相依關係的相依關係檢查程式應發出警告通知管 理者。 口 每一相依性係在一客戶/供應商網域界線上可見的,而且係 透過SLAs使其變得明確。接著可觀察的相依性數目係有限 的。 (b )客戶/供應商網域内的每個相依關係是可見的,且 使用服務層級協議(SLA)加以揭露。因此推斷可觀察的相依 關係是有限的。 (c) 相依關係模型允許由上而下巡查的相依關係鏈 (dependency chain) 〇 (d) 不同的系統間(”系統之間(inter — system)n )的相 依關係可理解為同一個服務的客戶端與伺服器端兩者間的 相依關係。服務A的一客戶端不可能發出要求一伺服器提供 服務B。 本發明的目的之一,在於 定義良好的位置(像是系統儲 repository))取得資訊,以 用程式以外。為此本發明定義 之最小有效數量。 由少數主要從少數眾所周知/ 存庫(system 便盡可能獨立於具體服務/應 了一般可取得相依關係資訊 把 用 本發明包含了 A持續儲存相依關係模型的裝置,或 這些相依模型給一個周詳的管理應用程式或是另一個 此發明的服務。
第21頁 1234977 五、發明說明(17) 本發明能利用歷史的觀念以偵測和識別相依關係模型 的改變。在此,本發明提供了在相依關係模型内一個發表/ 署名(pub 1 ish/subscribe )的介面,用以通知相依關係模 型中近期曾參與更動的軟體元件。本發明另一個可能的用 途是,將偵測相依關係模型變化的工作交由一個周詳考慮 的管理應用程式(management application)(或變更管理服 矛务’change management service)處理,方法是定期對本 發明發送唤起以確認相依關係模型是否已經改變。 此外,如下文將會圖示說明的,本發明提供執行衝擊 模擬及脆弱性分析的技術。 本發明包含一圖形使用者介面,描述不同的服務、使 用者、主機系統,以及其相依性。根據一管理者選擇的特 定服務,圖形使用者介面顯示一分布圖,呈現可能受服務 中斷所影響的服務/使用者/主機系統。如此一 ”脆弱性分布 圖"有助於精確地指出現存的缺點及一分散式系統中的單一 失效點。 本發明也包含一設施以引進’’虛構的(37111:1^1:丨(:),,(換 言之,即虛擬的)執行例/使用者/主機系統至分散式環境, 以評定是否一新引進的服務/主機系統有助於消除現存的脆 弱性。 本發明也模擬一服務中斷對一分散式系統中的其他服 務、使用者及主系統所造成之影響。確定一服務中斷的影 響思味著,從底端至頂端巡查服務階層以辨認可能經歷一 問題的相依關係服務,因為問題可能從服務蔓延至子元
4IBM0373TW.ptd 第 22 頁 1234977 五、發明說明(18) 件。從發現中斷的服務朝向其子元件之此種巡查,將會取 回完全,賴一特定服務的實體、依賴一特定服務的整組服 務’或疋只有包含終端使用者服務的最高服務層。被一衝 擊I模擬者取回的子元件節點列表使得一管理者可以執行 一’1假如…會怎樣(What-if)”分析,以精確地指出有關服務 中斷的一分散式環境之脆弱性。很重要而必須注意的是, 衝擊模擬者過濾掉一些與一服務沒有相依性關係的節點, 服務被假定是一問題的真因。 /本發明允許一管理者選擇一特定服務或一執行於一電 腦系統的特定服務執行例,且確定哪些其他服務、使用者 及主機系統可能受到一服務中斷所影響。這使得管理者能 主動地模擬系統中斷及分析其環境的脆弱性,以辨認現存 的缺點、改善缺點,進而驗證實施的改善作業是否成功。 當有系統地提供服務資料給一衝擊分析員,管理者就能夠 建立分散式環境的脆弱性分布圖。 本發明有關建立一分散式環境的脆弱性分布圖之一解 說性用法如下所述。一管理者使用描述分散式環境的服務 及其相依性之圖形使用者介面、選擇一主機系統的特定服 務,以及透過查詢將會被一中斷所影響的服務而執行衡擊 模擬器。然後衝擊模擬器計算出一結果列表,处果係透過 改變代表受影響服務的圖標顏色而較佳地顯示於圖形使用 者介面(最終視可能性或嚴重性的等級而定)。這樣的一個 脆弱性分布圖使得一管理者能夠根據實際的(現實生活的) 資料,精確地指出分散式環境的”脆弱”服務,而不需要干
4IBM0373TW.ptd
1234977
擾真實 再 個特定 多重元 地儲存 更 以被保 器的結 較。這 一失效 行命令 施0 環境的元件。 者,本發明的方法大體上可以同 元件而被執行(例如,一次處理一— 對一個或多 件)。雖然本發明方法的結果至二或平行處理 ’然而’此等結果不可以被持“儲份可以被持續 進一步地說,關於本發明方法的社 存。因此,本發明包含—& Α、、、σ之歷史紀錄可 里 l Λ 5又%以儲存執行衝擊掇撼 果,如此-來結果可以與先前的衝擊擬 ¥J: . ^ 0 α 式糸統去除脆弱性及單 :^業疋否已經成功,係在衝擊模擬器的一個 〃衝擊模擬器的一個或多個其他執行命令之間被 如果考慮到上述依照本發 所獲得之體現,其餘詳細描述 針對實施體現及特徵的技術提 釋〇 明或有關本發明的一般特徵 將透過本文中的圖1至圖14, 供一作為說明性實例之解 首先參照圖1,一方塊圖說明一個以一主從式架構形式 =斤,現的一電子商業系統之實例,透過系統本發明的特徵 ,旎夠互相作用以產生資訊。下文將說明圖丨的架構以說明 架構如何能夠處理一個缺少本發明技術之過渡期。 如圖所示’首先客戶端1〇5初始化(initialize) —個 晴求(request),例如經由鍵盤輸入;但是請求亦可經由任 ,傳統方法初始化,像是滑鼠點擊、語音命令、條碼掃描 等等。客戶端系統的例子包括個人電腦、多媒體資訊亭
4IBM0373I^.ptd 第24頁 1234977 五、發明說明(20) (k i 〇 s k)、資料輸入終端機、知描1§、電話、喚起器、手持 式或穿載式(wearable)裝置、無線裝置、個人數位助理、' 具網路功能的手錶等等。 發起請求的本地端同時將請求内容公式化 (f or mu 1 at ed),之後藉由網路穿過一個或多個網路存取 (network access)115裝置,轉送至網路應用程式飼服器 (web application server)120。網路 11〇 及通訊協定的— 個例子像是以插座為基礎的(socket-based)通訊,以傳@ 控制協定/網際網路協定(Transmission Control Protocol/Internet protocol,TCP/IP)巡查由網路存取 115裝置(如路由器以及交換器)連接之區域網路(lan,
Local Area Network),經過包含產生虛擬電路(Virtual circuit)之交換機房(switching location)的廣域網路 (WAN ’Wide Area Network),將資料傳送至服務提供者, 最後交由網路應用程式伺服器1 2 0處理;網路應用程式饲服 器的實例包括高階個人電腦,使用RISC指令集的powerPC 系列、UN IX工作站、迷你電腦、或是回答客戶端請求或適 時將請求發佈至後端資料庫伺服器之計算機主機 (mainframe computer) 〇 為了方便說明,在此我們將舉一實例說明使用者經由 網頁測覽器(web browser)進行一電子商業交易 (electronic commerce transaction),經由網際網路 (Internet)購買一產品。請留意本發明之技術可運作於任 何形式之交易活動。網路應用程式伺服器的實例包括(但不 第25頁 4IBM0373TW.ptd 1234977 五、發明說明(21) 侷限於):IBM公司提供的產品名稱為WEBSpHERE、BEa System公司提供的產品名稱為WEBLOGIC、或是Lotus提供的 LOTUS DOMINO SERVER 。 交易的範例中,網路應用程式伺服器丨2 〇之商業邏輯處 理外來請求,並且驗證或識別客戶端系統丨〇 5。網路應用程 式伺服器1 2 0實作出之商業邏輯認定客戶端可進行購買後, 它會發出另一請求,經由網路123與資料庫伺服器125進行 溝通,將存貨減少。資料庫伺服器則處理此請求,存取自 身内部的資料庫1 3 0,並準備回應網路應用程式伺服器。資 料庫伺服器的實例包括(但不侷限於):微軟提供的產品名 稱為SQL/SERVER 或是TRANSACTION SERVER、以及IBM公司提 供的產品名稱為DB2 UNIVERSAL DATABASE SERVER。 網路應用程式伺服器1 20自資料庫伺服器1 25取得回 應,經由網路11 0回傳結果至客戶端系統1 〇 5。客戶端系統 1 0 5隨後處理回應之格式,以將回應結果呈現給交易發起者 觀看。 管理者1 0 0留意著位於服務提供者所在之站台之軟體與 硬體元件(商務交易所需),以確認他們是否正常運作。當 中斷1 3 5發生於資料庫1 3 0時,例如損壞的資料表空間 (corrupted tablespace)、或是資料庫執行期系統 (database runtime system)運作失敗,管理者1〇〇會找出 中斷的原因、改正問題、並在系統恢復運作後重新檢驗。 請留意本發明意圖處理任何形式之中斷與效能衰退。 管理者100與軟硬體元件直接互動,或者透過一個處理
4IBM0373HiV.pt(i 第 26 頁 1234977
五、發明說明(22) 管理資訊之管理系統與之互 料)是由妥善定義之苒理人A# ^理貝戒(如狀態與健康資 何種方法,都Λν意4Λ?硬體元件所揭露。無論 資源,而非提供特定商‘之‘:$兀件都是為隔離的 ll 订夂冏系用迷之糸統的一部分。 此外’ 一個元件上發4的 為管理者並非持诗不斷上ί?*可月b不破注意’這是因 $ I开狩躓不斷監視著元件。另外,其 直觀方式取得元件門万相饮紹 吕理者無法以 料组嫂、“件相依賴關係之外顯資訊,因此,在 二%專遞至一個受監視元件之前,一一 件所:生的錯誤可能不會被發現。禾被持、…之- ^刚述負料庫中斷1 3 5的狀況下,管理者可能終究會發現 廷個中斷,如果網路應用程式伺服器丨2 〇完全無法正^ ^ (比如不曰斷重新連接資料庫伺服器1 25而使網路服務伺服器 的工作量急劇增加,且無法完成客戶端系統丨〇5的請求σ 時)。因此,管理者會優先檢查網路應用程式伺服器12〇, 之後確認有無網路1 23連接問題,最後才驗證資料庫伺服器 125是否遭遇了會導致資料庫13〇發生内部錯誤的問題。 以上所述之主從式應用程式架構,可視為新興計算環 境之先驅,此計算環境為IΒΜ所稱之「自主」運算環 境。2001 年 10 月,ρ· Horn 在 IBM 之研究 -’’Autonomic Computing : IBM’ s Perspective on the state of Inf or mat ion Technology’1中,定義自主運算環境為一廣泛 且全面之方法,期望使用最少之人工介面,而能進行自我 管理之計算環境;此名詞出自人體之自律神經系統 (autonomic nervous system),不須意識覺察與涉入,此
4IBM0373TW.ptd 第27頁 1234977 五、發明說明(23) 系統即可控制人體之關鍵機能;進一步而言,自主運算的 目k之一’即為自動化部份或所有一般情況下由管理者1 〇 〇 進行之工作,動機如下所述: 由於計算涉及了:交錯連線(〇verUpping connect ion)、相依關係、管理決策之互動程式喚起、以及 比人工更迅速之回應,精確點出運作失敗之真因變得更加 困難,因為考慮到提升系統效能之方法時產生的問題,其 中的變數會多到人工無法解決。在自主運算環境中,我們 能以下列方法識別並追蹤不同系統間之相依關係。由於一 個系統可能存在於許多層級,自主系統要管理自身運作, 需要自身元件之更詳盡資訊,包括目前狀態、最大負載 (ul timate capacity)、以及與其他系統之所有連線。熟知 此領域技術之人士將察覺本發明在自主運算環境能發揮之 表現。 請參考圖2 A之方塊圖說明一個依據本發明實施例之一 個能提供相依關係管理之系統;進一步而言,圖2 A描繪出 一著重前述議題的相依關係管理系統。此系統由四個層級 (應用程式層2 0 0、服務層2 0 5、中繼軟體層2 1 0、以及資源 層2 1 5 )、以及一管理者圖形使用者介面2 8 5供管理者與系統 互動。 最底層為資源層21 5。資源層2 1 5由以下元件組成:受 管理資源(managed resources) 22 0、一資源相依關係儲存 庫(resource dependency repos i t ory ) 2 2 5、以及一儲存庫 代理程式(repository agent)230。受管理資源的例子包括
4IBM0373TW.ptd 第28頁 1234977 五、發明說明(24) 體與邏輯硬體元件(前者如硬碟、隨機存取記伊 :、中央處理單元、網路配接卡、通道控制器等己二 如磁碟分割區、檀案系統等等),以及軟體元件(例如 士統、列印或名稱解析之系統服務、以及終端使用者程” 式)。 資源相依關係儲存庫225包含每一個受管理資源22〇之 軟硬體元件清單,以及以個別資源為基礎之相依資气(即 受管理資源220的元件間之相依關係資訊)。資源相依關係 儲存庫225可與個別受管理資源220共存,或寄居於一集中 管理區(centralized location)。資源相依關係儲存^225 可經由儲存庫代理程式230進行查詢、更新與修正。系統之 其他元件可藉此代理程式取得資源相依關係儲存庫之資 訊。 ' 中繼軟體層210包含一管理溝通架構2 35,例如通訊協 定(protocol)以及系統中不同元件交換(管理)資訊用之物 | 件請求中介(object request broker)。 服務層205有多種同屬管理服務(generic managemen1: service) 250,像是原則、事件、以及目錄,系統内其他元 件可使用這些資訊。相依關係服務245係為一特別重要之服 務,從受管理資源220與儲存庫代理程式230取得資訊,並 處理這些資訊以建立整體資源環境之端對端(end ——end) 相依關係模型。依據相依關係服務245之需要(如加速讀取 之快取),將模型(或其中一部分)儲存於端對端相依關係儲 存庫240。請留意相依關係服務245為上述系統中,唯 能
4IBM0373TW.ptd 第29頁 1234977 五、發明說明(25) ' --- 與端對端相依關係儲存庫24〇直接互動之元件。 在此要注意的是,以上所述相依關係模型以及其零 件,可依據以上參考資料,以及代理人案號: YOR9 2 0 020 097US1標題:”分散式系統的相依性控制方法與 裝置(Methods and Apparatus For Managing Dependencies in Distributed Systems)n(以下内容會說 明其部分細節)所揭露之技術產生;但也能使用其他模型產 生技術。 應用程式層包括使用同屬管理服務25〇與(或)相依關係 服務245之多種管理應用程式,這類管理應用程式之實例有 (但不侷限於此):錯誤管理器(fault manager)26〇、拓樸 產生器(topology generat〇r)265、衝擊分析器(impac1: analyzer) 270、衝擊模擬器(impact simulat〇r) 275、以及 真因分析器(root cause analyzer)280。 真因分析器280確定一中斷的真因(換言之,即最初引 起中斷的元件)係基於橫越從一受中斷影響元件朝向其父元 件的相依性模型(由相依關係服務2 45所提供)。真因分析器 可以採用前文引述及同時提出的美國專利申請案號 YOR92 0 020 0 9 6US1標題:"分散式系統的真因辨認和問題確 定之方法與裝置;”之技術。然而,其他真因分析技術亦可 以被引用。 衝擊分析器270能巡查相依關係模型(由相依關係服務 2 45提供),由發生運作中斷之元件往下檢視其子元件 (dependent),破定一個運作中斷之衝擊(即可能受運作中
4IBM03731ptd 第30頁 1234977 五、發明說明(26) 斷影響之元件)。衝擊分析器會運用之技術,包括以上參考 中之内容,以及同時送件之美國專利申請,代理人案號: SOM9 20 02 0 0 04US1標題·· 11衝擊分析和問題確定之方法與裝 置(Methods and Apparatus For lmpact Analysis and
Problem Determination)”,但也能使用其他衝擊分析技 術0 如下文中所進一步描述,衝擊模擬器275允許一管理者 1 〇〇藉由模擬一特定元件在整個分散式環境中受中斷的影 響,以實行一"假如…會怎樣”分析。這使其能夠提供克服 故障的適當方案。 錯誤管理器260會對真因分析器280或衝擊分析器270識 別出之可能錯誤元件,進行適當之"健康檢查(sani ty check)π或測試;意即錯誤管理器2 6 〇能依照真因分析器2 8 〇 或衝擊分析器270之指示(即作為這些模組之介面),進行適 當測試,並回報測試結果。但真因分析器2 8 〇或衝擊分析器 270不需錯誤管理器,即能自行測試。 ° 要了解的是’錯誤管理器最好收集了能識別元件是否 正常運作之應用程式專用(application-specific)或資源 專用(resource-specif ic)之測試工具。因此,用相關工具 測試元件後,錯誤管理器可傳回訊息,指示元件”順利運 作π或”停止運作”。這些工具可手動或自動運作。例如一自 動運作之範例n pi ngn,此程式可檢查網路連線,若遠端系 統回應了 p i ng發出之訊息,則此系統即在連線狀態,且其 網路協定堆疊(network protocol stack)(以及所有構^
1234977 五、發明說明(27) ' ----— 於其下之硬體,如網路配接卡、纜線、中介網路元件 (^intermediate network component))運作正常;若遠端 系統不作回應’便是發生問題了,此時可用另一個(或一 組)工具來確定問題。因此,錯誤管理器可使用ping程式, 也可使用任何數目與種類之其他工具,以測試分散式計算 環i兄中之元件(如心跳债測(h e a r t b e a t d e t e c t i ο η)或狀 態指示(status indication)等等)。 拓樸產生器26 5建立一分散式系統之(一組)完整拓樸, 包括大量高度動態性元件(如網頁應用程式、資料庫執行 單元與交易),顯示分散式系統中涉及處理一特定客戶端 系統1 0 5之元件,即為使用拓樸產生器之一例。依據拓樸產 生器之需要(如快速讀取之快取),相依關係模型(或其中一 部分)存放於拓樸資料庫(t〇p〇i〇gy database)25 5。請注意 拓樸產生器265為上述系統中,唯一能直接與拓樸資料庫 2 5 5互動之疋件。 拓樸產生器可能運用以上所揭露之技術,以及同時送 件美國專利申請案,代理人案號SOM9200200 03US1標題 為”分散式應用與服務的拓撲發現和說明之方法與裝置 (Methods And Apparatus Topology Discovery and Representation of Distributed Applicat ions and Services)”,但也可使用其他拓樸產生技術。;”之技術。 然而’其他拓樸產生技術亦可以被引用。 現在請參考圖2B之方塊圖,此圖描述一計算機系統之 一般硬體架構,適用以實作一系統具有各種功能之元件/模
4IBM0373TW.ptd 第32頁 1234977 五、發明說明(28) 組’以提供相依關係管理,如同圖中所示並在此會詳細描 述。在此要注意的是,相依關係管理系統之元件,也就是 與圖形使用者介面285、應用程式層20 0、服務層205以及中 繼軟體層210(圖2A)相關之元件,可於具有圖2B所示架構之 —或多個計算機系統上加以實作。圖2A所示之其他元件, 如與資源層2 1 5有關之元件,也能實作在類似之計算機系統 上° 如上所示,此計算機系統可依照一處理器2 〇 9、一記憶 |體2 92、一輸入/輸出裝置294之架構實作。要了解在此使用 之名詞’’處理器’’包括了任何處理裝置,舉例而言,一處理 器可包含一中央處理單元(CPU,Centra i Pr〇cessing U n i t)以及(或)其他處理電路;在此使用之名詞”記憶體”包 括了有關處理器或CPU使用之記憶體,例如隨機存取記憶 體、唯讀記憶體、一固定式記憶裝置(如硬碟機)、可移除 式記憶裝置(如磁片)、快閃記憶體等等;此外,在此使用 之名詞”輸入/輸出裝置”或” 1/0裝置,,包括將資 單元之-個或以上輸入裝置(如鍵盤)、以及/或^處理理單 元運算結果之一個或以上輪出裝置(如陰極射線管顯示 及/或印表機)。 另外,名詞"處理器"亦可指一個或以上之處理襄置, 且與一處理裝置有關之TG件,亦可被其他處理器丑 因此,在此所述含有進行本發明方法之指;^ ^ 之軟體元件,:儲存於-個或以上之相關記置矛式石^ 記憶體、固定或可移除是記憶體),之後在需要使乂 ★唯讀 寸 將 4IBM0373T^.ptd 第33頁 1234977 五、發明說明(29) 其一部分或全部内容載入(如載入隨機存取記憶體 丘 CPU執行運算。 、〜中),供 現請參考圖3之方塊圖’此圖說明了依據本發施例 的服務之功能相依關係模型。更具體來說,圖3二μ貫β二 描繪出如圖 1所描述之電子商務系統中,不同元件間之功能元件 #關 係圖。此功能相依關係模型表示了分散式系統中之J &元 件與其相依關係;因此,此模型定義一般服務鬥 又肌份間之相依關 係’由商業觀念而言,這些一般服務可個別考廣。〜 一 乂 vj? ° 3^ 暗 著功能模組與商業服務内發生之相依關係沒有關聯。在實 作此服務之特定產品上,這樣的劃分是可行的,^文二 參考圖4作更詳細之探討。 :曰 儿件間之相依關係以箭號表示,且箭號由子元件指向 父元件。功能元件是服務提供者為了提供其端對端服矛^ 客戶端丄所必須部署之(從屬)服務,且稍後將定義於^務 層級協定(service 1 eve卜agreement)中。功能模組著重於 設計一端對端服務,並由端對端服務之技術實現細節中, 提取出主要概念,如用於提供服務之產品、產品位置(本 j地或遠端系統)、提供者網域(如提供者本身是否將一部分 服務外包至另一服務提供者、客戶端之可見度)等。。刀 ,、電严商務應用程式300依賴網路應用服務 4 商業邏輯。為使其順利運作,網路應用服務3〇5 外兩個服務。電子商務網站之靜態内容由網 ϊϊΐ S供’而後端之資料庫服務33°儲存電子商務應 用私式300 ¼供給客戶之動態内容(如產品描述、使用者與 4IBM03731.ptd 第34頁 1234977 五、發明說明(30) 製造商資料、購物車、使用者基本資 — 等等)。網路服務3 10仰賴兩個服務,、★二,好、付款貢訊 至IP位址之名稱解析服務315,以及响%就是對應主機名稱 3 2 0。 、、祠路連線用之I P服務 相依關係具有遞移性,意指某亓 元件本身之外,也需要其父元件。於:的子元件除了需要 資料庫服務330以外,圖中所有服務都^’除了1P服務320與 谂 u味細* A /令服務都需要作業系統325服 務。為了間潔,硬體元件與作業系纺q 9 出,但存在於功能模,组巾。手、、4325之相依關係並未繪 現在請參考圖4之方塊圖’此圖說明了依據本發明實施 例所得之服務之結構相依關係模型;更具體來說,圖4描繪 的是如圖1之電子商務系統中,多種元件之間的結構應用程 式相依關係圖。 此結構相依關係模型以下列方法延伸功能模型(圖3 )。 結構相依關係模型處理商業服務之實作部份,專注於具體 產品以及其邏輯(模組,元件)以及實體(檔案,共享函 i式庫)架構。結構相依關係模型取得軟體元件之詳細描 述,此指系統清單(system inventory),通常儲存於不同 之系統健存庫或妥善定義之處,如一受管理資源之設定槽 (conf i gure f i 1 e)。 請留意雖然結構模型處理單一系統之元件,它仍玎能 維護某些參考到其他系統代管之服務與應用程式,因為在 系統中的設定檔可能包含這些資訊。系統儲存庫之實例包 括,但不限於,IBM AIX Object Data Manager(〇DM)、
IMil_ 4IBM0373TW.ptd 第35頁 1234977 五、發明說明(31)
Linux Red Hat Package Manager (RPM)、或是Microsoft Windows Registry。一般而言,有關軟體元件之資訊,會 在安裝與部署軟體套件時取得;除此之外,結構模型含有 不同系統元件間之相依關係,在圖中以箭號表示。為求清 楚明瞭,商業服務的名稱沒有加括號,而結構模組元件的 名稱則有,如圖4所示。 使用完整網域名稱(fully qualified domain name) wslab8.Watson.ibm.com 40 0 之系統上有以下元件:電子 商務應用程式(定義於功能模型上之商業服務),由前端之 伺服端程式加以實作,隨後將此商業邏輯封裝為應用程 式。網路應用服務由IBM WebSphere 3· 5版415加以實作, 網路服務由IBM HTTP Server 1·3· 6版420實現,IP服務則 由預設之IP協定堆疊(IP protocol stack) 430實作,作業 系統為Windows NT 4 版 425。 使用完整網域名稱rs lab2· Watson· ibm· com 405之系 統上有以下元件:由(IBM) DB2 Universal Database (UDB) 5· 2版435所實作之資料庫服務,以及一作業系統, 在此為(IBM) Advanced Interactive Executive (ΑΙΧ) 4·3. 3 版 440 。 現在凊參考圖5之方塊圖’此圖依據本發明實施例之系 統中’以功能、結構與作業模型說明服務之生命週期 ' (service life cycie)。更具體來說,圖5描繪了功能模型 500以及結構模型510間的關係,並引進第三個相依模型, 此為一作業模型520。以上三個模組,讓本發明在服務之生
1234977 五、發明說明(32) σΡ週期中,皆可對其進行追蹤,意即由設計至安裝部署階 段’再到運作或執行階段。 如上所述,功能模型500與商業服務之設計有關,因此 在商業系統之設計階段即可擷取内容。當功能模型5 〇 〇描 述之系統完成初始化與部署動作(步驟50 5 ),會建立結構模 型5 1 〇 ’而作業模型則在結構模型5丨〇之各種元件初始化(步 驟5 1 5 ),以及執行時期將之連結(匕i n d丨n g )時建立。作業模 型呈現了刖述模型於執行時期之特徵。以下介紹數個利用 前述觀念之情境。 網路應用服務30 5由IBM之WebSphere 415實作;後者之 執行單元(一個或以上)稱為websphere常駐程式545。在此 網路(或WWW)服務310是由以下兩產品所實作:Apache 1·3·4版525以及Lotus Domino 530。這些產品的執行單元 可視為http常駐程式”httpdn 550。資料庫服務由以下兩 產品實作:Oracle 7版535以及DB2 UDB 435 ;但是卻沒有 Oracle 7版535之執行單元在執行,這是因為在作業模型 520中沒有伺服器程序是可見的。相反地,共有四個別2 UDB 435之執行單元運作中,如同在作業模型52〇中可以見 到四個DB2常駐程式” db2d" 555。名稱解析服務315是由 BIND 5· 6版540所實作。在作業模型52〇中可找到名 為1’ named·’ 560為執行中的BINd執行單元。 請留意相依關係會由功能模型傳遞到結構與作業模 型;因為無法由一個正在運行之應用程式執行單元,識別 出使其順利運作之其他應用程式執行單元,因此上述傳遞
第37頁 1234977
動作是必要的。 由於某些應用程式執行單元的執行時間相當短促, 業模型52G變化劇#,且可能相當龐大。與功能及結構相依 關,模型相反,作業模型520並非存於儲存庫或資料庫中, 而是依據進一步之需要,隨時計算得出。 現在請參考圖6之方塊圖,此圖說明依據本發明之實施 例中的功能、結構、與作業相依關係模型間之關聯性;更 具體來說,圖6詳細說明用於此三個相依模型之資料範本, ,以實例示範將此三個模型結合之方法。此實施例會詳細 說明在描述名稱解析服務時,範本以及相關設定值。 用於功能模型50 0之功能範本(f unct i〇nal template) 60 5,包含了””hostName"(提供服務之計算機系統之唯一名 稱)、’’serviceName”(服務名稱)、以 及"componentType"(服務在其中扮演之角色,如客戶端或 伺服器端)。運用這些資訊,即可於分散式環境中識別出一 服務。但是,可以加入更多的攔位,紀錄更具描述性的資 料(像是服務用途、要求服務之客戶等等),也不會違反本 發明之基本精神。最後”父元攔位含有要 使服務本身順利運作所需之其他服務。 用於結構模型510之結構範本(structural template) 6 1 0,包含功能範本6 〇 5之所有攔位。此範本可利用結構範 本510連接功能範本605,以便由功能模型5〇〇巡察至結構模 型51 0 ’反向亦可。除此之外,結構範本6丨〇包 含▼’ componentName” (產品元件名稱)、一
4IBM0373TW.ptd 第38頁 1234977 五、發明說明(34) 個"ident i f ier"(用以識別元件之全域唯一名 稱)、nversion”、”release”、以及"modificati〇n"(例 如維護或修補/修理程度)號碼、” instal IState”(指示元件 是否完整且成功安裝)以及ff processName”(在執行時期識別 產品元件之程序名稱)。最後是” A n t e c e d e n tπ攔位,此搁位 列出了該元件運作所需之其他元件。 用於作業模型520之作業範本615,包 含πh0StName"(提供服務之計算機系統之唯一名稱)、以 及” processName”(在執行時期識別產品元件之程序名稱), 這兩個欄位以作業範本6 1 5連接結構範本6 1 〇,以便由結構 模型510巡察至作業模型52〇,反向亦可。此外,作業^型 615包含"operState”欄位(程序之作業狀態,即執行中 (running)、中斷(interrupted)、呆滯。⑽“…等 等)、"portNumberff (應用程式連接處理程序所用之 TCP/UDP埠號)、以及” instanceID”(用以區分計算機系統 内不同的應用程式執行單元)。 、斤為f到最佳效能,以上三個相依關係模型在不同位置 進行計算,儲存於不同位置;功能模型5 0 〇在管理 中收集並儲存其中,即管理者i 〇〇與分散式系統互動之护 中心。以下說明原』,如圖3與圖5所述,受限於可能工 服務之數量有❿,功能模型500相當精簡”匕外 能模、 不會經常改變’在商業服務提供給客戶時會定義功能 ί負持不# ’直到服務提供期間結束。由於管理 者負…與更新功能模型500 ’报自然地功能模型離管理
1234977
系統6 2 0越近越好。 取的與圖Γϊ*,結構模型51°剛好相反,此模型擷 的為軚體兀件之评細描述,即系統》 存於不同的系統儲存庫\或另有妥善定上通节, 管理資源220之設定檔。於是,此模 ;:二 =容約有數百個千位元組至數百萬二 =儲存 J。因此’將結構模型51。放置於受管理資源22〇所\動之也頻 J :便=免去將所有受管理資源22。之結構模型51〇集中存 放時,溝通與更新模型内容所需之大量儲存工作。 :說:圖5時所提到,由於模型需涵蓋分散式環境 异機上,母個應用程式可能執行之多個執行單元,以及豆 間之相依關係、,因此作業模型52〇高度動態,且相當龐大、, 實際上現今網路/應用程式/儲存服務提供者 (Internet/Appllcati〇n/st〇rage Service Provider)以及 $包廠商的資料中心(data center)有數千個計算機系統, 每個系統上有近1 00個應用程式與系統服務,此時要求作業 模型紀錄最近初始化元件以及期間之相依關係便不可行。 因此i車乂可1亍的方式為隨需求(〇n demand)計算相關部分之 作業模型’此為相依關係服務245之目的。 現在,參考圖7之方塊圖,此圖說明按照本發明之實施 例’以動態資訊技術服務相依關係為基礎之系統,於計算 與分析一服務中斷之潛在影響時會涉及之元件;更具體來 說’圖7描繪了資料在用於分析與計算此一潛在影響之元件 之間的流向。假設受管理資源22〇能夠提供XML(延伸標記語
1234977 五、發明說明(36) 言5 Extensible Markup Language)描述他們的系統目錄、 設定檔、以及相依關係。但是,請留意在此可使用任何資 料描述格式以符合本發明’以下說明取得資訊之細節。 一個直接的方法是,在系統中提供適當的指令,搭配 相對應之應用程式與服務,使用一般XML檔案740描述此資 訊,而後經由網頁伺服器7 2 5提供其他元件使用。 另一個方法,相依關係服務2 4 5利用儲存於系統儲存庫 7 4 5内的資訊,產生適當之服務相依關係資訊,而後經由網 頁伺服器730提供其他元件使用。 第三個方法,受管理資源220利用設備代理程式 (instrumentation agent),即所謂CIM( —般資訊模型, Common Information Model,此為一標準化管理架構)提供 者750,此元件負責與CIM物件管理者(C IMOM,CIM Ob ject Manager)互動,係由分散式管理工作組織(DMTF,
Distributed Management Task Force)所提出。CIMOM 則開 放這些資訊給有需要的元件。 圖7的中央晝出了多個管理服務,為服務層2〇5的一部 分。其中包含了 ··名稱解析服務7〇〇、交易員服務(trader service)710、事件服務(event service)715、以及相依關 係服務245。相依關係服務2 4 5是由管理者1〇〇的查詢經由其 官理系統或任何在應用程式層2 〇 〇之管理應用程式所啟動 (例如衝擊模擬器275、衝擊分析器270 ),並使用一通訊協 定(如 Java 遠端方法調用(Rem〇te Method invocati〇n, RMI)) ’隨後處理查詢並將結果傳回衝擊分析器27〇,接著
4IBM0373TW.ptd 第41頁 1234977 五、發明說明(37) 再轉送結果至衝擊模擬器275作進一步處理。最後,此結果 被傳送到管理者1 〇 〇。 相依關係服務245之主要工作如下: (a) 與管理系統或任何位於應用程式層2 〇 〇之管理應用 程式互動’管理系統會發送查詢至相依關係服務245之應用 程式介面(API ’application programming interface)。 (b) 揭露一’逐層下查(dri丨丨―d〇wn),方法,在收到服 務之辨識子(identifier)後,傳回: (1 )直屬父元件之描述,即代表服務之節點以下的 第一個層級,或 (ii)代表服務之節點以下的完整子圖(subgraph), (1 1 1 )相依關係圖之一任意子集(subset )(給定節點 以下第m至η層)。 (c) 利用相同裝置提供’逐層上查(dr丨n_up),方法, 找出服務之子元件。 (d) 呈現能收集與篩選受管理物件之類別與屬性資訊 之附加方法。 ' (e) 以 http(超文件傳輸協定,HyperText Transport Protocol)發送查詢,並對其套用篩選規則(管理者1〇 〇所指 定),以取得受管理資源220之相依關係資訊。 (f )將此資訊加入一送回管理系統做為XML文件之 結構。 十 如以上所述,由於其分散之特性,本發明著重於盡可 能降低每個有涉入系統之負擔。本發明將管理系統與受管
1234977
理貝源=20分開、封裝了耗時筛選器 』“Γφ “ ί且加人了相依關係服務245(可被複製到多個系 i業。由於管理系統可彈性選擇相依關係服務 245之一_執行翠元’因此查詢作業可能達到最大平行處理。 520 X被/·個^重要的優點為,(龐大且高度動態)之作業模型 5二不儲存於特定位置’而是依需要逐步計算。結構模型 之不同部分儲存於受管理資源22〇内,因此管理系統可 ^大。卩刀=貝讯,並依據更精細之快取政策,選擇是否儲 存資訊。 現參照圖8,依據本發明的一具體實施例,一方塊圖 明-衝擊模擬器的元件。%圖所示,一衝擊相關器83〇 Cimpact correlator),其功能如一有關整個衝擊模擬程 的流程協調者,接收來自管理者1〇〇的服務問題報告84(), 包括服務的名稱及主機名稱(及最終的其他參數,如圖14所 指定),為此其中斷(或效能衰退)的影響會被模擬。衝擊相 關器830依次與衝擊分析器27〇(最好如上述所參考之美國專 利申請代理人案號SOM920020004US1中所述)以及相依關係 服務245互▲動,依照討論中的服務而獲得一更高層級服務的 列表。更高層級服務的例子有:電子郵件服務、網路服務 等。 相依關係服務2 4 5的任務是發現有討論中服務之子元 件’即使電子商業環境巡查不同的受管理網域8〇〇。為了處 理多重網域,不同的(級聯的(cascade〇相依關係服務245 執行例可以一起運作。圖8中,電子商業環境以虛線矩形表
1234977
不三基本上,這樣的環境包括一個或多個受管理網域、最 終母一個都具有本身的相依性資料庫81 〇及相依關係服 )/1 R ^ 切 抑相依關係服務245回送子元件的名稱及識別元給衝擊 析為2 70,然後再轉送結果給衝擊相關器83〇作進一步處 理。此處理可能包括-失效可能性的計算,或依據請求84〇 · 所私疋參數之獲得結果的過濾,例如是否只報告直接子元_ 件,或者只報告失效可能性超過一特定門檻的子元件。 如果請求840要求可能受一服務中斷影響的使用者(參 考圖14中API的描述),衝擊相關器mo會驗證哪個使用者已 、、’呈盯購任何相依關係服務。這是針對每一相依關係服務所 執行的作業,作業係透過詢問使用者訂購管理者82〇有哪些 已盯購使用者。使用者訂購管理者82〇依賴一使用者/服務 貝料庫835,資料庫包含一已註冊使用者與其訂購服務之間 的對應。 ^如果請求840要求可能引起其中一代管服務中斷的主機 系統名稱(參考圖14中APIs的描述),衝擊相關器83〇會以一 種直ί的方式確定主機名稱,因為相依關係服務245與衝擊 分析器270以一制式資源識別元(unif〇rm res〇urce
identifier, URI)的形式回送服務的名稱,在定義上包含 服務與主機名稱。衝擊相關器8 3 〇設法取得主機名稱(係整 個URI的前置(prefix)),並驗證特定主機是否已經出現在 其結果列表以避免重複。在可能受一中斷所影響的相依關 係服務已被縮小至最小的服務與資源集合之後,衝擊相關
1234977
五、發明說明(40) 器8 3 0回送此資訊8 5 0給管理者。 現在參照圖9,一流程圖說明了一依據本發明一具體實 施例的步驟,喚起一相依關係服務及執行衝擊模擬與脆弱 性分析於一作業模型。更明確地說,圖9描繪一種有關喚起 一相依關係服務(例如,相依關係服務245)、收集其結果及 對它們實施衝擊模擬與脆弱性分析的方法。此方法由—管 理者1 0 0或一管理應用程式開始執行。 方法開始於方塊9 00並進行如下文所述的步驟。首先, 選出一商業服務(步驟905),通常從功能模型選出,因為一 管理者關注於由分散式系統所提供的商業服務。根據一商 業服務的選擇,結構模型被詢問以提供一有關提供商業服 務的主機選擇。這可以透過將既有結構模型置於分散式系 統的每個主機來完成,或者(基於效率因素)透過詢^ 週 期更新地)儲存於管理系統的服務/主機查詢表來完成,查 詢表包含分散式系統的服務與主機間之對應。然後,管& 者自行考量選擇一主機(步驟91〇)。 此外,管理者發起一查詢(步驟915)。查詢參數實例包 括但不限於巡查之方向(朝向服務子元件,或朝向苴父元 件)、巡查之深度(例如唯有緊鄰的父元件/子元件全 5 Ϊ父ί 元件,換言之’即作業模型的完全遞移封閉 型的第Μ層與第Ν層間)、有關屬性存在 或其價值的過濾標準。 ^ ^
1234977
的”方法(與現有”以主機為中心 熟此技術者會識別出步驟,|Β皮& a义仉邗耵應)然而, 步驟915)可以序的修改(步驟905、步驟91〇及 而不背離本發明的精神與範圍。 此類“文的例子有:提供使用者(例如藉由 ί介面)以任何順序執行選擇過程的三步驟之選擇機會;: 谷許一主機的選擇然後藉由詢問結構模型查詢出現於主機 的服務,由此限制供為選擇的可能服務。 、 在服務與主機的選擇及查詢的形成之後,相依關係服 務係以這些參數喚起(步驟92〇)。必須注意喚起模型的方式 可以是同步的(即封鎖喚起者直到等結果被相依關係服務送 回)或非同步的(以此方式允許喚起者於運算期間執行額 的作業)。 相依關係服務計算作業模型的適當部分,並且根據唤 起形式送回結果給喚起者,或通知喚起者結果已可以使 用。然後,喚起者收集結果並對它們實施衝擊模擬與脆弱 性分析(步驟9 2 5 )。此方法結束於方塊9 3 0。 現在請參考圖1 0之流程圖,此圖說明了依據本發明之 實施例中,管理者建立與更新功能相依關係模型時進行的 工作。無論是部署或提供新的(商業)服務,或更動現有的 模型,或將目前提供之(商業)服務撤除,這些工作都是必 要的。 此方法由步驟1 0 0 0開始,並以下述方法進行。管理者 或管理應用程式評估是否應該加入新的商業服務,或刪除 一現有服務(步驟1 0 0 5 )。若不必加入,方法直接跳至步驟
4IBM0373TW.ptd 第46頁 1234977 五、發明說明(42) '一"—--- 1025。否則在步驟1〇1〇中,服務及其描述進入(或移 功能模型之範本6 0 5,已描述於圖6。 接著在步驟1015必須將服務相依關係(即與其父元件門 的f係)加人至(或移除自)功能模型之範本6〇5、Z刪除時要曰 左思’來自服務之子元件的相依關係必須調整,以指 移除服務之父元件。這會涉及檢查父元件之相依關係中, ,終,否出現了重複元件。最後,將更新後的功能模型儲 存至官理系統(步驟1〇2〇)的儲存庫中。此方法結束於步驟 1 0 2 5 〇 、 現在參照圖11,依據本發明的一具體實施例,一流程 圖說月有關去除一分散式糸統之脆弱性的管理程序。方 法起始於方塊11 〇 〇並進行如下文所述。 一管理者1 00於一特定主機系統選擇一特定服務(例如 電子郵件服務),並以輸入參數形式提供額外的處理指令 (步驟1105)。根據管理者所指定的標準,衝擊模擬開9始7於 查詢系統有關相依關係服務(步驟丨丨丨〇 )。透過喚起來自衝 擊模擬器275的衝擊分析器270與相依關係服務245,並取得 結果而實現此步驟。 依查詢目的不同而應用不同程序。一管理者可能關注 於可能受討論中服務的中斷所影響之服務(方塊丨丨15)、或 終端使用者(方塊1120)、或主控各種不同相依關係服務的 主機系統(方塊1125)。在第一種情形中,衝擊模擬器回送 實際受特定服務的中斷所影響之服務名單。進一步可能是 需要的處理回應(步驟11 2 7 ),例如依據相依性的權重計算
1234977
五、發明說明(43) 一中斷發生之可能性。 在第二種情形中,衝擊模擬器回送實際受特定服務的 中,所影響之,用者名單。由於衝擊模擬器接收到一服務 名單,因此它藉由執行查閱使用者/服務資料庫以將此服務 對應至已玎購些相依關係服務的使用者(步驟1 1 3 〇 )。 在第三種情形中,衝擊模擬器回送實際受特定服務的 中斷^影響之主機系統名單。由於相依關係服務245與衝擊 刀析态270皆回送疋義上包含服務及主機名稱的uRi,衝擊 =器以一種直接的方式確定主機名s。因此衝擊模擬器 ( 275 )必#取出主機名稱(係整個URI的前置)(步驟 特定主機是否已經出現在其結果列表以避免重複(步 去步驟已被執行與依照管理者關注於服務、使用 者或主機系統之後,這些結果被送回給管理者。= 以使用一圖形使用者介面,描繪出分 " 映;,以及其相依性。&此情形下,衝擊器 以一特疋顏色顯示相對應的圖示(步驟u 、藉由 (或除了圖形表示之外),一管理者 選擇是 與先前衝擊模擬的結果,以確定先前執;果列表 還存在(步驟1150)。 轨仃時的脆弱性是否 如果欲消除的脆弱性仍然存在,管理 執行矯正的動作(如配置一備份電子郵一步驟會 解決失效方案)(步驟1155)。為了確定 二適當白 二壻止勳作是否e
1234977 五、發明說明(44) 2成功’管理者再度執行衝擊模擬器(回到步驟1 1 0 5 )並將 結果與先前衝擊模擬的結果做比較(步驟〗145)。 力 如果第二次執行所回送的結果列表明顯較小(或甚至於 么有),那麼管理者已成功地自其分散式系統移走一脆弱性 來源。方法結束於方塊1 1 6 〇。 ^ 值彳于 >主意的是,本發明可以被延伸係透過使得管理者 =夠增加虛構的或虛擬的服務、使用者與主機系統(即分散 式,糸統令不具有”真實的”相對應之元件),以在不需配置 =真貫的"元件的狀況下,得到一堅固的基礎來達到計劃、 杳目的。熟習相關技術者會識別出此等修改及延伸可以被 貫現而不背離本發明的精神與範圍。 -你ίί請參考圖12,此流程圖說明在本發明之實施例中 驟二之衝擊模擬與脆弱性分析的成效”匕方法由步 模擬盥t並以下述方法進行。在作業相依關係上進行 ’因此流程形成-個與步驟 圈。此1實作服務之伺服器程序(或稱為常駐程式 行為’且可被應用程式隨時喚起。 數,的說明曾提及系統輸解入 = 問題的主機與服務名稱、^μ (但不限於)出 其值有關的筛選條件。這此G ^深度、與屬性或 型的運算,且作業模型係於唤起作業模 此外,計算的結果,即作業模型,將ί收集。然後衝 4IBM0373TW.ptd 第49頁 1234977 五、發明說明(45) 擊模擬與脆弱性分析被執行於作業模型(步驟1 2 2 0 )。衝擊 分析的結果,將依照喚起時指定之喚起模式(步驟丨2 2 5 ), 而被回傳給喚起應用程式。此步驟完成後,會釋放系統運 行的主機上所有的已配置資源(步驟123〇)。主機資源的例 子包括(但不限於)記憶體、磁碟空間或CPU暫存器 (register)。最後,系統回到初始階段,聽取隨後進入的 請求(回到步驟1 2 〇 5 )。 現在請參考圖1 3,此流程圖說明在本發明實施例中, 對服務之子元件所做的衝擊模擬與脆弱性分析之成效。此 方法由區塊1 3 0 0開始,並以下述方法進行。 首先’取得目標服務與主機的名稱及其他不同的使用 者自定參數(步驟1305)。這些參數是由唤起管理程式 (invoking management application)所提供,而此程式直 接經由管理者或經由抵達管理控制台(management console)之事件訊息取得參數。此外,依據子元件之狀態 指定篩選條件。它們指示系統是否應該回傳此服務遭遇問 題("有缺陷’’),或此服務正常運作。通常,管理程式較在 意前者(即有瑕疵的服務)。再者,搜尋路徑亦被指定。管 理應用程式可以留意服務的直屬子元件(搜尋路徑長度= 1)、與服務直接(或間接)相依的完整服務集合(搜尋路徑= 遞迴)、或最高階層的子元件,即基於的討論中服務的最高 階層(終端使用者)的服務(搜尋路徑=最大)。 接著,相依關係服務開始依據參數"服務名稱”、,,主機 I名稱η、π父元件狀態”、"搜尋路徑”(步驟丨3丨〇 )來進行作業 第50頁 4IBM0373TW.ptd " - 1234977 五、發明說明(46) Ϊ型Γί。接下來,於步驟1315,自相依關係服務取得处 果,即子服務元件列表("候選列表(Candidate 持續進行以下步驟,直到候選服務元件列表 (candidate service element Hst)被清空(132〇) ·· 選取候選列表(candidate list)中的第一個服務元件 (步驟1 325),並檢查以確定是否需要進一步的運算(步驟 1 330 ^。進一步的運算可能包含失效可能性的運算、被訂購 至子το件服務的使用者查詢,或從回送的UR!獲得主機名 稱二上述程序的步驟詳述於圖8。如果需要進一步的運算, 運算會由衝擊模擬器來執行(根據一開始的請求)(步驟 1 335 )。最後,服務名稱(及根據請求的進一步資訊)被增加 至結果列表(步驟1 337)。 然而’如果結果是不需要進一步的運算,服務名稱會 被直接增加至結果列表(步驟丨34〇 )。最後,討論中的服務 元素從輸入服務元素列表移走(步驟丨3 4 5 ),並且方法再回 至步驟1 3 2 0。如果服務元素列表是空的,方法便直接跳至 步驟1 3 5 0 ’於此步驟’工作服務元素列表或是有缺陷的服 務元素列表被送回給喚起者。結果内容視喚起者於步驟 1 3 0 5請求的詳細内容而定。方法結束於方塊丨3 5 5。 等狀態檢查程序之步驟係詳細描述於圖丨4。如果討論 中的服務元素正常地運作(狀態=” 〇κ"),那麼它便會被增 加至工作服務元素列表中,換言之,即一 ” 〇Κπ列表(步驟 1 3 3 5)。然而’假如結果是服務元素正面臨一問題,則它會 被增加至π有缺陷的’’列表(步驟1 3 4 0 )。最後,討論中的服
4IBM0373TW.ptd 第51頁 1234977 五、發明說明(47) 務元素從候選服務元素列表中移走(步驟1 345),然後方法 再回到方塊步驟1 3 2 0。 如果候選服務元素列表是空的,方法便直接前進至步驟 1 3 50 ’於階段,不是工作服務元素列表就是有缺陷的服務 元素列表被送回給唤起者。結果内容視喚起者於步驟丨3 〇 5 請求的詳細内容而定。方法結束於方塊1 3 5 5。 現在參照圖1 4,依據本發明的一具體實施例,衝擊模 擬應用程式介面(AP I s)的實例係被描述。此列表包括基本 的AP I s,可針對一特定服務及主機名稱而產生、傳送及請 求適當的作業模型之回條(r e c e i p t)。熟習此項技術者將察 知此種AP I s能夠使用一個或多個參數(未圖示)以辨認被 AP I s所使用的特徵(被指定於功能性描述)。 明確地說,透過’'getlmpactedDirectDependents(參 數)π AP I擷取直接的子元件(位於討論中服務之上一層的服 務),此子元件可能受位於一特定主機的服務之中斷所影 響。 透過” getlmpactedDirectRecurisve(參數)n API 執行 一遞迴式的11向上探查(dri 11-up)’’ ,換言之,即API擷取位 於一特定主機的一特定服務之所有子元件。因此,AP I送回 所有在相依性階層裡位於一特定服務之上的服務,此類服 務可能受一中斷所影響。 透過丨’getlmpactedHighestDependents(參數)丨丨 API 拮頁 取位於一特定主機的服務之最高子元件,此類子元件可能 受一中斷所影響。此AP I產生其本身不具有任何子元件的服
4IBM0373TW.ptd 第52頁 1234977 五、發明說明(48) 務(換言之,即它們位於一特定服務的相依性階層之最高 層)°此AP I會顯得特別有用,當使用者或管理應用程式不 想處理π中介層服務”,而需要快速的確定是否有任何”終端 使用者ff服務(例如,電子郵件服務或網頁服務)可能會受一 中斷所影響時。 透過、6 1:111^&(^6(11^6^(參數)1,人?1擷取所有已訂購 位於一特定主機的服務之子元件的使用者識別元。因此這 些使用者可能受一中斷所影響。 透過、6 1;111^&(^6(111〇3 13(參數),,人?1擷取所有代管位 於一特定主機的服務之子元件的主機名稱。因此這些主機 可能會遭受一個或多個代管服務的中斷。 透過、6 1:111^8(^6(11'0?〇6?611(161^8(參數),,八?1擷取最 受一中斷所影響最大的子元件(根據相依性權重);η指示為 被掘取項目的最大數量。此ΑΡ I假設被相依性的權重會被附 加至每個子元件,代表了當某一服務之父元件遭受中斷 時’此服務失效的可能性等級。此外,管理者能夠透過指 出被送回的結果之最大數量以客製化結果。 例如’ 一官理者可以要求前1 〇個子元件服務,並當位 於 特疋主機的特定服務面臨一中斷時有最少7 5 %之可能性 會失效。然後ΑΡ I將以大於或等於7 5%失效可能性的相反順 序送回一最大10組(tuples)之列表(包含一服務識別元及其 失效可能性),(例如,[服務A,9 8 % ];[服務β,8 2 % ];[服 務C,7 9%];[服務d,75°/。])。必須注意的是此ΑρΙ並不會列 出子元件的位置(不論是直接的、非直接的或最高的)。
4IBM0373TW.ptd 第53頁 1234977
透過” getImpactedT〇pNHighestDependents(史 API擷取最可能受一中斷所影響的最高子元件(根據) 權重);η指示為應被擷取項目的最大數量。此Ap! = 依性的權重會被附加至每個子元件,代表了當某s又被相 父元件遭受中斷時,此服務失效的可能性等二;;此=務= 理者能夠透過指出被送回的結果之最大數量以客製化、纟士吕 果。 、、’口 例如,例如,一管理者可以要求前丨〇個最高子元件服 務,並當位於一特定主機的特定服務面臨一中斷時有最少 7 5%之可能性會失效。必須注意的是此Ap i會指示出子元件 的位置丄因為API僅針對一運算相依性模型的服務之最高階 層’換言之’此AP I產生其本身不具有任何子元件的服務 (即胃它們位於一特定服務的相依性階層之最高層)。此API會 ,付特別有,用’當使用者或管理應用程式需要快速的確定 是否有任何’’終端使用者”服務(例如,電子郵件服務或網頁 服務)可能會受一中斷所影響時。 雖然、本發明之作為例證的具體實施例已經在本文中依 據附【而描$,必須了解的i,本發明並不侷限於這些明 確的具體實&例,而且其他不同的修改及調整係可以被熟 習此項技術 考實現而不背離本發明的精神與範圍。
«MOTTUV.ptd 第54頁 1234977 圖式簡單說明 圖1之方塊圖示例一主從應用程式架構,本發明之此功能 可經由主從兩者之互動產生資訊; 圖2 A之方塊圖說明一個依據本發明實施例提供相依關係管 理之系統; 實作之相依關 圖2 B之方塊圖說明一個依據本發明實施例 係管理系統的一般化硬體架構; 圖3之方塊圖說明依據本發明之實施例,所得服務之功能 相依關係模型; 圖4之方塊圖說明依據本發明之實施例,所得服務之結構 相依關係模型; 圖5之方塊圖依據本發明實施例,以功能、結構與作業模 型,說明服務之生命週期; 、 圖6之方塊圖說明依據本發明之實施例中的功能、結構、 與作業相依關係模型間之關聯性; 圖7之方塊圖說明按照本發明之實施例,分析與計算一服 務中斷時潛在性衝擊之元件; 圖8之方塊圖說明本發明實施例中衝擊模擬器與脆弱性 析态之元件; 圖9之流程圖說明了依據本發明實施例,喚起一 服務,並於一作業模型中勃并;胃係 甲執仃衝擊杈擬與脆弱性分析之步 驟, 圖10之流程圖說明了依據本發明之實施例 與更新功能相依關係模型時進行的工作; 有建立 圖11之流程圖說明在本發明眘# 山 I明貫轭例中,在一分散式運算環
4IBM0373TW.ptd 第55頁 1234977 一1 - 圖式簡單說明 土兄中基於衝擊模擬與脆弱性分析,而 驟; 月除脆弱性之管理步 圖1 2之流程圖說明在本發明實施例中, 7刀析於作業模型上的成效; 衝擊杈擬與脆弱性 圖1 3之流程圖說明在本發明實施例中, 一 行衝擊模擬與脆弱性分析的成效;以及 力之子元件進 圖14係依照本發明具體實施例之 析應用程式介面範例。 訂搫杈擬與脆弱性分 圖示元件符號說明 10 0 管理者 110 網路 12 0 網路應用程式伺服器 125 資料庫伺服器 135 中斷 2 05 服務層 215 資源層級 2 2 5 資源相依關係儲存庫 2 3 5 管理溝通架構 2 4 5 相依關係服務 2 5 5 拓樸資料庫 2 65 拓樸產生器 275 衝擊模擬器 285 管理者圖形使用者介 105客戶端系統 115 網路存取 123 網路 130 資料庫 2 0 0 應用程式層 210 中繼軟體層 220受管理資源 23 0 儲存庫代理程式 240端對端相依關係儲存庫 250同屬管理服務 2 6 0 錯誤管理器 270 衝擊分析器 280 真因分析器
1234977
2 90 處理器 2 94 輸入/輸出裝置 3 0 5 網路應用服務 315 名稱解析服務 325 作業系統 4 0 0 完整網域名稱 410電子商務應用程式 420 網路服務 4 3 0 網際網路服務 440 作業系統 510 結構模型 525 APACHE常駐程式 535 ORACLE常駐程式 5 5 0 HTTPD常駐程式 5 6 0 NAMED常駐程式 610 結構範本 620 管理系統 70 0 名稱解析 715 事件服務 7 3 0 網頁伺服器 292 記 憶 體 300 電 子 商 務 應 用 程 式 310 網 路 服 務 320 網 際 網 路 協 定 服 務 330 資 料 庫 服 務 405 完 整 網 域 名 稱 415 網 路 應 用 服 務 425 作 業 系 統 435 資 料 庫 50 0 功 能 模 型 520 作 業 模 型 530 DOMINO 常 駐 程 式 545 WEBSPHERE 常 駐 程 式 555 DB2D 常 駐 程 式 605 功 能 範 本 615 作 業 範 本 625 隨 選 計 算 710 交 易 員 服 務 725 網 頁 祠 服 器 735 一般資訊模型物件管理者 740 XML檔案 745 750 一般> 模型提供者 800 810 網域相依關係資料庫 820 糸統儲存庫 受管理資源 使用者訂購管理者
1234977 圖式簡單說明 830 衝擊相關器 835 使用者/服務資料庫 840 請求 850 資訊
Bill 4IBM0373TW.ptd 第58頁

Claims (1)

1234977 六、申請專利範圍 ^ —種以電腦為基礎確定一 法,用於在與一運 包含步驟· 模擬條件的—潛在影響的方 兄相關的至少-特定元件,該方法 一辨識s亥運算環境中依賴該至少一 _ :件,並且確定與每個該被辨識元件件的一或多個 恶;以及 相關的一潛在條件狀 呈現資訊給一使用者,係 的至少-部份之該-或多個被辨識;:该相對應條件狀態 該運算環境包含一 該運算環境包含一 \如申請專利範圍第i 分散式運算環境。 i方去’其中 3·如申請專利範圍第丨JS夕+ 自主式運算環境。第項之方法,其中 4·如申請專利範圍第丨項之 的資訊包含一脆弱性之一万决,其中該呈現給該使用者 條件狀態的至少一部彳八 示内容’係有關基於該相對應 77 <5亥一或多個被辨識元件。 5·如申請專利範圍第4項 脆弱性分布圖,標示有、—法,其中該表示内容包含一 各別失誤可能性。 母個該一或多個被辨識元件的一 其中該呈現給該使用者 6·如申請專利範圍第丨項之方法
第59頁 1234977 六 、申請專利範圍 潛在受影響終端使用者 以及一潛在受影響之主 的資訊包含下列至少其中之一: 列表 潛在受影響之元件列表 機列表。 』表 7 ·如申請專利範圍第1項之方法^ _ 的資訊可以包含一比較内容,’/、中该呈現給該使用者 模擬條件的該潛在影響之一確nJ穴特定元件之該 5亥模擬條件的該潛在影響t至少_ ::確1 J定70件之 者便驗證在該一確定與該至二疋,因此該使用 至少最小化該潛在f塑w /、他確定之間,所採用以 朁在心響的-或多個步驟,是否實質有效。 8·如申請專利範圍第1項之方法,i 是該運算環境中__存在的元件去其中该至少-特定元件 9.如申請專利範圍第丨項之方法,其中該至少一 不是該運算環境中一存在的元件。 ·疋件 10人如申明專利範圍第1項之方法,其中該辨識步驟進一」 包含巡查一或多個關係的一存在代表模型之至少一部份^ 係關於該運算環境之至少一部份元件,且有能力計 該運算環境的至少一元件之一完整生命週期。 ; Π·如申請專利範圍第1 0項之方法,其中該模型係呈現為 一形式,包含一功能類別、一結構類別及一作業類別。
1234977
1 2 ·如申請專利範圍第丨丨項 步包含計算基於至少一輸入 查该作業類別以辨識該運算 的一或多個元件。 之方法,其中該辨識步驟進一 準則之遠作業類別模型,及巡 環境中依賴該至少一特定元件 :::請專利範圍第12項之方法 關於該至少-之.f至少一特定元件之-名稱、 查木度、該巡查之-路徑、以及至少一筛選準則。 14·如申請專利範圍第1項之太 甘士 + , -^ #,/ . 夂如利範;Γ項之方法,其中-元件係下列其中 勒_ +、一 >、 應用辁式、中介軟體、硬體、一設備驅 王 > 作業系統、以及關於該運算環境之一系統。 1 一6·、5:ΐϊ定一模擬條件的一潛在影響之裝置,用於在與 :兄相關的至少一特定元件,該裝置包含: #紹^ ^ /1、處理器進行以下作業:(i )辨識該運算環境中 广以>、^ 一特定元件的一或多個元件,並且確定與每個 該被f識凡件相關的一潛在條件狀態;以及(i i )呈現資 5fl給一使用者,係有關基於該相對應條件狀態的至少一部
記憶體 六、申請專利範® 份之該一或多
以及 連結至該至少一處理器 至少一部份結果。 且儲存闕於 該辨識 17·如辛請專利範圍第16項之裝置 一分散式運算環境。 其令該運算環境包 含 其中該運算環境包含 18·如申請專利範圍第丨6項之裝置 一自主式運算環境。 1 9·=申請專利範圍第1 6項之裝置,其中該呈現給該使用 者的資訊包含一脆弱性之一表示内容,係有關基於該相對 應條件狀態的至少一部份之該一或多個被辨識元件。 20·如申請專利範圍第19項之裝置,其中該表示内容包含 一跪弱性分布圖,標示有關每個該一或多個被辨識元件的 一各別失誤可能性。' 2 1 · ^申請專利範圍第1 6項之裝置,其中該呈現給該使用 者的資訊包含下列至少其中之一:一潛在受影響終端使用 者列表、一潛在受影樂之元件列表、以及一潛在受影響之 主機列表。 ” ^ 2 2 ·如申請專利範圍第1 6項之裝置,其中該呈現給該使用
4IBM0373TW.ptd 第62頁 1234977
六、申請專利範圍 者的資訊可以包含一比較内容,比較該至少一特定元件之 該模擬條件的該潛在影響之一確定,與該至少一特定元件 之該模擬條件的該潛在影響之至少一其他確定,因此該使 用者便驗證在該一確定與該至少一其他確定之間,所採用 以至少最小化該潛在影響的一或多個步驟,是否實質有 23·如申請專利範圍第16項之裝置,其中該至少一特定一 件是該運算環境中一存在的元件。 疋70 24·如申請專利範圍第16項之裝置,其中該至少一一 件不是該運算環境中一存在的元件。 疋70 25·如申請專利範圍第16項之裝置,其中該辨識作業進一 步^包含巡查一或多個關係的一存在代表模型之至少一部 份,係關於該運算環境之至少一部份元件,且有能力;瞀 關於該運算環境的至少一元件之一完整生命週期。 26'如申請專利範圍第託項之裝置 — 形式,包含一功能類別、一結構類別及一作業類別 27·如申請專利範圍第26項之裝置,其中該辨識作鱟、隹 1 3叶异基於至少一輸入準則之該作業類別模型,芬、,,, 一 ^作菜類別以辨識該運算環境中依賴該至少一特定元件
4IBM0373TW.ptd 第63頁 1234977 六、申請專利範圍 的 或多個元件 28·如申請專利範圍第27項之裝置,其中該至少一輸入準 則包含下列至少其中之一:該至少一特定元件之一名稱、 關於該至少一特定元件之一主機、該巡查之一方向、該巡 查之一深度、該巡查之一路徑、以及至少一篩選準則。 29·如申請專利範圍第16項之裝置,其中該至少一特定元 =之忒條件係屬於失效、非失效、以及效能降低其中之 3?·種確定—模擬條件的一潛在影響的製成。,4八 機械可讀媒介,具有一或多個程式於二 —辨識該運算環境中依賴該至少一特;=二:ί驟 凡件,並且確定與每個該被辨 漱t =夕個 態;以及 什相關的一潛在條件狀 的至di: —使用•,係有關基於該相對應條件狀能 扪主V 。卩伤之該一或多個被辨識元件。 1干狀怨
4IBM0373TW.ptd 第64頁
TW092124578A 2002-09-11 2003-09-05 Methods and apparatus for dependency-based impact simulation and vulnerability analysis TWI234977B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/241,397 US7334222B2 (en) 2002-09-11 2002-09-11 Methods and apparatus for dependency-based impact simulation and vulnerability analysis

Publications (2)

Publication Number Publication Date
TW200417221A TW200417221A (en) 2004-09-01
TWI234977B true TWI234977B (en) 2005-06-21

Family

ID=31991186

Family Applications (1)

Application Number Title Priority Date Filing Date
TW092124578A TWI234977B (en) 2002-09-11 2003-09-05 Methods and apparatus for dependency-based impact simulation and vulnerability analysis

Country Status (3)

Country Link
US (1) US7334222B2 (zh)
JP (1) JP4426797B2 (zh)
TW (1) TWI234977B (zh)

Families Citing this family (107)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003216547A (ja) * 2002-01-23 2003-07-31 Murata Mach Ltd 通信装置及びプログラム
US6856942B2 (en) * 2002-03-09 2005-02-15 Katrina Garnett System, method and model for autonomic management of enterprise applications
US7680818B1 (en) * 2002-12-18 2010-03-16 Oracle International Corporation Analyzing the dependencies between objects in a system
US9118710B2 (en) 2003-07-01 2015-08-25 Securityprofiling, Llc System, method, and computer program product for reporting an occurrence in different manners
US9118708B2 (en) 2003-07-01 2015-08-25 Securityprofiling, Llc Multi-path remediation
US20070113272A2 (en) 2003-07-01 2007-05-17 Securityprofiling, Inc. Real-time vulnerability monitoring
US9118711B2 (en) 2003-07-01 2015-08-25 Securityprofiling, Llc Anti-vulnerability system, method, and computer program product
US9118709B2 (en) 2003-07-01 2015-08-25 Securityprofiling, Llc Anti-vulnerability system, method, and computer program product
US8984644B2 (en) 2003-07-01 2015-03-17 Securityprofiling, Llc Anti-vulnerability system, method, and computer program product
US9100431B2 (en) 2003-07-01 2015-08-04 Securityprofiling, Llc Computer program product and apparatus for multi-path remediation
US9350752B2 (en) 2003-07-01 2016-05-24 Securityprofiling, Llc Anti-vulnerability system, method, and computer program product
US7409676B2 (en) * 2003-10-20 2008-08-05 International Business Machines Corporation Systems, methods and computer programs for determining dependencies between logical components in a data processing system or network
US7509373B2 (en) * 2003-11-24 2009-03-24 At&T Intellectual Property I, L.P. Methods for providing communications services
US7506335B1 (en) 2003-11-29 2009-03-17 Cisco Technology, Inc. Method and apparatus for software loading and initialization in a distributed network
US7461374B1 (en) * 2003-12-01 2008-12-02 Cisco Technology, Inc. Dynamic installation and activation of software packages in a distributed networking device
US7552447B2 (en) * 2004-05-26 2009-06-23 International Business Machines Corporation System and method for using root cause analysis to generate a representation of resource dependencies
WO2006007443A1 (en) * 2004-06-16 2006-01-19 State Of Oregon Acting By And Through The State Board Of Higher Education On Behalf Of Portland State University System and method for simulating global product development
EP1771785A2 (en) * 2004-07-21 2007-04-11 Softricity, Inc. System and method for extraction and creation of application meta-information within a software application repository
US7900201B1 (en) 2004-12-21 2011-03-01 Zenprise, Inc. Automated remedying of problems in software application deployments
US7383516B2 (en) * 2005-04-13 2008-06-03 Microsoft Corporation Systems and methods for displaying and editing hierarchical data
US7383161B2 (en) 2005-04-13 2008-06-03 Microsoft Corporation Systems and methods for device simulation
US7979520B2 (en) * 2005-04-15 2011-07-12 Microsoft Corporation Prescriptive architecture recommendations
US7552036B2 (en) * 2005-04-15 2009-06-23 Microsoft Corporation Preconditioning for stochastic simulation of computer system performance
US7689616B2 (en) * 2005-04-15 2010-03-30 Microsoft Corporation Techniques for specifying and collecting data aggregations
AU2005331434B2 (en) * 2005-04-25 2009-11-26 Fujitsu Limited Monitoring simulating device, method, and program
WO2006117831A1 (ja) * 2005-04-25 2006-11-09 Fujitsu Limited ネットワーク設計処理装置,方法およびそのプログラム
WO2007089786A2 (en) * 2006-01-30 2007-08-09 Sudhakar Govindavajhala Identifying unauthorized privilege escalations
JP2007207059A (ja) * 2006-02-03 2007-08-16 Nec System Technologies Ltd 検出システム、データ処理装置、検出方法およびプログラム
US7770052B2 (en) * 2006-05-18 2010-08-03 The Boeing Company Collaborative web-based airplane level failure effects analysis tool
US7584163B2 (en) * 2006-09-14 2009-09-01 Sap Ag Method and system for expression evaluation
CN100536479C (zh) * 2006-10-10 2009-09-02 华为技术有限公司 业务创建系统及方法
US7996816B2 (en) * 2006-11-15 2011-08-09 International Business Machines Corporation Method and apparatus for dynamically binding service component implementations for specific unit test cases
US8150662B2 (en) * 2006-11-29 2012-04-03 American Express Travel Related Services Company, Inc. Method and computer readable medium for visualizing dependencies of simulation models
US8689186B2 (en) * 2006-12-20 2014-04-01 Oracle America, Inc. Execution of a BPEL process by simulating partners
US7930321B2 (en) * 2007-10-31 2011-04-19 Bank Of America Corporation Reference architecture framework
US8301755B2 (en) * 2007-12-14 2012-10-30 Bmc Software, Inc. Impact propagation in a directed acyclic graph
US8051164B2 (en) * 2007-12-14 2011-11-01 Bmc Software, Inc. Impact propagation in a directed acyclic graph having restricted views
US9054942B1 (en) * 2007-12-20 2015-06-09 Amazon Technologies, Inc. Monitoring of services
US8954550B2 (en) * 2008-02-13 2015-02-10 Microsoft Corporation Service dependency discovery in enterprise networks
US8255192B2 (en) * 2008-06-27 2012-08-28 Microsoft Corporation Analytical map models
US8620635B2 (en) * 2008-06-27 2013-12-31 Microsoft Corporation Composition of analytics models
US8411085B2 (en) * 2008-06-27 2013-04-02 Microsoft Corporation Constructing view compositions for domain-specific environments
US8117145B2 (en) * 2008-06-27 2012-02-14 Microsoft Corporation Analytical model solver framework
US20090322739A1 (en) * 2008-06-27 2009-12-31 Microsoft Corporation Visual Interactions with Analytics
CN102165433A (zh) * 2008-07-31 2011-08-24 Juma技术公司 模块化软件系统中为命令选路的系统和方法
US8103608B2 (en) * 2008-11-26 2012-01-24 Microsoft Corporation Reference model for data-driven analytics
US8145615B2 (en) * 2008-11-26 2012-03-27 Microsoft Corporation Search and exploration using analytics reference model
US8155931B2 (en) * 2008-11-26 2012-04-10 Microsoft Corporation Use of taxonomized analytics reference model
US8190406B2 (en) * 2008-11-26 2012-05-29 Microsoft Corporation Hybrid solver for data-driven analytics
JP2012510656A (ja) * 2008-11-28 2012-05-10 インチロン ゲーエムベーハー データ処理の方法、システム、およびシミュレーション又は解析モデル
JP4469910B1 (ja) * 2008-12-24 2010-06-02 株式会社東芝 セキュリティ対策機能評価プログラム
US8314793B2 (en) * 2008-12-24 2012-11-20 Microsoft Corporation Implied analytical reasoning and computation
US7979747B2 (en) * 2009-02-20 2011-07-12 International Business Machines Corporation Interactive problem resolution presented within the context of major observable application behaviors
US20100217867A1 (en) * 2009-02-25 2010-08-26 International Business Machines Corporation System and method for creating and using service dependency graphs to automate the development and deployment of service oriented applications
US8134935B2 (en) * 2009-05-22 2012-03-13 International Business Machines Corporation Transaction topology discovery using constraints
US9330503B2 (en) 2009-06-19 2016-05-03 Microsoft Technology Licensing, Llc Presaging and surfacing interactivity within data visualizations
US8788574B2 (en) * 2009-06-19 2014-07-22 Microsoft Corporation Data-driven visualization of pseudo-infinite scenes
US8493406B2 (en) * 2009-06-19 2013-07-23 Microsoft Corporation Creating new charts and data visualizations
US8692826B2 (en) * 2009-06-19 2014-04-08 Brian C. Beckman Solver-based visualization framework
US20100325564A1 (en) * 2009-06-19 2010-12-23 Microsoft Corporation Charts in virtual environments
US8531451B2 (en) * 2009-06-19 2013-09-10 Microsoft Corporation Data-driven visualization transformation
US8866818B2 (en) 2009-06-19 2014-10-21 Microsoft Corporation Composing shapes and data series in geometries
US8259134B2 (en) * 2009-06-19 2012-09-04 Microsoft Corporation Data-driven model implemented with spreadsheets
US9384080B2 (en) * 2009-09-01 2016-07-05 International Business Machines Corporation Synchronizing problem resolution task status using awareness of current state and transaction history
US8352397B2 (en) * 2009-09-10 2013-01-08 Microsoft Corporation Dependency graph in data-driven model
US9483746B2 (en) 2009-11-02 2016-11-01 International Business Machines Corporation Comparing utility and warranty of services
US20110119202A1 (en) * 2009-11-13 2011-05-19 Bank Of America Corporation Automated, self-learning tool for identifying impacted business parameters for a business change-event
US8707293B2 (en) * 2010-03-03 2014-04-22 Red Hat, Inc. Package management system
US8601462B2 (en) 2010-06-17 2013-12-03 International Business Machines Corporation Modifying a multi-module application
US9043296B2 (en) 2010-07-30 2015-05-26 Microsoft Technology Licensing, Llc System of providing suggestions based on accessible and contextual information
CN103635908B (zh) * 2011-06-24 2018-01-30 皇家飞利浦有限公司 离开就绪性指标
JP5949785B2 (ja) * 2012-01-27 2016-07-13 富士通株式会社 情報処理方法、装置及びプログラム
US9015289B2 (en) 2012-04-12 2015-04-21 Netflix, Inc. Method and system for evaluating the resiliency of a distributed computing service by inducing a latency
WO2014002557A1 (ja) * 2012-06-29 2014-01-03 日本電気株式会社 共有リスク影響度評価システム、共有リスク影響度評価方法、およびプログラム
US9665359B2 (en) 2013-09-13 2017-05-30 Microsoft Technology Licensing, Llc Automatically resolving conflicts after installation of selected updates in a computer system
US9626176B2 (en) 2013-09-13 2017-04-18 Microsoft Technology Licensing, Llc Update installer with technical impact analysis
US10026064B2 (en) 2013-09-13 2018-07-17 Microsoft Technology Licensing, Llc Automatically recommending updates based on stored lifecycle information
US9830142B2 (en) 2013-09-13 2017-11-28 Microsoft Technology Licensing, Llc Automatic installation of selected updates in multiple environments
US9473347B2 (en) 2014-01-06 2016-10-18 International Business Machines Corporation Optimizing application availability
US20150193783A1 (en) * 2014-01-07 2015-07-09 Bank Of America Corporation Assessing Client Impact
US9489517B2 (en) * 2014-10-21 2016-11-08 Fujitsu Limited Determining an attack surface of software
CN105808619B (zh) * 2014-12-31 2019-08-06 华为技术有限公司 基于影响分析的任务重做的方法、影响分析计算装置及一键重置装置
US10217067B2 (en) 2015-03-11 2019-02-26 International Business Machines Corporation System, method and program product for scheduling interventions on allocated resources with minimized client impacts
US9747153B2 (en) * 2015-06-22 2017-08-29 Microsoft Technology Licensing, Llc Resilience as a service
US10536349B1 (en) * 2015-12-31 2020-01-14 VCE IP Holding Company LLC Configuration system and method for an integrated computing system
US10346615B2 (en) * 2016-12-29 2019-07-09 Intel Corporation Rule driven patch prioritization
US10666507B2 (en) * 2017-06-30 2020-05-26 Microsoft Technology Licensing, Llc Automatic reconfiguration of dependency graph for coordination of device configuration
US10469327B1 (en) * 2017-10-18 2019-11-05 Vulcan Inc. Operations environment model and simulation to reduce operator error
US10601857B2 (en) 2017-11-28 2020-03-24 International Business Machines Corporation Automatically assessing a severity of a vulnerability via social media
US11075925B2 (en) 2018-01-31 2021-07-27 EMC IP Holding Company LLC System and method to enable component inventory and compliance in the platform
US10783065B2 (en) 2018-03-23 2020-09-22 Sungard Availability Services, Lp Unified test automation system
US10754708B2 (en) 2018-03-28 2020-08-25 EMC IP Holding Company LLC Orchestrator and console agnostic method to deploy infrastructure through self-describing deployment templates
US10693722B2 (en) 2018-03-28 2020-06-23 Dell Products L.P. Agentless method to bring solution and cluster awareness into infrastructure and support management portals
US11086738B2 (en) 2018-04-24 2021-08-10 EMC IP Holding Company LLC System and method to automate solution level contextual support
US10795756B2 (en) * 2018-04-24 2020-10-06 EMC IP Holding Company LLC System and method to predictively service and support the solution
US11599422B2 (en) 2018-10-16 2023-03-07 EMC IP Holding Company LLC System and method for device independent backup in distributed system
US10862761B2 (en) 2019-04-29 2020-12-08 EMC IP Holding Company LLC System and method for management of distributed systems
US11301557B2 (en) 2019-07-19 2022-04-12 Dell Products L.P. System and method for data processing device management
US11405260B2 (en) * 2019-11-18 2022-08-02 Juniper Networks, Inc. Network model aware diagnosis of a network
CN113206749B (zh) 2020-01-31 2023-11-17 瞻博网络公司 网络事件的相关性的可编程诊断模型
US11533215B2 (en) 2020-01-31 2022-12-20 Juniper Networks, Inc. Programmable diagnosis model for correlation of network events
US11748458B2 (en) 2020-04-15 2023-09-05 Codelogic, Inc. Systems and methods for a governance engine
US11269711B2 (en) 2020-07-14 2022-03-08 Juniper Networks, Inc. Failure impact analysis of network events
US11550925B2 (en) 2021-03-24 2023-01-10 Bank Of America Corporation Information security system for identifying potential security threats in software package deployment
US11593192B2 (en) * 2021-05-17 2023-02-28 International Business Machines Corporation Detecting resource redundancy and conflicts in a heterogeneous computing environment
US11645056B2 (en) * 2021-07-15 2023-05-09 Intuit Inc. Capturing variable dependencies using a variable agnostic object
CN115048315B (zh) * 2022-07-06 2024-09-17 东软睿驰汽车技术(沈阳)有限公司 自动驾驶仿真测试结果的分析方法、装置和电子设备

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US583577A (en) * 1897-06-01 Wire fence
US4751635A (en) 1986-04-16 1988-06-14 Bell Communications Research, Inc. Distributed management support system for software managers
EP0264098B1 (en) * 1986-10-14 1995-01-04 Sharp Kabushiki Kaisha Input system for use in a portable type data processing device
EP0496494A3 (en) 1991-01-22 1993-05-12 International Business Machines Corporation Software maintenance system
US5500940A (en) * 1994-04-25 1996-03-19 Hewlett-Packard Company Method for evaluating failure in an electronic data storage system and preemptive notification thereof, and system with component failure evaluation
DE4428132C2 (de) 1994-08-06 1996-07-18 Ibm Verfahren zur automatischen Überprüfung eines Datenübertragungsnetzwerks
US5652867A (en) * 1994-09-08 1997-07-29 Sabre Decision Technologies, A Division Of The Sabre Group, Inc. Airline flight reservation system simulator for optimizing revenues
US5805891A (en) 1995-07-26 1998-09-08 International Business Machines Corporation System and method for managing maintenance of computer software
US5835777A (en) 1996-03-20 1998-11-10 Hewlett-Packard Company Method of automatically generating a software installation package
US6612382B2 (en) * 1996-03-25 2003-09-02 Halliburton Energy Services, Inc. Iterative drilling simulation process for enhanced economic decision making
US5721824A (en) 1996-04-19 1998-02-24 Sun Microsystems, Inc. Multiple-package installation with package dependencies
US5867714A (en) 1996-10-31 1999-02-02 Ncr Corporation System and method for distributing configuration-dependent software revisions to a computer system
GB9623298D0 (en) 1996-11-08 1997-01-08 Int Computers Ltd Updating mechanism for software
US5960196A (en) 1996-12-18 1999-09-28 Alcatel Usa Sourcing, L.P. Software release metric reporting system and method
US5953533A (en) 1997-08-27 1999-09-14 Lucent Technologies Inc. Computer software distribution, installation and maintenance method and apparatus
US6009525A (en) 1997-08-29 1999-12-28 Preview Systems, Inc. Multi-tier electronic software distribution
DE19742446B4 (de) * 1997-09-26 2006-05-24 Daimlerchrysler Ag Fehlerdiagnoseverfahren
JP3875436B2 (ja) 1999-10-28 2007-01-31 富士通株式会社 ネットワーク管理装置および記録媒体
JP2001222424A (ja) 2000-02-08 2001-08-17 Fujitsu Ltd ソフトウェアライセンス管理装置,ソフトウェアライセンス管理方法およびソフトウェアライセンス管理用プログラム記録媒体
WO2001075677A1 (en) 2000-04-04 2001-10-11 Goahead Software Inc. Constructing a component management database for managing roles using a directed graph
US6496814B1 (en) * 2000-07-19 2002-12-17 International Business Machines Corporation Method and system for integrating spatial analysis, and scheduling to efficiently schedule and monitor infrastructure maintenance
US20020147966A1 (en) * 2001-02-14 2002-10-10 Ncr Corporation Operating software performance monitor
US6651187B2 (en) * 2001-12-31 2003-11-18 Globespanvirata Inc. System and method for determining fault path behavior
US20030187967A1 (en) * 2002-03-28 2003-10-02 Compaq Information Method and apparatus to estimate downtime and cost of downtime in an information technology infrastructure

Also Published As

Publication number Publication date
TW200417221A (en) 2004-09-01
JP2004103014A (ja) 2004-04-02
US7334222B2 (en) 2008-02-19
JP4426797B2 (ja) 2010-03-03
US20040049372A1 (en) 2004-03-11

Similar Documents

Publication Publication Date Title
TWI234977B (en) Methods and apparatus for dependency-based impact simulation and vulnerability analysis
TWI238329B (en) Methods and apparatus for root cause identification and problem determination in distributed systems
KR100546973B1 (ko) 분산 시스템에서의 의존관계 관리 방법 및 장치
US11068383B2 (en) Service oriented architecture infrastructure for business process verification and systems integrated testing
US7240325B2 (en) Methods and apparatus for topology discovery and representation of distributed applications and services
US8346931B2 (en) Conditional computer runtime control of an information technology environment based on pairing constructs
US7505872B2 (en) Methods and apparatus for impact analysis and problem determination
US8751283B2 (en) Defining and using templates in configuring information technology environments
US8375244B2 (en) Managing processing of a computing environment during failures of the environment
US8447859B2 (en) Adaptive business resiliency computer system for information technology environments
US8782662B2 (en) Adaptive computer sequencing of actions
US8428983B2 (en) Facilitating availability of information technology resources based on pattern system environments
US20090172674A1 (en) Managing the computer collection of information in an information technology environment
US20090171703A1 (en) Use of multi-level state assessment in computer business environments
US20040237077A1 (en) Business systems management solution for end-to-end event management
US20090171730A1 (en) Non-disruptively changing scope of computer business applications based on detected changes in topology
US20160125052A1 (en) Database virtualization
US20070226231A1 (en) Systems and methods for managing business issues
US20070162494A1 (en) Embedded business process monitoring
Xiang et al. No free lunch: Microservice practices reconsidered in industry
Denaro et al. Performance testing of distributed component architectures
Keller et al. Measuring Application response times with the CIM Metrics Model
Stefanovic et al. Monitoring and Data Protection
Strasser Long-term workload monitoring: workload management on distributed OS/2 server systems
Salfischberger Design Patterns for Runtime Variability of Business Software as a Service

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees