簡易檢索 / 詳目顯示

研究生: 周志鴻
Chih-Hung Chou
論文名稱: 在虛擬機器上改進日誌式檔案系統效能
Improving Journaling Filesystem Performance on a Virtual Machine Monitor
指導教授: 石維寬
Wei-Kuan Shih
口試委員:
學位類別: 碩士
Master
系所名稱: 電機資訊學院 - 資訊工程學系
Computer Science
論文出版年: 2006
畢業學年度: 94
語文別: 中文
論文頁數: 45
中文關鍵詞: 虛擬機器日誌式檔案系統
外文關鍵詞: Virtual machine monitor, Journaling filesystem, Xen, Ext3
相關次數: 點閱:3下載:0
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 虛擬機器架構因為能夠提供完全隔離虛擬執行環境並且擁有安全穩定的特性,提供了一個新的方向來改善系統的安全性、穩定性以及增加資源使用率。然而由於每台虛擬機器都獨立的運作,擁有各自的磁碟分割區。為數眾多的磁碟分割區容易造成額外的磁碟搜尋負荷。此外,為了要保證系統安全性,虛擬機器在存取硬體時需要作額外的檢查,使其存取硬體的負擔較傳統作業系統重。因此如何改進檔案系統以適應新的虛擬環境將影響整體虛擬機器的執行效能。
    日誌式檔案系統使用 metadata journaling 的技術來增加檔案系統的效能及可靠性。然而其代價是需要額外的磁碟空間來儲存檔案系統更新日誌,此外記錄日誌所引起的磁碟活動也會造成效能下降。在虛擬機器架構下使用日誌式檔案系統時,由於前述虛擬機器架構上的限制使得額外的磁碟空間及日誌磁碟活動所造成的負擔加重。
    在本論文中我們提出透過修改日誌式檔案系統與 Virtual Machine Monitor (VMM) 使其合作來減輕前述問題。我們利用在 VMM 中記錄檔案資料記憶體的相關資訊並且配合 VMM 來保護這些檔案資料,避免檔案在尚未寫回磁碟前因程式錯誤而損壞。透過這個機制,我們消除了需要額外將檔案更新資料寫回的日誌磁碟空間的需求而減輕了前述問題。根據實驗結果顯示,我們所提出的方法較原本日誌式檔案系統有約 30% 到 150% 的效能改進,而檔案系統修復的速度則快2到6倍。


    Because virtual machine monitor (VMM) provides a secure, reliable and fully isolated virtual execution environment, it offers a novel solution to improve security, reliability and increase system utilization. However, because every virtual machine operates independently and utilizes individual disk partitions, disk seek time can easily increase when accessing different disk partitions. Further, VMM checks every I/O access of the virtual machine to ensure that no one can corrupt the system. Thus, it results in higher I/O access overhead under virtual machine architecture then under traditional operating system. So, it is important to adapt the filesystem to the virtual execution environment to improve performance.
    Journaling filesystems adopt metadata journaling technique to improve filesystem performance and consistency. However, the cost brings by metadata journaling is extra disk space and performance degradation caused by frequent journal data flushing. In addition, the problem is intensified due to the limitations of virtual machine architecture as discussed above.
    In this thesis, we propose a framework that modifies both the journaling filesystem and the VMM to alleviate the overhead. We only log necessary information of file buffer caches in the VMM and protect them from being tainted via the use of VMM. By using this mechanism we eliminate the need for extra disk space while still retaining same filesystem consistency. Experimental data suggests our method improves journaling filesystem performance by 30% to 150% and speeds up the filesystem recovery process by 2 to 6 times faster.

    摘要 i Abstract ii 致謝 iii 章節目錄 iv 圖表目錄 vi 第一章 緒論 1 1.1 動機 1 1.2 論文組織 3 第二章 相關背景研究 4 2.1 Journaling Filesystem 4 2.1.1 Importance of Filesystem Consistency 4 2.1.2 Metadata/Data Journaling Technique 5 2.1.3 Linux Ext3 Filesystem 5 2.2 Virtual Machine 7 第三章 相關研究 10 3.1 Soft Update 10 3.2 Metadata Snapshotting 10 3.3 Log-structured Filesystem(LFS) 11 3.4 NVRAM 12 3.5 RAM I/O(Rio) 12 3.6 Xen FS 13 第四章 設計與實作 15 4.1 設計目標 15 4.2 系統設計 15 4.2.1 Protection Mechanism 16 4.2.2 Recovery Mechanism 18 4.2.3 Unified Journaling API 19 4.3 系統架構 19 4.3.1 Journaling Component 20 4.3.2 VMM Component 21 4.4 系統實作 22 4.4.1 Platform 22 4.4.2 Journaling Component 22 4.4.2.1 Logger 23 4.4.2.2 Update Daemon 24 4.4.3 VMM Component 25 4.4.3.1 Update Manager 25 4.4.3.2 Protection Manager 27 4.4.4 Recovery Implementation 28 第五章 效能評估 30 5.1 實驗環境 30 5.2 Runtime Performance of Single Guest Domain 30 5.2.1 Micro-benchmark: Bonnie++ 30 5.2.2 Un-tar/Make Linux Kernel 33 5.2.3 Macro-benchmark: Postmark 34 5.3 Runtime Performance of Multiple Guest Domains 35 5.4 Filesystem Recovery Performance 37 5.5 CPU/Memory Overhead Measurement 38 第六章 結論及未來展望 41 6.1 Conclusions 41 6.2 Future Works 41 參考文獻 42

    [1]Advanced Micro Devices Inc., Pacifica Virtualization Technology, available at http://developer.amd.com/assets/WinHEC2005_Pacifica_Virtualization.pdf, 2005
    [2]M. Baker, S. Asami, E. Deprit, J. Ousterhout and M. Seltzer, “Non-volatile Memory for Fast, Reliable Filesystems,” In Proceedings of the 5-th International Conference on Architectural Support for Programming Languages and Operating Systems, pp. 10-22, Oct. 1992.
    [3]P. Barham, B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho, R. Neugebauery, I. Pratt and A. Warfeld, “Xen and the Art of Virtualization,” In Proceedings of the ACM Symposium on Operating Systems Principles, pp. 164-177, Oct. 2003.
    [4]T. Bressoud and F. Schneider, “Hypervisor-based fault-tolerance,” ACM Transactions on Computer Systems, Vol. 14, No. 1, pp. 80-107, Feb. 1996.
    [5]R. Card, T. Ts'o and S. Tweedie, “Design and Implementation of the Second Extended Filesystem.” In Proceedings of the 1st Dutch International Symposium on Linux, 1994.
    [6]P. Chen, W. Ng, S. Chandra, C. Aycock, G. Rajamani and D. Lowell, “The Rio File Cache: Surviving Operating System Crashes,” In Proceedings of the 7th International Conference on Architectural Support for Programming Languages and Operating Systems, pp. 74-83, 1996.
    [7]L. Cherkasova and R. Gardner, “Measuring CPU Overhead for I/O Processing in the Xen Virtual Machine Monitor," In Proceedings of the USENIX Annual Technical Conference, pp. 387-390, Apr. 2005.
    [8]S. Chutani, O. Anderson, M. Kazer, B. Leverett, A. Mason and R. Sidebotham, “The Episode File System,” In Proceedings of the Winter USENIX Technical Conference, pp. 43-60, Jan. 1992.
    [9]R. Coker, The bonnie++ benchmark, available at http://www.coker.com.au/bonnie++, 2001
    [10]H. Custer, “Inside the Windows NT Filesystem,” Microsoft Press. ISBN 155615660X, 1994.
    [11]J. Dike, “A User-mode Port of the Linux kernel,” In the Proceedings of the Annual Linux Showcase, pp. 63-72, Oct. 2000.
    [12]R. Duncan, “Design Goals and Implementation of the New High Performance File System,” Microsoft Systems Journal, Vol. 4, No. 5, pp. 1-13, 1989.
    [13]K. Elkhardt and R. Bayer, “A Database Cache for High Performance and Fast Restart in Database Systems,” ACM Transactions on Database Systems, Vol. 9, No. 4, pp. 503-525, Dec. 1984.
    [14]K. Fraser, S. Hand, R. Neugebauer, I. Pratt, A. Wareld and M. Williamson, “Reconstructing I/O," Technical Report UCAM-CL-TR-596, Cambridge University, Aug. 2004.
    [15]K. Fraser, S. Hand, R. Neugebauer, I. Pratt, A. Wareld and M. Williamson, “Safe Hardware Access with the Xen Virtual Machine Monitor," In Proceedings of the 1st Workshop on Operating System and Architectural Support for the On-Demand IT Infrastructure, Oct. 2004.
    [16]R. Goldberg, “Survey of Virtual Machine Research,” IEEE Computer Magazine, Vol. 7 No.6, pp. 34-45, Jun. 1974.
    [17]J. Gray and A. Reuter, Transaction Processing: Concepts and Techniques. San Mateo, CA: Morgan Kaufmann, 1993.
    [18]P. Gum, “System/370 Extended Architecture: Facilities for Virtual Machines,” IBM Journal of Research and Development, Vol. 27, No. 6, pp. 530-544, Nov. 1983.
    [19]Intel Inc., Vanderpool Virtualization Technology, available at http://www.intel.com/technology/computing/vptech/, 2005
    [20]International Business Machines Inc., JFS, available at http://jfs.sourceforge.net/, 1990
    [21]X. Jiang and D. Xu, “Collapsar: A VM-based Architecture for Network Attack Detention Center,” In Proceedings of the USENIX Security Symposium, pp. 15-28, Aug. 2004.
    [22]J. Katcher, “Postmark: A New File System Benchmark,” Technical Report TR3022, Network Appliance Inc., Oct. 1997.
    [23]K. Kourai and S. Chiba, “HyperSpector: Virtual Distributed Monitoring Environments for Secure Intrusion Detection,” In Proceedings of the 1st ACM/USENIX international conference on Virtual execution environments, pp. 197-207, Jun. 2005.
    [24]M. McKusick and G. Ganger, “Soft Updates: A Technique for Eliminating Most Synchronous Writes in the Fast Filesystem.” In Proceedings of the 1999 USENIX Annual Technical Conference, FREENIX Track, pp. 1-18, 1999.
    [25]M. McKusick, W. Joy, S. Leffler and R. Fabry, “A Fast Filesystem for UNIX,” ACM Transactions on Computer Systems, Vol. 2, No.3, pp. 181-197, Aug. 1984.
    [26]A. Menon, J. Santos, Y. Turner, G. Janakiraman and W. Zwenepoel, “Diagnosing Performance Overheads in the Xen Virtual,” In Proceedings of the 1st ACM/USENIX International Conference on Virtual Execution Environments, pp. 13-23, Jun. 2005.
    [27]Microsoft Inc., Virtual PC, available at
    http://www.microsoft.com/windows/virtualpc/default.mspx, 1997
    [28]D. Patterson, P. Chen, G. Gibson and R. Katz, “Introduction to Redundant Arrays of Inexpensive Disks (RAID),” In Digest of Papers for 34th IEEE Computer Society International Conference, pp. 112 -117, 1989.
    [29]V. Prabhakaran, A. Arpaci-Dusseau and R. Arpaci-Dusseau, “Analysis and Evolution of Journaling File Systems,” In Proceedings of the USENIX Annual Technical Conference Anaheim, pp. 105-120, Apr. 2005.
    [30]H. Reiser, ReiserFS, available at http://www.namesys.com/, 2001
    [31]J. Robin and C. Irvine, “Analysis of the Intel Pentium’s Ability to Support a Secure Virtual Machine Monitor,” In the Proceedings of 9th USENIX Security Symposium, pp. 129-144, Aug. 2000.
    [32]R. Rose, “Survey of System Virtualization Techniques,” available at http://www.robertwrose.com/vita/rose-virtualization.pdf, 2004.
    [33]M. Rosenblum and T. Garfinkel, “Virtual Machine Monitors: Current Technology and Future Trends,” IEEE Computer Society, Vol 38, No. 5, pp. 39-47, May 2005.
    [34]M. Rosenblum and J. Ousterhout, “The Design and Implementation of a Log-Structured Filesystem,” In Proceedings of the symposium on Operating System Principles, pp. 1-15, Oct. 1991.
    [35]R. Shiveley, “Consolidation Strategies for Intel Processor-based Servers,” Intel white paper, Feb. 2006
    [36]Silicon Graphics Inc., XFS, available at http://oss.sgi.com/projects/xfs/, 1994
    [37]L. Soares, O. Krieger and D. Silva, “Meta-data Snapshotting: A Simple Mechanism for Filesystem Consistency," International Workshop on Storage Network Architecture and Parallel I/Os, pp. 1-12, Sep. 2003.
    [38]J. Sugerman, G. Venkitachalam and B. Lim, “Virtualizing I/O Devices on VMware Workstation’s Hosted Virtual Machine Monitor,” In Proceedings of the USENIX Annual Technical Conference, pp. 1-14, Jun. 2001.
    [39]T. Ts'o and S. Tweedie, “Planned Extensions to the Linux Ext2/Ext3 Filesystem,” In Proceedings of the USENIX Annual Technical Conference, FREENIX Track, pp. 234-244, 2002.
    [40]C. Waldspurger, “Memory Resource Management in VMware ESX Server,” In Proceedings of the 5th Symposium on Operating Systems Design and Implementation, pp. 181-194, Dec. 2002.
    [41]A. Whitaker, R. Cox and S. Gribble, “Configuration Debugging as Search: Finding the Needle in the Haystack,” In Proceedings of the Symposium on Operating Systems Design and Implementation, pp. 77-90, Dec. 2004.
    [42]A. Whitaker, M. Shaw and S. Gribble, “Scale and Performance in the Denali Isolation Kernel,” In Proceedings of 5th Symposium on Operating System Design and Implementation, pp. 195-209, Dec. 2002.
    [43]M. Williamson, “Extreme Paravirtualisation: Beyond arch/xen,” available at http://www.cambridge.intel-research.net/~mwilli2/proposal_final.pdf, Jul. 2005
    [44]M. Williamson, “1st Year Progress Report,” available at http://www.cambridge.intel-research.net/~mwilli2/report_final.pdf, Jul. 2005

    無法下載圖示 全文公開日期 本全文未授權公開 (校內網路)
    全文公開日期 本全文未授權公開 (校外網路)

    QR CODE