Giới thiệu
C ấ u trúc m ạ ng
WMN bao gồm hai loại: node mesh router và mesh client Khác với router không dây thông thường, mesh router không chỉ định tuyến mà còn hỗ trợ kết nối mạng linh hoạt hơn Thường thì, mesh router được trang bị nhiều giao diện không dây, có thể sử dụng công nghệ truy cập khác nhau So với router truyền thống, mesh router có thể đạt được độ che phủ tương đương nhưng tiêu thụ điện năng thấp hơn nhờ vào truyền thông multihop Giao thức kiểm soát truy cập (MAC) trong mesh router được cải thiện, giúp tăng khả năng mở rộng trong môi trường multihop.
Mặc dù có nhiều khác biệt, thiết bị định tuyến mesh và các thiết bị định tuyến không dây thông thường đều được xây dựng trên nền tảng phần cứng tương tự Các thiết bị định tuyến lưới có thể được phát triển từ các hệ thống máy tính chuyên dụng như hệ thống nhúng, hoặc từ các hệ thống máy tính đa năng như laptop và PC.
Hình 1.2:ví dụ về mesh router dựa vào hệ thống nhúng (a) PowerPC và (b)
Mesh client có chức năng cần thiết cho mạng không dây hỗn hợp và có thể hoạt động như một router Tuy nhiên, nó không hỗ trợ chức năng gateway hoặc bridge và thường chỉ có một giao diện không dây Nền tảng phần cứng và phần mềm của mesh client thường đơn giản hơn so với mesh router, với nhiều loại thiết bị khác nhau.
Router 14 có khả năng kết nối với nhiều thiết bị như laptop, PC, iPhone, PDA, đầu đọc RFID, và BACnet (mạng điều khiển tự động trong xây dựng), cùng nhiều thiết bị khác, như thể hiện trong hình 1.3.
Hình 1.3 : Ví dụ về mesh client: (a) Laptop, (b) PDA, (c) Wi-Fi IP phone (d) Wi- fi RFID Reader
Kiến trúc của WMN có thể được phân loại thành ba nhóm chính dựa trên chức năng của các node
Hệ thống hạ tầng/Backbone WMN được mô tả qua hình 1.4, với các liên kết không dây và có dây được thể hiện bằng dấu gạch ngang và liền Hệ thống này bao gồm các mesh router, tạo thành cơ sở hạ tầng cho các client kết nối Hạ tầng này có thể được xây dựng bằng công nghệ vô tuyến, chủ yếu là IEEE 802.11, cho phép mesh router tự cấu hình và phục hồi liên kết Với các cổng chức năng, mesh router có khả năng kết nối internet, đồng thời cung cấp cơ sở hạ tầng chia lưới cho các client thông thường Hệ thống này cũng cho phép tích hợp WMN với các mạng không dây hiện có thông qua chức năng gateway/bridge trong mesh router, cho phép các client có giao diện Ethernet kết nối trực tiếp với mesh router.
Mesh router là giải pháp tối ưu cho việc kết nối mạng không dây, cho phép nhiều công nghệ vô tuyến hoạt động đồng thời Để đảm bảo kết nối ổn định, các thiết bị khách cần giao tiếp với các trạm cơ sở thông qua kết nối Ethernet đến mesh router.
Mạng lưới không dây (WMN) cơ sở hạ tầng là loại phổ biến nhất, thường được áp dụng trong các mạng công cộng và khu vực Mạng này được xây dựng bằng cách chia sẻ lưới cơ sở hạ tầng, với các bộ định tuyến mesh được lắp đặt trên mái nhà trong khu phố, hoạt động như các điểm truy cập cho người dùng trong nhà và dọc theo các tuyến đường.
Client WMN là một mạng lưới peer-to-peer giữa các thiết bị client, trong đó các node client tạo thành một mạng lưới thực tế để thực hiện chức năng định tuyến và cấu hình, cung cấp ứng dụng cuối cho khách hàng mà không cần mesh router Gói tin từ một node trong mạng phải đi qua nhiều node để đến đích, thường sử dụng một loại vô tuyến Yêu cầu đối với các thiết bị người dùng cuối trong client WMN cao hơn so với mạng hạ tầng truyền thống, vì người dùng cuối cần thực hiện chức năng định tuyến và tự cấu hình.
Kiến trúc Hybrid WMN kết hợp giữa infrastructure và client meshing, cho phép mesh client truy cập mạng thông qua mesh router hoặc kết nối trực tiếp với các mesh client khác Infrastructure cung cấp kết nối tới các mạng khác như internet, Wi-Fi, WiMAX, mạng tế bào và mạng cảm biến, trong khi khả năng định tuyến của client cải thiện vùng phủ sóng trong WMN Với những ưu điểm này, kiến trúc lai dự kiến sẽ trở thành lựa chọn phổ biến trong tương lai.
Đặc điể m
Đặc điểm của WMN được trình bày như sau:
Mạng không dây đa bước (multi-hop wireless network - WMN) được phát triển với mục tiêu mở rộng phạm vi phủ sóng của các mạng không dây hiện có mà không làm giảm dung lượng kênh Một mục tiêu quan trọng khác là cung cấp khả năng kết nối trong các tình huống không có tầm nhìn thẳng (NLOS).
Để đáp ứng nhu cầu của 17 người dùng mà không cần kết nối trực tiếp có tầm nhìn thẳng (LOS), multi-hopping trở thành yếu tố quan trọng Phương pháp này giúp đạt được thông lượng cao hơn mà không làm mất dải tần, thông qua việc sử dụng khoảng cách đường dẫn ngắn hơn, giảm thiểu can nhiễu giữa các node và tái sử dụng tần số một cách hiệu quả.
• Hỗ trợ cho các mạng adhoc và khả năng tự tạo, tự phục hồi, và tự tổ chức
WMN cải thiện hiệu suất mạng nhờ vào kiến trúc linh hoạt, dễ triển khai và cấu hình, cho phép kết nối đa điểm đến đa điểm Những tính năng này giúp giảm chi phí đầu tư và cho phép mạng phát triển một cách dần dần khi cần thiết.
Khả năng di động của các node trong mạng mesh phụ thuộc vào loại node đó Cụ thể, mesh router thường có tính di động hạn chế, trong khi mesh client có thể được thiết lập cố định hoặc hoạt động như một node di động.
Mạng không dây Mesh (WMN) hỗ trợ nhiều loại mạng truy cập, bao gồm cả truyền dẫn internet và peer-to-peer (P2P) Hơn nữa, WMN có khả năng tích hợp với các mạng không dây khác, cung cấp dịch vụ đa dạng cho người sử dụng cuối.
Điện năng tiêu thụ trong mạng mesh phụ thuộc vào loại thiết bị, trong đó mesh router thường không bị ràng buộc nghiêm ngặt về năng lượng, nhưng mesh client cần giao thức sử dụng năng lượng hiệu quả Ví dụ, mạng cảm biến yêu cầu giao thức liên lạc tối ưu hóa, vì vậy các giao thức MAC hoặc định tuyến phù hợp sẽ rất cần thiết cho mesh client như cảm biến Việc sử dụng năng lượng hiệu quả là mối quan tâm hàng đầu trong mạng cảm biến không dây.
Khả năng tương thích và tương tác của mạng không dây hiện tại là rất quan trọng Việc xây dựng Mạng Mesh Không Dây (WMN) dựa trên công nghệ IEEE 802.11 cần phải tuân thủ tiêu chuẩn IEEE 802.11, hỗ trợ cả mesh client và Wi-Fi client thông thường Do đó, WMN cũng cần có khả năng hoạt động liên kết với các mạng không dây khác như WiMAX, Zig-Bee, và các mạng di động để đảm bảo tính linh hoạt và hiệu quả trong việc kết nối.
Dựa trên những đặc điểm của mình, WMN thường được xem như một loại mạng ad hoc do sự thiếu hụt cơ sở hạ tầng có dây trong mạng di động.
Mạng Wireless Mesh (WMN) được triển khai thông qua các điểm truy cập, yêu cầu kỹ thuật phức tạp hơn so với mạng adhoc WMN không chỉ là một loại mạng adhoc mà còn nhằm mở rộng khả năng của nó, khiến cho mạng adhoc có thể được xem như một mạng con của WMN Sự khác biệt giữa WMN và mạng adhoc sẽ được làm rõ trong phần tiếp theo.
Hạ tầng không dây, hay còn gọi là backbone không dây, là một phần quan trọng trong mạng không dây (WMN), bao gồm các router mesh Hệ thống backbone không dây cung cấp khả năng phủ sóng rộng rãi và kết nối mạnh mẽ trong môi trường không dây Tuy nhiên, tính ổn định của kết nối mạng adhoc lại phụ thuộc vào sự đóng góp của từng người dùng, điều này có thể dẫn đến độ tin cậy không cao.
WMN (Wireless Mesh Network) cho phép các client thông thường kết nối qua các công nghệ vô tuyến tương tự như một bộ định tuyến mesh Chức năng định tuyến trong mạng, bao gồm Wi-Fi, internet, mạng tế bào và mạng cảm biến, được thực hiện thông qua gateway/bridge trong bộ định tuyến mesh Nhờ đó, người dùng có thể truy cập dịch vụ từ mạng khác thông qua hạ tầng không dây Các mạng không dây tích hợp qua WMN hoạt động như xương sống của internet, làm giảm tầm quan trọng của vị trí vật lý của node mạng so với dung lượng và cấu trúc liên kết mạng.
Trong mạng ad hoc, các thiết bị người dùng cuối đảm nhận chức năng định tuyến và cấu hình cho tất cả các node, trong khi đó, mạng không dây lưới (WMN) sử dụng các router lưới để thực hiện những chức năng này Điều này dẫn đến việc giảm số lượng thiết bị người dùng cuối, giúp tiết kiệm năng lượng tiêu thụ và nâng cao khả năng ứng dụng di động Hơn nữa, WMN cũng yêu cầu giảm chi phí cho thiết bị cuối, mang lại lợi ích kinh tế cho người sử dụng.
Các bộ định tuyến mesh có khả năng tích hợp nhiều sóng vô tuyến, cho phép phân tách lưu lượng mạng một cách hiệu quả Điều này giúp tối ưu hóa quá trình định tuyến và cấu hình giữa các bộ định tuyến, đồng thời cung cấp truy cập mạng cho người dùng cuối thông qua các sóng vô tuyến.
Việc cải thiện năng lực mạng là rất quan trọng, tuy nhiên, trong mạng adhoc, các chức năng thường được thực hiện trên cùng một kênh, điều này dẫn đến hiệu suất giảm đáng kể.
Mạng adhoc mang lại khả năng di động cao nhờ vào việc sử dụng các thiết bị người dùng cuối để cung cấp định tuyến Tuy nhiên, cấu trúc mạng và kết nối của nó phụ thuộc vào sự di chuyển của người dùng, điều này tạo ra những thách thức bổ sung cho giao thức định tuyến cũng như việc cấu hình và triển khai mạng.
Ứng dụng
Nghiên cứu và phát triển của WMN đang được thúc đẩy bởi nhiều ứng dụng tiềm năng, mặc dù các ứng dụng này có thể không nhận được sự hỗ trợ trực tiếp từ các mạng không dây khác như mạng tế bào, mạng adhoc và mạng cảm biến không dây chuẩn IEEE 802.11.
Mạng băng rộng gia đình hiện nay chủ yếu được triển khai qua chuẩn IEEE 802.11 WLAN, tuy nhiên, việc lựa chọn vị trí đặt điểm truy cập là rất quan trọng Nếu không khảo sát kỹ lưỡng, ngay cả một ngôi nhà nhỏ cũng có thể có nhiều khu vực không được phủ sóng Các biện pháp khảo sát site thường tốn kém và không thực tế cho mạng gia đình, trong khi việc lắp đặt nhiều điểm truy cập cũng gây khó khăn do chi phí và sự phức tạp của hệ thống dây điện Ethernet Hơn nữa, việc giao tiếp giữa các node dưới hai điểm truy cập khác nhau phải quay lại tất cả các đường dẫn về hub truy cập, điều này không hiệu quả, đặc biệt trong mạng băng thông rộng Giải pháp kết nối mạng như hình 7 có thể giải quyết các vấn đề này cho mạng gia đình.
Hình 1.7:WMN cho mạng băng rộng trong gia đình.
Các bộ định tuyến mesh thay thế các điểm truy cập truyền thống, giúp cải thiện tính linh hoạt trong giao tiếp giữa các node Việc loại bỏ các vùng chết có thể thực hiện bằng cách thêm hoặc điều chỉnh vị trí của các bộ mesh router, cũng như tự động điều chỉnh mức công suất Mạng gia đình có thể hoạt động hiệu quả qua mạng không dây hỗn hợp mà không cần quay lại điểm tập hợp truy cập, từ đó giảm thiểu tình trạng tắc nghẽn Các bộ mesh router không bị hạn chế về mức tiêu thụ điện năng và tính di động, trong khi các giao thức cho mạng adhoc di động và mạng cảm biến không dây thường quá cồng kềnh để đảm bảo hiệu suất tốt Ngoài ra, Wi-Fi không hỗ trợ mạng multihop, làm cho mạng không dây mesh (WMN) trở thành lựa chọn lý tưởng cho các ứng dụng băng rộng.
Mạng cộng đồng và khu dân cư thường sử dụng kiến trúc kết nối internet qua cable hoặc DSL, với điểm cuối là kết nối không dây thông qua router Tuy nhiên, loại mạng này cũng tồn tại một số nhược điểm nhất định.
Khi thông tin được chia sẻ trong một cộng đồng hoặc khu phố, toàn bộ lưu lượng truy cập phải đi qua internet, điều này dẫn đến việc giảm đáng kể việc sử dụng tài nguyên mạng.
Tỉ lệ lớn các khu vực ở giữ nhà không được phủ dịch vụ không dây
Một cổng đắt tiền nhưng có băng thông cao được đặt giữ những hộ gia đình hoặc khu vực lân cận có thể không được
21 chia sẻ vì vậy dịch vụ không dây phải được thiết lập riêng Kết quả là, chi phí dịch vụ tăng lên
Chỉ có một đường dẫn duy nhất có thể có đối với một hộ gia đình để truy cập hoặc thông tin
WMN giảm thiểu nhược điểm bằng cách cung cấp nhiều kết nối linh hoạt, cho phép hỗ trợ nhiều ứng dụng như phân phối tập tin, truy cập file và phát video streaming.
Hình 1.8:WMN cho mạng dân cư.
Mạng doanh nghiệp có thể là mạng nhỏ trong văn phòng, mạng trung bình cho toàn bộ tòa nhà, hoặc mạng lớn giữa các văn phòng ở nhiều tòa nhà Chuẩn IEEE 802.11 hiện nay được sử dụng rộng rãi, nhưng các mạng không dây vẫn còn cô lập và thường phải sử dụng kết nối dây dẫn, dẫn đến chi phí cao Việc thêm nhiều modem truy cập chỉ tăng cường khả năng địa phương mà không giải quyết triệt để các vấn đề như kết nối thất bại và tắc nghẽn mạng Thay thế các điểm truy cập bằng router mesh có thể loại bỏ nhu cầu kết nối dây dẫn, giúp cải thiện hiệu suất mạng doanh nghiệp.
Mạng không dây đô thị (WMN) cho phép chia sẻ 22 cập giữa tất cả các node, từ đó cải thiện hiệu suất và tối ưu hóa tài nguyên cho các mạng doanh nghiệp WMN có khả năng mở rộng linh hoạt để đáp ứng nhu cầu phát triển của doanh nghiệp, đồng thời hỗ trợ các mạng phức tạp hơn so với mạng dân cư nhờ vào số lượng node lớn và cấu trúc mạng đa dạng Mô hình dịch vụ của mạng doanh nghiệp có thể được áp dụng cho nhiều lĩnh vực công cộng và thương mại như sân bay, khách sạn, trung tâm mua sắm, hội nghị và trung tâm thể thao.
Mạng metro không dây (WMN) mang lại nhiều lợi thế, với tốc độ truyền dữ liệu giữa các nút cao hơn đáng kể so với mạng di động truyền thống Chẳng hạn, tiêu chuẩn IEEE 802.11g có thể đạt tốc độ lên tới 54Mbps Đặc biệt, WMN không phụ thuộc vào bất kỳ dây dẫn backbone nào, như mạng quang, khiến nó trở thành một giải pháp kinh tế cho kết nối mạng băng rộng, đặc biệt ở những khu vực kém phát triển Mạng không dây metropolitan area network (MAN) bao quát một khu vực rộng lớn hơn so với mạng dân cư hay doanh nghiệp, do đó yêu cầu khả năng mở rộng của mạng không dây MAN cao hơn so với các ứng dụng khác.
Hệ thống giao thông hiện đại có thể được cải thiện thông qua công nghệ mạng hỗn hợp không dây, cho phép mở rộng kết nối không chỉ tại các điểm truy cập như bến xe mà còn bên trong các phương tiện như xe buýt, phà và tàu hỏa Nhờ vậy, dịch vụ thông tin hành khách có thể được giám sát và điều khiển từ xa, đồng thời hỗ trợ lái xe khi cần thiết Để triển khai mạng lưới này cho các phương tiện giao thông, cần hai công nghệ chính: truy cập tốc độ cao khi di chuyển từ phương tiện đến mạng internet và khả năng kết nối di động bên trong xe.
Hình 1.11 : Mạng không dây trong giao thông.
Hệ thống tự động hóa trong tòa nhà cần kiểm soát nhiều thiết bị điện như điện, ánh sáng, thang máy và điều hòa Truyền thống, việc này được thực hiện qua mạng có dây, gây tốn kém do phức tạp trong triển khai và duy trì Gần đây, mạng Wi-Fi đã được áp dụng để giảm chi phí, nhưng vẫn chưa mang lại hiệu quả cao trong việc quản lý các thiết bị này.
Việc triển khai Wi-Fi cho ứng dụng này có thể tốn kém do hệ thống dây điện Ethernet Tuy nhiên, nếu các điểm truy cập BACnet được thay thế bằng các router mesh, chi phí triển khai sẽ giảm đáng kể và quá trình triển khai cũng trở nên đơn giản hơn nhờ kết nối không dây giữa các router mesh.
Hình 1.12 : tòa nhà thông minh
Hệ thống chăm sóc sức khỏe trong bệnh viện hoặc trung tâm y tế yêu cầu xử lý và truyền dữ liệu giám sát cùng chẩn đoán đến các phòng khác để phục vụ nhiều mục đích Việc truyền dữ liệu băng rộng là cần thiết do độ phân giải cao của hình ảnh y tế và sự khác biệt trong thông tin giám sát, dẫn đến khối lượng dữ liệu lớn Mạng không dây thường cung cấp truy cập hạn chế cho các thiết bị y tế cố định, trong khi mạng Wi-Fi phụ thuộc vào kết nối Ethernet, gây ra chi phí và độ phức tạp cao, đồng thời không thể loại bỏ hoàn toàn điểm chết Tuy nhiên, các vấn đề này không tồn tại trong mạng không dây đa hop (WMN).
Hệ thống an ninh giám sát ngày càng trở nên quan trọng trong bối cảnh an ninh đang được chú trọng Việc lắp đặt các hệ thống giám sát là cần thiết cho các tòa nhà, doanh nghiệp, trung tâm mua sắm, và cửa hàng nhằm bảo vệ tài sản và đảm bảo an toàn Giải pháp WMN (Wireless Mesh Network) là lựa chọn khả thi hơn cho việc triển khai các hệ thống này tại những địa điểm cần thiết.
25 có dây kết nối tới mọi thiết bị, cho phép hình ảnh và video vẫn duy trì lưu lượng lớn trên mạng Ứng dụng này yêu cầu dung lượng cao hơn đáng kể so với các ứng dụng khác.
Kiến trúc TCP đa đường
Giới thiệu
Khi Internet phát triển, nhu cầu về tài nguyên, đặc biệt là băng thông, ngày càng gia tăng nhưng thường không được tận dụng tối đa do hạn chế về giao thức Nếu tài nguyên này có thể được sử dụng đồng thời, trải nghiệm của người dùng sẽ được cải thiện đáng kể, đồng thời giảm chi phí mạng Điều này giúp tránh việc cần thiết phải xây dựng cơ sở hạ tầng mới để nâng cao trải nghiệm người dùng Việc ứng dụng tài nguyên tổng hợp là giải pháp hiệu quả cho vấn đề này.
26 pooling) những nguồn lực sẵn có này có thể được “gộp” (pooled) như vậỵ chúng xuất hiện như một nguồn logic duy nhất tới người sử dụng
Truyền thông đa đường (Multipath transport) nhằm nhận diện một số mục tiêu của nguồn tài nguyên tổng hợp bằng cách sử dụng đồng thời nhiều đường dẫn trên mạng Hai lợi ích chính của truyền thông đa đường là cải thiện hiệu suất truyền tải và tăng cường độ tin cậy của kết nối mạng.
Để nâng cao khả năng phục hồi kết nối, cần cung cấp nhiều đường truyền khác nhau, giúp đảm bảo rằng máy chủ cuối cùng vẫn nhận được dữ liệu ngay cả khi xảy ra gián đoạn từ các máy chủ khác.
• Để tăng hiệu qủa của việc sử dụng tài nguyên , và do đó tăng dung lượng mạng lưới có sẵn
TCP đa đường (MPTCP) là phiên bản cải tiến của TCP, cho phép truyền thông qua nhiều đường dẫn trong một kết nối MPTCP chủ yếu sử dụng nhiều đường end-to-end, đặc biệt khi một hoặc cả hai đầu cuối có khả năng đa nhà mạng Nó cũng có thể áp dụng nhiều đường tồn tại trong mạng và được điều khiển bởi một host đầu cuối, ví dụ như sử dụng các cổng khác nhau với ECMP.
MPTCP, mặc dù không phải là công nghệ mới trong giao thức truyền thông, đã nhận ra tầm quan trọng của ứng dụng và khả năng tương thích mạng để đạt được triển khai quy mô rộng Các chức năng multihoming và multipath, như trong SCTP, đóng vai trò quan trọng trong việc cải thiện hiệu suất truyền tải dữ liệu.
Kịch bản tham khảo
Hình 1.13 minh họa một kịch bản hoạt động điển hình cho TCP đa đường, trong đó hai Host A và B giao tiếp với nhau Cả hai host đều có khả năng multi-homed và multi-addressed, cung cấp hai kết nối riêng biệt tới internet Các địa chỉ trên mỗi host được ký hiệu là A1, A2, B1, B2, tạo ra bốn đường truyền giữa hai host: A1-B1, A1-B2, A2-B1 và A2-B2.
Hình 1.13:kịch bản điển hình của MPTCP
Kịch bản này cho phép mỗi host có một hoặc nhiều địa chỉ, miễn là số đường kết nối giữa hai host phải là hai hoặc nhiều hơn, cụ thể là điều kiện num_addr(A)*num_addr(B)>1.
Các đường dẫn được hình thành từ các kết hợp địa chỉ qua Internet không nhất thiết phải tách rời hoàn toàn Vấn đề công bằng tiềm năng được nêu ra cần được giải quyết thông qua việc chia sẻ tắc nghẽn, và điều này đòi hỏi sự can thiệp của cơ chế kiểm soát tắc nghẽn TCP đa đường.
Các đường truyền qua Internet thường không cung cấp dịch vụ end-to-end hoàn hảo, mà có thể bị ảnh hưởng bởi các thiết bị trung gian như middleboxes.
Để ứng dụng không sử dụng MPTCP, MPTCP sẽ hoạt động tương tự như TCP thông thường Việc mở rộng các API có thể cung cấp thêm nhiều ứng dụng hỗ trợ cho MPTCP.
MPTCP Một ứng dụng bắt đầu bằng cách mở soket TCP theo cách thông thường MPTCP signaling và hoạt động được xử lý bằng cách thực hiện MPTCP
Kết nối MPTCP khởi đầu giống như một kết nối TCP thông thường, được thể hiện qua hình 14, trong đó một kết nối TCP được thiết lập giữa địa chỉ A1 và B1 trên máy chủ A và B tương ứng.
Nếu có sẵn đường dẫn cùng với các phiên TCP bổ sung (gọi là “subflow”) được tạo ra trên các đường dẫn này, chúng sẽ kết hợp với các phiên hiện tại, hiển thị như một kết nối duy nhất giữa hai đầu Quá trình tạo ra và bổ sung các phiên TCP được minh họa giữa A2 trên máy chủ A và B2 trên máy chủ B.
• MPTCP xác định nhiều đường bởi sự hiện diện của nhiều địa chỉ ở tại các Host Sự kết hợp của nhiều địa chỉ này tương đương với các đường
Có 28 dẫn có thể thiết lập giữa A1 và B1, cũng như A2 và B1 Dù các phiên bổ sung bắt đầu từ A2, chúng cũng có thể được khởi xướng từ B1.
Việc phát hiện và thiết lập subflow bổ sung sẽ được thực hiện thông qua phương pháp quản lý đường dẫn Tài liệu này mô tả cơ chế cho phép một host khởi tạo subflow mới bằng cách sử dụng địa chỉ bổ sung hoặc thông qua tín hiệu địa chỉ hiện có của nó tới các host khác.
• MPTCP thêm các sequence number vào connection-level cho phép tập hợp các segment đến từ nhiều subflow với độ trễ khác nhau
• Subflow được chấm dứt như một kết nối TCP, với bốn cách bắt tay FIN Kết nôi MPTCP được chấm dứt bởi connection-level FIN
Hình 1.14: ví dụ về kịch bản MPTCP
Mục tiêu
Phần này trình bày các mục tiêu chính nhằm đáp ứng yêu cầu, bao gồm các mục tiêu chức năng chỉ đạo các dịch vụ và tính năng của TCP đa đường Nó xác định cách TCP đa đường sẽ tương tác với các thực thể và đảm bảo khả năng tương thích với các mục tiêu đã đề ra.
Trong hỗ trợ sử dụng đa đường , Multipath TCP có 2 chức năng chính sau :
• Cải thiện thông lượng : multipath TCP hỗ trợ sử dụng đồng thời nhiều đường để đáp ứng các ưu tiên thực hiện tối thiểu cho triển khai , multipath
TCP kết nối nhiều đường sẽ đạt được không nhỏ hơn so với thông lượng giữa kết nối TCP đơn đường tốt nhất cấu thành
Multipath TCP cải thiện khả năng phục hồi bằng cách cho phép sử dụng nhiều đường thay thế cho nhau, giúp gửi và nhận các phân đoạn dữ liệu trên bất kỳ đường dẫn nào có sẵn Điều này cho thấy rằng, trong trường hợp xấu nhất, giao thức này không chỉ không kém khả năng phục hồi so với TCP đơn đường mà còn mang lại sự linh hoạt và độ tin cậy cao hơn trong việc truyền tải dữ liệu.
Việc phân phối lưu lượng giữa các đường sẵn có nhằm giảm ùn tắc được thực hiện theo nguyên tắc tổng hợp tài nguyên Một giải pháp hiệu quả là sử dụng multipath TCP qua internet, giúp cải thiện toàn bộ mạng bằng cách truyền tải qua các tuyến không bị tắc nghẽn và tận dụng công suất dự phòng ở những nơi có thể.
Multipath TCP có khả năng đàm phán tự động, cho phép một Host hỗ trợ Multipath TCP nhận diện các Host khác Điều này đảm bảo rằng các Host này có thể phát hiện và sử dụng các phần mở rộng cần thiết Nếu không, hệ thống sẽ tự động quay lại chế độ TCP đơn đường.
1.2.3.2 M ục tiêu khả năng tương thích
Ngoài các chức năng đã liệt kê, multipath TCP cần đáp ứng một số mục tiêu quan trọng để hỗ trợ triển khai hiệu quả trên mạng Internet hiện nay Những mục tiêu này bao gồm khả năng tối ưu hóa băng thông, cải thiện độ tin cậy và giảm độ trễ trong quá trình truyền tải dữ liệu.
Tương thích ứng dụng liên quan đến sự xuất hiện của multipath TCP, bao gồm các ứng dụng trong việc sử dụng API và mô hình dịch vụ mà người dùng mong đợi sẽ được cung cấp.
Multipath TCP cần tuân thủ mô hình dịch vụ tương tự như TCP, đảm bảo tính trật tự, độ tin cậy và định hướng theo byte Hơn nữa, một kết nối Multipath TCP sẽ mang lại hiệu suất không kém hơn về thông lượng và khả năng phục hồi so với khi sử dụng kết nối TCP trên bất kỳ đường truyền nào có sẵn.
Khả năng đa đường của TCP sẽ duy trì một mức độ tương thích ngược với TCP API, cho phép các ứng dụng hiện tại tận dụng giao thức mới chỉ bằng cách nâng cấp hệ điều hành của end-host Điều này không loại trừ việc sử dụng các API tiên tiến, cho phép ứng dụng nhận biết đa đường để xác định hoặc cấu hình hệ thống của host theo cách mặc định, chẳng hạn như bật hoặc tắt tự động sử dụng đa đường.
MPTCP mong muốn duy trì trạng thái kết nối của các phiên bản TCP hiện tại trước khi xảy ra timeout, giúp hỗ trợ các phiên bản tương tự một cách liên tục Trong khi địa chỉ IP trong giao thức TCP vẫn giữ nguyên trên toàn bộ kết nối, MPTCP cho phép sự linh hoạt hơn MPTCP cũng hỗ trợ (nhưng không bắt buộc) phương thức "break-before-make" để đảm bảo tính liên tục trong kết nối.
Trong kiến trúc internet truyền thống, các thiết bị mạng chủ yếu hoạt động ở lớp mạng và các lớp thấp hơn, với các lớp trên chỉ dành cho end-hosts Mặc dù kiến trúc này được thể hiện trong hình 15 và được tôn trọng khi thiết lập, nhưng nó không phản ánh chính xác thực tế dài hạn của mạng internet, đặc biệt với sự gia tăng của các middleboxes Các middleboxes thường can thiệp vào các lớp vận chuyển, khiến lớp ứng dụng trở thành lớp end-to-end đầu tiên, như được minh họa trong hình 1.16.
+ -+ + -+ | Application |< - end-to-end ->| Application | + -+ + -+ | Transport |< - end-to-end ->| Transport | + -+ + -+ + -+ + -+ | Network || Network || Network || Network | + -+ + -+ + -+ + -+ End Host Router Router End Host
Hình 1.15 : cấu trúc internet truyền thống
+ -+ + -+ | Application |< - end-to-end ->| Application | + -+ + -+ + -+ | Transport |< ->| Transport || Transport | + -+ + -+ + -+ + -+ | Network || Network || Network || Network | + -+ + -+ + -+ + -+ Firewall,
End Host Router NAT, or Proxy End Host
Khả năng tương thích mạng yêu cầu việc mở rộng đa đường để duy trì tính tương thích TCP với internet hiện tại, đồng thời cần có các biện pháp để vượt qua các middleboxes phổ biến như tường lửa, NAT và proxy tăng cường hiệu suất.
Yêu cầu này xuất phát từ việc nhận thức rằng middleboxes có thể gây tắc nghẽn trong quá trình truyền tải dữ liệu Điều này không chỉ liên quan đến TCP hay UDP mà còn hạn chế Multipath TCP, khiến nó hoạt động giống như TCP không dây Để đảm bảo tính liên tục trong giao tiếp end-to-end, chúng ta cần Multipath TCP nhằm đảm bảo chia sẻ số phận mà không phải giả định về hành vi của middlebox.
Khả năng tương thích mạng cần được duy trì, đảm bảo rằng Multipath TCP có thể quay trở lại TCP thông thường nếu không đạt được sự tương thích cho multipath mở rộng trên một đường dẫn.
Các thay đổi cần thiết để hỗ trợ multipath TCP chủ yếu diễn ra ở lớp giao vận, mặc dù cần một số hiểu biết về lớp mạng Multipath TCP có khả năng hoạt động đồng thời với cả IPv4 và IPv6, cho phép một kết nối có thể sử dụng song song hai loại mạng này.
1.2.3.2.3 T ươ ng thích v ớ i các m ạ ng ng ườ i dùng khác
Để đảm bảo khả năng tương thích giữa mạng và ứng dụng, kiến trúc cần kích hoạt tính năng luồng Multipath TCP, cho phép coexist với luồng single-path TCP Điều này giúp cạnh tranh băng thông một cách hợp lý, không quá mạnh mẽ nhưng cũng không quá rụt rè, trừ khi có yêu cầu ưu tiên thấp từ ứng dụng, như trường hợp với LEDBAT Việc sử dụng đa đường phải được thực hiện một cách cẩn thận để không gây tổn hại cho người dùng đang sử dụng single-path TCP trong các tình huống tắc nghẽn chia sẻ.
Kiến trúc cơ bản của Multipath TCP 32
Chúng tôi giới thiệu một kiến trúc vận tải hiệu quả nhằm hỗ trợ mục tiêu của Multipath TCP Mô hình internet mới này được phát triển dựa trên các ý tưởng đã được đề xuất trong Tng (“Transport next-generation”), tuy nhiên, nó không phải là cấu trúc duy nhất có khả năng hỗ trợ multipath.
Tng kết hợp từ nhiều nghiên cứu giao vận trước đây và phát triển thực tế, cung cấp một điểm khởi đầu mạnh mẽ để xem xét kiến trúc internet hiện tại Điều này giúp định hình thiết kế cho bất kỳ giao vận Internet hoặc giao vận mở rộng nào.
Hình 1.17:phân hóa của chức năng giao vận.
Các lớp giao vận được chia thành hai loại: "định hướng ứng dụng" và "định hướng mạng" Lớp định hướng ứng dụng tập trung vào việc điều khiển và bảo vệ ứng dụng truyền thông end-to-end, trong khi lớp định hướng mạng thực hiện các chức năng như nhận dạng thiết bị đầu cuối và điều khiển tắc nghẽn Lớp định hướng mạng, mặc dù truyền thống nằm ở bên ngoài lớp giao vận end-to-end, đã trở thành mối quan tâm lớn của nhà khai thác mạng, với các middlebox triển khai chính sách sử dụng mạng và tối ưu hóa truyền thông Hình 1.18 minh họa sự tương tác của middlebox với các lớp khác nhau trong mô hình phân hóa này, cho thấy định hướng ứng dụng hoạt động end-to-end, trong khi định hướng mạng hoạt động theo từng đoạn và có thể bị xen kẽ bởi middlebox.
+ -+ + -+ | Application |< - end-to-end ->| Application | + -+ + -+ | Semantic |< - end-to-end ->| Semantic | + -+ + -+ + -+ + -+ |Flow+Endpoint||Flow+Endpoint||Flow+Endpoint||Flow+Endpoint| + -+ + -+ + -+ + -+ | Network || Network || Network || Network | + -+ + -+ + -+ + -+ Firewall Performance
End Host or NAT Enhancing Proxy End Host
Hình 1.18:middlebox trong model internet mới.
Kiến trúc MPTCP sau phân hóa của Tng được minh họa trong hình 19, cho thấy khả năng tương thích ứng dụng giống như TCP, cùng với độ tin cậy của dữ liệu MPTCP hoạt động như một lớp Sematic "định hướng ứng dụng", trong khi các thành phần subflow TCP đảm bảo khả năng tương thích mạng bằng cách hoạt động như một luồng TCP trong mạng, được gọi là lớp Flow+Endpoint "định hướng mạng".
+ -+ + -+ | Application | | Application | + -+ + -+ | Semantic | | MPTCP | | -+ -| + - - - + - - - + | Flow+Endpt | Flow+Endpt | | Subflow (TCP) | Subflow (TCP) | + -+ -+ + -+ -+ | Network | Network | | IP | IP | + -+ -+ + -+ -+
Hình 1.19:quan hệ giữa Tng (trái) và MPTCP (phải).
MPTCP, một phần mở rộng của giao thức TCP, đã được thiết kế để tương thích với middlebox, cho phép hoạt động hiệu quả ở hai quy mô Các thành phần của MPTCP hoạt động theo cách end-to-end, trong khi các thành phần TCP vẫn hoạt động theo cơ chế segment-by-segment.
Chức năng phân hóa của MPTCP
Hai phần trước đã trình bày mục tiêu thiết kế Multipath TCP (MPTCP) và phân tích các chức năng của giao thức vận chuyển, giúp hiểu rõ hơn về giải pháp tối ưu Phần này tiếp tục dựa trên phân tích các thành phần chức năng trong thiết kế MPTCP, cho phép tận dụng hiệu quả các kết nối mạng hiện có thông qua việc sử dụng chuẩn phiên TCP.
Subflow cung cấp các phương tiện giao vận cơ bản cho mỗi đường dẫn, giúp duy trì khả năng tương thích mạng MPTCP hoạt động tương thích với TCP, mặc dù cơ chế này độc lập với thông tin thực tế đang chuyển giao, cho phép tiến hóa trong các phiên bản tương lai Hình 20 minh họa kiến trúc lớp của MPTCP.
+ -+ | Application | + -+ + -+ | Application | | MPTCP | + -+ + - - - + - - - + | TCP | | Subflow (TCP) | Subflow (TCP) | + -+ + -+ | IP | | IP | IP | + -+ + -+
Hình 1.20:so sánh chuẩn của TCP và MPTCP
Phần mở rộng MPCTP hoạt động dưới lớp ứng dụng, quản lý nhiều TCP subflow, và thực hiện các chức năng cần thiết để đảm bảo hiệu quả trong việc điều phối dữ liệu.
Quản lý đường dẫn là chức năng quan trọng trong MPTCP, cho phép dò và sử dụng nhiều đường dẫn giữa hai host MPTCP tận dụng sự hiện diện của nhiều địa chỉ IP ở một hoặc cả hai host để tối ưu hóa kết nối Cơ chế quản lý đường dẫn không chỉ báo hiệu địa chỉ thay thế cho host mà còn thiết lập các subflows để gia nhập một kết nối MPTCP hiện có.
Sắp xếp gói (Packet Scheduling) là chức năng chia nhỏ luồng byte nhận từ các ứng dụng thành các segment, truyền tải qua các subflow có sẵn Thiết kế MPTCP tạo ra bản đồ cho việc sử dụng chuỗi dữ liệu, cho phép kết hợp các segment gửi trên các subflow khác nhau tới cấp kết nối chuỗi số Lịch trình gói tin dựa vào thông tin về các đường dẫn hiện có, được quản lý bởi các thành phần quản lý đường dẫn, và sử dụng subflow để truyền tải segment theo hàng đợi Chức năng này cũng đảm nhận việc đặt lại kết nối, nhận các gói tin từ các subflow TCP theo chuỗi dữ liệu đã được chỉ định.
Giao diện subflow trong MPTCP (TCP đa đường) cho phép một thành phần subflow nhận segment từ bộ lập lịch gói tin và truyền chúng qua một đường dẫn xác định, đảm bảo việc phân phối được nhận biết bởi các host MPTCP sử dụng TCP bên dưới để duy trì tính tương thích mạng, với TCP đảm bảo rằng dữ liệu được truyền một cách có trật tự và đáng tin cậy TCP cung cấp số thứ tự riêng cho các segment, giúp phát hiện và truyền lại các gói dữ liệu bị mất trong lớp subflow Khi tiếp nhận, subflow sẽ tập hợp dữ liệu để các bộ lập lịch gói có thể kết nối lại ở mức kết nối, tạo thành một chuỗi dữ liệu hoàn chỉnh.
36 liệu ánh xạ từ các thành phần lập lịch trình gói tin của người gửi cho phép đặt lại toàn bộ bytrstream
Chức năng điều khiển tắc nghẽn nhằm phối hợp kiểm soát tình trạng tắc nghẽn trên các subflow Theo quy định, thuật toán điều khiển tắc nghẽn cần đảm bảo rằng một kết nối MPTCP có khả năng sử dụng nhiều băng thông hơn so với một kết nối TCP đơn tại các nút chia sẻ cổ chai.
Các chức năng trong quản lý mạng hoạt động liên kết chặt chẽ với nhau Quản lý đường dẫn (Path management) phát hiện và khởi tạo nhiều đường dẫn giữa hai host Sau đó, lập lịch trình gói tin (Packet Scheduler) nhận dữ liệu từ các ứng dụng mạng, thực hiện các hoạt động cần thiết như chia dữ liệu thành các segment ở mức liên kết và thêm số thứ tự Dữ liệu được gửi vào subflow, nơi mà số thứ tự và ACKs được thêm vào trước khi chuyển vào mạng Các subflow sẽ sắp xếp lại dữ liệu nếu cần thiết và gửi nó đến thành phần lập lịch trình gói tin Cuối cùng, các thành phần kiểm soát tắc nghẽn hoạt động như một phần của lập lịch trình gói tin để đảm bảo rằng các segment được gửi qua subflow một cách hiệu quả.
Quyết định thiết kế mức cao (High -level)
Trong thiết kế mở rộng cho giao thức TCP, mặc dù có nhiều lựa chọn, nhưng các mục tiêu đã đề cập trước đó đã hạn chế các giải pháp khả thi, dẫn đến ít sự lựa chọn trong nhiều lĩnh vực Bài viết này sẽ phác thảo những lựa chọn thiết kế cấp cao dựa trên cơ sở kiến trúc đã được thảo luận trong mục 1.2.4.
MPTCP sử dụng hai cấp độ không gian trình tự: chuỗi số mức kết nối và chuỗi số cho mỗi subflow Điều này cho phép phân khúc và tập hợp lại dữ liệu ở mức kết nối, đồng thời truyền lại cùng một phần không gian trình tự trên các subflow khác nhau.
Phương pháp thay thế sử dụng chuỗi số mức kết nối đơn, được gửi qua nhiều subflows Tuy nhiên, điều này gặp phải hai vấn đề, trong đó có subflow cá nhân.
Giao thức 37 sẽ hoạt động tương tự như TCP nhưng có những lỗ hổng trong không gian số thứ tự, dẫn đến việc xuất hiện các middlebox không mong muốn như hệ thống phát hiện xâm nhập hoặc proxy trong suốt, gây ảnh hưởng đến khả năng tương thích của mạng Hơn nữa, người gửi sẽ gặp khó khăn trong việc xử lý các gói tin bị lỗi hoặc định tuyến chính xác khi cùng một segment được gửi qua nhiều đường dẫn (multipath), ví dụ như trong trường hợp truyền lại.
Người gửi cần hướng dẫn người nhận cách lắp ráp lại dữ liệu và phân phối cho các ứng dụng Để thực hiện điều này, người nhận phải xác định cách dữ liệu ở cấp độ subflow (bao gồm chuỗi số subflow) ánh xạ tại mức kết nối, tương tự như quá trình Data Sequence Mapping Việc ánh xạ này bao gồm các yếu tố như chuỗi dữ liệu, chuỗi subflow và chiều dài Ví dụ, một số lượng nhất định (chiều dài) của không gian chuỗi subflow (subflow seq) bắt đầu từ một số nhất định sẽ ánh xạ tới không gian chuỗi kết nối, bắt đầu từ việc cung cấp chuỗi số dữ liệu Thông tin này có thể được hình dung từ nhiều nguồn khác nhau.
Một phương pháp để báo hiệu Data sequence Mapping là sử dụng các trường hiện có trong segment TCP, như subflow seqno và chiều dài, kèm theo chuỗi số bổ sung giống như tùy chọn TCP Tuy nhiên, phương pháp này dễ bị tổn thương trước các middlebox có khả năng resegment hoặc tập hợp lại dữ liệu, vì không có quy định rõ ràng cho việc phát triển tùy chọn TCP Nếu một báo hiệu như data seqno và chiều dài được sử dụng, nó vẫn có thể gây ra vấn đề với các middlebox khi chúng kết hợp lại segment mà không hiểu đúng tín hiệu MPTCP, dẫn đến việc không ghi lại chính xác tùy chọn.
Do những vấn đề tiềm năng, quyết định thiết kế trong giao thức MPTCP liên quan đến việc truyền tải dữ liệu subflow đến các host khác cần phải đảm bảo rằng tất cả các phần dữ liệu (bao gồm data seq, subflow seq, và chiều dài) đều được gửi đi Để giảm thiểu overhead, giao thức cho phép việc gửi mapping định kỳ và bao gồm nhiều hơn một segment duy nhất Cần thực hiện thêm các thử nghiệm để xác định sự cân bằng liên quan đến tần suất gửi mapping Trong trường hợp một kết nối sử dụng nhiều hơn một subflow, có thể hoàn toàn loại trừ việc gửi mapping khi data-level và không gian chuỗi subflow-level là như nhau.
1.2.6.2 Đ ộ tin c ậ y và truy ề n l ạ i (reliability and retransmissions)
Tính năng MPTCP thừa nhận mức kết nối (connection-level) cũng như subflow-level , để cung cấp ứng dụng , dịch vụ mạnh mẽ
MPTCP sử dụng data sequence mapping và ACK subflow để xác định thời điểm nhận một segment ở cấp kết nối Việc truyền tải ACK TCP cho subflow được xử lý hoàn toàn ở cấp subflow, nhằm duy trì ngữ nghĩa TCP và kích hoạt truyền lại ở cấp subflow Điều này có ý nghĩa quan trọng trong việc truyền tải end-to-end, vì khi một segment được ACK ở cấp subflow, nó không thể bị loại bỏ khỏi bộ đệm ở cấp kết nối Hơn nữa, khác với chuẩn TCP, một máy thu không thể đơn giản bỏ qua các segment không theo thứ tự nếu cần thiết, như do áp lực bộ nhớ Trong một số trường hợp, có thể mong muốn giảm các segment sau khi đã ACK ở subflow nhưng trước khi phân phối cho ứng dụng, điều này có thể được hỗ trợ bởi ACK ở cấp kết nối.
Sự thừa nhận connection-level có thể cải thiện hiệu suất mạng một cách đáng kể Khi một subflow đi qua proxy, nếu proxy xác nhận một segment bị treo, người gửi sẽ không gửi lại các đoạn bị mất trên subflow khác, dẫn đến việc các kết nối dừng lại dù vẫn có subflow hoạt động Điều này có thể gây khó khăn trong việc xác định nguyên nhân vấn đề, đặc biệt trong trường hợp di chuyển giữa các điểm truy cập không dây với một proxy transport-level Cuối cùng, việc tối ưu hóa xác nhận connection-level có thể được thực hiện thông qua việc truyền đường dẫn ngắn nhất Round Trip Time (RTT), giúp giảm yêu cầu bộ đệm gửi.
Để triển khai giải pháp multipath TCP hiệu quả trên mạng internet công cộng, MPTCP cần thừa nhận rõ ràng cả kết nối cấp độ và cấp độ subflow Việc xác nhận ở cấp độ kết nối chỉ được yêu cầu khi nhận được thông tin về cửa sổ di chuyển phía trước.
MPTCP yêu cầu việc truyền lại phải được thực hiện qua một segment truyền lại trên một subflow khác, nhằm đảm bảo tính toàn vẹn của dữ liệu Đây là một trong những mục tiêu cốt lõi của giao thức này.
39 trong subflow tạm thời hoặc vĩnh viễn, điều này được khởi tạo bởi không gian chuỗi số kép (dual sequence number space)
Lịch trình cho truyền lại có ảnh hưởng lớn đến trải nghiệm người dùng Các đặc điểm kỹ thuật của MPTCP hiện tại cho thấy rằng dữ liệu vượt trội trên subflow đã quá hạn, dẫn đến việc lịch trình lại cho truyền trên các subflow khác nhau Mục tiêu là giảm thiểu sự gián đoạn khi một đường dẫn bị vỡ, sử dụng timeout đầu tiên như chỉ số Thêm vào đó, phiên bản duy trì sẽ áp dụng timeout thứ hai hoặc thứ ba cho cùng một segment.
Thông thường, việc truyền lại nhanh chóng trên một subflow sẽ không kích hoạt truyền lại trên subflow khác, mặc dù điều này có thể mong muốn trong một số trường hợp nhất định để giảm tải yêu cầu bộ đệm nhận Tuy nhiên, trong tất cả các trường hợp với truyền lại trên subflow khác nhau, các segment bị mất vẫn cần được gửi vào đường dẫn mà chúng bị mất Điều này là cần thiết để duy trì tính toàn vẹn của subflow, theo mục tiêu tương thích Bằng cách này, hiệu quả sử dụng các segment bị mất được cải thiện, và sự không rõ ràng này chỉ là một phần của chiến thuật truyền lại tối ưu.
1.2.6.3 B ộ đ ệ m Để đảm bảo phân phát một cách trật tự , MPTCP phải sử dụng một bộ đêm nhận được mức kết nối (connection level), nơi mà các segment được đặt cho đến khi chúng theo thứ tự và có thể đọc bởi các ứng dụng
Trong giao thức single-path TCP, nó thường đươc đề nghị bộ đệm nhận
BDP (Bandwidth-Delay Product) được tính bằng công thức BDP = BW * RTT, trong đó BW là băng thông và RTT là thời gian phản hồi BDP cho phép sắp xếp lại các segment, giúp kết nối duy trì khả năng truyền tải nhanh chóng Khi một segment bị mất, người nhận cần có khả năng lưu trữ dữ liệu trong hơn một RTT để đảm bảo quá trình truyền lại hiệu quả Đối với MPTCP, việc truyền lại phức tạp hơn, với mục tiêu là sự mất mát của một gói tin subflow không ảnh hưởng đến thông lượng của các subflow khác Do đó, người nhận phải có đủ bộ đệm để chứa toàn bộ dữ liệu đến trong khi chờ segment bị mất được truyền lại và đến đích.