Tải bản đầy đủ (.docx) (30 trang)

Nghiên cứu điều khiển tắc nghẽn đa đường cho các ứng dụng đa phương tiện trên internet

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 (894.74 KB, 30 trang )

TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT

KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO TĨM TẮT

ĐỀ TÀI KHOA HỌC VÀ CƠNG NGHỆ CẤP TRƯỜNG

NGHIÊN CỨU ĐIỀU KHIỂN TẮC NGHẼN ĐA ĐƯỜNG
CHO CÁC ỨNG DỤNG ĐA PHƯƠNG TIỆN TRÊN INTERNET

Mã số:

Chủ nhiệm đề tài: TS. Lê Tuấn Anh

Bình Dương, 2015


TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT

KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO TĨM TẮT

ĐỀ TÀI KHOA HỌC VÀ CƠNG NGHỆ CẤP TRƯỜNG

NGHIÊN CỨU ĐIỀU KHIỂN TẮC NGHẼN ĐA ĐƯỜNG
CHO CÁC ỨNG DỤNG ĐA PHƯƠNG TIỆN TRÊN INTERNET

Mã số:


Xác nhận của đơn vị chủ trì đề tài
••
(chữ ký, họ và tên)

Chủ nhiệm đề tài
(chữ ký, họ và tên)

Bình Dương, 2015

2


DANH SÁCH THÀNH VIÊN VÀ ĐƠN VỊ PHỐI HỢP
••
Họ và tên
Lê Phong Dũ

Đơn vị công tác và lĩnh vực
chuyên môn
ĐH Trà Vinh, Giảng viên

Nội dung nghiên cứu
cụ thể được giao
Lý thuyết và mô phỏng

1


MỤC LỤC
DANH SÁCH THÀNH VIÊN VÀ ĐƠN VỊ PHỐI HỢP.......................................... i

MỤC LỤC............................................................................................................... ii
THÔNG TIN KẾT QUẢ NGHIÊN CỨU................................................................iv
LỜI MỞ ĐẦU ..........................................................................................................1
CHƯƠNG 1 - CƠ SỞ LÝ THUYẾT.........................................................................2
1.1.

1.1.1.
1.1.2.
1.1.3.
1.1.4.
1.1.5.
1.3.1.
1.3.2.
1.3.3.
1.3.4.
1.3.5.
1.3.6.
1.4.1.
1.4.2.
1.4.3.
1.4.4.
1.4.5.
1.4.6.
1.4.7.
1.4.8.
1.4.9.
1.5.1.
1.5.2.

Giao thức TCP .............................................................................................2

Điều khiển tắc nghẽn của TCP .............................................................2
Tín hiệu hồi đáp TCP.............................................................................2
Cửa sổ tắc nghẽn ..................................................................................2
Tín hiệu tránh tắc nghẽn .......................................................................2
Thuật tốn truyền lại nhanh ..................................................................2
1.2. Giao thức UDP ............................................................................................2
1.3. Giao thức điều khiển tắc nghẽn TFRC ........................................................2
Giao thức TFRC....................................................................................2
Kỹ thuật điều khiển tắc nghẽn của TFRC .............................................2
Gói tin báo cáo .....................................................................................2
Cơng Thức TFRC...................................................................................2
Chức năng bên gửi dữ liệu.....................................................................3
Chức năng bên nhận dữ liệu..................................................................3
1.4. Giao thức Multipath TCP ............................................................................3
Một số khái niệm trong Multipath TCP ................................................3
Hoạt động Multipath TCP ....................................................................3
Thiết lập kết nối trong Multipath TCP ..................................................3
Điều khiển lưu lượng ............................................................................3
Điều khiển luồng ...................................................................................4
Quản lý tín hiệu hồi đáp .......................................................................4
Phục hồi gói tin bị mất...........................................................................4
Điều khiển tắc nghẽn trong Multipath TCP (MPTCP)...........................4
Đóng kết nối...........................................................................................4
1.5. Các nghiên cứu gần đây...............................................................................4
Giao thức MulTFRC .............................................................................4
Các nghiên cứu cho ứng dụng multimedia khác ..................................4
CHƯƠNG 2 - THIẾT KẾ THUẬT TỐN MULTIPATH TFRC..............................5
2.1.

2.1.1.

2.1.2.

Tính tốc độ truyền trên mỗi đường..............................................................5
Phát hiện mất gói tin theo cơ chế dupACK ..........................................5
Phát hiện mất gói tin bằng dupACK và Time-out.................................6
2.2. Thuật tốn MPTFRC ..................................................................................8
CHƯƠNG 3 - ĐÁNH GIÁ HIỆU NĂNG ..............................................................12
3.1.

Mơ phỏng...................................................................................................12


3.2.

3.2.1.
3.2.2.
3.2.3.
3.2.4.

Đánh giá giao thức theo các tiêu chí..........................................................12
Tăng thơng lượng................................................................................12
Chia sẻ công bằng...............................................................................13
Cân bằng tắc nghẽn .............................................................................14
Tốc độ dữ liệu truyền mượt.................................................................15
KẾT LUẬN VÀ KIẾN NGHỊ.................................................................................18
TÀI LIỆU THAM KHẢO.......................................................................................19


TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT
Đơn vị: KHOA CÔNG NGHỆ THƠNG THIN


THƠNG TIN KẾT QUẢ NGHIÊN CỨU
1. Thơng tin chung:
Tên đề tài: NGHIÊN CỨU ĐIỀU KHIỂN TẮC NGHẼN ĐA ĐƯỜNG

CHO CÁC ỨNG DỤNG ĐA PHƯƠNG TIỆN TRÊN INTERNET
-

Mã số:

-

Chủ nhiệm: TS. Lê Tuấn Anh

-

Đơn vị chủ trì: Khoa Cơng nghệ Thông tin

- Thời gian thực hiện: tháng đến tháng
2. Mục tiêu:
Trong đề tài này, chúng tôi sẽ mở rộng thuật toán TFRC đơn đường, được đặt tên là
MPTFRC, để hỗ trợ truyền dữ liệu đồng thời trên đa đường trên Internet.
3. Tính mới và sáng tạo:
Thuật tốn mở rộng của TFRC đơn đường, được đặt tên là MPTFRC, được thiết kế
xuất phát từ mơ hình phân tích của TCP Reno gốc tại mức luồng và kỹ thuật tránh
đánh võng giữa các đường ở mức gói.
4. Kết quả nghiên cứu:
Các kết quả mơ phỏng đã chứng tỏ rằng thuật tốn đề xuất MPTFRC khơng những
đảm bảo ba tiêu chí thiết kế thuật tốn đa đường mà cịn cung cấp tốc độ dữ liệu
mượt hơn MPTCP trong khi vẫn duy trì được sự chia sẻ công bằng với các luồng

TCP Reno và MPTCP hiện có. Bằng cách mơ phỏng bởi nhiều mơ hình mạng với các
thơng số mạng khác nhau, chúng tơi đã đánh giá giao thức đề xuất theo 4 tiêu chí nêu
trên. Đồng thời chúng tơi so sánh sự chia sẻ công bằng và cùng tồn tại với các giao
thức khác hiện có như TCP Reno, TFRC, MPTCP.
5. Sản phẩm:
- Báo cáo phân tích.


- 01 bài báo khoa họ đăng trên Tạp chí Khoa học Trường Đại học Cần Thơ, Số
chuyên đề: Công nghệ Thông tin (2013): 180-189.
- Hướng dẫn 01 Học viên cao học.
6. Hiệu quả, phương thức chuyển giao kết quả nghiên cứu và khả năng áp
dụng:
- Thuật toán MPTFRC mang lại hiệu quả cao so với TFRC đơn đường.
Ngày tháng năm
nhiệm
ĐơnChủ
vị chủ
trì đề tài
(chữ ký,
(chữ
họký,
và họ
tên)và tên)


INFORMATION ON RESEARCH RESULTS
1. General information:
Project title: Congestion control in multipath protocol for multimedia
applications

Code number:
Coordinator: Le Tuan Anh, PhD
Implementing institution:
Duration: from to
2. Objective(s):
We propose an extension algorithm of single path TFRC, named MPTFRC, designed
from both the analytical model of TCP Reno at flow level and the technique of
flappiness prevention between paths at packet level.
3. Creativeness and innovativeness:
Current coupled multipath congestion control (MPTCP) was designed for backcompatibility with single-path TCP Reno and for general applications

4. Research results:
The simulation results demonstrate that the proposed MPTFRC algorithm not only
satisfies the three design goals of multipath congestion control algorithm but also
provides data rate smoother than that of MPTCP while preservingfair sharing to the
existing TCP Reno and MPTCP flows.
5. Products:
- Document
- The 01 article was published at Can Tho University Journal, Information of
Technology 2013, 180-189.
- 01 master student was supperviced.
6. Effects, transfer alternatives of reserach results and applicability:


LỜI MỞ ĐẦU
Kiến trúc Multipath TCP [4] hay TCP đa đường là giao thức mở rộng thêm các
đặc điểm từ giao thức TCP, cho phép một kết nối TCP phân chia thành nhiều đường
con và dữ liệu được truyền trên các đường này đồng thời. Thuật toán điều khiển tắc
nghẽn của Multipath TCP (MPTCP) phải thỏa mãn ba tiêu chí là (i) nâng cao thơng
lượng truyền, (ii) đảm bảo tính cơng bằng đối với các luồng TCP hiện có và (iii) có

khả năng cân bằng tắc nghẽn: chuyển dữ liệu từ đường có tắc nghẽn nhiều sang
đường có tắc nghẽn ít hơn. Tuy nhiên, tốc độ truyền dữ liệu của Multipath TCP biến
thiên lớn, không phù hợp cho các ứng dụng multimedia mà chúng yêu cầu tốc độ dữ
liệu truyền mượt. Để khắc phục khuyết điểm này, MulTFRC đã được đề xuất. Nó là
phiên bản mở rộng của TCP Friendly Rate Control (TFRC) vốn là giao thức đơn
đường và được thiết kế cho các ứng dụng multimedia. Do MulTFRC được thiết kế
với giả định rằng các đường có cùng round trip time (RTT) mà thực tế rất hiếm xảy ra
điều này, cho nên MulTFRC không đảm bảo thỏa mãn các tiêu chí, do nó khơng có
khả năng bù khác biệt RTT.
Trong nghiên cứu này này, sẽ đề xuất một thuật toán mở rộng của TFRC đơn đường,
được đặt tên là MPTFRC, xuất phát từ mơ hình phân tích của TFRC và một sự cải
tiến để tránh đánh võng giữa các đường ở mức gói. Các kết quả mơ phỏng đã chứng
tỏ rằng, thuật tốn đề xuất MPTFRC khơng những đảm bảo ba tiêu chí ở trên mà cịn
cung cấp tốc độ dữ liệu mượt hơn MPTCP trong khi vẫn duy trì được sự chia sẻ cơng
bằng với TCP và MPTCP hiện có.

1


CHƯƠNG 1 - CƠ SỞ LÝ THUYẾT
1.1.

Giao thức TCP
1.1.1. Điều khiển tắc nghẽn của TCP
Điều khiển tắc nghẽn của TCP dựa vào kích thước cửa sổ. Bên gửi dữ liệu sử
dụng kích thước cửa sổ gửi (••••để giới hạn số lượng gói tin thêm vào mạng trước khi
nhận được ACK. Bên nhận dữ liệu cung cấp thơng tin về kích thước cửa sổ của nó
(:••■••:•: <) về bên gửi dữ liệu để giới hạn số lượng dữ liệu sẽ gửi tiếp theo. Số lượng
gói tin gửi được tính bằng
). Cụ thể là mỗi khi nhận được

ACK, tăng kích thước cửa sổ - bởi ('■■ = -), mỗi khi phát hiện mất gói tin kích thước
cửa sổ w giảm w/jff (ệ = 1/2).
Mỗi khi bên gửi dữ liệu nhận ACK xác nhận gói tin đã được gởi đến bên nhận
dữ liệu thì bên gửi dữ liệu sẽ tăng kích thước cửa sổ của nó như sau
,
khi bên gửi dữ liệu nhận dupACK (3 ACK) thì bên gửi dữ liệu sẽ giảm kích thước cửa
sổ của nó như sau
.
1.1.2. Tín hiệu hồi đáp TCP
1.1.3. Cửa sổ tắc nghẽn
1.1.4. Tín hiệu tránh tắc nghẽn
1.1.5. Thuật toán truyền lại nhanh
1.2. Giao thức UDP
1.3. Giao thức điều khiển tắc nghẽn TFRC
1.3.1. Giao thức TFRC
Tốc độ truyền dữ liệu của TCP thay đổi lớn nên không phù hợp cho các ứng
dụng multimedia. Một biến thể của nó được thiết kế và cạnh tranh cơng bằng với các
luồng TCP là TFRC [17].
Mục tiêu thiết kế TFRC cũng khác so với TCP đó là: (i) khơng tích cực chiếm
băng thông mạng, tăng tốc độ gửi dữ liệu chậm để ít thay đổi tốc độ trong khi mất gói
tin; (ii) không giảm tốc độ gửi một nửa khi phát hiện mất gói tin như trong TCP.
1.3.2. Kỹ thuật điều khiển tắc nghẽn của TFRC
• Bên nhận dữ liệu xác định tỉ lệ mất gói tin và gửi thơng tin về bên gửi dữ liệu
thơng qua gói tin báo cáo.
• Bên gửi dữ liệu sử dụng thông tin phản hồi từ bên nhận dữ liệu để đo X? TT.
• Tỉ lệ mất gói tin và X? TT sẽ được đưa vào phương trình TFRC để tính.
• Bên gửi dữ liệu sau đó sẽ điều chỉnh tốc độ truyền của nó cho phù hợp.
1.3.3. Gói tin báo cáo
1.3.4. Cơng Thức TFRC
Thơng lượng B(p) được đề xuất cho TFRC [17] trong điều kiện mạng ổn định là

Bịp) K---------==---------------7-----==r----------------------------,
RTrJ^ + To min (1,3 j p(l + 32p2) trong đó, cơng thức tính thơng lượng 31 :
được tính bằng gói tin/giây, X? TT là
round-trip-time, tỉ lệ mất gói tin là ■;, b là số gói tin được xác nhận bởi một ACK (? = ■-),


"■ thời gian truyền lại hết thời gian chờ (xí rí?). Giá trị T- = -T 7 77
1.3.5. Chức năng bên gửi dữ liệu
1.3.6. Chức năng bên nhận dữ liệu
1.4. Giao thức Multipath TCP
Giao thức Multipath TCP hay giao thức TCP đa đường [3],[4],[9] là giao thức mở
rộng thêm các đặc điểm từ giao thức TCP, cho phép một kết nối phân chia thành nhiều
đường con và dữ liệu được truyền trên các đường con này đồng thời. Multipath TCP hoạt
động giống như TCP và mở rộng các API cung cấp thêm chức năng điều khiển cho các ứng
dụng Multipath TCP.
1.4.1. Một số khái niệm trong Multipath TCP
1.4.2. Hoạt động Multipath TCP
Để Multipath TCP hoạt động hiệu quả trong quá trình tạo kết nối, quản lý kết nối,
truyền dữ liệu cũng như đóng kết nối trên tất cả các Subflow. Ngồi việc sử dụng các tùy
chọn có sẵn trên TCP, Multipath TCP sử dụng một số tùy chọn như sau:

Giá trị
0x0
0x1
0x2
0x3
0x4
0x5
0x6
0x7


Bảng 1.1 Các tùy chọn trong
Ký hiệu
MP CAPABLE
MP JOIN
DATA SEQUENCE SIGNAL
ADD ADDR
REMOVE ADDR
MP PRIO
MP FAIL
MP FASTCLOSE

tipath TCP.

Mô tả
Thiết lập kết nối MPTCP
Thêm một Subflow
Đóng kết nối thơng thường
Thêm địa chỉ
Loại bỏ địa chỉ
Thay đổi mức độ ưu tiên
Dự phịng
Đóng kết nối nhanh

1.4.3. Thiết lập kết nối trong Multipath TCP
Multipath TCP khởi tạo kết nối bắt đầu với các thông tin SYN, SYN/ACK, ACK
được trao đổi trên một đường đơn tương tự như TCP. Tuy nhiên, trong Multipath TCP sử
dụng tùy chọn MP_CAPABLE được khai báo ở phía bên gửi dữ liệu để thực thi Multipath
TCP và mong đợi được sử dụng giao thức này trong kết nối.
1.4.4. Điều khiển lưu lượng

Multipath TCP đã điều chỉnh một số kỹ thuật trong TCP cho phù hợp với hoạt động
của nó. Việc điều khiển thông lượng được thực hiện tại các Subflow và mỗi đường có cửa sổ
điều khiển riêng biệt nhằm làm nâng cao khả năng thực thi [1],[6]. Tuy nhiên bên nhận dữ
liệu chỉ có một cửa sổ được chia sẻ với tất cả các Subflow đã được thiết lập, với mục tiêu
không làm giới hạn tốc độ của các Subflow trong kết nối.
1.4.5. Điều khiển luồng
Điều khiển luồng trong Multipath TCP là điều chỉnh cơ bản luồng TCP [1]. Bên nhận
dữ liệu quản lý một cửa sổ độc lập chia sẻ cho tất cả các Subflow để không giới hạn tốc độ.
1.4.6. Quản lý tín hiệu hồi đáp
1.4.7. Phục hồi gói tin bị mất


1.4.8. Điều khiển tắc nghẽn trong Multipath TCP (MPTCP)
Ba tiêu chí khi thiết kế thuật tốn điều khiển tắc nghẽn của Multipath TCP [3],[6] là:
Tiêu chí 1: tăng thơng lượng nghĩa là tổng thông lượng của tất cả các Subflow của
một kết nối trong giao thức đa đường ít nhất bằng với đường tốt nhất trên giao thức đơn
đường.
Tiêu chí 2: chia sẻ công bằng với các luồng đơn đường nghĩa là một kết nối trong
giao thức đa đường chia sẻ công bằng với kết nối trong giao thức đơn đường khi nhiều
Subflow của giao thức đa đường cạnh tranh cơng bằng với luồng đơn đường cùng một nút
mạng.
Tiêu chí 3: cân bằng tắc nghẽn nghĩa là một kết nối trong giao thức đa đường thì dịch
chuyển dữ liệu từ đường có tắc nghẽn nhiều sang đường có tắc nghẽn ít hơn trong khi vẫn
đảm bảo hai tiêu chí 1 và 2.
1.4.9. Đóng kết nối
1.5. Các nghiên cứu gần đây
1.5.1. Giao thức MulTFRC
Gần đây, một nghiên cứu về giao thức đa đường ứng dụng cho multimedia là
MulTFRC [5]. MulTFRC là giao thức dựa vào TCP Friendly Rate Control (TFRC) [17], điều
khiển tốc độ sử dụng cơng thức để tính tốc độ truyền của các luồng tùy thuộc vào điều kiện

mạng (xác suất mất gói tin và RTT). Nó phân chia dữ liệu của một kết nối thành các luồng
ảo song song và duy trì tốc độ truyền mượt.
Tuy nhiên, luồng MulTFRC có luồng con ảo sẽ có thơng lượng gấp lần so với TFRC
đơn luồng. Rõ ràng, đều này không đảm bảo thỏa mãn tiêu chí thứ hai về chia sẻ công bằng
với các đơn luồng hiện đang tồn tại.
1.5.2. Các nghiên cứu cho ứng dụng multimedia khác


CHƯƠNG 2 - THIẾT KẾ THUẬT TỐN MULTIPATH TFRC
2.1.

Tính tốc độ truyền trên mỗi đường
Để cải tiến công thức truyền tốc độ từ thuật toán TFRC gốc [17], việc chứng minh
công thức dựa vào giao thức TCP đa đường.
Xuất phát từ công thức điều khiển tốc độ trong TFRC gốc được đề xuất trong
[17]
Q min

chúng tôi giả sử rằng X? là tập hợp tất cả các đường, í X? là một đường cụ thể. Trọng số đề
xuất điều chỉnh phối hợp tốc độ truyền dữ liệu đưa vào giao thức MPTFRC ở trạng thái ổn
định là trong đó .i\ là tốc độ truyền dữ liệu ở trạng thái ổn định, gọi A. là số gói tin được xác

nhận bởi một ACK trên đường r.
Trên mỗi đường :■■, giả sử LA. là kích thước cửa sổ tránh tắc nghẽn và tăng kích
thước cửa sổ
mỗi khi nhận được một ACK. Cơ chế điều khiển tránh tắc
nghẽn của các đường được thực hiện theo các vòng truyền tin, một vòng bắt đầu bằng việc
gửi Ư, gói tin trong cửa sổ tắc nghẽn và trong q trình các gói tin được gửi đi sẽ khơng có
bất kỳ gói tin nào được gửi, trước khi ACK đầu tiên được gửi về. Khi ACK đầu tiên được
nhận, đánh dấu vòng đầu tiên kết thúc và chuyển sang vịng thứ 2. Kích thước cửa sổ ở vịng

thứ 2
= VA. - — kích thước cửa sổ sẽ tăng tuyến tính với
chu kỳ . trên một vịng hay X?”. trong giai đoạn tránh tắc nghẽn và khơng mất gói tin.
Khoảng thời gian của một vòng bằng với X? T T- và gói tin bị mất trong một vịng thì độc
lập với các vịng khác.
2.1.1. Phát hiện mất gói tin theo cơ chế dupACK
Xét trên mỗi đường ■ ', chúng tơi định nghĩa thơng lượng 5-1
: được xác
định số gói tin được truyền đi trong khoảng thời gian nhất định và TDP r là khoảng giữa hai
lần xảy ra mất gói tin trong cơ chế dupACK.
Trong một TDP thứ i, thì Yri là số gói tin được gửi đi, x,í là khoảng thời gian và ■ là
kích thước cửa sổ. Mối quan hệ giữa thông lượng và xác suất mất gói tin được tính như sau
r

(1)
Giả sử hệ số : là gói tin bị mất đầu tiên
trong TDP thứ : tại vịng
;. Tổng
VẠ.; - - gói tin sẽ được thêm vào vịng 1-; . - - theo cơng thức sau
E X ] = E [Lr] + EX ] - 1
(2)
r


Do : trong vịng độc lập với các gói tin trong các vịng khác, vì thế
là một chuỗi các biến ngẫu nhiên độc lập và phân phối giống nhau. Xác suất
= tức là - - gói tin đã gửi thành cơng trước khi gói tin bị mất xảy ra.
^kí= krl = (1 <=u,3,...
:
Tức là . v: được xác định là


(3)

Từ (2) và (4), ta có

1 — Pr
E[iị] =-——+ F[wr].
(5)
Pr
Đặt r,.. . là khoảng thời gian của vòng thứ ■ trong TDP thứ Khi đó, thời gian của một
TDP thứ : là .4. = z. = r :.. là biến ngẫu nhiên và độc lập với kích thước cửa sổ, vì thế nó độc
lập với vịng thứ ■.
(6)
trong đó biểu diễn RT Tr= E[tr].
Cuối cùng, tính biểu thức cho z'5ĩ\.], xem xét ; như là tập hợp của số
vịng như Hình 2.2. kích thước cửa sổ tăng giữa
2 đến với chu kỳ
r

r

Từ (6), (11), và (13), ta có
(15)

Từ (1) và (5), chúng tơi có:

(20) RTTr^2brPr \^J

2.1.2. Phát hiện mất gói tin bằng dupACK và Time-out
Đặt Z:..: là khoảng thời gian trong trường hợp mất gói tin dưới dạng time-out và z~khoảng thời gian trong trường hợp mất gói tin dưới dạng dupACK. S- là tổng thời gian được

định nghĩa như sau
ợ yTỠ I 'TTD
ij.ỵi

Zjy

I



Đặt là số gói tin đã truyền trong khoảng thời gian s,., khi đó {-V.
một chuỗi các biến ngẫu nhiên. Thơng lượng được tính như sau:

} là


Đặt ■ ', là số TDP trong khoảng thời gian í. Trong TDP thứ xác định các giá
trị ỉ' là số gói tin được gửi, : là khoảng thời gian, ; là số vịng và v.\.: là kích thước cửa
sổ. Tương tự, r;\. là số gói tin gửi trong khoảng thời gian Z:..: .
r

r

Xét trong khoảng thời gian có TDP thì có _ TDP kết thúc dưới dạng dupACK
và TDP cuối cùng kết thúc dưới dạng time-out. Vì xác suất ímà một gói tin ở TDP
cuối dạng time-out, nên Qr = 1/F[nr].
r

r


r

r

_ ínì _ £ LlịJ + Qr x

EUr] + ỌrxF[^]

(21)

Khi ■ và .<• ■_ khơng phụ thuộc vào time-out, có nghĩa là nó sử dụng lại (4)
và (16). Để tính thơng lượng của (21) cần phải xác định Qr, E[fír] và E[z™].
Đặt là số gói tin đã gửi thành cơng trong vịng cuối cùng được xác nhận bởi
ACK cho các gói tin •' Giả sử
là xác suất mà gói tin đầu tiên
nhận được ACK trong một vòng của L,.. gói tin thì:

Giả sử
là xác suất mà gói tin nhận được ACK trong vịng cuối
cùng 0 V là gói tin được gửi) và phần cịn lại của những gói tin trong vịng. Nếu có
bị mất gói tin thì
cCn^) = P +p ,mr í"r" 1
r
1(1 -pr) ,
mr = nr
Đặt ộ :
là xác suất mất gói tin trên cửa sổ với kích thước dưới dạng
time-out.
Xác suất có gói tin bị mất trong vịng kế cuối và gói tin bị mất 3' "-.-Ì
1

trong vòng cuối cùng bằng .4 Ị : f I '■
: và (22).
Sau khi tính tốn, ta có:
ọr(wr) = mini
min

V W JT

(24)

r

Có xấp xỉ như sau:
ọr í« Q(E[Wr]).
(25)
Tiếp theo, xem xét khi một gói tin được truyền giữa hai chuỗi time-out liên
tiếp. Một chuỗi Ả\. dạng time-out xảy thì có k,. - - liên tiếp mất gói tin. Do đó: P[fír
=
= p^’1(l-pr)J
được tính như sau:
(26)



Khoảng thời gian trung bình của chuỗi time-out bao gồm cả việc truyền lại.
Thấy rằng 6 time-out đầu tiên kết thúc trong 1 chuỗi có chiều dài là với time-out
trung bình theo sau có chiều dài [12]. Khoảng thời gian của một chuỗi với kr timeout kết thúc được tính như sau:

Thế các giá trị ;"..., Z 's..], Z 'x?.. ] và Z ] vào phương trình (21).
(30)


2.2.

Thuật tốn MPTFRC
Trong q trình thiết kế MPTFRC, chúng tơi nhận thấy rằng, tốc độ truyền dữ
liệu của MPTFRC nếu chỉ cập nhật tăng, giảm theo cơng thức (30) thì xảy ra hiện
tượng đánh võng. Hiện tượng này được mô tả như sau:
Giả sử rằng MPTFRC truyền dữ liệu trên hai đường độc lập có cùng băng
thơng, độ trễ và cùng mức độ nghẽn mạng thì sự đánh võng được mơ tả là: dữ liệu
gần như chỉ truyền trên một đường trong khoảng thời gian ngẫu nhiên và sau đó chỉ
truyền trên đường còn lại, và lặp lại như thế. Hiện tượng này cũng xuất hiện trong
thiết kế MPTCP [6]. Để tránh hiện tượng này, chúng tôi sử dụng kỹ thuật được đề
xuất trong [5] là thêm tham số j.. trên đường Thuật tốn tăng tốc độ truyền trên
đường r được trình bày trong thuật toán .
Thuật toán 1: Thuật toán điều khiển tăng tốc độ trên đường r trong giao
thức MPTFRC
:r (

< rr;

r?..)

{ mult = (now — lastchange')/rttr-j if (mult > 2) mult = 2 ;


curr_rater

curr_rat&r +

}

last_change_ = now;

+


Thuật toán điều khiển tăng tốc độ trên đường r được thực hiện khi tốc độ hiện
hành
nhỏ hơn tốc độ cần đạt (r;;: ;
r?..) thì thuật tốn được
mơ tả như sau:
Bên nhận dữ liệu trên đường sẽ thu nhận các số liệu, tính tốn tỉ lệ mất gói tin
trên đường / và sao chép nhãn thời gian (timestamp) của bên gửi dữ liệu (để bên gửi
dữ liệu xác định iíTL). Sau đó nó gửi về cho bên gửi dữ liệu thơng qua gói tin báo
cáo.
Tại bên gửi dữ liệu, Subflow trên đường dựa vào thông tin báo cáo của đầu
nhận sẽ tính và ước lượng tốc độ
được tính theo cơng thức
(30), curr_rater là tốc độ hiện hành của đường r.
Tham số được thêm vào công thức (30) để tránh đánh võng được thực hiện
như sau:
Đặt x?rr,. và L,.. là round-trip-time và kích thước cửa sổ trên đường :••. Tiếp
theo cần xác định đường có kích thước cửa sổ lớn nhất và đường tốt nhất. Công thức
xác định được định nghĩa như sau:
Aí = J í(0 |í(0 = arg max wr Ị
B = ì /(0l/(0 = ưro max________-------[■
rER RTTr2xprị
là tập hợp những đường với kích thước cửa sổ lớn nhất, 3 là tập hợp những
đường mà được xem xét là đường tốt nhất. Để đảm bảo khơng đánh võng trong q
trình truyền dữ liệu, sử dụng tham số 2... tránh đánh võng trên từng đường như sau:
, /, nếur E B\M 0

|B\M|
'
£r
—I nểu r E M và B\ M ¥= 0
|M|
\
L. 0
ngược lại
Trong đó, là tập hợp những phần tử có trong B nhưng khơng có trong M, c là
phần tử rỗng và là tổng số đường truyền dữ liệu. Khi đó
.
Nếu đường tốt nhất có kích thước cửa sổ lớn nhất, thì
bất kỳ với
1 í ?.. Tuy nhiên, nếu đường tốt nhất có kích thước cửa sổ nhỏ, tức là nếu B\M =/=0
thì Er là một số dương nếu r E B\M, Er là số âm nếu r E M.
Sau đây, chúng tôi sẽ mô phỏng sự đánh võng khi khơng có tham số Er và
tránh đánh võng bằng tham số 2;. Mơ phỏng được thực hiện như Hình 2.5. Ở đó có 5
luồng TCP Reno trên các link 1 và 2 để tạo lưu lượng nền (background traffic).

Hình 2.5 Mơ hình mạng kiểm tra sự đánh võng .


3.0

__

_

X


Time(s)

r

Hình 2.7 Thơng lượng truyền dữ liệu sử dụng tham số £ r.
Trong Hình 2.6 khi truyền dữ liệu chúng tôi không sử dụng tham số tránh
đánh võng L- . Thông lượng truyền trên hai đường thay đổi. Đầu tiên thông lượng
tăng nhanh trên đường truyền thứ 2 (path 2) sau đó bắt đầu giảm tốc độ, thơng lượng
truyền thay đổi chỉ truyền trên đường 1 (path 1) và gần như chỉ truyền trên một
đường trong khoảng thời gian ngẫu nhiên, tốc độ truyền trên hai đường luân phiên
thay đổi, hiện tượng đánh võng xảy ra trên hai đường. Khi sử dụng tham số tránh
đánh võng ĩ., thì khơng xuất hiện sự đánh võng như trong Hình 2.7, ở đó tốc độ trên


hai đường truyền (path 1 và path 2) gần như bằng nhau trong suốt 100 giây mô
phỏng.


CHƯƠNG 3 - ĐÁNH GIÁ HIỆU NĂNG
3.1.

Mô phỏng
Để đánh giá thuật toán MPTFRC đã đề xuất trong chương 2, chúng tôi tiến hành mô
phỏng bằng bộ công cụ mô phỏng mạng NS2-31 [15], chạy trong môi trường hệ điều hành
Ubuntu 10.4. Với các tham số mơ phỏng như sau: kích thước gói dữ liệu là 576 byte, sử dụng
cơ chế hàng đợi active RED, tốc độ lấy mẫu sau mỗi 500ms, kích thước bộ đệm bằng băng
thơng nhân với độ trễ.
3.2. Đánh giá giao thức theo các tiêu chí
3.2.1. Tăng thơng lượng
Để đánh giá tiêu chí tăng thơng lượng của MPTFRC, đầu tiên chúng tôi mô phỏng hai

đường MPTFRC qua hai link như Hình 3.1(a), sau đó chúng tơi tiếp tục mô phỏng riêng biệt
một luồng TFRC qua 1 link như Hình 3.1(b).
C=2Mbps, D=1Dms C1=2Mbps, D^IOms

C2=2Mbps, D2=10ms

(a) (b)
Hình 3.1 Mơ hình mạng đánh giá tiêu chí tăng thơng lượng.

Time (s)

Hình 3.2. Tăng thơng lượng của MPTFRC
Kết quả Hình 3.2 cho thấy, thông lượng tổng hai đường của MPTFRC là gần gấp đôi
so với TFRC đơn đường, tăng thông lượng đạt được như trong thuật toán điều khiển tắc
nghẽn giao thức truyền đa đường. Việc tăng thông lượng của MPTFRC so với TFRC đơn
đường phụ thuộc vào số lượng Subflow trong một kết nối MPTFRC.


3.2.2. Chia sẻ công bằng
Trong phần này, chúng tôi muốn đánh giá khả năng chia sẻ công bằng của MPTFRC
so với các giao thức hiện có như: TCP Reno, TFRC tại một đường truyền cổ chai. Mô phỏng
gồm hai mô hình mạng như Hình 3.3.

Hình 3.3. Mơ hình mạng mơ phỏng tiêu chí chia sẻ cơng bằng.

Hình 3.5 Thơng luợng chia sẻ công bằng của MPTFRC với TCP


Hình 3.4 cho thấy, mặc dù hai đường MPTFRC cùng cạnh tranh với một luồng TFRC
như Hình 3.3(a), nhưng hai đường MPTFRC khơng tích cực chiếm thơng lượng của đường

TFRC. Thông lượng hai đường MPTFRC chỉ bằng gần một nửa so với thông lượng trên
đường TFRC. Kết quả này là do đo được trung bình (khơng trình bày trong nghiên cứu này
này) là:
, nên đưa vào cơng
thức (30) thì tốc độ trên mỗi đường sẽ bằng 1/2 so với TFRC (vì chúng có chung RTT, băng
thơng và trải qua cùng mức độ tắc nghẽn).
Trường hợp hai đường MPTFRC cũng cạnh tranh cơng bằng với đường TCP như
trong Hình 3.5. Tổng thông lượng của hai đường MPTFRC gần bằng với thông lượng trên
đường TFRC đơn đường, cũng như TCP đơn đường cùng cạnh tranh qua một link. Tức là
MPTFRC chia sẻ công bằng với kết nối TFRC và TCP Reno. Bởi vì cơng thức TFRC được
rút ra từ TCP Reno (hay thơng lượng TFRC tương đương TCP Reno) nên khơng khó để giải
thích tổng thơng lượng MPTFRC hai đường truyền tương đương với thông lượng của TCP
Reno trong cùng điều kiện mạng.
3.2.3. Cân bằng tắc nghẽn
Trong phần này, chúng tôi đánh giá tiêu chí cân bằng tắc nghẽn bằng mơ hình mạng
Hình 3.7. Mơ hình mạng này gồm một kết nối MPTFRC có 2 đường: path 1 và path 2. Trong
đó path 1 cạnh tranh với đường TFRC, có n= 20 luồng qua link 1, tốc độ C 1 = 15Mbps, độ trễ
D1 = 10ms; path 2 cạnh tranh với một đường TFRC qua link 2 có m= 12 luồng, tốc độ C 2 =
15Mbps, độ trễ D2 = 30ms. Chúng tôi tạo 20 luồng TFRC trên link 1 để mức độ tắc nghẽn cao
trên đường thứ 1 (path 1).

__

__ _ _

_

X

r


Hình 3.7 Mơ hình mạng mơ phỏng tiêu chí cân bằng tắc nghẽn.

Bảng 3.1 Tỉ lệ mất gói tin trên path 1 và path 2.

Path 1

Path 2

Pi = 0.69%

p2 =0.12%

1
4


Vì tỉ lệ mất gói tin px > p2, tức là luồng MPTFRC chỉ tập trung truyền thông lượng vào
path 2 là chính, để đạt được tiêu chí tăng thơng lượng, MPTFRC gửi càng nhiều càng tốt trên
path 2 trong khi tốc độ truyền dữ liệu trên path 1 gần như bằng không, nhưng tổng thông lượng
của MPTFRC xấp xỉ thông lượng đường tốt nhất trên TFRC (Single-path TFRC2) trong Hình
3.8.

Time (s)

Hình 3.8 Thiơng lượng cân bằng tắc nghiẽn giữa MPTFRC vói TFRC.

Hình 3.9 Mơ hình mạng đánh giá tiêu chí tốc độ dữ liệu truyền mượt.

Time (s)


• “ ” • • •/ •


×