Top Banner
Phương pháp mã hóa mạng không dây với phép toán XOR Nhóm 12 : TTM – K53 Phùng Vũ Nhật Duy Đỗ Văn Kiên Cao Kỷ Tùng Cao Hà Vĩnh
38

XOR Coding in wireless network

Apr 16, 2015

Download

Documents

Dzuy Phung

Next Generation Network
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: XOR Coding in wireless network

Phương pháp mã hóa mạng không dây với phép toán XOR

Nhóm 12 : TTM – K53

Phùng Vũ Nhật Duy

Đỗ Văn Kiên

Cao Kỷ Tùng

Cao Hà Vĩnh

Page 2: XOR Coding in wireless network

Nội dung

• Đặt vấn đề

• Kiến trúc COPE

• Coding Gain

• Thiết kế

• Thực hiện

• Thí nghiệm

• Kết luận

Page 3: XOR Coding in wireless network

I. Đặt vấn đề

• Mạng không dây

– Vai trò quan trọng

– Bị giới hạn thông lượng

– Khó mở rộng với mạng lớn

• Vấn đề: Tăng thông lượng mạng không dây !

Đề xuất kiến trúc COPE

Page 4: XOR Coding in wireless network

II. Kiến trúc COPE

• Nhằm tăng thông lượng mạng không dây

• Tầng mã hóa giữa tầng IP và MAC

– Xác định cơ hội mã hóa

– Khả năng chuyển tiếp nhiều gói tin trong 1 phiên truyền

– Phép XOR các gói tin

Page 5: XOR Coding in wireless network

• Cách hoạt động

– Router thực hiện phép XOR các bản tin nhận được bản tin mới

– Quảng bá gói tin này tới các máy trạm

– Bản tin ban đầu XOR Bản tin nhận đc Bản tin cần nhận

Page 6: XOR Coding in wireless network

• Ví dụ

Page 7: XOR Coding in wireless network

• COPE được thiết kế dựa trên 2 giả định

– Loại bỏ giả thiết point-to-point , hoạt động với kỹ thuật broadcast

– COPE thực thi mã hóa mạng

• COPE gồm 3 kỹ thuật chính

– Lắng nghe khi có cơ hội

– Mã hóa khi có cơ hội

– Lắng nghe trạng thái hàng xóm

Page 8: XOR Coding in wireless network

Lắng nghe khi có cơ hội

• Các node mạng được trang bị ăng-ten đẳng hướng

• COPE thiết lập các node mạng ở trạng thái hỗn độn

– Lắng nghe, ghi nhận mọi phiên truyền thông trong mạng không dây

– Lưu trữ các gói tin nghe được với một khoảng thời gian T nhất định ( mặc định 0.5s)

• Mỗi node quảng bá “báo cáo” cho các node hàng xóm (đang chứa các gói tin nào)

Page 9: XOR Coding in wireless network

Mã hóa khi có cơ hội

• Node mạng chọn cách mã hóa sao cho

– Tối đa số lượng gói tin được mã hóa

– Đảm bảo next-hop có thể giải mã được gói tin cần truyền đến mình

• Ví dụ : 4 node A, B, C, D

– D cần truyền các gói tin đến A, B, C

Page 10: XOR Coding in wireless network

Màu và hướng mũi tên xác định gói tin cần truyền và địa chỉ đích của nó

Có 3 cách mã hóa

Page 11: XOR Coding in wireless network

Cách 1: Tồi nhất Chỉ có C nhận được gói tin

Page 12: XOR Coding in wireless network

Cách 2: Tốt hơn A và C đã nhận được gói tin

Page 13: XOR Coding in wireless network

Cách 3: Tốt nhất Cả A, B, C đều nhận được gói tin

Page 14: XOR Coding in wireless network

• Luật : Để truyền n gói tin 𝒑𝟏, …, 𝒑𝒏 đến n next-hop, 𝒓𝟏, …, 𝒓𝒏, 1 node có thể XOR n gói tin với nhau chỉ khi mỗi next-hop 𝒓𝒊 𝒄ó (n – 1) gói tin 𝒑𝒋 với j ≠ 𝐢

– Đảm bảo mỗi next-hop có thể giải mã gói tin đã được XOR lấy lại gói tin cần truyền

– Chọn n lớn nhất thỏa mãn luật tăng hiệu quả mã hóa

Page 15: XOR Coding in wireless network

Lắng nghe trạng thái hàng xóm

• Dự đoán gói tin đang ở node nào

– Tính xác suất chuyển tiếp gói tin giữa mỗi cặp node

– Quảng bá xác suất cho toàn bộ các node

– Xác định tuyến đường ngắn nhất được chọn

– Ước lượng xác suất gói tin ở node hàng xóm

• Dự đoán sai

– Không giải mã được

– Truyền lại gói tin, mã hóa với các gói tin mới

Page 16: XOR Coding in wireless network

III. Coding Gain

• Coding Gain (>1)

CG = 𝑺ố 𝒍ượ𝒏𝒈 𝒑𝒉𝒊ê𝒏 𝒕𝒓𝒖𝒚ề𝒏 𝒃ì𝒏𝒉 𝒕𝒉ườ𝒏𝒈

𝑺ố 𝒍ượ𝒏𝒈 𝒑𝒉𝒊ê𝒏 𝒕𝒓𝒖𝒚ề𝒏 𝒅ù𝒏𝒈 𝑪𝑶𝑷𝑬

• VD: CG = 4/3 = 1.33

Page 17: XOR Coding in wireless network

• ĐL 1: Nếu không có sự lắng nghe giữa các node mạng, tỉ số Coding Gain tối đa đạt được là 2

• CG = 𝟐𝑵

𝑵+𝟏

• CG = 𝟒

𝟑 = 1.33

• CG = 𝟖

𝟓 = 1.6

Page 18: XOR Coding in wireless network

• Coding + MAC Gain

– Tầng MAC chia băng thông thành các phần bằng nhau giữa các node

– COPE cho phép các node “bottleneck” thực hiện XOR các gói tin với nhau truyền nhanh hơn tăng thông lượng trong mạng

CMG = 𝑻ố𝒄 độ 𝒕𝒓𝒖𝒚ề𝒏 𝒕ạ𝒊 𝒏𝒐𝒅𝒆 𝒕𝒉ắ𝒕 𝒄ổ 𝒄𝒉𝒂𝒊 (𝒄ó 𝒅ù𝒏𝒈 𝑪𝑶𝑷𝑬)

𝑻ố𝒄 độ 𝒕𝒓𝒖𝒚ề𝒏 𝒕ạ𝒊 𝒏𝒐𝒅𝒆 𝒕𝒉ắ𝒕 𝒄ổ 𝒄𝒉𝒂𝒊 (𝒌𝒉ô𝒏𝒈 𝒅ù𝒏𝒈 𝑪𝑶𝑷𝑬)

Page 19: XOR Coding in wireless network

• ĐL 2: Nếu thiếu sự lắng nghe giữa các node mạng, tỉ số Coding+MAC gain tối đa đạt được là 2

• ĐL 3: Nếu có sự lắng nghe giữa các node mạng, tỉ số Coding+MAC gain là không giới hạn

– Có N nodes

– XOR N node Truyền nhanh hơn N lần

Page 20: XOR Coding in wireless network

IV. Thiết kế

• Các qui định xây dựng thuật toán mã hóa

– Không có gói tin bị delay ~ COPE không chờ các gói tin

có khả năng mã hóa

– Ưu tiên XOR các gói tin có cùng độ dài

– Không mã hóa các gói tin có cùng địa chỉ đích • 2 hàng đợi ảo cho mỗi node hàng xóm

• Ngưỡng : 100 bytes

– Tìm kiếm các gói tin phù hợp để mã hóa

Page 21: XOR Coding in wireless network

• Sắp xếp lại các gói tin: để truyền lại

– Do mất mát

– Không giải mã được

• Đảm bảo node mạng đích có thể giải mã gói tin với xác suất:

𝑃𝐷: Xác suất node mạng đích có thể giải mã ra gói tin cần nhận

𝑃𝑖: Xác suất node mạng có thể nghe được gói tin i

𝑷𝑫 = 𝑷𝟏 𝒙 𝑷𝟐 𝒙 … 𝒙 𝑷𝒏−𝟏

Page 22: XOR Coding in wireless network

• Mỗi node

– Hàng đợi đầu ra (FIFO)

– 2 hàng đợi ảo

• Ngưỡng : 100 bytes

– Bảng băm

• Mã hóa ID của các gói tin

Page 23: XOR Coding in wireless network

Giải mã gói tin

• Mỗi node giữ “packet pool”

– Giữ bản copy của gói tin đã nhận hay truyền

– Bảng băm lưu ID các gói tin

• Khi nhận được gói tin mã hóa

– Tìm kiếm gói tin trong “packet pool”

• Thực hiện XOR (n-1) gói tin với gói tin mã hóa nhận được gói tin cần nhận

Page 24: XOR Coding in wireless network

Vấn đề giả quảng bá

• IEEE 802.11

– Unicast

• Node nhận được gói tin gửi ngay ACK

• Không nhận được ACK cơ chế back-off

– Broadcast

• Không rõ node nào sẽ gửi ACK

• Không có quá trình truyền lại Độ tin cậy kém

• Khả năng xung đột cao Giảm thông lượng

Giải pháp : Giả quảng bá

Page 25: XOR Coding in wireless network

• Pseudo-Broadcast – Dựa trên 802.11 Unicast

• Kế thừa tính tin cậy

• Back-off

• Phát hiện xung đột

– Frame chứa: • Địa chỉ MAC của 1 trong các node đích

• XOR-header: chứa toàn bộ next-hop của gói tin

– Node nhận được gói tin với địa chỉ MAC không phải của nó • Kiểm tra XOR-header xem liệu nó có phải next-hop

– Nếu đúng, xử lí

– Nếu sai, lưu lại trong buffer

Page 26: XOR Coding in wireless network

ACK và Sự truyền lại • Phải có ACK qua từng node mạng

– Do tồn tại sự mất mát

– Nếu không, next-hop đã đủ thông tin để giải mã gói tin ?

COPE dùng cơ chế truyền lại

• Sự truyền lại

– Tránh quá tải , các gói tin mã hóa nhận ACK không đồng thời

– Khi một node gửi gói tin mã hóa

• Lên lịch truyền lại mỗi gói tin nhỏ

– Tại node nhận gói tin

• Lên lịch phản hồi ACK

Page 27: XOR Coding in wireless network

Ngăn ngừa sự sắp xếp lại các gói TCP

• ACK được gửi không đồng thời sắp xếp lại dấu hiệu của tắc nghẽn

• COPE đảm bảo các gói TCP được truyền đúng trật tự (ordering agent)

• Các gói tin nhanh chóng chuyển sang bước tiếp theo, nếu:

– Không phải TCP

– Có địa chỉ IP đích khác địa chỉ node

• Các gói tin khác đều được sắp xếp đúng trật tự (dùng số sequence)

Page 28: XOR Coding in wireless network

V. Thực hiện • Cấu trúc gói tin : COPE header

– ID các gói tin gốc

• ID các gói tin

• Next-hop

– Báo cáo

• Địa chỉ IP nguồn

• Số sequence nhận được từ IP nguồn

• Bit-map của gói tin vừa nghe

– Khối ACK: nhiều bản ghi

• Xác định node hàng xóm

• Last ACK

• Bit-map của các gói tin mã hóa

Page 29: XOR Coding in wireless network

• Các luồng điều khiển

Page 30: XOR Coding in wireless network

VI. Thí nghiệm • 20 node testbed

– Linux

– Card không dây gắn vào một ăng-ten đẳng hướng

• Số lượng hop tối đa là 6, tỉ lệ mất mát 0 – 30%

• 802.11 a (Bit rate = 6 Mbps): Ad-Hoc

• COPE thực thi nhờ công cụ Click

• Giao thức định tuyến Srcr (Thuật toán Djikstra – Tìm đường đi ngắn nhất )

• Mô hình lưu lượng: Công cụ – Udpgen: Tạo sinh dòng UDP

– Ttcp: Tạo sinh dòng TCP

Page 31: XOR Coding in wireless network

• Metrics

– Thông lượng mạng (từ node đầu đến cuối)

– Độ gia tăng thông lượng (có và không có COPE)

• 3 kịch bản thử nghiệm

– COPE trong mạng đơn giản

– COPE trong mạng Ad-hoc

– COPE trong mạng Mesh Access

Page 32: XOR Coding in wireless network

COPE trong mạng đơn giản

• Luồng TCP

– Kết quả chưa gần giống lý thuyết • Mạng Alice & Bob và Mạng X: CG ≈ 1.33

• Mạng chéo : CG ≈ 1.5 < 1.6

– Sai số • Do header của COPE

• Không lắng nghe đầy đủ các gói tin

• Do chênh lệch băng thông giữa các luồng

Coding Gain

Page 33: XOR Coding in wireless network

• Luồng UDP

– Kết quả tốt hơn TCP, giống lý thuyết

• Mạng Alice & Bob và Mạng X: CMG = 2

• Mạng chéo : CMG = 4

– Vẫn có sai số

• Do không lắng nghe đầy đủ gói tin

• Do chênh lệch băng thông giữa các luồng

Coding + MAC Gain

Page 34: XOR Coding in wireless network

COPE trong mạng Ad-Hoc

• Các dòng TCP , node gửi và nhận được chọn ngẫu nhiên

• TCP: không cải thiện đáng kể (2-3%)

• Lặp lại thí nghiệm

– Thay đổi số bản ghi địa chỉ MAC

– Kích hoạt RTS/CTS (Request To Send/ Clear To Send)

– Không áp dụng COPE

• TỈ lệ mất gói : 14%

Page 35: XOR Coding in wireless network

COPE trong mạng Ad-Hoc

• COPE làm việc tốt trong khi không có các node ảo

– TCP: tăng 38%

– UDP: tăng 3-4 lần

Page 36: XOR Coding in wireless network

COPE trong mạng Mesh Access

• Các dòng UDP được sử dụng, tỉ lệ uplink/downlink được thay đổi

• Tỉ lệ uplink tăng, nhiều cơ hội để mã hóa COPE hoạt động tốt hơn

Page 37: XOR Coding in wireless network

VII. Kết luận

• Mã hóa mạng có nhiều lợi ích thực tế

– Khi môi trường không dây bị tắc nghẽn và lưu lượng là các gói UDP ngẫu nhiên, COPE tăng thông lượng lên 3-4 lần

– TCP : tăng 38% (không có node ảo)

– Với mạng Mesh Access, thông lượng tăng 5% - 70% (tùy thuộc tỉ lệ download/upload)

• COPE có thể tích hợp với việc chuyển tiếp và định tuyến gói tin, cũng như tăng độ tin cậy

Page 38: XOR Coding in wireless network

Reference

• XORs in The Air: Practical Wireless Network Coding (Sachi Katti, Hariharan Raul, Wenjun Hu, Dina Katabi, Muriel Medard, Jon Crowcroft )