NFS 與 CIFS 之間有何差異?

Network File System (NFS) 和 Common Internet File System (CIFS) 是檔案存取儲存協定或規則,可透過網路進行有效的檔案共用。對於任何組織的日常營運而言,有效溝通、共同協作和共用檔案的能力都至關重要。透過 NFS,使用者 (或用戶端裝置) 可以連線到網路伺服器並存取伺服器上的檔案。它具有允許多個使用者共用同一檔案而不會產生資料衝突的規則。CIFS 以 Server Message Block (SMB) 協定為基礎。CIFS 允許裝置向伺服器與其他周邊設備 (如印表機) 共用檔案。

運作方式:NFS 與CIFS

您可以在各種網路上部署檔案存取儲存協定,例如 Network File System (NFS) 和 Common Internet File System (CIFS):

  • 實體網路,例如區域網路 (LAN) 和廣域網路 (WAN)
  • 虛擬網路
  • 雲端儲存網路

NFS 和 CIFS 使用 IP 和 TCP 協定,在網路環境中的伺服器與用戶端之間進行檔案共用。多個用戶端機器可存取伺服器上的檔案。並且可以建立、讀取、編輯和刪除 (CRUD) 檔案,就像是用戶端機器在本機執行一樣。檔案鎖定機制可防止在嘗試變更相同檔案或目錄時,多個用戶端之間發生衝突。

NFS 的運作方式

NFS 最初於 1984 年由 Sun Microsystems 開發,但現在由 Internet Engineering Task Force 維護。NFS 專為 Unix 系統設計,包括 Linux 作業系統和 macOS。 

在 NFS 中,用戶端會使用遠端程序呼叫 (RPC),從遠端 NFS 伺服器請求檔案或目錄。如果檔案或目錄可用,且用戶端具有正確的存取許可,則伺服器會在用戶端上掛載該檔案或目錄。客戶端透過虛擬連線來執行檔案操作。自 NFS 第 4 版開始,用於解決檔案衝突的 NFS 鎖定管理員不再是單獨的服務,而是協定的一部分。

CIFS 如何運作

CIFS 最初做為 Server Message Block (SMB) 檔案存取協定的延伸,由 Microsoft 於 20 世紀 90 年代中期發佈。CIFS 廣泛用於 Windows 作業系統的網路環境中,但較新版 SMB 已取代現代系統實作中的 CIFS。

在 CIFS 中,實作和協定詳細資訊並未在發佈時進行廣泛記錄。這會造成複雜的網路管理挑戰,在混合作業系統環境中尤其如此。 

主要差異:NFS 與CIFS

雖然 Network File System (NFS) 和 Common Internet File System (CIFS) 都是檔案存取協定,但兩者有若干不同之處。NFS 僅限於其能夠共用資源的檔案和目錄。相較之下,CIFS 還可提供與其他網路裝置 (例如印表機) 的共用資源通訊。NFS 仍在持續開發中,並且您可以將 RFC 提交給 Internet Engineering Task Force。CIFS 並非在持續開發中。

以下是兩種協定之間的其他一些主要差異。

初始目標作業系統

NFS 和 CIFS 最初是針對不同的作業系統而設計。CIFS 針對 Windows 作業系統,而 NFS 則針對 Unix 系統。這意味著其建置旨在善用各自的作業系統核心,來實現最佳操作。雖然 CIFS 可搭配 Linux 作業系統 (透過 Samba) 使用,NFS 可搭配 Windows 作業系統 (透過第三方套件) 使用,但這些作業系統並非具有原生支援。

身分驗證

NFS 傳統上依賴主機型驗證,其中共用檔案的存取根據用戶端機器的 IP 地址或主機名稱來控制。它採用有限的內建安全機制,這在開放網路中可能會成為一種顧慮。

另一方面,CIFS 提供更進階的身分驗證和安全功能。其支援以使用者為基礎的身分驗證,因此,個別使用者可使用其憑證來存取共用資源。此外,CIFS 還支援加密和其他安全機制,這使其更適合於安全環境。

檔案鎖定

NFS 採用無狀態設計,這意味著它不會追蹤伺服器上開啟的檔案。因此,用戶端會處理檔案鎖定,並且當多個用戶端嘗試同時寫入相同的檔案時,就會發生衝突。

另一方面,CIFS 支援伺服器端的檔案鎖定。它提供了更好的協調,並避免多個用戶端存取相同檔案時發生衝突。

效能

NFS 使用輕量型協定,而且負荷較少,因此可加快檔案存取和傳輸速度。

相反,CIFS 由於支援各種 Windows 特定功能,因此具有更多協定負荷。這可能會影響效能,在高延遲網路中尤其如此。

何時選擇 NFS 與CIFS

網路環境可同時使用多種檔案存取儲存協定,因此,可平行使用 Network File System (NFS) 和 Server Message Block (SMB) 或 Common Internet File System (CIFS)。然而,NFS 幾乎一直是比 CIFS 更好的選擇。雖然,視乎使用案例,它並非總是其他協定中的最佳選擇。 

雖然 CIFS 仍在某些舊式應用程式和網路服務中使用,但在更廣泛的系統社群中已不再使用。SMB 2.0 版已取代 CIFS,而 SMB 3.1.1 版現已成為 SMB 最新版。針對以 Windows 為基礎的檔案和裝置共用網路服務,SMB 最新版現在是標準協定。

如果 CIFS 是唯一可用於現有系統的選項,使用者應僅使用 CIFS。網路管理員應考慮將這些系統升級至 SMB 最新版,以增強效能、安全功能、跨系統相容性,以及延伸的功能集。

另一方面,NFS 仍是 Linux 環境中喜好的網路檔案共用協定。由於其穩定性、可靠性、彈性和成本效益,Linux 通常是遠端伺服器工作負載的首選作業系統。NFS 在雲端環境和現場企業資料中心仍然很受歡迎。

雲端檔案存取儲存協定的注意事項

NFS 和 SMB 都是常用的協定。然而,在雲端環境中,雲端供應商通常會使用專有協定,並抽象化實作和設定。這樣一來,使用者無需手動設定,即可整合不同的裝置和作業系統。

實際上,這意味著管理員可使用簡單的 UI,將現場 CIFS、SMB 和 NFS 檔案共用連線至任何類型的雲端伺服器。任何類型的現場或遠端用戶端也是如此。藉助這些混合雲端環境,可簡化遠端網路組態中之前所需的複雜網路管理工作。

 

差異摘要:NFS 與CIFS

 

NFS

CIFS

這是什麼?

網路檔案系統。

通用網際網路檔案系統。

目前版本

NFS 第 4 版。

已由 SMB 3.1.1 版取代。

最適合

以 Linux 為基礎的網路架構。

需要時使用以 Windows 為基礎的舊式架構。

共用資源

檔案和目錄。

檔案、目錄和網路資源,例如印表機。

身份驗證

以 IP 為基礎。

以使用者為基礎。

檔案鎖定

由用戶端處理。

由伺服器處理。

效能

低協定開銷和更快的效能。

高協定開銷和更低的效能。

AWS 如何協助您處理檔案系統需求?

Amazon Web Services (AWS) 擁有廣泛的現代化且易於使用的網路管理、檔案共用和儲存服務。無論檔案和使用者位於何處,它們都可簡化協作工作。

如果您想要使用以雲端為基礎的儲存,來擴充內部部署檔案儲存系統,AWS Storage Gateway 可提供建立混合雲端解決方案的橋樑,或協助遷移至雲端。藉助 Amazon Simple Storage Service (Amazon S3),您可以將內部部署儲存遷移至雲端,而無需重新設計現有的應用程式和程序。

Amazon FSx for Windows File Server 是將現有的 Common Internet File System (CIFS) 伺服器遷移至以雲端為基礎的受管環境的另一種選擇。它允許與現有的 Windows 環境完全整合,並提供進階安全功能。 

Amazon Elastic File System (Amazon EFS) 是針對 Network File System (NFS) 設定進行優化的類似 AWS 服務。它具有完全彈性的儲存功能,因此您無需進行叢集和用戶端狀態連接埠管理。

立即建立帳戶,開始使用 AWS 上的檔案共用和儲存解決方案。

使用 AWS 的後續步驟

使用 NFS 開始建置

了解如何在 AWS 上開始使用 NFS

進一步了解 
使用 CIFS 開始建置

了解如何在 AWS 上開始使用 CIFS

進一步了解