網絡文件系統檢視原始碼討論檢視歷史
網絡文件系統 |
網絡文件系統,英文Network File System(NFS),是由SUN公司研製的UNIX表示層協議(presentation layer protocol),能使使用者訪問網絡上別處的文件就像在使用自己的計算機一樣。
簡介
NFS是基於UDP/IP協議的應用,其實現主要是採用遠程過程調用RPC機制,RPC提供了一組與機器、操作系統以及低層傳送協議無關的存取遠程文件的操作。RPC採用了XDR的支持。XDR是一種與機器無關的數據描述編碼的協議,他以獨立與任意機器體系結構的格式對網上傳送的數據進行編碼和解碼,支持在異構系統之間數據的傳送。網絡文件系統(NFS)是文件系統之上的一個網絡抽象,來允許遠程客戶端以與本地文件系統類似的方式,來通過網絡進行訪問。雖然 NFS 不是第一個此類系統,但是它已經發展並演變成 UNIX系統中最強大最廣泛使用的網絡文件系統。NFS 允許在多個用戶之間共享公共文件系統,並提供數據集中的優勢,來最小化所需的存儲空間網絡文件系統(NFS)從1984 年問世以來持續演變,並已成為分布式文件系統的基礎。當前,NFS(通過 pNFS 擴展)通過網絡對分布的文件提供可擴展的訪問。
評價
NFS(Network File System,網絡文件系統)是當前主流異構平台共享文件系統之一。主要應用在UNIX環境下。最早是由Sun Microsystems開發,現在能夠支持在不同類型的系統之間通過網絡進行文件共享,廣泛應用在FreeBSD、SCO、Solaris等異構操作系統平台,允許一個系統在網絡上與他人共享目錄和文件。通過使用NFS,用戶和程序可以像訪問本地文件一樣訪問遠端系統上的文件,使得每個計算機的節點能夠像使用本地資源一樣方便地使用網上資源。換言之,NFS可用於不同類型計算機、操作系統、網絡架構和傳輸協議運行環境中的網絡文件遠程訪問和共享NFS的工作原理是使用客戶端/服務器架構,由一個客戶端程序和服務器程序組成。服務器程序向其他計算機提供對文件系統的訪問,其過程稱為輸出。NFS客戶端程序對共享文件系統進行訪問時,把它們從NFS服務器中「輸送」出來。文件通常以塊為單位進行傳輸。其大小是8KB(雖然它可能會將操作分成更小尺寸的分片)。NFS傳輸協議用於服務器和客戶機之間文件訪問和共享的通信,從而使客戶機遠程地訪問保存在存儲設備上的數據在 Linux中,虛擬文件系統交換(VFS)提供在一個主機上支持多個並發文件系統的方法(比如 CD-ROM 上的 International Organization for Standardization [ISO] 9660,以及本地硬盤上的 ext3fs)。VFS 確定需求傾向於哪個存儲,然後使用哪些文件系統來滿足需求。由於這一原因,NFS 是與其他文件系統類似的可插拔文件系統。對於 NFS 來說,唯一的區別是輸入/輸出(I/O)需求無法在本地滿足,而是需要跨越網絡來完成。[1]