I. Mở đầu
Multiple access protocols trong mạng máy tính là các quy định, cơ chế điều khiển cho phép nhiều thiết bị truy cập vào và chia sẻ cùng một kênh truyền thông. Đóng vai trò quan trọng trong việc đảm bảo rằng dữ liệu được truyền tải một cách hiệu quả và công bằng giữa các thiết bị trong cùng mạng. Các giao thức này là nền tảng cho việc quản lý cách thức và thời điểm mà các thiết bị trên mạng có thể gửi và nhận dữ liệu, giảm thiểu sự xung đột và trùng lặp dữ liệu, đặc biệt trong môi trường mà nhiều người dùng cùng truy cập vào một nguồn tài nguyên chung.
Dù có sự khác biệt trong cách thức hoạt động, ba dạng giao thức Random access protocols, Controlled access protocols, và Channelization protocols đều hướng tới một mục tiêu chung: quản lý quyền truy cập vào một kênh truyền thông và phân phối tài nguyên mạng một cách hiệu quả. Trong bài viết này chúng ta sẽ tìm hiểu về Controlled access protocols (Các giao thức truy cập kiểm soát) - điều khiển quyền truy cập mạng thông qua một quy trình điều phối, đảm bảo rằng các thiết bị chỉ có thể gửi dữ liệu khi được cho phép. Bao gồm ba loại chính:
- Reservation
- Polling
- Token passing
Các giao thức truy cập kiểm soát đóng vai trò quan trọng trong việc duy trì trật tự và hiệu quả trong mạng máy tính. Bằng cách cấp quyền truy cập tuần tự hoặc theo quy định cụ thể, các giao thức này giúp ngăn chặn sự va chạm dữ liệu và đảm bảo rằng mọi thiết bị đều có cơ hội công bằng để giao tiếp
II. Reservation - Đặt chỗ
Trong mô hình của các giao thức truy cập kiểm soát, Reservation (Đặt chỗ) là phương thức cho phép các thiết bị trong mạng đặt chỗ trước cho việc truyền dữ liệu của mình. Điều này đảm bảo rằng mỗi thiết bị sẽ có một khoảng thời gian định sẵn để gửi thông tin của mình, giúp ngăn chặn sự xung đột và đồng thời tối ưu hóa việc sử dụng kênh truyền thông chung.
1. Nguyên lý hoạt động
Giao thức reservation giống như quá trình đăng ký vào hàng đợi:
- Các trạm sẽ được đặt chỗ trước khi thực hiện gửi dữ liệu, mỗi trạm "chiếm giữ" một khe thời gian trong một khung đặt chỗ (reservation frame).
- Khi tới khe thời gian của trạm nào thì trạm đó sẽ thực hiện truyền dữ liệu (thông báo sẽ truyền dữ liệu bằng cách gửi một tín hiệu hoặc giá trị nhất định), các trạm khác không được phép truyền trong khe thời gian "không phải chỗ đặt" của mình.
- Lặp lại quá trình trên trong các reservation frame tiếp theo.
Ngoài ra, trong trường hợp khe thời gian đã được đặt chỗ nhưng trạm đó không có dữ liệu truyền (hoặc không truyền được dữ liệu do nguyên nhân nào đó), thì khe thời gian đó sẽ bị bỏ trống. Một cách dễ hiểu, ai cũng được cũng đăng ký một vị trí trong hàng đợi, nhưng kể cả tới lượt người lấy đồ mà họ vắng mặt thì người cũng không được phép chen hàng!
Chúng ta xem xét một ví dụ cụ thể qua hình ảnh sau:
Chúng ta nhận thấy có khe thời gian trong một reservation frame, tương ứng với trạm. Có các trạm đăng ký truyền dữ liệu trong khe thời gian của mình. Thứ tự truyền được thực hiện sẽ là: trạm truyền dữ liệu, khe thời gian bỏ trống của trạm , trạm truyền dữ liệu, trạm truyền dữ liệu, khe thời gian bỏ trống của trạm .
Bạn đọc có thể xem thêm video giải thích rõ hơn tại link.
2. Ưu, nhược điểm
Ưu điểm
- Dự đoán được hiệu suất mạng: Phương pháp truy cập dựa trên đặt chỗ có thể cung cấp hiệu suất mạng dự đoán được, điều này quan trọng trong các ứng dụng cần giảm thiểu độ trễ và jitter, như truyền video hoặc âm thanh thời gian thực.
- Giảm xung đột: vì việc truy cập mạng được phân bổ trước dựa trên yêu cầu đặt chỗ nên có thể cải thiện hiệu quả mạng và giảm mất gói tin.
- Hỗ trợ chất lượng dịch vụ (QoS): bằng cách cung cấp các loại đặt chỗ khác nhau cho các loại lưu lượng khác nhau, như giọng nói, video, hoặc dữ liệu, phương pháp có thể đảm bảo rằng lưu lượng có ưu tiên cao được ưu tiên hơn lưu lượng có ưu tiên thấp.
- Sử dụng băng thông hiệu quả: cho phép multiplexing thời gian và tần số của các yêu cầu đặt chỗ khác nhau trên cùng một kênh.
- Hỗ trợ ứng dụng đa phương tiện: phù hợp để hỗ trợ các ứng dụng đa phương tiện cần nguồn tài nguyên mạng đảm bảo, như băng thông và độ trễ, để đảm bảo hiệu suất chất lượng cao.
Nhược điểm
- Phụ thuộc cao vào tính kiểm soát: có thể tạo ra điểm nghẽn hoặc trở thành điểm yếu nếu hệ thống điều khiển gặp sự cố.
- Giảm khả năng và tốc độ dữ liệu của kênh dưới tải nhẹ: Dưới điều kiện tải nhẹ có thể dẫn đến việc không tận dụng hết khả năng của kênh, khiến cho tốc độ dữ liệu giảm và thời gian phản hồi tăng lên.
- Tăng thời gian chuyển đổi: Việc phải đặt chỗ có thể làm tăng thời gian chuyển đổi từ khi một thiết bị có yêu cầu truyền dữ liệu đến khi nó thực sự có thể truyền dữ liệu, không phù hợp với các ứng dụng cần phản hồi nhanh.
- Yêu cầu quản lý và cấu hình phức tạp: Để triển khai hiệu quả, hệ thống đặt chỗ đòi hỏi quản lý cấu hình cẩn thận và có thể trở nên phức tạp khi số lượng thiết bị trong mạng tăng lên.
- Không linh hoạt: không đủ linh hoạt để đối phó với sự thay đổi đột ngột trong mô hình lưu lượng mạng, dẫn đến không phù hợp với các môi trường có sự thay đổi nhanh chóng về nhu cầu truyền thông.
3. Bài tập
Đề bài
Giả sử có một hệ thống mạng Reservation với trạm. Trạm đặt chỗ trước khi gửi dữ liệu mất . Trạm thực hiện giao dịch truyền dữ liệu cần một khoảng thời gian là .
a) Giả sử mỗi trạm đều có dữ liệu để gửi. Hãy tính tổng thời gian cần thiết để tất cả các trạm có thể gửi dữ liệu của mình một lần. b) Trong một chu kỳ giao dịch, trạm , và có dữ liệu để gửi, còn trạm và không có dữ liệu để gửi. Hãy tính tổng thời gian cần thiết để hoàn thành một chu kỳ giao dịch (các trạm không truyền dữ liệu cũng cần đặt chỗ).
Hướng dẫn
a) Mỗi trạm cần để đặt chỗ và để truyền dữ liệu. Vì vậy, tổng thời gian cần thiết để một trạm hoàn thành giao dịch là (đặt chỗ) + (truyền dữ liệu) = . Với trạm, tổng thời gian cần thiết sẽ là .
b) Dù trạm và không truyền dữ liệu, chúng vẫn cần để đặt chỗ. Các trạm , và sẽ mất để đặt chỗ và để truyền dữ liệu. Vì vậy:
- Trạm : (đặt chỗ) + (truyền dữ liệu) = cho mỗi trạm.
- Trạm và : (đặt chỗ) + (không truyền dữ liệu) = cho mỗi trạm.
Tổng thời gian cho một chu kỳ giao dịch sẽ là:
Các tài liệu tham khảo
- https://www.geeksforgeeks.org/controlled-access-protocols-in-computer-network/
- https://csc-knu.github.io/sys-prog/books/Andrew%20S.%20Tanenbaum%20-%20Computer%20Networks.pdf
- https://www.ucg.ac.me/skladiste/blog_44233/objava_64433/fajlovi/Computer%20Networking%20_%20A%20Top%20Down%20Approach,%207th,%20converted.pdf
- https://www.youtube.com/watch?v=baaPXiQ44vs