Slotted ALOHA (S-ALOHA)

Một phần của tài liệu Nghiên cứu cơ chế giải quyết xung đột thẻ theo hướng tiếp cận tdma và ứng dụng cho bộ đọc sm (Trang 37)

Tháng 6/1972, Lawrence G.Roberts nghiên cứu thành công một phương pháp cải tiến thuật toán Pure ALOHA nhằm gia tăng hiệu năng kênh truyền, tuy nhiên phương pháp này không được công bố mà chỉ được áp dụng trong hệ thống vệ tinh ARPA. Sau khi bị lan truyền ra ngoài thông qua bài báo “ALOHA PACKET SYSTEM WITH AND WITHOUT SLOTS AND CAPTURE”, các nhà nghiên cứu đặt tên cho phương pháp mới này là Slotted ALOHA.

Thẻ 1 Thẻ 2 Thẻ 3 Downlink Bộ đọc -> thẻ Uplink Thẻ -> bộ đọc Request Xung đột

Bảng 3-2 Tổng quan thuật toán Slotted ALOHA

3.2.1 Ý tưởng

Ý tưởng cơ bản của thuật toán này là chia dòng thời gian (timeline) thành những đoạn rời rạc được gọi là slot, mỗi slot có chiều dài đúng bằng khoảng thời gian cần để truyền một gói tin. Đầu tiên, bộ đọc phát một yêu cầu đến tất cả các thẻ hiện diện trong vùng từ trường của mình. Khi nhận được yêu cầu, mỗi thẻ chọn ngẫu nhiên một slot do bộ đọc quy định và gửi gói tin dữ liệu tại thời điểm bắt đầu mỗi slot.

Lúc này, nếu bộ đọc nhận được toàn vẹn gói tin của một thẻ, nó sẽ gửi tín hiệu ACK phản hồi lại thẻ đó. Trong trường hợp có nhiều hơn một thẻ chọn ngẫu nhiên cùng một slot như nhau, gói tin dữ liệu của các thẻ này trong quá trình gửi đến bộ đọc sẽ xung đột lẫn nhau, do đó bộ đọc không thể nhận được toàn vẹn bất kỳ một gói tin nào và sẽ không phản hồi tín hiệu ACK lại các thẻ này. Với các thẻ sau khi gửi gói tin dữ liệu mà hết thời gian chờ vẫn không nhận được phản hồi từ phía bộ đọc sẽ lặp lại quá trình tương tự như lúc đầu để giải quyết xung đột.

Vậy làm sao để các thẻ biết khi nào là thời điểm bắt đầu một slot? Không giống thuật toán Pure ALOHA, ở đây cần một cơ chế đồng bộ giữa bộ đọc và các thẻ. Có hai cách đồng bộ: một là bộ đọc sẽ gửi tín hiệu báo trước cho các thẻ khi sắp đến thời điểm bắt đầu một slot, khi gặp tín hiệu này các thẻ sẽ tăng bộ đếm của mình thêm một, nếu kết quả đếm chính là slot các thẻ đã chọn ngẫu nhiên thì gói tin sẽ được gửi đến bộ đọc tại slot tiếp theo, hai là phải sử dụng một bộ định giờ bên trong các thẻ.

3.2.2 Thuật toán

Gọi Q = {1, 2, …, n} là tập hợp n thẻ trong vùng từ trường của bộ đọc. Gọi = { , , …, } là tập hợp k gói tin của thẻ thứ i, i Q.

Gọi thời gian để gửi một gói tin là và thời gian chờ tín hiệu ACK là .

Gửi lần đầu Gửi lại/gửi tiếp

Hình 3.4 Sơ đồ thuật toán Slotted ALOHA theo thời gian

Bước 1: Bộ đọc phát một yêu cầu đến mọi thẻ i Q tại thời điểm kèm theo số lượng slot hỗ trợ.

Bước 2: Mỗi thẻ i Q chọn ngẫu nhiên một và gửi gói tin đến bộ đọc tại thời điểm là thời điểm bắt đầu .

Bước 3: mỗi thẻ i Q nếu sau thời điểm + + : Vẫn chưa nhận được tín hiệu ACK: quay lại Bước 2. Đã nhận được tín hiệu ACK: = – { }.

Bước 4:

Nếu ≠ : quay lại Bước 2. Nếu = : Q = Q – {i}. Bước 5:

Nếu Q ≠ : quay lại Bước 2. Nếu Q = : kết thúc.

3.2.3 Phân tích

Xem xét n thẻ trong khoảng thời gian T, T được chia thành các slot bằng nhau và bằng với khoảng thời gian để gửi một gói tin là ( ).

Tương tự như thuật toán Pure ALOHA, ta có công thức tính S như sau:

S = [số gói tin trung bình được gửi trong một ] [xác suất một gói tin được gửi thành công trong một ].

= G x [xác suất một gói tin được gửi thành công trong một ].(3.4) Bây giờ, ta cần tính xác suất một gói tin được gửi thành công trong một .

p Không xung đột với p + - Xung đột với p

Gọi X là số gói tin được gửi trong một , dễ dàng nhận thấy X là biến ngẫu nhiên rời rạc, theo mô hình phân phối Poission, xác suất của k gói tin được gửi trong một

là:

Trong đó, G là số trung bình xét trên mỗi slot.

Theo (3.5), xác suất một gói tin được gửi thành công sẽ tương ứng với k = 0: (3.6)

Từ (3.4) và (3.6) ta suy ra:

S = G

Hình 3.6 Đồ thị so sánh throughput giữa thuật toán Pure ALOHA và Slotted ALOHA (adsbygoogle = window.adsbygoogle || []).push({});

Với offered load G = 1, throughput S đạt giá trị cực đại 1/e 0.368. Dễ dàng nhận thấy rằng, throughput S được nâng lên gấp 2 lần so với throughput S trong thuật toán Pure ALOHA.

Để ý rằng, trong Pure ALOHA, do các gói tin có thể gửi bất kỳ lúc nào nên khi xảy ra xung đột có hai khả năng xảy ra: xung đột một phần gói tin hay xung đột toàn bộ gói tin. Còn trong S-ALOHA, khi xảy ra xung đột, khả năng xảy ra xung đột một

0 0.1 0.2 0.3 0.4 0 1 2 3 4 5 Thr ou gh p u t S Offered load G Pure ALOHA Slotted ALOHA

phần hoàn toàn bị loại bỏ nhờ vào cơ chế đồng bộ giữa bộ đọc và thẻ. Đó là lý do vì sao hiệu suất sử dụng kênh truyền được nâng lên gấp đôi.

Một phần của tài liệu Nghiên cứu cơ chế giải quyết xung đột thẻ theo hướng tiếp cận tdma và ứng dụng cho bộ đọc sm (Trang 37)