[發明專利]基于硬件隊列擴展的網卡虛擬化系統及其方法有效
| 申請號: | 201210006925.8 | 申請日: | 2012-01-11 |
| 公開(公告)號: | CN102609298A | 公開(公告)日: | 2012-07-25 |
| 發明(設計)人: | 吳俊敏;朱峪;朱小東;趙小雨 | 申請(專利權)人: | 中國科學技術大學蘇州研究院 |
| 主分類號: | G06F9/455 | 分類號: | G06F9/455 |
| 代理公司: | 蘇州創元專利商標事務所有限公司 32103 | 代理人: | 范晴 |
| 地址: | 215123 江蘇省蘇州*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 硬件 隊列 擴展 網卡 虛擬 系統 及其 方法 | ||
技術領域
本發明屬于系統虛擬化中的IO虛擬化領域,具體涉及一種多核網絡處理器平臺上基于硬件隊列擴展的網卡虛擬化系統及其方法。
背景技術
近年來,計算機硬件計算能力不斷攀升,硬件成本下降,導致廉價硬件大量增加。與之相關的一系列現實問題成為當前產業界關注的熱點:管理成本攀升,安全性低,資源的利用率低下。而虛擬化技術具有隔離性、可合并、可遷移性等特點,被認為是優化當前產業界基礎IT架構,解決上述現實問題的最好解決方案。
盡管虛擬化技術存在諸多優點,在產業界的應用卻還面臨著很多制約,其中性能開銷問題成為影響虛擬化技術應用的一個重要制約因素。虛擬化技術的發展經歷了處理器虛擬化,芯片虛擬化,IO虛擬化三個階段。現階段虛擬化的性能瓶頸已從處理器虛擬化轉向IO虛擬化:對于偏重于IO訪問的應用,虛擬化的性能開銷十分明顯,有時可能達不到非虛擬化環境的1/3。另外對于多核架構的虛擬化系統,IO訪問更加頻繁,這就對IO性能,可靠性方面提出了更高的要求,網卡作為重要的IO設備更是如此。在此背景下,傳統的基于軟件實現的網卡虛擬化方案已不能滿足要求。
發明內容
本發明目的在于提供一種多核網絡處理器平臺上的網卡虛擬化系統,解決多核架構的虛擬平臺上對于偏重于IO訪問的應用尤其是網絡應用普遍存在的虛擬化的性能開銷大的問題,提高虛擬系統對網卡的訪問效率。
為了解決現有技術中的這些問題,本發明提供的技術方案是:
一種多核網絡處理器平臺上基于硬件隊列擴展的網卡虛擬化系統,包括接口管理模塊,虛擬接口驅動模塊和網卡驅動模塊,其特征在于所述虛擬接口驅動模塊中虛擬接口由獨立中斷硬件隊列構成,硬件隊列與物理網卡綁定,為分區操作系統提供虛擬接口,所述接口管理模塊,虛擬接口驅動模塊和網卡驅動模塊通過域間通信機制進行控制交互,完成網絡通信。
優選的,所述虛擬接口驅動模塊根據運行時狀態由所述接口管理模塊使能,使分區操作系統獲得訪問虛擬接口的權限,并為分區操作系統提供與虛擬接口交互的接口。
優選的,所述接口管理模塊位于虛擬機監控器中,提供輕量級API管理虛擬接口并實時更新虛擬接口狀態信息,使用mailbox核間通信機制與驅動域進行控制交互。
優選的,所述網卡驅動模塊位于宿主操作系統上,負責虛擬接口與物理網卡的數據及控制交互,當驅動域接收到mailbox中斷后,所述網卡驅動模塊調用相應中斷處理函數從相應虛擬接口獲得數據包,調用物理網卡驅動的發送函數,當物理網卡收到數據包后,所述網卡驅動模塊根據所述接口管理模塊傳來的接口狀態信息數據發送至虛擬接口接收隊列。
本發明的另一目的在于提供一種多核網絡處理器平臺上基于硬件隊列擴展的網卡虛擬化方法,其特征在于所述方法包括以下步驟:
(1)所述虛擬接口驅動模塊通過加載參數在啟動分區操作系統時被加載;
(2)所述接口管理模塊根通過mailbox中斷控制使能所述虛擬接口驅動模塊接口;
(3)所述網卡驅動模塊接受的中斷信號處理數據包,與物理網卡驅動交互完成網絡訪問。
優選的,所述方法中所述分區操作系統是由虛擬機監控器加載,虛擬機監控器與分區是物理上平行,邏輯上主從的結構,虛擬機監控器處于主控地位,利用全局內存管理模塊控制分區加載。
優選的,所述方法中所述全局內存管理模塊通過全局鏈表管理各操作系統可見資源,根據加載申請分配資源。
本發明人經長期研究,采用了自虛擬化的方法,對物理網卡進行擴展。本發明將多核網絡處理器平臺上的具有獨立中斷的硬件隊列與物理網卡綁定,為每個客戶操作系統提供有硬件隊列封裝的虛擬接口,通過硬件保證了IO隔離性。用硬件擴展功能和高效的核間中斷機制代替了傳統IO虛擬化的超級調用和中斷截獲來完成虛擬IO訪問,減少了虛擬機上下文轉移的次數,從而避免了TLB失效率增加帶來的額外虛擬化開銷,有效地提高了虛擬化性能。
網卡虛擬化系統進行網絡訪問的具體工作步驟如下:虛擬機監控器為客戶虛擬機配置加載虛擬接口驅動;客戶虛擬機發出網絡IO訪問請求;將IO請求映射到物理網卡物理接口;物理網卡接口接受網絡報文,正確地分派給各個客戶虛擬機的虛擬接口,完成網絡通信。
上述步驟主要包含兩個映射:從虛擬機到物理網卡的映射以及從物理網卡接口到虛擬機的映射,本發明的主要目的在于實現一個可靠,安全,低虛擬化開銷的虛擬網卡系統,而其中地虛擬化開銷目標關鍵在于減少這兩個映射過程中虛擬化性能損耗,為了實現這一目的,本發明人遇到以下亟需解決的難題:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國科學技術大學蘇州研究院,未經中國科學技術大學蘇州研究院許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210006925.8/2.html,轉載請聲明來源鉆瓜專利網。





