Quá trình hoạt động của bộ đệm tái sắp xếp

Một phần của tài liệu Giới thiệu các chức năng và hoạt động của 802.11n ở lớp MAC (Trang 64 - 76)

3.3 Xác nhận khối (Block Acknowledgement)

3.3.6 Quá trình hoạt động của bộ đệm tái sắp xếp

Khi bên nhận nhận được một khung QoS Data mà một phiên Ack xác nhận khối đặt ra, bên nhận sẽ đệm MPDU. Nếu MPDU đang truyền hoàn thành, MSDU ở phần đầu của bộ đệm tái sắp xếp, thì bên nhận chuyển tiếp MSDU hoàn thành và các MSDU

Các cải tiến thông lượng ở lớp MAC

khi gặp phải một MSDU không đầy đủ tạo thành một lỗ hổng trong không gian thứ tự.

Nếu, khi MPDU đến, có các MSDU chưa hoàn thành ở trước trong bộ đệm tái sắp xếp, MSDU đó sẽ được giữ cho đến khi những MSDU trước được hoàn tất.

Nếu một MPDU đến và bộ đệm tái sắp xếp đang đầy thì MSDU đầu tiên trong bộ đệm tái sắp xếp sẽ bị bỏ đi (vì nó là không đầy đủ) để tạo chỗ trống. Điều này cũng có thể dẫn đến việc giải phóng tiếp các MSDU phía trước tới các lớp cao hơn.

Nếu một khung BAR được nhận, tất cả các MSDU hoàn thành với một số thứ tự thấp hơn số thứ tự bắt đầu của BAR sẽ được chuyển tiếp đến các lớp cao hơn và tất cả các MSDU chưa hoàn thành với một số thứ tự thấp hơn là bỏ đi. Khung BAR do đó có vai trò kép. Bên cạnh việc trưng cầu một hồi đáp ack xác nhận khối, nó còn cấp khởi tạo một cơ chế làm đều bộ đều sắp xếp lại bên nhận của các MSDU chưa hoàn thành hoặc các lỗ đại diện cho các MSDU mà khoảng thời gian truyền lại của nó đã hết. Nếu khởi tạo đó bỏ một hoặc nhiều MPDU do hết hạn tồn tại nó phải gửi một BAR để làm đều bộ đệm sắp xếp lại ở bên nhận để các MSDU tiếp theo không phải là vô ích giơ lên chờ đợi cho các trình tự sẽ được hoàn thành.

Hình 3.12 là một ví dụ về hoạt động của bộ đệm sắp xếp lại. Một khối của các khung QoS dữ liệu gồm các MSDU phân mảnh được gửi. Trong giản đồ, các MPDU QoS dữ liệu được đánh số như sau Số thập phân trước dấu chấm là số thứ tự của MSDU, còn số thập phân sau dấu chấm là số thứ tự các phân đoạn của MSDU đó.

MSDU 1 được nhận đầy đủ, kết hợp lại và chuyển tiếp đến các lớp cao hơn. Đoạn thứ hai của MSDU 2 bị mất và vì thế mảnh nhận được lưu giữ cho đến khi MSDU 2 có thể được nhận đầy đủ.

Hình 3.12 Hoạt động của bộ đệm tái sắp xếp với các phân đoạn MSDU.

Các cải tiến thông lượng ở lớp MAC

Sau một trao đổi BA/BAR, bên khởi tạo nhận biết được các mảnh bị mất và truyền lại chúng với nhau với các MSDU bổ sung có sẵn và thích hợp với bộ đệm tái sắp xếp. Mọi MSDUs được hoàn tất và được chuyển tiếp theo thứ tự để các lớp cao hơn. Bên khỏi tạo biết được rằng tất cả các MSDUs đã được chuyển giao thành công bằng một trao đổi BA/BAR.

3.4 ACK XÁC NHẬN KHỐI TỨC THỜI THÔNG LUỢNG CAO (HT- immediate block ack)

HT-immediate block ack là một sửa đổi quan trọng cho giao thức ack xác nhận khối tức thời và xem như là một giao thức riêng biệt cho mục đích tương thích ngược với các thiết bị đời cũ hơn. Một trạm thông lượng cao (HT station) muốn thiết lập một phiên ack xác nhận khối với một trạm khác không phải HT station thì sẽ phải sử dụng giao thức ack xác nhận khối tức thời hoặc trễ nguyên bản. Một trạm HT muốn thiết lập một phiên ack xác nhận khối với một trạm HT khác sẽ sử dụng HT ack xác nhận khối tức thời hoặc trễ. Có rất nhiều biến thể phổ biến giữa HT và giao thức ban đầu, trong đó giúp giảm bớt thực hiện.

Tất cả các trạm HT đều được yêu cầu để hỗ trợ HT ack xác nhận khối tức thời như bên nhận.

3.4.1 Chính sách của Normal Ack trong một quá trình liên kết khung.

Giao thức ack xác nhận khối được giới thiệu trong 802.11e được bổ sung cho 802.11n. Từ lúc một quá trình liên kết là một quá trình truyền vật lý bao gồm các MPDU, một cơ chế tương tự như cơ chế Data/Ack có thể được thực hiện. Cơ chế này được bổ sung cho 802.11n khi . Nếu một hay nhiều MPDU QoS dữ liệu trong một liên kết có trường Ack Policy được gọi Normal Ack thì bên hồi đáp sẽ trả lại một BA trong hồi đáp tới liên kết đó. Hai cơ chế hồi đáp này được mô tả qua hình 3.13.

Các cải tiến thông lượng ở lớp MAC

Hình 3.14 Sử dụng BAR để làm giảm bộ đệm tái sắp xếp.

Việc sử dụng chính sách Normal Ack để thu hút một BA không loại bỏ sự cần thiết BAR. Nhớ lại rằng khung BAR thực hiện hai chức năng: xin một phản hồi BA và làm đều các MSDU trong bộ đệm tái sắp xếp để giữ một MSDU chưa hoàn chỉnh. Nếu bên khởi tạo không nhận được một xác nhận cho một MSDU đã hết hạn, thì bên khởi tạo phải gửi một BAR để làm đều bộ đệm tái sắp xếp bên nhận của các MSDU hoàn chỉnh trước đến MSDU mà sẽ không bao giờ làm cho nó qua. Điều này được minh họa trong ví dụ đưa ra trong hình 3.14.

Trong ví dụ này, MSDU 3 không được nhận thành công bởi người nhận sau một số thử lại. Hết hạn tồn tại bên khởi tạo sẽ loại bỏ MSDU 3. Để loại bỏ lỗ trống trong bộ đệm tái sắp xếp bên nhận, bên khởi tạo phải gửi một BAR với một số SSN mà lớn hơn số thứ tự của các MSDU bỏ đi. Trong thực tế, SSN được đặt số thứ tự của các MSDU kế tiếp được truyền đi (mặc dù MSDU có thể chưa sẵn sàng để truyền) mà trong trường hợp này là 8 kể từ khi tất cả các MSDU với số thứ tự thấp hơn đã được ghi nhận và bỏ đi do bên khởi tạo.

3.4.2 Nén ack xác nhận khối

Ở tốc độ truyền cao HT, quá trình phân mảnh không cho nhiều lợi ích. Khung BA nguyên bản được định nghĩa với một bảng 1024 bit (128 octet) để hỗ trợ 64 MSDU, mỗi trong số đó có thể được phân mảnh với 16 mảnh. 802.11n giới thiệu một phiên bản BA nén với 16 bit cho mỗi MSDU cho các phân mảnh, tạo ra một bảng 64-

Các cải tiến thông lượng ở lớp MAC

bit (8 octet). Điều này làm giảm thiểu tiêu đề trên không và bộ nhớ yêu cầu ở bên nhận.

3.4.3 Trạng thái đầy đủ và một phần của ack xác nhận khối.

Cơ chế ack xác nhận khối được quy định trong 802.11e bổ sung được gọi là trạng thái ack xác nhận khối đầy đủ để phân biệt nó với trạng thái ack xác nhận khối một phần, giới thiệu trong việc sửa đổi 802.11n. Trạng thái ack xác nhận khối một phần tương thích ngược với trạng thái ack xác nhận khối đầy đủ theo ý nghĩa là một bên khởi tạo bằng cách sử dụng quy định trạng thái một phần sẽ hoạt động một cách chính xác với một bên nhận thực hiện các hoạt động ở trạng thái đầy đủ.

A.Quá trình hoạt động của ack xác nhận khối trạng thái đầy đủ.

Dưới hoạt động này, bên nhận duy trì một bảng điểm trạng thái ack cho mỗi phiên ack xác nhận khối. Bảng điểm này ghi lại trạng thái ack của trên 64 MSDU. Khi sự phân mảnh được sử dụng mỗi MSDU có thể được phân mảnh thành trên 16 phân đoạn nhỏ, do đó là một bảng có thể lên đến 64 đầu vào của mảng 16 bit. Bên nhận thực hiện với bộ nhớ giới hạn có thể hạn chế mức độ của mảng bằng cách đặt tham số BufferSize trong các ADDBA Response hồi đáp.

Các số thứ tự MSDU là một giá trị 12-bit, do đó bảng đại diện cho một cửa sổ trong không gian số thứ tự của 4096 giá trị. Các cửa sổ bảng điểm được xác định bởi một số thứ tự đầu WinStart, một số thứ tự kết thúc WinEnd, và giới hạn trong một WinSize. Với việc thành lập phiên ack xác nhận khối, bảng điểm được khởi tạo với thiết lập WinStart số thứ tự bắt đầu cung cấp theo ADDBA yêu cầu.

Khi một khung dữ liệu QoS đến, nếu số thứ tự nằm trong không gian đại diện bởi bảng điểm, bên nhận sẽ ghi vào bảng điểm bằng cách sử dụng số thứ tự của khung dữ liệu (SN) và ghi nhận chính xác của nó. Nếu SN ở ngoài khoảng biểu thị bởi bảng điểm, nhưng trong phạm vi WinEnd đến WinStart + 211 (một nửa không gian số thứ tự) thì bên nhận sẽ chuyển các bảng điểm bên phải cho đến khi nó bao gồm số thứ tự mới trên mép bìa phải của cửa sổ của nó.

Khi một BAR đến, cửa sổ bảng điểm được dịch chuyển sang phải để WinStart bằng với SSN được cung cấp trong khung BAR và một phản hồi BA được trả về với nội dung của bảng điểm này.

Các cải tiến thông lượng ở lớp MAC

B. Sự thúc đẩy cho ack xác nhận khối trạng thái một phần

Với cơ chế ack nguyên bản, nó được yêu cầu rằng trạng thái bảng điểm kéo dài theo thời hạn của phiên ack xác nhận khối. Điều này là gánh nặng với quá trình bên nhận thực hiện với sự cần thiết phải duy trì trạng thái cho tất cả các phiên ack xác nhận khối hoạt động, và, trong thực tế, với độ trễ thấp cần thiết để tạo một BA để đáp ứng với một BAR, có nghĩa cần sử dụng chip nhớ đắt hơn. Với việc sửa đổi 802.11n để giảm tải cho chip nhớ cần sử dụng các phiên ack xác nhận khối khác. Trạng thái bộ nhớ có hiệu quả phục vụ như một bộ nhớ cache, lưu trữ trạng thái của các hoạt động gần đây nhất của phiên ack xác nhận khối. Các quy tắc mới hơn được gọi là trạng thái ack xác nhận khối một phần và hoàn toàn tương thích ngược với các ack đầy đủ nguyên bản.

Để hiểu được động lực để thay đổi thực hiện xem xét một minh họa trong hình 3.15. Dưới tác động tức thì của BA, khi bên nhận nhận được một BAR hoặc một khung liên hợp bao gồm các khung QoS Data bằng chính sách Normal Ack, bên nhận phải truyền tải một khung BA Response phản hồi trong khoảng SIFS sau khi nhận được BAR hoặc khung liên hợp các khung QoS Data. Do trễ giải mã trên đường nhận và mã hóa trên đường truyền dẫn, có rất ít thời gian có sẵn để định vị các trạng thái thông tin thích hợp và tạo thành những đáp ứng BA. Điều này phần lớn đòi hỏi trên chip lưu trữ các bảng điểm ack xác nhận khối mà sẽ được trả lại trong BA Response phản hồi.

Chức năng chủ yếu khác trong cơ chế ack xác nhận khối là chức năng tái tổ hợp và tái sắp xếp. Tái tổ hợp các MSDU hoàn chỉnh và chuyển tiếp chúng theo thứ tự đến các lớp cao hơn. Chức năng này không quan trọng thời gian và đòi hỏi một bộ đệm lớn cho các gói tin lưu trữ trong quá trình tái sắp xếp và tái tổ hợp và như vậy thường được thực hiện trong hệ thống lưu trữ các giao diện mạng.

Các quy tắc trạng thái một phần mới này không ảnh hưởng đến quá trình tái sắp xếp và tái tổ hợp, nhưng giảm các yêu cầu tài nguyên trong các giao diện mạng để lưu trữ các bảng điểm ack xác nhận khối. Tái sắp xếp một vùng đệm vẫn còn cần thiết cho mỗi phiên ack xác nhận khối nhưng từ nay sẽ được lưu trữ trong bộ nhớ máy chủ tương đối rẻ. Phần lớn bộ nhớ được yêu cầu chip lưu trữ các bảng điểm ack khi cùng một bộ nhớ có thể được sử dụng lại cho nhiều phiên ack xác nhận khối.

Các cải tiến thông lượng ở lớp MAC

Hình 3.15 Chức năng chia nhỏ thông thường cho quá trình thực hiện ack xác nhận khối tức thời ở trạm nhận.

C. Quá trình hoạt động của ack xác nhận khối một phần

Khi nhận được khung dữ liệu QoS với số thứ tự SN, bên nhận kiểm tra để xem nếu có một bản ghi của bảng điểm cho phiên ack xác nhận khối đó, nơi phiên được xác định bởi địa chỉ truyền (TA) và TID. Nếu không, sau đó nó tạo ra một bảng điểm cho phiên đó với WinEnd = SN và WinStart = WinEndWinStart +1, có thể tái sử dụng bộ nhớ từ các phiên khác. Việc tiếp nhận chính xác của các khung dữ liệu được ghi chép bằng cách thiết lập một bit 1 ở vị trí đại diện cho SN, tức là WinEnd.

Với mỗi khung dữ liệu sau đó:

o Nếu SN bên trong khoảng cửa sổ bảng điểm hiện tại, tức là WinStart

≤ SN ≤ WinEnd, bảng điểm sẽ ghi lại nhận được tại giá trị đại diện bởi SN.

Các cải tiến thông lượng ở lớp MAC

o Nếu SN là bên ngoài khoảng cửa sổ bảng điểm hiện tại, nhưng trong phạm vi một nửa không gian trình tự, tức là WinEnd <SN <WinStart + 211, sau đó là bảng điểm được dịch sang phải để phù hợp với SN.

o Nếu SN là hơn một nửa không gian chuỗi ngoài cửa sổ, tức là 211 + WinStart <SN <WinStart, thì thay đổi không xảy ra.

Hình 3.16 Quá trinh hoạt động bảng điểm (scoreboard)

Các hoạt động bảng điểm được minh họa trong hình 3.16. Đó là một khung dữ liệu QoS với số thứ tự 102 được nhận và bên nhận sẽ tạo ra một bảng điểm mới.Với các liên kết kế tiếp, khung QoS dữ liệu 103 và 105 được nhận một cách chính xác và bảng điểm này được dịch phải để phù hợp các mục dữ liệu mới. QoS frame 100 nằm trong phạm vi dãy bảng điểm số và chỉ đơn giản là đánh dấu lên. Lưu ý rằng trong trình tự các khung dữ liệu QoS này có trường Ack Policy được thiết lập Ack xác nhận khối.

Khi BAR được nhận, bên nhận dịch bảng sang phải cho đến khi WinStart = SSN từ BAR (là 100 trong trường hợp này) và trả về một khung BA với nội dung của bảng này.

Lưu ý rằng những con số hiển thị chuỗi chỉ để minh hoạ. Trong thực tế, số thứ tự là giá trị 16-bit bao gồm 12 bit cho số MSDU và 4 bit một số phân đoạn.

Sự khác biệt chính giữa ack trạng thái một phần và toàn đầy đủ là qua bảng điểm được giữ lại bởi người nhận. Ở ack một phần, bên khởi tạo nên đảm bảo rằng lấy

Các cải tiến thông lượng ở lớp MAC

ra trạng thái ack với xác suất cao trước khi trạm khác có cơ hội để gửi dữ liệu đến bên nhận và có khả năng xóa bảng phiên của ack xác nhận khối. Trong thực tế này có nghĩa là bên khởi tạo nên cố gắng để lấy bảng điểm ack trước khi kết thúc mỗi TXOP.

Nếu thỉnh thoảng các ack bảng điểm khối không lấy trong TXOP (có lẽ khung BA được nhận bị lỗi), vẫn còn một cơ hội tốt mà một kênh truy nhập tiếp theo ngay lập tức truy cập bởi các trạm tương tự sẽ xảy ra trước khi dữ liệu thuộc một khối là phiên ack nhận bởi người nhận, tẩy xoá bảng điểm khối của phiên ack. Bên khởi tạo có thể vì thế chỉ cần sử dụng một khung BAR trong một kênh truy nhập tiếp theo để lấy lại trạng thái ack. Thậm chí trong trường hợp xấu nhất bảng trạng thái ack, các BA sẽ hiển thị tất cả các số không và bên khởi tạo sẽ cần phải truyền lại các MSDU. Ngoài ra, nếu bên khởi tạo đã gửi một liên kết khung duy nhất bao gồm các khung dữ liệu QoS với chính sách Normal Ack và không có BA nào được nhận, sau đó bên khởi tạo có thể giả định rằng không có khung nào trong số các khung dữ liệu QoS thông qua và chỉ đơn giản là truyền lại các khung dữ liệu QoS.

Trong khi nhiều hành vi phức tạp được phép, hầu hết các hoạt động sẽ phù hợp với quy tắc của trạng thái ack một phần bằng cách gửi một liên kết khung duy nhất ở mỗi TXOP, mời một khung BA bằng cách thiết lập chính sách ack của khung dữ liệu QoS tạo thành liên kết tới Normal Ack. Nhân dịp hiếm hoi khi khoảng thời gian tồn tại MSDU hết hạn trước khi nó được xác nhận, bên khởi tạo sẽ gửi một khung BAR để giải phóng các lỗ hổng trên bộ đệm tái sắp xếp. Bên khởi tạo thực hiện hành vi này sẽ làm việc với cả hai trạng thái ack đầy đủ và ack một phần ở bên nhận.

3.4.4 Các chuỗi TXOP trong HT ack xác nhận khối tức thời.

Thông thường chuỗi TXOP dưới hoạt động của HT ack xác nhận khối tức thời ngay được biểu diễn trong hình 3.17. TXOP được bắt đầu với một khung trao đổi ngắn như cơ chế phát hiện va chạm. Trong những trình tự này một trao đổi RTS/CTS, cung cấp bảo vệ nâng cao, được sử dụng, hiệu quả hơn so với sử dụng trao đổi dữ liệu/Ack.

Trong chuỗi (a) một quá trình truyền dữ liệu liên kết được thực hiện với chính sách ack thiết lập để Normal Ack trong các QoS dữ liệu MPDU tạo thành liên kết. Việc này yêu cầu một khung phản hồi BA ngay lập tức.

Một phần của tài liệu Giới thiệu các chức năng và hoạt động của 802.11n ở lớp MAC (Trang 64 - 76)

Tải bản đầy đủ (PDF)

(77 trang)