• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      實現虛擬機間快速通信RLMCom方法研究

      2015-05-30 04:44:54肖軍李春鳴潘丹
      科技創(chuàng)新與應用 2015年29期
      關鍵詞:共享內存

      肖軍 李春鳴 潘丹

      摘 要:伴隨著社會經濟的快速發(fā)展,計算機技術得到了很大進步。用戶數據的增多給計算機通信技術帶來了很大壓力,為了緩解這種壓力提高通信的速度,我們采取虛擬機通信技術,而當前基于內存共享的虛擬機技術是不能夠滿足當前復雜的網絡通信要求。對于這個問題,實現同一個計算機上多個虛擬機之間的通信,提出了支持在線遷移的虛擬機通信方法,通過引入加速內存模塊以及改進現有的監(jiān)控器,構造出了支持RLMCom的虛擬機系統。通過改進數據傳輸、系統關閉等方面來支持在線系統。與其他虛擬機系統相比,該系統具有很大的優(yōu)勢,不僅能夠提高通信效率而且還能夠保證通信的準確性。文章就針對這項技術進行相關研究,給該領域的人員提供一定的借鑒。

      關鍵詞:在線遷移;虛擬機間通信;共享內存;編程透明

      1 RLMCom虛擬機系統結構和組成

      1.1總體結構

      由于一臺計算機中可以存在多個虛擬機,這些虛擬機的通信方法是不同的,為了能夠方便通信傳輸,整合多個虛擬機,文章提出了RLMCom的通信方法,該方法能夠快速提高通信傳輸速度。為了能夠讓該系統在計算機上使用,需要對已經存在的虛擬機進行改進,直到能夠支持RLMCom虛擬機系統。具體的結構圖如圖1。

      1.2 系統組成

      從構建支持RLMCom的虛擬機系統的角度,圖1中主要模塊的組成及其工作原理如下。

      1.2.1 虛擬機監(jiān)控器VMM。虛擬機組管理子模塊將所有VM進行全局分組管理,具有相同組ID的VM構成一個虛擬機組,當通信雙方VM在同一虛擬機組時,采用基于共享內存的加速方法來加速通信。在VM啟動或關閉時調用通告管理子模塊為虛擬機組創(chuàng)建或刪除事件緩沖區(qū)。通告管理子模塊在VM啟動或關閉時被虛擬機組管理子模塊調用為虛擬機組創(chuàng)建或回收事件緩沖區(qū)。通告管理子模塊還登記和緩存來自VM的請求對應的事件,并通過通告加速模塊的通告處理子模塊向目標VM發(fā)送事件。在線遷移子模塊保留Xen VMM在線遷移子模塊的在線遷移功能,并添加遷移輔助處理功能到在線遷移子模塊中。在通信加速內核模塊被加載時,添加的遷移輔助處理功能被初始化子模塊激活,生成VM的當前位置號(虛擬機系統中每個VM唯一的位置標志信息)并更新VMM的當前位置號表,調用通信加速內核模塊的VM遷移支持子模塊,使后者獲取該VM當前位置號的一個拷貝,用于在數據傳輸和連接關閉時判斷VM是否發(fā)生了遷移;在接收到外部在線遷移命令并通過原有在線遷移功能完成VM的遷移后,在線遷移子模塊將當前VM遷移前所在物理計算機上的源VMM中保存的連接控制塊、已發(fā)送和已接收字節(jié)數同步到遷移后的目標VMM中,目標VMM的在線遷移子模塊生成被遷移VM的當前位置號,更新當前位置號表中的信息。

      1.2.2 客戶操作系統中通信加速內核模塊

      (1)初始化子模塊。該模塊一般都會在客戶操作系統加載內核模塊之后被系統,它會最先調用不同虛擬機之間的管理模塊來創(chuàng)建并注冊客戶操作系統,然后會向內存共享模塊發(fā)出請求,然后建立一個內存緩存區(qū)。之后還會調用在線遷移模塊生成客戶操作系統的位置號并更新整個位置號表。此外,還會調用客戶操作系統中的遷移模塊,并維護客戶操作系統中位置號,同時還會拷貝這個位置號。在系統調用這些程序的時候還會調用分析器模塊并進行加速通信的模式。初始化子模塊能夠為RLMCom系統提供一個開始環(huán)境。(2)系統調用分析器子模塊。該系統模塊主要是對不同的計算機客戶操作系統間通信截獲向系統調用請求,在這種情況下仍可以使用傳統的處理機制,如果在同一個計算機里客戶操作系統間的通信則通常會使用連接管控模塊和數據傳輸模塊進行關閉或者創(chuàng)建等操作。(3)連接管控子模塊。這部分模塊主要是負責網絡通信之間的信息維護管理,為用戶提供可控的數據結構并連接所有的組織控制模塊。(4)通告處理子模塊。該部分模塊主要是中斷事件注入模塊以及通關管理模塊,同時讀取緩存區(qū)內的事件,并獲取事件之間的相關性,根據具體的事件類型來喚醒客戶操作系統接受數據,并關閉另一方的客戶操作系統的網絡連接。(5)數據傳輸管理子模塊。這部分的模塊主要是處理數據之間的接收和發(fā)送請求。通過客戶操作系統中的遷移支持模塊對在線遷移活動進行判斷,一旦發(fā)生了遷移情況,那么就很容易出現丟失數據,需要重新連接數據,如果沒發(fā)生遷移,那么就可以接到連接控制塊的信息,進而能夠共享緩存區(qū)的信息。

      2 支持在線遷移的關鍵流程

      2.1 主要數據結構

      通過和管控模塊連接主要是為了能夠維護和管理好網絡信息,能夠為在同一計算機上的客戶操作系統之間的網絡信息建立起可控模塊。連接控制塊主要包括了通信雙方的客戶操作系統的IP地址、阻塞式和非阻塞式的標志位、發(fā)送緩存區(qū)和接受緩存區(qū)、等待發(fā)送的隊列以及等待接受的隊列。這些所有的部分相互鏈接就能夠形成連接管控子模塊,在這個模塊中的每一項都會有一個連接的ID號。

      2.2 基于共享內存的數據和控制信息

      客戶操作系統中的通信雙方可以通過虛擬機系統內的共享內存進行信息的交互,使得通信雙方通信更加便捷。客戶操作系統中的一方發(fā)送的信息和另一方發(fā)送的信息都會存儲在緩存區(qū)內并能夠實現共享。在客戶操作系統中的連接建立時就會自動創(chuàng)建連接控制塊,這部分主要就是為了存儲同一臺計算機內的信息資源,當連接被關閉時信息也同時會被刪除??蛻舨僮飨到y雙方是通過事件進行通信的,當事件被存儲在緩存區(qū)內,客戶操作系統中的信息處理模塊就會自動讀取緩存區(qū)內的事件。

      2.3 接收到外部遷移命令時控制信息的同步和更新

      當客戶操作系統接收到來自外界用戶輸入的在線遷移命令之后,在線遷移模塊就會自動完成客戶操作系統的遷移,由遷移輔助處理系統則會把當前客戶操作系統遷移之前的一些數據保存在連接控制塊中,并對已經發(fā)送和已經同比的數據遷移到指定區(qū)域內,同時還會通知在線遷移模塊生成客戶操作系統當前的位置號碼,并直接更新位置號碼表中的信息。通過上面的這些操作就能夠保證虛擬機接收到的信息和當前客戶操作系統中在線遷移的信息保持一致,這也就能夠提高數據的準確性。

      2.4 關鍵流程

      在客戶操作系統實際應用的過程中,通信內核需要接受來自程序以及外部的系統命令的調用,然后轉發(fā)給系統內部其他的應用模塊,系統通過分析器能夠先排除掉和用戶需要的網絡操作沒有關系的調用,之后再對有關系的網絡操作進行細致的分析和處理,之后會對一臺計算機中每個虛擬機中的操作系統進行分享內存中的通信。假如當前的調用系統是網絡連接,那么控制子模塊就會先對計算機獲得的客戶操作系統ID以及計算機本身的地址,然后會再判斷虛擬機之間的ID是否一樣,如果不一樣,那么就不用進行加速通信操作,就按照正常的網絡連接操作處理;如果虛擬機之間的ID是一樣的,那么就需要判斷雙方是不是真的在同一臺計算機上,如果不處在同一臺計算機內。那么就需要按照正常的網絡連接處理,要不就需要進行初始化數據的操作流程。

      3 結束語

      文章通過對當前最為常用的一種支持在線遷移的虛擬機通信方法進行分析,進一步提高了數據通信技術。和其他通信方法相比,該方法不僅能夠支持用戶的透明數據,同時還能夠實現在線遷移,而且無需修改操作內核。這種方法在通信領域中的應用能夠提高虛擬機之間的通信速度,提高通信質量。

      猜你喜歡
      共享內存
      共享內存在高效進程間通信中的應用研究
      基于內存共享的多道分析器與應用軟件數據交換的設計
      基于共享內存的過約束多自由度振動臺解耦控制方法
      基于TrustZone的安全應用性能優(yōu)化*
      通過QT實現進程間的通信
      基于Linux內核的文件服務器模型的研究與構建
      科技視界(2018年28期)2018-01-16 12:34:48
      一種基于Tilcon的維護界面設計
      基于PCI總線的多處理器協同機制研究
      科技風(2017年20期)2017-07-10 18:56:06
      VB環(huán)境下基于內存共享技術的串行通訊程序設計
      QNX下PEX8311多路實時數據采集的驅動設計
      電子世界(2014年21期)2014-04-29 06:41:36
      宜州市| 美姑县| 墨脱县| 资阳市| 凤阳县| 霞浦县| 孝义市| 始兴县| 辽中县| 名山县| 根河市| 蓝山县| 定兴县| 安乡县| 定襄县| 枣阳市| 岳普湖县| 石家庄市| 阳信县| 萨嘎县| 灵丘县| 廉江市| 西藏| 溧水县| 嘉鱼县| 正安县| 托里县| 正镶白旗| 枣庄市| 广水市| 合江县| 南充市| 石棉县| 鲜城| 和林格尔县| 九龙县| 长宁县| 海口市| 广水市| 望谟县| 兴宁市|