Chương 3: PHƯƠNG PHÁP ƯỚC TÍNH BĂNG THÔNG TRONG MẠNG IP SỬ DỤNG KỸ THUẬT TOPP
3.6. PHƯƠNG PHÁP ĐO BĂNG THÔNG SỬ DỤNG TOPP
3.6.5 Xác định tuyến có xung đột
Một khi chúng ta đã ước tính các hàm xấp xỉ phân đoạn tuyến tính của đồ thị o/m, chúng ta có thể tính toán các thông số của tất cả các liên kết nghẽn. Đối với mỗi liên kết nghẽn i = 1… K trong đồ thi, chúng ta tuyến tính Phương trình (3.1) cho mỗi tuyến nghẽn riêng biệt trong cùng một cách như chúng ta tuyến tính m
(bằng cách thiết lập o/m là một hàm của o). Do đó, chúng ta thiết lập pi -1/pi là hàm của pi-1. Để đơn giản hóa các phương trình, chúng ta giới thiệu thông số ui và vi là viết ngắn gọn của 1-si/li và 1/li, tương ứng. Sau đó ta viết lại phương trình kết quả là pi = ui + vipi-1. Vì vậy, chúng ta có được một phương trình tuyến tính cho mỗi tuyến nghẽn, với các thông số ui và vi. Chúng ta muốn tìm các giá trị của ui và vi cho tất cả các tuyến nghẽn i = 1… K. Cho mỗi tuyến, ta có thể tính toán (xem ở trên) băng thông tuyến như li = 1/vi, và băng thông dư thừa là si=li(1-ui)
Trong phần sau đây, các liên kết nghẽn có thứ tự vật lý (từ người gửi) được đánh số 1, 2,…, trong khi thứ tự dư thừa (bắt đầu với cổ chai dư thừa sb) được đặt tên b, c,…
Chúng ta sử dụng một đường mạng với hai liên kết nghẽn như trong ví dụ cơ bản.
Khi dò trên đường này, chúng ta nhận được đồ thị o/m với hai phân đoạn tuyến tính.
Phân đoạn đầu tiên là phân khúc giữa τ1 và τ2. Băng thông đo được trong phân đoạn này chỉ bị ảnh hưởng của tuyến cổ chai dư thừa b. Do đó, phân đoạn này xác định duy nhất tuyến b. Đối với liên kết này, ub = β20 và vb = β21, tức là từ kết quả phân tích hồi quy, có thể trực tiếp xác định các thông số ub và vb.
Phân đoạn thứ hai là phân khúc ở trên τ2. Băng thông được đo trong phân đoạn này là bị ảnh hưởng bởi hai liên kết với hai dư thừa thấp nhất, b và c. Thứ tự vật lý của hai liên kết (như định nghĩa ở trên) liên kết 1 theo sau bằng cách liên kết 2. Sử dụng các phương trình trên, các phương trình đối với phân đoạn thứ hai có thể được thể hiện như: β30 = u1u2 và β31 = u2v1 + v2.
Lưu ý rằng chúng ta không biết ưu tiên trong thứ tự vật lý của hai liên kết b và c.
Do đó, hai giải pháp tồn tại cho hệ thống phương trình này, một là trong đó b = 1 và c = 2, và trường hợp khác b = 2 và c = 1. Chúng ta biết từ phân đoạn đầu tiên các thông số của liên kết b, liên kết c là một trong hai cặp giải pháp thay thế <uc,vc>, tùy thuộc vào việc đoạn c chạy lên hay chạy xuống từ b.
Cần lưu ý ở điểm này mà cả hai ước tính tham số liên kết luân phiên là chính xác đối với chia sẻ tỉ lệ phân của các liên kết. Đó là, liệu c = 1 hoặc c = 2, đồ thị o/m, và đặc biệt là các giá trị β30 và β31, một cách chính xác mô tả các chia sẻ tỷ lệ đầu cuối
– đầu cuối một ứng dụng sẽ trải nghiệm. Do đó, chúng ta có thể xác định chính xác ba thông số đầu cuối – đầu cuối quan trọng, băng thông giới hạn biên trên (băng thông liên kết cổ chai, xem bên dưới), băng thông giới hạn biên dưới (băng thông cổ chai dư thừa), và băng thông chia sẻ theo tỷ lệ chính xác, độc lập cho dù c là hướng lên hoặc hướng xuống với b.
Từ trờn rừ ràng rằng trong hầu hết cỏc tỡnh huống ứng dụng cú tất cả cỏc thụng tin cần thiết, biết được đặc điểm của các liên kết, nhưng không biết thứ tự vật lý. Tuy nhiên, trong một số tình huống (ví dụ: khi ứng dụng được một số công cụ quản lý mạng), các ứng dụng muốn có biết chính xác hơn về thứ tự các tuyến.
Một cách là để tìm thêm thông tin để thiết lập thứ tự liên kết thích hợp. Thật không may, không có đủ thông tin trong đồ thị o/m để xác định trực tiếp thứ tự vật lý đúng của liên kết b và c. Do đó, chúng tôi cần thêm thông tin. Các giải pháp (một phần), chúng tôi đề nghị là để ước tính đầu tiên với băng thông liên kết cổ chai.
Điều này có thể được thực hiện bằng cách áp dụng các kỹ thuật được mô tả trong [4, 15] với giá trị thời gian TOPP. c là cổ chai băng thông tuyến, giá trị thích hợp của vc (và cũng có thể uc) có thể được xác định kể từ khi chúng ta biết được băng thông liên kết lc, vc = 1/lc. Tuy nhiên giải pháp này có thể không được sử dụng nếu c không phải là cố chai băng thông tuyến. Nếu vậy, một giải pháp thay thế để tìm thấy thứ tự liên kết bằng một công cụ khác, ví dụ: pathchar [15] . Một lần nữa, chúng tôi muốn chỉ ra rằng hầu hết ứng dụng chỉ cần biết đặc điểm của liên kết đầu tiên (liên kết b) và liên kết này có thể được ước tính một cách chính xác, độc lập của trật tự vật lý của các liên kết.
3.6.6. Thuật toán, trường hợp mà không có thông tin đầy đủ
Trong phần 3.6.5, chi tiết của việc phân tích TOPP được mô tả, nó đã được giả định rằng các điểm gãy và thứ tự của các liên kết nghẽn đã được biết đến. Điều này rừ ràng khụng phải là trường hợp trong cỏc tỡnh huống đo lường thực tế.
Một cách để xác định các điểm gãy có thể được nghiên cứu trên đồ thị mà o/m được vẽ lại o và xác định trực quan. Nó cũng không chắc chắn rằng kết quả các điểm gãy
xác định trực quan trong ước lượng bình phương ít nhất là tốt nhất, tức là tổng bình phương còn lại ít nhất RSS.
Phương pháp trong luận văn này được lặp đi lặp lại và ý tưởng cơ bản là làm cho các giả định về các loại và vị trí của các điểm ngắt, và thực hiện hồi quy cho mỗi giả định. Các giá trị điểm gãy cho tổng số tối thiểu nhỏ nhất RSS (tức là tổng hợp của RSS cho từng phân đoạn) cho các ràng buộc trong giải pháp tổng thể. Một giả định cơ bản là số lượng của các phân đoạn, tức là K, được biết đến. Một lần nữa, đây không phải là trường hợp cho các phép đo thực tế. Phần còn lại của phần này mô tả các thuật toán chi tiết hơn và thảo luận làm thế nào để ước tính K.
3.6.6.1 Thông tin chi tiết của thuật toán
Như đã giải thích trước đó, điểm gãy có thể được chia thành hai loại; các điểm gãy (i) đặt giữa hai tốc độ cung cấp liên tiếp, và các điểm gãy (ii) trùng hợp với tốc độ được cung cấp. Thuật toán bắt đầu bằng cách tìm kiếm các giải pháp mà các điểm gãy thuộc về thể loại (i). Nếu đó không, các giải pháp với điểm gãy của danh mục (ii) được kiểm tra. Để đơn giản hóa việc trình bày, chúng tôi giả định ở đây là K = 3. Cho ∑ −
∗
∗ = kK RK
R 1 trong đó ∗
RK là R.S.S không ràng buộc của phân đoạn k.
Hơn nữa, cho R(τ1,τ2) là R.S.S của hồi quy tuyến tính ràng buộc. Dưới đây, thuật toán được trình bày trong mã giả.
Thuật toán:
set Rmin = ∞ for i = 2 to nl - 4
Assume oi < τ1 < oi+1 (*)
Obtain R1∗ by linear regressions for j = i + 2 to nl - 2
Assume oj < τ2 < oj+1 (**)
Obtain R2∗ and R3∗ by linear regressions.
if R* < Rmin then
Calculate τ1∗ and τ2∗
if (*) holds for τ1∗and (**) holds for τ2∗
/* β∧ =β∗ */
set Rmin = R* else
Perform constrained regressions with
(τ1∗,τ∗2) = (oi, oj ), (oi+1, oj ), (oi, oj+1),and (oi+1; oj+1) if R(τ1∗,τ2∗)< Rmin then
set Rmin = R*(τ1∗,τ∗2)
end /* if */
end /* if */
end /* if */
end /* for */
end /* for */
Các giải pháp tổng thể, (∧ ,∧ ,∧ , ∧)
1 2 2
1 β τ τ
β là một trong những cung cấp cho Rmin. Việc tính toán τk∗ , k=1,2 được thực hiện bằng cách sử dụng các ràng buộc. Đó là:
∗+
∗
∗+
∗
∗
+
−
= −
1 ) 1 ( 1
0 ) 1 ( 0
k k
k k
k β β
β
τ β (3.7)
Hồi quy ràng buộc được thực hiện bằng cách sử dụng phương pháp số nhân Lagrange đã đề cập trong phần 3.5. Lưu ý rằng bước này đã được đơn giản hóa.
Chúng tôi chỉ kiểm tra các đỉnh của hình cầu phương (một hình chữ nhật khi K = 3), trong khi thực tế tối ưu là một nơi nào đó trên toàn bộ ranh giới của hình cầu phương. Việc đơn giản hóa cũng được thực hiện bởi Williams trong [14]. Nếu nl
không quá nhỏ các lỗi được giới thiệu nên có thể chấp nhận được. Khi các thông số β cho từng phân khúc đã được ước tính, các giá trị l và s cho liên kết cổ chai dư thừa được tính bằng cách sử dụng phương trình (3.5). Các giá trị l và s cho các tuyến nghẽn còn lại được tính như mô tả trong phần tiếp theo.
Nếu K>3, sẽ có các vòng lặp for bổ sung vào thuật toán, một vòng cho mỗi điểm gãy bổ sung. Từ các trải nghiệm của tác giả, đó là không nhiều hơn ba liên kết bị nghẽn trong thực tế. Tức là, K> 4 có lẽ khá hiếm. Trở lại làm thế nào thu được ước tính của K. Trước hết là tính toán đạo hàm thứ hai của đường cong o/m và tìm kiếm
cực đại địa phương. Những cực đại phải tương ứng với điểm gãy vì đạo hàm đầu tiên là không đổi trên cả hai phía của điểm gãy (nhưng tất nhiên với giá trị khác nhau bởi vì độ dốc thay đổi). Bởi vì chỉ có là một tập hợp rời rạc của các cặp <oi, oi/mi>, các dẫn xuất có thể được xấp xỉ. Các đạo hàm thứ hai có thể được xấp xỉ trực tiếp như sau:
( ) ( )
h i h i
h i h i i i h i h i i
i i
o o
m o m o m
o o
d m o d
− +
−
− +
+
− +
≈ / −2 / /
) (
) / (
2
2 (3.8)
với lựa chọn h phù hợp. Do đó, trước khi các thuật toán ở trên là bắt đầu, K được ước tính bằng cách đếm số lượng cực đại địa phương trong xấp xỉ của đạo hàm thứ hai. Đây là một quá trình được tính toán khả thi và không quá khó để tự động hóa.
3.6.6.2 Tối ưu hoá
Bản chất lặp đi lặp lại của thuật toán làm cho tính toán khó khăn khi số các điểm gãy lớn và / hoặc khi tốc độ cung cấp lớn. Có một số tối ưu hóa có thể nâng cao hiệu suất và làm ngắn gọn như sau:
- Ngoài ước tính K, các đạo hàm thứ hai cũng có thể được sử dụng để làm cho các vùng mà các tìm kiếm thuật toán cho các điểm gãy hẹp hơn.
- Khi thực hiện hồi quy theo thứ tự như đã mô tả trong thuật toán trên, các tổng khác nhau và các sản phẩm không cần phải được tính toán lại toàn bộ. Thay vào đó, đơn thuần chỉ cần điều chỉnh cho cộng hoặc trừ của một quan sát duy nhất.
- Người ta có thể lập luận rằng đó là khả năng mà hầu hết các điểm gãy thuộc về thể loại (i) trừ khi ∆o rất nhỏ. Một có thể tối ưu hóa chỉ đơn giản là bỏ qua bước thứ hai của thuật toán hoàn toàn. Điều đó không phải là giải pháp tìm kiếm trên các biên của hình phương cầu (thậm chí không phải tại các đỉnh như mô tả ở trên)