1. <rp id="zsypk"></rp>

      2. 一種改進的移動Agent主動通信算法論文

        時間:2021-06-13 18:54:07 論文 我要投稿

        一種改進的移動Agent主動通信算法論文

          摘要:通信機制是Agent技術(shù)研究的重要課題,該文在移動Agent主動通信算法的基礎(chǔ)上,提出了一種改進的移動Agent主動通信算法,解決了可靠通信問題,通過設(shè)置時間變量和超速等待,在Agent高速移動的情況下,強迫Agent停止移動,避免消息長時間不能傳遞的問題,完成可靠的消息傳遞。

        一種改進的移動Agent主動通信算法論文

          關(guān)鍵詞:移動Agent 主動通信 通信失效 消息等待

          移動智能體(mobile Agent,簡稱MA)是當前分布計算領(lǐng)域的研究熱點。它可以在異構(gòu)網(wǎng)絡(luò)上的主機之間自主遷移,尋找合適的資源,利用與這些資源同處一臺主機或子網(wǎng)的優(yōu)勢,處理或使用這些資源,代表用戶完成特定的任務(wù)。通信機制是移動Agent的關(guān)鍵技術(shù)之一,通信的可靠性和效率直接影響到整個移動Agent系統(tǒng)的性能。

          1 當前研究現(xiàn)狀及存在問題

          1. 1 移動Agent的通信機制

          許多移動Agent支撐系統(tǒng)均提供了移動Agent的通信機制,一是廣播方式,將網(wǎng)絡(luò)看作是以消息發(fā)起者為根結(jié)點的樹型結(jié)構(gòu),廣播方式使得消息可以按某種規(guī)則(如深度優(yōu)先,廣度優(yōu)先)在網(wǎng)絡(luò)中傳遞,直到遍歷所有的葉結(jié)點。二是消息轉(zhuǎn)發(fā)方式,又可細分為Home Agent轉(zhuǎn)發(fā)模式和按路徑轉(zhuǎn)發(fā)模式。在Home Agent轉(zhuǎn)發(fā)模式中,每個移動Agent對應(yīng)一個駐留在初始化結(jié)點上的Home Agent,用于定位移動Agent的當前位置[ 1 ]。在按路徑轉(zhuǎn)發(fā)模式中移動Agent途經(jīng)的每個結(jié)點都保留有其下一目標結(jié)點的位置信息,所有需要傳遞給MA的消息從初始結(jié)點開始按這條路徑傳遞下去,直到移動Agent能真正接收到這些信息[ 2 ]。另外,還有一些移動智能體支撐系統(tǒng)只提供了通用的消息傳遞機制,而將由于移動Agent移動所引發(fā)的問題留給應(yīng)用開發(fā)者處理。

          1. 2 通信失效問題

          在移動Agent的通信過程中,經(jīng)常會發(fā)生如圖1所示的情況:AgentA向Host1上的Agent B發(fā)送消息,但在傳輸過程中,Agent B 從Host1 遷移到了Host2,因而,當消息到達Host1時,已經(jīng)無法找到消息的接受者了,我們把這種在消息傳輸過程中目標Agent發(fā)生物理位置的變化,從而導(dǎo)致消息不能到達目標Agent的問題稱為通信失效問題[ 4 ]。

          現(xiàn)在解決通信失效問題主要都是采用集中式的尋址方式,即基于Home的尋址機制,用Home緩存所有消息,再轉(zhuǎn)發(fā)給Agent,為了不產(chǎn)生沖突,要求Agent在遷移前必須向Home提出請求[ 2 ]。但是這種算法中Home負擔(dān)過重,存在瓶頸問題。當然,也可以采用指針式尋址,采用同步通信的方法從結(jié)構(gòu)上避免了通信失效的發(fā)生[ 3 ]。

          2 主動通信算法

          2. 1 主動通信算法的通信過程

          主動通信算法的主要過程: Agent B從“出生地" Place 2移動到Place3 (圖2中的1) ; B到達Place 3以后,向其Home報告新位置(圖2中的2) ;發(fā)送方A將要發(fā)送的消息發(fā)送給當前Place的Communicator (圖2中的3) ; Communicator通知接收方B的Home (圖2中的4) ; Home通知B到Place1取信息(圖2中的.5) ; B主動聯(lián)系Place1的Communicator并取回信息(圖2中的6) 。接收方的地址對于發(fā)送方是透明的,發(fā)送方在發(fā)送信息的時候只需指定接收者的名字,而不必關(guān)心接收方在哪里或是否正在移動。發(fā)送方將消息發(fā)送給本地的Communicator以后,即認為消息已經(jīng)正確地發(fā)送到接收方,可以繼續(xù)執(zhí)行其他操作[ 5 ] 。

          2. 2 消息等待問題

          主動通信屬于“自由移動通信”方式,發(fā)送方和接受方在通信過程中都可以自由移動,且不會影響通信的可靠性,當接受方從發(fā)送方的Communicator的消息隊列中讀取消息時,接受方如果要發(fā)生移動,會觸發(fā)一個On Leave操作,Agent離開當前位置,發(fā)送方接受一個接受方的中斷請求,此時有兩種情況,發(fā)送方的消息隊列中消息均被取走或者仍有消息未被讀取,當發(fā)生后一種情況時,接受方到達新位置后,再從其Home讀取通知,繼續(xù)讀取剩余消息。但是,如果Agent移動過快,可能會出現(xiàn)下面的情況: Agent讀取消息時,發(fā)生移動產(chǎn)生中斷,接受方到達新位置后繼續(xù)從Home讀取通知,取走剩余消息,消息隊列還未為空,發(fā)送方Agent又有移動中斷,那么消息隊列中可能會有一部分消息長時間的不被讀取。

          2. 3 變量的加入

          為了避免2. 2中出現(xiàn)的情況,我們設(shè)置了一個時間變量和Agent超速等待,來避免有消息長時間不被發(fā)送。我們對Communicator中的每個消息設(shè)一個時間變量Wtime,當Wtime達到我們設(shè)定的一個固定值T0 后,我們認為它等待時間過長,對它進行標記。Agent每移動到一個節(jié)點,都要計算自己的移動速率V (V 為曾經(jīng)到達的節(jié)點個數(shù)/ (當前時間.出生時間)或者現(xiàn)在時刻以前的一段時間內(nèi)到達的節(jié)點個數(shù)/時間跨度) ,當V超過給定的最高速率V0 時,Agent必須與Home建立連接,獲得保存在Home上的發(fā)送方通知,主動去取空接受方Communicator中的等待時間過長的消息。其通信過程和主動通信算法大致相同,但在發(fā)送方A將要發(fā)送的消息發(fā)送給當前Place的Communicator (圖2中的3)時,會觸發(fā)該消息的Wtime變量,Agent B從“出生地" Place 2移動到Place3 (圖2中的1)的時候,Agent會計算它的移動速率V 值,并與V0 比較,當V超過給定的最高速率V0 時,Agent被強制與Home建立連接,獲得保存在Home上的發(fā)送方通知,主動去取空接受方Communicator中的Wtime值超過我們設(shè)定的T0 值的消息。

          3 通信過程的算法實現(xiàn)

          Communicator與通信有關(guān)的操作:

          ReceiveMessage (msg) { /* Communicator收到A發(fā)送的消息時,該操作被觸發(fā)* /

          將msg存入Queue; 初始化Wtime; }

          Interrup t ( ) { IF (Queue不空) {向B的Home發(fā)送“新消息"通知; }

          ELSE Queue. interrup t = false; }

          Home與通信有關(guān)的操作:

          ReceiveMessage (msg) {將“新消息"通知msg存入消息隊列Queue;

          Updata ( ) { IF (Queue不空) haveMessage = true;

          ELSE haveMessage = flase; }

          移動Agent與通信有關(guān)的操作:

          OnArrive ( ) { /* 每當移動Agent到達新位置時,該操作被觸發(fā)* /

          Home2>Updata ( ) ;

          IF ( haveMessage = true) 發(fā)送“消息到達"通知給自己; }

          GetMessagefromHome ( ) { /* Agent接收到“消息到達”通知時,觸發(fā)該操作*/

          While (Home2>Queue不空) { 從Home2>Queue讀取一個通知msg,存入自身的消息隊列Queue; };

          GetLongMessagefromHome ( ) {計算Agent移動速率V;

          WH ILE (V >V0 ∧Wtime > T0 )繼續(xù)從Home2>Queue讀取一個通知msg; }

          SendMessage (msg) { 向本地的Communicator發(fā)送msg; }

          OnLeave ( ) {通知本地的Communicator; }

          4 算法分析及應(yīng)用

          改進的算法同原算法一樣,保證了通信的可靠性,移動A-gent的自由移動性雖然有了一定的限制,但是保證了不會有消息長時間不能到達目標,同時時間變量和Agent超速等待的設(shè)置,避免了消息長時間等待問題的發(fā)生,同樣增加了系統(tǒng)的可靠性。

          該算法在Agent之間展開協(xié)作通信,使若干個移動Agent可以在網(wǎng)絡(luò)中通過可靠通信協(xié)作完成某一項任務(wù),可以應(yīng)用于面向應(yīng)用領(lǐng)域的協(xié)同模式的研究中,提供一種統(tǒng)一的、靈活的分布式計算,使用移動Agent模型搭建各種分布式計算平臺和應(yīng)用,在軟件構(gòu)件技術(shù)和高性能計算環(huán)境方面有十分重要的意義,本算法有助于完善移動智能體支撐環(huán)境,為開發(fā)基于MA的分布式應(yīng)用提供基礎(chǔ)。

          5 結(jié)束語

          本文分析了移動Agent的可靠性通信問題, 在主動通信算法的基礎(chǔ)上,針對消息等待問題進行了改進,提出了一個能夠保證移動Agent之間可靠、高效地進行通信的通信機制,該算法有以下特點: (1)如果底層網(wǎng)絡(luò)可靠通信,則主動通信機制能保證消息的可靠提交; (2)如果底層網(wǎng)絡(luò)可靠通信,主動通信機制承諾消息提交的exactly2once語義。但該算法對移動agent間的自由移動有一定的限制,還有待我們的進一步研究。

          參考文獻:

          [ 1 ] 馮新宇,陶先平,呂建,等. 一種改進的移動Agent通信 算法[ J ]. 計算機學(xué)報, 2005, 25 (4) : 357.

          [ 2 ] 周競揚,陳濤略,呂建,等. 一種高效可靠的移動Agent間通信機制[ J ]. 軟件學(xué)報, 2003, 14 (8) : 1470.

          [ 3 ] 吳兆勝,姜峰,謝俊元. 一種新的移動Agent的可靠通信算法[ J ]. 計算機應(yīng)用研究, 2004, 21 (1) : 219.

          [ 4 ] 吳剛,王懷民,等. 一種移動智能體的位置管理和可靠通信算法[ J ]. 軟件學(xué)報, 2002, 13 (2) : 269.

          [ 5 ] 楊博,劉大有,楊鯤,等. 移動Agent系統(tǒng)的主動通信機制[ J ]. 軟件學(xué)報, 2003, 14 (7) : 1338.

        【一種改進的移動Agent主動通信算法論文】相關(guān)文章:

        關(guān)于移動Agent技術(shù)介紹的論文05-18

        公用移動通信的發(fā)展對專用移動通信的影響論文02-09

        網(wǎng)絡(luò)管理中移動Agent數(shù)據(jù)采集研究論文06-24

        基于移動Agent系統(tǒng)的安全技術(shù)研究論文04-16

        移動通信基站建設(shè)與維護論文06-12

        移動通信市場的相關(guān)論文參考03-31

        基于改進多級中值濾波的加權(quán)濾波算法論文06-16

        移動公司內(nèi)部控制評價及改進論文04-26

        移動通信實踐的課程教學(xué)論文04-08

        99热这里只有精品国产7_欧美色欲色综合色欲久久_中文字幕无码精品亚洲资源网久久_91热久久免费频精品无码
          1. <rp id="zsypk"></rp>