5. Bố ục cc ủa luận ỏn
3.2.1.1 Lý thuyết lưu lượng và Internet
Lý thuyết lưu lượng v n ố được xem là b mụn toỏn h c dựng trong vi c thi t ộ ọ ệ ế
kế, đ ềi u khiển và đỏnh giỏ chất lượng mạng đ ệi n thoại cụng cộng (PSTN), tuy nhiờn sau này đó được mở rộng để bao g m c cỏc m ng s li u. ồ ả ạ ố ệ Đặc bi t vi c ỏp d ng lý ệ ệ ụ
thuyế ưt l u lượng m rở ộng này vào m ng Internet hỡnh thành nờn m t l nh v c m i ạ ộ ĩ ự ớ
gọi là kỹ thu t lậ ưu lượng m ng (ạ traffic engineering) Internet. Kỹ thuật lưu lượng mạng cú thể được thực hiện dưới ba hỡnh thức khỏc nhau, bao gồm:
• Mụ hỡnh phõn tớch • Phương phỏp mụ phỏng
• Hay bằng o lđ ường thực nghiệm
Trong 3 hỡnh thức này thỡ phương phỏp mụ hỡnh phõn tớch cú nhiều lợi thế do hoạt động của nú hoàn toàn cú thể ể ki m soỏt được và cung c p cỏi nhỡn bờn trong v ấ ề
mối quan hệ giữa cỏc thụng số đầu vào của mụ hỡnh và kết quả đầu ra. Tuy nhiờn nhược đ ểi m là mụ hỡnh sẽ rất phức tạp khi ỏp dụng vào cỏc mạng Internet thực tế do số lượng tham số cần thiết rất lớn.
Mụ hỡnh phõn tớch đ ểi n hỡnh thường là sử dụng cỏc thụng sốđầu vào từ lưu lượng mạng Internet hiện tại như: nhu cầu lưu lượng hay cỏc mụ tả hệ ố th ng, để dự đoỏn tr ng thỏi ho c cỏc thụng s c a mạ ặ ố ủ ạng Internet trong tương lai. õy là bài toỏn Đ
rất phức tạp do b n ch t bi n thiờn liờn t c c a Internet, và th c t ([94]) cú hai ả ấ ế ụ ủ ự ế
cỏch tiếp cận giải quyết tớnh bất định này. Cỏch th nh t là tỡm cỏch xỏc ứ ấ định cỏc nhõn tố bất bi nế của h th ng, là cỏc thụng s ho c bi u hi n ho t ệ ố ố ặ ể ệ ạ động c a m ng ủ ạ
khụng thay đổi theo thời gian và trờn cỏc mụi trường mạng khỏc nhau. Cỏc nhõn t ố
bất biến thường được xỏc định dựa trờn dữ liệu đo thực nghiệm. Cỏch tiếp cận thứ
hai trong việc khảo sỏt và phõn tớch cỏc mạng Internet qui mụ lớn và luụn biến đổi là tỡm cỏch xỏc định một khụng gian tham số ữ h u ớch, mà thực chất là dựa trờn cỏc giả thiết và kết quả đ o lường cho trước để tỡm tập cỏc thụng số mụ tả đầ đủy trạng thỏi và cỏc biểu hiện biến thiờn của lưu lượng mạng. Luận ỏn này sử dụng cỏch ti p ế
cận thứ hai trong cỏc mụ hỡnh phõn tớch luồng lưu lượng Internet.
Cỏc mụ hỡnh phõn tớch lưu lượng cú thể được thực hiệ ởn mức gúi, m c ứ
luồng hoặc là cỏc mụ hỡnh nguồn (kết hợp nhiều mức giao thức khỏc nhau). Mụ hỡnh ở mức gúi thường mụ t quỏ trỡnh ả đến ho c phõn b kớch thặ ố ước c a cỏc gúi ủ
đú mụ hỡnh mở ức lu ng khụng xem xột t ng gúi riờng l mà mụ t l u lồ ừ ẽ ả ư ượng dưới dạng cỏc đặc tớnh luồng, cỏc đặc tớnh đ ểi n hỡnh bao gồm: quỏ trỡnh đến của cỏc luồng, chiều dài và kớch thước của luồng. Phức tạp hơn hai mụ hỡnh trờn là mụ hỡnh nguồn thường được sử dụng để mụ t cỏc ả đối tượng ng d ng. Vớ d , m t mụ hỡnh ứ ụ ụ ộ
nguồn đối với giao thức HTTP s mụ t cỏc khớa c nh c a nú nh cỏc phiờn làm ẽ ả ạ ủ ư
việc web, việc download và vận chuy n cỏc trang web hay cỏc thành ph n c a trang ể ầ ủ
web và cỏc mối quan hệ thống kờ giữa chỳng. Luận ỏn này chỉ xột cỏc mụ hỡnh mức luồng lưu lượng.
Việc xõy dựng cỏc mụ hỡnh phõn tớch cũng cú nhiều cỏch; cỏch thứ nhất là dựa vào cơ chế hoạt động của cỏc giao thức mạng và cỏch th hai là d a vào d li u ứ ự ữ ệ đo th c nghi m t mự ệ ừ ạng Internet; m i cỏch ỗ đều cú u, như ược i m riờng c a nú tuy đ ể ủ
nhiờn điều quan tr ng là mụ hỡnh phõn tớch khụng ch ph n ỏnh bi u hi n ho t ọ ỉ ả ể ệ ạ động và trạng thỏi của (lưu lượng) mạng thực tế mà cũn phải cú tớnh ứng dụng cao (khụng quỏ phức tạp).
Thực tế cú rất nhi u mụ hỡnh l u lề ư ượng ó đ được xõy d ng cho m ng Internet ự ạ
([95], [96], [97]), phần lớn chỳng xuất phỏt từ mạng tho i và thuạ ộc nhúm cỏc tiến trỡnh Markov và/hoặc tiến trỡnh tỏi sinh. Tuy nhiờn lưu lượng mạng Internet với đặc tớnh cụm và tương quan thời gian dài thỡ cỏc mụ hỡnh dạng này khụng đủ để mụ tả
mà phải sử ụ d ng cỏc mụ hỡnh phõn bố ệ v t dài (heavied-tail) hoặc mụ hỡnh tự đồng dạng (self-similarity). Phần tiếp theo trỡnh bày một số khỏi niệm quan trọng của cỏc mụ hỡnh này, tham khảo từ cỏc nghiờn cứu [62-67]. Chi tiết về cỏc mụ hỡnh xỏc suất sử dụng trong luận ỏn này xem trong phần phụ lục A.
Mụ hỡnh tựđồng dạng
Lưu lượng Internet cú đặc tớnh cụm rất lớn, nghĩa là đồ thị chuỗi thời gian quỏ trỡnh đến của cỏc gúi cú dạng rất nhấp nhụ, khụng bằng ph ng và chẳ ỉ cú thể được thể hi n t t b ng cỏc mụ hỡnh t ệ ố ằ ự động d ng là mụ hỡnh mà cỏc thu c tớnh ạ ộ
thống kờ của nú bất biến trờn tất cả cỏc mức tổng hợp của tiến trỡnh tương ứng. Mức
độ tự ng dđồ ạng thường được thể ệ hi n b ng tham s H (Hurst), trong ú H càng l n ằ ố đ ớ
càng thể hiện tớnh tựđồng dạng cao và nếu H = (0.5 – 1) thỡ tiến trỡnh tương ứng
được xem là cú đặc tớnh phụ thuộc thời gian dài (LRD). Về mặt toỏn h c, mụ hỡnh ọ
(tiến trỡnh) tự đồng d ng ạ được định nghĩa như sau: giả thiết X là tiến trỡnh ngẫu nhiờn theo thời gian với r(k) là hàm tự tương quan, một ti n trỡnh mế ới X(m) được
định nghĩa nh sau: ư
( ) ( )m m , 1
X =⎛⎜Xk k≥ ⎞⎟
trong đú: ( ) 1( 1 ... ) ( 1) m Xk =m− Xk− m+ + +Xkm , với mọi k>=1 (3-2-2) gọi là tiến trỡnh t ng h p c a X mổ ợ ủ ở ức m. T ú ti n trỡnh X ừ đ ế được gọi là tự đồng dạng với mọi m>=1, nếu: ( ) 1 m D H X≈ m− X , với 0<H<1 (3-2-3) Xem thờm tại [98] và [99]. Hàm phõn bố luỹ tớch (CDF) Với một biến ngẫu nhiờn X bất kỳ, hàm phõn bố xỏc suất luỹ tớch (CDF) được định nghĩa là: F(X) = P(X<=x), với mọi x.
Trong trường hợp X là biến ngẫu nhiờn rời rạc (như trong luận ỏn này), thỡ: {y|y x} {y|y x}
( ) ( ) ( )
F X f y P X y
≤ ≤
= ∑ = ∑ = (3-2-4)
Đối vớ ữ ệ đi d li u o lường th c nghi m, cú th xõy d ng hàm CDF c a nú nh sau: ự ệ ể ự ủ ư
Giả s tử ập dữ liệu là xi , với i = 1, 2 , 3, .... n : Sắp xếp xi theo thứ ự t : x(1) < x(2) < ... < x(n-1) < x(n) , khi đú ta cú: ( ) ( ) ( ) ( ) e i i i F x P X x n = ≤ = (3-2-5) T ừ đú cú thể xỏc định hàm phõn bố luỹ tớch bự (CCDF) của X như sau: F( ) 1X F X( ) ⎯ = − (3-2-6) Phõn bố ệ v t dài (Heavy-tailed)
Một phõn bốđược gọi là vệt dài (hay cú phầ đn uụi kộo dài), nếu:
[ ] x
P X x ax−α> > , với a >0, α >0 và khi x --> ∞ (3-2-7)
Một tập con của cỏc hàm phõn bố vệt dài được g i là cỏc phõn b cú phọ ố ầ đn uụi suy giảm theo luật luỹ thừa, được định nghĩa như sau:
- [X>x] > cx
P α, với c >0, α >0 và khi x --> ∞ (3-2-8) Một thuộc tớnh quan tr ng c a cỏc phõn bọ ủ ố vệt dài là: ∀k , giỏ tr ≥ α ị tức th i ờ
(moment) thứ k của phõn bố là vụ hạn (=∞). Đ ềi u này cú nghĩa nếu α <=2, phõn bố
vệt dài sẽ cú lượng biến thiờn vụ hạn, hoặc nếu α <=1 thỡ phõn bố vệt dài cú trị
trung bỡnh vụ hạn.
Một trong những phõn bố dạng v t dài ệ đơn gi n nh ng h t s c quan tr ng trong ả ư ế ứ ọ
phõn tớch lưu lượng mạng Internet là phõn bốPareto được định nghĩa như sau: c
[X>x] = x
Ngoài ra ba phõn bố dạng v t dài phệ ổ biến khỏc là Weibull, Gamma và
Log-normal. Tuy nhiờn việc xem hai phõn bố Weibull và Gamma là vệt dài khụng hoàn toàn chớnh xỏc vỡ thực tế hai phõn bố này suy hao nhanh hơn phõn bố Pareto nhưng lại chậm hơn cỏc phõn bố họ Markov. Vỡ th trong lu n ỏn này nghiờn c u ế ậ ứ
sinh xem Weibull và Gamma là phõn bố ệ v t dài yếu.
Cú thể nh n dậ ạng cỏc phõn bố ệ v t dài (hàm pdf của nú suy giảm theo luật luỹ
thừa) bằng đồ thị hàm CCDF vẽ trờn thang logarit, hay thường được gọi là đồ thị
Log-Log CCDF. Theo đú đồ th Log-log CCDF cị ủa cỏc phõn bố vệt dài thường cú phần đuụi là đường dốc tuyến tớnh (như hỡnh 3-1 dưới đõy). Tham sốααααα của cỏc phõn bố ệ v t dài cú thểđược d oỏn theo nhi u cỏch khỏc nhau, vớ d , b ng cỏch s ự đ ề ụ ằ ử
dụng độ dốc tuyến tớnh c a ủ đồ th log-log CCDF, hay s dị ử ụng toỏn t dử ự đ oỏn Hill [34]. Ngoài ra cũn một phương phỏp ([35]) phổ biến khỏc để dự đ oỏn ααααα đú là phương tổng hợp cỏc mẫu dữ liệu trờn nhiều thang khỏc nhau hoặc cũng cú thể sử
dụng phương phỏp dự đoỏn MLE (Maximum Likelihood Estimation) nếu cú thể giả
thiết là dữ ệ li u th c nghi m tuõn theo mự ệ ột phõn b gi ố ảđịnh nào ú. đ
Hỡnh 3-1 Đồ thị log-log CCDF của cỏc phõn bố ệ v t dài (theo [34][35])
Đặc biệt phõn b Pareto cú ố đồ th log-log CCDF v i toàn bị ớ ộ phầ đn uụi là một đường thẳng dốc tuyến tớnh, cũn hai phõn bố Log-Normal và Weibull thỡ khụng phải toàn bộ mà ph n l n ph n uụi c a ầ ớ ầ đ ủ đồ th log-log CCDF là d ng ị ạ đường th ng ẳ
đối với cỏc phõn b dố ạng v t ng n (h Markov) nh phõn b hàm m thỡ phệ ắ ọ ư ố ũ ầ đn uụi của đồ thị log-log CCDF suy giảm nhanh chúng (theo luật hàm mũ). Do đú để kiểm tra một phõn bố dữ ệ li u th c nghi m cú tuõn theo hàm mự ệ ũ hay khụng thỡ nờn dựng
đồ thịlog-tuyến tớnh CCDF vỡ nú cú dạng đường th ng. ẳ
3.2.1.2 Phương phỏp dự đ oỏn phõn bố phự hợp với dữ liệ đu o thực nghiệm
Để dự đ oỏn m t phõn b lý thuy t nào ú thớch h p cho vi c mụ t dộ ố ế đ ợ ệ ả ữ ệ li u
đo th c nghi m, c n th c hi n 3 bự ệ ầ ự ệ ước: th nh t (i) ứ ấ đảm b o tớnh phự h p c a d ả ợ ủ ữ
liệu đo, theo đú dữ liệu đo phải đảm bảo một số thuộc tớnh quan trọng bao gồm: tớnh
độc lập (ng u nhiờn), tớnh tẫ ĩnh và khụng thể hiện một xu hướng (qui luật) nào; bước thứ 2 (ii) là chọn một phõn bố phự hợp nhất theo trực quan với dữ liệ đu o g i là ọ
phõn bố giả định và dự đ oỏn cỏc tham số của phõn bố này, và bước cuối cựng (iii) kiểm tra mức độ phự hợp về mặt toỏn học xem đó đạt yờu c u chầ ưa, nếu chưa đạt thỡ lặp lại thuật toỏn ở bước (ii). Thực ra bước 3 là bước xem xột sai số ề v mức độ phự hợp gi a mụ hỡnh gi ữ ảđịnh và d li u o. ữ ệ đ
Việc kiểm tra tớnh phự hợp của dữ liệu đo (bước i) đó được trỡnh bày trong chương 2 của luận ỏn này. Do đú sau đõy chỉ trỡnh bày cỏc bước ii và iii.
D ự đoỏn cỏc tham số của phõn bố
Trước khi cú thể dự đ oỏn cỏc tham s cố ủa phõn bố, chỳng ta phải xỏc định phõn bố phự hợp nhất để dự đ oỏn hay cũn g i là phõn b gi ọ ố ả định. Phương phỏp thực hiện trong luận ỏn này là phõn dữ liệu đo thành cỏc nhúm nhỏ, gọi là bin, để vẽ
bi u ể đồ tần suất xuất hiện (histogram) của chỳng, từ đ ú xỏc định hỡnh dạng hàm mật
độ phõn bố tương ng v i phõn b lý thuy t nào. ứ ớ ố ế
Tiếp theo sử dụng d li u o ữ ệ đ để dự đ oỏn cỏc thụng s cố ủa phõn b gi ố ả định, vớ dụ nếu mu n ki m tra xem d li u o cú tuõn theo phõn bố ể ữ ệ đ ố Gau xơ (normal) hay khụng thỡ cú thể sử dụng tr trung bỡnh và bi n thiờn c a cỏc m u d li u o ị ế ủ ẫ ữ ệ đ để dự đoỏn cỏc tham số ủ c a mụ hỡnh phõn bốNormal.
Về mặt lý thuyết, cú nhi u phề ương phỏp để dự đ oỏn cỏc tham s cố ủa m t ộ
phõn bố, tuy nhiờn cú hai phương phỏp mà nghiờn cứu sinh thấy phự hợp với vấn đề
nghiờn cứu đặc i m lđ ể ưu lượng mạng Internet m c luở ứ ồng đú là phương phỏp MLE và phương phỏp tổng hợp mẫu dữ liệu.
Phương phỏp MLE (Maximum Likelihood Estimation)
Núi một cỏch dễ hiểu nhất, MLE là phương phỏp tố ưi u hoỏ xỏc su t ấ để tập dữ liệu đo là kết quả của một mụ hỡnh xỏc suất giả định. Cụ thể MLE hoạt động như
Giả thiết f(x; p1, ... , pq) là hàm mật độ xỏc su t c a t p d li u th c nghi m và ấ ủ ậ ữ ệ ự ệ x F(x; p1, ... , pq) là hàm phõn bố xỏc su t (lu tớch); v i P = (ấ ỹ ớ p1, ... , pq) là tập q tham số
cần dự đoỏn. Định nghĩa hàm xỏc suất (likelihood) L như sau: 1 1 ( ; ,..., ) N j q j L f x p p = =∏ (3-2-10) Tuy nhiờn để tiện cho việc tớnh toỏn, chỳng ta tớnh hàm xỏc suất log như sau:
1 1 log N ( ; ,...,j q) j L f x p p = =∑ (3-2-11) Toỏn tử dự đ oỏn MLE P∧ của vộc tơ cỏc tham số cần d oỏn ự đ được xỏc định b ng ằ
cỏch tố đi a hoỏ hàm xỏc suất log. Hàm xỏc suất log đạt giỏ trị lớn nh t khi cỏc bi u ấ ể
thức vi phõn (đạo hàm) của chỳng bằng 0, như sau: 1 1 / log ( ; ,..., N k j k j q f p L p = f x p p ∂ ∂ ∂ = ∂ ∑ , k = 1, ...., q (3-2-12) Do đú việc giải tập cỏc phương trỡnh: log 0 k L p ∂ = ∂ sẽ cho k t qu là vộc t cỏc tham ế ả ơ số cần dự đoỏn của phõn bố phự hợp. Phương phỏp tổng hợp dữ liệu (Scaling) [65]
Phương phỏp tổng hợp dữ liệu thường được sử dụng để d oỏn cỏc tham sự đ ố
(cụ thể là α) của cỏc phõn b vố ệt dài. Th c t cỏc t p d li u o th c nghi m ự ế ậ ữ ệ đ ự ệ
thường khụng hoàn toàn phự hợp với một phõn b lý thuyố ết duy nhất, đặc biệt dữ
liệu đo lưu lượng mạng Internet thường cú phầ đn uụi kộo dài bắ đầt u tại mộ đ ểt i m
xh nhất định nào đú. Nghĩa là phõn bố thực nghiệm thực ra bao gồm sự kế ợt h p c a ủ
hai hoặc nhiều h n phõn b lý thuy t và ch cú phơ ố ế ỉ ầ đn uụi của phõn bố thực nghiệm là được thể hiện bởi một phõn bố vệt dài nào đú. Cỏc phương phỏp dự đ oỏn tham số
của phõn bố thường ph i b t ả ắ đầu b ng vi c xỏc ằ ệ định i m đ ể xh này và thường là rất khú. Cũn phương phỏp tổng hợp dữ liệu sẽ tựđộng phỏt hi n khu v c uụi kộo dài ệ ự đ
phự hợp nhất và dự đ oỏn thụng số độ dốc ααααα tương ứng c a khu v c này. i u này ủ ự Đ ề
sở dĩ cú th th c hi n ể ự ệ được nh vào m t th c t rờ ộ ự ế ằng hỡnh d ng ph n uụi c a m t ạ ầ đ ủ ộ
phõn bố ệ v t dài sẽ xỏc định đặc i m phõn b (đ ể ố scaling) của tập dữ liệu thực nghiệm khi chỳng được tổng hợp theo một bước tổng hợp cho trước. Giả thiết tập dữ liệu o đ
là X = {x1, ...., xN }, theo cụng thức (3-2-1) ta cú tập dữ liệu tổng hợp bước m là
X(m)(k). Ngoài ra cỏc nghiờn cứu như [35] đó chứng minh rằng tổng cỏc biến ngẫu nhiờn theo phõn bố vệt dài tham sốααααα sẽ hộ ụi t thành một phõn b n ố ổ định cú cựng tham sốααααα. Do đú phương phỏp tổ hợp d li u s th c hi n nh sau: ti n hành t ng ữ ệ ẽ ự ệ ư ế ổ
mỗi mức tổng hợp. Cuối cựng chọn giỏ trịααααα nào xu t hiấ ện nhiều nhất trong cỏc mức tổng hợp. Trong phần 3.2.2.3 nghiờn cứu sinh sử dụng phương phỏp này để ỏnh đ
giỏ độ dài đuụi của cỏc phõn bố thực nghiệm theo giỏ trịααααα dự đ oỏn.
Kiểm tra mức độ phự hợp (Goodness-of-fit)[67]
Sau khi đó cú được cỏc tham số dự đ oỏn của phõn bố giảđịnh, bước tiếp theo là kiểm tra xem phõn bố giả định cú thực sự phự hợp hay khụng và phự hợp n đế
mức độ nào với tập dữ liệu thực nghiệm. Cú nhiều phương phỏp để kiểm tra mức độ