Cái nào sau đây là mục tiêu của hệ thống tập tin?

Hệ thống tệp mạng (NFS) là một giao thức mạng để chia sẻ tệp phân tán. Một hệ thống tệp xác định cách dữ liệu ở dạng tệp được lưu trữ và truy xuất từ ​​các thiết bị lưu trữ, chẳng hạn như ổ đĩa cứng, ổ đĩa trạng thái rắn và ổ băng từ. NFS là giao thức chia sẻ tệp mạng xác định cách tệp được lưu trữ và truy xuất từ ​​thiết bị lưu trữ qua mạng

Giao thức NFS định nghĩa một hệ thống tệp mạng, ban đầu được phát triển để chia sẻ tệp cục bộ giữa các hệ thống Unix và được phát hành bởi Sun Microsystems vào năm 1984. Đặc tả giao thức NFS lần đầu tiên được xuất bản bởi Internet Engineering Task Force (IETF) dưới dạng giao thức internet trong RFC 1094 vào năm 1989. Phiên bản hiện tại của giao thức NFS được ghi lại trong RFC 7530, ghi lại Giao thức NFS phiên bản 4 (NFSv4)

NFS cho phép quản trị viên hệ thống chia sẻ tất cả hoặc một phần của hệ thống tệp trên máy chủ được nối mạng để người dùng máy tính từ xa có thể truy cập được. Khách hàng có quyền truy cập hệ thống tệp được chia sẻ có thể gắn các chia sẻ NFS, còn được gọi là hệ thống tệp được chia sẻ. NFS sử dụng các cuộc gọi thủ tục từ xa (RPC) để định tuyến các yêu cầu giữa máy khách và máy chủ

NFS là một trong những giao thức được sử dụng rộng rãi nhất cho các máy chủ tệp. Việc triển khai NFS có sẵn cho hầu hết các hệ điều hành (HĐH) hiện đại, bao gồm các hệ điều hành sau

  • Hewlett Packard Enterprise HP-UX
  • IBM AIX
  • Microsoft Windows
  • Linux
  • Hệ mặt trời Oracle

Các nhà cung cấp đám mây cũng triển khai giao thức NFS cho lưu trữ đám mây, bao gồm Hệ thống tệp đàn hồi của Amazon, chia sẻ tệp NFS trong Microsoft Azure và Google Cloud Filestore

Bất kỳ thiết bị nào có thể được gắn vào hệ thống tệp máy chủ NFS đều có thể được chia sẻ thông qua NFS. Điều này bao gồm đĩa cứng, ổ đĩa trạng thái rắn, ổ băng từ, máy in và các thiết bị ngoại vi khác. Người dùng có quyền thích hợp có thể truy cập tài nguyên từ máy khách của họ như thể những tài nguyên đó được gắn cục bộ

NFS là một giao thức lớp ứng dụng, có nghĩa là nó có thể hoạt động trên bất kỳ ngăn giao thức truyền tải hoặc mạng nào. Tuy nhiên, trong hầu hết các trường hợp, NFS được triển khai trên các hệ thống chạy bộ giao thức TCP/IP. Mục đích ban đầu của NFS là tạo ra một giao thức đơn giản và phi trạng thái để chia sẻ hệ thống tệp phân tán

Các phiên bản đầu tiên của NFS đã sử dụng Giao thức gói dữ liệu người dùng (UDP) cho lớp vận chuyển của nó. Điều này loại bỏ nhu cầu xác định một giao thức lưu trữ trạng thái; . Hỗ trợ cho TCP dưới dạng giao thức tầng vận chuyển đã được thêm vào NFS phiên bản 3 (NFSv3) vào năm 1995

Hệ thống tệp mạng hoạt động như thế nào?

NFS là một giao thức máy khách-máy chủ. Máy chủ NFS là máy chủ đáp ứng các yêu cầu sau

  • đã cài đặt phần mềm máy chủ NFS;
  • có ít nhất một kết nối mạng để chia sẻ tài nguyên NFS;
  • được cấu hình để chấp nhận và phản hồi các yêu cầu NFS qua kết nối mạng

Máy khách NFS là máy chủ đáp ứng các yêu cầu sau

  • đã cài đặt phần mềm máy khách NFS;
  • có kết nối mạng với máy chủ NFS;
  • được phép truy cập tài nguyên trên máy chủ NFS;
  • được cấu hình để gửi và nhận các yêu cầu NFS qua kết nối mạng

NFS ban đầu được hình thành như một phương pháp chia sẻ hệ thống tệp giữa các nhóm làm việc bằng Unix. Nó vẫn thường được sử dụng để chia sẻ tài nguyên đặc biệt

Quá trình thiết lập dịch vụ NFS bao gồm ba bước sau, cho dù trên máy chủ tệp doanh nghiệp hay trên máy trạm cục bộ

  1. Xác minh rằng rpc. mountd hoặc chỉ mountd được cài đặt và hoạt động. Đây là daemon NFS -- chương trình lắng nghe mạng cho các yêu cầu NFS.
  2. Tạo hoặc chọn thư mục dùng chung trên máy chủ. Đây là điểm gắn kết NFS. Sử dụng điểm gắn kết và tên máy chủ lưu trữ hoặc địa chỉ xác định duy nhất tài nguyên NFS
  3. Định cấu hình quyền trên máy chủ NFS để cho phép người dùng được ủy quyền đọc, ghi và thực thi tệp trong hệ thống tệp

Việc thiết lập máy khách NFS để truy cập máy chủ NFS có thể được thực hiện thủ công, sử dụng lệnh mount hoặc sử dụng tệp cấu hình NFS - . Mỗi dòng trong tệp cấu hình NFS chứa một điểm gắn kết, địa chỉ IP hoặc tên miền máy chủ và bất kỳ siêu dữ liệu cấu hình nào cần thiết để truy cập hệ thống tệp. /etc/exports. Each line in the NFS config file contains a mount point, an IP address or a host domain name and any configuration metadata needed to access the file system.

Cái nào sau đây là mục tiêu của hệ thống tập tin?
NFS cho phép chia sẻ tài nguyên qua mạng, giống như giao thức Server Message Block (SMB) của Microsoft. SMB và NFS được triển khai trên nhiều hệ điều hành khác nhau

Các phiên bản của NFS

NFSv4, phiên bản hiện tại của NFS và các phiên bản khác sau NFS phiên bản 2 (NFSv2) thường tương thích sau khi máy khách và máy chủ đàm phán kết nối

Các phiên bản NFS từ sớm nhất đến hiện tại như sau

Sun Network Filesystem phát hành tháng 3 năm 1984

Sun Microsystems đã công bố triển khai đầu tiên của hệ thống tệp mạng vào tháng 3 năm 1984. Mục tiêu là cung cấp quyền truy cập từ xa, minh bạch vào các hệ thống tệp. Sun dự định phân biệt dự án NFS của mình với các hệ thống tệp Unix khác bằng cách thiết kế nó để dễ dàng di chuyển sang các hệ điều hành và kiến ​​trúc máy khác

NFSv2 phát hành tháng 3 năm 1989

NFSv2 được chỉ định trong RFC 1094. Các tính năng chính của nó bao gồm những điều sau đây

  • Nó sử dụng UDP làm giao thức vận chuyển. Điều này cho phép giữ cho máy chủ ở trạng thái không trạng thái, với việc khóa tệp được triển khai bên ngoài giao thức cốt lõi
  • Độ lệch tệp của nó được giới hạn ở số lượng 32 bit, làm cho kích thước tối đa của tệp mà khách hàng có thể truy cập là 4. 2 GB
  • Kích thước truyền dữ liệu của nó bị giới hạn ở 8 KB và nó yêu cầu các máy chủ NFS cam kết dữ liệu do máy khách ghi vào đĩa hoặc bộ nhớ truy cập ngẫu nhiên không khả biến (NVRAM) trước khi phản hồi

NFSv2 đã lỗi thời và không nên được sử dụng

NFSv3 phát hành tháng 6 năm 1995

Được chỉ định trong RFC 1813, NFSv3 đã tích hợp các tính năng và bản cập nhật mới sau đây

  • Nó mở rộng độ lệch của tệp từ 32 đến 64 bit, loại bỏ 4. Giới hạn kích thước tệp tối đa 2 GB
  • Nó đã nới lỏng quy tắc giới hạn truyền dữ liệu 8 KB để cho phép truyền dữ liệu đọc và ghi lớn hơn
  • TCP đã được thêm vào dưới dạng tùy chọn giao thức lớp vận chuyển trong NFSv3. Truyền tải TCP giúp sử dụng NFS trên mạng diện rộng (WAN) dễ dàng hơn và tăng cường khả năng truyền đọc và ghi
  • Đã thêm thao tác CAM KẾT cho phép ghi không đồng bộ đáng tin cậy và ACCESS RPC giúp cải thiện hỗ trợ cho danh sách kiểm soát truy cập hoặc ACL và người dùng cấp cao
  • Máy chủ trả lời các RPC VIẾT ngay lập tức trong NFSv3 mà không cần đồng bộ hóa với ổ đĩa hoặc NVRAM. Để đảm bảo dữ liệu được lưu trữ ổn định, khách hàng chỉ cần gửi COMMIT RPC

NFSv3 được báo cáo là vẫn đang được sử dụng rộng rãi. Nó có thể tương tác với NFSv4 nhưng thiếu hỗ trợ cho nhiều tính năng mới và cải tiến được triển khai với các phiên bản sau

NFSv4 phát hành tháng 4 năm 2003

Bản cập nhật cho NFSv4 lần đầu tiên được ghi lại trong RFC 3010 vào năm 2000. Đây là phiên bản đầu tiên của đặc tả NFS mà IETF đã xuất bản dưới dạng tiêu chuẩn được đề xuất;

Các tính năng mới và cải tiến trong bản cập nhật này bao gồm các tính năng sau

  • hỗ trợ xác thực mạnh mẽ, tính toàn vẹn và quyền riêng tư;
  • hỗ trợ bộ nhớ đệm tệp nâng cao;
  • nâng cao khả năng quốc tế hóa;
  • khả năng tương tác tốt hơn với chia sẻ tệp Microsoft Windows đã được thêm vào;
  • hỗ trợ tốt hơn cho khóa tích hợp đã được thêm vào;
  • cải thiện hiệu suất và độ tin cậy vì giao tiếp được xử lý bằng các RPC phức hợp và yêu cầu sử dụng TCP

Một API mới đã được đưa vào để bổ sung các cơ chế bảo mật mới trong tương lai

Phiên bản cập nhật nhẹ của đặc tả NFS đã được xuất bản lại vào năm 2003 với tên RFC 3530, để sửa lỗi trong phiên bản đầu tiên và thêm một số cải tiến cho giao thức

NFS phiên bản 4. 1 (NFSv4. 1) phát hành tháng 1 năm 2010

Một giao thức phiên bản nhỏ, NFSv4. 1 được xuất bản dưới dạng RFC 5661, đã thêm các tính năng mới bao gồm các tính năng sau

  • Nó cho phép sử dụng NFS trên các mạng WAN toàn cầu
  • Nó đã chuẩn hóa NFS song song để giải quyết các vấn đề về băng thông và khả năng mở rộng
  • Hỗ trợ được quốc tế hóa bằng cách sử dụng mã hóa UTF-8 cho tên tệp, thư mục và các mã định danh khác. UTF-8 thay thế bộ ký tự ASCII. Nó là một mã hóa ký tự có chiều rộng thay đổi nhỏ gọn như ASCII nhưng cũng có thể chứa Unicode
  • Nó đã thêm một mô hình phiên mới để duy trì trạng thái của máy chủ so với các kết nối thuộc về máy khách
  • Ủy quyền thư mục đã thêm khả năng ủy quyền các hoạt động của tệp cho máy khách truy cập

NFS phiên bản 4. 2 (NFSv4. 2) phát hành tháng 11 năm 2016

NFSv4. 2 được ghi lại trong RFC 7862. Nó đã thêm các tính năng và cập nhật mới sau đây

  • nâng cao kiến ​​trúc lưu trữ mở rộng quy mô hiện đại;
  • hỗ trợ sao chép phía máy chủ, cho phép sao chép và chụp nhanh các tệp bằng bất kỳ NFSv4 nào. 2 máy chủ lưu trữ;
  • đặt trước không gian để đảm bảo một tệp sẽ có sẵn dung lượng lưu trữ;
  • hỗ trợ cho các tệp thưa thớt, chứa các khối dữ liệu lớn bằng 0 được truyền dưới dạng số 0 khi đọc từ tệp;
  • hỗ trợ hỗ trợ khối dữ liệu ứng dụng, xác định định dạng của tệp;
  • hỗ trợ cho NFS có nhãn, hỗ trợ bảo mật bổ sung khi được sử dụng với Linux được tăng cường bảo mật

Lợi ích của NFS

Trong số nhiều lợi ích cho các tổ chức sử dụng NFS như sau

  • trưởng thành. NFS là một giao thức trưởng thành, có nghĩa là hầu hết các khía cạnh của việc triển khai, bảo mật và sử dụng nó đều được hiểu rõ, cũng như các điểm yếu tiềm ẩn của nó
  • Mở. NFS là một giao thức mở, với sự phát triển liên tục của nó được ghi lại trong các thông số kỹ thuật internet dưới dạng một giao thức mạng mở và miễn phí
  • tiết kiệm chi phí. NFS là một giải pháp chi phí thấp để chia sẻ tệp mạng, dễ cài đặt vì nó sử dụng cơ sở hạ tầng mạng hiện có
  • quản lý tập trung. Quản lý tập trung của NFS làm giảm nhu cầu về phần mềm bổ sung và dung lượng ổ đĩa trên các hệ thống người dùng cá nhân
  • Thân thiện với người dùng. Giao thức này dễ sử dụng và cho phép người dùng truy cập các tệp từ xa trên các máy chủ từ xa giống như cách họ truy cập các tệp cục bộ
  • phân phối. NFS có thể được sử dụng như một hệ thống tệp phân tán, giảm nhu cầu về các thiết bị lưu trữ phương tiện di động
  • Chắc chắn. Với NFS, có ít phương tiện có thể tháo rời hơn như CD, DVD, đĩa Blu-ray, đĩa mềm và ổ USB được lưu hành, giúp hệ thống an toàn hơn

Nhược điểm của NFS

Một số hạn chế của việc sử dụng NFS bao gồm những điều sau đây

  • Sự phụ thuộc vào RPC khiến NFS vốn không an toàn và chỉ nên được sử dụng trên mạng đáng tin cậy phía sau tường lửa. Nếu không, NFS sẽ dễ bị đe dọa từ internet
  • Một số đánh giá về NFSv4 và NFSv4. 1 gợi ý rằng các phiên bản này có băng thông và khả năng mở rộng hạn chế, đồng thời NFS bị chậm khi lưu lượng truy cập mạng lớn. Vấn đề về băng thông và khả năng mở rộng được báo cáo là đã được cải thiện với NFSv4. 2

Mặc dù NFS bắt đầu như một hệ thống tệp mạng đơn giản cho mạng cục bộ, nhưng nó đã được điều chỉnh và áp dụng cho hầu hết mọi loại hệ thống tệp phân tán. Tìm hiểu cách AWS triển khai các dịch vụ tệp -- Amazon FSx và Amazon EFS -- dựa trên Windows Server Message Block và NFS