亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種簡單網(wǎng)絡(luò)管理協(xié)議管理應(yīng)用層事務(wù)回滾方法

文檔序號:7973789閱讀:308來源:國知局
專利名稱:一種簡單網(wǎng)絡(luò)管理協(xié)議管理應(yīng)用層事務(wù)回滾方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種在SNMP管理框架中管理者(Manager)實現(xiàn)應(yīng)用層事 務(wù)回滾的方法,尤其涉及以SNMP為管理接口的網(wǎng)絡(luò)、網(wǎng)元配置管理領(lǐng)域。
背景技術(shù)
SNMP (簡單網(wǎng)絡(luò)管理協(xié)議)是網(wǎng)絡(luò)管理中基于UDP才艮文的一種管理協(xié) 議,用于管理者(Manager)和代理(Agent)之間進行簡單地管理操作。
在SNMP管理協(xié)議中共有g(shù)et、 getnext、 set、 get-response、 trap五種消 息,其中的get、 getnext、 set操作是Manager發(fā)送給Agent的消息,用于i殳 置或獲取SNMP的管理變量。Manager對網(wǎng)元設(shè)備進行管理時就是通過使 用上迷操作對網(wǎng)元進行各種讀和寫操作的。
不過,由于SNMP協(xié)議是簡單的管理協(xié)議,除了每個原子操作(get、 getnext、 set) SNMP協(xié)議棧實現(xiàn)了會話事務(wù)處理外,由這些原子操作組成的 應(yīng)用層事務(wù)則沒有相應(yīng)的事務(wù)處理機制。而事務(wù)處理機制的核心是事務(wù)回滾 機制。這樣就往往造成了應(yīng)用層事務(wù)回滾每個SNMP應(yīng)用程序都要自行處 理,缺乏統(tǒng)一的處理機制。既不利于軟件的維護,也不利于增強軟件可靠性。

發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種簡單網(wǎng)絡(luò)管理協(xié)議管理應(yīng)用層 事務(wù)回滾方法,為SNMP Manager管理框架提供統(tǒng)一的應(yīng)用事務(wù)回滾機制, 便于系統(tǒng)維護,提高系統(tǒng)可靠性。
為了解決上述技術(shù)問題,本發(fā)明提供了 一種簡單網(wǎng)絡(luò)管理協(xié)議管理應(yīng)用
層事務(wù)回滾方法,所述簡單網(wǎng)絡(luò)管理協(xié)議以下簡稱SNMP,涉及SNMP管理 者和SNMP代理,所述方法包括以下步驟
(a ) SNMP管理者向SNMP代理下發(fā)SNMP設(shè)置命令前,構(gòu)造所述設(shè) 置命令反操作的SNMP命令并將其壓入堆棧中;
(b) 所迷SNMP管理者向SNMP代理下發(fā)SNMP設(shè)置命令;
(c) 所述SNMP管理者判斷所述命令是否執(zhí)行成功,如果命令執(zhí)行失 敗,則將堆棧中的命令按后進先出依次取出并執(zhí)行,完成回滾。
進一步地,上述方法還可具有以下特點所述堆棧為Java Stack,所述 壓入堆棧采用Stack.push(),所述取出堆棧采用Stack.pop()。
進一步地,上述方法還可具有以下特點在所述步驟(a)中,在構(gòu)造 所述設(shè)置命令的反操作命令前,先進行下發(fā)SNMP設(shè)置命令的準備,包括 準備建立SNMP通訊的對象,構(gòu)造好下發(fā)命令的對象標識符以及對應(yīng)的 SNMP變量。
進一步地,上述方法還可具有以下特點在所述步驟(c)中,如果所 述命令執(zhí)行成功,則判斷全部設(shè)置命令是否下發(fā)完畢,如果是,結(jié)束,否則, 返回步驟(a)。
進一步地,上述方法還可具有以下特點在所述步驟(c)中,執(zhí)行堆 棧中的命令后判斷堆棧中是否還有SNMP設(shè)置命令的反操作命令,如果有, 繼續(xù)從堆棧中取出命令并執(zhí)行,直到全部執(zhí)行完畢。
采用本發(fā)明所述機制,與現(xiàn)有技術(shù)相比,彌補了 SNMP Manager管理框 架缺乏應(yīng)用層事務(wù)處理的不足,達到了在SNMP應(yīng)用中筒捷使用事務(wù)進行 處理的效果,節(jié)省了網(wǎng)管系統(tǒng)研發(fā)的成本,降低軟件的復(fù)雜度,大大提高了 軟件事務(wù)處理的通用性和可靠性。


圖1是本實施例SNMP應(yīng)用層事務(wù)回滾流程圖。
具體實施例方式
本實施例的思路是利用堆棧先入后出的特性,將每個SNMP Manager 對Agent的原子操作的相反動作記錄在堆棧中,如果Manager需要取消以前 所做的SNMP操作——回滾,則依次執(zhí)行堆棧中存儲的SNMP採作,從而 實現(xiàn)對以前SNMP操作的回滾。
下面對技術(shù)方案的具體實施作進一步的詳細描述,參見附圖1,本實施 例所述SNMP Manager應(yīng)用事務(wù)回滾方法如下
步驟IIO,為存儲SNMP回滾命令建立一個堆棧,比如java的Stack對
步驟120, Manager準備下發(fā)set命令給Agent;
一般是建立SNMP通訊的對象,比如SnmpTarget (SNMP對象),并 構(gòu)造好下發(fā)命令的OID(對象標識符),以及對應(yīng)的SnmpVar( SNMP變量)。
步驟130, Manager構(gòu)造所述set命令的反操作命令; 比如第二步的操作是在Snmp Agent中創(chuàng)建一個行實例,則對應(yīng)的回滾 操作則是刪除這個行實例。
步驟140,將構(gòu)造的回滾命令壓入堆棧;
需要使用堆棧的壓棧方法,比如Stack.push(),把該回滾命令存儲到堆 棧中。
步驟150, Manager向Agent下發(fā)set命令;
步驟160, Manager判斷set命令是否執(zhí)行成功,如果是,執(zhí)行下一步, 否則執(zhí)行步驟180;
步驟170, Manager判斷全部set命令是否下發(fā)完畢,如杲是,結(jié)束,否 則,返回步驟120;
步驟180,使用堆棧的彈出方法,取出堆棧中最上面的命令并執(zhí)行;
堆棧的彈出方法,比如Stack.pop(),該方法把堆棧中最上面的一個對象 取出來。
步驟190,判斷堆棧中是否還有SNMP set命令的反操作命令,如果是, 返回步驟180,否則,結(jié)束。
本發(fā)明建立在SNMP原子操作的基礎(chǔ)上,屬于一種SNMP的應(yīng)用方法, 是在應(yīng)用層上建立的事物處理機制。由于本發(fā)明是一種通用的事務(wù)回滾處理 方法,與具體的SNMP命令不相關(guān),因此可以避免每個應(yīng)用程序自己管理 回滾。
通過以上過程完成了一個具備事務(wù)回滾能力的SNMP事務(wù)操作,由此 可以看出,通過巧妙使用堆棧先入后出的特性,簡捷的組織起了 SNMP Manager應(yīng)用層事務(wù)的隊列,很方便的實現(xiàn)了 SNMP Manager應(yīng)用層事務(wù)回 滾機制,彌補了 SNMPManager管理框架應(yīng)用層事務(wù)處理的不足。
權(quán)利要求
1、一種簡單網(wǎng)絡(luò)管理協(xié)議管理應(yīng)用層事務(wù)回滾方法,所述簡單網(wǎng)絡(luò)管理協(xié)議以下簡稱SNMP,涉及SNMP管理者和SNMP代理,所述方法包括以下步驟(a)SNMP管理者向SNMP代理下發(fā)SNMP設(shè)置命令前,構(gòu)造所述設(shè)置命令反操作的SNMP命令并將其壓入堆棧中;(b)所述SNMP管理者向SNMP代理下發(fā)SNMP設(shè)置命令;(c)所述SNMP管理者判斷所述命令是否執(zhí)行成功,如果命令執(zhí)行失敗,則將堆棧中的命令按后進先出依次取出并執(zhí)行,完成回滾。
2、 如權(quán)利要求l所述的方法,其特征在于,所述堆棧為Java Stack,所 述壓入堆棧采用Stack.push(),所述取出堆棧采用Stack.pop()。
3、 如權(quán)利要求l所述的方法,其特征在于,在所述步驟(a)中,在構(gòu) 造所述設(shè)置命令的反操作命令前,先進行下發(fā)SNMP設(shè)置命令的準備,包 括準備建立SNMP通訊的對象,構(gòu)造好下發(fā)命令的對象標識符以及對應(yīng) 的SNMP變量。
4、 如權(quán)利要求l所述的方法,其特征在于,在所述步驟(c)中,如果 所述命令執(zhí)行成功,則判斷全部設(shè)置命令是否下發(fā)完畢,如果是,結(jié)束,否 則,返回步驟(a)。
5、 如權(quán)利要求l所述的方法,其特征在于,在所述步驟(c)中,執(zhí)行 堆棧中的命令后判斷堆棧中是否還有SNMP設(shè)置命令的反操作命令,如果 有,繼續(xù)從堆棧中取出命令并執(zhí)行,直到全部執(zhí)行完畢。
全文摘要
本發(fā)明公開了一種簡單網(wǎng)絡(luò)管理協(xié)議管理應(yīng)用層事務(wù)回滾方法,為SNMP Manager管理框架提供統(tǒng)一的應(yīng)用事務(wù)回滾機制,便于系統(tǒng)維護,提高系統(tǒng)可靠性,所述方法涉及SNMP管理者和SNMP代理,包括以下步驟(a)SNMP管理者向SNMP代理下發(fā)SNMP設(shè)置命令前,構(gòu)造所述設(shè)置命令反操作的SNMP命令并將其壓入堆棧中;(b)所述SNMP管理者向SNMP代理下發(fā)SNMP設(shè)置命令;(c)所述SNMP管理者判斷所述命令是否執(zhí)行成功,如果命令執(zhí)行失敗,則將堆棧中的命令按后進先出依次取出并執(zhí)行,完成回滾。
文檔編號H04L12/24GK101197698SQ200610161850
公開日2008年6月11日 申請日期2006年12月6日 優(yōu)先權(quán)日2006年12月6日
發(fā)明者蘇春山 申請人:中興通訊股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1