Đăng ký Đăng nhập
Trang chủ Giáo dục - Đào tạo Cao đẳng - Đại học Sư phạm 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 in...

Tài liệu 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

.PDF
28
1
87

Mô tả:

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 1 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 i 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. Giao thức TCP ...............................................................................................2 1.1.1. Điều khiển tắc nghẽn của TCP ...............................................................2 1.1.2. Tín hiệu hồi đáp TCP ..............................................................................2 1.1.3. Cửa sổ tắc nghẽn ....................................................................................2 1.1.4. Tín hiệu tránh tắc nghẽn .........................................................................2 1.1.5. Thuật toá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 1.3.1. Giao thức TFRC......................................................................................2 1.3.2. Kỹ thuật điều khiển tắc nghẽn của TFRC ...............................................2 1.3.3. Gói tin báo cáo .......................................................................................2 1.3.4. Công Thức TFRC ....................................................................................2 1.3.5. Chức năng bên gửi dữ liệu......................................................................3 1.3.6. Chức năng bên nhận dữ liệu ...................................................................3 1.4. Giao thức Multipath TCP ..............................................................................3 1.4.1. Một số khái niệm trong Multipath TCP ..................................................3 1.4.2. Hoạt động Multipath TCP ......................................................................3 1.4.3. Thiết lập kết nối trong Multipath TCP ...................................................3 1.4.4. Điều khiển lưu lượng ..............................................................................3 1.4.5. Điều khiển luồng .....................................................................................4 1.4.6. Quản lý tín hiệu hồi đáp .........................................................................4 1.4.7. Phục hồi gói tin bị mất ............................................................................4 1.4.8. Điều khiển tắc nghẽn trong Multipath TCP (MPTCP) ...........................4 1.4.9. Đóng kết nối ............................................................................................4 1.5. Các nghiên cứu gần đây.................................................................................4 1.5.1. Giao thức MulTFRC ...............................................................................4 ii 1.5.2. Các nghiên cứu cho ứng dụng multimedia khác ....................................4 CHƢƠNG 2 - THIẾT KẾ THUẬT TOÁN MULTIPATH TFRC .............................5 2.1. Tính tốc độ truyền trên mỗi đƣờng ................................................................5 2.1.1. Phát hiện mất gói tin theo cơ chế dupACK ............................................5 2.1.2. Phát hiện mất gói tin bằng dupACK và Time-out...................................6 2.2. Thuật toán MPTFRC .....................................................................................8 CHƢƠNG 3 - ĐÁNH GIÁ HIỆU NĂNG ................................................................12 3.1. Mô phỏng .....................................................................................................12 3.2. Đánh giá giao thức theo các tiêu chí............................................................12 3.2.1. Tăng thông lượng ..................................................................................12 3.2.2. Chia sẻ công bằng.................................................................................13 3.2.3. Cân bằng tắc nghẽn ..............................................................................14 3.2.4. 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 iii 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 2. Mục tiêu: đến tháng 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 toá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 toán đề xuất MPTFRC không những đảm bảo ba tiêu chí thiết kế thuật toá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. iv - 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. Đơn vị chủ trì (chữ ký, họ và tên) Ngày tháng năm Chủ nhiệm đề tài (chữ ký, họ và tên) v 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: vi 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 toá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 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ổ giảm ( ). 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 .  Tỉ lệ mất gói tin và 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 đƣợc đề xuất cho TFRC [17] trong điều kiện mạng ổn định là 1.1. 2 trong đó, công thức tính thông lƣợng đƣợc tính bằng gói tin/giây, là round-trip-time, tỉ lệ mất gói tin là , 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ờ ( ). Giá trị 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. Ngoà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 Multipath TCP. Ký hiệu Mô tả MP_CAPABLE Thiết lập kết nối MPTCP MP_JOIN Thêm một Subflow DATA_SEQUENCE_SIGNAL Đóng kết nối thông thƣờng ADD_ADDR Thêm địa chỉ REMOVE_ADDR Loại bỏ địa chỉ MP_PRIO Thay đổi mức độ ƣu tiên MP_FAIL Dự phòng MP_FASTCLOSE Đó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à 3 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 toá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 4 CHƢƠNG 2 - THIẾT KẾ THUẬT TOÁN MULTIPATH TFRC 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] 2.1. chúng tôi giả sử rằng là tập hợp tất cả các đƣờng, 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 đó là tốc độ truyền dữ liệu ở trạng thái ổn định, gọi là số gói tin đƣợc xác nhận bởi một ACK trên đƣờng . Trên mỗi đƣờng , giả sử 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 quá 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 , 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 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 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 đƣợ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 TDPr thứ , thì là số gói tin đƣợc gửi đi, 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 (1) Giả sử hệ số là gói tin bị mất đầu tiên trong TDPr thứ tại vòng . Tổng gói tin sẽ đƣợc thêm vào vòng theo công thức sau 5 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. Tức là đƣợc xác định là Từ (2) và (4), ta có Đặt là khoảng thời gian của vòng thứ trong TDPr thứ . Khi đó, thời gian của một TDPr thứ là . 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 = . Cuối cùng, tính biểu thức cho , 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 đến với chu kỳ . Từ (6), (11), và (13), ta có (15) (16) Từ (1) và (5), chúng tôi có: (20) 2.1.2. Phát hiện mất gói tin bằng dupACK và Time-out Đặt là khoảng thời gian trong trƣờng hợp mất gói tin dƣới dạng time-out và khoảng thời gian trong trƣờng hợp mất gói tin dƣới dạng dupACK. là tổng thời gian đƣợc định nghĩa nhƣ sau Đặt là số gói tin đã truyền trong khoảng thời gian , khi đó { một chuỗi các biến ngẫu nhiên. Thông lƣợng đƣợc tính nhƣ sau: } là 6 Đặt là số TDPr trong khoảng thời gian . Trong TDPr 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à là kích thƣớc cửa sổ. Tƣơng tự, là số gói tin gửi trong khoảng thời gian . . Xét trong khoảng thời gian có TDPr thì có TDPr kết thúc dƣới dạng dupACK và TDPr 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 ở TDPr cuối dạng time-out, nên . (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 , và . Đặ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 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 ( 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ì Đặ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 trong vòng cuối cùng bằng và (22). Sau khi tính toán, ta có: (24) Có xấp xỉ nhƣ sau: (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ó liên tiếp mất gói tin. Do đó: đƣợc tính nhƣ sau: (26) 7 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 time-out kết thúc đƣợc tính nhƣ sau: Tính Thế các giá trị , , vào phƣơng trình (21). và (30) Thuật toán MPTFRC Trong quá 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ố trên đƣờng . Thuật toán tăng tốc độ truyền trên đƣờng đƣợ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 trong giao thức MPTFRC 2.2. ( < ) /  /   + ; 8 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 ( ) thì thuật toá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 toá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 ). 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), là tốc độ hiện hành của đƣờng . 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 và 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: là tập hợp những đƣờng với kích thƣớc cửa sổ lớn nhất, 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 quá trình truyền dữ liệu, sử dụng tham số tránh đánh võng trên từng đƣờng nhƣ sau: Trong đó, là tập hợp những phần tử có trong nhƣng không có trong , 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 . Tuy nhiên, nếu đƣờng tốt nhất có kích thƣớc cửa sổ nhỏ, tức là nếu thì là một số dƣơng nếu , là số âm nếu . Sau đây, chúng tôi sẽ mô phỏng sự đánh võng khi không có tham số và tránh đánh võng bằng tham số . 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). 9 Hình 2.5 Mô hình mạng kiểm tra sự đánh võng . 3.0 Throughput (Mbps) 2.5 Path 1 Path 2 2.0 Path 1 1.5 1.0 0.5 Path 2 0.0 0 3.0 20 40 60 80 100 Time (s) Throughput (Mbps) Hình 2.62.5Thông lƣợng truyền dữ liệu không sử dụng tham số Path1 Path2 2.0 Path 1 1.5 1.0 0.5 Path 2 0.0 0 20 40 60 80 100 Time(s) Hình 2.7 Thông lƣợng truyền dữ liệu sử dụng tham số . 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 . 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ố 10 . 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. 11 CHƢƠNG 3 - ĐÁNH GIÁ HIỆU NĂNG 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). 3.1. (a) (b) Hình 3.1 Mô hình mạng đánh giá tiêu chí tăng thông lƣợng. 2.5 Path 1 Sum Path 2 Single-path TFRC Throughput (Mbps) 2.0 Sum MPTFRC 1.5 Single-path TFRC 1.0 0.5 0 20 40 60 80 100 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. 12
- Xem thêm -

Tài liệu liên quan

Tài liệu vừa đăng