CÁC KỸ THUẬT LẬP LỊCH
1.9. Các thuật toán lập lịch [14]
1.9.1. Giới thiệu
Như đã trình bày ở chương một, ta đã biết về bộ lập lịch trong lớp MAC giao diện vô tuyến. Trong chương này ta sẽ trình bày về các kỹ thuật lập lịch cơ bản. Ta có thể phân loại kỹ thuật lập lịch theo các cách như theo phụ thuộc kênh truyền hay không phụ thuộc kênh truyền. Ngoài ra, có thể phân biệt theo loại lưu lượng, khi đó hiệu suất của thuật toán lập lịch sẽ cao đối với từng loại lưu lượng khác nhau. Lưu lượng có thể chia thành lưu lượng thời gian thực, lưu lượng thời gian không thực hoặc hỗn hợp của hai loại như thoại, dữ liệu, live video…Khi đó, kỹ thuật lập lịch có thể chia làm hai loại:
Thuật toán lập lịch cho lưu lượng thời gian không thực: Kỹ thuật lập lịch cho lưu lượng thời gian không thực dựa vào thuật toán cơ bản là PF. Các thuật toán lập lịch phổ biến khác là Max Rate, Round Robin. Hiệu suất của các thuật toán lập lịch cho dịch vụ thời gian không thực được đo đạc chủ yếu bằng thông lượng và độ công bằng.
Thuật toán lập lịch cho lưu lượng thời gian thực: Lưu lượng thời gian thực có yêu cầu độ trễ nghiêm ngặt hơn nhiều nhằm giảm sai lỗi. Trong hệ thống không dây, lưu lượng thời gian thực được mô hình hóa bởi quá trình lưu lượng tới là các gói tin độc lập đến bộ đệm, theo một mục tiêu trễ khác nhau. Đối với mô hình mạng không dây khác nhau, có một số chính sách để thỏa mãn các mục tiêu độ trễ khác nhau. Ví dụ, chính sách mà độ trễ giới hạn lớn nhất là đảm bảo độ dài hàng đợi
trong một số ràng buộc. Các thuật toán lập lịch phổ biến nhất cho lưu lượng thời gian thực là Largest Delay First, Modified Largest Weighted Delay First, Delay Experience. Độ mất gói và độ công bằng là những thông số hiệu suất chính đối với thuật toán lập lịch đối với lưu lượng thời gian thực.
Trong mạng thực tế, cả lưu lượng thời gian thực và không thực đều hiện diện, vì thế bộ lập lịch phải làm sao đáp ứng được cả hai loại lưu lượng này đồng thời. Thuật toán phải tối đa hóa thông lượng để sử dụng hiệu quả kênh truyền và giữ độ trễ nhỏ nhất có thể bằng cách nhận dạng các lưu lượng quan trọng đồng thời, nhưng phải đảm bảo tính công bằng. Các thuật toán phổ biến nhất là Exponential Rule, Utility function. Các thông số đánh giá hiệu suất chính là thông lượng, độ trễ và độ công bằng.
1.9.2. Các yêu cầu của bộ lập lịch
Để quyết định hàng đợi của UE nào được phục vụ và bao nhiêu dữ liệu được phép truyền, một kỹ thuật lập lịch rất đơn giản có thể được dùng là FIFO (First In First Out). Kỹ thuật này rất đơn giản nhưng lại không công bằng. Một kỹ thuật lập lịch phức tạp hơn một chút là RR (Round Robin). Kỹ thuật này tạo sự công bằng giữa các thuê bao nhưng không thoả mãn các yêu cầu QoS như thông lượng, tỉ lệ lỗi hay độ trễ . Trong phần này sẽ đề cập đến các nhân tố mà các bộ lập lịch phải quan tâm, hay là những yêu cầu của bộ lập lịch.
- Các thông số QoS: Bộ lập lịch phải có thể đảm bảo các thông số QoS cho các lớp dịch vụ khác nhau. Các thông số chính là tốc độ lưu lượng tối thiểu, trễ cho phép tối đa và sự chịu đựng dao động trễ. Ví dụ, bộ lập lịch cần phải lập lịch lại hoặc chèn các gói để đạt được các yêu cầu về trễ và thông lượng. EDF (Earliest Deadline First) là một ví dụ của kỹ thuật được sử dụng để đảm bảo yêu cầu về trễ.
Tương tự như thế LWDF (Largest Weighted Delay First) được sử dụng để đảm bảo thông lượng tối thiểu.
-Tối ưu thông lượng: Tài nguyên vô tuyến trong các mạng không dây là có giới hạn, vì thế vấn đề là phải tìm cách tối đa tổng thông lượng của hệ thống. Ở đây có thể là tối đa số lượng UE được hỗ trợ hoặc đường truyền được tận dụng hoàn
toàn. Một trong những cách tốt nhất để hình dung về thông lượng, đó là những dữ liệu thực tế được truyền đi không bao gồm các thông tin điều khiển và các gói bị mất. Thông tin điều khiển bao gồm thông tin điều khiển lớp MAC, các thông tin điều khiển phân mảnh và đóng gói, thông tin điều khiển cụm (burst). Thông tin này dùng để tối ưu số lượng cụm trong một khung và chỉ ra cách đóng gói hoặc phân mảnh các SDU vào trong lớp MAC. Các yêu cầu băng thông được biểu thị bằng một số lượng bytes nhất định. Yêu cầu này không thể chuyển thành số lượng slot được, bởi vì một slot có thể chứa một số lượng bytes khác nhau, tuỳ thuộc vào kỹ thuật điều chế được sử dụng. Ngoài ra, tỉ lệ mất gói cũng rất quan trọng. Bộ lập lịch cần sử dụng các thông tin về trạng thái kênh truyền và tốc độ lỗi bit để quyết định phương thức điều chế và mã hoá cho từng thuê bao.
-Tính công bằng: Bên cạnh sự đảm bảo các thông số QoS, các tài nguyên còn thừa phải được cấp phát một cách công bằng. Thời gian để thực hiện sự công bằng cũng quan trọng, bởi vì có thể là công bằng trong thời hạn ngắn hoặc trong thời hạn dài. Công bằng trong thời hạn ngắn dẫn đến công bằng trong thời hạn dài, nhưng điều ngược lại chưa chắc đúng.
-Sự tiêu thụ năng lượng và điều khiển công suất: Bộ lập lịch cần phải quan tâm đến công suất tối đa cho phép. Dựa vào tốc độ lỗi bit BER và tỉ lệ tín hiệu trên nhiễu SINR mà eNodeB có thể chấp nhận các dữ liệu được truyền, bộ lập lịch có thể tính toán công suất thích hợp được sử dụng cho từng MS tuỳ theo vị trí của chúng. Với những người sử dụng di động, công suất là rất giới hạn. Vì thế, bộ lập lịch MS cũng cần phải tối ưu công suất truyền.
-Sự phức tạp trong thực thi: Vì eNodeB phải xử lý rất nhiều kết nối đồng thời và quyết định phải được tạo ra trong vòng khoảng thời gian 10 ms của khung LTE, các thuật toán lập lịch phải đơn giản, nhanh và sử dụng tối thiểu tài nguyên như là bộ nhớ.
- Khả năng mở rộng của thuật toán: thuật toán phải hoạt động có hiệu quả khi số lượng kết nối tăng lên, số eNodeB tăng lên, số UE tăng lên, băng thông tăng lên.
1.9.3. Các kỹ thuật lập lịch cơ bản [10…18]
1.9.3.1. Round Robin [11]
Bên cạnh FIFO, Round Robin được xem như là kỹ thuật lập lịch đơn giản nhất. Round Robin cấp phát một cách công bằng cho lần lượt từng kết nối một phân chia theo thời gian. Bộ lập lịch Round Robin, cũng có thể được gọi là bộ lập lịch vòng tròn, phân chia công bằng các tài nguyên kênh cho tất cả các thành phần: các gói, các dữ liệu hay các cuộc gọi. Khi đó mọi UE sẽ được nhận tài nguyên công bằng theo thời gian mà không quan tâm đến CQI. Ưu điểm của Round Robin là đảm bảo tính công bằng cho UE, dễ thực hiện, thường dùng trong nhiều hệ thống, kể cả LTE. Nhưng do Round Robin không quan tâm đến CQI, kết quả là thông lượng người dùng sẽ thấp.
Kỹ thuật lập lịch Round Robin phù hợp nếu các thuê bao có cùng lưu lượng và cùng các đặc điểm vô tuyến. Thực tế thì dựa vào các đặc điểm vô tuyến, sẽ xác định phương pháp điều chế và mã hoá MCS được sử dụng. Vì thế nếu tất cả các thuê bao có cùng MCS và có cùng lưu lượng, thì chúng cần lượng tài nguyên giống nhau và khi đó, bộ lập lịch Round Robin có thể phù hợp trong các điều kiện đó.
Hình 2.1 Thuật toán lập lịch Round Robin.
Bắt đầu
Lập lịch UE đầu tiên
Lập lịch UE tiếp theo
Tất cả UE đã được lập
lịch ? không
lịch UE đầu tiên
c ó lịc h U E đầ u tiê n
32
Khi xem xét đến sự công bằng thì cũng cần phải quan tâm tới sự cấp phát là cho một số lượng gói một hay là cho một số lượng byte một. Trong trường hợp sự cấp phát dựa trên các gói, thì các trạm với các gói lớn có một lợi thế không công bằng. Ngoài ra, Round Robin có thể không hoạt động đảm bảo trong trường hợp khi mà sự cấp phát vẫn được tạo ra cho các kết nối mà có thể không có gì cả để truyền.
1.9.3.2. Kỹ thuật lập lịch Best CQI [11]
Kỹ thuật lập lịch Best CQI cấp phát tài nguyên cho người dùng có điều kiện kênh vô tuyến tốt nhất. Trên đường xuống, UE nhận tín hiệu tham chiếu (tín hiệu tham chiếu đường xuống) trên các symbol cố định, từ đó UE tính toán CQI tương ứng và báo cáo gửi cho eNodeB. Giá trị CQI cao nghĩa là điều kiện kênh truyền tốt, khi đó UE đó sẽ được chọn để cấp phát tài nguyên. Kỹ thuật lập lịch này tăng dung lượng NodeB nhưng không đảm bảo tính công bằng cho các UE, những UE xa node B không bao giờ được cấp phát tài nguyên.
Hình 2.2 Thuật toán lập lịch Best CQI h
U E đầ u tiê n
Bắt đầu
Đo đạc CQI
Kiểm tra CQI cao nhất
Lập lịch cho UE UE có
CQI cao nhất ?
k c
Hình 2.3 CQI và tài nguyên cấp phát cho UE 1.9.3.3. Kỹ thuật lập lịch Max Throughput [16],[17]
Max Throughput là kỹ thuật lập lịch phụ thuộc kênh truyền. Max Throughput có ưu điểm đối với đa người dùng là thông lượng hệ thống cao. Tuy nhiên đối với từng người dùng thì không công bằng cho lắm vì sẽ có UE không được phục vụ, gọi là các khách hàng không hài lòng. Nguyên tắc của kỹ thuật lập lịch Max Throughput là lưu lượng càng ít ‘đắt đỏ’ sẽ được cấp toàn bộ dung lượng hệ thống để sử dụng, không cấp tài nguyên cho lưu lượng đắt đỏ nhất. Trong mạng không dây, UE đắt đỏ thường là các MS ở xa trạm gốc, cố gắng truy cập vào mạng.
Còn UE ít đắt đỏ là các UE gần trạm gốc, có chất lượng sóng tốt.
Nguyên tắc hoạt động của Max Throughput cũng khá đơn giản. Trước hết, bộ lập lịch phân tích thông tin CSI do UE gửi về để lấy thông tin tốc độ dữ liệu của sub channel cụ thể của các UE khác nhau. Sau đó bộ lập lịch cấp phát gán kênh này cho UE sao cho tổng thông lượng các UE là cao nhất.
Kỹ thuật Max Throughput làm cho UE chết đói khi nó có thông lượng lớn nhất. UE ở kênh xấu cũng không được công nhận bởi lập lịch, do đó đây không phải là thuật toán công bằng. Tuy nhiên đây là thuật toán có thể sử dụng để đo thông lượng tổng.
1.9.3.4. Kỹ thuật lập lịch Max min [15]
Trong mạng thông tin liên lạc, kỹ thuật cấp phát tài nguyên được gọi là max- min khi: trước hết, UE có tốc độ truy nhập dữ liệu thấp nhất phải được cấp tài nguyên nhiều nhất, tối đa hóa tốc độ, sau đó UE có tốc đô truy cập dữ liệu thấp thứ hai được tối đa hóa tốc độ…Cách phân chia này dẫn đến kết quả là định dạng
(shaping) lưu lượng của mỗi UE. Nghĩa là dù UE có lưu lượng cực lớn cần truyền nhưng không thể truyền qua ngưỡng cho phép, do càng chiếm băng thông cao, UE đó càng có ưu tiên thấp xuống, điều này làm cho hệ thống không báo giờ bị quá tải, nghẽn mạng. Và khi đó, thông lượng của UE cũng đồng đều và được đáp ứng công bằng bởi hệ thống. Thuật toán lập lịch Max-Min ứng dụng trong ghép kênh cũng như cấp phát tài nguyên cho mạng best-effort. Round Robin là trường hợp đặc biệt của Max-min khi kích thước gói dữ liệu là bằng nhau.
1.9.3.5. Kỹ thuật lập lịch Proportional Fair (PF) [18]
Proportional Fair là thuật toán kết hợp Max Throughput và Round Robin hay Max Throughput và Max-min. với mục tiêu là tối đa hóa tốc độ, nên các UE đều có phần trong việc cấp phát tài nguyên. Các UE được xếp theo độ ưu tiên bởi hàm ưu tiên. Thông lượng trung bình của mỗi UE được cập nhật sau khi mỗi khối tài nguyên RB được cấp phát. Ban đầu, bộ lập lịch sẽ cấp phát tài nguyên RB đầu tiên cho UE ngẫu nhiên bất kỳ. Sau đó bộ lập lịch sẽ cấp phát RB cho UE có độ ưu tiên cao nhất. Nó sẽ lặp lại bước trên đến khi tài nguyên dùng hết hay tất cả tài nguyên cần cho các UE đã thỏa mãn. Cuối cùng có K loại cấp phát RB, bởi vì K loại cấp phát RB đầu tiên.
( )m( )
R i R
k m n k k
max ,
=arg
Trong đó:
( )m
n
Rk, là tốc độ dữ liệu của UE k đối với khối tài nguyên n ở thời điểm m.
Đại diện cho tốc độ dữ liệu UE k có thể có được nếu được cấp tài nguyên RB n ở thời điển m. Có thể thấy giá trị này phụ thuộc nhiều vào CQI, nếu CQI càng lớn thì
( )m
n
Rk, sẽ càng lớn, lúc đó UE k càng có khả năng được chọn.
( )m
Rk là tốc độ dữ liệu trung bình của UE k trong quá khứ. Đại lượng này cho thấy thông lượng trung bình mà UE k đã được sử dụng. Nếu đại lượng này càng lớn, UE k càng ít khả năng được chọn. Nếu đại lượng này càng nhỏ, UE k càng có khả năng được chọn.
Như vậy có thể tổng kết là khả năng UE k được chọn tỉ lệ thuận với chất lượng đường truyền và tỉ lệ nghịch với thông lượng quá khứ đã sử dụng. Nghĩa là PF là thuật toán quan tâm đến hai yếu tố: độ công bằng và chất lượng đường truyền.
Hình 2.4 Thuật toán lập lịch PF 1.9.3.6. Weighted Fair Queuing (WFQ)
Weighted Fair Queuing là một bộ lập lịch phức tạp, được sử dụng cho các gói có kích thước thay đổi. WFQ hoạt động dựa trên độ ưu tiên của lưu lượng, tự động phân loại giữa các dòng lưu lượng độc lập mà không cần một danh sách cho phép. Trong WFQ, các gói được phân loại theo luồng lưu lượng. Mỗi kết nối có một hàng đợi FIFO riêng, và giá trị trọng số được gán động cho cho mỗi hàng đợi. Các tài nguyên được chia sẻ theo tỉ lệ của trọng số như thuật toán WRR. Với sự thay đổi động của trọng số, WFQ có thể đảm bảo tốc độ dữ liệu, độ trễ. Nhược điểm chính của WFQ là sự phức tạp của nó.
k hông
c ó
Hết thời gian. TTI tiếp theo được lập lịch.
Tính toán độ ưu tiên theo hàm ưu tiên
Tất cả tài nguyên đã được cấp phát và UE đã thỏa mãn.
Cấp phát tài nguyên cho các UE theo ưu tiên và cậpnhật thôngsố cho tất cả UE
Bắt đầu
Hình 2.5 Weighted Fair Queuing (WFQ)
Giả sử dung lượng hệ thống cho phép là R, có N dòng lưu lượng cần được phuc vụ đồng thời, khi đó tốc độ trung bình của lưu lượng sẽ là R/N. Khi mỗi lưu lượng có hàng đợi riêng của nó, một lưu lượng có gói lớn hơn hay số gói trong một giây lớn hơn sẽ chỉ tự trừng phạt nó.
WFQ cho phép các phiên khác nhau có chia sẻ dịch vụ khác nhau. Nếu N lưu lượng dữ liệu đang hoạt động, với các trọng số w1, w2, w3…, lưu lượng i sẽ có tốc độ trung bình Rwi/(w1+w2+w3+…).
Để đạt được sự đảm bảo QoS, thủ tục tính toán trọng số đóng vai trò quan trọng. Các trọng số có thể dựa trên một vài thông số như độ dài hàng đợi, độ trễ gói.
Ngoài ra, độ lớn băng thông yêu cầu cũng được sử dụng để xác định trọng số của hàng đợi (kích thước càng lớn, càng nhiều băng thông). Tỉ lệ giữa tốc độ trung bình của một kết nối với tốc độ trung bình tổng cộng hoặc tốc độ phục vụ tối thiểu có thể được sử dụng để tính toán trọng số của kết nối đó.
1.9.3.7. Largest Delay First [14]
Gói tin đầu tiên nhận bởi eNodeB sẽ được gửi ngay ở vị trí đầu tiên.
( ) t
W
i k
maxk
= arg
( )t
Wk là thời gian mà gói tin của UE k dùng để đợi tại NodeB để được lập lịch. Giống như trong thuật toán Round Robin, việc bỏ qua tình trạng kênh truyền dẫn đến thông lượng thấp đối với thuật toán này.
1.9.3.8. Modified Largest Weighted Delay First [14]
MLWDF là thuật toán cố gắng cân bằng trọng số độ trễ của gói tin nhưng vẫn cố gắng sử dụng tài nguyên kênh truyền một cách hiệu quả. Trong các thông số toán học, độ trễ nên thỏa mãn Pr{Rk > rk } ≤ ρk và cần thông lượng Rk >rk . Định nghĩa Wk( )t giống như trong Largest Delay First là Wk( )t là thời gian mà gói tin của UE k dùng để đợi tại NodeB để được lập lịch. Với:
Tk là ngưỡng của độ trễ đối với UE k. ρk là giá trị lớn nhất có thể của Tk. Rk là thông lượng trung bình của UE k. rk là thông lượng nhỏ nhất xác định trước đối với UE k.
Trong mỗi slot t (mỗi TTI), UE i được chọn dựa vào hàm ưu tiên sau:
( ) ( )t W t
R
i k k k
k γ
max
=arg Với: Hệ số trễ Rakk( )t
k =
γ là hằng số và ak là tính chất QOS mong muốn đối với UE k.
1.9.3.9. Exponential Rule [14]
Exponential Rule là phiên bản chỉnh sửa của Proportional Fair:
( ) ( ) ( )
+
= −
aW aW t W t a
R t
i k k k k
k exp 1
max
arg γ
Trong đó:
( ) ( )t
R a
t W N a
aW
k k k
k k k
=
= ∑
γ
1
( )t
γk là tốc độ dữ liệu hỗ trợ của UE k ở slot t.
( )t
Rk là tốc độ dữ liệu trung bình của UE k trong khoảng TPF . ak là thông số ưu tiên, phản ánh QOS mong muốn của UE k.
( )t
Wk là thời gian lớn nhất gói tin của UE k sử dụng ở NodeB.