2 Chia kết nối

Một phần của tài liệu NGHIÊN cứu ẢNH HƯỞNG của lỗi ĐƯỜNG TRUYỀN lên kết nối INTERNET QUA ĐƯỜNG TRUYỀN vệ TINH (Trang 36 - 63)

Ý tưởng chính của nhóm giải thuật này là chia kết nối thành hai phần riêng biệt. Khi đó, kết nối ban đầu được chia thành hai kết nối thông qua một nốt mạng trung gian. Giải pháp này có phần giống với phương pháp hỗ trợ link layer, chỉ khác là các xử lý được thực hiện ở tầng TCP.

Hình 3.9 Mô hình chia kết nối

3.2.1. Indirect TCP (I-TCP)

I-TCP đề xuất chia kết nối từ một MH đến một thiết bị FH thành hai kết nối riêng biệt: một kết nối giữa MH và một thiết bị định tuyến hỗ trợ di động (mobile support router – MSR) thông qua kết nối không dây và kết nối còn lại giữa MSR đến FH trong mạng có dây. MSR trong trường hợp này tương ứng với một BS, hay nói cách khác là BS có tích hợp MSR. Việc chia kết nối giúp tách biệt hai môi trường truyền dẫn với những đặc tính khác nhau là không dây và có dây. Từ đó, dễ dàng hơn cho việc giải quyết vấn đề từng kết nối một cách độc lập. Ở tầng giao vận (transport), việc chia kết nối mang lại những lợi ích như:

Tách biệt chức năng điều khiển luồng và điều khiển tắc nghẽn trên môi trường không dây với môi trường truyền có dây. Việc chia tách này xuất phát từ sự khác nhau về đặc điểm giữa hai môi trường truyền. Với môi trường có dây, các kết nối ethernet hay ATM cho phép đường truyền nhanh, băng thông lớn và tin cậy trong khi đó, đường truyền không dây chậm và dễ xảy ra lỗi do nhiễu tín hiệu (fading hay tỉ lệ lỗi cao).

Trên phần kết nối qua mạng không dây, cho phép nhận biết chính xác nguyên nhân của các sự kiện mất gói tin như: mất kết nối do lỗi đường truyền, do nút mạng di chuyển hay những đặc điểm khác của kết nối không dây.

I-TCP cho phép BS (có hỗ trợ MSR) quản lý số lượng lớn hơn các kết nối giữa FH và MH. BS có thể đóng vai trò như một proxy đại diện cho MH thực thi các giao thức phức tạp, đơn giản hóa các thao tác cho MH trong trường hợp MH chỉ là các thiết bị đơn giản.

Hình 3.10 Mô hình I-TCP

Khi một MH cần liên lạc với FH sử dụng I-TCP, yêu cầu được gửi đến MSR để để mở kết nối. MSR khi nhận được yêu cầu thiết lập kết nối từ MH, sẽ tạo kết nối với FH tương ứng.

Hình 3.11 BS đóng vai trò như Proxy trong I-TCP

MSR đóng vai trò như một proxy, mở cùng lúc 2 kết nối thông qua hai socket. Khi MH di chuyển, MSR đóng vài trò điều khiển quá trình handoff và chuyển các thông tin sang MSR mới.

Hình 3.12 Quá trình xử lý chuyển vùng (handoff) của I-TCP

Trong ví dụ trên, MH đầu tiên thiết lập kết nối với FH thông qua MSR-1 và di chuyển sang vị trí thuộc vùng phủ sóng của MSR-2. Khi MH yêu cầu kết nối I-TCP với FH trong vùng MSR-1, MSR-1 thiết lập một socket cho MH (MH socket) để quản lý kết nối với MH và socket cho FH (MH socket) để quản lý kết nối với MH. Khi MH di chuyển vào vùng MSR-2, trạng thái kết nối của I-TCP ở MSR-1 được chuyển sang MSR-2. MSR-2 tạo hai socket đáp ứng với kết nối I-TCP với cùng tham số mà MSR-1 đã thiết lập. Khi kết nối các đầu cuối đã được thiết lập thành phần cố định của kết nối (FH) I-TCP không thay đổi khi FH di chuyển, do đó không cần phải thực hiện kết nối lại với MSR mới. Điều này đảm bảo kết nối TCP hoàn toàn trong suốt với FH.

Giải pháp chia đôi kết nối của I-TCP là làm mất đi ngữ nghĩa end-to-end của TCP, nghĩa là, thực thể gửi gói tin biên nhận có thể không phải là thực thể nhận TCP (ở đầu thu). Hầu hết các ứng dụng sử dụng TCP để truyền dữ liệu như ftp hay một số ứng dụng khác đều có cơ chế khôi phục khi lỗi. Tuy nhiên đối với I-TCP, các ứng dụng không thể thực hiện chức năng trên một cách hiệu quả do không thật sự biết dữ liệu đã truyền đến đích hay chưa. Đồng thời I-TCP không có cơ chế nào cảnh báo lên tầng ứng dụng. Do đó, các ứng dụng dựa trên I-TCP phụ thuộc nhiều vào MSR cũng như kết nối giữa MSR và MH.

Quá trình handoff được thực hiện như sau:[6]

2. Tiến trình mhmicp thiết lập MSR mới thành bộ định tuyến mặc định và gửi thông điệp chào (greeting) đến MSR chứa các kết nối I-TCP hiện tại và địa chỉ của MSR cũ (MSR-1).

3. Tiến trình msrmicp ở MSR-2 gửi xác nhận cho thông điệp greeting từ MH (grack) 4. Tiến trình msrmicp (cần chọn chỗ nào thích hợp giải thích từ viết tắt này và ý

nghĩa của vấn đề liên quan) tại MSR-2 gửi thông điệp “MHIn” tới I-TCP daemon cục bộ chứa danh sách của các kết nối I-TCP nhận được từ MH

5. I-TCP deamon thiết lập socket cho cả kết nối trên mạng không dây và mạng có dây và chuẩn bị yêu cầu I-TCP handoff cho MSR-1. Deamon gửi ACK đến msrmicp. 6. Msrmicp gửi một gửi con trỏ (forwarding pointer) đến MSR-1, thông báo cho

MSR-1 biết MSR nào sẽ quản lý MH 7. Msrmicp tại MSR-1 xác nhận (ACK)

8. Msrmicp tại MSR-1 gửi thông điệp MHOut đến deamon của nó với địa chỉ của MH đã di chuyển ra ngoài để thông báo MH đã di chuyển ra ngoài.

9. Khi nhận thông điệp MHOut, I-TCP deamon đóng băng tất cả các kết nối liên quan tới MH. Đồng thời gửi thông điệp yêu cầu handoff đến deamon của MSR-2 để đảm bảo rằng đã sẵn sàng và gửi trạng thái của các kết nối I-TCP sang MSR-2 (MHState)

1. I-TCP deamon tại MSR-2 nhận trạng thái kết nối đồng thời khởi động lại từng kết nối. Sau đó, gửi ACK cho MSR-1 thông báo hoàn tất quá trình handoff (Ack).

Hình 3.13 Các bước thực hiện trong quá trình handoff của I-TCP

3.2.2. Kết luận

Việc chia kết nối mang lại nhiều lợi ích như tránh mất dữ liệu trong quá trình handover (hay handoff); Đồng thời, giúp giảm lượng dữ liệu bị mất trong quá trình truyền và tăng hiệu quả của kết nối như đã trình bày ở trên. Tuy nhiên, việc chia kết nối cũng mang lại những bất cập. Thứ nhất, tất cả các dữ liệu phải đi qua cùng một BS. Thứ hai, TCP header phải đọc được bởi BS (MSR), do đó, với các kênh truyền sử dụng các cơ chế bảo mật như IPSec, I-TCP không thể hoạt động. Ngoài ra, I-TCP không còn mang đúng ý nghĩa là kết nối end-to-end. I-TCP thích hợp với WLAN có sử dụng Mobile IP.

3.3. Cơ chế cảnh báo tường minh EN (Explicit Nofitication)

TCP thông thường luôn cho rằng việc mất dữ liệu trên đường truyền là do tắc nghẽn trên mạng. Điều này không phù hợp khi áp dụng cho mạng không dây. Các cơ chế EN được phát triển với mục đích cho phép nguồn phát TCP phân biệt được nguyên nhân thật sự của việc mất dữ liệu. Ý tưởng chính của hướng tiếp cận này là gửi các thông báo trên đường truyền để thông báo cho nguồn phát biết việc mất dữ liệu do lỗi trên đường truyền không dây.

3.3.1. ICMP Message

Ý tưởng chính của phương pháp này là sử dụng gói ICMP để chuyển tải thông điệp cho biết tình trạng mất gói. Tiêu chí của phương pháp:

Một thông điệp ICMP cho phép TCP phân biệt được mất gói là do lỗi trên đường truyền không dây hay do nghẽn mạng trên trường truyền có dây. Qui ước rằng, mất gói trên đường truyền không dây hoàn toàn là do lỗi đường truyền và mất gói trên mạng có dây là do nghẽn mạng.

Thông điệp ICMP có thể giúp TCP tránh được xung đột giữa các cơ chế truyền lại của tầng liên kết ( link layer) và truyền lại tầng chuyển vận (TCP)

Lượng thông tin tiêu đề nhỏ

Để thực hiện chức năng trên, một loại mới của giao thức ICMP được thiết kế gọi là ICMP-DEFER. Thông điệp ICMP-DEFER được BS gửi khi nỗ lực truyền đầu tiên trên đường truyền không dây không thành công. Điều này đảm bảo trong một khoảng thời gian RTT, TCP sẽ nhận được một ACK khác hoặc một thông điệp ICMP. Nó đảm bảo quá trình truyền lại đầu cuối – đầu cuối không bắt đầu khi tầng liên kết đang thực hiện truyền lại. Nếu cả ACK và ICMP đều không đến đầu phát, cũng đồng nghĩa với việc đang có tình trạng tắc nghẽn. Như vậy, đầu phát có thể nhận diện được tắc nghẽn đường truyền. Thông điệp ICMP đồng thời mang cả thông tin về IP và TCP (tiêu đề). Do đó, đầu phát biết được chính xác gói dữ liệu nào bị mất. ICMP không được truyền lại, lượng tiêu đề được truyền đi thấp là một ưu điểm của phương pháp này.

Khi nhận được thông điệp ICMP-DEFER, TCP ở đầu phát tạm ngưng bộ định thời phát lại gói. Điều này tránh cho TCP khỏi phải xung đột với tầng liên kết trong việc truyền lại. Nếu segment cần phải được truyền lại đồng thời đã từng có ICMP-DEFER của segment đó, việc truyền lại được thực hiện nhưng không giảm cwnd ở đầu phát. Sau một số lần thực hiện truyền lại ở tầng liên kết không thành công, BS gửi thông điệp ICMP- RETRANSMISSION cho đầu phát TCP để thực hiện việc truyền lại đầu cuối – đầu cuối (end-to-end).

Với thông điệp ICMP mới là ICMP-DEFER, và ICMP-RETRANSMISSION, có khả năng đầu cuối không hiểu. Trong trường hợp này, các thông điệp ICMP được bỏ qua, và quá trình truyền được thực hiện như TCP truyền thống.

3.3.2. Phương pháp thông báo mất dữ liệu tường minh ELN (Explicit Loss Notification)

Phương pháp này được sử dụng khi MH là nguồn phát. Nếu dữ liệu mất trên đường truyền không dây, BS gửi một ELN cho MH (đầu phát). Đồng thời BS xem xét tiêu đề TCP và lưu số tuần tự sequence number. Một khoảng trống trong dãy sequence number

được ghi dấu cho biết dữ liệu đã bị mất trên đường không dây từ MH đến BS. Khi xảy ra mất gói, FH như thông thường gửi các dupACKs về cho MH. Khi các dupACKs đi qua BS, BS bật cờ ELN và chuyển tiếp các dupACKs này về MH. MH truyền lại các gói có ELN mà không giảm cửa sổ tắc nghẽn.

3.3.3. Phương pháp đếm syndrome

Phương pháp đếm syndrome được thi bởi BS. Phương pháp này được mở rộng từ phương pháp ELN. BS đếm số lượng gói mà BS chuyển tiếp với từng kết nối. Đồng thời, giá trị bộ đếm này ứng với từng gói được thêm vào tiêu đề TCP như là một thành phần mở rộng. Một syndrome được định nghĩa bởi cặp giá trị (sequence number, giá trị đếm của BS). Từ cặp giá trị này có thể suy ra nguyên nhân mất gói. Nếu xuất hiện một khoảng trống trong chuỗi sequence number hay giá trị đếm, đồng nghĩa với việc có mất dữ liệu xảy ra.

Để thuận tiện trong phát hiện mất gói, syndrome định ra khái niệm khoảng trống G. Các G được tính với từng gói. Gọi:

Trong đó,

seq_num: số tuần tự segment

max_seq_seen : seq_num lớn nhất được ghi nhận

n: khoảng các giữa hai segment dữ liệu nhận được liên tục. Nếu n = 0, không có gói nào bị mất ở khoảng giữa các gói vừa nhận được.

Cặp giá trị (Gn, Gm) cho biết có mất gói hay không và nguyên nhân mất. Gn ứng với sequence number và Gm ứng với bộ đếm của BS. Có ba trường hợp xảy ra

(G0, G0): không xảy ra mất gói

(Gm, Gm): có m gói bị mất và tất cả mất trên đường không dây

(Gn, Gm) với n>m>=0 : có n gói bị mất, trong đó có m gói mất trên đường truyền không dây.

Trong trường hợp có mất gói do đường truyền không dây, ELN được sử dụng bởi đầu thu để báo hiệu cho đầu phát.

3.3.4. Phương pháp ACK thành phần (partial ACK)

Phương pháp này đề xuất việc sử dụng hai loại ACK khác nhau thay vì chỉ sử dụng một loại ACK hiện tại. Hai loại ACK bao gồm ACK xác nhận đầu cuối – đầu cuối (complete ACK – Ac) và một loại ACK dành cho đầu phát – BS (partial ACK – Ap). Trong giải thuật này, kết nối end-to-end được phân làm hai chặng về mặt logic.

Hình 3.14 Mô hình xử lý ACK thành phần

Ac hoạt động như ACK bình thường được sử dụng trong các phiên bản TCP truyền thống. Ap được sử dụng bởi BS gửi đến FH. Nếu không xảy ra mất dữ liệu trên đường truyền, nguồn phát nhận được hai loại ACK: Ap từ BS và Ac từ MH. Nếu chỉ có Ap đến được gửi đến FH, FH xác nhận có mất gói trên đường truyền không dây. Nếu không có ACK về, FH xác nhận mất gói do tắc nghẽn.

3.3.5. Kết luận

Không giống với các phương pháp khác, phương pháp cảnh báo tường minh hoạt động dựa trên sự phối hợp xử lý của cả đầu phát cũng như đầu thu dựa trên thông tin đường truyền. Đầu phát có vai trò phân biệt loại tắc nghẽn từ những thông tin có được từ đầu thu. Điểm thuận lợi của hướng tiếp cận này là thuật giải tương đối đơn giản và độc lập với cơ chế điều khiển TCP (chỉ can thiệp vào cơ chế truyền lại). Đồng thời hướng tiếp cận này cung cấp thuật giải hữu hiệu trong phân biệt loại mất gói. Tuy nhiên, hứớng tiếp cận này không thật sự khả thi. Nguyên nhân là do:

Thông điệp thông báo tường minh về sự mất gói tin trên đường truyền được gửi chung với các gói dữ liệu hoặc thông qua giao thức ICMP. Trên đường truyền có độ tin cậy thấp của môi trường không dây, phương pháp này tỏ ra không hiệu quả vì các gói mang báo hiệu hay ICMP có thể bị mất.

EN đòi hỏi BS phải có khả năng hoạt động ở tầng transport (ngoại trừ ICMP) Trong trường hợp sử dụng giao thức bảo mật IpSec, EN không thể hoạt động

3.4. Phương pháp End to End

Hướng tiếp cận này đi vào cải tiến ngay chính giao thức TCP. Khác với các phương pháp khác như đã trình bày, đòi hỏi những xử lý hỗ trợ ngoài TCP, hoặc đòi hỏi các thiết bị trung gian (BS) phải hỗ trợ hoạt động ở tầng TCP. Đôi khi, những giải pháp hỗ trợ làm mất đi thuộc tính quan trọng của TCP là hoạt động end-to-end. Các giải pháp từ việc cải tiến TCP cho phép TCP giữ nguyên được bản chất end-to-end, tránh những xử lý phức tạp hơn cho mạng, đồng thời hoạt động hiệu quả hơn trong môi trường không dây.

3.4.1. Freeze TCP

Freeze TCP hướng vào hỗ trợ khả năng “di động” và tình trạng “mất sóng” tạm thời cho các thiết bị di động khi đang truyền dữ liệu TCP.

Ý tưởng chung của Freeze TCP là tạm thời “đóng băng” kết nối khi tín hiệu (sóng mang) “không tốt” và chờ cho đến khi tín hiệu “tốt” trở lại thì truyền tiếp. Freeze TCP không đòi hỏi sự hỗ trợ của thiết bị trung gian, nhưng cần sự phối hợp hoạt động của hai đầu cuối trong hoạt động.

Freeze đòi hỏi đầu thu (MH) có trách nhiệm phát hiện và dự đoán khả năng mất kết nối, đồng thời, gửi tín hiệu đến đầu phát để cảnh báo tình huống mất kết nối sắp xảy ra. Khi sắp xảy ra tình trạng mất kết nối, đầu thu cố gắng gửi một số (hay ít nhất là một) ACK về đầu phát đồng thời đính kèm thông tin cửa sổ quảng bá đầu thu bằng không (= 0). Những gói ACK này được gọi là ZWA (zero window advertisement). Tín hiệu này đồng nghĩa với “đóng băng” đầu phát và đầu phát chuyển sang trạng thái “thăm dò cửa đóng” – Zero Window Probe (ZWP). Trong thời kỳ này, cwnd không bị giảm đi. Các gói “thăm dò” sẽ được phát đi (tất cả đều mất) cho đến đi có tín hiệu đáp lại từ phía đầu thu.

Nếu mất kết nối quá lâu, quá trình backoff sẽ làm mất nhiều thời gian cho việc tái kết nối. Nếu đầu thu tái kết nối sau khi nhận được tín hiệu thăm dò từ đầu phát, thì phải chờ đến khi nhận được tín hiệu thăm dò tiếp theo. Để khắc phục trường hợp này, bản sao của ACK sau cùng được gửi dưới dạng 3- dupACKs ngay sau khi đầu thu tái kết nối để kích hoạt việc kết nối ở đầu phát (Triplicate reconection ACK-“ TR-ACKs”).

Freeze TCP cung cấp cơ chế khắc phục tình trạng mất kết nối tạm thời trong môi trường

Một phần của tài liệu NGHIÊN cứu ẢNH HƯỞNG của lỗi ĐƯỜNG TRUYỀN lên kết nối INTERNET QUA ĐƯỜNG TRUYỀN vệ TINH (Trang 36 - 63)