Tải bản đầy đủ (.pdf) (9 trang)

5 DS07 10 14 bai da sua A Control-Theoretic Approach_v8_

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (527.38 KB, 9 trang )

Tạp chí BCVT & CNTT kỳ 3 10/2007

- 43 -

Abstract: In a distributed environment where multiple
applications complete and share a limited amount of
system resources, applications tend to suffer from
variations in resource availability, and are desired to adapt
their behavior to the resource variations of the system. In
[1], we proposed a generic application-aware adaptive
middleware architecture as a viable approach to control
the adaptive behavior of applications so that the best
possible application-level QoS is achieved under any
resource conditions during the lifetime of the applications.
In this paper, we present a control-theoretic algorithm for
QoS adaptation in the application-aware middleware
architecture to enhance the effectiveness of QoS adaptation
decisions by dynamic control and reconfiguration of
internal parameters and functionalities of a distributed
multimedia application.
I. GIỚI THIỆU
Trong môi trường phân bố có thể có nhiều ứng
dụng đa phương tiện như: video theo yêu cầu (VoD),
hội nghị truyền hình, giám sát bằng hình ảnh … cùng
chia sẻ một nguồn tài nguyên hệ thống hữu hạn. Các
ứng dụng này cùng phải chịu sự biến đổi về độ sẵn
sàng của tài nguyên và mong muốn bộ xử lý của
chúng tương thích với sự thay đổi tài nguyên trong hệ
thố
ng để có thể duy trì chất lượng dịch vụ ở một mức
chấp nhận được. Đối với các ứng dụng này, việc đảm


bảo chất lượng dịch vụ (QoS) tới người sử dụng có
thể thực hiện bằng cách duy trì một số tham số chất
lượng như: tốc độ khung video mong muốn, tổn thất
thông tin tối thiểu hay độ chính xác giám sát ... Điều
này
đang đặc biệt thách thức trong môi trường mạng
có chia sẻ tài nguyên mà không có sự hỗ trợ QoS
trong hệ thống mạng và hệ điều hành ở lớp dưới. Khó
khăn là ở chỗ sự biến đổi về độ sẵn sàng của tài
nguyên là không dự báo trước được khi nhiều ứng
dụng cùng chia sẻ một nguồn tài nguyên như: bộ xử
lý, băng thông mạng và bộ nhớ. Bên cạnh đó, để
giảm
chi phí cơ sở hạ tầng mạng cho các ứng dụng đa
phương tiện phân bố bắt buộc các ứng dụng này phải
chia sẻ cơ sở hạ tầng. Để giải quyết những khó khăn
trên các hệ thống middleware phân bố được sử dụng
để hỗ trợ các ứng dụng chịu được sự thay đổi độ sẵn
sàng của tài nguyên lớp dưới. Các hệ
thống
middleware được đặt ở giữa lớp hệ điều hành và lớp
ứng dụng. Một vai trò chính của hệ thống middleware
là hỗ trợ việc phân phối QoS theo yêu cầu của ứng
dụng. Trong [1], chúng tôi đã đề xuất một kiến trúc
middleware tổng quát cho phép thực hiện tương thích
QoS theo các ứng dụng trong các hệ thống đa phương
tiện phân bố. Trong bài viết này, chúng tôi trình bày
thuật toán tương thích động dựa trên lý thuyế
t điều
khiển để tương thích chất lượng dịch vụ sử dụng trong

kiến trúc middleware nói trên và kết quả mô phỏng
đối với dịch vụ videostream.
Đã có nhiều nghiên cứu trong lĩnh vực tương thích
QoS như: [2] đưa ra mô hình chung cho tương thích
QoS, [3, 9] trình bày phương pháp tương thích
buffering, [4] trình bày thuật toán tương thích
smoothing, [5] các thuật toán tương thích ưu tiên …
Các thuật toán này giải quyết các vấn đề về cơ chế hệ
thống, giao thứ
c truyền dẫn, chính sách tương thích ...
Chúng là các giải pháp từng phần liên quan đến vấn
đề tương thích QoS như thế nào. Tuy nhiên các giải
pháp này không đưa ra một mô hình hay khung mẫu
cho quá trình điều khiển tương thích QoS của ứng
dụng để có thể diễn giải các đặc tính tương thích QoS
Phương pháp điều khiển tương thích chất lượng dịch vụ
cho kiến trúc middleware nhận biết ứng dụng
A Control Theoretic Approach to QoS Adaptation for Application Aware
Middleware Architecture
Vũ Hoàng Hiếu, Hoàng Đăng Hải
Tạp chí BCVT & CNTT kỳ 3 10/2007

- 44 -
như độ ổn định, mức độ phản ứng nhanh với biến đổi
môi trường và độ cân bằng trong việc cung cấp QoS
giữa các ứng dụng với nhau. Ngoài ra các giải pháp
này cũng không cho phép phát triển các thuật toán
tương thích mới trong điều kiện mạng có kích thước
lớn hơn và độ tích hợp cao hơn.
Bài viết này tập trung xem xét mô hình và thuật

toán điều khiển tương thích QoS cho kiến trúc
middleware mà chúng tôi đã
đề xuất trong [1] xuất
phát từ những nghiên cứu trước đây như mô hình
luồng tác vụ [6], mô hình điều khiển cổ điển [7], mô
hình chung cho tương thích QoS [2] và thực hiện việc
chuyển đổi mô hình điều khiển cổ điển thành mô hình
điều khiển tác vụ, đồng thời xem xét thuật toán tương
thích trong mô hình điều khiển tác vụ. Thuật toán điều
khiển tương thích QoS dựa trên mô hình lý thuyế
t
điều khiển cho phép khắc phục các nhược điểm của
các phương pháp tương thích QoS trước đây.
II. KIẾN TRÚC MIDDLEWARE TƯƠNG
THÍCH NHẬN BIẾT ỨNG DỤNG
Kiến trúc middleware tổng quát cho phép thực hiện
tương thích QoS theo các ứng dụng trong các hệ
thống đa phương tiện phân bố được đề xuất trong [1]
gồm hai lớp, được mô tả trong hình 1.
Trong lớp thứ nhất, còn gọi là lớp ứng d
ụng chung,
bộ điều khiển tương thích ứng dụng chung và bộ đánh
giá tài nguyên hỗ trợ tương thích tài nguyên lớp thấp
bằng cách phản ứng với những thay đổi về độ sẵn
sàng của tài nguyên. Trong lớp thứ hai, bộ thao tác
ứng dụng cụ thể, các profiler của ứng dụng và bộ đàm
phán chịu trách nhiệm thực hiện tương thích chức
năng ở mức cao đối vớ
i mỗi ứng dụng cụ thể, bao
gồm ra quyết định khi nào và chức năng ứng dụng nào

được phép tham gia vào cung cấp dịch vụ dựa trên các
yêu cầu của ứng dụng cụ thể đang chạy được lưu giữ
trong profiler của ứng dụng đó. Tương tác giữa các
thành phần khác nhau của middleware và ứng dụng
được thực hiện thông qua một platform cho
phép thực hiện các dịch vụ truyền thông, ví dụ

như CORBA.
Với kiến trúc hai lớp như trên bao gồm bộ
điều khiển tương thích chung và bộ thao tác
ứng dụng cụ thể, các hoạt động điều khiển do
các thành phần này tạo ra sẽ thực hiện điều
khiển việc tương thích chất lượng dịch vụ đối
với tất cả các ứng dụng chia sẻ cùng một
nguồn tài nguyên ở hệ thống
đầu cuối, đồng
thời điều khiển tương thích chất lượng dịch vụ
đối với từng dịch vụ cụ thể dựa trên những
tham số cấu hình được thiết lập trong profiler.
Các thành phần của kiến trúc middleware như
trên phù hợp với các thành phần trong mô
hình chung cho tương thích QoS đã được đề xuất
trong [2].
Với kiến trúc middleware điều khiển như trên, cơ
chế nào đ
iều khiển bộ tương thích và bộ thao tác thực
hiện tương thích cấu hình của ứng dụng đáp ứng được
yêu cầu đảm bảo chất lượng dịch vụ khi có những
thay đổi độ sẵn sàng của tài nguyên?
III. ĐIỀU KHIỂN TƯƠNG THÍCH QOS TRONG

KIẾN TRÚC MIDDLEWRE
Mục đích chính của kiến trúc middleware tương
thích trên là quan sát các điều kiện hiện tại của môi
trường phân bố và báo hi
ệu các hành động điều khiển
tới các ứng dụng phân bố phức tạp để các hành động
hiệu chỉnh tham số hoặc tái cấu hình dịch vụ được
thực hiện trong ứng dụng đó. Để thực hiện các hành
động điều khiển trên, kiến trúc này có hai phần quan

Hình 1. Kiến trúc middleware tương thích nhận biết ứng dụng.
Tạp chí BCVT & CNTT kỳ 3 10/2007

- 45 -
trọng là bộ điều khiển tương thích và bộ thao tác. Ở
mỗi hệ thống đầu cuối cụ thể, mỗi bộ điều khiển
tương thích tương ứng với một loại tài nguyên cụ thể
như bộ xử lý CPU hoặc băng thông mạng.
Để thiết kế bộ điều khiển tương thích, trong phần
này xem xét áp dụng mô hình luồng tác vụ được
đề
xuất trong [6] cho một hệ thống phân bố, xem xét
chuyển đổi mô hình điều khiển cổ điển trong [7] và áp
dụng vào mô hình luồng tác vụ của một hệ thống phân
bố để đưa ra thuật toán điều khiển tương thích và áp
dụng chúng trong middleware tương thích theo ứng
dụng.
1. Mô hình luồng tác vụ
Để thiết kế các thuật toán điều khiển sử dụng lý
thuyết đ

iều khiển, các thành phần của mô hình lý
thuyết điều khiển phải được chuyển đổi thành các
thành phần của kiến trúc middleware điều khiển tương
thích. Để thực hiện điều này, mỗi ứng dụng được xem
như là một tập hợp của các thành phần chức năng và
mỗi thành phần chức năng này được coi như một tác
vụ mà chúng thực hiện. Các tác vụ là m
ột khối chức
năng sử dụng tài nguyên của hệ thống và thực hiện
một nhiệm vụ cụ thể để tạo ra một kết quả cho một tác
vụ tiếp theo hoặc cho đầu cuối người sử dụng.
Mô hình thành phần chức năng như trên đã được đề
xuất trong [6]. Trong hình 2a mô tả các thành phần
chức năng của ứng dụng videostream. Trong hệ thống
phân b
ố, ứng dụng videostream trên được coi là một
tập hợp của các thành phần chức năng như mã hóa
khung, truyền dẫn tín hiệu hay giải mã … các thành
phần chức năng này yêu cầu tài nguyên mạng và hệ
thống để thực hiện chức năng xử lý của chúng và tạo
ra một giá trị điều khiển chức năng tiếp theo.

Hình 2. Mô hình luồng tác vụ
Với định nghĩa ứng dụng theo các thành phần chức
năng như trên, trong hình 2b biểu diễn mô hình luồng
tác vụ cho hệ thống videostream, mỗi tác vụ là một
thành phần chức năng của ứng dụng và mỗi ứng dụng
được chuyển đổi thành một biểu đồ luồng tác vụ có
hướng không khép kín của nhiều tác vụ. Liên kết có
hướng từ tác vụ T

i
sang tác vụ T
j
chỉ ra rằng tác vụ T
j

sử dụng kết quả của tác vụ T
i
. Để thực hiện một tác vụ
T
i
thì hệ thống phải cung cấp một lượng tài nguyên
nào đó.
2. Chuyển đổi mô hình điều khiển cổ điển thành
mô hình điều khiển tác vụ
Mô hình điều khiển cổ điển [7] được mô tả như
hình 3a. Trong đó một “Thiết bị” được điều khiển bởi
một “Bộ điều khiển”, trạng thái bên trong của thiết bị
này được xác định bởi bộ điều khiển theo một thuật
toán điều khiển xác định. Thuật toán điều khiển tạo ra
tín hiệu điều khiển bằng cách so sánh trạng thái bên
trong của thiết bị mà nó quan sát được với giá trị “Đầu
vào tham chiếu”. Mục đích của hệ thống điều khiển cổ
điển là hướng cho “Thiết bị” không bị ảnh h
ưởng bởi
“Nhiễu”.
Dựa trên mô hình luồng tác vụ, mô hình điều khiển
tác vụ tập trung vào một tác vụ cụ thể (T
i
) coi là một

tác vụ ứng dụng. Khi tác vụ ứng dụng này được thực
hiện, nó yêu cầu hệ thống phải cung cấp một lượng tài
nguyên nào đó. Với một nguồn tài nguyên hữu hạn, hệ
thống có thể đáp ứng hoặc không đáp ứng được các
yêu cầu tài nguyên này. Vì vậy số yêu cầu tài nguyên
của một tác vụ cần phải được điều khiển tương thích
vớ
i độ sẵn sàng của tài nguyên hệ thống. Áp dụng mô
Tạp chí BCVT & CNTT kỳ 3 10/2007

- 46 -
hình điều khiển cổ điển cho một tác vụ ứng dụng cụ
thể để nhận được mô hình điều khiển tác vụ bao gồm
các thành phần như sau:
(1) Tác vụ ứng dụng: là tác vụ thực hiện một chức
năng cụ thể của ứng dụng và được điểu khiển tương
thích.
(2) Tác vụ tương thích: nó có chức nă
ng giống bộ
điều khiển trong mô hình điều khiển cổ điển và thực
hiện thuật toán điều khiển. Đầu ra của tác vụ điều
khiển là các báo hiệu điều khiển ứng dụng mà có thể
điều khiển từng ứng dụng cụ thể và thực hiện tương
thích chất lượng.
(3) Tác vụ quan sát: tác vụ này thực hiện quan sát
và đánh giá trạng thái của tác vụ ứng dụng và báo
hiệu cho tác vụ tương thích.

Hình 3. Mô hình điều khiển tác vụ.
Trạng thái tác vụ của một tác vụ ứng dụng được xác

định bởi các tham số đặc trưng cho tính động bên
trong của tác vụ ứng dụng đó. Trạng thái tác vụ quan
trọng nhất trong bất kỳ tác vụ ứng dụng nào là tham
số liên quan đến yêu cầu tài nguyên của nó. Ví dụ
trong ứng dụng videostream “tốc độ truyền dẫn
khung” là tham số đặc trưng cho trạng thái tác vụ của
tác vụ truyền d
ẫn liên quan đến tài nguyên băng thông
của mạng.
Hình 3b mô tả mô hình điều khiển tác vụ theo lý
thuyết điều khiển.
Biến đổi động về yêu cầu tài nguyên trong mô hình
điều khiển tác vụ được mô tả bằng phương trình có
dạng sau:

[]
ttwtutxftx
dt
tdx
),(),(),()(
)(
=≅

(1)

[ ]
ttvtxhtz ),(),()( =
(2)
Với mô hình trên, các yêu cầu tài nguyên khi thực
hiện một ứng dụng được coi là cân bằng khi:


[]
ttwtutxftx ),(),(),(0)( ==

(3)
Ở đây x ký hiệu cho vector trạng thái của tác vụ, u
là vector các tham số đầu vào có thể điều khiển được,
z là vector các tham số đầu ra quan sát được của tác
vụ, w là các biến không điều khiển được của tác vụ và
v là vector lỗi quan sát.
Mô hình tổng quát trên (có thể phi tuyến và biến đổi
theo thời gian) là quá phức tạp để xem xét một thuật
toán điều khiển phù hợp. Vì vậy để đơn giản, hàm
biến đổ
i động về yêu cầu tài nguyên của tác vụ ứng
dụng được đơn giản hóa bằng các hàm tuyến tính rời
rạc và yêu cầu tài nguyên của ứng dụng có thể được
mô tả như sau:

)1()1()1()( −+−Γ+−Φ= kwkukxkx
(4)

)()( kHxky =
(5)

)()()( kvkykz +=
(6)
Với k = 1, … , k
max
là các khoảng thời gian; Φ, Г, H

là các hệ số rời rạc của hệ thống; y là vector các tham
số đầu ra quan sát không có lỗi của tác vụ.
Với mô hình yêu cầu tài nguyên của ứng dụng như
trên, mô hình điều khiển tác vụ rời rạc được mô tả như
hình 4. Ký hiệu: r
i
(k) được sử dụng trong hình 4 để
mô tả số lượng tài nguyên gốc do tác vụ T
i
yêu cầu
trong khoảng thời gian [k, k+1] để thực hiện chức
năng của nó và u
i
(k) mô tả số lượng tài nguyên cho
phép trong khoảng [k, k+1] bởi tác vụ tương thích T
i
.
Như đã xem xét ở trên, một ứng dụng phân bố được
coi là một luồng tác vụ gồm nhiều tác vụ ứng dụng.
Các tác vụ ứng dụng này cùng chia sẽ một nguồn tài
nguyên và mỗi tác vụ ứng dụng yêu cầu tài nguyên hệ
thống để thực hiện tác vụ của chúng. Các yêu cầu tài
nguyên này hoặc được cấp phép hoặc phải xếp vào
hàng đợi. Giả thiết hệ thống có thể
cấp phép cho c yêu
Tạp chí BCVT & CNTT kỳ 3 10/2007

- 47 -
cầu tài nguyên trong một khoảng thời gian nhất định
cho nhiều tác vụ ứng dụng đang chạy. Phương trình

mô tả biến đổi tài nguyên được cấp phép có dạng như
(7).

Hình 4. Mô hình rời rạc cho tác vụ ứng dụng.

()
() ( )
() (( )
()
()
Mk
i
i
xk xk
xk x k
kk
uk c

=
−−
=−−
−−
=−−

1
0
1
1
1
1

(7)
Với x(k) là tổng số các yêu cầu tài nguyên có trong
hàng đợi được thực hiện bởi tất cả các tác vụ ứng
dụng ở thời điểm k, u(k) là tốc độ yêu cầu được điều
khiển bởi bộ điều khiển (công việc điều khiển tương
thích) và M(k) là tổng số các tác vụ của ứng dụng hiện
hành, c là tốc độ cấp phép yêu cầu.
3. Thu
ật toán điều khiển tương thích trong mô
hình điều khiển tác vụ
Mô hình rời rạc của tác vụ ứng dụng trong mô hình
điều khiển tác vụ được mô tả trong phương trình (7).
Tương tự với mô hình lý thuyết điều khiển cổ điển,
mục đích của điều khiển các tác vụ là duy trì tổng các
yêu cầu tài nguyên trong hàng đợi x(k) của ứng dụng
nằm xung quanh giá trị tham chiế
u x
c
(k). Để thực hiện
được điều này, tác vụ tương thích thực hiện một thuật
toán điều khiển nào đó dựa trên những yêu cầu tài
nguyên trong hàng đợi x(k) và giá trị tham chiếu x
c
(k)
để hiệu chỉnh yêu cầu tài nguyên u
i
(k). Theo phương
pháp tính toán trong [7] yêu cầu hiệu chỉnh tài nguyên
u
i

(k) của tác vụ tương thích T
i
thỏa mãn x(k) được mô
tả bởi phương trình sau:
[ ]
+−+−= )()()1()( kxkxkuku
c
ii
α


[ ] [ ]
{ }
)1()1()()( −−−−−+ kxkxkxkx
cc
β
(8)
Với α và β là các hệ số cấu hình của tác vụ tương
thích.
Với mô hình tác vụ ứng dụng rời rạc được mô tả
bằng phương trình (7), thuật toán điều khiển trong tác
vụ tương thích mô tả bởi phương trình (8) sẽ thỏa mãn
yêu cầu trên. Tương tự mô hình điều khiển cổ điển,
mô hình điều khiển tác vụ có một số đặc tính sau:

Trạng thái cân bằng: là trạng thái số yêu cầu tài
nguyên trong hàng đợi x(k) trong hệ thống được
xác định bởi phương trình (4) hội tụ về một trạng
thái ổn định, tương ứng với giá trị tham chiếu
x

c
(k).
− Độ ổn định: với các giá trị tương ứng của α và β để
hệ thống ổn định về trạng thái cân bằng.
Bài viết này không tập trung vào việc tính toán các
hệ số α và β để hệ thống ổn định. Tuy nhiên đã chứng
minh được rằng với điều kiện α > 0, β > 0 và α + β <
4γ (γ là trọng số độ
ng của hệ thống) thì hệ thống sẽ
hội tụ về trạng thái cân bằng động.
Đây là một thuật toán điều khiển rất hiệu quả minh
họa cho khả năng của mô hình điều khiển tác vụ cho
phép diễn giải tính động của hệ thống tương thích và
tham chiếu đến mô hình điều khiển cổ điển. Tính
đúng đắn và hợp lý của mô hình
điều khiển tác vụ
được chứng minh bằng thực nghiệm trong phần sau.
4. Ứng dụng mô hình điều khiển tác vụ trong
kiến trúc middleware
Sử dụng mô hình điều khiển tác vụ để tương thích
QoS trong kiến trúc middleware của chúng tôi cho
thấy middleware có khả năng tương thích QoS khi có
những thay đổi nhỏ về độ sẵn sàng của tài nguyên,
cũng như khi có những thay đổi lớn về độ sẵn sàng
c
ủa tài nguyên. Tác vụ tương thích của mô hình điều
khiển tác vụ trong kiến trúc middleware được thiết kế
theo phân cấp.
Đối với những thay đổi nhỏ về độ sẵn sàng của tài
nguyên, điều khiển tương thích được thực hiện bởi

một bộ điều khiển tuyến tính (ví dụ bộ điều khiển
PID) để điều chỉnh tốc độ yêu cầu d
ẫn đến những thay
đổi nhỏ của QoS. Đối với những thay đổi lớn về độ

×