DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT Chữ viết tắt Tiếng Anh Tiếng việt CS Compressed Sensing Lấy mẫu nén ADC Analog to digital converter Bộ chuyển đổi tương tự - số RLNC Random Linear N
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
Trang 2LUẬN VĂN THẠC SĨ CÔNG NGHỆ ĐIỆN TỬ - VIỄN THÔNG
NGƯỜI HƯỚNG DẪN KHOA HỌC: TS NGUYỄN LINH TRUNG
Trang 3MỤC LỤC
LỜI CAM ĐOAN i
LỜI CẢM ƠN ii
DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT vi
DANH MỤC CÁC HÌNH VẼ vii
TÓM TẮT ix
CHƯƠNG 1: GIỚI THIỆU 1
1.1 Kỹ thuật mã mạng 1
1.2 Kỹ thuật lấy mẫu nén 1
1.3 Mục tiêu nghiên cứu 2
1.4 Cấu trúc của luận văn 3
CHƯƠNG 2: MÃ MẠNG 4
2.1 Giới thiệu 4
2.2 Mã mạng là gì? 5
2.3 Các lợi ích của mã mạng 5
2.3.1 Tăng thông lượng 6
2.3.2 Tiết kiệm tài nguyên mạng không dây 8
2.3.3 Tăng cường tính bảo mật 10
2.3.4 Tính bền (Robustness) 10
2.4 Mã mạng gặp phải những thách thức gì? 11
2.4.1 Phức tạp 11
2.4.2 Bảo mật 11
2.4.3 Tích hợp với cơ sở hạ tầng hiện có 12
Trang 42.5 Kết quả lý thuyết chính của kỹ thuật mã mạng cho mạng phát đa điểm 12
2.5.1 Định lý Luồng cực đại lát cắt cực tiểu (Min – Cut Max – Flow) 12
2.5.2 Định lý chính của mã mạng 13
2.6 Kỹ thuật mã mạng tuyến tính 14
2.7 Kỹ thuật mã mạng tuyến tính ngẫu nhiên 16
CHƯƠNG 3: KẾT HỢP MÃ MẠNG VÀ LẤY MẪU NÉN ĐỂ ĐẠT TRUYỀN THÔNG HIỆU QUẢ TRONG MẠNG CẢM BIẾN KHÔNG DÂY 17
3.1 Lấy mẫu nén 18
3.1.1 Tín hiệu thưa 19
3.1.2 Bài toán lấy mẫu nén 20
3.1.3 Thiết kế ma trận đo 20
3.1.4 Thiết kế thuật toán khôi phục tín hiệu 22
3.2 Mối liên hệ giữa mã mạng tuyến tính ngẫu nhiên và lấy mẫu nén 23
3.3 Thiết kế NetCompress 24
3.3.1 Định dạng gói tin 24
3.3.2 Quá trình mã hóa 26
3.3.3 Quá trình giải mã 30
3.4 Kết luận 30
CHƯƠNG 4: PHẦN MỀM MÔ PHỎNG NECO 31
4.1 Giới thiệu chung 31
4.2 Các tính năng và cách dùng 31
4.2.1 Tính năng người dùng, giao diện và đầu ra 32
4.2.2 Phát triển các mô đun mở rộng 33
4.2.3 Các số liệu thống kê 34
4.3 Cấu trúc của phần mềm mô phỏng 34
Trang 54.3.1 Đồ thị 34
4.3.2 Tóm tắt mạng và giao thức 34
4.4 Hướng phát triển 35
4.4.1 Ngôn ngữ 35
4.4.2 Thư viện 35
4.4.3 Giấy phép và khả năng mở rộng 36
4.5 Thực hiện mô phỏng 37
4.5.1 Core 37
4.5.2 Giao diện người dùng 39
4.6 Cách thức mở rộng 40
4.6.1 Tập tin XML để tải các mô đun mở rộng 40
4.6.2 Thiết lập giao thức mạng mới 41
4.6.3 Thiết lập các giao thức định tuyến mới 42
4.6.4 Thiết lập các kiểu liên kết mới 42
4.6.5 Thiết lập các kiểu gói tin mới 43
4.7 Kết luận 44
CHƯƠNG 5: KẾT LUẬN 46
TÀI LIỆU THAM KHẢO 48
Trang 6
DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT
Chữ viết tắt Tiếng Anh Tiếng việt
CS Compressed Sensing Lấy mẫu nén
ADC Analog to digital converter Bộ chuyển đổi tương tự - số
RLNC Random Linear Network
Coding
Mã mạng tuyến tính ngẫu nhiên
DSP Digital signal processing Xử lý tín hiệu số
GUI Graphical User Interface Giao diện người dùng
RIP Restricted isometry property Thuộc tính cùng kích thước được
thu hẹp WSN Wireless Sensor Network Mạng cảm biến không dây
Trang 7DANH MỤC CÁC HÌNH VẼ
Hình 2.1: Kết nối mã mạng với những lĩnh vực khác [5] 5
Hình 2.2: Mạng cánh bướm [30] 6
Hình 2.3: Mạng cánh bướm với 2 nguồn và 2 đích [30] 7
Hình 2.4: Mạng cánh bướm không dây [30] 8
Hình 2.5: Mạng cánh bướm không dây sửa đổi [30] 8
Hình 2.6: Nút A và C chuyển tiếp thông tin thông qua relay B (a) Không sử dụng mã mạng, (b) sử dụng mã mạng Phương pháp mã mạng sử dụng một đường phát đa điểm [5] 9
Hình 2.7: Trộn thông tin để tạo ra cách bảo vệ tự nhiên chống lại nghe trộm [5] 10
Hình 2.8: Một kết nối phát đơn đường có khả năng thông qua của các cạnh bằng 1 [5] 12
Hình 2.9: Ví dụ về mã mạng tuyến tính ngẫu nhiên phân bố [20] 14
Hình 3.1: Cấu trúc của mạng cảm biến không dây 17
Hình 3.2: (a) Quá trình đo lấy mẫu nén với ma trận đo ngẫu nhiên Gaussian và ma trận truyền cosin rời rạc (DCT) Véc tơ hệ số rời rạc s với K=4; (b) Quá trình đo với Có 4 cột tương ứng với các hệ số s ikhác 0; véc tơ đo y là sự kết hợp tuyến tính của các cột này [6] 21
Hình 3.3 : (a) Không gian con chứa 2 véc tơ rải rác trongR3 nằm gần với trục tọa độ; (b) Trực quan hóa tối thiểu l2 (5) tìm điểm tiếp xúc không rải rác ˆs giữa bóng l2và ma trận đo chuyển đổi trong không gian rỗng; (c) Trực quan hóa tối thiểu l1 tìm điểm tiếp xúc rải rác ˆs với xác suất cao [6] 23
Hình 3.4: Định dạng gói tin [8] 25
Hình 3.5: Ví dụ hợp nhất 2 gói [8] 27
Hình 3.6: (a) Định dạng gói nút cảm biến 3; (b) Định dạng gói nút cảm biến 4 29
Trang 8Hình 3.7: Sát nhập hai gói tin 30
Hình 4.1: Giao diện người dùng đồ họa của NECO [28] 33
Hình 4.2: Cấu trúc XML để tải và lưu các tham số mô phỏng trong NECO [32] 33
Hình 4.3: Các lớp đơn giản để kiểm tra giao thức mã mạng [32] 35
Hình 4.4: Các mô đun chính của NECO [28] 36
Hình 4.5: Bộ lập lịch [31] 38
Hình 4.6: Các dòng chảy của bản tin trong mẫu mới của NECO [31] 39
Hình 4.7: Cú pháp XML để tải và lưu các thông số mô phỏng với NECO [32] 40
Hình 4.8: Thiết lập một giao thức mạng mới [32] 42
Hình 4.9: Thiết lập một giao thức định tuyến mới [32] 42
Hình 4.10: Thiết lập một kiểu liên kết mới [32] 43
Hình 4.11: Thiết lập một kiểu gói tin mới [32] 43
Hình 4.12: Thiết lập một kiểu đồ thị mới [32] 44
Trang 9
TÓM TẮT
Các mạng truyền thông được thiết kế để chuyển thông tin từ một hay nhiều nút mạng nguồn đến một hay nhiều nút mạng đích Trong một mạng viễn thông, vấn đề ta quan tâm là làm thế nào để truyền thông tin hiệu quả Kỹ thuật mã mạng là một kỹ thuật truyền tin mới cho phép các nút mạng trung gian mã hóa thông tin nó nhận được trước khi gửi đi Mã mạng có nhiều ưu điểm nổi bật như cho phép tăng hiệu suất sử dụng băng thông, tăng độ bảo mật, giảm thời gian trễ và ảnh hưởng của lỗi trên đường truyền, v.v Một trong những kỹ thuật mã mạng được nhiều người quan tâm là kỹ thuật
mã mạng tuyến tính ngẫu nhiên, được đề xuất bởi Ho và đồng nghiệp năm 2006
Lấy mẫu nén là một phương pháp hiện đại được đề xuất năm 2004 bởi Candes và Dohono, cho phép lấy mẫu một tín hiệu có tính chất thưa hoặc có thể nén được với số mẫu ít hơn nhiều so với số mẫu lấy theo phương pháp truyền thống Nyquist Hiện nay,
kỹ thuật lấy mẫu nén đang được rất nhiều người quan tâm do có những ưu điểm nổi bật như: giảm dung lượng bộ nhớ, tăng tốc độ lấy mẫu của các bộ ADC, giảm tiêu hao năng lượng trong các bộ cảm biến, v.v Trong kỹ thuật lấy mẫu nén, hệ thống thu thập tín hiệu được thiết kế tuyến tính ngẫu nhiên, phần nào tương tự như kỹ thuật mã mạng
Vì thế, việc áp dụng kỹ thuật lấy mẫu nén trong kỹ thuật mã mạng tuyến tính ngẫu nhiên được quan tâm trong luận văn này
Luận văn tập trung đi sâu vào tìm hiểu kỹ thuật mã mạng, kỹ thuật mã mạng tuyến tính ngẫu nhiên, kỹ thuật lấy mẫu nén và kỹ thuật lấy mẫu nén có cấu trúc nhằm đào sâu áp dụng của kỹ thuật lấy mẫu nén và lấy mẫu nén có cấu trúc cho kỹ thuật mã mạng, với mục tiêu áp dụng kỹ thuật mã mạng có cấu trúc nhằm giảm thiểu độ phức tạp tính toán tại các nút mạng
Sau đó, luận văn trình bày phần mềm mô phỏng NECO là một phần mềm mô phỏng mới, hiệu năng cao để đánh giá kỹ thuật mã mạng dựa trên các giao thức
Trang 10CHƯƠNG 1 GIỚI THIỆU
Mã mạng (network coding) được đề xuất năm 2000 bởi Ahslwede và đồng
nghiệp [1] và đang càng lúc càng thu hút nhiều nhà nghiên cứu quan tâm Bằng việc mã hóa tại các nút mạng trung gian, kỹ thuật mã mạng tác động lớn đến thế hệ mới của mạng truyền thông bởi nhiều lợi ích tiềm năng của nó như: làm tăng thông lượng, tăng tính bảo mật của mạng và tiết kiệm tài nguyên mạng không dây Hiện nay, mã mạng đã trở thành một lĩnh vực nghiên cứu lớn trong lý thuyết thông tin và được xem là có khả năng cách mạng hóa hiểu biết của chúng ta về mạng truyền thông cũng như phương thức điều hành và quản lý mạng Nhiều nghiên cứu về mã mạng đã tập trung xung quanh một dạng mã mạng đặc biệt, đó là mã mạng tuyến tính ngẫu nhiên (RLNC – Random linear network coding) RLNC, được Tracy Ho và đồng nghiệp giới thiệu trong công trình “A Random Linear Network Coding approach to Multicast” [3], là một phương pháp mã hóa đơn giản, ngẫu nhiên duy trì “một véc tơ các hệ số cho các gói tin khác nhau từ nguồn và được cập nhật bởi mỗi nút mã hóa” Nói cách khác, RLNC yêu cầu các gói tin truyền qua mạng phải đi kèm với một số thông tin bổ sun g (ở đây chính
là một véc tơ các hệ số) Trong các mạng truyền thông ngày nay, một loại mạng được sử dụng rộng rãi, dễ dàng chứa các thông tin thêm đó chính là mạng gói Với các gói dữ liệu, thông tin thêm có thể được đặt trong tiêu đề gói tin Ví dụ như số thứ tự thường được đặt trong tiêu đề gói tin để theo dõi đơn đặt hàng
1.2 Kỹ thuật lấy mẫu nén
Trang 11Chúng ta đang sống trong một thế giới kỹ thuật số Viễn thông, giải trí, thiết bị y
tế, tiện ích, kinh doanh - tất cả đều xoay quanh phương tiện truyền thông kỹ thuật số Thiết bị chuyển đổi tương tự - số biến đổi các thông tin vật lý thành một chuỗi các con
số Về cơ bản tất cả các bộ chuyển đổi tương tự - số cho đến nay đều tuân theo định lý lấy mẫu Shannon-Nyquist Định lý này yêu cầu tỷ lệ lấy mẫu ít nhất là gấp đôi băng thông của tín hiệu Nguyên lý này là cơ sở của các ứng dụng xử lý tín hiệu số như âm thanh, video, radio, ứng dụng radar, thiết bị y tế, v.v Khi công nghệ phát triển, do đó yêu cầu về số lượng dữ liệu ngày càng tăng, gây áp lực lên cả thiết bị chuyển đổi tương
tự - số, xử lý tín hiệu số và phương tiện lưu trữ thông tin Chính vì vậy tỷ lệ lấy mẫu theo định lý Shannon-Nyquist đã gặp phải những thách thức lớn cả về phần cứng, lưu trữ và xử lý tín hiệu số
Lấy mẫu nén (compressed sensing) được đề xuất bởi Candes và Dohono năm
2004 [16, 17], cho phép lấy mẫu một tín hiệu có tính chất thưa hoặc có thể nén được với
số mẫu ít hơn nhiều so với số mẫu lấy theo phương pháp truyền thống Nyquist Lấy mẫu nén đang được nhiều người quan tâm vì nó có những ưu điểm lớn như: giảm dung lượng bộ nhớ, giảm tốc độ lấy mẫu của các bộ chuyển đổi tương tự - số, giảm thiểu tiêu hao năng lượng trong các bộ cảm biến Từ những ưu điểm này, kỹ thuật lấy mẫu nén đang được áp dụng cho kỹ thuật mã mạng với mục tiêu truyền thông hiệu quả trong mạng không dây
1.3 Mục tiêu nghiên cứu
Luận văn này có mục đích tìm hiểu kỹ thuật mã mạng, mã mạng tuyến tính ngẫu nhiên, kỹ thuật lấy mẫu nén nhằm đào sâu áp dụng kỹ thuật lấy mẫu nén cho kỹ thuật
Trang 121.4 Cấu trúc của luận văn
Luận văn được phân bố cụ thể như sau Chương 2 giới thiệu về kỹ thuật mã mạng, các tính năng của nó so với kỹ thuật định tuyến thông thường và cuối cùng là giới thiệu
kỹ thuật mã mạng tuyến tính ngẫu nhiên, làm nền tảng cho việc nghiên cứu áp dụng nó trong mạng cảm biến không dây Chương 3 trình bày áp dụng của kỹ thuật lấy mẫu nén trong mạng cảm biến không dây dựa trên kỹ thuật mã mạng tuyến tính ngẫu nhiên Chương 4 giới thiệu về phần mềm mô phỏng NECO, được thiết kế đặc biệt cho mục
tiêu nghiên cứu kỹ thuật mã mạng Cuối cùng, chương 5 đưa ra một số kết luận của luận
văn
Trang 13Mô hình truyền dữ liệu mới này xuất hiện tại thời điểm chuyển giao thiên niên kỷ,
và ngay lập tức thu hút sự quan tâm rất lớn trong lĩnh vực kỹ thuật điện tử và cộng đồng nghiên cứu khoa học máy tính Mã mạng sử dụng sức mạnh tính toán giá rẻ để làm tăng đáng kể thông lượng mạng Sự quan tâm trong lĩnh vực này vẫn tiếp tục tăng lên khi chúng ta thấy các ứng dụng mới sử dụng những ý tưởng này trong cả lý thuyết và thực
tế của các mạng, và khám phá các kết nối mới với nhiều lĩnh vực (xem Hình 2.1)
Trang 14Hình 2.1: Kết nối mã mạng với những lĩnh vực khác [5]
2.2 Mã mạng là gì?
Trong bài báo về “Network information flow” [1], Ahlswede, Cai, Li, và Yeung đề
xuất mã mạng bằng cách mã hóa, tức là ánh xạ nhân quả tùy ý từ đầu vào của một nút trung gian của mạng đến đầu ra Đây được coi là định nghĩa chung nhất của mã mạng
Một định nghĩa khác về mã mạng là mã hóa tại một nút trong một mạng với các liên kết không có lỗi Định nghĩa phân biệt chức năng của mã mạng với mã hóa kênh cho các liên kết ồn (noisy) Định nghĩa này được sử dụng khá thường xuyên Định nghĩa thứ ba của mã mạng, là mã hóa trong một mạng gói, tức là dữ liệu được chia thành các gói và
mã mạng được áp dụng cho các nội dung của gói tin, hoặc tổng quát hơn mã hóa ở trên lớp vật lý Điều này không giống như lý thuyết thông tin mạng, thường liên quan tới mã hóa ở lớp vật lý
2.3 Các lợi ích của mã mạng
Lợi ích được biết đến nhiều nhất của mã mạng là tăng thông lượng Lợi ích này
đạt được bằng cách truyền gói dữ liệu hiệu quả hơn, ví dụ như truyền nhiều thông tin chỉ bằng ít các gói tin Ví dụ nổi tiếng nhất của lợi ích này được đưa ra bởi Ahlswede và
đồng nghiệp trong [1], thường được gọi là mạng cánh bướm (hình 2.2) trong đó một
nguồn duy nhất phát đa điểm đến hai đích Cả hai đích đều muốn biết đầy đủ các thông tin tại nút nguồn Bằng việc mã hóa tại các nút mạng trung gian, kỹ thuật mã mạng tác động lớn đến thế hệ mới của mạng truyền thông bởi nhiều lợi ích tiềm năng của nó Kỹ
thuật mã mạng còn đem đến một số lợi ích khác như tiết kiệm tài nguyên mạng không
Trang 15dây, tăng độ bảo mật Sau đây, chúng tôi sẽ giải thích rõ hơn các lợi ích của kỹ thuật mã
mạng
2.3.1 Tăng thông lượng
Hình 2.2: Mạng cánh bướm [30]
Hình 2.2 trên đây mô tả một mạng truyền thông được biểu diễn bằng một đồ thị có hướng mà các đỉnh tương ứng với các thiết bị đầu cuối và các cạnh tương ứng với các kênh truyền Trong mạng kết nối đa điểm, một trong các nút trung gian phá vỡ các mô hình định tuyến truyền thống của mạng gói là các nút trung gian chỉ được phép sao chép các gói dữ liệu nhận được đưa ra đầu ra và thực hiện mã hóa hai gói tin nhận được, tạo thành một gói tin mới bằng cách lấy tổng nhị phân (XOR) để tạo thành một gói tin kết quả ở đầu ra Như vậy, nếu nội dung của hai gói tin nhận được là véc tơ x1và x2 thì gói tin ở đầu ra sẽ là x1x2 Đích R1 khôi phục x2 bằng cách lấy tổng XOR của x1và
2
S truyền đến nút đíchR2. Trong thực tế, thông qua cạnh CE, ta chỉ có thể truyền 1 bít trong mỗi khe thời gian Tuy nhiên, muốn đồng thời gửi bít x1để R2nhận và bit x2 để
Trang 16R nhận.Theo truyền thống, luồng thông tin được xử lý như một luồng chất lỏng thông qua đường ống, và các luồng thông tin độc lập được lưu giữ riêng biệt Áp dụng phương pháp này, ta phải đưa ra quyết định cho cạnh CE để gửi bit x1hoặc x2 Nếu chúng ta quyết định gửi bitx1, lúc đóR1sẽ chỉ nhận được x1trong khi R2sẽ nhận được cả hai bít
1
x vàx2
Theo ý tưởng đầu tiên của Ahlswede và đồng nghiệp, mã mạng cho phép các nút trung gian trong mạng có thể xử lý các luồng thông tin đầu vào của chúng thay vì chỉ chuyển tiếp chúng Cụ thể là, trước hết nút C có thể XOR hai bít x1 và x2 để tạo ra một bit thứ ba x3 = x1x2 Sau đó C truyền x3 qua cạnh CE Nút nhận R1 sẽ nhận được {x1, x1x2} và giải mã để thu đượcx2 Cuối cùng, R1đã nhận được cả x1vàx2như mục tiêu của truyền đa điểm Tương tự như vậy, nút nhận R2 nhận được {x2, x1x2} giải
mã để thu được x1 Rõ ràng rằng, thay vì sử dụng 2 khe thời gian để chuyển tin
1
x vàx2như trong mạng truyền thống, C chỉ cần dùng một khe thời gian để truyền x3 Như vậy, mạng có kết hợp kỹ thuật mã mạng cho phép tăng thông lượng
Hình 2.3: Mạng cánh bướm với 2 nguồn và 2 đích [30]
Mã mạng cũng có thể được mở rộng với các mạng không dây Hình 2.4 bản sao không dây của mạng cánh bướm và hình 2.5 là mạng cánh bướm sửa đổi Trong các hình này, các gói tin bắt nguồn từ một nút duy nhất và kết thúc tại nhiều nút
Trang 17Hình 2.4: Mạng cánh bướm không dây [30]
Hình 2.5: Mạng cánh bướm không dây sửa đổi [30]
Trong hình 2.4, mỗi cạnh biểu diễn một liên kết trực tiếp có khả năng truyền một gói dữ liệu tới một hoặc nhiều nút Ta muốn chuyển hai gói tinx1vàx2từ nút nguồn S tới hai nút đích R1 và R2 Trong hình 2.5, mỗi cạnh biểu diễn một liên kết trực tiếp có khả năng truyền một gói dữ liệu tới một hoặc nhiều nút Một gói x1 tại nút nguồn S1 muốn truyền tới nút S2và gói x2tại nút nguồn S2 muốn truyền tới nút S1 Như vậy mã mạnglàm tăng thông lượng khi gói được truyền đi chỉ từ một nút duy nhất tới một nút duy nhất khác (mạng hữu tuyến) và khi chúng được truyền từ một nút duy nhất đến một hoặc nhiều nút khác (mạng không dây)
2.3.2 Tiết kiệm tài nguyên mạng không dây
Trong một môi trường không dây, mã mạng có thể được sử dụng để tạo ra những
Trang 18lợi ích về tuổi thọ pin, băng thông không dây và trễ truyền Xét một mạng ad-hoc không
dây, thiết bị A và C muốn trao đổi các tập tin nhị phânx1vàx2bằng cách sử dụng thiết bị
B là một relay Giả sử thời gian sử dụng đường truyền được chia làm nhiều khung, mỗi
khung được chia thành nhiều khe thời gian (Ts time slot) và một thiết bị có thể phát
hoặc thu một tập tin trong một khe thời gian (truyền thông bán song công) Hình 2.6 bên
trái mô tả phương pháp truyền thống: các nút A và C gửi các tập tin của chúng tới B,
sau đó B sẽ lần lượt chuyển tiếp mỗi tập tin đến các đích tương ứng
(a) (b)
Hình 2.6: Nút A và C chuyển tiếp thông tin thông qua relay
B (a) Không sử dụng mã mạng, (b) sử dụng mã mạng Phương
pháp mã mạng sử dụng một đường phát đa điểm [5]
Phương pháp mã mạng tận dụng lợi ích tự nhiên của các kênh phát sóng không
dây là phát đa điểm để tạo ra các lợi ích về sử dụng nguồn tài nguyên, như minh họa
trên hình 2.6 Đặc biệt, nút C nhận được cả hai tập tin x1 và x2, và thực hiện xor x1 và
2
x tạo ra tập tinx1x2 Sau đó tập tinx1x2này được phát đa điểm tới cả hai nút nhận
Nút A đã cóx1và do đó, có thể giải mã để thu đượcx2 Nút C đã cóx2và có thể giải mã
để thu đượcx1
Phương pháp này tạo ra các lợi ích về sử dụng năng lượng hiệu quả (nút B chỉ
truyền một lần thay vì hai lần), trễ truyền (truyền trong ba khe thời gian thay vì bốn khe
thời gian), băng thông không dây (thời gian sử dụng kênh không dây ngắn hơn), và
Trang 19nhiễu (nếu có các nút không dây khác cố gắng truyền tin trong khu vực lân cận)
2.3.3 Tăng cường tính bảo mật
Việc truyền đi sự kết hợp tuyến tính của các gói tin thay vì dữ liệu chưa được mã hóa tạo ra lợi ích bảo mật đa dạng, chống lại các cuộc tấn công nghe lén Vì vậy, đối với những hệ thống mà chỉ cần chống lại các cuộc tấn công đơn giản như vậy không cần cơ chế bảo mật bổ sung
Giả sử nút A gửi thông tin tới nút D thông qua hai đường truyền ABD và ACD
trong hình 2.7 Giả sử, một người (N) có thể nghe trộm trên một đường, và không có
quyền truy cập trên đường bổ sung Nếu các ký hiệu độc lập x1 và x2 được gửi mà
không mã hóa, N có thể chặn một trong các ký hiệu đó Thay vào đó, ta gửi sự kết hợp
tuyến tính của các ký hiệu đó, thông qua một số trường hữu hạn, trên các đường truyền
khác nhau, N sẽ không thể giải mã bất kỳ phần nào của dữ liệu Ví dụ, nếu N thu được
gói tin đã được mã hóa x1x2, xác suất đoán chính xác x1 hoặc x2 chỉ bằng 50%, giống như đoán ngẫu nhiên
Hình 2.7: Trộn thông tin để tạo ra cách bảo vệ tự nhiên chống lại nghe trộm [5]
2.3.4 Tính bền (Robustness)
Kỹ thuật mã mạng có tính bền, khi tô-pô mạng bị thay đổi hay khi một số liên kết mạng không hoạt động, do mỗi gói tin được mã hóa chứa thông tin của nhiều gói tin khác nên nếu ta nhận được một số lượng đủ lớn gói tin mã hóa thì ta có thể thu lại thông tin đã được gửi đi
Bên cạnh khả năng chống lại tổn thất gói ngẫu nhiên, mã mạng cũng hữu ích cho việc chống lại các liên kết lỗi non-ergodic Đó chính là bảo vệ duy trì đường truyền, ở
Trang 20đây, một luồng chính và một luồng dự phòng được truyền cho mỗi kết nối, cho phép khôi phục các liên kết thất bại rất nhanh, do không cần phải định tuyến lại Tuy nhiên, phương pháp này làm tăng gấp đôi thông lượng mạng Bằng cách cho phép chia sẻ tài nguyên mạng giữa các luồng khác nhau, mã mạng có thể làm tăng cách sử dụng tài nguyên
2.4.2 Bảo mật
Trong truyền thông mạng, bảo mật là một yêu cầu quan trọng để chống lại các cuộc tấn công tinh vi Do đó, việc triển khai mã mạng trong mạng đó cần phải đưa vào các cơ chế cho phép mạng thực hiện mã hóa mà không ảnh hưởng đến tính xác thực của
dữ liệu
Xét về mặt bảo mật, mã mạng có thể đem lại cả lợi ích và những điều bất lợi Xét mạng cánh bướm (hình 2.2) Giả sử một kẻ thù (N) nhận được được chỉ x1x2gói Với chỉ gói x1x2, N không có thể có được hoặc x1 hay x2 Như vậy ta có một cơ chế truyền thông bảo mật Trong trường hợp này, mã mạng đưa ra lợi ích là tăng độ bảo mật của thông tin Mặt khác, ta giả sử nút 3 là một nút có hại không gửi x1x2mà là một gói tin giả mạo tương tự như x1x2 Do các gói tin được mã hóa chứ không phải là định tuyến nên rất khó phát hiện gói tin đó là giả mạo hay là gói tin thật Trong trường hợp này, mã mạng dẫn đến mặt hạn chế về bảo mật
Trang 212.4.3 Tích hợp với cơ sở hạ tầng hiện có
Khi mạng truyền thông phát triển thành những cơ sở hạ tầng ở khắp mọi nơi, một nhiệm vụ khó khăn là kết hợp các công nghệ mới nổi như mã mạng với kiến trúc mạng hiện có Lý tưởng nhất, ta muốn sử dụng những lợi ích mà mã mạng đem lại mà không làm thay đổi đáng kể trong các thiết bị và phần mềm Một câu hỏi mở là làm thế nào mã mạng có thể được tích hợp trong các giao thức mạng hiện tại? Hiện nay vấn đề này cũng
là một lĩnh vực cần nghiên cứu
2.5 Kết quả lý thuyết chính của kỹ thuật mã mạng cho mạng phát đa điểm
2.5.1 Định lý Luồng cực đại lát cắt cực tiểu (Min – Cut Max – Flow)
Cho G = (V, E) là một đồ thị (mạng) với tập các đỉnh V và tập các cạnh E⊂V×V Giả sử rằng các cạnh có khả năng thông qua (capacity) là đơn vị và cho phép các cạnh
là tương đương nhau Xét một nút S ⊂ V muốn truyền thông tin tới nút R ⊂ V Một
lát cắt giữa S và R là một tập các cạnh của đồ thị phân tách S và R thành 2 tập rời nhau
Giá trị của lát cắt là tổng các khả năng thông qua của các cạnh trong lát cắt Lát cắt có
giá trị nhỏ nhất gọi là lát cắt cực tiểu (min - cut)
Giả sử dung năng của các cạnh là 1 thì giá trị của một lát cắt bằng với số các cạnh trong lát cắt Như vậy thuật ngữ min – cut tương đương với tổng số các cạnh trong lát cắt Giả sử như mạng được cấu hình như trong hình 2.8, như vậy tồn tại 3 đường đi phân tách giữa S và R mang ba ký hiệu x1, x2và x3
Hình 2.8: Một kết nối phát đơn đường có khả năng thông qua của các cạnh bằng
1 [5]
Trang 22Định lý 1 [5]: “Xét một đồ thị G = (V, E) với các cạnh có khả năng thông qua đơn
vị, đỉnh phát là S, đỉnh thu là R Nếu lát cắt nhỏ nhất giữa đỉnh phát S và đỉnh thu R là h thì thông tin có thể truyền từ S tới R với tốc độ lớn nhất là h Tương đương, tồn tại chính xác h đường đi phân tách giữa đỉnh phát và đỉnh thu”
Chúng ta nói, dung năng của các cạnh bằng đơn vị có nghĩa là: giả sử mô hình có các cạnh có dung năng bằng 1, trong mỗi khe thời gian, có thể truyền tin cậy một ký hiệu từ một số trường hữu hạn F q có kích thước q Do đó, mỗi nguồn có tốc độ đơn vị S i
phát ra σ i , 1 <i <h, đây cũng là một phần tử của trường F q
Định lý 2 [5]: “Giả sử một đồ thị có hướng không tuần hoàn G=(V, E) có khả
năng thông qua của các cạnh bằng đơn vị, h nguồn có tốc độ đơn vị được đặt trên cùng đỉnh của đồ thị và N đỉnh thu Giả sử, giá trị của lát cắt cực tiểu tới mỗi đỉnh thu là h
Do đó, tồn tại một sơ đồ phát đa điểm trên một trường hữu hạn đủ lớn F q , trong đó các nút trung gian kết hợp tuyến tính các ký hiệu thông tin đến trên F q , phát thông tin đồng thời từ đỉnh phát tới các đỉnh thu với tốc độ bằng h”
Từ định lý 1, chúng ta biết rằng tồn tại h đường đi phân tách giữa đỉnh phát và mỗi đỉnh thu Vì vậy, nếu bất kỳ đỉnh thu R j nào sử dụng mạng, thông tin từ h đỉnh thu có thể được định tuyến đến R j thông qua một tập h các đường đi Khi nhiều đỉnh thu đồng
thời sử dụng mạng, tập hợp các đường đi có thể chồng lên nhau Do đó, các đỉnh thu sẽ phải chia sẻ các tài nguyên mạng, điều này làm giảm tốc độ truyền dữ liệu Như vậy, theo định lý 2 nếu cho phép các nút trung gian không chỉ chuyển tiếp dữ liệu mà còn kết hợp các luồng thông tin đến thì mỗi đỉnh thu sẽ nhận được thông tin ở mức tương tự như trường hợp chỉ có duy nhất đỉnh thu đó truy cập các tài nguyên mạng
Trang 23Trong mã mạng, mỗi đỉnh trong mạng có quyền kết hợp các gói đầu vào theo cách tùy ý để gửi ra các liên kết đầu ra Để đơn giản, ta giả sử tất cả các gói đều có cùng kích
thước là m bits, nghĩa là mỗi gói có thể được xem như một phần tử của trường F = 2m
Sự “kết hợp” của các gói của các đầu vào ra một liên kết ra nào đó chẳng qua là một hàm số Khi ta nói q2mđơn giản có nghĩa là mỗi gói tin gửitừ nguồncómbít, với m đơn vị thời gianđược xác định là một khethờigian M bítđược dùng để biểu diễnmột
ký hiệucủa F q và được các nút mạng xử lýsửdụngcác toán tử F q
2.6 Kỹ thuật mã mạng tuyến tính
Cho mạng cóX X1, 2 là các nguồn phát đa điểm đến các nút nhận, và các hệ số ilà các phần tử của một trường hữu hạn, như mô tả trong hình 2.9 Nhãn trên mỗi liên kết biểu diễn quá trình được truyền vào liên kết
Hình 2.9: Ví dụ về mã mạng tuyến tính ngẫu nhiên phân bố [20]
Xét một mạng được biểu diễn bằng một đồ thị có hướng G( , )V , ở đây V là tập
các nút mạng và là tập các liên kết Thông tin có thể được gửi mà không bị nhiễu từ
nút i tới nút j với tất cả ( , )i j Mỗi liên kết lgắn với một số thực không âm c lbiểu diễn dung năng của liên kết đó Các nút i và jđược gọi là nút nguồn và đích tương ứng của liên kết( , )i j Nguồn và đích của một liên kết lđược biểu diễn tương ứng bằngo l( )vàd l( ) Giả sửo l( )d l( ) với mọi l Thông tin truyền trên liên kết l có thể coi là một hàm của thông tin nhận được trước đó tại o l( )
Có r nguồn không nhớ X X1, 2 X rlà các chuỗi nhị phân ngẫu nhiên CácX iđược tạo
Trang 24tại nút a i( ) và phát đa điểm tới tất cả các nútjb i( ), trong đó a: 1, , rV và
X t Y t Z t b t v b t là các giá trị của các biến tương ứng tại
thời điểm t Các phương trình này như với quá trình ngẫu nhiên trong mạng, có thể được
biểu diễn về mặt đại số dưới dạng một biến trễ D
Trang 251 '' , , 0
, ,
1 ' , 0
( ) ( )
u
i l u
i l
u i u
Các hệ số i j, ,f l j, ,b, ,i lcó thể được lựa chọn trong các ma trận r
A= (a i j, )trong trường hợp mạng hở không trễ
(Da i j, )trong trường hợp thông thường có trễ
và B (b, ,i l)
F= (f l j, ) trong trường hợp mạng hở không trễ
(Df l j, )trong trường hợp thông thường có trễ
Một cặp (A, F) hoặc tập hợp ( , ,A F B1, ,Bd)có thể được gọi là một mã mạng tuyến tính
2.7 Kỹ thuật mã mạng tuyến tính ngẫu nhiên
Trong một mạng, tại một nút trung gian, khi hai hoặc nhiều gói tin đến nút sẽ tạo
ra từng số hệ số ngẫu nhiên sau đó nhân lần lượt từng hệ số ngẫu nhiên đó với các gói
dữ liệu đầu vào cuối cùng lấy tổng để tạo thành một gói tin mới ở đầu ra
Kỹ thuật mã mạng tuyến tính ngẫu nhiên được thực hiện dựa trên việc lựa chọn
các giá trị của (A, F) ngẫu nhiên của một trường hữu hạn Nếu một nút nhận tồn tại kmột số giá trị của Bkđể AGBT k có hạng đầy đủ r khi đó dữ liệu nguồn có thể được giải
mã tại nút đích
Trang 26CHƯƠNG 3 KẾT HỢP MÃ MẠNG VÀ LẤY MẪU NÉN ĐỂ ĐẠT TRUYỀN THÔNG HIỆU QUẢ TRONG
MẠNG CẢM BIẾN KHÔNG DÂY
Hiện nay, với chi phí thấp nên mạng cảm biến không dây được ứng dụng rộng rãi trong nhiều lĩnh vực như giám sát quân sự, bảo trì cơ sở hạ tầng, giám sát môi trường sống và thăm dò khoa học Mạng cảm biến không dây có thể được triển khai bất cứ nơi nào trong các tòa nhà để giám sát sự tiêu thụ năng lượng, dọc các tuyến đường để cập nhật tình trạng giao thông hoặc trên chiến trường để quân đội có thể giám sát
Cấu trúc của mạng cảm biến không dây được mô tả trên hình 3.1
Hình 3.1: Cấu trúc của mạng cảm biến không dây
Trong mạng cảm biến không dây, các nút cảm biến thường được phân bố trong trường cảm biến Mỗi nút cảm biến có khả năng thu thập số liệu và chọn đường đi để chuyển số liệu tới nút xử lý trung tâm Sau đó, nút xử lý trung tâm sẽ chuyển số liệu đó tới nút quản lý nhiệm vụ thông qua Internet hoặc vệ tinh Do trong mạng cảm biến không dây số lượng các nút cảm biến là rất lớn nên số lượng bản tin chuyển đến nút xử
lý trung tâm cũng như số lượng bản tin chuyển đến nút quản lý nhiệm vụ là rất lớn Mã mạng gần đây đã nhận được nhiều sự chú ý từ cộng đồng mạng như là một giải pháp mới hiệu quả đối với truyền dữ liệu trong mạng phát quảng bá như các mạng phát đa
Trang 27điểm và mạng không dây Như trong chương 2 đã trình bày về mã mạng tuyến tính ngẫu nhiên, thông tin từ các nút nguồn được mã hóa tuyến tính và các hệ số mã hóa là ngẫu nhiên Như vậy tại nút đích dữ liệu thu được là tổ hợp tuyến tính của dữ liệu từ các nguồn
Một đặc tính của mạng cảm biến, do nhiều bộ cảm biến cùng quan sát một hiện
tượng nên các phép đo thường tương quan theo thời gian hoặc không gian Chúng ta
mong muốn khai thác mối tương quan này khi chuyển các số đo đến nút xử lý trung tâm
để tiết kiệm năng lượng Lấy mẫu nén gần đây đã trở thành một công cụ mới mạnh mẽ
để thu thập tín hiệu có đặc tính thưa Như vậy, thay vì xử lý trực tiếp các tín hiệu tương quan này, người ta có thể biến đổi tuyến tính chúng sang một không gian khác bằng cách decorrelate (giải tương quan) có số chiều ít hơn, hay nói cách khác trong không gian mới này, dữ liệu là thưa Phương pháp này có thể được ứng dụng trực tiếp đối với mạng cảm biến nếu véctơ dữ liệu tương quan được coi là một tập của tất cả các phép đo trong mạng tại một thời điểm nhất định
Kỹ thuật lấy mẫu nén được đề xuất năm 2004 bởi Candes và Dohono Trong kỹ thuật này dữ liệu thu được cũng là một tổ hợp tuyến tính của các tín hiệu cần thu Với số mẫu thu được ít hơn nhiều so với số mẫu của tín hiệu gốc Hệ đo được biểu diễn là một
ma trận tuyến tính Người ta chứng minh được rằng khi các phần tử trong ma trận đó là ngẫu nhiên và thỏa mãn điều kiện RIP thì từ số mẫu thu được (rất nhỏ so với số mẫu của tín hiệu gốc) ta có thể thu được tín hiệu gốc
So sánh kỹ thuật mã mạng tuyến tính ngẫu nhiên với kỹ thuật lấy mẫu nén ta thấy rằng có thể áp dụng kỹ thuật lấy mẫu nén trong việc thiết kế kỹ thuật mã mạng tuyến tính ngẫu nhiên Với ý tưởng như vậy người ta đã đề xuất NetCompress [8]
Chương này trước hết trình bày ngắn gọn về kỹ thuật lấy mẫu nén, sau đó là mối liên hệ giữa mã mạng tuyến tính ngẫu nhiên với kỹ thuật lấy mẫu nén và cuối cùng tập trung trình bày thiết kế của Netcompress
3.1 Lấy mẫu nén
Trong những năm gần đây, lấy mẫu nén đã nhận được sự quan tâm đáng kể trong các lĩnh vực xử lý tín hiệu Lấy mẫu nén đưa ra một thực tế cơ bản là chúng ta có thể
Trang 28biểu diễn rất nhiều tín hiệu sử dụng chỉ một ít các hệ số khác 0 trong một cơ sở thích
hợp gọi là tín hiệu thưa Sau đó, tối ưu hóa không tuyến tính có thể khôi phục tín hiệu
đó từ một ít các phép đo
Trong nhiều trường hợp, chúng ta có thể thực hiện được việc lấy mẫu tín hiệu với tốc độ thấp hơn tốc độ lấy mãu Nyquist Lý thuyết lấy mẫu của Shannon/Nyquist đã phát biểu rằng để tránh mất mát thông tin khi thu thập một tín hiệu ta phải lấy mẫu tại tần số lớn hơn hoặc bằng hai lần tần số cực đại của tín hiệu Trong rất nhiều ứng dụng, bao gồm ảnh số và máy quay video, tốc độ Nyquist là rất cao và phải lấy mẫu rất nhiều mẫu, do vậy rất cần thiết phải nén tín hiệu để lưu trữ và truyền tín hiệu Lấy mẫu nén sử dụng các phép chiếu tuyến tính không thích ứng giữ lại cấu trúc của tín hiệu
3.1.1 Tín hiệu thưa
Xét một tín hiệu rời rạc theo thời gian, một chiều, có độ dài hữu hạn, có giá trị thực Tín hiệu này có thể được biểu diễn bằng một véc tơ N 1 trongR Nvới các thành phần x n n( ), 1, 2 N Một tín hiệu rời rạc có chiều dài hữu hạn làNcó thể được biểu diễn dưới dạng N các véc tơ cơ sở N 1 N 1
x s ψ hoặc x ψ s (3.1)
trong đó ψψ ψ1 ; 2 ; ;ψN, là ma trận cơ sở, có số chiều N N Ở đây s là véc tơ cột
có kích thước là N 1 gồm các hệ số của tín hiệu x Các giá trị của s được tính như sau:
Một tín hiệu x là thưa K(K-sparse) nếu nó là sự kết hợp tuyến tính chỉ của Kvéc
tơ cơ sở có nghĩa là trong hệ các véc tơ cơ sở trực chuẩn thì chỉ có K hệ sốsitrong (3.1)
là khác 0 và N K hệ số si là bằng 0 Trường hợp ta quan tâm là khi K N
Trang 29Trong hệ thống thu dữ liệu (ví dụ: camera số) tập các hệ số biến đổi siđược tính theo phương trình: T
i i
số nhỏ nhất được loại bỏ và K giá trị hệ số lớn nhất được mã hóa
3.1.2 Bài toán lấy mẫu nén
Để đo tín hiệu x, sử dụng M phép đo tuyến tính (M N) Khi đó các mẫu đo được biểu diễn bởi phép nhân giữa tín hiệu x và các véc tơ M1
được tính như sau:
y φx φψs Θs (3.2)
Ma trận φcó kích thước làM N được gọi là ma trận đo trong kỹ thuật lấy mẫu nén
Ma trận này là không thích nghi, có nghĩa là không phụ thuộc vào tín hiệu x Ở đây,
φψ
Θ là ma trận M N Như vậy bài toán bao gồm việc thiết kế:
a, Ma trận đo φ: Ma trận này phải được thiết kế để có thể thu và lưu trữ các thông tin về tín hiệu thưa K trong M phép đo mà vẫn đảm bảo khôi phục chính xác được tín hiệu
b, Khôi phục tín hiệu: x được khôi phục từ chỉ M phép đoydùng các giải thuật tối
ưu
3.1.3 Thiết kế ma trận đo
Điều kiện cần và đủ đối với bài toán này là đối với bất kỳ véc tơ v có chung K hệ
số khác 0 giống s và cho 0, ma trận đo φ phải cho phép khôi phục tín hiệu có chiều dài N từ M Nphép đo (véc tơ y) Do M N, bài toán trở thành thiếu điều kiện để giải Tuy nhiên, nếu x là thưa K thì bài toán có thể được giải với M Knếu thỏa mãn điều kiện sau: