Đề tài: Tăng khả năng thành công truyền dữ liệu trong mạng ...

46
Đề tài: Tăng khả năng thành công truyền dữ liệu trong mạng không dây bằng phương pháp mã hóa dữ liệu. SVTH: Nguyễn Thị Hồng Hạnh - Lớp CT1001 1 Lời mở đầu Ưu điểm của mạng máy tính đã được thể hiện khá rõ trong mọi lĩnh vực của cuộc sống. Đó chính là sự trao đổi, chia sẻ, lưu trữ và bảo vệ thông tin. Bên cạnh nền tảng mạng máy tính hữu tuyến, mạng máy tính không dây ngay từ khi ra đời đã thể hiện nhiều ưu điểm nổi bật về độ linh hoạt, tính giản đơn, khả năng tiện dụng. Trước đây, do chi phí còn cao nên mạng không dây còn chưa phổ biến, ngày nay khi mà giá thành thiết bị phần cứng ngày một hạ, khả năng xử lý ngày càng tăng thì mạng không dây đã được triển khai rộng rãi, ở một số nơi đã thay thế được mạng máy tính có dây khó triển khai. Do đặc điểm trao đổi thông tin trong không gian truyền sóng nên khả năng truyền dữ liệu trong mạng không dây phải là ưu tiên hàng đầu. Vì vậy có thể nói việc truyền dữ liệu không dây được gửi đi và để nơi nhận nhận chính xác dữ liệu đã gửi là một yêu cầu cơ bản của mạng máy tính không dây. Chính vì vậy em đã quyết định chọn đề tài “Tăng khả năng thành công truyền dữ liệu trong mạng không dây bằng phƣơng pháp mã hóa dữ liệu” làm đề tài tốt nghiệp, với mong muốn có thể tìm hiểu, nghiên cứu, hiểu biết thêm đề tài này. Em xin chân thành cảm ơn PGS.TS. Vƣơng Đạo Vy đã giúp đỡ em nhiệt tình trong suốt quá trình làm đồ án cũng như xin được cảm ơn bạn bè đã góp ý, giúp đỡ em hoàn thành đồ án này. Vì đây là đề tài khá mới, nguồn tài liệu chủ yếu là Tiếng Anh nên đồ án này chắc chắn sẽ không tránh được những sai sót, em rất mong nhận được những ý kiến đóng góp của thầy cô và các bạn. Hải Phòng, tháng 07/2010 Nguyễn Thị Hồng Hạnh

Transcript of Đề tài: Tăng khả năng thành công truyền dữ liệu trong mạng ...

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 1

Lời mở đầu

Ưu điểm của mạng maacutey tiacutenh đatilde được thể hiện khaacute rotilde trong mọi lĩnh vực của cuộc

sống Đoacute chiacutenh lagrave sự trao đổi chia sẻ lưu trữ vagrave bảo vệ thocircng tin Becircn cạnh nền tảng

mạng maacutey tiacutenh hữu tuyến mạng maacutey tiacutenh khocircng dacircy ngay từ khi ra đời đatilde thể hiện

nhiều ưu điểm nổi bật về độ linh hoạt tiacutenh giản đơn khả năng tiện dụng Trước đacircy

do chi phiacute cograven cao necircn mạng khocircng dacircy cograven chưa phổ biến ngagravey nay khi magrave giaacute thagravenh

thiết bị phần cứng ngagravey một hạ khả năng xử lyacute ngagravey cagraveng tăng thigrave mạng khocircng dacircy đatilde

được triển khai rộng ratildei ở một số nơi đatilde thay thế được mạng maacutey tiacutenh coacute dacircy khoacute triển

khai

Do đặc điểm trao đổi thocircng tin trong khocircng gian truyền soacuteng necircn khả năng truyền

dữ liệu trong mạng khocircng dacircy phải lagrave ưu tiecircn hagraveng đầu Vigrave vậy coacute thể noacutei việc truyền

dữ liệu khocircng dacircy được gửi đi vagrave để nơi nhận nhận chiacutenh xaacutec dữ liệu đatilde gửi lagrave một yecircu

cầu cơ bản của mạng maacutey tiacutenh khocircng dacircy Chiacutenh vigrave vậy em đatilde quyết định chọn đề tagravei

ldquoTăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phƣơng

phaacutep matilde hoacutea dữ liệurdquo lagravem đề tagravei tốt nghiệp với mong muốn coacute thể tigravem hiểu nghiecircn

cứu hiểu biết thecircm đề tagravei nagravey

Em xin chacircn thagravenh cảm ơn PGSTS Vƣơng Đạo Vy đatilde giuacutep đỡ em nhiệt tigravenh

trong suốt quaacute trigravenh lagravem đồ aacuten cũng như xin được cảm ơn bạn begrave đatilde goacutep yacute giuacutep đỡ em

hoagraven thagravenh đồ aacuten nagravey Vigrave đacircy lagrave đề tagravei khaacute mới nguồn tagravei liệu chủ yếu lagrave Tiếng Anh

necircn đồ aacuten nagravey chắc chắn sẽ khocircng traacutenh được những sai soacutet em rất mong nhận được

những yacute kiến đoacuteng goacutep của thầy cocirc vagrave caacutec bạn

Hải Phograveng thaacuteng 072010

Nguyễn Thị Hồng Hạnh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 2

Mục lục

CHƢƠNG 1 TRUYỀN DỮ LIỆU 4

1 TỔNG QUAN VỀ MẠNG KHOcircNG DAcircY 4

11 Thế nagraveo lagrave mạng maacutey tiacutenh khocircng dacircy 4

111 Giới thiệu 4

112 Ưu điểm của mạng maacutey tiacutenh khocircng dacircy 4

113 Hoạt động của mạng maacutey tiacutenh khocircng dacircy 5

114 Caacutec mocirc higravenh của mạng maacutey tiacutenh khocircng dacircy cơ bản 6

Kiểu Ad ndash hoc 6

Kiểu Infrastructure 6

115 Cự ly truyền soacuteng tốc độ truyền dữ liệu 7

12 Ứng dụng 7

121 Ứng dụng quacircn sự an ninh vagrave thiecircn nhiecircn 7

122 Ứng dụng trong giaacutem saacutet xe cộ vagrave thocircng tin liecircn quan 9

123 Điều khiển caacutec thiết bị trong nhagrave 9

124 Caacutec togravea nhagrave tự động 9

125 Quản lyacute quaacute trigravenh tự động trong cocircng nghiệp 10

126 Caacutec ứng dụng trong y học 10

2 TRUYỀN DỮ LIỆU GIỮA CAacuteC NUacuteT MẠNG NGUYEcircN TẮC 10

3 TIẾT KIỆM VAgrave TIEcircU THỤ NĂNG LƢỢNG 11

31 Kiến truacutec giao thức mạng 11

32 Giao thức chọn đƣờng 12

321 Khoacute khăn trong giao thức chọn đường 12

322 Caacutec giao thức chọn đường 14

33 Hoạt động truyền nhận khocircng dacircy 15

CHƢƠNG 2 MAtilde SỬA LỖI 16

1 CAacuteC CƠ CHẾ TRUYỀN DỮ LIỆU 16

11 Truyền dữ liệu song song 16

12 Truyền dữ liệu tuần tự 16

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 3

13 Truyền bất đồng bộ 16

14 Truyền đồng bộ 18

2 VẤN ĐỀ XỬ LYacute LỖI 19

11 Caacutec lỗi xẩy ra trecircn đƣờng truyền 19

12 Cơ chế phaacutet hiện lỗi 19

13 Phaacutet hiện lỗi bằng bit parity 20

14 Bộ matilde phaacutet hiện lỗi 20

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes) 21

121 Kiểm tra chẵn lẻ (Parity Check) 22

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or

Checksum) 22

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check) 23

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde 26

31 Phaacutet hiện lỗi vagrave truyền lại 26

32 Caacutec phƣơng phaacutep tạo ra từ matilde 28

311 Matilde hoacutea khối tuyến tiacutenh 28

312 Matilde Hamming 30

a) Viacute dụ dugraveng (117) matilde Hamming 33

b) Matilde Hamming (74) 36

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2] 36

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung 39

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi 41

KẾT LUẬN 45

Tagravei liệu tham khảo 46

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 4

CHƢƠNG 1 TRUYỀN DỮ LIỆU

1 TỔNG QUAN VỀ MẠNG KHOcircNG DAcircY

11 Thế nagraveo lagrave mạng maacutey tiacutenh khocircng dacircy

111 Giới thiệu

Thuật ngữ ―mạng maacutey tiacutenh khocircng dacircy noacutei đến cocircng nghệ cho pheacutep hai hay

nhiều maacutey tiacutenh giao tiếp với nhau dugraveng những giao thức mạng chuẩn nhưng khocircng cần

dacircy caacutep mạng Noacute lagrave một hệ thống mạng dữ liệu linh hoạt được thực hiện như một sự

mở rộng hoặc một sự lựa chọn mới cho mạng maacutey tiacutenh hữu tuyến ( hay cograven gọi lagrave

mạng coacute dacircy ) Caacutec mạng maacutey tiacutenh khocircng dacircy sử dụng caacutec soacuteng điện từ khocircng gian

(soacuteng vocirc tuyến hoặc soacuteng aacutenh saacuteng) thu phaacutet dữ liệu qua khocircng khiacute giảm thiểu nhu

cầu về kết nối bằng dacircy Vigrave vậy caacutec mạng maacutey tiacutenh khocircng dacircy kết hợp liecircn kết dữ liệu

với tiacutenh di động của người sử dụng

Cocircng nghệ nagravey bắt nguồn từ một số chuẩn cocircng nghiệp như lagrave IEEE 80211 đatilde

tạo ra một số caacutec giải phaacutep khocircng dacircy coacute tiacutenh khả thi trong kinh doanh cocircng nghệ chế

tạo caacutec trường đại họchellip khi magrave ở đoacute mạng hữu tuyến lagrave khocircng thể thực hiện được

Ngagravey nay caacutec mạng maacutey tiacutenh khocircng dacircy cagraveng trở necircn quen thuộc hơn được cocircng

nhận như một sự lựa chọn kết nối đa năng cho một phạm vi lớn caacutec khaacutech hagraveng kinh

doanh

112 Ưu điểm của mạng maacutey tiacutenh khocircng dacircy

Mạng maacutey tiacutenh khocircng dacircy đang nhanh choacuteng trở thagravenh một mạng cốt lotildei trong

caacutec mạng maacutey tiacutenh vagrave đang phaacutet triển vượt trội Với cocircng nghệ nagravey những người sử

dụng coacute thể truy cập thocircng tin dugraveng chung magrave khocircng phải tigravem kiếm chỗ để nối dacircy

mạng chuacuteng ta coacute thể mở rộng phạm vi mạng magrave khocircng cần lắp đặt hoặc di chuyển

dacircy Caacutec mạng maacutey tiacutenh khocircng dacircy coacute ưu điểm về hiệu suất sự thuận lợi cụ thể như

sau

- Tiacutenh di động những người sử dụng mạng maacutey tiacutenh khocircng dacircy coacute thể truy

nhập nguồn thocircng tin ở bất kỳ nơi nagraveo Tiacutenh di động nagravey sẽ tăng năng suất vagrave tiacutenh kịp

thời thỏa matilden nhu cầu về thocircng tin magrave caacutec mạng hữu tuyến khocircng thể coacute được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 5

- Tiacutenh đơn giản lắp đặt thiết lập kết nối một mạng maacutey tiacutenh khocircng dacircy lagrave rất

dễ dagraveng đơn giản vagrave coacute thể traacutenh được việc keacuteo caacutep qua caacutec bức tường vagrave trần nhagrave

- Tiacutenh linh hoạt coacute thể triển khai ở những nơi magrave mạng hữu tuyến khocircng thể

triển khai được

- Tiết kiệm chi phiacute lacircu dagravei Trong khi đầu tư cần thiết ban đầu đối với phần

cứng của một mạng maacutey tiacutenh khocircng dacircy coacute thể cao hơn chi phiacute phần cứng của một

mạng hữu tuyến nhưng toagraven bộ phiacute tổn lắp đặt vagrave caacutec chi phiacute về thời gian tồn tại coacute

thể thấp hơn đaacuteng kể Chi phiacute dagravei hạn coacute lợi nhất trong caacutec mocirci trường động cần phải

di chuyển vagrave thay đổi thường xuyecircn

- Khả năng vocirc hƣớng caacutec mạng maacutey tiacutenh khocircng dacircy coacute thể được cấu higravenh theo

caacutec topo khaacutec nhau để đaacutep ứng caacutec nhu cầu ứng dụng vagrave lắp đặt cụ thể Caacutec cấu higravenh

dễ dagraveng thay đổi từ caacutec mạng ngang hagraveng thiacutech hợp cho một số lượng nhỏ người sử

dụng đến caacutec mạng coacute cơ sở hạ tầng đầy đủ dagravenh cho hagraveng nghigraven người sử dụng magrave coacute

khả năng di chuyển trecircn một vugraveng rộng

113 Hoạt động của mạng maacutey tiacutenh khocircng dacircy

Caacutec mạng maacutey tiacutenh khocircng dacircy sử dụng caacutec soacuteng điện từ khocircng gian (vocirc tuyến

hoặc aacutenh saacuteng) để truyền thocircng tin từ một điểm tới điểm khaacutec Caacutec soacuteng vocirc tuyến

thường được xem như caacutec soacuteng mang vocirc tuyến do chuacuteng chỉ thực hiện chức năng cung

cấp năng lượng cho một maacutey thu ở xa Dữ liệu đang được phaacutet được điều chế trecircn

soacuteng mang vocirc tuyến (thường được gọi lagrave điều chế soacuteng mang nhờ thocircng tin đang được

phaacutet) sao cho coacute thể được khocirci phục chiacutenh xaacutec tại maacutey thu

Nhiễu soacuteng mang vocirc tuyến coacute thể tồn tại trong cugraveng khocircng gian tại cugraveng thời

điểm magrave khocircng can nhiễu lẫn nhau nếu caacutec soacuteng vocirc tuyến được phaacutet trecircn caacutec tần số vocirc

tuyến khaacutec nhau Để nhận lại dữ liệu maacutey thu vocirc tuyến sẽ thu trecircn tần số vocirc tuyến của

maacutey phaacutet tương ứng

Trong một cấu higravenh mạng maacutey tiacutenh khocircng dacircy tiecircu chuẩn một thiết bị thuphaacutet

(bộ thuphaacutet) được gọi lagrave một điểm truy cập nối với mạng hữu tuyến từ một vị triacute cố

định sử dụng caacutep tiecircu chuẩn Chức năng tối thiểu của điểm truy cập lagrave thu lagravem đệm

vagrave phaacutet dữ liệu giữa mạng maacutey tiacutenh khocircng dacircy vagrave cơ sở hạ tầng mạng hữu tuyến Một

điểm truy cập đơn coacute thể hỗ trợ một nhoacutem nhỏ người sử dụng vagrave coacute thể thực hiện chức

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 6

năng trong một phạm vi từ một trăm đến vagravei trăm feet Điểm truy cập (hoặc anten

được gắn vagraveo điểm truy cập) thường được đặt cao nhưng về cơ bản coacute thể được đặt ở

bất kỳ chỗ nagraveo miễn lagrave đạt được vugraveng phủ soacuteng mong muốn

Những người sử dụng truy cập vagraveo mạng maacutey tiacutenh khocircng dacircy thocircng qua caacutec bộ

thiacutech ứng maacutey tiacutenh khocircng dacircy như caacutec Card mạng khocircng dacircy trong caacutec vi maacutey tiacutenh

caacutec maacutey Palm PDA Caacutec bộ thiacutech ứng maacutey tiacutenh khocircng dacircy cung cấp một giao diện

giữa hệ thống điều hagravenh mạng (NOS ndash Network Operation System) của maacutey khaacutech vagrave

caacutec soacuteng khocircng gian qua một anten Bản chất của kết nối khocircng dacircy lagrave trong suốt đối

với hệ điều hagravenh mạng

114 Caacutec mocirc higravenh của mạng maacutey tiacutenh khocircng dacircy cơ bản

Kiểu Ad ndash hoc

Mỗi maacutey tiacutenh trong mạng giao tiếp trực tiếp với nhau thocircng qua caacutec thiết bị card

mạng khocircng dacircy magrave khocircng dugraveng đến caacutec thiết bị định tuyến hay thu phaacutet khocircng dacircy

Wireless Station

Wireless StationWireless Station

Wireless Station

Higravenh I1 Mocirc higravenh mạng Ad ndash hoc ( hay mạng ngang hagraveng )

Kiểu Infrastructure

Caacutec maacutey tiacutenh trong hệ thống mạng sử dụng một hoặc nhiều caacutec thiết bị định

tuyến hay thiết bị thu phaacutet để thực hiện caacutec hoạt động trao đổi dữ liệu với nhau vagrave caacutec

hoạt động khaacutec

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 7

115 Cự ly truyền soacuteng tốc độ truyền dữ liệu

Truyền soacuteng điện từ trong khocircng gian sẽ gặp hiện tượng suy hao Vigrave thế đối với

kết nối khocircng dacircy noacutei chung khoảng caacutech cagraveng xa thigrave khả năng thu tiacuten hiệu cagraveng keacutem

tỷ lệ lỗi sẽ tăng lecircn dẫn đến tốc độ truyền dữ liệu sẽ phải giảm xuống

Caacutec tốc độ của chuẩn khocircng dacircy như 11 Mbps hay 54 Mbps khocircng liecircn quan đến

tốc độ kết nối hay tốc độ download vigrave những tốc độ nagravey được quyết định bởi nhagrave cung

cấp dịch vụ Internet

Với một hệ thống mạng khocircng dacircy dữ liệu được giử qua soacuteng radio necircn tốc độ

coacute thể bị ảnh hưởng bởi caacutec taacutec nhacircn gacircy nhiễu hoặc caacutec vật thể lớn Thiết bị định

tuyến khocircng dacircy sẽ tự động điều chỉnh xuống caacutec mức tốc độ thấp hơn (Viacute dụ như lagrave

từ 11 Mbps sẽ giảm xuống cograven 55 Mbps vagrave 2 Mbps hoặc thậm chiacute lagrave 1 Mbps)

12 Ứng dụng

Trong những năm gần đacircy caacutec nghiecircn cứu về WSN đatilde đạt được bước phaacutet triển

mạnh mẽ caacutec bước tiến từ caacutec nghiecircn cứu hứa hẹn taacutec động lớn đến caacutec ứng dụng

rộng ratildei trong caacutec lĩnh vực an ninh quốc gia chăm soacutec sức khỏe mocirci trường năng

lượng an toagraven thực phẩm vagrave sản xuất

Caacutec ứng dụng của mạng WSN thực sự chỉ bị giới hạn bởi sự tưởng tượng của con

người Sau đacircy lagrave caacutec ứng dụng phổ biến nhất của WSN

121 Ứng dụng quacircn sự an ninh vagrave thiecircn nhiecircn

Trong phản ứng với dịch bệnh thảm họa thiecircn nhiecircn lượng lớn caacutec cảm biến

được thả từ trecircn khocircng mạng lưới caacutec cảm biến sẽ cho biết vị triacute người sống soacutet vugraveng

nguy hiểm giuacutep cho người giaacutem saacutet coacute caacutec thocircng tin chiacutenh xaacutec đảm bảo hiệu quả vagrave an

toagraven cho caacutec hoạt động tigravem kiếm

Sử dụng mạng WSN hạn chế sự coacute mặt trực tiếp của con người trong mocirci trường

nguy hiểm Ứng dụng an ninh bao gồm phaacutet hiện xacircm nhập vagrave truy bắt tội phạm

Mạng cảm biến quacircn sự phaacutet hiện vagrave coacute được thocircng tin về sự di chuyển của đối

phương chất nổ vagrave caacutec thocircng tin khaacutec

Phaacutet hiện vagrave phacircn loại caacutec chất hoacutea chất sinh hoacutea soacuteng vocirc tuyến phoacuteng xạ hạt

nhacircn chất nổhellip

Giaacutem saacutet sự thay đổi khiacute hậu rừng biểnhellip

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 8

Giaacutem saacutet xe cộ trecircn đường

Giaacutem saacutet an ninh trong caacutec khu vực dacircn cư thương mạihellip

Theo dotildei biecircn giới kết hợp với vệ tinhhellip

Higravenh I2 Ứng dụng WSN trong an ninh quốc gia vagrave luật phaacutep

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 9

122 Ứng dụng trong giaacutem saacutet xe cộ vagrave thocircng tin liecircn quan

Mục tiecircu của caacutec hệ thống nagravey lagrave thu thập thocircng tin thocircng qua caacutec mạng cảm

biến xử lyacute vagrave lưu trữ dữ liệu tại trung tacircm sử dụng dữ liệu đoacute cho caacutec ứng dụng cần

thiết Hệ thống được lắp đặt dọc theo caacutec đường chiacutenh mạng cảm biến số tập hợp dữ

liệu về tốc độ lưu thocircng mật độ xe số lượng xe trecircn đường Dữ liệu sau đoacute được

truyền đến trung tacircm dữ liệu để xử lyacute Mạng theo dotildei liecircn tục cung cấp thocircng tin cập

nhật thường xuyecircn theo thời gian thực Caacutec thocircng tin thu được dugraveng để giaacutem saacutet lưu

lượng điều phối giao thocircng hoặc cho caacutec mục điacutech khaacutec

123 Điều khiển caacutec thiết bị trong nhagrave

Điều khiển caacutec thiết bị trong nhagrave

Higravenh I3 Caacutec ứng dụng điều khiển

Caacutec node cảm biến được lắp trecircn caacutec thiết bị vị triacute cần thiết sau đoacute kết nối thagravenh

mạng truyền dữ liệu về node trung tacircm Một khả năng coacute thể phaacutet triển lagrave caacutec cảm biến

theo dotildei y tế được gắn trực tiếp lecircn cơ thể người bệnh để đo đạc thường xuyecircn caacutec

thocircng số về huyết aacutep nhịp timhellip

124 Caacutec togravea nhagrave tự động

Ứng dụng cung cấp khả năng điều khiển quản lyacute tạo sự tiện lợi trong kiểm soaacutet

an ninhhellipQuản lyacute nhiều hệ thống cugraveng luacutec hệ thống chiếu saacuteng nhiệt độ an ninh

giaacutem saacutet nhacircn viecircn quản lyacute hiệu quả tiecircu thụ năng lượng trong togravea nhagrave gắn caacutec chip

lecircn hagraveng hoacuteagiảm được thời gian kiểm trahellipcoacute thể dễ dagraveng được thực hiện bằng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 10

C2WSNs vagrave cocircng nghệ ZigBee đặc điểm nổi bật lagrave dugraveng caacutec cocircng nghệ microsensor

tiecircu thụ rất iacutet cocircng suất thu phaacutet vocirc tuyến kỹ thuật liecircn lạc vả cảm biến khocircng dacircy đa

chức năng

125 Quản lyacute quaacute trigravenh tự động trong cocircng nghiệp

Caacutec ứng dụng trong sản xuất cocircng nghiệp gồm điều khiển quản lyacute hiệu suất vagrave

an toagraven Caacutec cảm biến đặt trong mocirci trường lagravem việc giaacutem saacutet quaacute trigravenh sản xuất chất

lượng sản phẩm kiểm soaacutet mocirci trường lagravem việc quản lyacute nhacircn viecircnhellipdữ liệu được đưa

về trung tacircm để người quản lyacute coacute thể đưa ra caacutec quyết định kịp thời

126 Caacutec ứng dụng trong y học

Một số bệnh viện vagrave trung tacircm y tế đang ứng dụng cocircng nghệ WSNs vagraveo tiền

chẩn đoaacuten chăm soacutec sức khỏe đối phoacute với caacutec dịch bệnh vagrave phục hồi chức năng cho

người bệnh WSNs cho pheacutep theo dotildei tigravenh trạng của caacutec bệnh nhacircn kinh niecircn ngay tại

nhagrave lagravem cho việc phacircn tiacutech vagrave điều trị thuận tiện hơn ruacutet ngắn thời gian điều trị tại

bệnh viện WSNs cograven cho pheacutep thu thập thocircng tin y tế qua thời gian dagravei thagravenh caacutec cơ

sở dữ liệu quan trọng caacutec biện phaacutep can thiệp hiệu quả

2 TRUYỀN DỮ LIỆU GIỮA CAacuteC NUacuteT MẠNG NGUYEcircN TẮC

Một nuacutet cảm nhận khocircng dacircy giao tiếp với caacutec nuacutet cảm nhận khaacutec bằng việc sử

dụng net work - stack

- Ở lớp ứng dụng (Application) dữ liệu coacute thể được gửi ở dạng goacutei do chip radio

ở lớp phần cứng coacute thể truyền vagrave nhận dữ liệu dạng byte necircn caacutec goacutei tin nagravey cần được

phacircn đoạn trước khi chuacuteng được gửi vagrave phải được gheacutep lại sau khi chuacuteng được nhận

Lớp điều khiển đa truy cập Media - Access - Control (MAC) chuyển tiếp lớp ứng

dụng với radio chip

+ Khi 1 goacutei tin được gửi đi nhờ 1 ứng dụng goacutei tin được phacircn nhỏ thagravenh caacutec

byte 1 chuỗi liecircn tiếp caacutec byte đặc biệt được gọi lagrave Preamble (phần mở đầu) được gửi

đi trước caacutec byte dữ liệu do đoacute phiacutea thu coacute thể đồng bộ vagrave xaacutec định phần bắt đầu của 1

goacutei tin

+ Sau khi nhận 1 byte radio chip matilde hoacutea bit dữ liệu vagrave truyền chuacuteng Ở phiacutea

nhận radio chip baacuteo hiệu việc đến của caacutec byte sau khi xaacutec định vagrave giải matilde caacutecbit dữ

liệu

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 11

+ Sau đoacute lớp MAC hợp lại goacutei tin bắt đầu từ goacutei đầu tiecircn sau goacutei preamble Tiếp

theo lớp MAC baacuteo hiệu việc đến của goacutei tin cho lớp trecircn

Caacutec byte dữ liệu coacute thể được matilde hoacutea một caacutech tugravey yacute sau khi được phacircn đoạn cugraveng

với matilde sửa lỗi (ECC ) Matilde sửa lỗi ECC được dugraveng để khocirci phục caacutec bit dữ liệu trong

trường hợp coacute số lượng nhỏ bit lỗi Khi caacutec byte dữ liệu đoacute tới bộ thu tại đacircy noacute được

giải matilde để trở về dạng caacutec byte dữ liệu ban đầu

3 TIẾT KIỆM VAgrave TIEcircU THỤ NĂNG LƢỢNG

Năng lượng tiecircu thụ phụ thuộc vagraveo nhiều yếu tố sử dụng khaacutec nhau như Kiến

truacutec giao thức mạng Giao thức chọn đường Hoạt động truyền nhận khocircng dacircy

31 Kiến truacutec giao thức mạng

Kiến truacutec giao thức nagravey kết hợp giữa năng lượng vagrave chọn đường kết hợp số liệu

với caacutec giao thức mạng sử dụng năng lượng hiệu quả Kiến truacutec giao thức bao gồm

lớp vật lyacute lớp liecircn kết số liệu lớp mạng lớp truyền tải lớp ứng dụng phần quản lyacute

cocircng suất phần quản lyacute di động vagrave phần quản lyacute nhiệm vụ

Lớp vật lyacute cung cấp caacutec kỹ thuật điều chế phaacutet vagrave thu Vigrave mocirci trường coacute tạp acircm

vagrave caacutec nuacutet cảm biến coacute thể di động giao thức điều khiển truy cập mocirci trường (MAC)

phải xeacutet đến vấn đề cocircng suất vagrave phải coacute khả năng tối thiểu hoaacute việc va chạm với

thocircng tin quản baacute của caacutec nuacutet lacircn cận

Lớp mạng quan tacircm đến việc chọn đường số liệu được cung cấp bởi lớp truyền

tải

Lớp truyền tải giuacutep duy trigrave luồng số liệu nếu ứng dụng mạng cảm biến yecircu cầu

Tuỳ theo nhiệm vụ cảm biến caacutec loại phần mềm khaacutec nhau coacute thể được xacircy dựng vagrave

sử dụng ở lớp ứng dụng Ngoagravei ra caacutec phần quản lyacute cocircng suất di chuyển vagrave nhiệm vụ

sẽ giaacutem saacutet việc sử dụng cocircng suất sự di chuyển vagrave thực hiện nhiệm vụ giữa caacutec nuacutet

cảm biến Những phần nagravey giuacutep caacutec nuacutet cảm biến phối hợp nhiệm vụ cảm biến vagrave tiecircu

thụ năng lượng tổng thể thấp hơn

Phần quản lyacute năng lượng điều khiển việc sử dụng năng lượng của nuacutet mạng Viacute

dụ nuacutet mạng coacute thể tắt khối thu của noacute sau khi thu được một bản tin từ một nuacutet lacircn

cận Điều nagravey giuacutep traacutenh tạo ra caacutec bản tin giống nhau Cũng vậy khi mức năng lượng

của nuacutet mạng thấp noacute sẽ phaacutet quảng baacute tới caacutec nuacutet lacircn cận để thocircng baacuteo noacute coacute mức

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 12

năng lượng thấp vagrave khocircng thể tham gia vagraveo caacutec bản tin chọn đường Phần năng lượng

cograven lại sẽ dagravenh riecircng cho nhiệm vụ cảm biến

Phần quản lyacute di chuyển phaacutet hiện vagrave ghi lại sự di chuyển của caacutec nuacutet cảm biến để

duy trigrave tuyến tới người sử dụng vagrave caacutec nuacutet cảm biến coacute thể lưu vết của caacutec nuacutet cảm

biến lacircn cận Nhờ xaacutec định được caacutec nuacutet cảm biến lacircn cận caacutec nuacutet cảm biến coacute thể cacircn

bằng giữa cacircn bằng giữa cocircng suất của noacute vagrave nhiệm vụ thực hiện

Phần quản lyacute nhiệm vụ dugraveng để lagravem cacircn bằng vagrave lecircn kế hoạch caacutec nhiệm vụ cảm

biến trong một vugraveng xaacutec định Khocircng phải tất cả caacutec nuacutet cảm biến trong vugraveng đoacute đều

phải thực hiện nhiệm vụ cảm biến tại cugraveng một thời điểm Kết quả lagrave một số nuacutet cảm

biến thực hiện nhiều hơn caacutec nuacutet khaacutec tuỳ theo mức cocircng suất của noacute Những phần

quản lyacute nagravey lagrave cần thiết để caacutec nuacutet cảm biến coacute thể lagravem việc cugraveng nhau theo một caacutech

thức sử dụng hiệu quả cocircng suất chọn đường số liệu trong mạng cảm biến di động vagrave

phacircn chia tagravei nguyecircn giữa caacutec nuacutet cảm biến

Kiến truacutec mạng như trecircn goacutep phần quản lyacute năng lượng của caacutec nuacutet mạng đồng

thời duy trigrave hoạt động của toagraven mạng trong thời gian dagravei hơn

32 Giao thức chọn đường

321 Khoacute khăn trong giao thức chọn đường

Mặc dugrave caacutec ứng dụng của mạng WSN lagrave rất lớn tuy nhiecircn những mạng nagravey coacute

một số hạn chế như giới hạn về nguồn cocircng suất khả năng tiacutenh toaacuten vagrave độ rộng băng

thocircng Một số giao thức chọn đường quản lyacute cocircng suất vagrave trao đổi số liệu đatilde được

thiết kế cho WSN với yecircu cầu quan trọng nhất lagrave tiết kiệm được năng lượng

Một trong những mục tiecircu thiết kế chiacutenh của WSN lagrave keacuteo dagravei thời gian sống của

mạng vagrave traacutenh suy giảm kết nối nhờ caacutec kỹ thuật quản lyacute năng lượng Vấn đề nagravey cần

được giải quyết triệt để thigrave mới đạt được hiệu quả truyền tin trong WSN Caacutec giao thức

chọn đường trong WSN coacute thể khaacutec nhau tuỳ theo ứng dụng vagrave cấu truacutec mạng Tuy

nhiecircn việc chọn đường gặp phải những khoacute khăn như Phacircn bố nuacutet tiecircu thụ năng

lượng khocircng được lagravem mất độ chiacutenh xaacutec tiacutenh khocircng đồng nhất của nuacutet mạng tiacutenh

động của mạng khả năng định cỡ khả năng chống lỗi chất lượng dịch vụ

Phacircn bố nuacutet Việc phacircn bố nuacutet trong WSN phụ thuộc vagraveo ứng dụng vagrave coacute thể

được thực hiện bằng tay hoặc phacircn bố ngẫu nhiecircn Khi phacircn bố bằng tay số liệu được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 13

chọn đường thocircng qua caacutec đường đatilde định trước Tuy nhiecircn khi phacircn bố caacutec nuacutet ngẫu

nhiecircn sẽ tạo ra một cấu truacutec chọn đường đặc biệt (Ad-hoc)

Tiecircu thụ năng lượng khocircng được lagravem mất độ chiacutenh xaacutec Caacutec nuacutet cảm biến coacute

thể sử dụng quaacute caacutec giới hạn về cocircng suất để thực hiện tiacutenh toaacuten vagrave truyền tin trong

mocirci trường vocirc tuyến Thời gian sống của nuacutet mạng cảm biến phụ thuộc rất nhiều vagraveo

thời gian sử dụng của pin Trong WSN đa bước nhảy mỗi nuacutet đoacuteng hai vai trograve lagrave

truyền số liệu vagrave chọn đường Một số nuacutet cảm biến hoạt động sai chức năng do lỗi

nguồn cocircng suất coacute thể gacircy ra sự thay đổi cấu higravenh mạng nghiecircm trọng vagrave phải chọn

đường lại caacutec goacutei hoặc phải tổ chức lại mạng

Tiacutenh khocircng đồng nhất của nuacutet mạng Nghĩa lagrave caacutec nuacutet mạng coacute khả năng tiacutenh

toaacuten khả năng truyền tin vagrave coacute cocircng suất khaacutec nhau Khi đoacute sẽ gacircy khoacute khăn cho kỹ

thuật chọn đường

Khả năng chống lỗi Một số nuacutet cảm biến coacute thể bị lỗi hoặc bị ngắt do thiếu cocircng

suất hỏng phần cứng hoặc bị nhiễu mocirci trường Sự cố của caacutec nuacutet cảm biến khocircng

được ảnh hưởng tới nhiệm vụ của toagraven mạng cảm biến Nếu coacute nhiều nuacutet bị lỗi caacutec

giao thức chọn đường vagrave điều khiển truy cập mocirci trường (MAC) phải thagravenh lập caacutec

tuyến mới tới nuacutet gốc Việc nagravey coacute thể cần thiết phải điều chỉnh cocircng suất phaacutet vagrave tốc

độ tiacuten hiệu trecircn caacutec tuyến hiện tại để giảm sự tiecircu thụ năng lượng hoặc lagrave caacutec goacutei phải

chọn đường lại qua caacutec caacutec vugraveng mạng coacute cocircng suất khả dụng lớn hơn

Khả năng định cỡ Số lượng nuacutet mạng coacute thể lagrave hagraveng trăm hagraveng nghigraven hoặc

nhiều hơn Bất kỳ phương phaacutep chọn đường nagraveo cũng phải coacute khả năng lagravem việc với

một số lượng lớn caacutec nuacutet cảm biến như vậy

Tiacutenh động của mạng Trong nhiều nghiecircn cứu caacutec nuacutet cảm biến được coi lagrave cố

định Tuy nhiecircn trong một số ứng dụng cả nuacutet gốc vagrave caacutec nuacutet cảm biến coacute thể di

chuyển Khi đoacute caacutec bản tin chọn đường từ hoặc tới caacutec nuacutet di chuyển sẽ gặp phải caacutec

vần đề như đường liecircn lạc cấu higravenh mạng năng lượng độ rộng bănghellip

Chất lượng dịch vụ Khi năng lượng gần hết caacutec nuacutet mạng coacute thể yecircu cầu giảm

chất lượng caacutec kết quả để giảm mức tiecircu thụ năng lượng của nuacutet vagrave keacuteo dagravei thời gian

sống của toagraven mạng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 14

Mặc dugrave việc chọn đường gặp nhiều khoacute khăn nhưng khi coacute một giao thức chọn

đường tốt sẽ tiết kiệm thời gian truyền nhận thocircng tin giảm năng lượng tiecircu hao latildeng

phiacute do tắc nghẽn lỗi đường truyềnVigrave vậy người ta đatilde đưa ra một số giao thức chọn

đường magrave dưới đacircy sẽ trigravenh bầy

322 Caacutec giao thức chọn đường

Phần nagravey sẽ trigravenh bagravey về phương phaacutep chọn đường trong WSN Noacutei chung caacutec

giao thức chọn đường được chia lagravem 3 loại dựa vagraveo cấu truacutec mạng ngang hagraveng phacircn

cấp hoặc dựa vagraveo vị triacute

Trong chọn đường ngang hagraveng tất cả caacutec nuacutet thường coacute vai trograve hoặc chức năng

như nhau như cảm nhận truyền Chuacuteng sẽ thực hiện việc cảm nhận thocircng tin cần

thiết vagrave truyền số liệu về nuacutet gốc

Trong chọn đường phacircn cấp caacutec nuacutet sẽ đoacuteng vai trograve khaacutec nhau trong mạng sẽ coacute

nuacutet chủ đại diện cho từng nhoacutem caacutec nuacutet cảm biến để nhận số liệu từ caacutec nuacutet cảm biến

truyền tới Caacutec nuacutet chủ cũng tập hợp số liệu từ caacutec nuacutet trong nhoacutem của noacute trước khi

gửi số liệu đến nuacutet gốc Nuacutet chủ sẽ thay đổi khi bắt đầu chu kỳ lagravem việc mới vagrave sẽ thay

bằng nuacutet khaacutec coacute khả năng đảm nhận chức năng nagravey

Trong chọn đường dựa theo vị triacute thigrave vị triacute của caacutec nuacutet cảm biến sẽ được dugraveng để

chọn đường số liệu Giao thức chọn đường cograven coacute thể được phacircn loại dựa theo đa

đường yecircu cầu hỏiđaacutep QoS vagrave liecircn kết tuỳ thuộc vagraveo chế độ hoạt động Ngoagravei ra

cũng coacute thể chia thagravenh 3 loại chủ động tương taacutec hoặc lai gheacutep tuỳ thuộc vagraveo caacutech

thức magrave nguồn tigravem đường tời điacutech Một giao thức chọn đường được coi lagrave thiacutech ứng

nếu caacutec tham số của hệ thống coacute thể điều khiển được để phugrave hợp với caacutec trạng thaacutei

mạng hiện tại vagrave caacutec mức năng lượng khả dụng Một số giao thức chọn đường đatilde phaacutet

huy hiệu quả tiết kiệm tiecircu thụ năng lượng như LEACH

TEENampAPTEEN MECNampSVECN PEGASIS thuộc chọn đường phacircn cấp SPIN

Directed Diffusion CADR CUGAR thuộc chọn đường ngang hagraveng Trong đoacute đaacuteng

quan tacircm nhất lagrave giao thức chọn đường LEACH LEACH (Low Energy Adaptive

Clustering Hierarchy) - phacircn cấp nhoacutem thiacutech ứng cocircng suất thấp giao thức nagravey cho

pheacutep tiết kiệm năng lượng trong mạng WSN Mục điacutech của LEACH lagrave lựa chọn ngẫu

nhiecircn caacutec nuacutet cảm biến lagravem caacutec nuacutet chủ do đoacute việc tiecircu hao năng lượng khi liecircn lạc

với nuacutet gốc được trải đều cho tất cả caacutec nuacutet cảm biến trong mạng Quaacute trigravenh hoạt động

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 15

của LEACH được chia thagravenh 2 bước bước thiết lập vagrave bước ổn định Thời gian bước

ổn định keacuteo dagravei hơn so với thời gian của bước thiết lập để giảm thiểu phần điều khiển

Tại bước thiết lập sẽ xaacutec định nuacutet mạng nagraveo sẽ lagravem chủ Tại bước ổn định caacutec nuacutet cảm

biến bắt đầu cảm nhận vagrave truyền số liệu về nuacutet chủ nuacutet chủ cũng tập hợp số liệu từ caacutec

nuacutet trong nhoacutem trước khi gửi caacutec số liệu nagravey về nuacutet gốc Theo thử nghiệm mocirc phỏng

giao thức LEACH của mạng WSN coacute 160 nuacutet phacircn bố đều cocircng suất ban đầu của nuacutet

lagrave 30 Kết quả thu được lagrave khi truyền trực tiếp tới nuacutet gốc sau khoảng 470 chu kỳ

thời gian sẽ kết thuacutec truyền tin khi sử dụng giao thức LEACH sau khoảng 685 chu kỳ

thời gian mới kết thuacutec truyền tin Kết quả nagravey cho thấy đacircy lagrave một phương phaacutep chọn

đường phacircn cấp coacute khả năng tiết kiệm được năng lượng vagrave keacuteo dagravei thời gian sống của

mạng

Tuy nhiecircn cơ chế hoạt động của LEACH lagrave lựa chọn số liệu được tập trung vagrave

thực hiện theo chu kỳ Do đoacute giao thức nagravey chỉ thiacutech hợp với yecircu cầu giaacutem saacutet liecircn tục

bởi mạng cảm biến Với ứng dụng magrave người sử dụng khocircng cần tất cả caacutec số liệu ngay

lập tức thigrave việc truyền số liệu theo chu kỳ lagrave khocircng cần thiết vagrave coacute thể lagravem tiecircu tốn

năng lượng vocirc iacutech Giao thức LEACH cần tiếp tục được cải tiến để khắc phục hạn chế

33 Hoạt động truyền nhận khocircng dacircy

Đối với mạng cảm nhận khocircng dacircy thigrave năng lượng trở thagravenh một vấn đề được chuacute

yacute để duy trigrave hoạt động của hệ thống mạng vigrave caacutec nuacutet mạng độc lập chỉ được cung cấp

năng lượng từ một nguồn cố định (pin) Việc tiecircu thụ năng lượng thấp lagrave một nhu cầu

quan trọng cho caacutec hệ thống hoạt động bằng pin - khocircng được cung cấp năng lượng

thường xuyecircn Khi coacute một dograveng tiecircu thụ thấp thigrave thời gian sống của chuacuteng sẽ keacuteo dagravei

thecircm Hệ thống tiecircu thụ năng lượng thấp lagrave mục tiecircu cần đạt của mạng cảm nhận

khocircng dacircy sử dụng CC1010 Caacutec vấn đề đưa ra trong phần nagravey lagrave cơ sở cho việc viết

phần mềm tiết kiệm tiecircu thụ năng lượng cho nuacutet mạng cảm nhận khocircng dacircy

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 16

CHƢƠNG 2 MAtilde SỬA LỖI

Mạng phải coacute khả năng truyền chiacutenh xaacutec dữ liệu từ thiết bị nagravey tới thiết bị khaacutec

Một hệ thống khocircng bảo đảm dữ liệu nhận giống như dữ liệu truyền lagrave hệ thống khocircng

sử dụng được Coacute nhiều nhacircn tố như tạp nhiễu đường dacircy coacute thể lagravem hỏng một hoặc

nhiều bit của khối dữ liệu đang truyền Một hệ thống thực sự dugraveng được phải coacute cơ cấu

để phaacutet hiện vagrave sửa caacutec lỗi đoacute

Việc phaacutet hiện vagrave sửa lỗi được trang bị ở lớp liecircn kết dữ liệu hoặc lớp giao vận

tương ứng trong mocirc higravenh OSI

1 CAacuteC CƠ CHẾ TRUYỀN DỮ LIỆU

11 Truyền dữ liệu song song

bull Mỗi bit dugraveng một đường truyền riecircng Nếu coacute 8 bits được truyền đồng thời sẽ

yecircu cầu 8 đường truyền độc lập

bull Để truyền dữ liệu trecircn một đường truyền song song một kecircnh truyền riecircng

được dugraveng để thocircng baacuteo cho becircn nhận biết khi nagraveo dữ liệu coacute sẵn (clock signal)

bull Cần thecircm một kecircnh truyền khaacutec để becircn nhận baacuteo cho becircn gởi biết lagrave đatilde sẵn

sagraveng để nhận dữ liệu kế tiếp

12 Truyền dữ liệu tuần tự

bull Tất cả caacutec bit đều được truyền trecircn cugraveng một đường truyền bit nagravey tiếp theo

sau bit kia

bull Khocircng cần caacutec đường truyền riecircng cho tiacuten hiệu đồng bộ vagrave tiacuten hiệu bắt tay (caacutec

tiacuten hiệu nagravey được matilde hoacutea vagraveo dữ liệu truyền đi)

bull Vấn đề định thời (timing) đogravei hỏi phải coacute cơ chế đồng bộ giữa becircn truyền vagrave

becircn nhận

bull 2 caacutech giải quyết

- Bất đồng bộ mỗi kyacute tự được đồng bộ bởi start vagrave stop bit

- Đồng bộ mỗi khối kyacute tự được đồng bộ dugraveng cờ

13 Truyền bất đồng bộ

bull Dữ liệu được truyền theo từng kyacute tự để traacutenh việc mất đồng bộ khi nhận được chuỗi

bit quaacute dagravei

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 17

- 5 đến 8 bits

- Chỉ cần giữ đồng bộ trong một kyacute tự

- Taacutei đồng bộ cho mỗi kyacute tự mới

bull Hagravenh vi

- Đối với dograveng dữ liệu đều khoảng caacutech giữa caacutec kyacute tự lagrave đồng nhất (bằng chiều dagravei

của phần tử stop)

- Ở trạng thaacutei rỗi bộ thu phaacutet hiện sự chuyển 1 đến 0

- Lấy mẫu 7 khoảng kế tiếp (chiều dagravei kyacute tự)

- Đợi việc chuyển 1 đến 0 cho kyacute tự kế tiếp

bull Hiệu suất

- Đơn giản

- Rẻ

- Phiacute tổn 2 hoặc 3 bit cho một kyacute tự (~20)

- Thiacutech hợp cho dữ liệu với khoảng trống giữa caacutec kyacute tự lớn (dữ liệu nhập từ bagraven

phiacutem)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 18

bull Đồng bộ khung (frame synchronization) dugraveng caacutec kyacute tự điều khiển (STX ETX

DLE)

14 Truyền đồng bộ

bull Truyền khocircng cần startstop

bull Phải coacute tiacuten hiệu đồng bộ

bull Đồng bộ bit (bit synchronization) sử dụng caacutec phƣơng phaacutep sau

- Tiacutech hợp xung clock vagraveo dữ liệu truyền đi

+ Tiacutech hợp thocircng tin đồng bộ (clock) vagraveo trong dữ liệu truyền

+ Đầu nhận sẽ taacutech thocircng tin đồng bộ dựa vagraveo dữ liệu nhận được

+ Manchester differential Manchester tần số soacuteng mang (analog)

- Sử dụng đường clock riecircng

+ Dugraveng một đường tiacuten hiệu đồng bộ riecircng biệt

+ Một becircn (phaacutet hoặc nhận) tạo ra caacutec xung clock đồng bộ với caacutec bit truyền đi

trecircn đường clock riecircng

+ Becircn cograven lại dugraveng tiacuten hiệu trecircn đường clock riecircng để lagravem clock

+ Thiacutech hợp khi truyền trong khoảng caacutech ngắn

+ Tiacuten hiệu đồng bộ dễ bị suy giảm trecircn đường truyền

bull Đồng bộ frame

- Mỗi block dữ liệu được bắt đầu bằng một cờ gọi lagrave preamble kết thuacutec bằng

một cờ gọi lagrave postamble

- Preamble vagrave postamble lagrave một mẫu bit (bit pattern) được quy định sẵn

+ Một chuỗi caacutec kyacute tự SYN (16h trong bảng matilde ASCII)

+ Mẫu bit 11111110

- Frame dữ liệu + preamble + postamble + thocircng tin điều khiển

- Hiệu quả hơn so với truyền bất đồng bộ (phiacute tổn thấp hơn cho caacutec bit điều

khiển)

+ HDLC 48 bit điều khiển cho mỗi block 1000 kyacute tự (8000 bit)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 19

2 VẤN ĐỀ XỬ LYacute LỖI

11 Caacutec lỗi xẩy ra trecircn đường truyền

bull Mocirci trƣờng truyền dẫn bị nhiễu (điện từ hellip) dẫn đến dữ liệu nhận coacute lỗi

(caacutec bit bị thay đổi)

bull 2 caacutech khắc phục khi phaacutet hiện coacute lỗi

- Forward error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự hoặc caacutec

frame truyền đi để becircn nhận coacute thể phaacutet hiện khi nagraveo coacute lỗi va lỗi nằm ở đacircu để sửa

(coacute khả năng sửa lỗi)

- Feedback (backward) error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự

hoặc caacutec frame truyền đi chỉ đủ để phaacutet hiện khi nagraveo coacute lỗi (khocircng coacute khả năng sửa

lỗi) Cơ chế yecircu cầu truyền lại kyacute tựframe sai được dugraveng trong trường hợp nagravey

bull Phacircn loại lỗi

- Lỗi 1 bit

+ Chỉ 1 bit bị lỗi khocircng ảnh hưởng caacutec bit xung quanh

+ Thường xảy ra do nhiễu trắng

- Lỗi chugravem (busrt error)

+ Một chuỗi liecircn tục B bit trong đoacute bit đầu bit cuối vagrave caacutec bit bất kigrave nằm giữa

chuỗi đều bị lỗi

+ Thường xảy ra do nhiễu xung

+ Ảnh hưởng cagraveng lớn đối với tốc độ truyền cao

Bit error rate (BER) xaacutec suất một bit nhận đƣợc bị lỗi

12 Cơ chế phaacutet hiện lỗi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 2

Mục lục

CHƢƠNG 1 TRUYỀN DỮ LIỆU 4

1 TỔNG QUAN VỀ MẠNG KHOcircNG DAcircY 4

11 Thế nagraveo lagrave mạng maacutey tiacutenh khocircng dacircy 4

111 Giới thiệu 4

112 Ưu điểm của mạng maacutey tiacutenh khocircng dacircy 4

113 Hoạt động của mạng maacutey tiacutenh khocircng dacircy 5

114 Caacutec mocirc higravenh của mạng maacutey tiacutenh khocircng dacircy cơ bản 6

Kiểu Ad ndash hoc 6

Kiểu Infrastructure 6

115 Cự ly truyền soacuteng tốc độ truyền dữ liệu 7

12 Ứng dụng 7

121 Ứng dụng quacircn sự an ninh vagrave thiecircn nhiecircn 7

122 Ứng dụng trong giaacutem saacutet xe cộ vagrave thocircng tin liecircn quan 9

123 Điều khiển caacutec thiết bị trong nhagrave 9

124 Caacutec togravea nhagrave tự động 9

125 Quản lyacute quaacute trigravenh tự động trong cocircng nghiệp 10

126 Caacutec ứng dụng trong y học 10

2 TRUYỀN DỮ LIỆU GIỮA CAacuteC NUacuteT MẠNG NGUYEcircN TẮC 10

3 TIẾT KIỆM VAgrave TIEcircU THỤ NĂNG LƢỢNG 11

31 Kiến truacutec giao thức mạng 11

32 Giao thức chọn đƣờng 12

321 Khoacute khăn trong giao thức chọn đường 12

322 Caacutec giao thức chọn đường 14

33 Hoạt động truyền nhận khocircng dacircy 15

CHƢƠNG 2 MAtilde SỬA LỖI 16

1 CAacuteC CƠ CHẾ TRUYỀN DỮ LIỆU 16

11 Truyền dữ liệu song song 16

12 Truyền dữ liệu tuần tự 16

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 3

13 Truyền bất đồng bộ 16

14 Truyền đồng bộ 18

2 VẤN ĐỀ XỬ LYacute LỖI 19

11 Caacutec lỗi xẩy ra trecircn đƣờng truyền 19

12 Cơ chế phaacutet hiện lỗi 19

13 Phaacutet hiện lỗi bằng bit parity 20

14 Bộ matilde phaacutet hiện lỗi 20

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes) 21

121 Kiểm tra chẵn lẻ (Parity Check) 22

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or

Checksum) 22

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check) 23

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde 26

31 Phaacutet hiện lỗi vagrave truyền lại 26

32 Caacutec phƣơng phaacutep tạo ra từ matilde 28

311 Matilde hoacutea khối tuyến tiacutenh 28

312 Matilde Hamming 30

a) Viacute dụ dugraveng (117) matilde Hamming 33

b) Matilde Hamming (74) 36

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2] 36

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung 39

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi 41

KẾT LUẬN 45

Tagravei liệu tham khảo 46

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 4

CHƢƠNG 1 TRUYỀN DỮ LIỆU

1 TỔNG QUAN VỀ MẠNG KHOcircNG DAcircY

11 Thế nagraveo lagrave mạng maacutey tiacutenh khocircng dacircy

111 Giới thiệu

Thuật ngữ ―mạng maacutey tiacutenh khocircng dacircy noacutei đến cocircng nghệ cho pheacutep hai hay

nhiều maacutey tiacutenh giao tiếp với nhau dugraveng những giao thức mạng chuẩn nhưng khocircng cần

dacircy caacutep mạng Noacute lagrave một hệ thống mạng dữ liệu linh hoạt được thực hiện như một sự

mở rộng hoặc một sự lựa chọn mới cho mạng maacutey tiacutenh hữu tuyến ( hay cograven gọi lagrave

mạng coacute dacircy ) Caacutec mạng maacutey tiacutenh khocircng dacircy sử dụng caacutec soacuteng điện từ khocircng gian

(soacuteng vocirc tuyến hoặc soacuteng aacutenh saacuteng) thu phaacutet dữ liệu qua khocircng khiacute giảm thiểu nhu

cầu về kết nối bằng dacircy Vigrave vậy caacutec mạng maacutey tiacutenh khocircng dacircy kết hợp liecircn kết dữ liệu

với tiacutenh di động của người sử dụng

Cocircng nghệ nagravey bắt nguồn từ một số chuẩn cocircng nghiệp như lagrave IEEE 80211 đatilde

tạo ra một số caacutec giải phaacutep khocircng dacircy coacute tiacutenh khả thi trong kinh doanh cocircng nghệ chế

tạo caacutec trường đại họchellip khi magrave ở đoacute mạng hữu tuyến lagrave khocircng thể thực hiện được

Ngagravey nay caacutec mạng maacutey tiacutenh khocircng dacircy cagraveng trở necircn quen thuộc hơn được cocircng

nhận như một sự lựa chọn kết nối đa năng cho một phạm vi lớn caacutec khaacutech hagraveng kinh

doanh

112 Ưu điểm của mạng maacutey tiacutenh khocircng dacircy

Mạng maacutey tiacutenh khocircng dacircy đang nhanh choacuteng trở thagravenh một mạng cốt lotildei trong

caacutec mạng maacutey tiacutenh vagrave đang phaacutet triển vượt trội Với cocircng nghệ nagravey những người sử

dụng coacute thể truy cập thocircng tin dugraveng chung magrave khocircng phải tigravem kiếm chỗ để nối dacircy

mạng chuacuteng ta coacute thể mở rộng phạm vi mạng magrave khocircng cần lắp đặt hoặc di chuyển

dacircy Caacutec mạng maacutey tiacutenh khocircng dacircy coacute ưu điểm về hiệu suất sự thuận lợi cụ thể như

sau

- Tiacutenh di động những người sử dụng mạng maacutey tiacutenh khocircng dacircy coacute thể truy

nhập nguồn thocircng tin ở bất kỳ nơi nagraveo Tiacutenh di động nagravey sẽ tăng năng suất vagrave tiacutenh kịp

thời thỏa matilden nhu cầu về thocircng tin magrave caacutec mạng hữu tuyến khocircng thể coacute được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 5

- Tiacutenh đơn giản lắp đặt thiết lập kết nối một mạng maacutey tiacutenh khocircng dacircy lagrave rất

dễ dagraveng đơn giản vagrave coacute thể traacutenh được việc keacuteo caacutep qua caacutec bức tường vagrave trần nhagrave

- Tiacutenh linh hoạt coacute thể triển khai ở những nơi magrave mạng hữu tuyến khocircng thể

triển khai được

- Tiết kiệm chi phiacute lacircu dagravei Trong khi đầu tư cần thiết ban đầu đối với phần

cứng của một mạng maacutey tiacutenh khocircng dacircy coacute thể cao hơn chi phiacute phần cứng của một

mạng hữu tuyến nhưng toagraven bộ phiacute tổn lắp đặt vagrave caacutec chi phiacute về thời gian tồn tại coacute

thể thấp hơn đaacuteng kể Chi phiacute dagravei hạn coacute lợi nhất trong caacutec mocirci trường động cần phải

di chuyển vagrave thay đổi thường xuyecircn

- Khả năng vocirc hƣớng caacutec mạng maacutey tiacutenh khocircng dacircy coacute thể được cấu higravenh theo

caacutec topo khaacutec nhau để đaacutep ứng caacutec nhu cầu ứng dụng vagrave lắp đặt cụ thể Caacutec cấu higravenh

dễ dagraveng thay đổi từ caacutec mạng ngang hagraveng thiacutech hợp cho một số lượng nhỏ người sử

dụng đến caacutec mạng coacute cơ sở hạ tầng đầy đủ dagravenh cho hagraveng nghigraven người sử dụng magrave coacute

khả năng di chuyển trecircn một vugraveng rộng

113 Hoạt động của mạng maacutey tiacutenh khocircng dacircy

Caacutec mạng maacutey tiacutenh khocircng dacircy sử dụng caacutec soacuteng điện từ khocircng gian (vocirc tuyến

hoặc aacutenh saacuteng) để truyền thocircng tin từ một điểm tới điểm khaacutec Caacutec soacuteng vocirc tuyến

thường được xem như caacutec soacuteng mang vocirc tuyến do chuacuteng chỉ thực hiện chức năng cung

cấp năng lượng cho một maacutey thu ở xa Dữ liệu đang được phaacutet được điều chế trecircn

soacuteng mang vocirc tuyến (thường được gọi lagrave điều chế soacuteng mang nhờ thocircng tin đang được

phaacutet) sao cho coacute thể được khocirci phục chiacutenh xaacutec tại maacutey thu

Nhiễu soacuteng mang vocirc tuyến coacute thể tồn tại trong cugraveng khocircng gian tại cugraveng thời

điểm magrave khocircng can nhiễu lẫn nhau nếu caacutec soacuteng vocirc tuyến được phaacutet trecircn caacutec tần số vocirc

tuyến khaacutec nhau Để nhận lại dữ liệu maacutey thu vocirc tuyến sẽ thu trecircn tần số vocirc tuyến của

maacutey phaacutet tương ứng

Trong một cấu higravenh mạng maacutey tiacutenh khocircng dacircy tiecircu chuẩn một thiết bị thuphaacutet

(bộ thuphaacutet) được gọi lagrave một điểm truy cập nối với mạng hữu tuyến từ một vị triacute cố

định sử dụng caacutep tiecircu chuẩn Chức năng tối thiểu của điểm truy cập lagrave thu lagravem đệm

vagrave phaacutet dữ liệu giữa mạng maacutey tiacutenh khocircng dacircy vagrave cơ sở hạ tầng mạng hữu tuyến Một

điểm truy cập đơn coacute thể hỗ trợ một nhoacutem nhỏ người sử dụng vagrave coacute thể thực hiện chức

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 6

năng trong một phạm vi từ một trăm đến vagravei trăm feet Điểm truy cập (hoặc anten

được gắn vagraveo điểm truy cập) thường được đặt cao nhưng về cơ bản coacute thể được đặt ở

bất kỳ chỗ nagraveo miễn lagrave đạt được vugraveng phủ soacuteng mong muốn

Những người sử dụng truy cập vagraveo mạng maacutey tiacutenh khocircng dacircy thocircng qua caacutec bộ

thiacutech ứng maacutey tiacutenh khocircng dacircy như caacutec Card mạng khocircng dacircy trong caacutec vi maacutey tiacutenh

caacutec maacutey Palm PDA Caacutec bộ thiacutech ứng maacutey tiacutenh khocircng dacircy cung cấp một giao diện

giữa hệ thống điều hagravenh mạng (NOS ndash Network Operation System) của maacutey khaacutech vagrave

caacutec soacuteng khocircng gian qua một anten Bản chất của kết nối khocircng dacircy lagrave trong suốt đối

với hệ điều hagravenh mạng

114 Caacutec mocirc higravenh của mạng maacutey tiacutenh khocircng dacircy cơ bản

Kiểu Ad ndash hoc

Mỗi maacutey tiacutenh trong mạng giao tiếp trực tiếp với nhau thocircng qua caacutec thiết bị card

mạng khocircng dacircy magrave khocircng dugraveng đến caacutec thiết bị định tuyến hay thu phaacutet khocircng dacircy

Wireless Station

Wireless StationWireless Station

Wireless Station

Higravenh I1 Mocirc higravenh mạng Ad ndash hoc ( hay mạng ngang hagraveng )

Kiểu Infrastructure

Caacutec maacutey tiacutenh trong hệ thống mạng sử dụng một hoặc nhiều caacutec thiết bị định

tuyến hay thiết bị thu phaacutet để thực hiện caacutec hoạt động trao đổi dữ liệu với nhau vagrave caacutec

hoạt động khaacutec

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 7

115 Cự ly truyền soacuteng tốc độ truyền dữ liệu

Truyền soacuteng điện từ trong khocircng gian sẽ gặp hiện tượng suy hao Vigrave thế đối với

kết nối khocircng dacircy noacutei chung khoảng caacutech cagraveng xa thigrave khả năng thu tiacuten hiệu cagraveng keacutem

tỷ lệ lỗi sẽ tăng lecircn dẫn đến tốc độ truyền dữ liệu sẽ phải giảm xuống

Caacutec tốc độ của chuẩn khocircng dacircy như 11 Mbps hay 54 Mbps khocircng liecircn quan đến

tốc độ kết nối hay tốc độ download vigrave những tốc độ nagravey được quyết định bởi nhagrave cung

cấp dịch vụ Internet

Với một hệ thống mạng khocircng dacircy dữ liệu được giử qua soacuteng radio necircn tốc độ

coacute thể bị ảnh hưởng bởi caacutec taacutec nhacircn gacircy nhiễu hoặc caacutec vật thể lớn Thiết bị định

tuyến khocircng dacircy sẽ tự động điều chỉnh xuống caacutec mức tốc độ thấp hơn (Viacute dụ như lagrave

từ 11 Mbps sẽ giảm xuống cograven 55 Mbps vagrave 2 Mbps hoặc thậm chiacute lagrave 1 Mbps)

12 Ứng dụng

Trong những năm gần đacircy caacutec nghiecircn cứu về WSN đatilde đạt được bước phaacutet triển

mạnh mẽ caacutec bước tiến từ caacutec nghiecircn cứu hứa hẹn taacutec động lớn đến caacutec ứng dụng

rộng ratildei trong caacutec lĩnh vực an ninh quốc gia chăm soacutec sức khỏe mocirci trường năng

lượng an toagraven thực phẩm vagrave sản xuất

Caacutec ứng dụng của mạng WSN thực sự chỉ bị giới hạn bởi sự tưởng tượng của con

người Sau đacircy lagrave caacutec ứng dụng phổ biến nhất của WSN

121 Ứng dụng quacircn sự an ninh vagrave thiecircn nhiecircn

Trong phản ứng với dịch bệnh thảm họa thiecircn nhiecircn lượng lớn caacutec cảm biến

được thả từ trecircn khocircng mạng lưới caacutec cảm biến sẽ cho biết vị triacute người sống soacutet vugraveng

nguy hiểm giuacutep cho người giaacutem saacutet coacute caacutec thocircng tin chiacutenh xaacutec đảm bảo hiệu quả vagrave an

toagraven cho caacutec hoạt động tigravem kiếm

Sử dụng mạng WSN hạn chế sự coacute mặt trực tiếp của con người trong mocirci trường

nguy hiểm Ứng dụng an ninh bao gồm phaacutet hiện xacircm nhập vagrave truy bắt tội phạm

Mạng cảm biến quacircn sự phaacutet hiện vagrave coacute được thocircng tin về sự di chuyển của đối

phương chất nổ vagrave caacutec thocircng tin khaacutec

Phaacutet hiện vagrave phacircn loại caacutec chất hoacutea chất sinh hoacutea soacuteng vocirc tuyến phoacuteng xạ hạt

nhacircn chất nổhellip

Giaacutem saacutet sự thay đổi khiacute hậu rừng biểnhellip

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 8

Giaacutem saacutet xe cộ trecircn đường

Giaacutem saacutet an ninh trong caacutec khu vực dacircn cư thương mạihellip

Theo dotildei biecircn giới kết hợp với vệ tinhhellip

Higravenh I2 Ứng dụng WSN trong an ninh quốc gia vagrave luật phaacutep

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 9

122 Ứng dụng trong giaacutem saacutet xe cộ vagrave thocircng tin liecircn quan

Mục tiecircu của caacutec hệ thống nagravey lagrave thu thập thocircng tin thocircng qua caacutec mạng cảm

biến xử lyacute vagrave lưu trữ dữ liệu tại trung tacircm sử dụng dữ liệu đoacute cho caacutec ứng dụng cần

thiết Hệ thống được lắp đặt dọc theo caacutec đường chiacutenh mạng cảm biến số tập hợp dữ

liệu về tốc độ lưu thocircng mật độ xe số lượng xe trecircn đường Dữ liệu sau đoacute được

truyền đến trung tacircm dữ liệu để xử lyacute Mạng theo dotildei liecircn tục cung cấp thocircng tin cập

nhật thường xuyecircn theo thời gian thực Caacutec thocircng tin thu được dugraveng để giaacutem saacutet lưu

lượng điều phối giao thocircng hoặc cho caacutec mục điacutech khaacutec

123 Điều khiển caacutec thiết bị trong nhagrave

Điều khiển caacutec thiết bị trong nhagrave

Higravenh I3 Caacutec ứng dụng điều khiển

Caacutec node cảm biến được lắp trecircn caacutec thiết bị vị triacute cần thiết sau đoacute kết nối thagravenh

mạng truyền dữ liệu về node trung tacircm Một khả năng coacute thể phaacutet triển lagrave caacutec cảm biến

theo dotildei y tế được gắn trực tiếp lecircn cơ thể người bệnh để đo đạc thường xuyecircn caacutec

thocircng số về huyết aacutep nhịp timhellip

124 Caacutec togravea nhagrave tự động

Ứng dụng cung cấp khả năng điều khiển quản lyacute tạo sự tiện lợi trong kiểm soaacutet

an ninhhellipQuản lyacute nhiều hệ thống cugraveng luacutec hệ thống chiếu saacuteng nhiệt độ an ninh

giaacutem saacutet nhacircn viecircn quản lyacute hiệu quả tiecircu thụ năng lượng trong togravea nhagrave gắn caacutec chip

lecircn hagraveng hoacuteagiảm được thời gian kiểm trahellipcoacute thể dễ dagraveng được thực hiện bằng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 10

C2WSNs vagrave cocircng nghệ ZigBee đặc điểm nổi bật lagrave dugraveng caacutec cocircng nghệ microsensor

tiecircu thụ rất iacutet cocircng suất thu phaacutet vocirc tuyến kỹ thuật liecircn lạc vả cảm biến khocircng dacircy đa

chức năng

125 Quản lyacute quaacute trigravenh tự động trong cocircng nghiệp

Caacutec ứng dụng trong sản xuất cocircng nghiệp gồm điều khiển quản lyacute hiệu suất vagrave

an toagraven Caacutec cảm biến đặt trong mocirci trường lagravem việc giaacutem saacutet quaacute trigravenh sản xuất chất

lượng sản phẩm kiểm soaacutet mocirci trường lagravem việc quản lyacute nhacircn viecircnhellipdữ liệu được đưa

về trung tacircm để người quản lyacute coacute thể đưa ra caacutec quyết định kịp thời

126 Caacutec ứng dụng trong y học

Một số bệnh viện vagrave trung tacircm y tế đang ứng dụng cocircng nghệ WSNs vagraveo tiền

chẩn đoaacuten chăm soacutec sức khỏe đối phoacute với caacutec dịch bệnh vagrave phục hồi chức năng cho

người bệnh WSNs cho pheacutep theo dotildei tigravenh trạng của caacutec bệnh nhacircn kinh niecircn ngay tại

nhagrave lagravem cho việc phacircn tiacutech vagrave điều trị thuận tiện hơn ruacutet ngắn thời gian điều trị tại

bệnh viện WSNs cograven cho pheacutep thu thập thocircng tin y tế qua thời gian dagravei thagravenh caacutec cơ

sở dữ liệu quan trọng caacutec biện phaacutep can thiệp hiệu quả

2 TRUYỀN DỮ LIỆU GIỮA CAacuteC NUacuteT MẠNG NGUYEcircN TẮC

Một nuacutet cảm nhận khocircng dacircy giao tiếp với caacutec nuacutet cảm nhận khaacutec bằng việc sử

dụng net work - stack

- Ở lớp ứng dụng (Application) dữ liệu coacute thể được gửi ở dạng goacutei do chip radio

ở lớp phần cứng coacute thể truyền vagrave nhận dữ liệu dạng byte necircn caacutec goacutei tin nagravey cần được

phacircn đoạn trước khi chuacuteng được gửi vagrave phải được gheacutep lại sau khi chuacuteng được nhận

Lớp điều khiển đa truy cập Media - Access - Control (MAC) chuyển tiếp lớp ứng

dụng với radio chip

+ Khi 1 goacutei tin được gửi đi nhờ 1 ứng dụng goacutei tin được phacircn nhỏ thagravenh caacutec

byte 1 chuỗi liecircn tiếp caacutec byte đặc biệt được gọi lagrave Preamble (phần mở đầu) được gửi

đi trước caacutec byte dữ liệu do đoacute phiacutea thu coacute thể đồng bộ vagrave xaacutec định phần bắt đầu của 1

goacutei tin

+ Sau khi nhận 1 byte radio chip matilde hoacutea bit dữ liệu vagrave truyền chuacuteng Ở phiacutea

nhận radio chip baacuteo hiệu việc đến của caacutec byte sau khi xaacutec định vagrave giải matilde caacutecbit dữ

liệu

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 11

+ Sau đoacute lớp MAC hợp lại goacutei tin bắt đầu từ goacutei đầu tiecircn sau goacutei preamble Tiếp

theo lớp MAC baacuteo hiệu việc đến của goacutei tin cho lớp trecircn

Caacutec byte dữ liệu coacute thể được matilde hoacutea một caacutech tugravey yacute sau khi được phacircn đoạn cugraveng

với matilde sửa lỗi (ECC ) Matilde sửa lỗi ECC được dugraveng để khocirci phục caacutec bit dữ liệu trong

trường hợp coacute số lượng nhỏ bit lỗi Khi caacutec byte dữ liệu đoacute tới bộ thu tại đacircy noacute được

giải matilde để trở về dạng caacutec byte dữ liệu ban đầu

3 TIẾT KIỆM VAgrave TIEcircU THỤ NĂNG LƢỢNG

Năng lượng tiecircu thụ phụ thuộc vagraveo nhiều yếu tố sử dụng khaacutec nhau như Kiến

truacutec giao thức mạng Giao thức chọn đường Hoạt động truyền nhận khocircng dacircy

31 Kiến truacutec giao thức mạng

Kiến truacutec giao thức nagravey kết hợp giữa năng lượng vagrave chọn đường kết hợp số liệu

với caacutec giao thức mạng sử dụng năng lượng hiệu quả Kiến truacutec giao thức bao gồm

lớp vật lyacute lớp liecircn kết số liệu lớp mạng lớp truyền tải lớp ứng dụng phần quản lyacute

cocircng suất phần quản lyacute di động vagrave phần quản lyacute nhiệm vụ

Lớp vật lyacute cung cấp caacutec kỹ thuật điều chế phaacutet vagrave thu Vigrave mocirci trường coacute tạp acircm

vagrave caacutec nuacutet cảm biến coacute thể di động giao thức điều khiển truy cập mocirci trường (MAC)

phải xeacutet đến vấn đề cocircng suất vagrave phải coacute khả năng tối thiểu hoaacute việc va chạm với

thocircng tin quản baacute của caacutec nuacutet lacircn cận

Lớp mạng quan tacircm đến việc chọn đường số liệu được cung cấp bởi lớp truyền

tải

Lớp truyền tải giuacutep duy trigrave luồng số liệu nếu ứng dụng mạng cảm biến yecircu cầu

Tuỳ theo nhiệm vụ cảm biến caacutec loại phần mềm khaacutec nhau coacute thể được xacircy dựng vagrave

sử dụng ở lớp ứng dụng Ngoagravei ra caacutec phần quản lyacute cocircng suất di chuyển vagrave nhiệm vụ

sẽ giaacutem saacutet việc sử dụng cocircng suất sự di chuyển vagrave thực hiện nhiệm vụ giữa caacutec nuacutet

cảm biến Những phần nagravey giuacutep caacutec nuacutet cảm biến phối hợp nhiệm vụ cảm biến vagrave tiecircu

thụ năng lượng tổng thể thấp hơn

Phần quản lyacute năng lượng điều khiển việc sử dụng năng lượng của nuacutet mạng Viacute

dụ nuacutet mạng coacute thể tắt khối thu của noacute sau khi thu được một bản tin từ một nuacutet lacircn

cận Điều nagravey giuacutep traacutenh tạo ra caacutec bản tin giống nhau Cũng vậy khi mức năng lượng

của nuacutet mạng thấp noacute sẽ phaacutet quảng baacute tới caacutec nuacutet lacircn cận để thocircng baacuteo noacute coacute mức

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 12

năng lượng thấp vagrave khocircng thể tham gia vagraveo caacutec bản tin chọn đường Phần năng lượng

cograven lại sẽ dagravenh riecircng cho nhiệm vụ cảm biến

Phần quản lyacute di chuyển phaacutet hiện vagrave ghi lại sự di chuyển của caacutec nuacutet cảm biến để

duy trigrave tuyến tới người sử dụng vagrave caacutec nuacutet cảm biến coacute thể lưu vết của caacutec nuacutet cảm

biến lacircn cận Nhờ xaacutec định được caacutec nuacutet cảm biến lacircn cận caacutec nuacutet cảm biến coacute thể cacircn

bằng giữa cacircn bằng giữa cocircng suất của noacute vagrave nhiệm vụ thực hiện

Phần quản lyacute nhiệm vụ dugraveng để lagravem cacircn bằng vagrave lecircn kế hoạch caacutec nhiệm vụ cảm

biến trong một vugraveng xaacutec định Khocircng phải tất cả caacutec nuacutet cảm biến trong vugraveng đoacute đều

phải thực hiện nhiệm vụ cảm biến tại cugraveng một thời điểm Kết quả lagrave một số nuacutet cảm

biến thực hiện nhiều hơn caacutec nuacutet khaacutec tuỳ theo mức cocircng suất của noacute Những phần

quản lyacute nagravey lagrave cần thiết để caacutec nuacutet cảm biến coacute thể lagravem việc cugraveng nhau theo một caacutech

thức sử dụng hiệu quả cocircng suất chọn đường số liệu trong mạng cảm biến di động vagrave

phacircn chia tagravei nguyecircn giữa caacutec nuacutet cảm biến

Kiến truacutec mạng như trecircn goacutep phần quản lyacute năng lượng của caacutec nuacutet mạng đồng

thời duy trigrave hoạt động của toagraven mạng trong thời gian dagravei hơn

32 Giao thức chọn đường

321 Khoacute khăn trong giao thức chọn đường

Mặc dugrave caacutec ứng dụng của mạng WSN lagrave rất lớn tuy nhiecircn những mạng nagravey coacute

một số hạn chế như giới hạn về nguồn cocircng suất khả năng tiacutenh toaacuten vagrave độ rộng băng

thocircng Một số giao thức chọn đường quản lyacute cocircng suất vagrave trao đổi số liệu đatilde được

thiết kế cho WSN với yecircu cầu quan trọng nhất lagrave tiết kiệm được năng lượng

Một trong những mục tiecircu thiết kế chiacutenh của WSN lagrave keacuteo dagravei thời gian sống của

mạng vagrave traacutenh suy giảm kết nối nhờ caacutec kỹ thuật quản lyacute năng lượng Vấn đề nagravey cần

được giải quyết triệt để thigrave mới đạt được hiệu quả truyền tin trong WSN Caacutec giao thức

chọn đường trong WSN coacute thể khaacutec nhau tuỳ theo ứng dụng vagrave cấu truacutec mạng Tuy

nhiecircn việc chọn đường gặp phải những khoacute khăn như Phacircn bố nuacutet tiecircu thụ năng

lượng khocircng được lagravem mất độ chiacutenh xaacutec tiacutenh khocircng đồng nhất của nuacutet mạng tiacutenh

động của mạng khả năng định cỡ khả năng chống lỗi chất lượng dịch vụ

Phacircn bố nuacutet Việc phacircn bố nuacutet trong WSN phụ thuộc vagraveo ứng dụng vagrave coacute thể

được thực hiện bằng tay hoặc phacircn bố ngẫu nhiecircn Khi phacircn bố bằng tay số liệu được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 13

chọn đường thocircng qua caacutec đường đatilde định trước Tuy nhiecircn khi phacircn bố caacutec nuacutet ngẫu

nhiecircn sẽ tạo ra một cấu truacutec chọn đường đặc biệt (Ad-hoc)

Tiecircu thụ năng lượng khocircng được lagravem mất độ chiacutenh xaacutec Caacutec nuacutet cảm biến coacute

thể sử dụng quaacute caacutec giới hạn về cocircng suất để thực hiện tiacutenh toaacuten vagrave truyền tin trong

mocirci trường vocirc tuyến Thời gian sống của nuacutet mạng cảm biến phụ thuộc rất nhiều vagraveo

thời gian sử dụng của pin Trong WSN đa bước nhảy mỗi nuacutet đoacuteng hai vai trograve lagrave

truyền số liệu vagrave chọn đường Một số nuacutet cảm biến hoạt động sai chức năng do lỗi

nguồn cocircng suất coacute thể gacircy ra sự thay đổi cấu higravenh mạng nghiecircm trọng vagrave phải chọn

đường lại caacutec goacutei hoặc phải tổ chức lại mạng

Tiacutenh khocircng đồng nhất của nuacutet mạng Nghĩa lagrave caacutec nuacutet mạng coacute khả năng tiacutenh

toaacuten khả năng truyền tin vagrave coacute cocircng suất khaacutec nhau Khi đoacute sẽ gacircy khoacute khăn cho kỹ

thuật chọn đường

Khả năng chống lỗi Một số nuacutet cảm biến coacute thể bị lỗi hoặc bị ngắt do thiếu cocircng

suất hỏng phần cứng hoặc bị nhiễu mocirci trường Sự cố của caacutec nuacutet cảm biến khocircng

được ảnh hưởng tới nhiệm vụ của toagraven mạng cảm biến Nếu coacute nhiều nuacutet bị lỗi caacutec

giao thức chọn đường vagrave điều khiển truy cập mocirci trường (MAC) phải thagravenh lập caacutec

tuyến mới tới nuacutet gốc Việc nagravey coacute thể cần thiết phải điều chỉnh cocircng suất phaacutet vagrave tốc

độ tiacuten hiệu trecircn caacutec tuyến hiện tại để giảm sự tiecircu thụ năng lượng hoặc lagrave caacutec goacutei phải

chọn đường lại qua caacutec caacutec vugraveng mạng coacute cocircng suất khả dụng lớn hơn

Khả năng định cỡ Số lượng nuacutet mạng coacute thể lagrave hagraveng trăm hagraveng nghigraven hoặc

nhiều hơn Bất kỳ phương phaacutep chọn đường nagraveo cũng phải coacute khả năng lagravem việc với

một số lượng lớn caacutec nuacutet cảm biến như vậy

Tiacutenh động của mạng Trong nhiều nghiecircn cứu caacutec nuacutet cảm biến được coi lagrave cố

định Tuy nhiecircn trong một số ứng dụng cả nuacutet gốc vagrave caacutec nuacutet cảm biến coacute thể di

chuyển Khi đoacute caacutec bản tin chọn đường từ hoặc tới caacutec nuacutet di chuyển sẽ gặp phải caacutec

vần đề như đường liecircn lạc cấu higravenh mạng năng lượng độ rộng bănghellip

Chất lượng dịch vụ Khi năng lượng gần hết caacutec nuacutet mạng coacute thể yecircu cầu giảm

chất lượng caacutec kết quả để giảm mức tiecircu thụ năng lượng của nuacutet vagrave keacuteo dagravei thời gian

sống của toagraven mạng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 14

Mặc dugrave việc chọn đường gặp nhiều khoacute khăn nhưng khi coacute một giao thức chọn

đường tốt sẽ tiết kiệm thời gian truyền nhận thocircng tin giảm năng lượng tiecircu hao latildeng

phiacute do tắc nghẽn lỗi đường truyềnVigrave vậy người ta đatilde đưa ra một số giao thức chọn

đường magrave dưới đacircy sẽ trigravenh bầy

322 Caacutec giao thức chọn đường

Phần nagravey sẽ trigravenh bagravey về phương phaacutep chọn đường trong WSN Noacutei chung caacutec

giao thức chọn đường được chia lagravem 3 loại dựa vagraveo cấu truacutec mạng ngang hagraveng phacircn

cấp hoặc dựa vagraveo vị triacute

Trong chọn đường ngang hagraveng tất cả caacutec nuacutet thường coacute vai trograve hoặc chức năng

như nhau như cảm nhận truyền Chuacuteng sẽ thực hiện việc cảm nhận thocircng tin cần

thiết vagrave truyền số liệu về nuacutet gốc

Trong chọn đường phacircn cấp caacutec nuacutet sẽ đoacuteng vai trograve khaacutec nhau trong mạng sẽ coacute

nuacutet chủ đại diện cho từng nhoacutem caacutec nuacutet cảm biến để nhận số liệu từ caacutec nuacutet cảm biến

truyền tới Caacutec nuacutet chủ cũng tập hợp số liệu từ caacutec nuacutet trong nhoacutem của noacute trước khi

gửi số liệu đến nuacutet gốc Nuacutet chủ sẽ thay đổi khi bắt đầu chu kỳ lagravem việc mới vagrave sẽ thay

bằng nuacutet khaacutec coacute khả năng đảm nhận chức năng nagravey

Trong chọn đường dựa theo vị triacute thigrave vị triacute của caacutec nuacutet cảm biến sẽ được dugraveng để

chọn đường số liệu Giao thức chọn đường cograven coacute thể được phacircn loại dựa theo đa

đường yecircu cầu hỏiđaacutep QoS vagrave liecircn kết tuỳ thuộc vagraveo chế độ hoạt động Ngoagravei ra

cũng coacute thể chia thagravenh 3 loại chủ động tương taacutec hoặc lai gheacutep tuỳ thuộc vagraveo caacutech

thức magrave nguồn tigravem đường tời điacutech Một giao thức chọn đường được coi lagrave thiacutech ứng

nếu caacutec tham số của hệ thống coacute thể điều khiển được để phugrave hợp với caacutec trạng thaacutei

mạng hiện tại vagrave caacutec mức năng lượng khả dụng Một số giao thức chọn đường đatilde phaacutet

huy hiệu quả tiết kiệm tiecircu thụ năng lượng như LEACH

TEENampAPTEEN MECNampSVECN PEGASIS thuộc chọn đường phacircn cấp SPIN

Directed Diffusion CADR CUGAR thuộc chọn đường ngang hagraveng Trong đoacute đaacuteng

quan tacircm nhất lagrave giao thức chọn đường LEACH LEACH (Low Energy Adaptive

Clustering Hierarchy) - phacircn cấp nhoacutem thiacutech ứng cocircng suất thấp giao thức nagravey cho

pheacutep tiết kiệm năng lượng trong mạng WSN Mục điacutech của LEACH lagrave lựa chọn ngẫu

nhiecircn caacutec nuacutet cảm biến lagravem caacutec nuacutet chủ do đoacute việc tiecircu hao năng lượng khi liecircn lạc

với nuacutet gốc được trải đều cho tất cả caacutec nuacutet cảm biến trong mạng Quaacute trigravenh hoạt động

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 15

của LEACH được chia thagravenh 2 bước bước thiết lập vagrave bước ổn định Thời gian bước

ổn định keacuteo dagravei hơn so với thời gian của bước thiết lập để giảm thiểu phần điều khiển

Tại bước thiết lập sẽ xaacutec định nuacutet mạng nagraveo sẽ lagravem chủ Tại bước ổn định caacutec nuacutet cảm

biến bắt đầu cảm nhận vagrave truyền số liệu về nuacutet chủ nuacutet chủ cũng tập hợp số liệu từ caacutec

nuacutet trong nhoacutem trước khi gửi caacutec số liệu nagravey về nuacutet gốc Theo thử nghiệm mocirc phỏng

giao thức LEACH của mạng WSN coacute 160 nuacutet phacircn bố đều cocircng suất ban đầu của nuacutet

lagrave 30 Kết quả thu được lagrave khi truyền trực tiếp tới nuacutet gốc sau khoảng 470 chu kỳ

thời gian sẽ kết thuacutec truyền tin khi sử dụng giao thức LEACH sau khoảng 685 chu kỳ

thời gian mới kết thuacutec truyền tin Kết quả nagravey cho thấy đacircy lagrave một phương phaacutep chọn

đường phacircn cấp coacute khả năng tiết kiệm được năng lượng vagrave keacuteo dagravei thời gian sống của

mạng

Tuy nhiecircn cơ chế hoạt động của LEACH lagrave lựa chọn số liệu được tập trung vagrave

thực hiện theo chu kỳ Do đoacute giao thức nagravey chỉ thiacutech hợp với yecircu cầu giaacutem saacutet liecircn tục

bởi mạng cảm biến Với ứng dụng magrave người sử dụng khocircng cần tất cả caacutec số liệu ngay

lập tức thigrave việc truyền số liệu theo chu kỳ lagrave khocircng cần thiết vagrave coacute thể lagravem tiecircu tốn

năng lượng vocirc iacutech Giao thức LEACH cần tiếp tục được cải tiến để khắc phục hạn chế

33 Hoạt động truyền nhận khocircng dacircy

Đối với mạng cảm nhận khocircng dacircy thigrave năng lượng trở thagravenh một vấn đề được chuacute

yacute để duy trigrave hoạt động của hệ thống mạng vigrave caacutec nuacutet mạng độc lập chỉ được cung cấp

năng lượng từ một nguồn cố định (pin) Việc tiecircu thụ năng lượng thấp lagrave một nhu cầu

quan trọng cho caacutec hệ thống hoạt động bằng pin - khocircng được cung cấp năng lượng

thường xuyecircn Khi coacute một dograveng tiecircu thụ thấp thigrave thời gian sống của chuacuteng sẽ keacuteo dagravei

thecircm Hệ thống tiecircu thụ năng lượng thấp lagrave mục tiecircu cần đạt của mạng cảm nhận

khocircng dacircy sử dụng CC1010 Caacutec vấn đề đưa ra trong phần nagravey lagrave cơ sở cho việc viết

phần mềm tiết kiệm tiecircu thụ năng lượng cho nuacutet mạng cảm nhận khocircng dacircy

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 16

CHƢƠNG 2 MAtilde SỬA LỖI

Mạng phải coacute khả năng truyền chiacutenh xaacutec dữ liệu từ thiết bị nagravey tới thiết bị khaacutec

Một hệ thống khocircng bảo đảm dữ liệu nhận giống như dữ liệu truyền lagrave hệ thống khocircng

sử dụng được Coacute nhiều nhacircn tố như tạp nhiễu đường dacircy coacute thể lagravem hỏng một hoặc

nhiều bit của khối dữ liệu đang truyền Một hệ thống thực sự dugraveng được phải coacute cơ cấu

để phaacutet hiện vagrave sửa caacutec lỗi đoacute

Việc phaacutet hiện vagrave sửa lỗi được trang bị ở lớp liecircn kết dữ liệu hoặc lớp giao vận

tương ứng trong mocirc higravenh OSI

1 CAacuteC CƠ CHẾ TRUYỀN DỮ LIỆU

11 Truyền dữ liệu song song

bull Mỗi bit dugraveng một đường truyền riecircng Nếu coacute 8 bits được truyền đồng thời sẽ

yecircu cầu 8 đường truyền độc lập

bull Để truyền dữ liệu trecircn một đường truyền song song một kecircnh truyền riecircng

được dugraveng để thocircng baacuteo cho becircn nhận biết khi nagraveo dữ liệu coacute sẵn (clock signal)

bull Cần thecircm một kecircnh truyền khaacutec để becircn nhận baacuteo cho becircn gởi biết lagrave đatilde sẵn

sagraveng để nhận dữ liệu kế tiếp

12 Truyền dữ liệu tuần tự

bull Tất cả caacutec bit đều được truyền trecircn cugraveng một đường truyền bit nagravey tiếp theo

sau bit kia

bull Khocircng cần caacutec đường truyền riecircng cho tiacuten hiệu đồng bộ vagrave tiacuten hiệu bắt tay (caacutec

tiacuten hiệu nagravey được matilde hoacutea vagraveo dữ liệu truyền đi)

bull Vấn đề định thời (timing) đogravei hỏi phải coacute cơ chế đồng bộ giữa becircn truyền vagrave

becircn nhận

bull 2 caacutech giải quyết

- Bất đồng bộ mỗi kyacute tự được đồng bộ bởi start vagrave stop bit

- Đồng bộ mỗi khối kyacute tự được đồng bộ dugraveng cờ

13 Truyền bất đồng bộ

bull Dữ liệu được truyền theo từng kyacute tự để traacutenh việc mất đồng bộ khi nhận được chuỗi

bit quaacute dagravei

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 17

- 5 đến 8 bits

- Chỉ cần giữ đồng bộ trong một kyacute tự

- Taacutei đồng bộ cho mỗi kyacute tự mới

bull Hagravenh vi

- Đối với dograveng dữ liệu đều khoảng caacutech giữa caacutec kyacute tự lagrave đồng nhất (bằng chiều dagravei

của phần tử stop)

- Ở trạng thaacutei rỗi bộ thu phaacutet hiện sự chuyển 1 đến 0

- Lấy mẫu 7 khoảng kế tiếp (chiều dagravei kyacute tự)

- Đợi việc chuyển 1 đến 0 cho kyacute tự kế tiếp

bull Hiệu suất

- Đơn giản

- Rẻ

- Phiacute tổn 2 hoặc 3 bit cho một kyacute tự (~20)

- Thiacutech hợp cho dữ liệu với khoảng trống giữa caacutec kyacute tự lớn (dữ liệu nhập từ bagraven

phiacutem)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 18

bull Đồng bộ khung (frame synchronization) dugraveng caacutec kyacute tự điều khiển (STX ETX

DLE)

14 Truyền đồng bộ

bull Truyền khocircng cần startstop

bull Phải coacute tiacuten hiệu đồng bộ

bull Đồng bộ bit (bit synchronization) sử dụng caacutec phƣơng phaacutep sau

- Tiacutech hợp xung clock vagraveo dữ liệu truyền đi

+ Tiacutech hợp thocircng tin đồng bộ (clock) vagraveo trong dữ liệu truyền

+ Đầu nhận sẽ taacutech thocircng tin đồng bộ dựa vagraveo dữ liệu nhận được

+ Manchester differential Manchester tần số soacuteng mang (analog)

- Sử dụng đường clock riecircng

+ Dugraveng một đường tiacuten hiệu đồng bộ riecircng biệt

+ Một becircn (phaacutet hoặc nhận) tạo ra caacutec xung clock đồng bộ với caacutec bit truyền đi

trecircn đường clock riecircng

+ Becircn cograven lại dugraveng tiacuten hiệu trecircn đường clock riecircng để lagravem clock

+ Thiacutech hợp khi truyền trong khoảng caacutech ngắn

+ Tiacuten hiệu đồng bộ dễ bị suy giảm trecircn đường truyền

bull Đồng bộ frame

- Mỗi block dữ liệu được bắt đầu bằng một cờ gọi lagrave preamble kết thuacutec bằng

một cờ gọi lagrave postamble

- Preamble vagrave postamble lagrave một mẫu bit (bit pattern) được quy định sẵn

+ Một chuỗi caacutec kyacute tự SYN (16h trong bảng matilde ASCII)

+ Mẫu bit 11111110

- Frame dữ liệu + preamble + postamble + thocircng tin điều khiển

- Hiệu quả hơn so với truyền bất đồng bộ (phiacute tổn thấp hơn cho caacutec bit điều

khiển)

+ HDLC 48 bit điều khiển cho mỗi block 1000 kyacute tự (8000 bit)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 19

2 VẤN ĐỀ XỬ LYacute LỖI

11 Caacutec lỗi xẩy ra trecircn đường truyền

bull Mocirci trƣờng truyền dẫn bị nhiễu (điện từ hellip) dẫn đến dữ liệu nhận coacute lỗi

(caacutec bit bị thay đổi)

bull 2 caacutech khắc phục khi phaacutet hiện coacute lỗi

- Forward error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự hoặc caacutec

frame truyền đi để becircn nhận coacute thể phaacutet hiện khi nagraveo coacute lỗi va lỗi nằm ở đacircu để sửa

(coacute khả năng sửa lỗi)

- Feedback (backward) error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự

hoặc caacutec frame truyền đi chỉ đủ để phaacutet hiện khi nagraveo coacute lỗi (khocircng coacute khả năng sửa

lỗi) Cơ chế yecircu cầu truyền lại kyacute tựframe sai được dugraveng trong trường hợp nagravey

bull Phacircn loại lỗi

- Lỗi 1 bit

+ Chỉ 1 bit bị lỗi khocircng ảnh hưởng caacutec bit xung quanh

+ Thường xảy ra do nhiễu trắng

- Lỗi chugravem (busrt error)

+ Một chuỗi liecircn tục B bit trong đoacute bit đầu bit cuối vagrave caacutec bit bất kigrave nằm giữa

chuỗi đều bị lỗi

+ Thường xảy ra do nhiễu xung

+ Ảnh hưởng cagraveng lớn đối với tốc độ truyền cao

Bit error rate (BER) xaacutec suất một bit nhận đƣợc bị lỗi

12 Cơ chế phaacutet hiện lỗi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 3

13 Truyền bất đồng bộ 16

14 Truyền đồng bộ 18

2 VẤN ĐỀ XỬ LYacute LỖI 19

11 Caacutec lỗi xẩy ra trecircn đƣờng truyền 19

12 Cơ chế phaacutet hiện lỗi 19

13 Phaacutet hiện lỗi bằng bit parity 20

14 Bộ matilde phaacutet hiện lỗi 20

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes) 21

121 Kiểm tra chẵn lẻ (Parity Check) 22

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or

Checksum) 22

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check) 23

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde 26

31 Phaacutet hiện lỗi vagrave truyền lại 26

32 Caacutec phƣơng phaacutep tạo ra từ matilde 28

311 Matilde hoacutea khối tuyến tiacutenh 28

312 Matilde Hamming 30

a) Viacute dụ dugraveng (117) matilde Hamming 33

b) Matilde Hamming (74) 36

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2] 36

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung 39

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi 41

KẾT LUẬN 45

Tagravei liệu tham khảo 46

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 4

CHƢƠNG 1 TRUYỀN DỮ LIỆU

1 TỔNG QUAN VỀ MẠNG KHOcircNG DAcircY

11 Thế nagraveo lagrave mạng maacutey tiacutenh khocircng dacircy

111 Giới thiệu

Thuật ngữ ―mạng maacutey tiacutenh khocircng dacircy noacutei đến cocircng nghệ cho pheacutep hai hay

nhiều maacutey tiacutenh giao tiếp với nhau dugraveng những giao thức mạng chuẩn nhưng khocircng cần

dacircy caacutep mạng Noacute lagrave một hệ thống mạng dữ liệu linh hoạt được thực hiện như một sự

mở rộng hoặc một sự lựa chọn mới cho mạng maacutey tiacutenh hữu tuyến ( hay cograven gọi lagrave

mạng coacute dacircy ) Caacutec mạng maacutey tiacutenh khocircng dacircy sử dụng caacutec soacuteng điện từ khocircng gian

(soacuteng vocirc tuyến hoặc soacuteng aacutenh saacuteng) thu phaacutet dữ liệu qua khocircng khiacute giảm thiểu nhu

cầu về kết nối bằng dacircy Vigrave vậy caacutec mạng maacutey tiacutenh khocircng dacircy kết hợp liecircn kết dữ liệu

với tiacutenh di động của người sử dụng

Cocircng nghệ nagravey bắt nguồn từ một số chuẩn cocircng nghiệp như lagrave IEEE 80211 đatilde

tạo ra một số caacutec giải phaacutep khocircng dacircy coacute tiacutenh khả thi trong kinh doanh cocircng nghệ chế

tạo caacutec trường đại họchellip khi magrave ở đoacute mạng hữu tuyến lagrave khocircng thể thực hiện được

Ngagravey nay caacutec mạng maacutey tiacutenh khocircng dacircy cagraveng trở necircn quen thuộc hơn được cocircng

nhận như một sự lựa chọn kết nối đa năng cho một phạm vi lớn caacutec khaacutech hagraveng kinh

doanh

112 Ưu điểm của mạng maacutey tiacutenh khocircng dacircy

Mạng maacutey tiacutenh khocircng dacircy đang nhanh choacuteng trở thagravenh một mạng cốt lotildei trong

caacutec mạng maacutey tiacutenh vagrave đang phaacutet triển vượt trội Với cocircng nghệ nagravey những người sử

dụng coacute thể truy cập thocircng tin dugraveng chung magrave khocircng phải tigravem kiếm chỗ để nối dacircy

mạng chuacuteng ta coacute thể mở rộng phạm vi mạng magrave khocircng cần lắp đặt hoặc di chuyển

dacircy Caacutec mạng maacutey tiacutenh khocircng dacircy coacute ưu điểm về hiệu suất sự thuận lợi cụ thể như

sau

- Tiacutenh di động những người sử dụng mạng maacutey tiacutenh khocircng dacircy coacute thể truy

nhập nguồn thocircng tin ở bất kỳ nơi nagraveo Tiacutenh di động nagravey sẽ tăng năng suất vagrave tiacutenh kịp

thời thỏa matilden nhu cầu về thocircng tin magrave caacutec mạng hữu tuyến khocircng thể coacute được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 5

- Tiacutenh đơn giản lắp đặt thiết lập kết nối một mạng maacutey tiacutenh khocircng dacircy lagrave rất

dễ dagraveng đơn giản vagrave coacute thể traacutenh được việc keacuteo caacutep qua caacutec bức tường vagrave trần nhagrave

- Tiacutenh linh hoạt coacute thể triển khai ở những nơi magrave mạng hữu tuyến khocircng thể

triển khai được

- Tiết kiệm chi phiacute lacircu dagravei Trong khi đầu tư cần thiết ban đầu đối với phần

cứng của một mạng maacutey tiacutenh khocircng dacircy coacute thể cao hơn chi phiacute phần cứng của một

mạng hữu tuyến nhưng toagraven bộ phiacute tổn lắp đặt vagrave caacutec chi phiacute về thời gian tồn tại coacute

thể thấp hơn đaacuteng kể Chi phiacute dagravei hạn coacute lợi nhất trong caacutec mocirci trường động cần phải

di chuyển vagrave thay đổi thường xuyecircn

- Khả năng vocirc hƣớng caacutec mạng maacutey tiacutenh khocircng dacircy coacute thể được cấu higravenh theo

caacutec topo khaacutec nhau để đaacutep ứng caacutec nhu cầu ứng dụng vagrave lắp đặt cụ thể Caacutec cấu higravenh

dễ dagraveng thay đổi từ caacutec mạng ngang hagraveng thiacutech hợp cho một số lượng nhỏ người sử

dụng đến caacutec mạng coacute cơ sở hạ tầng đầy đủ dagravenh cho hagraveng nghigraven người sử dụng magrave coacute

khả năng di chuyển trecircn một vugraveng rộng

113 Hoạt động của mạng maacutey tiacutenh khocircng dacircy

Caacutec mạng maacutey tiacutenh khocircng dacircy sử dụng caacutec soacuteng điện từ khocircng gian (vocirc tuyến

hoặc aacutenh saacuteng) để truyền thocircng tin từ một điểm tới điểm khaacutec Caacutec soacuteng vocirc tuyến

thường được xem như caacutec soacuteng mang vocirc tuyến do chuacuteng chỉ thực hiện chức năng cung

cấp năng lượng cho một maacutey thu ở xa Dữ liệu đang được phaacutet được điều chế trecircn

soacuteng mang vocirc tuyến (thường được gọi lagrave điều chế soacuteng mang nhờ thocircng tin đang được

phaacutet) sao cho coacute thể được khocirci phục chiacutenh xaacutec tại maacutey thu

Nhiễu soacuteng mang vocirc tuyến coacute thể tồn tại trong cugraveng khocircng gian tại cugraveng thời

điểm magrave khocircng can nhiễu lẫn nhau nếu caacutec soacuteng vocirc tuyến được phaacutet trecircn caacutec tần số vocirc

tuyến khaacutec nhau Để nhận lại dữ liệu maacutey thu vocirc tuyến sẽ thu trecircn tần số vocirc tuyến của

maacutey phaacutet tương ứng

Trong một cấu higravenh mạng maacutey tiacutenh khocircng dacircy tiecircu chuẩn một thiết bị thuphaacutet

(bộ thuphaacutet) được gọi lagrave một điểm truy cập nối với mạng hữu tuyến từ một vị triacute cố

định sử dụng caacutep tiecircu chuẩn Chức năng tối thiểu của điểm truy cập lagrave thu lagravem đệm

vagrave phaacutet dữ liệu giữa mạng maacutey tiacutenh khocircng dacircy vagrave cơ sở hạ tầng mạng hữu tuyến Một

điểm truy cập đơn coacute thể hỗ trợ một nhoacutem nhỏ người sử dụng vagrave coacute thể thực hiện chức

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 6

năng trong một phạm vi từ một trăm đến vagravei trăm feet Điểm truy cập (hoặc anten

được gắn vagraveo điểm truy cập) thường được đặt cao nhưng về cơ bản coacute thể được đặt ở

bất kỳ chỗ nagraveo miễn lagrave đạt được vugraveng phủ soacuteng mong muốn

Những người sử dụng truy cập vagraveo mạng maacutey tiacutenh khocircng dacircy thocircng qua caacutec bộ

thiacutech ứng maacutey tiacutenh khocircng dacircy như caacutec Card mạng khocircng dacircy trong caacutec vi maacutey tiacutenh

caacutec maacutey Palm PDA Caacutec bộ thiacutech ứng maacutey tiacutenh khocircng dacircy cung cấp một giao diện

giữa hệ thống điều hagravenh mạng (NOS ndash Network Operation System) của maacutey khaacutech vagrave

caacutec soacuteng khocircng gian qua một anten Bản chất của kết nối khocircng dacircy lagrave trong suốt đối

với hệ điều hagravenh mạng

114 Caacutec mocirc higravenh của mạng maacutey tiacutenh khocircng dacircy cơ bản

Kiểu Ad ndash hoc

Mỗi maacutey tiacutenh trong mạng giao tiếp trực tiếp với nhau thocircng qua caacutec thiết bị card

mạng khocircng dacircy magrave khocircng dugraveng đến caacutec thiết bị định tuyến hay thu phaacutet khocircng dacircy

Wireless Station

Wireless StationWireless Station

Wireless Station

Higravenh I1 Mocirc higravenh mạng Ad ndash hoc ( hay mạng ngang hagraveng )

Kiểu Infrastructure

Caacutec maacutey tiacutenh trong hệ thống mạng sử dụng một hoặc nhiều caacutec thiết bị định

tuyến hay thiết bị thu phaacutet để thực hiện caacutec hoạt động trao đổi dữ liệu với nhau vagrave caacutec

hoạt động khaacutec

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 7

115 Cự ly truyền soacuteng tốc độ truyền dữ liệu

Truyền soacuteng điện từ trong khocircng gian sẽ gặp hiện tượng suy hao Vigrave thế đối với

kết nối khocircng dacircy noacutei chung khoảng caacutech cagraveng xa thigrave khả năng thu tiacuten hiệu cagraveng keacutem

tỷ lệ lỗi sẽ tăng lecircn dẫn đến tốc độ truyền dữ liệu sẽ phải giảm xuống

Caacutec tốc độ của chuẩn khocircng dacircy như 11 Mbps hay 54 Mbps khocircng liecircn quan đến

tốc độ kết nối hay tốc độ download vigrave những tốc độ nagravey được quyết định bởi nhagrave cung

cấp dịch vụ Internet

Với một hệ thống mạng khocircng dacircy dữ liệu được giử qua soacuteng radio necircn tốc độ

coacute thể bị ảnh hưởng bởi caacutec taacutec nhacircn gacircy nhiễu hoặc caacutec vật thể lớn Thiết bị định

tuyến khocircng dacircy sẽ tự động điều chỉnh xuống caacutec mức tốc độ thấp hơn (Viacute dụ như lagrave

từ 11 Mbps sẽ giảm xuống cograven 55 Mbps vagrave 2 Mbps hoặc thậm chiacute lagrave 1 Mbps)

12 Ứng dụng

Trong những năm gần đacircy caacutec nghiecircn cứu về WSN đatilde đạt được bước phaacutet triển

mạnh mẽ caacutec bước tiến từ caacutec nghiecircn cứu hứa hẹn taacutec động lớn đến caacutec ứng dụng

rộng ratildei trong caacutec lĩnh vực an ninh quốc gia chăm soacutec sức khỏe mocirci trường năng

lượng an toagraven thực phẩm vagrave sản xuất

Caacutec ứng dụng của mạng WSN thực sự chỉ bị giới hạn bởi sự tưởng tượng của con

người Sau đacircy lagrave caacutec ứng dụng phổ biến nhất của WSN

121 Ứng dụng quacircn sự an ninh vagrave thiecircn nhiecircn

Trong phản ứng với dịch bệnh thảm họa thiecircn nhiecircn lượng lớn caacutec cảm biến

được thả từ trecircn khocircng mạng lưới caacutec cảm biến sẽ cho biết vị triacute người sống soacutet vugraveng

nguy hiểm giuacutep cho người giaacutem saacutet coacute caacutec thocircng tin chiacutenh xaacutec đảm bảo hiệu quả vagrave an

toagraven cho caacutec hoạt động tigravem kiếm

Sử dụng mạng WSN hạn chế sự coacute mặt trực tiếp của con người trong mocirci trường

nguy hiểm Ứng dụng an ninh bao gồm phaacutet hiện xacircm nhập vagrave truy bắt tội phạm

Mạng cảm biến quacircn sự phaacutet hiện vagrave coacute được thocircng tin về sự di chuyển của đối

phương chất nổ vagrave caacutec thocircng tin khaacutec

Phaacutet hiện vagrave phacircn loại caacutec chất hoacutea chất sinh hoacutea soacuteng vocirc tuyến phoacuteng xạ hạt

nhacircn chất nổhellip

Giaacutem saacutet sự thay đổi khiacute hậu rừng biểnhellip

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 8

Giaacutem saacutet xe cộ trecircn đường

Giaacutem saacutet an ninh trong caacutec khu vực dacircn cư thương mạihellip

Theo dotildei biecircn giới kết hợp với vệ tinhhellip

Higravenh I2 Ứng dụng WSN trong an ninh quốc gia vagrave luật phaacutep

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 9

122 Ứng dụng trong giaacutem saacutet xe cộ vagrave thocircng tin liecircn quan

Mục tiecircu của caacutec hệ thống nagravey lagrave thu thập thocircng tin thocircng qua caacutec mạng cảm

biến xử lyacute vagrave lưu trữ dữ liệu tại trung tacircm sử dụng dữ liệu đoacute cho caacutec ứng dụng cần

thiết Hệ thống được lắp đặt dọc theo caacutec đường chiacutenh mạng cảm biến số tập hợp dữ

liệu về tốc độ lưu thocircng mật độ xe số lượng xe trecircn đường Dữ liệu sau đoacute được

truyền đến trung tacircm dữ liệu để xử lyacute Mạng theo dotildei liecircn tục cung cấp thocircng tin cập

nhật thường xuyecircn theo thời gian thực Caacutec thocircng tin thu được dugraveng để giaacutem saacutet lưu

lượng điều phối giao thocircng hoặc cho caacutec mục điacutech khaacutec

123 Điều khiển caacutec thiết bị trong nhagrave

Điều khiển caacutec thiết bị trong nhagrave

Higravenh I3 Caacutec ứng dụng điều khiển

Caacutec node cảm biến được lắp trecircn caacutec thiết bị vị triacute cần thiết sau đoacute kết nối thagravenh

mạng truyền dữ liệu về node trung tacircm Một khả năng coacute thể phaacutet triển lagrave caacutec cảm biến

theo dotildei y tế được gắn trực tiếp lecircn cơ thể người bệnh để đo đạc thường xuyecircn caacutec

thocircng số về huyết aacutep nhịp timhellip

124 Caacutec togravea nhagrave tự động

Ứng dụng cung cấp khả năng điều khiển quản lyacute tạo sự tiện lợi trong kiểm soaacutet

an ninhhellipQuản lyacute nhiều hệ thống cugraveng luacutec hệ thống chiếu saacuteng nhiệt độ an ninh

giaacutem saacutet nhacircn viecircn quản lyacute hiệu quả tiecircu thụ năng lượng trong togravea nhagrave gắn caacutec chip

lecircn hagraveng hoacuteagiảm được thời gian kiểm trahellipcoacute thể dễ dagraveng được thực hiện bằng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 10

C2WSNs vagrave cocircng nghệ ZigBee đặc điểm nổi bật lagrave dugraveng caacutec cocircng nghệ microsensor

tiecircu thụ rất iacutet cocircng suất thu phaacutet vocirc tuyến kỹ thuật liecircn lạc vả cảm biến khocircng dacircy đa

chức năng

125 Quản lyacute quaacute trigravenh tự động trong cocircng nghiệp

Caacutec ứng dụng trong sản xuất cocircng nghiệp gồm điều khiển quản lyacute hiệu suất vagrave

an toagraven Caacutec cảm biến đặt trong mocirci trường lagravem việc giaacutem saacutet quaacute trigravenh sản xuất chất

lượng sản phẩm kiểm soaacutet mocirci trường lagravem việc quản lyacute nhacircn viecircnhellipdữ liệu được đưa

về trung tacircm để người quản lyacute coacute thể đưa ra caacutec quyết định kịp thời

126 Caacutec ứng dụng trong y học

Một số bệnh viện vagrave trung tacircm y tế đang ứng dụng cocircng nghệ WSNs vagraveo tiền

chẩn đoaacuten chăm soacutec sức khỏe đối phoacute với caacutec dịch bệnh vagrave phục hồi chức năng cho

người bệnh WSNs cho pheacutep theo dotildei tigravenh trạng của caacutec bệnh nhacircn kinh niecircn ngay tại

nhagrave lagravem cho việc phacircn tiacutech vagrave điều trị thuận tiện hơn ruacutet ngắn thời gian điều trị tại

bệnh viện WSNs cograven cho pheacutep thu thập thocircng tin y tế qua thời gian dagravei thagravenh caacutec cơ

sở dữ liệu quan trọng caacutec biện phaacutep can thiệp hiệu quả

2 TRUYỀN DỮ LIỆU GIỮA CAacuteC NUacuteT MẠNG NGUYEcircN TẮC

Một nuacutet cảm nhận khocircng dacircy giao tiếp với caacutec nuacutet cảm nhận khaacutec bằng việc sử

dụng net work - stack

- Ở lớp ứng dụng (Application) dữ liệu coacute thể được gửi ở dạng goacutei do chip radio

ở lớp phần cứng coacute thể truyền vagrave nhận dữ liệu dạng byte necircn caacutec goacutei tin nagravey cần được

phacircn đoạn trước khi chuacuteng được gửi vagrave phải được gheacutep lại sau khi chuacuteng được nhận

Lớp điều khiển đa truy cập Media - Access - Control (MAC) chuyển tiếp lớp ứng

dụng với radio chip

+ Khi 1 goacutei tin được gửi đi nhờ 1 ứng dụng goacutei tin được phacircn nhỏ thagravenh caacutec

byte 1 chuỗi liecircn tiếp caacutec byte đặc biệt được gọi lagrave Preamble (phần mở đầu) được gửi

đi trước caacutec byte dữ liệu do đoacute phiacutea thu coacute thể đồng bộ vagrave xaacutec định phần bắt đầu của 1

goacutei tin

+ Sau khi nhận 1 byte radio chip matilde hoacutea bit dữ liệu vagrave truyền chuacuteng Ở phiacutea

nhận radio chip baacuteo hiệu việc đến của caacutec byte sau khi xaacutec định vagrave giải matilde caacutecbit dữ

liệu

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 11

+ Sau đoacute lớp MAC hợp lại goacutei tin bắt đầu từ goacutei đầu tiecircn sau goacutei preamble Tiếp

theo lớp MAC baacuteo hiệu việc đến của goacutei tin cho lớp trecircn

Caacutec byte dữ liệu coacute thể được matilde hoacutea một caacutech tugravey yacute sau khi được phacircn đoạn cugraveng

với matilde sửa lỗi (ECC ) Matilde sửa lỗi ECC được dugraveng để khocirci phục caacutec bit dữ liệu trong

trường hợp coacute số lượng nhỏ bit lỗi Khi caacutec byte dữ liệu đoacute tới bộ thu tại đacircy noacute được

giải matilde để trở về dạng caacutec byte dữ liệu ban đầu

3 TIẾT KIỆM VAgrave TIEcircU THỤ NĂNG LƢỢNG

Năng lượng tiecircu thụ phụ thuộc vagraveo nhiều yếu tố sử dụng khaacutec nhau như Kiến

truacutec giao thức mạng Giao thức chọn đường Hoạt động truyền nhận khocircng dacircy

31 Kiến truacutec giao thức mạng

Kiến truacutec giao thức nagravey kết hợp giữa năng lượng vagrave chọn đường kết hợp số liệu

với caacutec giao thức mạng sử dụng năng lượng hiệu quả Kiến truacutec giao thức bao gồm

lớp vật lyacute lớp liecircn kết số liệu lớp mạng lớp truyền tải lớp ứng dụng phần quản lyacute

cocircng suất phần quản lyacute di động vagrave phần quản lyacute nhiệm vụ

Lớp vật lyacute cung cấp caacutec kỹ thuật điều chế phaacutet vagrave thu Vigrave mocirci trường coacute tạp acircm

vagrave caacutec nuacutet cảm biến coacute thể di động giao thức điều khiển truy cập mocirci trường (MAC)

phải xeacutet đến vấn đề cocircng suất vagrave phải coacute khả năng tối thiểu hoaacute việc va chạm với

thocircng tin quản baacute của caacutec nuacutet lacircn cận

Lớp mạng quan tacircm đến việc chọn đường số liệu được cung cấp bởi lớp truyền

tải

Lớp truyền tải giuacutep duy trigrave luồng số liệu nếu ứng dụng mạng cảm biến yecircu cầu

Tuỳ theo nhiệm vụ cảm biến caacutec loại phần mềm khaacutec nhau coacute thể được xacircy dựng vagrave

sử dụng ở lớp ứng dụng Ngoagravei ra caacutec phần quản lyacute cocircng suất di chuyển vagrave nhiệm vụ

sẽ giaacutem saacutet việc sử dụng cocircng suất sự di chuyển vagrave thực hiện nhiệm vụ giữa caacutec nuacutet

cảm biến Những phần nagravey giuacutep caacutec nuacutet cảm biến phối hợp nhiệm vụ cảm biến vagrave tiecircu

thụ năng lượng tổng thể thấp hơn

Phần quản lyacute năng lượng điều khiển việc sử dụng năng lượng của nuacutet mạng Viacute

dụ nuacutet mạng coacute thể tắt khối thu của noacute sau khi thu được một bản tin từ một nuacutet lacircn

cận Điều nagravey giuacutep traacutenh tạo ra caacutec bản tin giống nhau Cũng vậy khi mức năng lượng

của nuacutet mạng thấp noacute sẽ phaacutet quảng baacute tới caacutec nuacutet lacircn cận để thocircng baacuteo noacute coacute mức

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 12

năng lượng thấp vagrave khocircng thể tham gia vagraveo caacutec bản tin chọn đường Phần năng lượng

cograven lại sẽ dagravenh riecircng cho nhiệm vụ cảm biến

Phần quản lyacute di chuyển phaacutet hiện vagrave ghi lại sự di chuyển của caacutec nuacutet cảm biến để

duy trigrave tuyến tới người sử dụng vagrave caacutec nuacutet cảm biến coacute thể lưu vết của caacutec nuacutet cảm

biến lacircn cận Nhờ xaacutec định được caacutec nuacutet cảm biến lacircn cận caacutec nuacutet cảm biến coacute thể cacircn

bằng giữa cacircn bằng giữa cocircng suất của noacute vagrave nhiệm vụ thực hiện

Phần quản lyacute nhiệm vụ dugraveng để lagravem cacircn bằng vagrave lecircn kế hoạch caacutec nhiệm vụ cảm

biến trong một vugraveng xaacutec định Khocircng phải tất cả caacutec nuacutet cảm biến trong vugraveng đoacute đều

phải thực hiện nhiệm vụ cảm biến tại cugraveng một thời điểm Kết quả lagrave một số nuacutet cảm

biến thực hiện nhiều hơn caacutec nuacutet khaacutec tuỳ theo mức cocircng suất của noacute Những phần

quản lyacute nagravey lagrave cần thiết để caacutec nuacutet cảm biến coacute thể lagravem việc cugraveng nhau theo một caacutech

thức sử dụng hiệu quả cocircng suất chọn đường số liệu trong mạng cảm biến di động vagrave

phacircn chia tagravei nguyecircn giữa caacutec nuacutet cảm biến

Kiến truacutec mạng như trecircn goacutep phần quản lyacute năng lượng của caacutec nuacutet mạng đồng

thời duy trigrave hoạt động của toagraven mạng trong thời gian dagravei hơn

32 Giao thức chọn đường

321 Khoacute khăn trong giao thức chọn đường

Mặc dugrave caacutec ứng dụng của mạng WSN lagrave rất lớn tuy nhiecircn những mạng nagravey coacute

một số hạn chế như giới hạn về nguồn cocircng suất khả năng tiacutenh toaacuten vagrave độ rộng băng

thocircng Một số giao thức chọn đường quản lyacute cocircng suất vagrave trao đổi số liệu đatilde được

thiết kế cho WSN với yecircu cầu quan trọng nhất lagrave tiết kiệm được năng lượng

Một trong những mục tiecircu thiết kế chiacutenh của WSN lagrave keacuteo dagravei thời gian sống của

mạng vagrave traacutenh suy giảm kết nối nhờ caacutec kỹ thuật quản lyacute năng lượng Vấn đề nagravey cần

được giải quyết triệt để thigrave mới đạt được hiệu quả truyền tin trong WSN Caacutec giao thức

chọn đường trong WSN coacute thể khaacutec nhau tuỳ theo ứng dụng vagrave cấu truacutec mạng Tuy

nhiecircn việc chọn đường gặp phải những khoacute khăn như Phacircn bố nuacutet tiecircu thụ năng

lượng khocircng được lagravem mất độ chiacutenh xaacutec tiacutenh khocircng đồng nhất của nuacutet mạng tiacutenh

động của mạng khả năng định cỡ khả năng chống lỗi chất lượng dịch vụ

Phacircn bố nuacutet Việc phacircn bố nuacutet trong WSN phụ thuộc vagraveo ứng dụng vagrave coacute thể

được thực hiện bằng tay hoặc phacircn bố ngẫu nhiecircn Khi phacircn bố bằng tay số liệu được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 13

chọn đường thocircng qua caacutec đường đatilde định trước Tuy nhiecircn khi phacircn bố caacutec nuacutet ngẫu

nhiecircn sẽ tạo ra một cấu truacutec chọn đường đặc biệt (Ad-hoc)

Tiecircu thụ năng lượng khocircng được lagravem mất độ chiacutenh xaacutec Caacutec nuacutet cảm biến coacute

thể sử dụng quaacute caacutec giới hạn về cocircng suất để thực hiện tiacutenh toaacuten vagrave truyền tin trong

mocirci trường vocirc tuyến Thời gian sống của nuacutet mạng cảm biến phụ thuộc rất nhiều vagraveo

thời gian sử dụng của pin Trong WSN đa bước nhảy mỗi nuacutet đoacuteng hai vai trograve lagrave

truyền số liệu vagrave chọn đường Một số nuacutet cảm biến hoạt động sai chức năng do lỗi

nguồn cocircng suất coacute thể gacircy ra sự thay đổi cấu higravenh mạng nghiecircm trọng vagrave phải chọn

đường lại caacutec goacutei hoặc phải tổ chức lại mạng

Tiacutenh khocircng đồng nhất của nuacutet mạng Nghĩa lagrave caacutec nuacutet mạng coacute khả năng tiacutenh

toaacuten khả năng truyền tin vagrave coacute cocircng suất khaacutec nhau Khi đoacute sẽ gacircy khoacute khăn cho kỹ

thuật chọn đường

Khả năng chống lỗi Một số nuacutet cảm biến coacute thể bị lỗi hoặc bị ngắt do thiếu cocircng

suất hỏng phần cứng hoặc bị nhiễu mocirci trường Sự cố của caacutec nuacutet cảm biến khocircng

được ảnh hưởng tới nhiệm vụ của toagraven mạng cảm biến Nếu coacute nhiều nuacutet bị lỗi caacutec

giao thức chọn đường vagrave điều khiển truy cập mocirci trường (MAC) phải thagravenh lập caacutec

tuyến mới tới nuacutet gốc Việc nagravey coacute thể cần thiết phải điều chỉnh cocircng suất phaacutet vagrave tốc

độ tiacuten hiệu trecircn caacutec tuyến hiện tại để giảm sự tiecircu thụ năng lượng hoặc lagrave caacutec goacutei phải

chọn đường lại qua caacutec caacutec vugraveng mạng coacute cocircng suất khả dụng lớn hơn

Khả năng định cỡ Số lượng nuacutet mạng coacute thể lagrave hagraveng trăm hagraveng nghigraven hoặc

nhiều hơn Bất kỳ phương phaacutep chọn đường nagraveo cũng phải coacute khả năng lagravem việc với

một số lượng lớn caacutec nuacutet cảm biến như vậy

Tiacutenh động của mạng Trong nhiều nghiecircn cứu caacutec nuacutet cảm biến được coi lagrave cố

định Tuy nhiecircn trong một số ứng dụng cả nuacutet gốc vagrave caacutec nuacutet cảm biến coacute thể di

chuyển Khi đoacute caacutec bản tin chọn đường từ hoặc tới caacutec nuacutet di chuyển sẽ gặp phải caacutec

vần đề như đường liecircn lạc cấu higravenh mạng năng lượng độ rộng bănghellip

Chất lượng dịch vụ Khi năng lượng gần hết caacutec nuacutet mạng coacute thể yecircu cầu giảm

chất lượng caacutec kết quả để giảm mức tiecircu thụ năng lượng của nuacutet vagrave keacuteo dagravei thời gian

sống của toagraven mạng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 14

Mặc dugrave việc chọn đường gặp nhiều khoacute khăn nhưng khi coacute một giao thức chọn

đường tốt sẽ tiết kiệm thời gian truyền nhận thocircng tin giảm năng lượng tiecircu hao latildeng

phiacute do tắc nghẽn lỗi đường truyềnVigrave vậy người ta đatilde đưa ra một số giao thức chọn

đường magrave dưới đacircy sẽ trigravenh bầy

322 Caacutec giao thức chọn đường

Phần nagravey sẽ trigravenh bagravey về phương phaacutep chọn đường trong WSN Noacutei chung caacutec

giao thức chọn đường được chia lagravem 3 loại dựa vagraveo cấu truacutec mạng ngang hagraveng phacircn

cấp hoặc dựa vagraveo vị triacute

Trong chọn đường ngang hagraveng tất cả caacutec nuacutet thường coacute vai trograve hoặc chức năng

như nhau như cảm nhận truyền Chuacuteng sẽ thực hiện việc cảm nhận thocircng tin cần

thiết vagrave truyền số liệu về nuacutet gốc

Trong chọn đường phacircn cấp caacutec nuacutet sẽ đoacuteng vai trograve khaacutec nhau trong mạng sẽ coacute

nuacutet chủ đại diện cho từng nhoacutem caacutec nuacutet cảm biến để nhận số liệu từ caacutec nuacutet cảm biến

truyền tới Caacutec nuacutet chủ cũng tập hợp số liệu từ caacutec nuacutet trong nhoacutem của noacute trước khi

gửi số liệu đến nuacutet gốc Nuacutet chủ sẽ thay đổi khi bắt đầu chu kỳ lagravem việc mới vagrave sẽ thay

bằng nuacutet khaacutec coacute khả năng đảm nhận chức năng nagravey

Trong chọn đường dựa theo vị triacute thigrave vị triacute của caacutec nuacutet cảm biến sẽ được dugraveng để

chọn đường số liệu Giao thức chọn đường cograven coacute thể được phacircn loại dựa theo đa

đường yecircu cầu hỏiđaacutep QoS vagrave liecircn kết tuỳ thuộc vagraveo chế độ hoạt động Ngoagravei ra

cũng coacute thể chia thagravenh 3 loại chủ động tương taacutec hoặc lai gheacutep tuỳ thuộc vagraveo caacutech

thức magrave nguồn tigravem đường tời điacutech Một giao thức chọn đường được coi lagrave thiacutech ứng

nếu caacutec tham số của hệ thống coacute thể điều khiển được để phugrave hợp với caacutec trạng thaacutei

mạng hiện tại vagrave caacutec mức năng lượng khả dụng Một số giao thức chọn đường đatilde phaacutet

huy hiệu quả tiết kiệm tiecircu thụ năng lượng như LEACH

TEENampAPTEEN MECNampSVECN PEGASIS thuộc chọn đường phacircn cấp SPIN

Directed Diffusion CADR CUGAR thuộc chọn đường ngang hagraveng Trong đoacute đaacuteng

quan tacircm nhất lagrave giao thức chọn đường LEACH LEACH (Low Energy Adaptive

Clustering Hierarchy) - phacircn cấp nhoacutem thiacutech ứng cocircng suất thấp giao thức nagravey cho

pheacutep tiết kiệm năng lượng trong mạng WSN Mục điacutech của LEACH lagrave lựa chọn ngẫu

nhiecircn caacutec nuacutet cảm biến lagravem caacutec nuacutet chủ do đoacute việc tiecircu hao năng lượng khi liecircn lạc

với nuacutet gốc được trải đều cho tất cả caacutec nuacutet cảm biến trong mạng Quaacute trigravenh hoạt động

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 15

của LEACH được chia thagravenh 2 bước bước thiết lập vagrave bước ổn định Thời gian bước

ổn định keacuteo dagravei hơn so với thời gian của bước thiết lập để giảm thiểu phần điều khiển

Tại bước thiết lập sẽ xaacutec định nuacutet mạng nagraveo sẽ lagravem chủ Tại bước ổn định caacutec nuacutet cảm

biến bắt đầu cảm nhận vagrave truyền số liệu về nuacutet chủ nuacutet chủ cũng tập hợp số liệu từ caacutec

nuacutet trong nhoacutem trước khi gửi caacutec số liệu nagravey về nuacutet gốc Theo thử nghiệm mocirc phỏng

giao thức LEACH của mạng WSN coacute 160 nuacutet phacircn bố đều cocircng suất ban đầu của nuacutet

lagrave 30 Kết quả thu được lagrave khi truyền trực tiếp tới nuacutet gốc sau khoảng 470 chu kỳ

thời gian sẽ kết thuacutec truyền tin khi sử dụng giao thức LEACH sau khoảng 685 chu kỳ

thời gian mới kết thuacutec truyền tin Kết quả nagravey cho thấy đacircy lagrave một phương phaacutep chọn

đường phacircn cấp coacute khả năng tiết kiệm được năng lượng vagrave keacuteo dagravei thời gian sống của

mạng

Tuy nhiecircn cơ chế hoạt động của LEACH lagrave lựa chọn số liệu được tập trung vagrave

thực hiện theo chu kỳ Do đoacute giao thức nagravey chỉ thiacutech hợp với yecircu cầu giaacutem saacutet liecircn tục

bởi mạng cảm biến Với ứng dụng magrave người sử dụng khocircng cần tất cả caacutec số liệu ngay

lập tức thigrave việc truyền số liệu theo chu kỳ lagrave khocircng cần thiết vagrave coacute thể lagravem tiecircu tốn

năng lượng vocirc iacutech Giao thức LEACH cần tiếp tục được cải tiến để khắc phục hạn chế

33 Hoạt động truyền nhận khocircng dacircy

Đối với mạng cảm nhận khocircng dacircy thigrave năng lượng trở thagravenh một vấn đề được chuacute

yacute để duy trigrave hoạt động của hệ thống mạng vigrave caacutec nuacutet mạng độc lập chỉ được cung cấp

năng lượng từ một nguồn cố định (pin) Việc tiecircu thụ năng lượng thấp lagrave một nhu cầu

quan trọng cho caacutec hệ thống hoạt động bằng pin - khocircng được cung cấp năng lượng

thường xuyecircn Khi coacute một dograveng tiecircu thụ thấp thigrave thời gian sống của chuacuteng sẽ keacuteo dagravei

thecircm Hệ thống tiecircu thụ năng lượng thấp lagrave mục tiecircu cần đạt của mạng cảm nhận

khocircng dacircy sử dụng CC1010 Caacutec vấn đề đưa ra trong phần nagravey lagrave cơ sở cho việc viết

phần mềm tiết kiệm tiecircu thụ năng lượng cho nuacutet mạng cảm nhận khocircng dacircy

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 16

CHƢƠNG 2 MAtilde SỬA LỖI

Mạng phải coacute khả năng truyền chiacutenh xaacutec dữ liệu từ thiết bị nagravey tới thiết bị khaacutec

Một hệ thống khocircng bảo đảm dữ liệu nhận giống như dữ liệu truyền lagrave hệ thống khocircng

sử dụng được Coacute nhiều nhacircn tố như tạp nhiễu đường dacircy coacute thể lagravem hỏng một hoặc

nhiều bit của khối dữ liệu đang truyền Một hệ thống thực sự dugraveng được phải coacute cơ cấu

để phaacutet hiện vagrave sửa caacutec lỗi đoacute

Việc phaacutet hiện vagrave sửa lỗi được trang bị ở lớp liecircn kết dữ liệu hoặc lớp giao vận

tương ứng trong mocirc higravenh OSI

1 CAacuteC CƠ CHẾ TRUYỀN DỮ LIỆU

11 Truyền dữ liệu song song

bull Mỗi bit dugraveng một đường truyền riecircng Nếu coacute 8 bits được truyền đồng thời sẽ

yecircu cầu 8 đường truyền độc lập

bull Để truyền dữ liệu trecircn một đường truyền song song một kecircnh truyền riecircng

được dugraveng để thocircng baacuteo cho becircn nhận biết khi nagraveo dữ liệu coacute sẵn (clock signal)

bull Cần thecircm một kecircnh truyền khaacutec để becircn nhận baacuteo cho becircn gởi biết lagrave đatilde sẵn

sagraveng để nhận dữ liệu kế tiếp

12 Truyền dữ liệu tuần tự

bull Tất cả caacutec bit đều được truyền trecircn cugraveng một đường truyền bit nagravey tiếp theo

sau bit kia

bull Khocircng cần caacutec đường truyền riecircng cho tiacuten hiệu đồng bộ vagrave tiacuten hiệu bắt tay (caacutec

tiacuten hiệu nagravey được matilde hoacutea vagraveo dữ liệu truyền đi)

bull Vấn đề định thời (timing) đogravei hỏi phải coacute cơ chế đồng bộ giữa becircn truyền vagrave

becircn nhận

bull 2 caacutech giải quyết

- Bất đồng bộ mỗi kyacute tự được đồng bộ bởi start vagrave stop bit

- Đồng bộ mỗi khối kyacute tự được đồng bộ dugraveng cờ

13 Truyền bất đồng bộ

bull Dữ liệu được truyền theo từng kyacute tự để traacutenh việc mất đồng bộ khi nhận được chuỗi

bit quaacute dagravei

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 17

- 5 đến 8 bits

- Chỉ cần giữ đồng bộ trong một kyacute tự

- Taacutei đồng bộ cho mỗi kyacute tự mới

bull Hagravenh vi

- Đối với dograveng dữ liệu đều khoảng caacutech giữa caacutec kyacute tự lagrave đồng nhất (bằng chiều dagravei

của phần tử stop)

- Ở trạng thaacutei rỗi bộ thu phaacutet hiện sự chuyển 1 đến 0

- Lấy mẫu 7 khoảng kế tiếp (chiều dagravei kyacute tự)

- Đợi việc chuyển 1 đến 0 cho kyacute tự kế tiếp

bull Hiệu suất

- Đơn giản

- Rẻ

- Phiacute tổn 2 hoặc 3 bit cho một kyacute tự (~20)

- Thiacutech hợp cho dữ liệu với khoảng trống giữa caacutec kyacute tự lớn (dữ liệu nhập từ bagraven

phiacutem)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 18

bull Đồng bộ khung (frame synchronization) dugraveng caacutec kyacute tự điều khiển (STX ETX

DLE)

14 Truyền đồng bộ

bull Truyền khocircng cần startstop

bull Phải coacute tiacuten hiệu đồng bộ

bull Đồng bộ bit (bit synchronization) sử dụng caacutec phƣơng phaacutep sau

- Tiacutech hợp xung clock vagraveo dữ liệu truyền đi

+ Tiacutech hợp thocircng tin đồng bộ (clock) vagraveo trong dữ liệu truyền

+ Đầu nhận sẽ taacutech thocircng tin đồng bộ dựa vagraveo dữ liệu nhận được

+ Manchester differential Manchester tần số soacuteng mang (analog)

- Sử dụng đường clock riecircng

+ Dugraveng một đường tiacuten hiệu đồng bộ riecircng biệt

+ Một becircn (phaacutet hoặc nhận) tạo ra caacutec xung clock đồng bộ với caacutec bit truyền đi

trecircn đường clock riecircng

+ Becircn cograven lại dugraveng tiacuten hiệu trecircn đường clock riecircng để lagravem clock

+ Thiacutech hợp khi truyền trong khoảng caacutech ngắn

+ Tiacuten hiệu đồng bộ dễ bị suy giảm trecircn đường truyền

bull Đồng bộ frame

- Mỗi block dữ liệu được bắt đầu bằng một cờ gọi lagrave preamble kết thuacutec bằng

một cờ gọi lagrave postamble

- Preamble vagrave postamble lagrave một mẫu bit (bit pattern) được quy định sẵn

+ Một chuỗi caacutec kyacute tự SYN (16h trong bảng matilde ASCII)

+ Mẫu bit 11111110

- Frame dữ liệu + preamble + postamble + thocircng tin điều khiển

- Hiệu quả hơn so với truyền bất đồng bộ (phiacute tổn thấp hơn cho caacutec bit điều

khiển)

+ HDLC 48 bit điều khiển cho mỗi block 1000 kyacute tự (8000 bit)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 19

2 VẤN ĐỀ XỬ LYacute LỖI

11 Caacutec lỗi xẩy ra trecircn đường truyền

bull Mocirci trƣờng truyền dẫn bị nhiễu (điện từ hellip) dẫn đến dữ liệu nhận coacute lỗi

(caacutec bit bị thay đổi)

bull 2 caacutech khắc phục khi phaacutet hiện coacute lỗi

- Forward error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự hoặc caacutec

frame truyền đi để becircn nhận coacute thể phaacutet hiện khi nagraveo coacute lỗi va lỗi nằm ở đacircu để sửa

(coacute khả năng sửa lỗi)

- Feedback (backward) error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự

hoặc caacutec frame truyền đi chỉ đủ để phaacutet hiện khi nagraveo coacute lỗi (khocircng coacute khả năng sửa

lỗi) Cơ chế yecircu cầu truyền lại kyacute tựframe sai được dugraveng trong trường hợp nagravey

bull Phacircn loại lỗi

- Lỗi 1 bit

+ Chỉ 1 bit bị lỗi khocircng ảnh hưởng caacutec bit xung quanh

+ Thường xảy ra do nhiễu trắng

- Lỗi chugravem (busrt error)

+ Một chuỗi liecircn tục B bit trong đoacute bit đầu bit cuối vagrave caacutec bit bất kigrave nằm giữa

chuỗi đều bị lỗi

+ Thường xảy ra do nhiễu xung

+ Ảnh hưởng cagraveng lớn đối với tốc độ truyền cao

Bit error rate (BER) xaacutec suất một bit nhận đƣợc bị lỗi

12 Cơ chế phaacutet hiện lỗi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 4

CHƢƠNG 1 TRUYỀN DỮ LIỆU

1 TỔNG QUAN VỀ MẠNG KHOcircNG DAcircY

11 Thế nagraveo lagrave mạng maacutey tiacutenh khocircng dacircy

111 Giới thiệu

Thuật ngữ ―mạng maacutey tiacutenh khocircng dacircy noacutei đến cocircng nghệ cho pheacutep hai hay

nhiều maacutey tiacutenh giao tiếp với nhau dugraveng những giao thức mạng chuẩn nhưng khocircng cần

dacircy caacutep mạng Noacute lagrave một hệ thống mạng dữ liệu linh hoạt được thực hiện như một sự

mở rộng hoặc một sự lựa chọn mới cho mạng maacutey tiacutenh hữu tuyến ( hay cograven gọi lagrave

mạng coacute dacircy ) Caacutec mạng maacutey tiacutenh khocircng dacircy sử dụng caacutec soacuteng điện từ khocircng gian

(soacuteng vocirc tuyến hoặc soacuteng aacutenh saacuteng) thu phaacutet dữ liệu qua khocircng khiacute giảm thiểu nhu

cầu về kết nối bằng dacircy Vigrave vậy caacutec mạng maacutey tiacutenh khocircng dacircy kết hợp liecircn kết dữ liệu

với tiacutenh di động của người sử dụng

Cocircng nghệ nagravey bắt nguồn từ một số chuẩn cocircng nghiệp như lagrave IEEE 80211 đatilde

tạo ra một số caacutec giải phaacutep khocircng dacircy coacute tiacutenh khả thi trong kinh doanh cocircng nghệ chế

tạo caacutec trường đại họchellip khi magrave ở đoacute mạng hữu tuyến lagrave khocircng thể thực hiện được

Ngagravey nay caacutec mạng maacutey tiacutenh khocircng dacircy cagraveng trở necircn quen thuộc hơn được cocircng

nhận như một sự lựa chọn kết nối đa năng cho một phạm vi lớn caacutec khaacutech hagraveng kinh

doanh

112 Ưu điểm của mạng maacutey tiacutenh khocircng dacircy

Mạng maacutey tiacutenh khocircng dacircy đang nhanh choacuteng trở thagravenh một mạng cốt lotildei trong

caacutec mạng maacutey tiacutenh vagrave đang phaacutet triển vượt trội Với cocircng nghệ nagravey những người sử

dụng coacute thể truy cập thocircng tin dugraveng chung magrave khocircng phải tigravem kiếm chỗ để nối dacircy

mạng chuacuteng ta coacute thể mở rộng phạm vi mạng magrave khocircng cần lắp đặt hoặc di chuyển

dacircy Caacutec mạng maacutey tiacutenh khocircng dacircy coacute ưu điểm về hiệu suất sự thuận lợi cụ thể như

sau

- Tiacutenh di động những người sử dụng mạng maacutey tiacutenh khocircng dacircy coacute thể truy

nhập nguồn thocircng tin ở bất kỳ nơi nagraveo Tiacutenh di động nagravey sẽ tăng năng suất vagrave tiacutenh kịp

thời thỏa matilden nhu cầu về thocircng tin magrave caacutec mạng hữu tuyến khocircng thể coacute được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 5

- Tiacutenh đơn giản lắp đặt thiết lập kết nối một mạng maacutey tiacutenh khocircng dacircy lagrave rất

dễ dagraveng đơn giản vagrave coacute thể traacutenh được việc keacuteo caacutep qua caacutec bức tường vagrave trần nhagrave

- Tiacutenh linh hoạt coacute thể triển khai ở những nơi magrave mạng hữu tuyến khocircng thể

triển khai được

- Tiết kiệm chi phiacute lacircu dagravei Trong khi đầu tư cần thiết ban đầu đối với phần

cứng của một mạng maacutey tiacutenh khocircng dacircy coacute thể cao hơn chi phiacute phần cứng của một

mạng hữu tuyến nhưng toagraven bộ phiacute tổn lắp đặt vagrave caacutec chi phiacute về thời gian tồn tại coacute

thể thấp hơn đaacuteng kể Chi phiacute dagravei hạn coacute lợi nhất trong caacutec mocirci trường động cần phải

di chuyển vagrave thay đổi thường xuyecircn

- Khả năng vocirc hƣớng caacutec mạng maacutey tiacutenh khocircng dacircy coacute thể được cấu higravenh theo

caacutec topo khaacutec nhau để đaacutep ứng caacutec nhu cầu ứng dụng vagrave lắp đặt cụ thể Caacutec cấu higravenh

dễ dagraveng thay đổi từ caacutec mạng ngang hagraveng thiacutech hợp cho một số lượng nhỏ người sử

dụng đến caacutec mạng coacute cơ sở hạ tầng đầy đủ dagravenh cho hagraveng nghigraven người sử dụng magrave coacute

khả năng di chuyển trecircn một vugraveng rộng

113 Hoạt động của mạng maacutey tiacutenh khocircng dacircy

Caacutec mạng maacutey tiacutenh khocircng dacircy sử dụng caacutec soacuteng điện từ khocircng gian (vocirc tuyến

hoặc aacutenh saacuteng) để truyền thocircng tin từ một điểm tới điểm khaacutec Caacutec soacuteng vocirc tuyến

thường được xem như caacutec soacuteng mang vocirc tuyến do chuacuteng chỉ thực hiện chức năng cung

cấp năng lượng cho một maacutey thu ở xa Dữ liệu đang được phaacutet được điều chế trecircn

soacuteng mang vocirc tuyến (thường được gọi lagrave điều chế soacuteng mang nhờ thocircng tin đang được

phaacutet) sao cho coacute thể được khocirci phục chiacutenh xaacutec tại maacutey thu

Nhiễu soacuteng mang vocirc tuyến coacute thể tồn tại trong cugraveng khocircng gian tại cugraveng thời

điểm magrave khocircng can nhiễu lẫn nhau nếu caacutec soacuteng vocirc tuyến được phaacutet trecircn caacutec tần số vocirc

tuyến khaacutec nhau Để nhận lại dữ liệu maacutey thu vocirc tuyến sẽ thu trecircn tần số vocirc tuyến của

maacutey phaacutet tương ứng

Trong một cấu higravenh mạng maacutey tiacutenh khocircng dacircy tiecircu chuẩn một thiết bị thuphaacutet

(bộ thuphaacutet) được gọi lagrave một điểm truy cập nối với mạng hữu tuyến từ một vị triacute cố

định sử dụng caacutep tiecircu chuẩn Chức năng tối thiểu của điểm truy cập lagrave thu lagravem đệm

vagrave phaacutet dữ liệu giữa mạng maacutey tiacutenh khocircng dacircy vagrave cơ sở hạ tầng mạng hữu tuyến Một

điểm truy cập đơn coacute thể hỗ trợ một nhoacutem nhỏ người sử dụng vagrave coacute thể thực hiện chức

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 6

năng trong một phạm vi từ một trăm đến vagravei trăm feet Điểm truy cập (hoặc anten

được gắn vagraveo điểm truy cập) thường được đặt cao nhưng về cơ bản coacute thể được đặt ở

bất kỳ chỗ nagraveo miễn lagrave đạt được vugraveng phủ soacuteng mong muốn

Những người sử dụng truy cập vagraveo mạng maacutey tiacutenh khocircng dacircy thocircng qua caacutec bộ

thiacutech ứng maacutey tiacutenh khocircng dacircy như caacutec Card mạng khocircng dacircy trong caacutec vi maacutey tiacutenh

caacutec maacutey Palm PDA Caacutec bộ thiacutech ứng maacutey tiacutenh khocircng dacircy cung cấp một giao diện

giữa hệ thống điều hagravenh mạng (NOS ndash Network Operation System) của maacutey khaacutech vagrave

caacutec soacuteng khocircng gian qua một anten Bản chất của kết nối khocircng dacircy lagrave trong suốt đối

với hệ điều hagravenh mạng

114 Caacutec mocirc higravenh của mạng maacutey tiacutenh khocircng dacircy cơ bản

Kiểu Ad ndash hoc

Mỗi maacutey tiacutenh trong mạng giao tiếp trực tiếp với nhau thocircng qua caacutec thiết bị card

mạng khocircng dacircy magrave khocircng dugraveng đến caacutec thiết bị định tuyến hay thu phaacutet khocircng dacircy

Wireless Station

Wireless StationWireless Station

Wireless Station

Higravenh I1 Mocirc higravenh mạng Ad ndash hoc ( hay mạng ngang hagraveng )

Kiểu Infrastructure

Caacutec maacutey tiacutenh trong hệ thống mạng sử dụng một hoặc nhiều caacutec thiết bị định

tuyến hay thiết bị thu phaacutet để thực hiện caacutec hoạt động trao đổi dữ liệu với nhau vagrave caacutec

hoạt động khaacutec

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 7

115 Cự ly truyền soacuteng tốc độ truyền dữ liệu

Truyền soacuteng điện từ trong khocircng gian sẽ gặp hiện tượng suy hao Vigrave thế đối với

kết nối khocircng dacircy noacutei chung khoảng caacutech cagraveng xa thigrave khả năng thu tiacuten hiệu cagraveng keacutem

tỷ lệ lỗi sẽ tăng lecircn dẫn đến tốc độ truyền dữ liệu sẽ phải giảm xuống

Caacutec tốc độ của chuẩn khocircng dacircy như 11 Mbps hay 54 Mbps khocircng liecircn quan đến

tốc độ kết nối hay tốc độ download vigrave những tốc độ nagravey được quyết định bởi nhagrave cung

cấp dịch vụ Internet

Với một hệ thống mạng khocircng dacircy dữ liệu được giử qua soacuteng radio necircn tốc độ

coacute thể bị ảnh hưởng bởi caacutec taacutec nhacircn gacircy nhiễu hoặc caacutec vật thể lớn Thiết bị định

tuyến khocircng dacircy sẽ tự động điều chỉnh xuống caacutec mức tốc độ thấp hơn (Viacute dụ như lagrave

từ 11 Mbps sẽ giảm xuống cograven 55 Mbps vagrave 2 Mbps hoặc thậm chiacute lagrave 1 Mbps)

12 Ứng dụng

Trong những năm gần đacircy caacutec nghiecircn cứu về WSN đatilde đạt được bước phaacutet triển

mạnh mẽ caacutec bước tiến từ caacutec nghiecircn cứu hứa hẹn taacutec động lớn đến caacutec ứng dụng

rộng ratildei trong caacutec lĩnh vực an ninh quốc gia chăm soacutec sức khỏe mocirci trường năng

lượng an toagraven thực phẩm vagrave sản xuất

Caacutec ứng dụng của mạng WSN thực sự chỉ bị giới hạn bởi sự tưởng tượng của con

người Sau đacircy lagrave caacutec ứng dụng phổ biến nhất của WSN

121 Ứng dụng quacircn sự an ninh vagrave thiecircn nhiecircn

Trong phản ứng với dịch bệnh thảm họa thiecircn nhiecircn lượng lớn caacutec cảm biến

được thả từ trecircn khocircng mạng lưới caacutec cảm biến sẽ cho biết vị triacute người sống soacutet vugraveng

nguy hiểm giuacutep cho người giaacutem saacutet coacute caacutec thocircng tin chiacutenh xaacutec đảm bảo hiệu quả vagrave an

toagraven cho caacutec hoạt động tigravem kiếm

Sử dụng mạng WSN hạn chế sự coacute mặt trực tiếp của con người trong mocirci trường

nguy hiểm Ứng dụng an ninh bao gồm phaacutet hiện xacircm nhập vagrave truy bắt tội phạm

Mạng cảm biến quacircn sự phaacutet hiện vagrave coacute được thocircng tin về sự di chuyển của đối

phương chất nổ vagrave caacutec thocircng tin khaacutec

Phaacutet hiện vagrave phacircn loại caacutec chất hoacutea chất sinh hoacutea soacuteng vocirc tuyến phoacuteng xạ hạt

nhacircn chất nổhellip

Giaacutem saacutet sự thay đổi khiacute hậu rừng biểnhellip

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 8

Giaacutem saacutet xe cộ trecircn đường

Giaacutem saacutet an ninh trong caacutec khu vực dacircn cư thương mạihellip

Theo dotildei biecircn giới kết hợp với vệ tinhhellip

Higravenh I2 Ứng dụng WSN trong an ninh quốc gia vagrave luật phaacutep

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 9

122 Ứng dụng trong giaacutem saacutet xe cộ vagrave thocircng tin liecircn quan

Mục tiecircu của caacutec hệ thống nagravey lagrave thu thập thocircng tin thocircng qua caacutec mạng cảm

biến xử lyacute vagrave lưu trữ dữ liệu tại trung tacircm sử dụng dữ liệu đoacute cho caacutec ứng dụng cần

thiết Hệ thống được lắp đặt dọc theo caacutec đường chiacutenh mạng cảm biến số tập hợp dữ

liệu về tốc độ lưu thocircng mật độ xe số lượng xe trecircn đường Dữ liệu sau đoacute được

truyền đến trung tacircm dữ liệu để xử lyacute Mạng theo dotildei liecircn tục cung cấp thocircng tin cập

nhật thường xuyecircn theo thời gian thực Caacutec thocircng tin thu được dugraveng để giaacutem saacutet lưu

lượng điều phối giao thocircng hoặc cho caacutec mục điacutech khaacutec

123 Điều khiển caacutec thiết bị trong nhagrave

Điều khiển caacutec thiết bị trong nhagrave

Higravenh I3 Caacutec ứng dụng điều khiển

Caacutec node cảm biến được lắp trecircn caacutec thiết bị vị triacute cần thiết sau đoacute kết nối thagravenh

mạng truyền dữ liệu về node trung tacircm Một khả năng coacute thể phaacutet triển lagrave caacutec cảm biến

theo dotildei y tế được gắn trực tiếp lecircn cơ thể người bệnh để đo đạc thường xuyecircn caacutec

thocircng số về huyết aacutep nhịp timhellip

124 Caacutec togravea nhagrave tự động

Ứng dụng cung cấp khả năng điều khiển quản lyacute tạo sự tiện lợi trong kiểm soaacutet

an ninhhellipQuản lyacute nhiều hệ thống cugraveng luacutec hệ thống chiếu saacuteng nhiệt độ an ninh

giaacutem saacutet nhacircn viecircn quản lyacute hiệu quả tiecircu thụ năng lượng trong togravea nhagrave gắn caacutec chip

lecircn hagraveng hoacuteagiảm được thời gian kiểm trahellipcoacute thể dễ dagraveng được thực hiện bằng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 10

C2WSNs vagrave cocircng nghệ ZigBee đặc điểm nổi bật lagrave dugraveng caacutec cocircng nghệ microsensor

tiecircu thụ rất iacutet cocircng suất thu phaacutet vocirc tuyến kỹ thuật liecircn lạc vả cảm biến khocircng dacircy đa

chức năng

125 Quản lyacute quaacute trigravenh tự động trong cocircng nghiệp

Caacutec ứng dụng trong sản xuất cocircng nghiệp gồm điều khiển quản lyacute hiệu suất vagrave

an toagraven Caacutec cảm biến đặt trong mocirci trường lagravem việc giaacutem saacutet quaacute trigravenh sản xuất chất

lượng sản phẩm kiểm soaacutet mocirci trường lagravem việc quản lyacute nhacircn viecircnhellipdữ liệu được đưa

về trung tacircm để người quản lyacute coacute thể đưa ra caacutec quyết định kịp thời

126 Caacutec ứng dụng trong y học

Một số bệnh viện vagrave trung tacircm y tế đang ứng dụng cocircng nghệ WSNs vagraveo tiền

chẩn đoaacuten chăm soacutec sức khỏe đối phoacute với caacutec dịch bệnh vagrave phục hồi chức năng cho

người bệnh WSNs cho pheacutep theo dotildei tigravenh trạng của caacutec bệnh nhacircn kinh niecircn ngay tại

nhagrave lagravem cho việc phacircn tiacutech vagrave điều trị thuận tiện hơn ruacutet ngắn thời gian điều trị tại

bệnh viện WSNs cograven cho pheacutep thu thập thocircng tin y tế qua thời gian dagravei thagravenh caacutec cơ

sở dữ liệu quan trọng caacutec biện phaacutep can thiệp hiệu quả

2 TRUYỀN DỮ LIỆU GIỮA CAacuteC NUacuteT MẠNG NGUYEcircN TẮC

Một nuacutet cảm nhận khocircng dacircy giao tiếp với caacutec nuacutet cảm nhận khaacutec bằng việc sử

dụng net work - stack

- Ở lớp ứng dụng (Application) dữ liệu coacute thể được gửi ở dạng goacutei do chip radio

ở lớp phần cứng coacute thể truyền vagrave nhận dữ liệu dạng byte necircn caacutec goacutei tin nagravey cần được

phacircn đoạn trước khi chuacuteng được gửi vagrave phải được gheacutep lại sau khi chuacuteng được nhận

Lớp điều khiển đa truy cập Media - Access - Control (MAC) chuyển tiếp lớp ứng

dụng với radio chip

+ Khi 1 goacutei tin được gửi đi nhờ 1 ứng dụng goacutei tin được phacircn nhỏ thagravenh caacutec

byte 1 chuỗi liecircn tiếp caacutec byte đặc biệt được gọi lagrave Preamble (phần mở đầu) được gửi

đi trước caacutec byte dữ liệu do đoacute phiacutea thu coacute thể đồng bộ vagrave xaacutec định phần bắt đầu của 1

goacutei tin

+ Sau khi nhận 1 byte radio chip matilde hoacutea bit dữ liệu vagrave truyền chuacuteng Ở phiacutea

nhận radio chip baacuteo hiệu việc đến của caacutec byte sau khi xaacutec định vagrave giải matilde caacutecbit dữ

liệu

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 11

+ Sau đoacute lớp MAC hợp lại goacutei tin bắt đầu từ goacutei đầu tiecircn sau goacutei preamble Tiếp

theo lớp MAC baacuteo hiệu việc đến của goacutei tin cho lớp trecircn

Caacutec byte dữ liệu coacute thể được matilde hoacutea một caacutech tugravey yacute sau khi được phacircn đoạn cugraveng

với matilde sửa lỗi (ECC ) Matilde sửa lỗi ECC được dugraveng để khocirci phục caacutec bit dữ liệu trong

trường hợp coacute số lượng nhỏ bit lỗi Khi caacutec byte dữ liệu đoacute tới bộ thu tại đacircy noacute được

giải matilde để trở về dạng caacutec byte dữ liệu ban đầu

3 TIẾT KIỆM VAgrave TIEcircU THỤ NĂNG LƢỢNG

Năng lượng tiecircu thụ phụ thuộc vagraveo nhiều yếu tố sử dụng khaacutec nhau như Kiến

truacutec giao thức mạng Giao thức chọn đường Hoạt động truyền nhận khocircng dacircy

31 Kiến truacutec giao thức mạng

Kiến truacutec giao thức nagravey kết hợp giữa năng lượng vagrave chọn đường kết hợp số liệu

với caacutec giao thức mạng sử dụng năng lượng hiệu quả Kiến truacutec giao thức bao gồm

lớp vật lyacute lớp liecircn kết số liệu lớp mạng lớp truyền tải lớp ứng dụng phần quản lyacute

cocircng suất phần quản lyacute di động vagrave phần quản lyacute nhiệm vụ

Lớp vật lyacute cung cấp caacutec kỹ thuật điều chế phaacutet vagrave thu Vigrave mocirci trường coacute tạp acircm

vagrave caacutec nuacutet cảm biến coacute thể di động giao thức điều khiển truy cập mocirci trường (MAC)

phải xeacutet đến vấn đề cocircng suất vagrave phải coacute khả năng tối thiểu hoaacute việc va chạm với

thocircng tin quản baacute của caacutec nuacutet lacircn cận

Lớp mạng quan tacircm đến việc chọn đường số liệu được cung cấp bởi lớp truyền

tải

Lớp truyền tải giuacutep duy trigrave luồng số liệu nếu ứng dụng mạng cảm biến yecircu cầu

Tuỳ theo nhiệm vụ cảm biến caacutec loại phần mềm khaacutec nhau coacute thể được xacircy dựng vagrave

sử dụng ở lớp ứng dụng Ngoagravei ra caacutec phần quản lyacute cocircng suất di chuyển vagrave nhiệm vụ

sẽ giaacutem saacutet việc sử dụng cocircng suất sự di chuyển vagrave thực hiện nhiệm vụ giữa caacutec nuacutet

cảm biến Những phần nagravey giuacutep caacutec nuacutet cảm biến phối hợp nhiệm vụ cảm biến vagrave tiecircu

thụ năng lượng tổng thể thấp hơn

Phần quản lyacute năng lượng điều khiển việc sử dụng năng lượng của nuacutet mạng Viacute

dụ nuacutet mạng coacute thể tắt khối thu của noacute sau khi thu được một bản tin từ một nuacutet lacircn

cận Điều nagravey giuacutep traacutenh tạo ra caacutec bản tin giống nhau Cũng vậy khi mức năng lượng

của nuacutet mạng thấp noacute sẽ phaacutet quảng baacute tới caacutec nuacutet lacircn cận để thocircng baacuteo noacute coacute mức

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 12

năng lượng thấp vagrave khocircng thể tham gia vagraveo caacutec bản tin chọn đường Phần năng lượng

cograven lại sẽ dagravenh riecircng cho nhiệm vụ cảm biến

Phần quản lyacute di chuyển phaacutet hiện vagrave ghi lại sự di chuyển của caacutec nuacutet cảm biến để

duy trigrave tuyến tới người sử dụng vagrave caacutec nuacutet cảm biến coacute thể lưu vết của caacutec nuacutet cảm

biến lacircn cận Nhờ xaacutec định được caacutec nuacutet cảm biến lacircn cận caacutec nuacutet cảm biến coacute thể cacircn

bằng giữa cacircn bằng giữa cocircng suất của noacute vagrave nhiệm vụ thực hiện

Phần quản lyacute nhiệm vụ dugraveng để lagravem cacircn bằng vagrave lecircn kế hoạch caacutec nhiệm vụ cảm

biến trong một vugraveng xaacutec định Khocircng phải tất cả caacutec nuacutet cảm biến trong vugraveng đoacute đều

phải thực hiện nhiệm vụ cảm biến tại cugraveng một thời điểm Kết quả lagrave một số nuacutet cảm

biến thực hiện nhiều hơn caacutec nuacutet khaacutec tuỳ theo mức cocircng suất của noacute Những phần

quản lyacute nagravey lagrave cần thiết để caacutec nuacutet cảm biến coacute thể lagravem việc cugraveng nhau theo một caacutech

thức sử dụng hiệu quả cocircng suất chọn đường số liệu trong mạng cảm biến di động vagrave

phacircn chia tagravei nguyecircn giữa caacutec nuacutet cảm biến

Kiến truacutec mạng như trecircn goacutep phần quản lyacute năng lượng của caacutec nuacutet mạng đồng

thời duy trigrave hoạt động của toagraven mạng trong thời gian dagravei hơn

32 Giao thức chọn đường

321 Khoacute khăn trong giao thức chọn đường

Mặc dugrave caacutec ứng dụng của mạng WSN lagrave rất lớn tuy nhiecircn những mạng nagravey coacute

một số hạn chế như giới hạn về nguồn cocircng suất khả năng tiacutenh toaacuten vagrave độ rộng băng

thocircng Một số giao thức chọn đường quản lyacute cocircng suất vagrave trao đổi số liệu đatilde được

thiết kế cho WSN với yecircu cầu quan trọng nhất lagrave tiết kiệm được năng lượng

Một trong những mục tiecircu thiết kế chiacutenh của WSN lagrave keacuteo dagravei thời gian sống của

mạng vagrave traacutenh suy giảm kết nối nhờ caacutec kỹ thuật quản lyacute năng lượng Vấn đề nagravey cần

được giải quyết triệt để thigrave mới đạt được hiệu quả truyền tin trong WSN Caacutec giao thức

chọn đường trong WSN coacute thể khaacutec nhau tuỳ theo ứng dụng vagrave cấu truacutec mạng Tuy

nhiecircn việc chọn đường gặp phải những khoacute khăn như Phacircn bố nuacutet tiecircu thụ năng

lượng khocircng được lagravem mất độ chiacutenh xaacutec tiacutenh khocircng đồng nhất của nuacutet mạng tiacutenh

động của mạng khả năng định cỡ khả năng chống lỗi chất lượng dịch vụ

Phacircn bố nuacutet Việc phacircn bố nuacutet trong WSN phụ thuộc vagraveo ứng dụng vagrave coacute thể

được thực hiện bằng tay hoặc phacircn bố ngẫu nhiecircn Khi phacircn bố bằng tay số liệu được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 13

chọn đường thocircng qua caacutec đường đatilde định trước Tuy nhiecircn khi phacircn bố caacutec nuacutet ngẫu

nhiecircn sẽ tạo ra một cấu truacutec chọn đường đặc biệt (Ad-hoc)

Tiecircu thụ năng lượng khocircng được lagravem mất độ chiacutenh xaacutec Caacutec nuacutet cảm biến coacute

thể sử dụng quaacute caacutec giới hạn về cocircng suất để thực hiện tiacutenh toaacuten vagrave truyền tin trong

mocirci trường vocirc tuyến Thời gian sống của nuacutet mạng cảm biến phụ thuộc rất nhiều vagraveo

thời gian sử dụng của pin Trong WSN đa bước nhảy mỗi nuacutet đoacuteng hai vai trograve lagrave

truyền số liệu vagrave chọn đường Một số nuacutet cảm biến hoạt động sai chức năng do lỗi

nguồn cocircng suất coacute thể gacircy ra sự thay đổi cấu higravenh mạng nghiecircm trọng vagrave phải chọn

đường lại caacutec goacutei hoặc phải tổ chức lại mạng

Tiacutenh khocircng đồng nhất của nuacutet mạng Nghĩa lagrave caacutec nuacutet mạng coacute khả năng tiacutenh

toaacuten khả năng truyền tin vagrave coacute cocircng suất khaacutec nhau Khi đoacute sẽ gacircy khoacute khăn cho kỹ

thuật chọn đường

Khả năng chống lỗi Một số nuacutet cảm biến coacute thể bị lỗi hoặc bị ngắt do thiếu cocircng

suất hỏng phần cứng hoặc bị nhiễu mocirci trường Sự cố của caacutec nuacutet cảm biến khocircng

được ảnh hưởng tới nhiệm vụ của toagraven mạng cảm biến Nếu coacute nhiều nuacutet bị lỗi caacutec

giao thức chọn đường vagrave điều khiển truy cập mocirci trường (MAC) phải thagravenh lập caacutec

tuyến mới tới nuacutet gốc Việc nagravey coacute thể cần thiết phải điều chỉnh cocircng suất phaacutet vagrave tốc

độ tiacuten hiệu trecircn caacutec tuyến hiện tại để giảm sự tiecircu thụ năng lượng hoặc lagrave caacutec goacutei phải

chọn đường lại qua caacutec caacutec vugraveng mạng coacute cocircng suất khả dụng lớn hơn

Khả năng định cỡ Số lượng nuacutet mạng coacute thể lagrave hagraveng trăm hagraveng nghigraven hoặc

nhiều hơn Bất kỳ phương phaacutep chọn đường nagraveo cũng phải coacute khả năng lagravem việc với

một số lượng lớn caacutec nuacutet cảm biến như vậy

Tiacutenh động của mạng Trong nhiều nghiecircn cứu caacutec nuacutet cảm biến được coi lagrave cố

định Tuy nhiecircn trong một số ứng dụng cả nuacutet gốc vagrave caacutec nuacutet cảm biến coacute thể di

chuyển Khi đoacute caacutec bản tin chọn đường từ hoặc tới caacutec nuacutet di chuyển sẽ gặp phải caacutec

vần đề như đường liecircn lạc cấu higravenh mạng năng lượng độ rộng bănghellip

Chất lượng dịch vụ Khi năng lượng gần hết caacutec nuacutet mạng coacute thể yecircu cầu giảm

chất lượng caacutec kết quả để giảm mức tiecircu thụ năng lượng của nuacutet vagrave keacuteo dagravei thời gian

sống của toagraven mạng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 14

Mặc dugrave việc chọn đường gặp nhiều khoacute khăn nhưng khi coacute một giao thức chọn

đường tốt sẽ tiết kiệm thời gian truyền nhận thocircng tin giảm năng lượng tiecircu hao latildeng

phiacute do tắc nghẽn lỗi đường truyềnVigrave vậy người ta đatilde đưa ra một số giao thức chọn

đường magrave dưới đacircy sẽ trigravenh bầy

322 Caacutec giao thức chọn đường

Phần nagravey sẽ trigravenh bagravey về phương phaacutep chọn đường trong WSN Noacutei chung caacutec

giao thức chọn đường được chia lagravem 3 loại dựa vagraveo cấu truacutec mạng ngang hagraveng phacircn

cấp hoặc dựa vagraveo vị triacute

Trong chọn đường ngang hagraveng tất cả caacutec nuacutet thường coacute vai trograve hoặc chức năng

như nhau như cảm nhận truyền Chuacuteng sẽ thực hiện việc cảm nhận thocircng tin cần

thiết vagrave truyền số liệu về nuacutet gốc

Trong chọn đường phacircn cấp caacutec nuacutet sẽ đoacuteng vai trograve khaacutec nhau trong mạng sẽ coacute

nuacutet chủ đại diện cho từng nhoacutem caacutec nuacutet cảm biến để nhận số liệu từ caacutec nuacutet cảm biến

truyền tới Caacutec nuacutet chủ cũng tập hợp số liệu từ caacutec nuacutet trong nhoacutem của noacute trước khi

gửi số liệu đến nuacutet gốc Nuacutet chủ sẽ thay đổi khi bắt đầu chu kỳ lagravem việc mới vagrave sẽ thay

bằng nuacutet khaacutec coacute khả năng đảm nhận chức năng nagravey

Trong chọn đường dựa theo vị triacute thigrave vị triacute của caacutec nuacutet cảm biến sẽ được dugraveng để

chọn đường số liệu Giao thức chọn đường cograven coacute thể được phacircn loại dựa theo đa

đường yecircu cầu hỏiđaacutep QoS vagrave liecircn kết tuỳ thuộc vagraveo chế độ hoạt động Ngoagravei ra

cũng coacute thể chia thagravenh 3 loại chủ động tương taacutec hoặc lai gheacutep tuỳ thuộc vagraveo caacutech

thức magrave nguồn tigravem đường tời điacutech Một giao thức chọn đường được coi lagrave thiacutech ứng

nếu caacutec tham số của hệ thống coacute thể điều khiển được để phugrave hợp với caacutec trạng thaacutei

mạng hiện tại vagrave caacutec mức năng lượng khả dụng Một số giao thức chọn đường đatilde phaacutet

huy hiệu quả tiết kiệm tiecircu thụ năng lượng như LEACH

TEENampAPTEEN MECNampSVECN PEGASIS thuộc chọn đường phacircn cấp SPIN

Directed Diffusion CADR CUGAR thuộc chọn đường ngang hagraveng Trong đoacute đaacuteng

quan tacircm nhất lagrave giao thức chọn đường LEACH LEACH (Low Energy Adaptive

Clustering Hierarchy) - phacircn cấp nhoacutem thiacutech ứng cocircng suất thấp giao thức nagravey cho

pheacutep tiết kiệm năng lượng trong mạng WSN Mục điacutech của LEACH lagrave lựa chọn ngẫu

nhiecircn caacutec nuacutet cảm biến lagravem caacutec nuacutet chủ do đoacute việc tiecircu hao năng lượng khi liecircn lạc

với nuacutet gốc được trải đều cho tất cả caacutec nuacutet cảm biến trong mạng Quaacute trigravenh hoạt động

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 15

của LEACH được chia thagravenh 2 bước bước thiết lập vagrave bước ổn định Thời gian bước

ổn định keacuteo dagravei hơn so với thời gian của bước thiết lập để giảm thiểu phần điều khiển

Tại bước thiết lập sẽ xaacutec định nuacutet mạng nagraveo sẽ lagravem chủ Tại bước ổn định caacutec nuacutet cảm

biến bắt đầu cảm nhận vagrave truyền số liệu về nuacutet chủ nuacutet chủ cũng tập hợp số liệu từ caacutec

nuacutet trong nhoacutem trước khi gửi caacutec số liệu nagravey về nuacutet gốc Theo thử nghiệm mocirc phỏng

giao thức LEACH của mạng WSN coacute 160 nuacutet phacircn bố đều cocircng suất ban đầu của nuacutet

lagrave 30 Kết quả thu được lagrave khi truyền trực tiếp tới nuacutet gốc sau khoảng 470 chu kỳ

thời gian sẽ kết thuacutec truyền tin khi sử dụng giao thức LEACH sau khoảng 685 chu kỳ

thời gian mới kết thuacutec truyền tin Kết quả nagravey cho thấy đacircy lagrave một phương phaacutep chọn

đường phacircn cấp coacute khả năng tiết kiệm được năng lượng vagrave keacuteo dagravei thời gian sống của

mạng

Tuy nhiecircn cơ chế hoạt động của LEACH lagrave lựa chọn số liệu được tập trung vagrave

thực hiện theo chu kỳ Do đoacute giao thức nagravey chỉ thiacutech hợp với yecircu cầu giaacutem saacutet liecircn tục

bởi mạng cảm biến Với ứng dụng magrave người sử dụng khocircng cần tất cả caacutec số liệu ngay

lập tức thigrave việc truyền số liệu theo chu kỳ lagrave khocircng cần thiết vagrave coacute thể lagravem tiecircu tốn

năng lượng vocirc iacutech Giao thức LEACH cần tiếp tục được cải tiến để khắc phục hạn chế

33 Hoạt động truyền nhận khocircng dacircy

Đối với mạng cảm nhận khocircng dacircy thigrave năng lượng trở thagravenh một vấn đề được chuacute

yacute để duy trigrave hoạt động của hệ thống mạng vigrave caacutec nuacutet mạng độc lập chỉ được cung cấp

năng lượng từ một nguồn cố định (pin) Việc tiecircu thụ năng lượng thấp lagrave một nhu cầu

quan trọng cho caacutec hệ thống hoạt động bằng pin - khocircng được cung cấp năng lượng

thường xuyecircn Khi coacute một dograveng tiecircu thụ thấp thigrave thời gian sống của chuacuteng sẽ keacuteo dagravei

thecircm Hệ thống tiecircu thụ năng lượng thấp lagrave mục tiecircu cần đạt của mạng cảm nhận

khocircng dacircy sử dụng CC1010 Caacutec vấn đề đưa ra trong phần nagravey lagrave cơ sở cho việc viết

phần mềm tiết kiệm tiecircu thụ năng lượng cho nuacutet mạng cảm nhận khocircng dacircy

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 16

CHƢƠNG 2 MAtilde SỬA LỖI

Mạng phải coacute khả năng truyền chiacutenh xaacutec dữ liệu từ thiết bị nagravey tới thiết bị khaacutec

Một hệ thống khocircng bảo đảm dữ liệu nhận giống như dữ liệu truyền lagrave hệ thống khocircng

sử dụng được Coacute nhiều nhacircn tố như tạp nhiễu đường dacircy coacute thể lagravem hỏng một hoặc

nhiều bit của khối dữ liệu đang truyền Một hệ thống thực sự dugraveng được phải coacute cơ cấu

để phaacutet hiện vagrave sửa caacutec lỗi đoacute

Việc phaacutet hiện vagrave sửa lỗi được trang bị ở lớp liecircn kết dữ liệu hoặc lớp giao vận

tương ứng trong mocirc higravenh OSI

1 CAacuteC CƠ CHẾ TRUYỀN DỮ LIỆU

11 Truyền dữ liệu song song

bull Mỗi bit dugraveng một đường truyền riecircng Nếu coacute 8 bits được truyền đồng thời sẽ

yecircu cầu 8 đường truyền độc lập

bull Để truyền dữ liệu trecircn một đường truyền song song một kecircnh truyền riecircng

được dugraveng để thocircng baacuteo cho becircn nhận biết khi nagraveo dữ liệu coacute sẵn (clock signal)

bull Cần thecircm một kecircnh truyền khaacutec để becircn nhận baacuteo cho becircn gởi biết lagrave đatilde sẵn

sagraveng để nhận dữ liệu kế tiếp

12 Truyền dữ liệu tuần tự

bull Tất cả caacutec bit đều được truyền trecircn cugraveng một đường truyền bit nagravey tiếp theo

sau bit kia

bull Khocircng cần caacutec đường truyền riecircng cho tiacuten hiệu đồng bộ vagrave tiacuten hiệu bắt tay (caacutec

tiacuten hiệu nagravey được matilde hoacutea vagraveo dữ liệu truyền đi)

bull Vấn đề định thời (timing) đogravei hỏi phải coacute cơ chế đồng bộ giữa becircn truyền vagrave

becircn nhận

bull 2 caacutech giải quyết

- Bất đồng bộ mỗi kyacute tự được đồng bộ bởi start vagrave stop bit

- Đồng bộ mỗi khối kyacute tự được đồng bộ dugraveng cờ

13 Truyền bất đồng bộ

bull Dữ liệu được truyền theo từng kyacute tự để traacutenh việc mất đồng bộ khi nhận được chuỗi

bit quaacute dagravei

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 17

- 5 đến 8 bits

- Chỉ cần giữ đồng bộ trong một kyacute tự

- Taacutei đồng bộ cho mỗi kyacute tự mới

bull Hagravenh vi

- Đối với dograveng dữ liệu đều khoảng caacutech giữa caacutec kyacute tự lagrave đồng nhất (bằng chiều dagravei

của phần tử stop)

- Ở trạng thaacutei rỗi bộ thu phaacutet hiện sự chuyển 1 đến 0

- Lấy mẫu 7 khoảng kế tiếp (chiều dagravei kyacute tự)

- Đợi việc chuyển 1 đến 0 cho kyacute tự kế tiếp

bull Hiệu suất

- Đơn giản

- Rẻ

- Phiacute tổn 2 hoặc 3 bit cho một kyacute tự (~20)

- Thiacutech hợp cho dữ liệu với khoảng trống giữa caacutec kyacute tự lớn (dữ liệu nhập từ bagraven

phiacutem)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 18

bull Đồng bộ khung (frame synchronization) dugraveng caacutec kyacute tự điều khiển (STX ETX

DLE)

14 Truyền đồng bộ

bull Truyền khocircng cần startstop

bull Phải coacute tiacuten hiệu đồng bộ

bull Đồng bộ bit (bit synchronization) sử dụng caacutec phƣơng phaacutep sau

- Tiacutech hợp xung clock vagraveo dữ liệu truyền đi

+ Tiacutech hợp thocircng tin đồng bộ (clock) vagraveo trong dữ liệu truyền

+ Đầu nhận sẽ taacutech thocircng tin đồng bộ dựa vagraveo dữ liệu nhận được

+ Manchester differential Manchester tần số soacuteng mang (analog)

- Sử dụng đường clock riecircng

+ Dugraveng một đường tiacuten hiệu đồng bộ riecircng biệt

+ Một becircn (phaacutet hoặc nhận) tạo ra caacutec xung clock đồng bộ với caacutec bit truyền đi

trecircn đường clock riecircng

+ Becircn cograven lại dugraveng tiacuten hiệu trecircn đường clock riecircng để lagravem clock

+ Thiacutech hợp khi truyền trong khoảng caacutech ngắn

+ Tiacuten hiệu đồng bộ dễ bị suy giảm trecircn đường truyền

bull Đồng bộ frame

- Mỗi block dữ liệu được bắt đầu bằng một cờ gọi lagrave preamble kết thuacutec bằng

một cờ gọi lagrave postamble

- Preamble vagrave postamble lagrave một mẫu bit (bit pattern) được quy định sẵn

+ Một chuỗi caacutec kyacute tự SYN (16h trong bảng matilde ASCII)

+ Mẫu bit 11111110

- Frame dữ liệu + preamble + postamble + thocircng tin điều khiển

- Hiệu quả hơn so với truyền bất đồng bộ (phiacute tổn thấp hơn cho caacutec bit điều

khiển)

+ HDLC 48 bit điều khiển cho mỗi block 1000 kyacute tự (8000 bit)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 19

2 VẤN ĐỀ XỬ LYacute LỖI

11 Caacutec lỗi xẩy ra trecircn đường truyền

bull Mocirci trƣờng truyền dẫn bị nhiễu (điện từ hellip) dẫn đến dữ liệu nhận coacute lỗi

(caacutec bit bị thay đổi)

bull 2 caacutech khắc phục khi phaacutet hiện coacute lỗi

- Forward error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự hoặc caacutec

frame truyền đi để becircn nhận coacute thể phaacutet hiện khi nagraveo coacute lỗi va lỗi nằm ở đacircu để sửa

(coacute khả năng sửa lỗi)

- Feedback (backward) error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự

hoặc caacutec frame truyền đi chỉ đủ để phaacutet hiện khi nagraveo coacute lỗi (khocircng coacute khả năng sửa

lỗi) Cơ chế yecircu cầu truyền lại kyacute tựframe sai được dugraveng trong trường hợp nagravey

bull Phacircn loại lỗi

- Lỗi 1 bit

+ Chỉ 1 bit bị lỗi khocircng ảnh hưởng caacutec bit xung quanh

+ Thường xảy ra do nhiễu trắng

- Lỗi chugravem (busrt error)

+ Một chuỗi liecircn tục B bit trong đoacute bit đầu bit cuối vagrave caacutec bit bất kigrave nằm giữa

chuỗi đều bị lỗi

+ Thường xảy ra do nhiễu xung

+ Ảnh hưởng cagraveng lớn đối với tốc độ truyền cao

Bit error rate (BER) xaacutec suất một bit nhận đƣợc bị lỗi

12 Cơ chế phaacutet hiện lỗi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 5

- Tiacutenh đơn giản lắp đặt thiết lập kết nối một mạng maacutey tiacutenh khocircng dacircy lagrave rất

dễ dagraveng đơn giản vagrave coacute thể traacutenh được việc keacuteo caacutep qua caacutec bức tường vagrave trần nhagrave

- Tiacutenh linh hoạt coacute thể triển khai ở những nơi magrave mạng hữu tuyến khocircng thể

triển khai được

- Tiết kiệm chi phiacute lacircu dagravei Trong khi đầu tư cần thiết ban đầu đối với phần

cứng của một mạng maacutey tiacutenh khocircng dacircy coacute thể cao hơn chi phiacute phần cứng của một

mạng hữu tuyến nhưng toagraven bộ phiacute tổn lắp đặt vagrave caacutec chi phiacute về thời gian tồn tại coacute

thể thấp hơn đaacuteng kể Chi phiacute dagravei hạn coacute lợi nhất trong caacutec mocirci trường động cần phải

di chuyển vagrave thay đổi thường xuyecircn

- Khả năng vocirc hƣớng caacutec mạng maacutey tiacutenh khocircng dacircy coacute thể được cấu higravenh theo

caacutec topo khaacutec nhau để đaacutep ứng caacutec nhu cầu ứng dụng vagrave lắp đặt cụ thể Caacutec cấu higravenh

dễ dagraveng thay đổi từ caacutec mạng ngang hagraveng thiacutech hợp cho một số lượng nhỏ người sử

dụng đến caacutec mạng coacute cơ sở hạ tầng đầy đủ dagravenh cho hagraveng nghigraven người sử dụng magrave coacute

khả năng di chuyển trecircn một vugraveng rộng

113 Hoạt động của mạng maacutey tiacutenh khocircng dacircy

Caacutec mạng maacutey tiacutenh khocircng dacircy sử dụng caacutec soacuteng điện từ khocircng gian (vocirc tuyến

hoặc aacutenh saacuteng) để truyền thocircng tin từ một điểm tới điểm khaacutec Caacutec soacuteng vocirc tuyến

thường được xem như caacutec soacuteng mang vocirc tuyến do chuacuteng chỉ thực hiện chức năng cung

cấp năng lượng cho một maacutey thu ở xa Dữ liệu đang được phaacutet được điều chế trecircn

soacuteng mang vocirc tuyến (thường được gọi lagrave điều chế soacuteng mang nhờ thocircng tin đang được

phaacutet) sao cho coacute thể được khocirci phục chiacutenh xaacutec tại maacutey thu

Nhiễu soacuteng mang vocirc tuyến coacute thể tồn tại trong cugraveng khocircng gian tại cugraveng thời

điểm magrave khocircng can nhiễu lẫn nhau nếu caacutec soacuteng vocirc tuyến được phaacutet trecircn caacutec tần số vocirc

tuyến khaacutec nhau Để nhận lại dữ liệu maacutey thu vocirc tuyến sẽ thu trecircn tần số vocirc tuyến của

maacutey phaacutet tương ứng

Trong một cấu higravenh mạng maacutey tiacutenh khocircng dacircy tiecircu chuẩn một thiết bị thuphaacutet

(bộ thuphaacutet) được gọi lagrave một điểm truy cập nối với mạng hữu tuyến từ một vị triacute cố

định sử dụng caacutep tiecircu chuẩn Chức năng tối thiểu của điểm truy cập lagrave thu lagravem đệm

vagrave phaacutet dữ liệu giữa mạng maacutey tiacutenh khocircng dacircy vagrave cơ sở hạ tầng mạng hữu tuyến Một

điểm truy cập đơn coacute thể hỗ trợ một nhoacutem nhỏ người sử dụng vagrave coacute thể thực hiện chức

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 6

năng trong một phạm vi từ một trăm đến vagravei trăm feet Điểm truy cập (hoặc anten

được gắn vagraveo điểm truy cập) thường được đặt cao nhưng về cơ bản coacute thể được đặt ở

bất kỳ chỗ nagraveo miễn lagrave đạt được vugraveng phủ soacuteng mong muốn

Những người sử dụng truy cập vagraveo mạng maacutey tiacutenh khocircng dacircy thocircng qua caacutec bộ

thiacutech ứng maacutey tiacutenh khocircng dacircy như caacutec Card mạng khocircng dacircy trong caacutec vi maacutey tiacutenh

caacutec maacutey Palm PDA Caacutec bộ thiacutech ứng maacutey tiacutenh khocircng dacircy cung cấp một giao diện

giữa hệ thống điều hagravenh mạng (NOS ndash Network Operation System) của maacutey khaacutech vagrave

caacutec soacuteng khocircng gian qua một anten Bản chất của kết nối khocircng dacircy lagrave trong suốt đối

với hệ điều hagravenh mạng

114 Caacutec mocirc higravenh của mạng maacutey tiacutenh khocircng dacircy cơ bản

Kiểu Ad ndash hoc

Mỗi maacutey tiacutenh trong mạng giao tiếp trực tiếp với nhau thocircng qua caacutec thiết bị card

mạng khocircng dacircy magrave khocircng dugraveng đến caacutec thiết bị định tuyến hay thu phaacutet khocircng dacircy

Wireless Station

Wireless StationWireless Station

Wireless Station

Higravenh I1 Mocirc higravenh mạng Ad ndash hoc ( hay mạng ngang hagraveng )

Kiểu Infrastructure

Caacutec maacutey tiacutenh trong hệ thống mạng sử dụng một hoặc nhiều caacutec thiết bị định

tuyến hay thiết bị thu phaacutet để thực hiện caacutec hoạt động trao đổi dữ liệu với nhau vagrave caacutec

hoạt động khaacutec

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 7

115 Cự ly truyền soacuteng tốc độ truyền dữ liệu

Truyền soacuteng điện từ trong khocircng gian sẽ gặp hiện tượng suy hao Vigrave thế đối với

kết nối khocircng dacircy noacutei chung khoảng caacutech cagraveng xa thigrave khả năng thu tiacuten hiệu cagraveng keacutem

tỷ lệ lỗi sẽ tăng lecircn dẫn đến tốc độ truyền dữ liệu sẽ phải giảm xuống

Caacutec tốc độ của chuẩn khocircng dacircy như 11 Mbps hay 54 Mbps khocircng liecircn quan đến

tốc độ kết nối hay tốc độ download vigrave những tốc độ nagravey được quyết định bởi nhagrave cung

cấp dịch vụ Internet

Với một hệ thống mạng khocircng dacircy dữ liệu được giử qua soacuteng radio necircn tốc độ

coacute thể bị ảnh hưởng bởi caacutec taacutec nhacircn gacircy nhiễu hoặc caacutec vật thể lớn Thiết bị định

tuyến khocircng dacircy sẽ tự động điều chỉnh xuống caacutec mức tốc độ thấp hơn (Viacute dụ như lagrave

từ 11 Mbps sẽ giảm xuống cograven 55 Mbps vagrave 2 Mbps hoặc thậm chiacute lagrave 1 Mbps)

12 Ứng dụng

Trong những năm gần đacircy caacutec nghiecircn cứu về WSN đatilde đạt được bước phaacutet triển

mạnh mẽ caacutec bước tiến từ caacutec nghiecircn cứu hứa hẹn taacutec động lớn đến caacutec ứng dụng

rộng ratildei trong caacutec lĩnh vực an ninh quốc gia chăm soacutec sức khỏe mocirci trường năng

lượng an toagraven thực phẩm vagrave sản xuất

Caacutec ứng dụng của mạng WSN thực sự chỉ bị giới hạn bởi sự tưởng tượng của con

người Sau đacircy lagrave caacutec ứng dụng phổ biến nhất của WSN

121 Ứng dụng quacircn sự an ninh vagrave thiecircn nhiecircn

Trong phản ứng với dịch bệnh thảm họa thiecircn nhiecircn lượng lớn caacutec cảm biến

được thả từ trecircn khocircng mạng lưới caacutec cảm biến sẽ cho biết vị triacute người sống soacutet vugraveng

nguy hiểm giuacutep cho người giaacutem saacutet coacute caacutec thocircng tin chiacutenh xaacutec đảm bảo hiệu quả vagrave an

toagraven cho caacutec hoạt động tigravem kiếm

Sử dụng mạng WSN hạn chế sự coacute mặt trực tiếp của con người trong mocirci trường

nguy hiểm Ứng dụng an ninh bao gồm phaacutet hiện xacircm nhập vagrave truy bắt tội phạm

Mạng cảm biến quacircn sự phaacutet hiện vagrave coacute được thocircng tin về sự di chuyển của đối

phương chất nổ vagrave caacutec thocircng tin khaacutec

Phaacutet hiện vagrave phacircn loại caacutec chất hoacutea chất sinh hoacutea soacuteng vocirc tuyến phoacuteng xạ hạt

nhacircn chất nổhellip

Giaacutem saacutet sự thay đổi khiacute hậu rừng biểnhellip

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 8

Giaacutem saacutet xe cộ trecircn đường

Giaacutem saacutet an ninh trong caacutec khu vực dacircn cư thương mạihellip

Theo dotildei biecircn giới kết hợp với vệ tinhhellip

Higravenh I2 Ứng dụng WSN trong an ninh quốc gia vagrave luật phaacutep

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 9

122 Ứng dụng trong giaacutem saacutet xe cộ vagrave thocircng tin liecircn quan

Mục tiecircu của caacutec hệ thống nagravey lagrave thu thập thocircng tin thocircng qua caacutec mạng cảm

biến xử lyacute vagrave lưu trữ dữ liệu tại trung tacircm sử dụng dữ liệu đoacute cho caacutec ứng dụng cần

thiết Hệ thống được lắp đặt dọc theo caacutec đường chiacutenh mạng cảm biến số tập hợp dữ

liệu về tốc độ lưu thocircng mật độ xe số lượng xe trecircn đường Dữ liệu sau đoacute được

truyền đến trung tacircm dữ liệu để xử lyacute Mạng theo dotildei liecircn tục cung cấp thocircng tin cập

nhật thường xuyecircn theo thời gian thực Caacutec thocircng tin thu được dugraveng để giaacutem saacutet lưu

lượng điều phối giao thocircng hoặc cho caacutec mục điacutech khaacutec

123 Điều khiển caacutec thiết bị trong nhagrave

Điều khiển caacutec thiết bị trong nhagrave

Higravenh I3 Caacutec ứng dụng điều khiển

Caacutec node cảm biến được lắp trecircn caacutec thiết bị vị triacute cần thiết sau đoacute kết nối thagravenh

mạng truyền dữ liệu về node trung tacircm Một khả năng coacute thể phaacutet triển lagrave caacutec cảm biến

theo dotildei y tế được gắn trực tiếp lecircn cơ thể người bệnh để đo đạc thường xuyecircn caacutec

thocircng số về huyết aacutep nhịp timhellip

124 Caacutec togravea nhagrave tự động

Ứng dụng cung cấp khả năng điều khiển quản lyacute tạo sự tiện lợi trong kiểm soaacutet

an ninhhellipQuản lyacute nhiều hệ thống cugraveng luacutec hệ thống chiếu saacuteng nhiệt độ an ninh

giaacutem saacutet nhacircn viecircn quản lyacute hiệu quả tiecircu thụ năng lượng trong togravea nhagrave gắn caacutec chip

lecircn hagraveng hoacuteagiảm được thời gian kiểm trahellipcoacute thể dễ dagraveng được thực hiện bằng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 10

C2WSNs vagrave cocircng nghệ ZigBee đặc điểm nổi bật lagrave dugraveng caacutec cocircng nghệ microsensor

tiecircu thụ rất iacutet cocircng suất thu phaacutet vocirc tuyến kỹ thuật liecircn lạc vả cảm biến khocircng dacircy đa

chức năng

125 Quản lyacute quaacute trigravenh tự động trong cocircng nghiệp

Caacutec ứng dụng trong sản xuất cocircng nghiệp gồm điều khiển quản lyacute hiệu suất vagrave

an toagraven Caacutec cảm biến đặt trong mocirci trường lagravem việc giaacutem saacutet quaacute trigravenh sản xuất chất

lượng sản phẩm kiểm soaacutet mocirci trường lagravem việc quản lyacute nhacircn viecircnhellipdữ liệu được đưa

về trung tacircm để người quản lyacute coacute thể đưa ra caacutec quyết định kịp thời

126 Caacutec ứng dụng trong y học

Một số bệnh viện vagrave trung tacircm y tế đang ứng dụng cocircng nghệ WSNs vagraveo tiền

chẩn đoaacuten chăm soacutec sức khỏe đối phoacute với caacutec dịch bệnh vagrave phục hồi chức năng cho

người bệnh WSNs cho pheacutep theo dotildei tigravenh trạng của caacutec bệnh nhacircn kinh niecircn ngay tại

nhagrave lagravem cho việc phacircn tiacutech vagrave điều trị thuận tiện hơn ruacutet ngắn thời gian điều trị tại

bệnh viện WSNs cograven cho pheacutep thu thập thocircng tin y tế qua thời gian dagravei thagravenh caacutec cơ

sở dữ liệu quan trọng caacutec biện phaacutep can thiệp hiệu quả

2 TRUYỀN DỮ LIỆU GIỮA CAacuteC NUacuteT MẠNG NGUYEcircN TẮC

Một nuacutet cảm nhận khocircng dacircy giao tiếp với caacutec nuacutet cảm nhận khaacutec bằng việc sử

dụng net work - stack

- Ở lớp ứng dụng (Application) dữ liệu coacute thể được gửi ở dạng goacutei do chip radio

ở lớp phần cứng coacute thể truyền vagrave nhận dữ liệu dạng byte necircn caacutec goacutei tin nagravey cần được

phacircn đoạn trước khi chuacuteng được gửi vagrave phải được gheacutep lại sau khi chuacuteng được nhận

Lớp điều khiển đa truy cập Media - Access - Control (MAC) chuyển tiếp lớp ứng

dụng với radio chip

+ Khi 1 goacutei tin được gửi đi nhờ 1 ứng dụng goacutei tin được phacircn nhỏ thagravenh caacutec

byte 1 chuỗi liecircn tiếp caacutec byte đặc biệt được gọi lagrave Preamble (phần mở đầu) được gửi

đi trước caacutec byte dữ liệu do đoacute phiacutea thu coacute thể đồng bộ vagrave xaacutec định phần bắt đầu của 1

goacutei tin

+ Sau khi nhận 1 byte radio chip matilde hoacutea bit dữ liệu vagrave truyền chuacuteng Ở phiacutea

nhận radio chip baacuteo hiệu việc đến của caacutec byte sau khi xaacutec định vagrave giải matilde caacutecbit dữ

liệu

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 11

+ Sau đoacute lớp MAC hợp lại goacutei tin bắt đầu từ goacutei đầu tiecircn sau goacutei preamble Tiếp

theo lớp MAC baacuteo hiệu việc đến của goacutei tin cho lớp trecircn

Caacutec byte dữ liệu coacute thể được matilde hoacutea một caacutech tugravey yacute sau khi được phacircn đoạn cugraveng

với matilde sửa lỗi (ECC ) Matilde sửa lỗi ECC được dugraveng để khocirci phục caacutec bit dữ liệu trong

trường hợp coacute số lượng nhỏ bit lỗi Khi caacutec byte dữ liệu đoacute tới bộ thu tại đacircy noacute được

giải matilde để trở về dạng caacutec byte dữ liệu ban đầu

3 TIẾT KIỆM VAgrave TIEcircU THỤ NĂNG LƢỢNG

Năng lượng tiecircu thụ phụ thuộc vagraveo nhiều yếu tố sử dụng khaacutec nhau như Kiến

truacutec giao thức mạng Giao thức chọn đường Hoạt động truyền nhận khocircng dacircy

31 Kiến truacutec giao thức mạng

Kiến truacutec giao thức nagravey kết hợp giữa năng lượng vagrave chọn đường kết hợp số liệu

với caacutec giao thức mạng sử dụng năng lượng hiệu quả Kiến truacutec giao thức bao gồm

lớp vật lyacute lớp liecircn kết số liệu lớp mạng lớp truyền tải lớp ứng dụng phần quản lyacute

cocircng suất phần quản lyacute di động vagrave phần quản lyacute nhiệm vụ

Lớp vật lyacute cung cấp caacutec kỹ thuật điều chế phaacutet vagrave thu Vigrave mocirci trường coacute tạp acircm

vagrave caacutec nuacutet cảm biến coacute thể di động giao thức điều khiển truy cập mocirci trường (MAC)

phải xeacutet đến vấn đề cocircng suất vagrave phải coacute khả năng tối thiểu hoaacute việc va chạm với

thocircng tin quản baacute của caacutec nuacutet lacircn cận

Lớp mạng quan tacircm đến việc chọn đường số liệu được cung cấp bởi lớp truyền

tải

Lớp truyền tải giuacutep duy trigrave luồng số liệu nếu ứng dụng mạng cảm biến yecircu cầu

Tuỳ theo nhiệm vụ cảm biến caacutec loại phần mềm khaacutec nhau coacute thể được xacircy dựng vagrave

sử dụng ở lớp ứng dụng Ngoagravei ra caacutec phần quản lyacute cocircng suất di chuyển vagrave nhiệm vụ

sẽ giaacutem saacutet việc sử dụng cocircng suất sự di chuyển vagrave thực hiện nhiệm vụ giữa caacutec nuacutet

cảm biến Những phần nagravey giuacutep caacutec nuacutet cảm biến phối hợp nhiệm vụ cảm biến vagrave tiecircu

thụ năng lượng tổng thể thấp hơn

Phần quản lyacute năng lượng điều khiển việc sử dụng năng lượng của nuacutet mạng Viacute

dụ nuacutet mạng coacute thể tắt khối thu của noacute sau khi thu được một bản tin từ một nuacutet lacircn

cận Điều nagravey giuacutep traacutenh tạo ra caacutec bản tin giống nhau Cũng vậy khi mức năng lượng

của nuacutet mạng thấp noacute sẽ phaacutet quảng baacute tới caacutec nuacutet lacircn cận để thocircng baacuteo noacute coacute mức

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 12

năng lượng thấp vagrave khocircng thể tham gia vagraveo caacutec bản tin chọn đường Phần năng lượng

cograven lại sẽ dagravenh riecircng cho nhiệm vụ cảm biến

Phần quản lyacute di chuyển phaacutet hiện vagrave ghi lại sự di chuyển của caacutec nuacutet cảm biến để

duy trigrave tuyến tới người sử dụng vagrave caacutec nuacutet cảm biến coacute thể lưu vết của caacutec nuacutet cảm

biến lacircn cận Nhờ xaacutec định được caacutec nuacutet cảm biến lacircn cận caacutec nuacutet cảm biến coacute thể cacircn

bằng giữa cacircn bằng giữa cocircng suất của noacute vagrave nhiệm vụ thực hiện

Phần quản lyacute nhiệm vụ dugraveng để lagravem cacircn bằng vagrave lecircn kế hoạch caacutec nhiệm vụ cảm

biến trong một vugraveng xaacutec định Khocircng phải tất cả caacutec nuacutet cảm biến trong vugraveng đoacute đều

phải thực hiện nhiệm vụ cảm biến tại cugraveng một thời điểm Kết quả lagrave một số nuacutet cảm

biến thực hiện nhiều hơn caacutec nuacutet khaacutec tuỳ theo mức cocircng suất của noacute Những phần

quản lyacute nagravey lagrave cần thiết để caacutec nuacutet cảm biến coacute thể lagravem việc cugraveng nhau theo một caacutech

thức sử dụng hiệu quả cocircng suất chọn đường số liệu trong mạng cảm biến di động vagrave

phacircn chia tagravei nguyecircn giữa caacutec nuacutet cảm biến

Kiến truacutec mạng như trecircn goacutep phần quản lyacute năng lượng của caacutec nuacutet mạng đồng

thời duy trigrave hoạt động của toagraven mạng trong thời gian dagravei hơn

32 Giao thức chọn đường

321 Khoacute khăn trong giao thức chọn đường

Mặc dugrave caacutec ứng dụng của mạng WSN lagrave rất lớn tuy nhiecircn những mạng nagravey coacute

một số hạn chế như giới hạn về nguồn cocircng suất khả năng tiacutenh toaacuten vagrave độ rộng băng

thocircng Một số giao thức chọn đường quản lyacute cocircng suất vagrave trao đổi số liệu đatilde được

thiết kế cho WSN với yecircu cầu quan trọng nhất lagrave tiết kiệm được năng lượng

Một trong những mục tiecircu thiết kế chiacutenh của WSN lagrave keacuteo dagravei thời gian sống của

mạng vagrave traacutenh suy giảm kết nối nhờ caacutec kỹ thuật quản lyacute năng lượng Vấn đề nagravey cần

được giải quyết triệt để thigrave mới đạt được hiệu quả truyền tin trong WSN Caacutec giao thức

chọn đường trong WSN coacute thể khaacutec nhau tuỳ theo ứng dụng vagrave cấu truacutec mạng Tuy

nhiecircn việc chọn đường gặp phải những khoacute khăn như Phacircn bố nuacutet tiecircu thụ năng

lượng khocircng được lagravem mất độ chiacutenh xaacutec tiacutenh khocircng đồng nhất của nuacutet mạng tiacutenh

động của mạng khả năng định cỡ khả năng chống lỗi chất lượng dịch vụ

Phacircn bố nuacutet Việc phacircn bố nuacutet trong WSN phụ thuộc vagraveo ứng dụng vagrave coacute thể

được thực hiện bằng tay hoặc phacircn bố ngẫu nhiecircn Khi phacircn bố bằng tay số liệu được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 13

chọn đường thocircng qua caacutec đường đatilde định trước Tuy nhiecircn khi phacircn bố caacutec nuacutet ngẫu

nhiecircn sẽ tạo ra một cấu truacutec chọn đường đặc biệt (Ad-hoc)

Tiecircu thụ năng lượng khocircng được lagravem mất độ chiacutenh xaacutec Caacutec nuacutet cảm biến coacute

thể sử dụng quaacute caacutec giới hạn về cocircng suất để thực hiện tiacutenh toaacuten vagrave truyền tin trong

mocirci trường vocirc tuyến Thời gian sống của nuacutet mạng cảm biến phụ thuộc rất nhiều vagraveo

thời gian sử dụng của pin Trong WSN đa bước nhảy mỗi nuacutet đoacuteng hai vai trograve lagrave

truyền số liệu vagrave chọn đường Một số nuacutet cảm biến hoạt động sai chức năng do lỗi

nguồn cocircng suất coacute thể gacircy ra sự thay đổi cấu higravenh mạng nghiecircm trọng vagrave phải chọn

đường lại caacutec goacutei hoặc phải tổ chức lại mạng

Tiacutenh khocircng đồng nhất của nuacutet mạng Nghĩa lagrave caacutec nuacutet mạng coacute khả năng tiacutenh

toaacuten khả năng truyền tin vagrave coacute cocircng suất khaacutec nhau Khi đoacute sẽ gacircy khoacute khăn cho kỹ

thuật chọn đường

Khả năng chống lỗi Một số nuacutet cảm biến coacute thể bị lỗi hoặc bị ngắt do thiếu cocircng

suất hỏng phần cứng hoặc bị nhiễu mocirci trường Sự cố của caacutec nuacutet cảm biến khocircng

được ảnh hưởng tới nhiệm vụ của toagraven mạng cảm biến Nếu coacute nhiều nuacutet bị lỗi caacutec

giao thức chọn đường vagrave điều khiển truy cập mocirci trường (MAC) phải thagravenh lập caacutec

tuyến mới tới nuacutet gốc Việc nagravey coacute thể cần thiết phải điều chỉnh cocircng suất phaacutet vagrave tốc

độ tiacuten hiệu trecircn caacutec tuyến hiện tại để giảm sự tiecircu thụ năng lượng hoặc lagrave caacutec goacutei phải

chọn đường lại qua caacutec caacutec vugraveng mạng coacute cocircng suất khả dụng lớn hơn

Khả năng định cỡ Số lượng nuacutet mạng coacute thể lagrave hagraveng trăm hagraveng nghigraven hoặc

nhiều hơn Bất kỳ phương phaacutep chọn đường nagraveo cũng phải coacute khả năng lagravem việc với

một số lượng lớn caacutec nuacutet cảm biến như vậy

Tiacutenh động của mạng Trong nhiều nghiecircn cứu caacutec nuacutet cảm biến được coi lagrave cố

định Tuy nhiecircn trong một số ứng dụng cả nuacutet gốc vagrave caacutec nuacutet cảm biến coacute thể di

chuyển Khi đoacute caacutec bản tin chọn đường từ hoặc tới caacutec nuacutet di chuyển sẽ gặp phải caacutec

vần đề như đường liecircn lạc cấu higravenh mạng năng lượng độ rộng bănghellip

Chất lượng dịch vụ Khi năng lượng gần hết caacutec nuacutet mạng coacute thể yecircu cầu giảm

chất lượng caacutec kết quả để giảm mức tiecircu thụ năng lượng của nuacutet vagrave keacuteo dagravei thời gian

sống của toagraven mạng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 14

Mặc dugrave việc chọn đường gặp nhiều khoacute khăn nhưng khi coacute một giao thức chọn

đường tốt sẽ tiết kiệm thời gian truyền nhận thocircng tin giảm năng lượng tiecircu hao latildeng

phiacute do tắc nghẽn lỗi đường truyềnVigrave vậy người ta đatilde đưa ra một số giao thức chọn

đường magrave dưới đacircy sẽ trigravenh bầy

322 Caacutec giao thức chọn đường

Phần nagravey sẽ trigravenh bagravey về phương phaacutep chọn đường trong WSN Noacutei chung caacutec

giao thức chọn đường được chia lagravem 3 loại dựa vagraveo cấu truacutec mạng ngang hagraveng phacircn

cấp hoặc dựa vagraveo vị triacute

Trong chọn đường ngang hagraveng tất cả caacutec nuacutet thường coacute vai trograve hoặc chức năng

như nhau như cảm nhận truyền Chuacuteng sẽ thực hiện việc cảm nhận thocircng tin cần

thiết vagrave truyền số liệu về nuacutet gốc

Trong chọn đường phacircn cấp caacutec nuacutet sẽ đoacuteng vai trograve khaacutec nhau trong mạng sẽ coacute

nuacutet chủ đại diện cho từng nhoacutem caacutec nuacutet cảm biến để nhận số liệu từ caacutec nuacutet cảm biến

truyền tới Caacutec nuacutet chủ cũng tập hợp số liệu từ caacutec nuacutet trong nhoacutem của noacute trước khi

gửi số liệu đến nuacutet gốc Nuacutet chủ sẽ thay đổi khi bắt đầu chu kỳ lagravem việc mới vagrave sẽ thay

bằng nuacutet khaacutec coacute khả năng đảm nhận chức năng nagravey

Trong chọn đường dựa theo vị triacute thigrave vị triacute của caacutec nuacutet cảm biến sẽ được dugraveng để

chọn đường số liệu Giao thức chọn đường cograven coacute thể được phacircn loại dựa theo đa

đường yecircu cầu hỏiđaacutep QoS vagrave liecircn kết tuỳ thuộc vagraveo chế độ hoạt động Ngoagravei ra

cũng coacute thể chia thagravenh 3 loại chủ động tương taacutec hoặc lai gheacutep tuỳ thuộc vagraveo caacutech

thức magrave nguồn tigravem đường tời điacutech Một giao thức chọn đường được coi lagrave thiacutech ứng

nếu caacutec tham số của hệ thống coacute thể điều khiển được để phugrave hợp với caacutec trạng thaacutei

mạng hiện tại vagrave caacutec mức năng lượng khả dụng Một số giao thức chọn đường đatilde phaacutet

huy hiệu quả tiết kiệm tiecircu thụ năng lượng như LEACH

TEENampAPTEEN MECNampSVECN PEGASIS thuộc chọn đường phacircn cấp SPIN

Directed Diffusion CADR CUGAR thuộc chọn đường ngang hagraveng Trong đoacute đaacuteng

quan tacircm nhất lagrave giao thức chọn đường LEACH LEACH (Low Energy Adaptive

Clustering Hierarchy) - phacircn cấp nhoacutem thiacutech ứng cocircng suất thấp giao thức nagravey cho

pheacutep tiết kiệm năng lượng trong mạng WSN Mục điacutech của LEACH lagrave lựa chọn ngẫu

nhiecircn caacutec nuacutet cảm biến lagravem caacutec nuacutet chủ do đoacute việc tiecircu hao năng lượng khi liecircn lạc

với nuacutet gốc được trải đều cho tất cả caacutec nuacutet cảm biến trong mạng Quaacute trigravenh hoạt động

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 15

của LEACH được chia thagravenh 2 bước bước thiết lập vagrave bước ổn định Thời gian bước

ổn định keacuteo dagravei hơn so với thời gian của bước thiết lập để giảm thiểu phần điều khiển

Tại bước thiết lập sẽ xaacutec định nuacutet mạng nagraveo sẽ lagravem chủ Tại bước ổn định caacutec nuacutet cảm

biến bắt đầu cảm nhận vagrave truyền số liệu về nuacutet chủ nuacutet chủ cũng tập hợp số liệu từ caacutec

nuacutet trong nhoacutem trước khi gửi caacutec số liệu nagravey về nuacutet gốc Theo thử nghiệm mocirc phỏng

giao thức LEACH của mạng WSN coacute 160 nuacutet phacircn bố đều cocircng suất ban đầu của nuacutet

lagrave 30 Kết quả thu được lagrave khi truyền trực tiếp tới nuacutet gốc sau khoảng 470 chu kỳ

thời gian sẽ kết thuacutec truyền tin khi sử dụng giao thức LEACH sau khoảng 685 chu kỳ

thời gian mới kết thuacutec truyền tin Kết quả nagravey cho thấy đacircy lagrave một phương phaacutep chọn

đường phacircn cấp coacute khả năng tiết kiệm được năng lượng vagrave keacuteo dagravei thời gian sống của

mạng

Tuy nhiecircn cơ chế hoạt động của LEACH lagrave lựa chọn số liệu được tập trung vagrave

thực hiện theo chu kỳ Do đoacute giao thức nagravey chỉ thiacutech hợp với yecircu cầu giaacutem saacutet liecircn tục

bởi mạng cảm biến Với ứng dụng magrave người sử dụng khocircng cần tất cả caacutec số liệu ngay

lập tức thigrave việc truyền số liệu theo chu kỳ lagrave khocircng cần thiết vagrave coacute thể lagravem tiecircu tốn

năng lượng vocirc iacutech Giao thức LEACH cần tiếp tục được cải tiến để khắc phục hạn chế

33 Hoạt động truyền nhận khocircng dacircy

Đối với mạng cảm nhận khocircng dacircy thigrave năng lượng trở thagravenh một vấn đề được chuacute

yacute để duy trigrave hoạt động của hệ thống mạng vigrave caacutec nuacutet mạng độc lập chỉ được cung cấp

năng lượng từ một nguồn cố định (pin) Việc tiecircu thụ năng lượng thấp lagrave một nhu cầu

quan trọng cho caacutec hệ thống hoạt động bằng pin - khocircng được cung cấp năng lượng

thường xuyecircn Khi coacute một dograveng tiecircu thụ thấp thigrave thời gian sống của chuacuteng sẽ keacuteo dagravei

thecircm Hệ thống tiecircu thụ năng lượng thấp lagrave mục tiecircu cần đạt của mạng cảm nhận

khocircng dacircy sử dụng CC1010 Caacutec vấn đề đưa ra trong phần nagravey lagrave cơ sở cho việc viết

phần mềm tiết kiệm tiecircu thụ năng lượng cho nuacutet mạng cảm nhận khocircng dacircy

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 16

CHƢƠNG 2 MAtilde SỬA LỖI

Mạng phải coacute khả năng truyền chiacutenh xaacutec dữ liệu từ thiết bị nagravey tới thiết bị khaacutec

Một hệ thống khocircng bảo đảm dữ liệu nhận giống như dữ liệu truyền lagrave hệ thống khocircng

sử dụng được Coacute nhiều nhacircn tố như tạp nhiễu đường dacircy coacute thể lagravem hỏng một hoặc

nhiều bit của khối dữ liệu đang truyền Một hệ thống thực sự dugraveng được phải coacute cơ cấu

để phaacutet hiện vagrave sửa caacutec lỗi đoacute

Việc phaacutet hiện vagrave sửa lỗi được trang bị ở lớp liecircn kết dữ liệu hoặc lớp giao vận

tương ứng trong mocirc higravenh OSI

1 CAacuteC CƠ CHẾ TRUYỀN DỮ LIỆU

11 Truyền dữ liệu song song

bull Mỗi bit dugraveng một đường truyền riecircng Nếu coacute 8 bits được truyền đồng thời sẽ

yecircu cầu 8 đường truyền độc lập

bull Để truyền dữ liệu trecircn một đường truyền song song một kecircnh truyền riecircng

được dugraveng để thocircng baacuteo cho becircn nhận biết khi nagraveo dữ liệu coacute sẵn (clock signal)

bull Cần thecircm một kecircnh truyền khaacutec để becircn nhận baacuteo cho becircn gởi biết lagrave đatilde sẵn

sagraveng để nhận dữ liệu kế tiếp

12 Truyền dữ liệu tuần tự

bull Tất cả caacutec bit đều được truyền trecircn cugraveng một đường truyền bit nagravey tiếp theo

sau bit kia

bull Khocircng cần caacutec đường truyền riecircng cho tiacuten hiệu đồng bộ vagrave tiacuten hiệu bắt tay (caacutec

tiacuten hiệu nagravey được matilde hoacutea vagraveo dữ liệu truyền đi)

bull Vấn đề định thời (timing) đogravei hỏi phải coacute cơ chế đồng bộ giữa becircn truyền vagrave

becircn nhận

bull 2 caacutech giải quyết

- Bất đồng bộ mỗi kyacute tự được đồng bộ bởi start vagrave stop bit

- Đồng bộ mỗi khối kyacute tự được đồng bộ dugraveng cờ

13 Truyền bất đồng bộ

bull Dữ liệu được truyền theo từng kyacute tự để traacutenh việc mất đồng bộ khi nhận được chuỗi

bit quaacute dagravei

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 17

- 5 đến 8 bits

- Chỉ cần giữ đồng bộ trong một kyacute tự

- Taacutei đồng bộ cho mỗi kyacute tự mới

bull Hagravenh vi

- Đối với dograveng dữ liệu đều khoảng caacutech giữa caacutec kyacute tự lagrave đồng nhất (bằng chiều dagravei

của phần tử stop)

- Ở trạng thaacutei rỗi bộ thu phaacutet hiện sự chuyển 1 đến 0

- Lấy mẫu 7 khoảng kế tiếp (chiều dagravei kyacute tự)

- Đợi việc chuyển 1 đến 0 cho kyacute tự kế tiếp

bull Hiệu suất

- Đơn giản

- Rẻ

- Phiacute tổn 2 hoặc 3 bit cho một kyacute tự (~20)

- Thiacutech hợp cho dữ liệu với khoảng trống giữa caacutec kyacute tự lớn (dữ liệu nhập từ bagraven

phiacutem)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 18

bull Đồng bộ khung (frame synchronization) dugraveng caacutec kyacute tự điều khiển (STX ETX

DLE)

14 Truyền đồng bộ

bull Truyền khocircng cần startstop

bull Phải coacute tiacuten hiệu đồng bộ

bull Đồng bộ bit (bit synchronization) sử dụng caacutec phƣơng phaacutep sau

- Tiacutech hợp xung clock vagraveo dữ liệu truyền đi

+ Tiacutech hợp thocircng tin đồng bộ (clock) vagraveo trong dữ liệu truyền

+ Đầu nhận sẽ taacutech thocircng tin đồng bộ dựa vagraveo dữ liệu nhận được

+ Manchester differential Manchester tần số soacuteng mang (analog)

- Sử dụng đường clock riecircng

+ Dugraveng một đường tiacuten hiệu đồng bộ riecircng biệt

+ Một becircn (phaacutet hoặc nhận) tạo ra caacutec xung clock đồng bộ với caacutec bit truyền đi

trecircn đường clock riecircng

+ Becircn cograven lại dugraveng tiacuten hiệu trecircn đường clock riecircng để lagravem clock

+ Thiacutech hợp khi truyền trong khoảng caacutech ngắn

+ Tiacuten hiệu đồng bộ dễ bị suy giảm trecircn đường truyền

bull Đồng bộ frame

- Mỗi block dữ liệu được bắt đầu bằng một cờ gọi lagrave preamble kết thuacutec bằng

một cờ gọi lagrave postamble

- Preamble vagrave postamble lagrave một mẫu bit (bit pattern) được quy định sẵn

+ Một chuỗi caacutec kyacute tự SYN (16h trong bảng matilde ASCII)

+ Mẫu bit 11111110

- Frame dữ liệu + preamble + postamble + thocircng tin điều khiển

- Hiệu quả hơn so với truyền bất đồng bộ (phiacute tổn thấp hơn cho caacutec bit điều

khiển)

+ HDLC 48 bit điều khiển cho mỗi block 1000 kyacute tự (8000 bit)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 19

2 VẤN ĐỀ XỬ LYacute LỖI

11 Caacutec lỗi xẩy ra trecircn đường truyền

bull Mocirci trƣờng truyền dẫn bị nhiễu (điện từ hellip) dẫn đến dữ liệu nhận coacute lỗi

(caacutec bit bị thay đổi)

bull 2 caacutech khắc phục khi phaacutet hiện coacute lỗi

- Forward error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự hoặc caacutec

frame truyền đi để becircn nhận coacute thể phaacutet hiện khi nagraveo coacute lỗi va lỗi nằm ở đacircu để sửa

(coacute khả năng sửa lỗi)

- Feedback (backward) error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự

hoặc caacutec frame truyền đi chỉ đủ để phaacutet hiện khi nagraveo coacute lỗi (khocircng coacute khả năng sửa

lỗi) Cơ chế yecircu cầu truyền lại kyacute tựframe sai được dugraveng trong trường hợp nagravey

bull Phacircn loại lỗi

- Lỗi 1 bit

+ Chỉ 1 bit bị lỗi khocircng ảnh hưởng caacutec bit xung quanh

+ Thường xảy ra do nhiễu trắng

- Lỗi chugravem (busrt error)

+ Một chuỗi liecircn tục B bit trong đoacute bit đầu bit cuối vagrave caacutec bit bất kigrave nằm giữa

chuỗi đều bị lỗi

+ Thường xảy ra do nhiễu xung

+ Ảnh hưởng cagraveng lớn đối với tốc độ truyền cao

Bit error rate (BER) xaacutec suất một bit nhận đƣợc bị lỗi

12 Cơ chế phaacutet hiện lỗi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 6

năng trong một phạm vi từ một trăm đến vagravei trăm feet Điểm truy cập (hoặc anten

được gắn vagraveo điểm truy cập) thường được đặt cao nhưng về cơ bản coacute thể được đặt ở

bất kỳ chỗ nagraveo miễn lagrave đạt được vugraveng phủ soacuteng mong muốn

Những người sử dụng truy cập vagraveo mạng maacutey tiacutenh khocircng dacircy thocircng qua caacutec bộ

thiacutech ứng maacutey tiacutenh khocircng dacircy như caacutec Card mạng khocircng dacircy trong caacutec vi maacutey tiacutenh

caacutec maacutey Palm PDA Caacutec bộ thiacutech ứng maacutey tiacutenh khocircng dacircy cung cấp một giao diện

giữa hệ thống điều hagravenh mạng (NOS ndash Network Operation System) của maacutey khaacutech vagrave

caacutec soacuteng khocircng gian qua một anten Bản chất của kết nối khocircng dacircy lagrave trong suốt đối

với hệ điều hagravenh mạng

114 Caacutec mocirc higravenh của mạng maacutey tiacutenh khocircng dacircy cơ bản

Kiểu Ad ndash hoc

Mỗi maacutey tiacutenh trong mạng giao tiếp trực tiếp với nhau thocircng qua caacutec thiết bị card

mạng khocircng dacircy magrave khocircng dugraveng đến caacutec thiết bị định tuyến hay thu phaacutet khocircng dacircy

Wireless Station

Wireless StationWireless Station

Wireless Station

Higravenh I1 Mocirc higravenh mạng Ad ndash hoc ( hay mạng ngang hagraveng )

Kiểu Infrastructure

Caacutec maacutey tiacutenh trong hệ thống mạng sử dụng một hoặc nhiều caacutec thiết bị định

tuyến hay thiết bị thu phaacutet để thực hiện caacutec hoạt động trao đổi dữ liệu với nhau vagrave caacutec

hoạt động khaacutec

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 7

115 Cự ly truyền soacuteng tốc độ truyền dữ liệu

Truyền soacuteng điện từ trong khocircng gian sẽ gặp hiện tượng suy hao Vigrave thế đối với

kết nối khocircng dacircy noacutei chung khoảng caacutech cagraveng xa thigrave khả năng thu tiacuten hiệu cagraveng keacutem

tỷ lệ lỗi sẽ tăng lecircn dẫn đến tốc độ truyền dữ liệu sẽ phải giảm xuống

Caacutec tốc độ của chuẩn khocircng dacircy như 11 Mbps hay 54 Mbps khocircng liecircn quan đến

tốc độ kết nối hay tốc độ download vigrave những tốc độ nagravey được quyết định bởi nhagrave cung

cấp dịch vụ Internet

Với một hệ thống mạng khocircng dacircy dữ liệu được giử qua soacuteng radio necircn tốc độ

coacute thể bị ảnh hưởng bởi caacutec taacutec nhacircn gacircy nhiễu hoặc caacutec vật thể lớn Thiết bị định

tuyến khocircng dacircy sẽ tự động điều chỉnh xuống caacutec mức tốc độ thấp hơn (Viacute dụ như lagrave

từ 11 Mbps sẽ giảm xuống cograven 55 Mbps vagrave 2 Mbps hoặc thậm chiacute lagrave 1 Mbps)

12 Ứng dụng

Trong những năm gần đacircy caacutec nghiecircn cứu về WSN đatilde đạt được bước phaacutet triển

mạnh mẽ caacutec bước tiến từ caacutec nghiecircn cứu hứa hẹn taacutec động lớn đến caacutec ứng dụng

rộng ratildei trong caacutec lĩnh vực an ninh quốc gia chăm soacutec sức khỏe mocirci trường năng

lượng an toagraven thực phẩm vagrave sản xuất

Caacutec ứng dụng của mạng WSN thực sự chỉ bị giới hạn bởi sự tưởng tượng của con

người Sau đacircy lagrave caacutec ứng dụng phổ biến nhất của WSN

121 Ứng dụng quacircn sự an ninh vagrave thiecircn nhiecircn

Trong phản ứng với dịch bệnh thảm họa thiecircn nhiecircn lượng lớn caacutec cảm biến

được thả từ trecircn khocircng mạng lưới caacutec cảm biến sẽ cho biết vị triacute người sống soacutet vugraveng

nguy hiểm giuacutep cho người giaacutem saacutet coacute caacutec thocircng tin chiacutenh xaacutec đảm bảo hiệu quả vagrave an

toagraven cho caacutec hoạt động tigravem kiếm

Sử dụng mạng WSN hạn chế sự coacute mặt trực tiếp của con người trong mocirci trường

nguy hiểm Ứng dụng an ninh bao gồm phaacutet hiện xacircm nhập vagrave truy bắt tội phạm

Mạng cảm biến quacircn sự phaacutet hiện vagrave coacute được thocircng tin về sự di chuyển của đối

phương chất nổ vagrave caacutec thocircng tin khaacutec

Phaacutet hiện vagrave phacircn loại caacutec chất hoacutea chất sinh hoacutea soacuteng vocirc tuyến phoacuteng xạ hạt

nhacircn chất nổhellip

Giaacutem saacutet sự thay đổi khiacute hậu rừng biểnhellip

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 8

Giaacutem saacutet xe cộ trecircn đường

Giaacutem saacutet an ninh trong caacutec khu vực dacircn cư thương mạihellip

Theo dotildei biecircn giới kết hợp với vệ tinhhellip

Higravenh I2 Ứng dụng WSN trong an ninh quốc gia vagrave luật phaacutep

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 9

122 Ứng dụng trong giaacutem saacutet xe cộ vagrave thocircng tin liecircn quan

Mục tiecircu của caacutec hệ thống nagravey lagrave thu thập thocircng tin thocircng qua caacutec mạng cảm

biến xử lyacute vagrave lưu trữ dữ liệu tại trung tacircm sử dụng dữ liệu đoacute cho caacutec ứng dụng cần

thiết Hệ thống được lắp đặt dọc theo caacutec đường chiacutenh mạng cảm biến số tập hợp dữ

liệu về tốc độ lưu thocircng mật độ xe số lượng xe trecircn đường Dữ liệu sau đoacute được

truyền đến trung tacircm dữ liệu để xử lyacute Mạng theo dotildei liecircn tục cung cấp thocircng tin cập

nhật thường xuyecircn theo thời gian thực Caacutec thocircng tin thu được dugraveng để giaacutem saacutet lưu

lượng điều phối giao thocircng hoặc cho caacutec mục điacutech khaacutec

123 Điều khiển caacutec thiết bị trong nhagrave

Điều khiển caacutec thiết bị trong nhagrave

Higravenh I3 Caacutec ứng dụng điều khiển

Caacutec node cảm biến được lắp trecircn caacutec thiết bị vị triacute cần thiết sau đoacute kết nối thagravenh

mạng truyền dữ liệu về node trung tacircm Một khả năng coacute thể phaacutet triển lagrave caacutec cảm biến

theo dotildei y tế được gắn trực tiếp lecircn cơ thể người bệnh để đo đạc thường xuyecircn caacutec

thocircng số về huyết aacutep nhịp timhellip

124 Caacutec togravea nhagrave tự động

Ứng dụng cung cấp khả năng điều khiển quản lyacute tạo sự tiện lợi trong kiểm soaacutet

an ninhhellipQuản lyacute nhiều hệ thống cugraveng luacutec hệ thống chiếu saacuteng nhiệt độ an ninh

giaacutem saacutet nhacircn viecircn quản lyacute hiệu quả tiecircu thụ năng lượng trong togravea nhagrave gắn caacutec chip

lecircn hagraveng hoacuteagiảm được thời gian kiểm trahellipcoacute thể dễ dagraveng được thực hiện bằng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 10

C2WSNs vagrave cocircng nghệ ZigBee đặc điểm nổi bật lagrave dugraveng caacutec cocircng nghệ microsensor

tiecircu thụ rất iacutet cocircng suất thu phaacutet vocirc tuyến kỹ thuật liecircn lạc vả cảm biến khocircng dacircy đa

chức năng

125 Quản lyacute quaacute trigravenh tự động trong cocircng nghiệp

Caacutec ứng dụng trong sản xuất cocircng nghiệp gồm điều khiển quản lyacute hiệu suất vagrave

an toagraven Caacutec cảm biến đặt trong mocirci trường lagravem việc giaacutem saacutet quaacute trigravenh sản xuất chất

lượng sản phẩm kiểm soaacutet mocirci trường lagravem việc quản lyacute nhacircn viecircnhellipdữ liệu được đưa

về trung tacircm để người quản lyacute coacute thể đưa ra caacutec quyết định kịp thời

126 Caacutec ứng dụng trong y học

Một số bệnh viện vagrave trung tacircm y tế đang ứng dụng cocircng nghệ WSNs vagraveo tiền

chẩn đoaacuten chăm soacutec sức khỏe đối phoacute với caacutec dịch bệnh vagrave phục hồi chức năng cho

người bệnh WSNs cho pheacutep theo dotildei tigravenh trạng của caacutec bệnh nhacircn kinh niecircn ngay tại

nhagrave lagravem cho việc phacircn tiacutech vagrave điều trị thuận tiện hơn ruacutet ngắn thời gian điều trị tại

bệnh viện WSNs cograven cho pheacutep thu thập thocircng tin y tế qua thời gian dagravei thagravenh caacutec cơ

sở dữ liệu quan trọng caacutec biện phaacutep can thiệp hiệu quả

2 TRUYỀN DỮ LIỆU GIỮA CAacuteC NUacuteT MẠNG NGUYEcircN TẮC

Một nuacutet cảm nhận khocircng dacircy giao tiếp với caacutec nuacutet cảm nhận khaacutec bằng việc sử

dụng net work - stack

- Ở lớp ứng dụng (Application) dữ liệu coacute thể được gửi ở dạng goacutei do chip radio

ở lớp phần cứng coacute thể truyền vagrave nhận dữ liệu dạng byte necircn caacutec goacutei tin nagravey cần được

phacircn đoạn trước khi chuacuteng được gửi vagrave phải được gheacutep lại sau khi chuacuteng được nhận

Lớp điều khiển đa truy cập Media - Access - Control (MAC) chuyển tiếp lớp ứng

dụng với radio chip

+ Khi 1 goacutei tin được gửi đi nhờ 1 ứng dụng goacutei tin được phacircn nhỏ thagravenh caacutec

byte 1 chuỗi liecircn tiếp caacutec byte đặc biệt được gọi lagrave Preamble (phần mở đầu) được gửi

đi trước caacutec byte dữ liệu do đoacute phiacutea thu coacute thể đồng bộ vagrave xaacutec định phần bắt đầu của 1

goacutei tin

+ Sau khi nhận 1 byte radio chip matilde hoacutea bit dữ liệu vagrave truyền chuacuteng Ở phiacutea

nhận radio chip baacuteo hiệu việc đến của caacutec byte sau khi xaacutec định vagrave giải matilde caacutecbit dữ

liệu

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 11

+ Sau đoacute lớp MAC hợp lại goacutei tin bắt đầu từ goacutei đầu tiecircn sau goacutei preamble Tiếp

theo lớp MAC baacuteo hiệu việc đến của goacutei tin cho lớp trecircn

Caacutec byte dữ liệu coacute thể được matilde hoacutea một caacutech tugravey yacute sau khi được phacircn đoạn cugraveng

với matilde sửa lỗi (ECC ) Matilde sửa lỗi ECC được dugraveng để khocirci phục caacutec bit dữ liệu trong

trường hợp coacute số lượng nhỏ bit lỗi Khi caacutec byte dữ liệu đoacute tới bộ thu tại đacircy noacute được

giải matilde để trở về dạng caacutec byte dữ liệu ban đầu

3 TIẾT KIỆM VAgrave TIEcircU THỤ NĂNG LƢỢNG

Năng lượng tiecircu thụ phụ thuộc vagraveo nhiều yếu tố sử dụng khaacutec nhau như Kiến

truacutec giao thức mạng Giao thức chọn đường Hoạt động truyền nhận khocircng dacircy

31 Kiến truacutec giao thức mạng

Kiến truacutec giao thức nagravey kết hợp giữa năng lượng vagrave chọn đường kết hợp số liệu

với caacutec giao thức mạng sử dụng năng lượng hiệu quả Kiến truacutec giao thức bao gồm

lớp vật lyacute lớp liecircn kết số liệu lớp mạng lớp truyền tải lớp ứng dụng phần quản lyacute

cocircng suất phần quản lyacute di động vagrave phần quản lyacute nhiệm vụ

Lớp vật lyacute cung cấp caacutec kỹ thuật điều chế phaacutet vagrave thu Vigrave mocirci trường coacute tạp acircm

vagrave caacutec nuacutet cảm biến coacute thể di động giao thức điều khiển truy cập mocirci trường (MAC)

phải xeacutet đến vấn đề cocircng suất vagrave phải coacute khả năng tối thiểu hoaacute việc va chạm với

thocircng tin quản baacute của caacutec nuacutet lacircn cận

Lớp mạng quan tacircm đến việc chọn đường số liệu được cung cấp bởi lớp truyền

tải

Lớp truyền tải giuacutep duy trigrave luồng số liệu nếu ứng dụng mạng cảm biến yecircu cầu

Tuỳ theo nhiệm vụ cảm biến caacutec loại phần mềm khaacutec nhau coacute thể được xacircy dựng vagrave

sử dụng ở lớp ứng dụng Ngoagravei ra caacutec phần quản lyacute cocircng suất di chuyển vagrave nhiệm vụ

sẽ giaacutem saacutet việc sử dụng cocircng suất sự di chuyển vagrave thực hiện nhiệm vụ giữa caacutec nuacutet

cảm biến Những phần nagravey giuacutep caacutec nuacutet cảm biến phối hợp nhiệm vụ cảm biến vagrave tiecircu

thụ năng lượng tổng thể thấp hơn

Phần quản lyacute năng lượng điều khiển việc sử dụng năng lượng của nuacutet mạng Viacute

dụ nuacutet mạng coacute thể tắt khối thu của noacute sau khi thu được một bản tin từ một nuacutet lacircn

cận Điều nagravey giuacutep traacutenh tạo ra caacutec bản tin giống nhau Cũng vậy khi mức năng lượng

của nuacutet mạng thấp noacute sẽ phaacutet quảng baacute tới caacutec nuacutet lacircn cận để thocircng baacuteo noacute coacute mức

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 12

năng lượng thấp vagrave khocircng thể tham gia vagraveo caacutec bản tin chọn đường Phần năng lượng

cograven lại sẽ dagravenh riecircng cho nhiệm vụ cảm biến

Phần quản lyacute di chuyển phaacutet hiện vagrave ghi lại sự di chuyển của caacutec nuacutet cảm biến để

duy trigrave tuyến tới người sử dụng vagrave caacutec nuacutet cảm biến coacute thể lưu vết của caacutec nuacutet cảm

biến lacircn cận Nhờ xaacutec định được caacutec nuacutet cảm biến lacircn cận caacutec nuacutet cảm biến coacute thể cacircn

bằng giữa cacircn bằng giữa cocircng suất của noacute vagrave nhiệm vụ thực hiện

Phần quản lyacute nhiệm vụ dugraveng để lagravem cacircn bằng vagrave lecircn kế hoạch caacutec nhiệm vụ cảm

biến trong một vugraveng xaacutec định Khocircng phải tất cả caacutec nuacutet cảm biến trong vugraveng đoacute đều

phải thực hiện nhiệm vụ cảm biến tại cugraveng một thời điểm Kết quả lagrave một số nuacutet cảm

biến thực hiện nhiều hơn caacutec nuacutet khaacutec tuỳ theo mức cocircng suất của noacute Những phần

quản lyacute nagravey lagrave cần thiết để caacutec nuacutet cảm biến coacute thể lagravem việc cugraveng nhau theo một caacutech

thức sử dụng hiệu quả cocircng suất chọn đường số liệu trong mạng cảm biến di động vagrave

phacircn chia tagravei nguyecircn giữa caacutec nuacutet cảm biến

Kiến truacutec mạng như trecircn goacutep phần quản lyacute năng lượng của caacutec nuacutet mạng đồng

thời duy trigrave hoạt động của toagraven mạng trong thời gian dagravei hơn

32 Giao thức chọn đường

321 Khoacute khăn trong giao thức chọn đường

Mặc dugrave caacutec ứng dụng của mạng WSN lagrave rất lớn tuy nhiecircn những mạng nagravey coacute

một số hạn chế như giới hạn về nguồn cocircng suất khả năng tiacutenh toaacuten vagrave độ rộng băng

thocircng Một số giao thức chọn đường quản lyacute cocircng suất vagrave trao đổi số liệu đatilde được

thiết kế cho WSN với yecircu cầu quan trọng nhất lagrave tiết kiệm được năng lượng

Một trong những mục tiecircu thiết kế chiacutenh của WSN lagrave keacuteo dagravei thời gian sống của

mạng vagrave traacutenh suy giảm kết nối nhờ caacutec kỹ thuật quản lyacute năng lượng Vấn đề nagravey cần

được giải quyết triệt để thigrave mới đạt được hiệu quả truyền tin trong WSN Caacutec giao thức

chọn đường trong WSN coacute thể khaacutec nhau tuỳ theo ứng dụng vagrave cấu truacutec mạng Tuy

nhiecircn việc chọn đường gặp phải những khoacute khăn như Phacircn bố nuacutet tiecircu thụ năng

lượng khocircng được lagravem mất độ chiacutenh xaacutec tiacutenh khocircng đồng nhất của nuacutet mạng tiacutenh

động của mạng khả năng định cỡ khả năng chống lỗi chất lượng dịch vụ

Phacircn bố nuacutet Việc phacircn bố nuacutet trong WSN phụ thuộc vagraveo ứng dụng vagrave coacute thể

được thực hiện bằng tay hoặc phacircn bố ngẫu nhiecircn Khi phacircn bố bằng tay số liệu được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 13

chọn đường thocircng qua caacutec đường đatilde định trước Tuy nhiecircn khi phacircn bố caacutec nuacutet ngẫu

nhiecircn sẽ tạo ra một cấu truacutec chọn đường đặc biệt (Ad-hoc)

Tiecircu thụ năng lượng khocircng được lagravem mất độ chiacutenh xaacutec Caacutec nuacutet cảm biến coacute

thể sử dụng quaacute caacutec giới hạn về cocircng suất để thực hiện tiacutenh toaacuten vagrave truyền tin trong

mocirci trường vocirc tuyến Thời gian sống của nuacutet mạng cảm biến phụ thuộc rất nhiều vagraveo

thời gian sử dụng của pin Trong WSN đa bước nhảy mỗi nuacutet đoacuteng hai vai trograve lagrave

truyền số liệu vagrave chọn đường Một số nuacutet cảm biến hoạt động sai chức năng do lỗi

nguồn cocircng suất coacute thể gacircy ra sự thay đổi cấu higravenh mạng nghiecircm trọng vagrave phải chọn

đường lại caacutec goacutei hoặc phải tổ chức lại mạng

Tiacutenh khocircng đồng nhất của nuacutet mạng Nghĩa lagrave caacutec nuacutet mạng coacute khả năng tiacutenh

toaacuten khả năng truyền tin vagrave coacute cocircng suất khaacutec nhau Khi đoacute sẽ gacircy khoacute khăn cho kỹ

thuật chọn đường

Khả năng chống lỗi Một số nuacutet cảm biến coacute thể bị lỗi hoặc bị ngắt do thiếu cocircng

suất hỏng phần cứng hoặc bị nhiễu mocirci trường Sự cố của caacutec nuacutet cảm biến khocircng

được ảnh hưởng tới nhiệm vụ của toagraven mạng cảm biến Nếu coacute nhiều nuacutet bị lỗi caacutec

giao thức chọn đường vagrave điều khiển truy cập mocirci trường (MAC) phải thagravenh lập caacutec

tuyến mới tới nuacutet gốc Việc nagravey coacute thể cần thiết phải điều chỉnh cocircng suất phaacutet vagrave tốc

độ tiacuten hiệu trecircn caacutec tuyến hiện tại để giảm sự tiecircu thụ năng lượng hoặc lagrave caacutec goacutei phải

chọn đường lại qua caacutec caacutec vugraveng mạng coacute cocircng suất khả dụng lớn hơn

Khả năng định cỡ Số lượng nuacutet mạng coacute thể lagrave hagraveng trăm hagraveng nghigraven hoặc

nhiều hơn Bất kỳ phương phaacutep chọn đường nagraveo cũng phải coacute khả năng lagravem việc với

một số lượng lớn caacutec nuacutet cảm biến như vậy

Tiacutenh động của mạng Trong nhiều nghiecircn cứu caacutec nuacutet cảm biến được coi lagrave cố

định Tuy nhiecircn trong một số ứng dụng cả nuacutet gốc vagrave caacutec nuacutet cảm biến coacute thể di

chuyển Khi đoacute caacutec bản tin chọn đường từ hoặc tới caacutec nuacutet di chuyển sẽ gặp phải caacutec

vần đề như đường liecircn lạc cấu higravenh mạng năng lượng độ rộng bănghellip

Chất lượng dịch vụ Khi năng lượng gần hết caacutec nuacutet mạng coacute thể yecircu cầu giảm

chất lượng caacutec kết quả để giảm mức tiecircu thụ năng lượng của nuacutet vagrave keacuteo dagravei thời gian

sống của toagraven mạng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 14

Mặc dugrave việc chọn đường gặp nhiều khoacute khăn nhưng khi coacute một giao thức chọn

đường tốt sẽ tiết kiệm thời gian truyền nhận thocircng tin giảm năng lượng tiecircu hao latildeng

phiacute do tắc nghẽn lỗi đường truyềnVigrave vậy người ta đatilde đưa ra một số giao thức chọn

đường magrave dưới đacircy sẽ trigravenh bầy

322 Caacutec giao thức chọn đường

Phần nagravey sẽ trigravenh bagravey về phương phaacutep chọn đường trong WSN Noacutei chung caacutec

giao thức chọn đường được chia lagravem 3 loại dựa vagraveo cấu truacutec mạng ngang hagraveng phacircn

cấp hoặc dựa vagraveo vị triacute

Trong chọn đường ngang hagraveng tất cả caacutec nuacutet thường coacute vai trograve hoặc chức năng

như nhau như cảm nhận truyền Chuacuteng sẽ thực hiện việc cảm nhận thocircng tin cần

thiết vagrave truyền số liệu về nuacutet gốc

Trong chọn đường phacircn cấp caacutec nuacutet sẽ đoacuteng vai trograve khaacutec nhau trong mạng sẽ coacute

nuacutet chủ đại diện cho từng nhoacutem caacutec nuacutet cảm biến để nhận số liệu từ caacutec nuacutet cảm biến

truyền tới Caacutec nuacutet chủ cũng tập hợp số liệu từ caacutec nuacutet trong nhoacutem của noacute trước khi

gửi số liệu đến nuacutet gốc Nuacutet chủ sẽ thay đổi khi bắt đầu chu kỳ lagravem việc mới vagrave sẽ thay

bằng nuacutet khaacutec coacute khả năng đảm nhận chức năng nagravey

Trong chọn đường dựa theo vị triacute thigrave vị triacute của caacutec nuacutet cảm biến sẽ được dugraveng để

chọn đường số liệu Giao thức chọn đường cograven coacute thể được phacircn loại dựa theo đa

đường yecircu cầu hỏiđaacutep QoS vagrave liecircn kết tuỳ thuộc vagraveo chế độ hoạt động Ngoagravei ra

cũng coacute thể chia thagravenh 3 loại chủ động tương taacutec hoặc lai gheacutep tuỳ thuộc vagraveo caacutech

thức magrave nguồn tigravem đường tời điacutech Một giao thức chọn đường được coi lagrave thiacutech ứng

nếu caacutec tham số của hệ thống coacute thể điều khiển được để phugrave hợp với caacutec trạng thaacutei

mạng hiện tại vagrave caacutec mức năng lượng khả dụng Một số giao thức chọn đường đatilde phaacutet

huy hiệu quả tiết kiệm tiecircu thụ năng lượng như LEACH

TEENampAPTEEN MECNampSVECN PEGASIS thuộc chọn đường phacircn cấp SPIN

Directed Diffusion CADR CUGAR thuộc chọn đường ngang hagraveng Trong đoacute đaacuteng

quan tacircm nhất lagrave giao thức chọn đường LEACH LEACH (Low Energy Adaptive

Clustering Hierarchy) - phacircn cấp nhoacutem thiacutech ứng cocircng suất thấp giao thức nagravey cho

pheacutep tiết kiệm năng lượng trong mạng WSN Mục điacutech của LEACH lagrave lựa chọn ngẫu

nhiecircn caacutec nuacutet cảm biến lagravem caacutec nuacutet chủ do đoacute việc tiecircu hao năng lượng khi liecircn lạc

với nuacutet gốc được trải đều cho tất cả caacutec nuacutet cảm biến trong mạng Quaacute trigravenh hoạt động

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 15

của LEACH được chia thagravenh 2 bước bước thiết lập vagrave bước ổn định Thời gian bước

ổn định keacuteo dagravei hơn so với thời gian của bước thiết lập để giảm thiểu phần điều khiển

Tại bước thiết lập sẽ xaacutec định nuacutet mạng nagraveo sẽ lagravem chủ Tại bước ổn định caacutec nuacutet cảm

biến bắt đầu cảm nhận vagrave truyền số liệu về nuacutet chủ nuacutet chủ cũng tập hợp số liệu từ caacutec

nuacutet trong nhoacutem trước khi gửi caacutec số liệu nagravey về nuacutet gốc Theo thử nghiệm mocirc phỏng

giao thức LEACH của mạng WSN coacute 160 nuacutet phacircn bố đều cocircng suất ban đầu của nuacutet

lagrave 30 Kết quả thu được lagrave khi truyền trực tiếp tới nuacutet gốc sau khoảng 470 chu kỳ

thời gian sẽ kết thuacutec truyền tin khi sử dụng giao thức LEACH sau khoảng 685 chu kỳ

thời gian mới kết thuacutec truyền tin Kết quả nagravey cho thấy đacircy lagrave một phương phaacutep chọn

đường phacircn cấp coacute khả năng tiết kiệm được năng lượng vagrave keacuteo dagravei thời gian sống của

mạng

Tuy nhiecircn cơ chế hoạt động của LEACH lagrave lựa chọn số liệu được tập trung vagrave

thực hiện theo chu kỳ Do đoacute giao thức nagravey chỉ thiacutech hợp với yecircu cầu giaacutem saacutet liecircn tục

bởi mạng cảm biến Với ứng dụng magrave người sử dụng khocircng cần tất cả caacutec số liệu ngay

lập tức thigrave việc truyền số liệu theo chu kỳ lagrave khocircng cần thiết vagrave coacute thể lagravem tiecircu tốn

năng lượng vocirc iacutech Giao thức LEACH cần tiếp tục được cải tiến để khắc phục hạn chế

33 Hoạt động truyền nhận khocircng dacircy

Đối với mạng cảm nhận khocircng dacircy thigrave năng lượng trở thagravenh một vấn đề được chuacute

yacute để duy trigrave hoạt động của hệ thống mạng vigrave caacutec nuacutet mạng độc lập chỉ được cung cấp

năng lượng từ một nguồn cố định (pin) Việc tiecircu thụ năng lượng thấp lagrave một nhu cầu

quan trọng cho caacutec hệ thống hoạt động bằng pin - khocircng được cung cấp năng lượng

thường xuyecircn Khi coacute một dograveng tiecircu thụ thấp thigrave thời gian sống của chuacuteng sẽ keacuteo dagravei

thecircm Hệ thống tiecircu thụ năng lượng thấp lagrave mục tiecircu cần đạt của mạng cảm nhận

khocircng dacircy sử dụng CC1010 Caacutec vấn đề đưa ra trong phần nagravey lagrave cơ sở cho việc viết

phần mềm tiết kiệm tiecircu thụ năng lượng cho nuacutet mạng cảm nhận khocircng dacircy

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 16

CHƢƠNG 2 MAtilde SỬA LỖI

Mạng phải coacute khả năng truyền chiacutenh xaacutec dữ liệu từ thiết bị nagravey tới thiết bị khaacutec

Một hệ thống khocircng bảo đảm dữ liệu nhận giống như dữ liệu truyền lagrave hệ thống khocircng

sử dụng được Coacute nhiều nhacircn tố như tạp nhiễu đường dacircy coacute thể lagravem hỏng một hoặc

nhiều bit của khối dữ liệu đang truyền Một hệ thống thực sự dugraveng được phải coacute cơ cấu

để phaacutet hiện vagrave sửa caacutec lỗi đoacute

Việc phaacutet hiện vagrave sửa lỗi được trang bị ở lớp liecircn kết dữ liệu hoặc lớp giao vận

tương ứng trong mocirc higravenh OSI

1 CAacuteC CƠ CHẾ TRUYỀN DỮ LIỆU

11 Truyền dữ liệu song song

bull Mỗi bit dugraveng một đường truyền riecircng Nếu coacute 8 bits được truyền đồng thời sẽ

yecircu cầu 8 đường truyền độc lập

bull Để truyền dữ liệu trecircn một đường truyền song song một kecircnh truyền riecircng

được dugraveng để thocircng baacuteo cho becircn nhận biết khi nagraveo dữ liệu coacute sẵn (clock signal)

bull Cần thecircm một kecircnh truyền khaacutec để becircn nhận baacuteo cho becircn gởi biết lagrave đatilde sẵn

sagraveng để nhận dữ liệu kế tiếp

12 Truyền dữ liệu tuần tự

bull Tất cả caacutec bit đều được truyền trecircn cugraveng một đường truyền bit nagravey tiếp theo

sau bit kia

bull Khocircng cần caacutec đường truyền riecircng cho tiacuten hiệu đồng bộ vagrave tiacuten hiệu bắt tay (caacutec

tiacuten hiệu nagravey được matilde hoacutea vagraveo dữ liệu truyền đi)

bull Vấn đề định thời (timing) đogravei hỏi phải coacute cơ chế đồng bộ giữa becircn truyền vagrave

becircn nhận

bull 2 caacutech giải quyết

- Bất đồng bộ mỗi kyacute tự được đồng bộ bởi start vagrave stop bit

- Đồng bộ mỗi khối kyacute tự được đồng bộ dugraveng cờ

13 Truyền bất đồng bộ

bull Dữ liệu được truyền theo từng kyacute tự để traacutenh việc mất đồng bộ khi nhận được chuỗi

bit quaacute dagravei

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 17

- 5 đến 8 bits

- Chỉ cần giữ đồng bộ trong một kyacute tự

- Taacutei đồng bộ cho mỗi kyacute tự mới

bull Hagravenh vi

- Đối với dograveng dữ liệu đều khoảng caacutech giữa caacutec kyacute tự lagrave đồng nhất (bằng chiều dagravei

của phần tử stop)

- Ở trạng thaacutei rỗi bộ thu phaacutet hiện sự chuyển 1 đến 0

- Lấy mẫu 7 khoảng kế tiếp (chiều dagravei kyacute tự)

- Đợi việc chuyển 1 đến 0 cho kyacute tự kế tiếp

bull Hiệu suất

- Đơn giản

- Rẻ

- Phiacute tổn 2 hoặc 3 bit cho một kyacute tự (~20)

- Thiacutech hợp cho dữ liệu với khoảng trống giữa caacutec kyacute tự lớn (dữ liệu nhập từ bagraven

phiacutem)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 18

bull Đồng bộ khung (frame synchronization) dugraveng caacutec kyacute tự điều khiển (STX ETX

DLE)

14 Truyền đồng bộ

bull Truyền khocircng cần startstop

bull Phải coacute tiacuten hiệu đồng bộ

bull Đồng bộ bit (bit synchronization) sử dụng caacutec phƣơng phaacutep sau

- Tiacutech hợp xung clock vagraveo dữ liệu truyền đi

+ Tiacutech hợp thocircng tin đồng bộ (clock) vagraveo trong dữ liệu truyền

+ Đầu nhận sẽ taacutech thocircng tin đồng bộ dựa vagraveo dữ liệu nhận được

+ Manchester differential Manchester tần số soacuteng mang (analog)

- Sử dụng đường clock riecircng

+ Dugraveng một đường tiacuten hiệu đồng bộ riecircng biệt

+ Một becircn (phaacutet hoặc nhận) tạo ra caacutec xung clock đồng bộ với caacutec bit truyền đi

trecircn đường clock riecircng

+ Becircn cograven lại dugraveng tiacuten hiệu trecircn đường clock riecircng để lagravem clock

+ Thiacutech hợp khi truyền trong khoảng caacutech ngắn

+ Tiacuten hiệu đồng bộ dễ bị suy giảm trecircn đường truyền

bull Đồng bộ frame

- Mỗi block dữ liệu được bắt đầu bằng một cờ gọi lagrave preamble kết thuacutec bằng

một cờ gọi lagrave postamble

- Preamble vagrave postamble lagrave một mẫu bit (bit pattern) được quy định sẵn

+ Một chuỗi caacutec kyacute tự SYN (16h trong bảng matilde ASCII)

+ Mẫu bit 11111110

- Frame dữ liệu + preamble + postamble + thocircng tin điều khiển

- Hiệu quả hơn so với truyền bất đồng bộ (phiacute tổn thấp hơn cho caacutec bit điều

khiển)

+ HDLC 48 bit điều khiển cho mỗi block 1000 kyacute tự (8000 bit)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 19

2 VẤN ĐỀ XỬ LYacute LỖI

11 Caacutec lỗi xẩy ra trecircn đường truyền

bull Mocirci trƣờng truyền dẫn bị nhiễu (điện từ hellip) dẫn đến dữ liệu nhận coacute lỗi

(caacutec bit bị thay đổi)

bull 2 caacutech khắc phục khi phaacutet hiện coacute lỗi

- Forward error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự hoặc caacutec

frame truyền đi để becircn nhận coacute thể phaacutet hiện khi nagraveo coacute lỗi va lỗi nằm ở đacircu để sửa

(coacute khả năng sửa lỗi)

- Feedback (backward) error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự

hoặc caacutec frame truyền đi chỉ đủ để phaacutet hiện khi nagraveo coacute lỗi (khocircng coacute khả năng sửa

lỗi) Cơ chế yecircu cầu truyền lại kyacute tựframe sai được dugraveng trong trường hợp nagravey

bull Phacircn loại lỗi

- Lỗi 1 bit

+ Chỉ 1 bit bị lỗi khocircng ảnh hưởng caacutec bit xung quanh

+ Thường xảy ra do nhiễu trắng

- Lỗi chugravem (busrt error)

+ Một chuỗi liecircn tục B bit trong đoacute bit đầu bit cuối vagrave caacutec bit bất kigrave nằm giữa

chuỗi đều bị lỗi

+ Thường xảy ra do nhiễu xung

+ Ảnh hưởng cagraveng lớn đối với tốc độ truyền cao

Bit error rate (BER) xaacutec suất một bit nhận đƣợc bị lỗi

12 Cơ chế phaacutet hiện lỗi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 7

115 Cự ly truyền soacuteng tốc độ truyền dữ liệu

Truyền soacuteng điện từ trong khocircng gian sẽ gặp hiện tượng suy hao Vigrave thế đối với

kết nối khocircng dacircy noacutei chung khoảng caacutech cagraveng xa thigrave khả năng thu tiacuten hiệu cagraveng keacutem

tỷ lệ lỗi sẽ tăng lecircn dẫn đến tốc độ truyền dữ liệu sẽ phải giảm xuống

Caacutec tốc độ của chuẩn khocircng dacircy như 11 Mbps hay 54 Mbps khocircng liecircn quan đến

tốc độ kết nối hay tốc độ download vigrave những tốc độ nagravey được quyết định bởi nhagrave cung

cấp dịch vụ Internet

Với một hệ thống mạng khocircng dacircy dữ liệu được giử qua soacuteng radio necircn tốc độ

coacute thể bị ảnh hưởng bởi caacutec taacutec nhacircn gacircy nhiễu hoặc caacutec vật thể lớn Thiết bị định

tuyến khocircng dacircy sẽ tự động điều chỉnh xuống caacutec mức tốc độ thấp hơn (Viacute dụ như lagrave

từ 11 Mbps sẽ giảm xuống cograven 55 Mbps vagrave 2 Mbps hoặc thậm chiacute lagrave 1 Mbps)

12 Ứng dụng

Trong những năm gần đacircy caacutec nghiecircn cứu về WSN đatilde đạt được bước phaacutet triển

mạnh mẽ caacutec bước tiến từ caacutec nghiecircn cứu hứa hẹn taacutec động lớn đến caacutec ứng dụng

rộng ratildei trong caacutec lĩnh vực an ninh quốc gia chăm soacutec sức khỏe mocirci trường năng

lượng an toagraven thực phẩm vagrave sản xuất

Caacutec ứng dụng của mạng WSN thực sự chỉ bị giới hạn bởi sự tưởng tượng của con

người Sau đacircy lagrave caacutec ứng dụng phổ biến nhất của WSN

121 Ứng dụng quacircn sự an ninh vagrave thiecircn nhiecircn

Trong phản ứng với dịch bệnh thảm họa thiecircn nhiecircn lượng lớn caacutec cảm biến

được thả từ trecircn khocircng mạng lưới caacutec cảm biến sẽ cho biết vị triacute người sống soacutet vugraveng

nguy hiểm giuacutep cho người giaacutem saacutet coacute caacutec thocircng tin chiacutenh xaacutec đảm bảo hiệu quả vagrave an

toagraven cho caacutec hoạt động tigravem kiếm

Sử dụng mạng WSN hạn chế sự coacute mặt trực tiếp của con người trong mocirci trường

nguy hiểm Ứng dụng an ninh bao gồm phaacutet hiện xacircm nhập vagrave truy bắt tội phạm

Mạng cảm biến quacircn sự phaacutet hiện vagrave coacute được thocircng tin về sự di chuyển của đối

phương chất nổ vagrave caacutec thocircng tin khaacutec

Phaacutet hiện vagrave phacircn loại caacutec chất hoacutea chất sinh hoacutea soacuteng vocirc tuyến phoacuteng xạ hạt

nhacircn chất nổhellip

Giaacutem saacutet sự thay đổi khiacute hậu rừng biểnhellip

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 8

Giaacutem saacutet xe cộ trecircn đường

Giaacutem saacutet an ninh trong caacutec khu vực dacircn cư thương mạihellip

Theo dotildei biecircn giới kết hợp với vệ tinhhellip

Higravenh I2 Ứng dụng WSN trong an ninh quốc gia vagrave luật phaacutep

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 9

122 Ứng dụng trong giaacutem saacutet xe cộ vagrave thocircng tin liecircn quan

Mục tiecircu của caacutec hệ thống nagravey lagrave thu thập thocircng tin thocircng qua caacutec mạng cảm

biến xử lyacute vagrave lưu trữ dữ liệu tại trung tacircm sử dụng dữ liệu đoacute cho caacutec ứng dụng cần

thiết Hệ thống được lắp đặt dọc theo caacutec đường chiacutenh mạng cảm biến số tập hợp dữ

liệu về tốc độ lưu thocircng mật độ xe số lượng xe trecircn đường Dữ liệu sau đoacute được

truyền đến trung tacircm dữ liệu để xử lyacute Mạng theo dotildei liecircn tục cung cấp thocircng tin cập

nhật thường xuyecircn theo thời gian thực Caacutec thocircng tin thu được dugraveng để giaacutem saacutet lưu

lượng điều phối giao thocircng hoặc cho caacutec mục điacutech khaacutec

123 Điều khiển caacutec thiết bị trong nhagrave

Điều khiển caacutec thiết bị trong nhagrave

Higravenh I3 Caacutec ứng dụng điều khiển

Caacutec node cảm biến được lắp trecircn caacutec thiết bị vị triacute cần thiết sau đoacute kết nối thagravenh

mạng truyền dữ liệu về node trung tacircm Một khả năng coacute thể phaacutet triển lagrave caacutec cảm biến

theo dotildei y tế được gắn trực tiếp lecircn cơ thể người bệnh để đo đạc thường xuyecircn caacutec

thocircng số về huyết aacutep nhịp timhellip

124 Caacutec togravea nhagrave tự động

Ứng dụng cung cấp khả năng điều khiển quản lyacute tạo sự tiện lợi trong kiểm soaacutet

an ninhhellipQuản lyacute nhiều hệ thống cugraveng luacutec hệ thống chiếu saacuteng nhiệt độ an ninh

giaacutem saacutet nhacircn viecircn quản lyacute hiệu quả tiecircu thụ năng lượng trong togravea nhagrave gắn caacutec chip

lecircn hagraveng hoacuteagiảm được thời gian kiểm trahellipcoacute thể dễ dagraveng được thực hiện bằng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 10

C2WSNs vagrave cocircng nghệ ZigBee đặc điểm nổi bật lagrave dugraveng caacutec cocircng nghệ microsensor

tiecircu thụ rất iacutet cocircng suất thu phaacutet vocirc tuyến kỹ thuật liecircn lạc vả cảm biến khocircng dacircy đa

chức năng

125 Quản lyacute quaacute trigravenh tự động trong cocircng nghiệp

Caacutec ứng dụng trong sản xuất cocircng nghiệp gồm điều khiển quản lyacute hiệu suất vagrave

an toagraven Caacutec cảm biến đặt trong mocirci trường lagravem việc giaacutem saacutet quaacute trigravenh sản xuất chất

lượng sản phẩm kiểm soaacutet mocirci trường lagravem việc quản lyacute nhacircn viecircnhellipdữ liệu được đưa

về trung tacircm để người quản lyacute coacute thể đưa ra caacutec quyết định kịp thời

126 Caacutec ứng dụng trong y học

Một số bệnh viện vagrave trung tacircm y tế đang ứng dụng cocircng nghệ WSNs vagraveo tiền

chẩn đoaacuten chăm soacutec sức khỏe đối phoacute với caacutec dịch bệnh vagrave phục hồi chức năng cho

người bệnh WSNs cho pheacutep theo dotildei tigravenh trạng của caacutec bệnh nhacircn kinh niecircn ngay tại

nhagrave lagravem cho việc phacircn tiacutech vagrave điều trị thuận tiện hơn ruacutet ngắn thời gian điều trị tại

bệnh viện WSNs cograven cho pheacutep thu thập thocircng tin y tế qua thời gian dagravei thagravenh caacutec cơ

sở dữ liệu quan trọng caacutec biện phaacutep can thiệp hiệu quả

2 TRUYỀN DỮ LIỆU GIỮA CAacuteC NUacuteT MẠNG NGUYEcircN TẮC

Một nuacutet cảm nhận khocircng dacircy giao tiếp với caacutec nuacutet cảm nhận khaacutec bằng việc sử

dụng net work - stack

- Ở lớp ứng dụng (Application) dữ liệu coacute thể được gửi ở dạng goacutei do chip radio

ở lớp phần cứng coacute thể truyền vagrave nhận dữ liệu dạng byte necircn caacutec goacutei tin nagravey cần được

phacircn đoạn trước khi chuacuteng được gửi vagrave phải được gheacutep lại sau khi chuacuteng được nhận

Lớp điều khiển đa truy cập Media - Access - Control (MAC) chuyển tiếp lớp ứng

dụng với radio chip

+ Khi 1 goacutei tin được gửi đi nhờ 1 ứng dụng goacutei tin được phacircn nhỏ thagravenh caacutec

byte 1 chuỗi liecircn tiếp caacutec byte đặc biệt được gọi lagrave Preamble (phần mở đầu) được gửi

đi trước caacutec byte dữ liệu do đoacute phiacutea thu coacute thể đồng bộ vagrave xaacutec định phần bắt đầu của 1

goacutei tin

+ Sau khi nhận 1 byte radio chip matilde hoacutea bit dữ liệu vagrave truyền chuacuteng Ở phiacutea

nhận radio chip baacuteo hiệu việc đến của caacutec byte sau khi xaacutec định vagrave giải matilde caacutecbit dữ

liệu

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 11

+ Sau đoacute lớp MAC hợp lại goacutei tin bắt đầu từ goacutei đầu tiecircn sau goacutei preamble Tiếp

theo lớp MAC baacuteo hiệu việc đến của goacutei tin cho lớp trecircn

Caacutec byte dữ liệu coacute thể được matilde hoacutea một caacutech tugravey yacute sau khi được phacircn đoạn cugraveng

với matilde sửa lỗi (ECC ) Matilde sửa lỗi ECC được dugraveng để khocirci phục caacutec bit dữ liệu trong

trường hợp coacute số lượng nhỏ bit lỗi Khi caacutec byte dữ liệu đoacute tới bộ thu tại đacircy noacute được

giải matilde để trở về dạng caacutec byte dữ liệu ban đầu

3 TIẾT KIỆM VAgrave TIEcircU THỤ NĂNG LƢỢNG

Năng lượng tiecircu thụ phụ thuộc vagraveo nhiều yếu tố sử dụng khaacutec nhau như Kiến

truacutec giao thức mạng Giao thức chọn đường Hoạt động truyền nhận khocircng dacircy

31 Kiến truacutec giao thức mạng

Kiến truacutec giao thức nagravey kết hợp giữa năng lượng vagrave chọn đường kết hợp số liệu

với caacutec giao thức mạng sử dụng năng lượng hiệu quả Kiến truacutec giao thức bao gồm

lớp vật lyacute lớp liecircn kết số liệu lớp mạng lớp truyền tải lớp ứng dụng phần quản lyacute

cocircng suất phần quản lyacute di động vagrave phần quản lyacute nhiệm vụ

Lớp vật lyacute cung cấp caacutec kỹ thuật điều chế phaacutet vagrave thu Vigrave mocirci trường coacute tạp acircm

vagrave caacutec nuacutet cảm biến coacute thể di động giao thức điều khiển truy cập mocirci trường (MAC)

phải xeacutet đến vấn đề cocircng suất vagrave phải coacute khả năng tối thiểu hoaacute việc va chạm với

thocircng tin quản baacute của caacutec nuacutet lacircn cận

Lớp mạng quan tacircm đến việc chọn đường số liệu được cung cấp bởi lớp truyền

tải

Lớp truyền tải giuacutep duy trigrave luồng số liệu nếu ứng dụng mạng cảm biến yecircu cầu

Tuỳ theo nhiệm vụ cảm biến caacutec loại phần mềm khaacutec nhau coacute thể được xacircy dựng vagrave

sử dụng ở lớp ứng dụng Ngoagravei ra caacutec phần quản lyacute cocircng suất di chuyển vagrave nhiệm vụ

sẽ giaacutem saacutet việc sử dụng cocircng suất sự di chuyển vagrave thực hiện nhiệm vụ giữa caacutec nuacutet

cảm biến Những phần nagravey giuacutep caacutec nuacutet cảm biến phối hợp nhiệm vụ cảm biến vagrave tiecircu

thụ năng lượng tổng thể thấp hơn

Phần quản lyacute năng lượng điều khiển việc sử dụng năng lượng của nuacutet mạng Viacute

dụ nuacutet mạng coacute thể tắt khối thu của noacute sau khi thu được một bản tin từ một nuacutet lacircn

cận Điều nagravey giuacutep traacutenh tạo ra caacutec bản tin giống nhau Cũng vậy khi mức năng lượng

của nuacutet mạng thấp noacute sẽ phaacutet quảng baacute tới caacutec nuacutet lacircn cận để thocircng baacuteo noacute coacute mức

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 12

năng lượng thấp vagrave khocircng thể tham gia vagraveo caacutec bản tin chọn đường Phần năng lượng

cograven lại sẽ dagravenh riecircng cho nhiệm vụ cảm biến

Phần quản lyacute di chuyển phaacutet hiện vagrave ghi lại sự di chuyển của caacutec nuacutet cảm biến để

duy trigrave tuyến tới người sử dụng vagrave caacutec nuacutet cảm biến coacute thể lưu vết của caacutec nuacutet cảm

biến lacircn cận Nhờ xaacutec định được caacutec nuacutet cảm biến lacircn cận caacutec nuacutet cảm biến coacute thể cacircn

bằng giữa cacircn bằng giữa cocircng suất của noacute vagrave nhiệm vụ thực hiện

Phần quản lyacute nhiệm vụ dugraveng để lagravem cacircn bằng vagrave lecircn kế hoạch caacutec nhiệm vụ cảm

biến trong một vugraveng xaacutec định Khocircng phải tất cả caacutec nuacutet cảm biến trong vugraveng đoacute đều

phải thực hiện nhiệm vụ cảm biến tại cugraveng một thời điểm Kết quả lagrave một số nuacutet cảm

biến thực hiện nhiều hơn caacutec nuacutet khaacutec tuỳ theo mức cocircng suất của noacute Những phần

quản lyacute nagravey lagrave cần thiết để caacutec nuacutet cảm biến coacute thể lagravem việc cugraveng nhau theo một caacutech

thức sử dụng hiệu quả cocircng suất chọn đường số liệu trong mạng cảm biến di động vagrave

phacircn chia tagravei nguyecircn giữa caacutec nuacutet cảm biến

Kiến truacutec mạng như trecircn goacutep phần quản lyacute năng lượng của caacutec nuacutet mạng đồng

thời duy trigrave hoạt động của toagraven mạng trong thời gian dagravei hơn

32 Giao thức chọn đường

321 Khoacute khăn trong giao thức chọn đường

Mặc dugrave caacutec ứng dụng của mạng WSN lagrave rất lớn tuy nhiecircn những mạng nagravey coacute

một số hạn chế như giới hạn về nguồn cocircng suất khả năng tiacutenh toaacuten vagrave độ rộng băng

thocircng Một số giao thức chọn đường quản lyacute cocircng suất vagrave trao đổi số liệu đatilde được

thiết kế cho WSN với yecircu cầu quan trọng nhất lagrave tiết kiệm được năng lượng

Một trong những mục tiecircu thiết kế chiacutenh của WSN lagrave keacuteo dagravei thời gian sống của

mạng vagrave traacutenh suy giảm kết nối nhờ caacutec kỹ thuật quản lyacute năng lượng Vấn đề nagravey cần

được giải quyết triệt để thigrave mới đạt được hiệu quả truyền tin trong WSN Caacutec giao thức

chọn đường trong WSN coacute thể khaacutec nhau tuỳ theo ứng dụng vagrave cấu truacutec mạng Tuy

nhiecircn việc chọn đường gặp phải những khoacute khăn như Phacircn bố nuacutet tiecircu thụ năng

lượng khocircng được lagravem mất độ chiacutenh xaacutec tiacutenh khocircng đồng nhất của nuacutet mạng tiacutenh

động của mạng khả năng định cỡ khả năng chống lỗi chất lượng dịch vụ

Phacircn bố nuacutet Việc phacircn bố nuacutet trong WSN phụ thuộc vagraveo ứng dụng vagrave coacute thể

được thực hiện bằng tay hoặc phacircn bố ngẫu nhiecircn Khi phacircn bố bằng tay số liệu được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 13

chọn đường thocircng qua caacutec đường đatilde định trước Tuy nhiecircn khi phacircn bố caacutec nuacutet ngẫu

nhiecircn sẽ tạo ra một cấu truacutec chọn đường đặc biệt (Ad-hoc)

Tiecircu thụ năng lượng khocircng được lagravem mất độ chiacutenh xaacutec Caacutec nuacutet cảm biến coacute

thể sử dụng quaacute caacutec giới hạn về cocircng suất để thực hiện tiacutenh toaacuten vagrave truyền tin trong

mocirci trường vocirc tuyến Thời gian sống của nuacutet mạng cảm biến phụ thuộc rất nhiều vagraveo

thời gian sử dụng của pin Trong WSN đa bước nhảy mỗi nuacutet đoacuteng hai vai trograve lagrave

truyền số liệu vagrave chọn đường Một số nuacutet cảm biến hoạt động sai chức năng do lỗi

nguồn cocircng suất coacute thể gacircy ra sự thay đổi cấu higravenh mạng nghiecircm trọng vagrave phải chọn

đường lại caacutec goacutei hoặc phải tổ chức lại mạng

Tiacutenh khocircng đồng nhất của nuacutet mạng Nghĩa lagrave caacutec nuacutet mạng coacute khả năng tiacutenh

toaacuten khả năng truyền tin vagrave coacute cocircng suất khaacutec nhau Khi đoacute sẽ gacircy khoacute khăn cho kỹ

thuật chọn đường

Khả năng chống lỗi Một số nuacutet cảm biến coacute thể bị lỗi hoặc bị ngắt do thiếu cocircng

suất hỏng phần cứng hoặc bị nhiễu mocirci trường Sự cố của caacutec nuacutet cảm biến khocircng

được ảnh hưởng tới nhiệm vụ của toagraven mạng cảm biến Nếu coacute nhiều nuacutet bị lỗi caacutec

giao thức chọn đường vagrave điều khiển truy cập mocirci trường (MAC) phải thagravenh lập caacutec

tuyến mới tới nuacutet gốc Việc nagravey coacute thể cần thiết phải điều chỉnh cocircng suất phaacutet vagrave tốc

độ tiacuten hiệu trecircn caacutec tuyến hiện tại để giảm sự tiecircu thụ năng lượng hoặc lagrave caacutec goacutei phải

chọn đường lại qua caacutec caacutec vugraveng mạng coacute cocircng suất khả dụng lớn hơn

Khả năng định cỡ Số lượng nuacutet mạng coacute thể lagrave hagraveng trăm hagraveng nghigraven hoặc

nhiều hơn Bất kỳ phương phaacutep chọn đường nagraveo cũng phải coacute khả năng lagravem việc với

một số lượng lớn caacutec nuacutet cảm biến như vậy

Tiacutenh động của mạng Trong nhiều nghiecircn cứu caacutec nuacutet cảm biến được coi lagrave cố

định Tuy nhiecircn trong một số ứng dụng cả nuacutet gốc vagrave caacutec nuacutet cảm biến coacute thể di

chuyển Khi đoacute caacutec bản tin chọn đường từ hoặc tới caacutec nuacutet di chuyển sẽ gặp phải caacutec

vần đề như đường liecircn lạc cấu higravenh mạng năng lượng độ rộng bănghellip

Chất lượng dịch vụ Khi năng lượng gần hết caacutec nuacutet mạng coacute thể yecircu cầu giảm

chất lượng caacutec kết quả để giảm mức tiecircu thụ năng lượng của nuacutet vagrave keacuteo dagravei thời gian

sống của toagraven mạng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 14

Mặc dugrave việc chọn đường gặp nhiều khoacute khăn nhưng khi coacute một giao thức chọn

đường tốt sẽ tiết kiệm thời gian truyền nhận thocircng tin giảm năng lượng tiecircu hao latildeng

phiacute do tắc nghẽn lỗi đường truyềnVigrave vậy người ta đatilde đưa ra một số giao thức chọn

đường magrave dưới đacircy sẽ trigravenh bầy

322 Caacutec giao thức chọn đường

Phần nagravey sẽ trigravenh bagravey về phương phaacutep chọn đường trong WSN Noacutei chung caacutec

giao thức chọn đường được chia lagravem 3 loại dựa vagraveo cấu truacutec mạng ngang hagraveng phacircn

cấp hoặc dựa vagraveo vị triacute

Trong chọn đường ngang hagraveng tất cả caacutec nuacutet thường coacute vai trograve hoặc chức năng

như nhau như cảm nhận truyền Chuacuteng sẽ thực hiện việc cảm nhận thocircng tin cần

thiết vagrave truyền số liệu về nuacutet gốc

Trong chọn đường phacircn cấp caacutec nuacutet sẽ đoacuteng vai trograve khaacutec nhau trong mạng sẽ coacute

nuacutet chủ đại diện cho từng nhoacutem caacutec nuacutet cảm biến để nhận số liệu từ caacutec nuacutet cảm biến

truyền tới Caacutec nuacutet chủ cũng tập hợp số liệu từ caacutec nuacutet trong nhoacutem của noacute trước khi

gửi số liệu đến nuacutet gốc Nuacutet chủ sẽ thay đổi khi bắt đầu chu kỳ lagravem việc mới vagrave sẽ thay

bằng nuacutet khaacutec coacute khả năng đảm nhận chức năng nagravey

Trong chọn đường dựa theo vị triacute thigrave vị triacute của caacutec nuacutet cảm biến sẽ được dugraveng để

chọn đường số liệu Giao thức chọn đường cograven coacute thể được phacircn loại dựa theo đa

đường yecircu cầu hỏiđaacutep QoS vagrave liecircn kết tuỳ thuộc vagraveo chế độ hoạt động Ngoagravei ra

cũng coacute thể chia thagravenh 3 loại chủ động tương taacutec hoặc lai gheacutep tuỳ thuộc vagraveo caacutech

thức magrave nguồn tigravem đường tời điacutech Một giao thức chọn đường được coi lagrave thiacutech ứng

nếu caacutec tham số của hệ thống coacute thể điều khiển được để phugrave hợp với caacutec trạng thaacutei

mạng hiện tại vagrave caacutec mức năng lượng khả dụng Một số giao thức chọn đường đatilde phaacutet

huy hiệu quả tiết kiệm tiecircu thụ năng lượng như LEACH

TEENampAPTEEN MECNampSVECN PEGASIS thuộc chọn đường phacircn cấp SPIN

Directed Diffusion CADR CUGAR thuộc chọn đường ngang hagraveng Trong đoacute đaacuteng

quan tacircm nhất lagrave giao thức chọn đường LEACH LEACH (Low Energy Adaptive

Clustering Hierarchy) - phacircn cấp nhoacutem thiacutech ứng cocircng suất thấp giao thức nagravey cho

pheacutep tiết kiệm năng lượng trong mạng WSN Mục điacutech của LEACH lagrave lựa chọn ngẫu

nhiecircn caacutec nuacutet cảm biến lagravem caacutec nuacutet chủ do đoacute việc tiecircu hao năng lượng khi liecircn lạc

với nuacutet gốc được trải đều cho tất cả caacutec nuacutet cảm biến trong mạng Quaacute trigravenh hoạt động

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 15

của LEACH được chia thagravenh 2 bước bước thiết lập vagrave bước ổn định Thời gian bước

ổn định keacuteo dagravei hơn so với thời gian của bước thiết lập để giảm thiểu phần điều khiển

Tại bước thiết lập sẽ xaacutec định nuacutet mạng nagraveo sẽ lagravem chủ Tại bước ổn định caacutec nuacutet cảm

biến bắt đầu cảm nhận vagrave truyền số liệu về nuacutet chủ nuacutet chủ cũng tập hợp số liệu từ caacutec

nuacutet trong nhoacutem trước khi gửi caacutec số liệu nagravey về nuacutet gốc Theo thử nghiệm mocirc phỏng

giao thức LEACH của mạng WSN coacute 160 nuacutet phacircn bố đều cocircng suất ban đầu của nuacutet

lagrave 30 Kết quả thu được lagrave khi truyền trực tiếp tới nuacutet gốc sau khoảng 470 chu kỳ

thời gian sẽ kết thuacutec truyền tin khi sử dụng giao thức LEACH sau khoảng 685 chu kỳ

thời gian mới kết thuacutec truyền tin Kết quả nagravey cho thấy đacircy lagrave một phương phaacutep chọn

đường phacircn cấp coacute khả năng tiết kiệm được năng lượng vagrave keacuteo dagravei thời gian sống của

mạng

Tuy nhiecircn cơ chế hoạt động của LEACH lagrave lựa chọn số liệu được tập trung vagrave

thực hiện theo chu kỳ Do đoacute giao thức nagravey chỉ thiacutech hợp với yecircu cầu giaacutem saacutet liecircn tục

bởi mạng cảm biến Với ứng dụng magrave người sử dụng khocircng cần tất cả caacutec số liệu ngay

lập tức thigrave việc truyền số liệu theo chu kỳ lagrave khocircng cần thiết vagrave coacute thể lagravem tiecircu tốn

năng lượng vocirc iacutech Giao thức LEACH cần tiếp tục được cải tiến để khắc phục hạn chế

33 Hoạt động truyền nhận khocircng dacircy

Đối với mạng cảm nhận khocircng dacircy thigrave năng lượng trở thagravenh một vấn đề được chuacute

yacute để duy trigrave hoạt động của hệ thống mạng vigrave caacutec nuacutet mạng độc lập chỉ được cung cấp

năng lượng từ một nguồn cố định (pin) Việc tiecircu thụ năng lượng thấp lagrave một nhu cầu

quan trọng cho caacutec hệ thống hoạt động bằng pin - khocircng được cung cấp năng lượng

thường xuyecircn Khi coacute một dograveng tiecircu thụ thấp thigrave thời gian sống của chuacuteng sẽ keacuteo dagravei

thecircm Hệ thống tiecircu thụ năng lượng thấp lagrave mục tiecircu cần đạt của mạng cảm nhận

khocircng dacircy sử dụng CC1010 Caacutec vấn đề đưa ra trong phần nagravey lagrave cơ sở cho việc viết

phần mềm tiết kiệm tiecircu thụ năng lượng cho nuacutet mạng cảm nhận khocircng dacircy

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 16

CHƢƠNG 2 MAtilde SỬA LỖI

Mạng phải coacute khả năng truyền chiacutenh xaacutec dữ liệu từ thiết bị nagravey tới thiết bị khaacutec

Một hệ thống khocircng bảo đảm dữ liệu nhận giống như dữ liệu truyền lagrave hệ thống khocircng

sử dụng được Coacute nhiều nhacircn tố như tạp nhiễu đường dacircy coacute thể lagravem hỏng một hoặc

nhiều bit của khối dữ liệu đang truyền Một hệ thống thực sự dugraveng được phải coacute cơ cấu

để phaacutet hiện vagrave sửa caacutec lỗi đoacute

Việc phaacutet hiện vagrave sửa lỗi được trang bị ở lớp liecircn kết dữ liệu hoặc lớp giao vận

tương ứng trong mocirc higravenh OSI

1 CAacuteC CƠ CHẾ TRUYỀN DỮ LIỆU

11 Truyền dữ liệu song song

bull Mỗi bit dugraveng một đường truyền riecircng Nếu coacute 8 bits được truyền đồng thời sẽ

yecircu cầu 8 đường truyền độc lập

bull Để truyền dữ liệu trecircn một đường truyền song song một kecircnh truyền riecircng

được dugraveng để thocircng baacuteo cho becircn nhận biết khi nagraveo dữ liệu coacute sẵn (clock signal)

bull Cần thecircm một kecircnh truyền khaacutec để becircn nhận baacuteo cho becircn gởi biết lagrave đatilde sẵn

sagraveng để nhận dữ liệu kế tiếp

12 Truyền dữ liệu tuần tự

bull Tất cả caacutec bit đều được truyền trecircn cugraveng một đường truyền bit nagravey tiếp theo

sau bit kia

bull Khocircng cần caacutec đường truyền riecircng cho tiacuten hiệu đồng bộ vagrave tiacuten hiệu bắt tay (caacutec

tiacuten hiệu nagravey được matilde hoacutea vagraveo dữ liệu truyền đi)

bull Vấn đề định thời (timing) đogravei hỏi phải coacute cơ chế đồng bộ giữa becircn truyền vagrave

becircn nhận

bull 2 caacutech giải quyết

- Bất đồng bộ mỗi kyacute tự được đồng bộ bởi start vagrave stop bit

- Đồng bộ mỗi khối kyacute tự được đồng bộ dugraveng cờ

13 Truyền bất đồng bộ

bull Dữ liệu được truyền theo từng kyacute tự để traacutenh việc mất đồng bộ khi nhận được chuỗi

bit quaacute dagravei

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 17

- 5 đến 8 bits

- Chỉ cần giữ đồng bộ trong một kyacute tự

- Taacutei đồng bộ cho mỗi kyacute tự mới

bull Hagravenh vi

- Đối với dograveng dữ liệu đều khoảng caacutech giữa caacutec kyacute tự lagrave đồng nhất (bằng chiều dagravei

của phần tử stop)

- Ở trạng thaacutei rỗi bộ thu phaacutet hiện sự chuyển 1 đến 0

- Lấy mẫu 7 khoảng kế tiếp (chiều dagravei kyacute tự)

- Đợi việc chuyển 1 đến 0 cho kyacute tự kế tiếp

bull Hiệu suất

- Đơn giản

- Rẻ

- Phiacute tổn 2 hoặc 3 bit cho một kyacute tự (~20)

- Thiacutech hợp cho dữ liệu với khoảng trống giữa caacutec kyacute tự lớn (dữ liệu nhập từ bagraven

phiacutem)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 18

bull Đồng bộ khung (frame synchronization) dugraveng caacutec kyacute tự điều khiển (STX ETX

DLE)

14 Truyền đồng bộ

bull Truyền khocircng cần startstop

bull Phải coacute tiacuten hiệu đồng bộ

bull Đồng bộ bit (bit synchronization) sử dụng caacutec phƣơng phaacutep sau

- Tiacutech hợp xung clock vagraveo dữ liệu truyền đi

+ Tiacutech hợp thocircng tin đồng bộ (clock) vagraveo trong dữ liệu truyền

+ Đầu nhận sẽ taacutech thocircng tin đồng bộ dựa vagraveo dữ liệu nhận được

+ Manchester differential Manchester tần số soacuteng mang (analog)

- Sử dụng đường clock riecircng

+ Dugraveng một đường tiacuten hiệu đồng bộ riecircng biệt

+ Một becircn (phaacutet hoặc nhận) tạo ra caacutec xung clock đồng bộ với caacutec bit truyền đi

trecircn đường clock riecircng

+ Becircn cograven lại dugraveng tiacuten hiệu trecircn đường clock riecircng để lagravem clock

+ Thiacutech hợp khi truyền trong khoảng caacutech ngắn

+ Tiacuten hiệu đồng bộ dễ bị suy giảm trecircn đường truyền

bull Đồng bộ frame

- Mỗi block dữ liệu được bắt đầu bằng một cờ gọi lagrave preamble kết thuacutec bằng

một cờ gọi lagrave postamble

- Preamble vagrave postamble lagrave một mẫu bit (bit pattern) được quy định sẵn

+ Một chuỗi caacutec kyacute tự SYN (16h trong bảng matilde ASCII)

+ Mẫu bit 11111110

- Frame dữ liệu + preamble + postamble + thocircng tin điều khiển

- Hiệu quả hơn so với truyền bất đồng bộ (phiacute tổn thấp hơn cho caacutec bit điều

khiển)

+ HDLC 48 bit điều khiển cho mỗi block 1000 kyacute tự (8000 bit)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 19

2 VẤN ĐỀ XỬ LYacute LỖI

11 Caacutec lỗi xẩy ra trecircn đường truyền

bull Mocirci trƣờng truyền dẫn bị nhiễu (điện từ hellip) dẫn đến dữ liệu nhận coacute lỗi

(caacutec bit bị thay đổi)

bull 2 caacutech khắc phục khi phaacutet hiện coacute lỗi

- Forward error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự hoặc caacutec

frame truyền đi để becircn nhận coacute thể phaacutet hiện khi nagraveo coacute lỗi va lỗi nằm ở đacircu để sửa

(coacute khả năng sửa lỗi)

- Feedback (backward) error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự

hoặc caacutec frame truyền đi chỉ đủ để phaacutet hiện khi nagraveo coacute lỗi (khocircng coacute khả năng sửa

lỗi) Cơ chế yecircu cầu truyền lại kyacute tựframe sai được dugraveng trong trường hợp nagravey

bull Phacircn loại lỗi

- Lỗi 1 bit

+ Chỉ 1 bit bị lỗi khocircng ảnh hưởng caacutec bit xung quanh

+ Thường xảy ra do nhiễu trắng

- Lỗi chugravem (busrt error)

+ Một chuỗi liecircn tục B bit trong đoacute bit đầu bit cuối vagrave caacutec bit bất kigrave nằm giữa

chuỗi đều bị lỗi

+ Thường xảy ra do nhiễu xung

+ Ảnh hưởng cagraveng lớn đối với tốc độ truyền cao

Bit error rate (BER) xaacutec suất một bit nhận đƣợc bị lỗi

12 Cơ chế phaacutet hiện lỗi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 8

Giaacutem saacutet xe cộ trecircn đường

Giaacutem saacutet an ninh trong caacutec khu vực dacircn cư thương mạihellip

Theo dotildei biecircn giới kết hợp với vệ tinhhellip

Higravenh I2 Ứng dụng WSN trong an ninh quốc gia vagrave luật phaacutep

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 9

122 Ứng dụng trong giaacutem saacutet xe cộ vagrave thocircng tin liecircn quan

Mục tiecircu của caacutec hệ thống nagravey lagrave thu thập thocircng tin thocircng qua caacutec mạng cảm

biến xử lyacute vagrave lưu trữ dữ liệu tại trung tacircm sử dụng dữ liệu đoacute cho caacutec ứng dụng cần

thiết Hệ thống được lắp đặt dọc theo caacutec đường chiacutenh mạng cảm biến số tập hợp dữ

liệu về tốc độ lưu thocircng mật độ xe số lượng xe trecircn đường Dữ liệu sau đoacute được

truyền đến trung tacircm dữ liệu để xử lyacute Mạng theo dotildei liecircn tục cung cấp thocircng tin cập

nhật thường xuyecircn theo thời gian thực Caacutec thocircng tin thu được dugraveng để giaacutem saacutet lưu

lượng điều phối giao thocircng hoặc cho caacutec mục điacutech khaacutec

123 Điều khiển caacutec thiết bị trong nhagrave

Điều khiển caacutec thiết bị trong nhagrave

Higravenh I3 Caacutec ứng dụng điều khiển

Caacutec node cảm biến được lắp trecircn caacutec thiết bị vị triacute cần thiết sau đoacute kết nối thagravenh

mạng truyền dữ liệu về node trung tacircm Một khả năng coacute thể phaacutet triển lagrave caacutec cảm biến

theo dotildei y tế được gắn trực tiếp lecircn cơ thể người bệnh để đo đạc thường xuyecircn caacutec

thocircng số về huyết aacutep nhịp timhellip

124 Caacutec togravea nhagrave tự động

Ứng dụng cung cấp khả năng điều khiển quản lyacute tạo sự tiện lợi trong kiểm soaacutet

an ninhhellipQuản lyacute nhiều hệ thống cugraveng luacutec hệ thống chiếu saacuteng nhiệt độ an ninh

giaacutem saacutet nhacircn viecircn quản lyacute hiệu quả tiecircu thụ năng lượng trong togravea nhagrave gắn caacutec chip

lecircn hagraveng hoacuteagiảm được thời gian kiểm trahellipcoacute thể dễ dagraveng được thực hiện bằng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 10

C2WSNs vagrave cocircng nghệ ZigBee đặc điểm nổi bật lagrave dugraveng caacutec cocircng nghệ microsensor

tiecircu thụ rất iacutet cocircng suất thu phaacutet vocirc tuyến kỹ thuật liecircn lạc vả cảm biến khocircng dacircy đa

chức năng

125 Quản lyacute quaacute trigravenh tự động trong cocircng nghiệp

Caacutec ứng dụng trong sản xuất cocircng nghiệp gồm điều khiển quản lyacute hiệu suất vagrave

an toagraven Caacutec cảm biến đặt trong mocirci trường lagravem việc giaacutem saacutet quaacute trigravenh sản xuất chất

lượng sản phẩm kiểm soaacutet mocirci trường lagravem việc quản lyacute nhacircn viecircnhellipdữ liệu được đưa

về trung tacircm để người quản lyacute coacute thể đưa ra caacutec quyết định kịp thời

126 Caacutec ứng dụng trong y học

Một số bệnh viện vagrave trung tacircm y tế đang ứng dụng cocircng nghệ WSNs vagraveo tiền

chẩn đoaacuten chăm soacutec sức khỏe đối phoacute với caacutec dịch bệnh vagrave phục hồi chức năng cho

người bệnh WSNs cho pheacutep theo dotildei tigravenh trạng của caacutec bệnh nhacircn kinh niecircn ngay tại

nhagrave lagravem cho việc phacircn tiacutech vagrave điều trị thuận tiện hơn ruacutet ngắn thời gian điều trị tại

bệnh viện WSNs cograven cho pheacutep thu thập thocircng tin y tế qua thời gian dagravei thagravenh caacutec cơ

sở dữ liệu quan trọng caacutec biện phaacutep can thiệp hiệu quả

2 TRUYỀN DỮ LIỆU GIỮA CAacuteC NUacuteT MẠNG NGUYEcircN TẮC

Một nuacutet cảm nhận khocircng dacircy giao tiếp với caacutec nuacutet cảm nhận khaacutec bằng việc sử

dụng net work - stack

- Ở lớp ứng dụng (Application) dữ liệu coacute thể được gửi ở dạng goacutei do chip radio

ở lớp phần cứng coacute thể truyền vagrave nhận dữ liệu dạng byte necircn caacutec goacutei tin nagravey cần được

phacircn đoạn trước khi chuacuteng được gửi vagrave phải được gheacutep lại sau khi chuacuteng được nhận

Lớp điều khiển đa truy cập Media - Access - Control (MAC) chuyển tiếp lớp ứng

dụng với radio chip

+ Khi 1 goacutei tin được gửi đi nhờ 1 ứng dụng goacutei tin được phacircn nhỏ thagravenh caacutec

byte 1 chuỗi liecircn tiếp caacutec byte đặc biệt được gọi lagrave Preamble (phần mở đầu) được gửi

đi trước caacutec byte dữ liệu do đoacute phiacutea thu coacute thể đồng bộ vagrave xaacutec định phần bắt đầu của 1

goacutei tin

+ Sau khi nhận 1 byte radio chip matilde hoacutea bit dữ liệu vagrave truyền chuacuteng Ở phiacutea

nhận radio chip baacuteo hiệu việc đến của caacutec byte sau khi xaacutec định vagrave giải matilde caacutecbit dữ

liệu

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 11

+ Sau đoacute lớp MAC hợp lại goacutei tin bắt đầu từ goacutei đầu tiecircn sau goacutei preamble Tiếp

theo lớp MAC baacuteo hiệu việc đến của goacutei tin cho lớp trecircn

Caacutec byte dữ liệu coacute thể được matilde hoacutea một caacutech tugravey yacute sau khi được phacircn đoạn cugraveng

với matilde sửa lỗi (ECC ) Matilde sửa lỗi ECC được dugraveng để khocirci phục caacutec bit dữ liệu trong

trường hợp coacute số lượng nhỏ bit lỗi Khi caacutec byte dữ liệu đoacute tới bộ thu tại đacircy noacute được

giải matilde để trở về dạng caacutec byte dữ liệu ban đầu

3 TIẾT KIỆM VAgrave TIEcircU THỤ NĂNG LƢỢNG

Năng lượng tiecircu thụ phụ thuộc vagraveo nhiều yếu tố sử dụng khaacutec nhau như Kiến

truacutec giao thức mạng Giao thức chọn đường Hoạt động truyền nhận khocircng dacircy

31 Kiến truacutec giao thức mạng

Kiến truacutec giao thức nagravey kết hợp giữa năng lượng vagrave chọn đường kết hợp số liệu

với caacutec giao thức mạng sử dụng năng lượng hiệu quả Kiến truacutec giao thức bao gồm

lớp vật lyacute lớp liecircn kết số liệu lớp mạng lớp truyền tải lớp ứng dụng phần quản lyacute

cocircng suất phần quản lyacute di động vagrave phần quản lyacute nhiệm vụ

Lớp vật lyacute cung cấp caacutec kỹ thuật điều chế phaacutet vagrave thu Vigrave mocirci trường coacute tạp acircm

vagrave caacutec nuacutet cảm biến coacute thể di động giao thức điều khiển truy cập mocirci trường (MAC)

phải xeacutet đến vấn đề cocircng suất vagrave phải coacute khả năng tối thiểu hoaacute việc va chạm với

thocircng tin quản baacute của caacutec nuacutet lacircn cận

Lớp mạng quan tacircm đến việc chọn đường số liệu được cung cấp bởi lớp truyền

tải

Lớp truyền tải giuacutep duy trigrave luồng số liệu nếu ứng dụng mạng cảm biến yecircu cầu

Tuỳ theo nhiệm vụ cảm biến caacutec loại phần mềm khaacutec nhau coacute thể được xacircy dựng vagrave

sử dụng ở lớp ứng dụng Ngoagravei ra caacutec phần quản lyacute cocircng suất di chuyển vagrave nhiệm vụ

sẽ giaacutem saacutet việc sử dụng cocircng suất sự di chuyển vagrave thực hiện nhiệm vụ giữa caacutec nuacutet

cảm biến Những phần nagravey giuacutep caacutec nuacutet cảm biến phối hợp nhiệm vụ cảm biến vagrave tiecircu

thụ năng lượng tổng thể thấp hơn

Phần quản lyacute năng lượng điều khiển việc sử dụng năng lượng của nuacutet mạng Viacute

dụ nuacutet mạng coacute thể tắt khối thu của noacute sau khi thu được một bản tin từ một nuacutet lacircn

cận Điều nagravey giuacutep traacutenh tạo ra caacutec bản tin giống nhau Cũng vậy khi mức năng lượng

của nuacutet mạng thấp noacute sẽ phaacutet quảng baacute tới caacutec nuacutet lacircn cận để thocircng baacuteo noacute coacute mức

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 12

năng lượng thấp vagrave khocircng thể tham gia vagraveo caacutec bản tin chọn đường Phần năng lượng

cograven lại sẽ dagravenh riecircng cho nhiệm vụ cảm biến

Phần quản lyacute di chuyển phaacutet hiện vagrave ghi lại sự di chuyển của caacutec nuacutet cảm biến để

duy trigrave tuyến tới người sử dụng vagrave caacutec nuacutet cảm biến coacute thể lưu vết của caacutec nuacutet cảm

biến lacircn cận Nhờ xaacutec định được caacutec nuacutet cảm biến lacircn cận caacutec nuacutet cảm biến coacute thể cacircn

bằng giữa cacircn bằng giữa cocircng suất của noacute vagrave nhiệm vụ thực hiện

Phần quản lyacute nhiệm vụ dugraveng để lagravem cacircn bằng vagrave lecircn kế hoạch caacutec nhiệm vụ cảm

biến trong một vugraveng xaacutec định Khocircng phải tất cả caacutec nuacutet cảm biến trong vugraveng đoacute đều

phải thực hiện nhiệm vụ cảm biến tại cugraveng một thời điểm Kết quả lagrave một số nuacutet cảm

biến thực hiện nhiều hơn caacutec nuacutet khaacutec tuỳ theo mức cocircng suất của noacute Những phần

quản lyacute nagravey lagrave cần thiết để caacutec nuacutet cảm biến coacute thể lagravem việc cugraveng nhau theo một caacutech

thức sử dụng hiệu quả cocircng suất chọn đường số liệu trong mạng cảm biến di động vagrave

phacircn chia tagravei nguyecircn giữa caacutec nuacutet cảm biến

Kiến truacutec mạng như trecircn goacutep phần quản lyacute năng lượng của caacutec nuacutet mạng đồng

thời duy trigrave hoạt động của toagraven mạng trong thời gian dagravei hơn

32 Giao thức chọn đường

321 Khoacute khăn trong giao thức chọn đường

Mặc dugrave caacutec ứng dụng của mạng WSN lagrave rất lớn tuy nhiecircn những mạng nagravey coacute

một số hạn chế như giới hạn về nguồn cocircng suất khả năng tiacutenh toaacuten vagrave độ rộng băng

thocircng Một số giao thức chọn đường quản lyacute cocircng suất vagrave trao đổi số liệu đatilde được

thiết kế cho WSN với yecircu cầu quan trọng nhất lagrave tiết kiệm được năng lượng

Một trong những mục tiecircu thiết kế chiacutenh của WSN lagrave keacuteo dagravei thời gian sống của

mạng vagrave traacutenh suy giảm kết nối nhờ caacutec kỹ thuật quản lyacute năng lượng Vấn đề nagravey cần

được giải quyết triệt để thigrave mới đạt được hiệu quả truyền tin trong WSN Caacutec giao thức

chọn đường trong WSN coacute thể khaacutec nhau tuỳ theo ứng dụng vagrave cấu truacutec mạng Tuy

nhiecircn việc chọn đường gặp phải những khoacute khăn như Phacircn bố nuacutet tiecircu thụ năng

lượng khocircng được lagravem mất độ chiacutenh xaacutec tiacutenh khocircng đồng nhất của nuacutet mạng tiacutenh

động của mạng khả năng định cỡ khả năng chống lỗi chất lượng dịch vụ

Phacircn bố nuacutet Việc phacircn bố nuacutet trong WSN phụ thuộc vagraveo ứng dụng vagrave coacute thể

được thực hiện bằng tay hoặc phacircn bố ngẫu nhiecircn Khi phacircn bố bằng tay số liệu được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 13

chọn đường thocircng qua caacutec đường đatilde định trước Tuy nhiecircn khi phacircn bố caacutec nuacutet ngẫu

nhiecircn sẽ tạo ra một cấu truacutec chọn đường đặc biệt (Ad-hoc)

Tiecircu thụ năng lượng khocircng được lagravem mất độ chiacutenh xaacutec Caacutec nuacutet cảm biến coacute

thể sử dụng quaacute caacutec giới hạn về cocircng suất để thực hiện tiacutenh toaacuten vagrave truyền tin trong

mocirci trường vocirc tuyến Thời gian sống của nuacutet mạng cảm biến phụ thuộc rất nhiều vagraveo

thời gian sử dụng của pin Trong WSN đa bước nhảy mỗi nuacutet đoacuteng hai vai trograve lagrave

truyền số liệu vagrave chọn đường Một số nuacutet cảm biến hoạt động sai chức năng do lỗi

nguồn cocircng suất coacute thể gacircy ra sự thay đổi cấu higravenh mạng nghiecircm trọng vagrave phải chọn

đường lại caacutec goacutei hoặc phải tổ chức lại mạng

Tiacutenh khocircng đồng nhất của nuacutet mạng Nghĩa lagrave caacutec nuacutet mạng coacute khả năng tiacutenh

toaacuten khả năng truyền tin vagrave coacute cocircng suất khaacutec nhau Khi đoacute sẽ gacircy khoacute khăn cho kỹ

thuật chọn đường

Khả năng chống lỗi Một số nuacutet cảm biến coacute thể bị lỗi hoặc bị ngắt do thiếu cocircng

suất hỏng phần cứng hoặc bị nhiễu mocirci trường Sự cố của caacutec nuacutet cảm biến khocircng

được ảnh hưởng tới nhiệm vụ của toagraven mạng cảm biến Nếu coacute nhiều nuacutet bị lỗi caacutec

giao thức chọn đường vagrave điều khiển truy cập mocirci trường (MAC) phải thagravenh lập caacutec

tuyến mới tới nuacutet gốc Việc nagravey coacute thể cần thiết phải điều chỉnh cocircng suất phaacutet vagrave tốc

độ tiacuten hiệu trecircn caacutec tuyến hiện tại để giảm sự tiecircu thụ năng lượng hoặc lagrave caacutec goacutei phải

chọn đường lại qua caacutec caacutec vugraveng mạng coacute cocircng suất khả dụng lớn hơn

Khả năng định cỡ Số lượng nuacutet mạng coacute thể lagrave hagraveng trăm hagraveng nghigraven hoặc

nhiều hơn Bất kỳ phương phaacutep chọn đường nagraveo cũng phải coacute khả năng lagravem việc với

một số lượng lớn caacutec nuacutet cảm biến như vậy

Tiacutenh động của mạng Trong nhiều nghiecircn cứu caacutec nuacutet cảm biến được coi lagrave cố

định Tuy nhiecircn trong một số ứng dụng cả nuacutet gốc vagrave caacutec nuacutet cảm biến coacute thể di

chuyển Khi đoacute caacutec bản tin chọn đường từ hoặc tới caacutec nuacutet di chuyển sẽ gặp phải caacutec

vần đề như đường liecircn lạc cấu higravenh mạng năng lượng độ rộng bănghellip

Chất lượng dịch vụ Khi năng lượng gần hết caacutec nuacutet mạng coacute thể yecircu cầu giảm

chất lượng caacutec kết quả để giảm mức tiecircu thụ năng lượng của nuacutet vagrave keacuteo dagravei thời gian

sống của toagraven mạng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 14

Mặc dugrave việc chọn đường gặp nhiều khoacute khăn nhưng khi coacute một giao thức chọn

đường tốt sẽ tiết kiệm thời gian truyền nhận thocircng tin giảm năng lượng tiecircu hao latildeng

phiacute do tắc nghẽn lỗi đường truyềnVigrave vậy người ta đatilde đưa ra một số giao thức chọn

đường magrave dưới đacircy sẽ trigravenh bầy

322 Caacutec giao thức chọn đường

Phần nagravey sẽ trigravenh bagravey về phương phaacutep chọn đường trong WSN Noacutei chung caacutec

giao thức chọn đường được chia lagravem 3 loại dựa vagraveo cấu truacutec mạng ngang hagraveng phacircn

cấp hoặc dựa vagraveo vị triacute

Trong chọn đường ngang hagraveng tất cả caacutec nuacutet thường coacute vai trograve hoặc chức năng

như nhau như cảm nhận truyền Chuacuteng sẽ thực hiện việc cảm nhận thocircng tin cần

thiết vagrave truyền số liệu về nuacutet gốc

Trong chọn đường phacircn cấp caacutec nuacutet sẽ đoacuteng vai trograve khaacutec nhau trong mạng sẽ coacute

nuacutet chủ đại diện cho từng nhoacutem caacutec nuacutet cảm biến để nhận số liệu từ caacutec nuacutet cảm biến

truyền tới Caacutec nuacutet chủ cũng tập hợp số liệu từ caacutec nuacutet trong nhoacutem của noacute trước khi

gửi số liệu đến nuacutet gốc Nuacutet chủ sẽ thay đổi khi bắt đầu chu kỳ lagravem việc mới vagrave sẽ thay

bằng nuacutet khaacutec coacute khả năng đảm nhận chức năng nagravey

Trong chọn đường dựa theo vị triacute thigrave vị triacute của caacutec nuacutet cảm biến sẽ được dugraveng để

chọn đường số liệu Giao thức chọn đường cograven coacute thể được phacircn loại dựa theo đa

đường yecircu cầu hỏiđaacutep QoS vagrave liecircn kết tuỳ thuộc vagraveo chế độ hoạt động Ngoagravei ra

cũng coacute thể chia thagravenh 3 loại chủ động tương taacutec hoặc lai gheacutep tuỳ thuộc vagraveo caacutech

thức magrave nguồn tigravem đường tời điacutech Một giao thức chọn đường được coi lagrave thiacutech ứng

nếu caacutec tham số của hệ thống coacute thể điều khiển được để phugrave hợp với caacutec trạng thaacutei

mạng hiện tại vagrave caacutec mức năng lượng khả dụng Một số giao thức chọn đường đatilde phaacutet

huy hiệu quả tiết kiệm tiecircu thụ năng lượng như LEACH

TEENampAPTEEN MECNampSVECN PEGASIS thuộc chọn đường phacircn cấp SPIN

Directed Diffusion CADR CUGAR thuộc chọn đường ngang hagraveng Trong đoacute đaacuteng

quan tacircm nhất lagrave giao thức chọn đường LEACH LEACH (Low Energy Adaptive

Clustering Hierarchy) - phacircn cấp nhoacutem thiacutech ứng cocircng suất thấp giao thức nagravey cho

pheacutep tiết kiệm năng lượng trong mạng WSN Mục điacutech của LEACH lagrave lựa chọn ngẫu

nhiecircn caacutec nuacutet cảm biến lagravem caacutec nuacutet chủ do đoacute việc tiecircu hao năng lượng khi liecircn lạc

với nuacutet gốc được trải đều cho tất cả caacutec nuacutet cảm biến trong mạng Quaacute trigravenh hoạt động

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 15

của LEACH được chia thagravenh 2 bước bước thiết lập vagrave bước ổn định Thời gian bước

ổn định keacuteo dagravei hơn so với thời gian của bước thiết lập để giảm thiểu phần điều khiển

Tại bước thiết lập sẽ xaacutec định nuacutet mạng nagraveo sẽ lagravem chủ Tại bước ổn định caacutec nuacutet cảm

biến bắt đầu cảm nhận vagrave truyền số liệu về nuacutet chủ nuacutet chủ cũng tập hợp số liệu từ caacutec

nuacutet trong nhoacutem trước khi gửi caacutec số liệu nagravey về nuacutet gốc Theo thử nghiệm mocirc phỏng

giao thức LEACH của mạng WSN coacute 160 nuacutet phacircn bố đều cocircng suất ban đầu của nuacutet

lagrave 30 Kết quả thu được lagrave khi truyền trực tiếp tới nuacutet gốc sau khoảng 470 chu kỳ

thời gian sẽ kết thuacutec truyền tin khi sử dụng giao thức LEACH sau khoảng 685 chu kỳ

thời gian mới kết thuacutec truyền tin Kết quả nagravey cho thấy đacircy lagrave một phương phaacutep chọn

đường phacircn cấp coacute khả năng tiết kiệm được năng lượng vagrave keacuteo dagravei thời gian sống của

mạng

Tuy nhiecircn cơ chế hoạt động của LEACH lagrave lựa chọn số liệu được tập trung vagrave

thực hiện theo chu kỳ Do đoacute giao thức nagravey chỉ thiacutech hợp với yecircu cầu giaacutem saacutet liecircn tục

bởi mạng cảm biến Với ứng dụng magrave người sử dụng khocircng cần tất cả caacutec số liệu ngay

lập tức thigrave việc truyền số liệu theo chu kỳ lagrave khocircng cần thiết vagrave coacute thể lagravem tiecircu tốn

năng lượng vocirc iacutech Giao thức LEACH cần tiếp tục được cải tiến để khắc phục hạn chế

33 Hoạt động truyền nhận khocircng dacircy

Đối với mạng cảm nhận khocircng dacircy thigrave năng lượng trở thagravenh một vấn đề được chuacute

yacute để duy trigrave hoạt động của hệ thống mạng vigrave caacutec nuacutet mạng độc lập chỉ được cung cấp

năng lượng từ một nguồn cố định (pin) Việc tiecircu thụ năng lượng thấp lagrave một nhu cầu

quan trọng cho caacutec hệ thống hoạt động bằng pin - khocircng được cung cấp năng lượng

thường xuyecircn Khi coacute một dograveng tiecircu thụ thấp thigrave thời gian sống của chuacuteng sẽ keacuteo dagravei

thecircm Hệ thống tiecircu thụ năng lượng thấp lagrave mục tiecircu cần đạt của mạng cảm nhận

khocircng dacircy sử dụng CC1010 Caacutec vấn đề đưa ra trong phần nagravey lagrave cơ sở cho việc viết

phần mềm tiết kiệm tiecircu thụ năng lượng cho nuacutet mạng cảm nhận khocircng dacircy

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 16

CHƢƠNG 2 MAtilde SỬA LỖI

Mạng phải coacute khả năng truyền chiacutenh xaacutec dữ liệu từ thiết bị nagravey tới thiết bị khaacutec

Một hệ thống khocircng bảo đảm dữ liệu nhận giống như dữ liệu truyền lagrave hệ thống khocircng

sử dụng được Coacute nhiều nhacircn tố như tạp nhiễu đường dacircy coacute thể lagravem hỏng một hoặc

nhiều bit của khối dữ liệu đang truyền Một hệ thống thực sự dugraveng được phải coacute cơ cấu

để phaacutet hiện vagrave sửa caacutec lỗi đoacute

Việc phaacutet hiện vagrave sửa lỗi được trang bị ở lớp liecircn kết dữ liệu hoặc lớp giao vận

tương ứng trong mocirc higravenh OSI

1 CAacuteC CƠ CHẾ TRUYỀN DỮ LIỆU

11 Truyền dữ liệu song song

bull Mỗi bit dugraveng một đường truyền riecircng Nếu coacute 8 bits được truyền đồng thời sẽ

yecircu cầu 8 đường truyền độc lập

bull Để truyền dữ liệu trecircn một đường truyền song song một kecircnh truyền riecircng

được dugraveng để thocircng baacuteo cho becircn nhận biết khi nagraveo dữ liệu coacute sẵn (clock signal)

bull Cần thecircm một kecircnh truyền khaacutec để becircn nhận baacuteo cho becircn gởi biết lagrave đatilde sẵn

sagraveng để nhận dữ liệu kế tiếp

12 Truyền dữ liệu tuần tự

bull Tất cả caacutec bit đều được truyền trecircn cugraveng một đường truyền bit nagravey tiếp theo

sau bit kia

bull Khocircng cần caacutec đường truyền riecircng cho tiacuten hiệu đồng bộ vagrave tiacuten hiệu bắt tay (caacutec

tiacuten hiệu nagravey được matilde hoacutea vagraveo dữ liệu truyền đi)

bull Vấn đề định thời (timing) đogravei hỏi phải coacute cơ chế đồng bộ giữa becircn truyền vagrave

becircn nhận

bull 2 caacutech giải quyết

- Bất đồng bộ mỗi kyacute tự được đồng bộ bởi start vagrave stop bit

- Đồng bộ mỗi khối kyacute tự được đồng bộ dugraveng cờ

13 Truyền bất đồng bộ

bull Dữ liệu được truyền theo từng kyacute tự để traacutenh việc mất đồng bộ khi nhận được chuỗi

bit quaacute dagravei

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 17

- 5 đến 8 bits

- Chỉ cần giữ đồng bộ trong một kyacute tự

- Taacutei đồng bộ cho mỗi kyacute tự mới

bull Hagravenh vi

- Đối với dograveng dữ liệu đều khoảng caacutech giữa caacutec kyacute tự lagrave đồng nhất (bằng chiều dagravei

của phần tử stop)

- Ở trạng thaacutei rỗi bộ thu phaacutet hiện sự chuyển 1 đến 0

- Lấy mẫu 7 khoảng kế tiếp (chiều dagravei kyacute tự)

- Đợi việc chuyển 1 đến 0 cho kyacute tự kế tiếp

bull Hiệu suất

- Đơn giản

- Rẻ

- Phiacute tổn 2 hoặc 3 bit cho một kyacute tự (~20)

- Thiacutech hợp cho dữ liệu với khoảng trống giữa caacutec kyacute tự lớn (dữ liệu nhập từ bagraven

phiacutem)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 18

bull Đồng bộ khung (frame synchronization) dugraveng caacutec kyacute tự điều khiển (STX ETX

DLE)

14 Truyền đồng bộ

bull Truyền khocircng cần startstop

bull Phải coacute tiacuten hiệu đồng bộ

bull Đồng bộ bit (bit synchronization) sử dụng caacutec phƣơng phaacutep sau

- Tiacutech hợp xung clock vagraveo dữ liệu truyền đi

+ Tiacutech hợp thocircng tin đồng bộ (clock) vagraveo trong dữ liệu truyền

+ Đầu nhận sẽ taacutech thocircng tin đồng bộ dựa vagraveo dữ liệu nhận được

+ Manchester differential Manchester tần số soacuteng mang (analog)

- Sử dụng đường clock riecircng

+ Dugraveng một đường tiacuten hiệu đồng bộ riecircng biệt

+ Một becircn (phaacutet hoặc nhận) tạo ra caacutec xung clock đồng bộ với caacutec bit truyền đi

trecircn đường clock riecircng

+ Becircn cograven lại dugraveng tiacuten hiệu trecircn đường clock riecircng để lagravem clock

+ Thiacutech hợp khi truyền trong khoảng caacutech ngắn

+ Tiacuten hiệu đồng bộ dễ bị suy giảm trecircn đường truyền

bull Đồng bộ frame

- Mỗi block dữ liệu được bắt đầu bằng một cờ gọi lagrave preamble kết thuacutec bằng

một cờ gọi lagrave postamble

- Preamble vagrave postamble lagrave một mẫu bit (bit pattern) được quy định sẵn

+ Một chuỗi caacutec kyacute tự SYN (16h trong bảng matilde ASCII)

+ Mẫu bit 11111110

- Frame dữ liệu + preamble + postamble + thocircng tin điều khiển

- Hiệu quả hơn so với truyền bất đồng bộ (phiacute tổn thấp hơn cho caacutec bit điều

khiển)

+ HDLC 48 bit điều khiển cho mỗi block 1000 kyacute tự (8000 bit)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 19

2 VẤN ĐỀ XỬ LYacute LỖI

11 Caacutec lỗi xẩy ra trecircn đường truyền

bull Mocirci trƣờng truyền dẫn bị nhiễu (điện từ hellip) dẫn đến dữ liệu nhận coacute lỗi

(caacutec bit bị thay đổi)

bull 2 caacutech khắc phục khi phaacutet hiện coacute lỗi

- Forward error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự hoặc caacutec

frame truyền đi để becircn nhận coacute thể phaacutet hiện khi nagraveo coacute lỗi va lỗi nằm ở đacircu để sửa

(coacute khả năng sửa lỗi)

- Feedback (backward) error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự

hoặc caacutec frame truyền đi chỉ đủ để phaacutet hiện khi nagraveo coacute lỗi (khocircng coacute khả năng sửa

lỗi) Cơ chế yecircu cầu truyền lại kyacute tựframe sai được dugraveng trong trường hợp nagravey

bull Phacircn loại lỗi

- Lỗi 1 bit

+ Chỉ 1 bit bị lỗi khocircng ảnh hưởng caacutec bit xung quanh

+ Thường xảy ra do nhiễu trắng

- Lỗi chugravem (busrt error)

+ Một chuỗi liecircn tục B bit trong đoacute bit đầu bit cuối vagrave caacutec bit bất kigrave nằm giữa

chuỗi đều bị lỗi

+ Thường xảy ra do nhiễu xung

+ Ảnh hưởng cagraveng lớn đối với tốc độ truyền cao

Bit error rate (BER) xaacutec suất một bit nhận đƣợc bị lỗi

12 Cơ chế phaacutet hiện lỗi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 9

122 Ứng dụng trong giaacutem saacutet xe cộ vagrave thocircng tin liecircn quan

Mục tiecircu của caacutec hệ thống nagravey lagrave thu thập thocircng tin thocircng qua caacutec mạng cảm

biến xử lyacute vagrave lưu trữ dữ liệu tại trung tacircm sử dụng dữ liệu đoacute cho caacutec ứng dụng cần

thiết Hệ thống được lắp đặt dọc theo caacutec đường chiacutenh mạng cảm biến số tập hợp dữ

liệu về tốc độ lưu thocircng mật độ xe số lượng xe trecircn đường Dữ liệu sau đoacute được

truyền đến trung tacircm dữ liệu để xử lyacute Mạng theo dotildei liecircn tục cung cấp thocircng tin cập

nhật thường xuyecircn theo thời gian thực Caacutec thocircng tin thu được dugraveng để giaacutem saacutet lưu

lượng điều phối giao thocircng hoặc cho caacutec mục điacutech khaacutec

123 Điều khiển caacutec thiết bị trong nhagrave

Điều khiển caacutec thiết bị trong nhagrave

Higravenh I3 Caacutec ứng dụng điều khiển

Caacutec node cảm biến được lắp trecircn caacutec thiết bị vị triacute cần thiết sau đoacute kết nối thagravenh

mạng truyền dữ liệu về node trung tacircm Một khả năng coacute thể phaacutet triển lagrave caacutec cảm biến

theo dotildei y tế được gắn trực tiếp lecircn cơ thể người bệnh để đo đạc thường xuyecircn caacutec

thocircng số về huyết aacutep nhịp timhellip

124 Caacutec togravea nhagrave tự động

Ứng dụng cung cấp khả năng điều khiển quản lyacute tạo sự tiện lợi trong kiểm soaacutet

an ninhhellipQuản lyacute nhiều hệ thống cugraveng luacutec hệ thống chiếu saacuteng nhiệt độ an ninh

giaacutem saacutet nhacircn viecircn quản lyacute hiệu quả tiecircu thụ năng lượng trong togravea nhagrave gắn caacutec chip

lecircn hagraveng hoacuteagiảm được thời gian kiểm trahellipcoacute thể dễ dagraveng được thực hiện bằng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 10

C2WSNs vagrave cocircng nghệ ZigBee đặc điểm nổi bật lagrave dugraveng caacutec cocircng nghệ microsensor

tiecircu thụ rất iacutet cocircng suất thu phaacutet vocirc tuyến kỹ thuật liecircn lạc vả cảm biến khocircng dacircy đa

chức năng

125 Quản lyacute quaacute trigravenh tự động trong cocircng nghiệp

Caacutec ứng dụng trong sản xuất cocircng nghiệp gồm điều khiển quản lyacute hiệu suất vagrave

an toagraven Caacutec cảm biến đặt trong mocirci trường lagravem việc giaacutem saacutet quaacute trigravenh sản xuất chất

lượng sản phẩm kiểm soaacutet mocirci trường lagravem việc quản lyacute nhacircn viecircnhellipdữ liệu được đưa

về trung tacircm để người quản lyacute coacute thể đưa ra caacutec quyết định kịp thời

126 Caacutec ứng dụng trong y học

Một số bệnh viện vagrave trung tacircm y tế đang ứng dụng cocircng nghệ WSNs vagraveo tiền

chẩn đoaacuten chăm soacutec sức khỏe đối phoacute với caacutec dịch bệnh vagrave phục hồi chức năng cho

người bệnh WSNs cho pheacutep theo dotildei tigravenh trạng của caacutec bệnh nhacircn kinh niecircn ngay tại

nhagrave lagravem cho việc phacircn tiacutech vagrave điều trị thuận tiện hơn ruacutet ngắn thời gian điều trị tại

bệnh viện WSNs cograven cho pheacutep thu thập thocircng tin y tế qua thời gian dagravei thagravenh caacutec cơ

sở dữ liệu quan trọng caacutec biện phaacutep can thiệp hiệu quả

2 TRUYỀN DỮ LIỆU GIỮA CAacuteC NUacuteT MẠNG NGUYEcircN TẮC

Một nuacutet cảm nhận khocircng dacircy giao tiếp với caacutec nuacutet cảm nhận khaacutec bằng việc sử

dụng net work - stack

- Ở lớp ứng dụng (Application) dữ liệu coacute thể được gửi ở dạng goacutei do chip radio

ở lớp phần cứng coacute thể truyền vagrave nhận dữ liệu dạng byte necircn caacutec goacutei tin nagravey cần được

phacircn đoạn trước khi chuacuteng được gửi vagrave phải được gheacutep lại sau khi chuacuteng được nhận

Lớp điều khiển đa truy cập Media - Access - Control (MAC) chuyển tiếp lớp ứng

dụng với radio chip

+ Khi 1 goacutei tin được gửi đi nhờ 1 ứng dụng goacutei tin được phacircn nhỏ thagravenh caacutec

byte 1 chuỗi liecircn tiếp caacutec byte đặc biệt được gọi lagrave Preamble (phần mở đầu) được gửi

đi trước caacutec byte dữ liệu do đoacute phiacutea thu coacute thể đồng bộ vagrave xaacutec định phần bắt đầu của 1

goacutei tin

+ Sau khi nhận 1 byte radio chip matilde hoacutea bit dữ liệu vagrave truyền chuacuteng Ở phiacutea

nhận radio chip baacuteo hiệu việc đến của caacutec byte sau khi xaacutec định vagrave giải matilde caacutecbit dữ

liệu

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 11

+ Sau đoacute lớp MAC hợp lại goacutei tin bắt đầu từ goacutei đầu tiecircn sau goacutei preamble Tiếp

theo lớp MAC baacuteo hiệu việc đến của goacutei tin cho lớp trecircn

Caacutec byte dữ liệu coacute thể được matilde hoacutea một caacutech tugravey yacute sau khi được phacircn đoạn cugraveng

với matilde sửa lỗi (ECC ) Matilde sửa lỗi ECC được dugraveng để khocirci phục caacutec bit dữ liệu trong

trường hợp coacute số lượng nhỏ bit lỗi Khi caacutec byte dữ liệu đoacute tới bộ thu tại đacircy noacute được

giải matilde để trở về dạng caacutec byte dữ liệu ban đầu

3 TIẾT KIỆM VAgrave TIEcircU THỤ NĂNG LƢỢNG

Năng lượng tiecircu thụ phụ thuộc vagraveo nhiều yếu tố sử dụng khaacutec nhau như Kiến

truacutec giao thức mạng Giao thức chọn đường Hoạt động truyền nhận khocircng dacircy

31 Kiến truacutec giao thức mạng

Kiến truacutec giao thức nagravey kết hợp giữa năng lượng vagrave chọn đường kết hợp số liệu

với caacutec giao thức mạng sử dụng năng lượng hiệu quả Kiến truacutec giao thức bao gồm

lớp vật lyacute lớp liecircn kết số liệu lớp mạng lớp truyền tải lớp ứng dụng phần quản lyacute

cocircng suất phần quản lyacute di động vagrave phần quản lyacute nhiệm vụ

Lớp vật lyacute cung cấp caacutec kỹ thuật điều chế phaacutet vagrave thu Vigrave mocirci trường coacute tạp acircm

vagrave caacutec nuacutet cảm biến coacute thể di động giao thức điều khiển truy cập mocirci trường (MAC)

phải xeacutet đến vấn đề cocircng suất vagrave phải coacute khả năng tối thiểu hoaacute việc va chạm với

thocircng tin quản baacute của caacutec nuacutet lacircn cận

Lớp mạng quan tacircm đến việc chọn đường số liệu được cung cấp bởi lớp truyền

tải

Lớp truyền tải giuacutep duy trigrave luồng số liệu nếu ứng dụng mạng cảm biến yecircu cầu

Tuỳ theo nhiệm vụ cảm biến caacutec loại phần mềm khaacutec nhau coacute thể được xacircy dựng vagrave

sử dụng ở lớp ứng dụng Ngoagravei ra caacutec phần quản lyacute cocircng suất di chuyển vagrave nhiệm vụ

sẽ giaacutem saacutet việc sử dụng cocircng suất sự di chuyển vagrave thực hiện nhiệm vụ giữa caacutec nuacutet

cảm biến Những phần nagravey giuacutep caacutec nuacutet cảm biến phối hợp nhiệm vụ cảm biến vagrave tiecircu

thụ năng lượng tổng thể thấp hơn

Phần quản lyacute năng lượng điều khiển việc sử dụng năng lượng của nuacutet mạng Viacute

dụ nuacutet mạng coacute thể tắt khối thu của noacute sau khi thu được một bản tin từ một nuacutet lacircn

cận Điều nagravey giuacutep traacutenh tạo ra caacutec bản tin giống nhau Cũng vậy khi mức năng lượng

của nuacutet mạng thấp noacute sẽ phaacutet quảng baacute tới caacutec nuacutet lacircn cận để thocircng baacuteo noacute coacute mức

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 12

năng lượng thấp vagrave khocircng thể tham gia vagraveo caacutec bản tin chọn đường Phần năng lượng

cograven lại sẽ dagravenh riecircng cho nhiệm vụ cảm biến

Phần quản lyacute di chuyển phaacutet hiện vagrave ghi lại sự di chuyển của caacutec nuacutet cảm biến để

duy trigrave tuyến tới người sử dụng vagrave caacutec nuacutet cảm biến coacute thể lưu vết của caacutec nuacutet cảm

biến lacircn cận Nhờ xaacutec định được caacutec nuacutet cảm biến lacircn cận caacutec nuacutet cảm biến coacute thể cacircn

bằng giữa cacircn bằng giữa cocircng suất của noacute vagrave nhiệm vụ thực hiện

Phần quản lyacute nhiệm vụ dugraveng để lagravem cacircn bằng vagrave lecircn kế hoạch caacutec nhiệm vụ cảm

biến trong một vugraveng xaacutec định Khocircng phải tất cả caacutec nuacutet cảm biến trong vugraveng đoacute đều

phải thực hiện nhiệm vụ cảm biến tại cugraveng một thời điểm Kết quả lagrave một số nuacutet cảm

biến thực hiện nhiều hơn caacutec nuacutet khaacutec tuỳ theo mức cocircng suất của noacute Những phần

quản lyacute nagravey lagrave cần thiết để caacutec nuacutet cảm biến coacute thể lagravem việc cugraveng nhau theo một caacutech

thức sử dụng hiệu quả cocircng suất chọn đường số liệu trong mạng cảm biến di động vagrave

phacircn chia tagravei nguyecircn giữa caacutec nuacutet cảm biến

Kiến truacutec mạng như trecircn goacutep phần quản lyacute năng lượng của caacutec nuacutet mạng đồng

thời duy trigrave hoạt động của toagraven mạng trong thời gian dagravei hơn

32 Giao thức chọn đường

321 Khoacute khăn trong giao thức chọn đường

Mặc dugrave caacutec ứng dụng của mạng WSN lagrave rất lớn tuy nhiecircn những mạng nagravey coacute

một số hạn chế như giới hạn về nguồn cocircng suất khả năng tiacutenh toaacuten vagrave độ rộng băng

thocircng Một số giao thức chọn đường quản lyacute cocircng suất vagrave trao đổi số liệu đatilde được

thiết kế cho WSN với yecircu cầu quan trọng nhất lagrave tiết kiệm được năng lượng

Một trong những mục tiecircu thiết kế chiacutenh của WSN lagrave keacuteo dagravei thời gian sống của

mạng vagrave traacutenh suy giảm kết nối nhờ caacutec kỹ thuật quản lyacute năng lượng Vấn đề nagravey cần

được giải quyết triệt để thigrave mới đạt được hiệu quả truyền tin trong WSN Caacutec giao thức

chọn đường trong WSN coacute thể khaacutec nhau tuỳ theo ứng dụng vagrave cấu truacutec mạng Tuy

nhiecircn việc chọn đường gặp phải những khoacute khăn như Phacircn bố nuacutet tiecircu thụ năng

lượng khocircng được lagravem mất độ chiacutenh xaacutec tiacutenh khocircng đồng nhất của nuacutet mạng tiacutenh

động của mạng khả năng định cỡ khả năng chống lỗi chất lượng dịch vụ

Phacircn bố nuacutet Việc phacircn bố nuacutet trong WSN phụ thuộc vagraveo ứng dụng vagrave coacute thể

được thực hiện bằng tay hoặc phacircn bố ngẫu nhiecircn Khi phacircn bố bằng tay số liệu được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 13

chọn đường thocircng qua caacutec đường đatilde định trước Tuy nhiecircn khi phacircn bố caacutec nuacutet ngẫu

nhiecircn sẽ tạo ra một cấu truacutec chọn đường đặc biệt (Ad-hoc)

Tiecircu thụ năng lượng khocircng được lagravem mất độ chiacutenh xaacutec Caacutec nuacutet cảm biến coacute

thể sử dụng quaacute caacutec giới hạn về cocircng suất để thực hiện tiacutenh toaacuten vagrave truyền tin trong

mocirci trường vocirc tuyến Thời gian sống của nuacutet mạng cảm biến phụ thuộc rất nhiều vagraveo

thời gian sử dụng của pin Trong WSN đa bước nhảy mỗi nuacutet đoacuteng hai vai trograve lagrave

truyền số liệu vagrave chọn đường Một số nuacutet cảm biến hoạt động sai chức năng do lỗi

nguồn cocircng suất coacute thể gacircy ra sự thay đổi cấu higravenh mạng nghiecircm trọng vagrave phải chọn

đường lại caacutec goacutei hoặc phải tổ chức lại mạng

Tiacutenh khocircng đồng nhất của nuacutet mạng Nghĩa lagrave caacutec nuacutet mạng coacute khả năng tiacutenh

toaacuten khả năng truyền tin vagrave coacute cocircng suất khaacutec nhau Khi đoacute sẽ gacircy khoacute khăn cho kỹ

thuật chọn đường

Khả năng chống lỗi Một số nuacutet cảm biến coacute thể bị lỗi hoặc bị ngắt do thiếu cocircng

suất hỏng phần cứng hoặc bị nhiễu mocirci trường Sự cố của caacutec nuacutet cảm biến khocircng

được ảnh hưởng tới nhiệm vụ của toagraven mạng cảm biến Nếu coacute nhiều nuacutet bị lỗi caacutec

giao thức chọn đường vagrave điều khiển truy cập mocirci trường (MAC) phải thagravenh lập caacutec

tuyến mới tới nuacutet gốc Việc nagravey coacute thể cần thiết phải điều chỉnh cocircng suất phaacutet vagrave tốc

độ tiacuten hiệu trecircn caacutec tuyến hiện tại để giảm sự tiecircu thụ năng lượng hoặc lagrave caacutec goacutei phải

chọn đường lại qua caacutec caacutec vugraveng mạng coacute cocircng suất khả dụng lớn hơn

Khả năng định cỡ Số lượng nuacutet mạng coacute thể lagrave hagraveng trăm hagraveng nghigraven hoặc

nhiều hơn Bất kỳ phương phaacutep chọn đường nagraveo cũng phải coacute khả năng lagravem việc với

một số lượng lớn caacutec nuacutet cảm biến như vậy

Tiacutenh động của mạng Trong nhiều nghiecircn cứu caacutec nuacutet cảm biến được coi lagrave cố

định Tuy nhiecircn trong một số ứng dụng cả nuacutet gốc vagrave caacutec nuacutet cảm biến coacute thể di

chuyển Khi đoacute caacutec bản tin chọn đường từ hoặc tới caacutec nuacutet di chuyển sẽ gặp phải caacutec

vần đề như đường liecircn lạc cấu higravenh mạng năng lượng độ rộng bănghellip

Chất lượng dịch vụ Khi năng lượng gần hết caacutec nuacutet mạng coacute thể yecircu cầu giảm

chất lượng caacutec kết quả để giảm mức tiecircu thụ năng lượng của nuacutet vagrave keacuteo dagravei thời gian

sống của toagraven mạng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 14

Mặc dugrave việc chọn đường gặp nhiều khoacute khăn nhưng khi coacute một giao thức chọn

đường tốt sẽ tiết kiệm thời gian truyền nhận thocircng tin giảm năng lượng tiecircu hao latildeng

phiacute do tắc nghẽn lỗi đường truyềnVigrave vậy người ta đatilde đưa ra một số giao thức chọn

đường magrave dưới đacircy sẽ trigravenh bầy

322 Caacutec giao thức chọn đường

Phần nagravey sẽ trigravenh bagravey về phương phaacutep chọn đường trong WSN Noacutei chung caacutec

giao thức chọn đường được chia lagravem 3 loại dựa vagraveo cấu truacutec mạng ngang hagraveng phacircn

cấp hoặc dựa vagraveo vị triacute

Trong chọn đường ngang hagraveng tất cả caacutec nuacutet thường coacute vai trograve hoặc chức năng

như nhau như cảm nhận truyền Chuacuteng sẽ thực hiện việc cảm nhận thocircng tin cần

thiết vagrave truyền số liệu về nuacutet gốc

Trong chọn đường phacircn cấp caacutec nuacutet sẽ đoacuteng vai trograve khaacutec nhau trong mạng sẽ coacute

nuacutet chủ đại diện cho từng nhoacutem caacutec nuacutet cảm biến để nhận số liệu từ caacutec nuacutet cảm biến

truyền tới Caacutec nuacutet chủ cũng tập hợp số liệu từ caacutec nuacutet trong nhoacutem của noacute trước khi

gửi số liệu đến nuacutet gốc Nuacutet chủ sẽ thay đổi khi bắt đầu chu kỳ lagravem việc mới vagrave sẽ thay

bằng nuacutet khaacutec coacute khả năng đảm nhận chức năng nagravey

Trong chọn đường dựa theo vị triacute thigrave vị triacute của caacutec nuacutet cảm biến sẽ được dugraveng để

chọn đường số liệu Giao thức chọn đường cograven coacute thể được phacircn loại dựa theo đa

đường yecircu cầu hỏiđaacutep QoS vagrave liecircn kết tuỳ thuộc vagraveo chế độ hoạt động Ngoagravei ra

cũng coacute thể chia thagravenh 3 loại chủ động tương taacutec hoặc lai gheacutep tuỳ thuộc vagraveo caacutech

thức magrave nguồn tigravem đường tời điacutech Một giao thức chọn đường được coi lagrave thiacutech ứng

nếu caacutec tham số của hệ thống coacute thể điều khiển được để phugrave hợp với caacutec trạng thaacutei

mạng hiện tại vagrave caacutec mức năng lượng khả dụng Một số giao thức chọn đường đatilde phaacutet

huy hiệu quả tiết kiệm tiecircu thụ năng lượng như LEACH

TEENampAPTEEN MECNampSVECN PEGASIS thuộc chọn đường phacircn cấp SPIN

Directed Diffusion CADR CUGAR thuộc chọn đường ngang hagraveng Trong đoacute đaacuteng

quan tacircm nhất lagrave giao thức chọn đường LEACH LEACH (Low Energy Adaptive

Clustering Hierarchy) - phacircn cấp nhoacutem thiacutech ứng cocircng suất thấp giao thức nagravey cho

pheacutep tiết kiệm năng lượng trong mạng WSN Mục điacutech của LEACH lagrave lựa chọn ngẫu

nhiecircn caacutec nuacutet cảm biến lagravem caacutec nuacutet chủ do đoacute việc tiecircu hao năng lượng khi liecircn lạc

với nuacutet gốc được trải đều cho tất cả caacutec nuacutet cảm biến trong mạng Quaacute trigravenh hoạt động

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 15

của LEACH được chia thagravenh 2 bước bước thiết lập vagrave bước ổn định Thời gian bước

ổn định keacuteo dagravei hơn so với thời gian của bước thiết lập để giảm thiểu phần điều khiển

Tại bước thiết lập sẽ xaacutec định nuacutet mạng nagraveo sẽ lagravem chủ Tại bước ổn định caacutec nuacutet cảm

biến bắt đầu cảm nhận vagrave truyền số liệu về nuacutet chủ nuacutet chủ cũng tập hợp số liệu từ caacutec

nuacutet trong nhoacutem trước khi gửi caacutec số liệu nagravey về nuacutet gốc Theo thử nghiệm mocirc phỏng

giao thức LEACH của mạng WSN coacute 160 nuacutet phacircn bố đều cocircng suất ban đầu của nuacutet

lagrave 30 Kết quả thu được lagrave khi truyền trực tiếp tới nuacutet gốc sau khoảng 470 chu kỳ

thời gian sẽ kết thuacutec truyền tin khi sử dụng giao thức LEACH sau khoảng 685 chu kỳ

thời gian mới kết thuacutec truyền tin Kết quả nagravey cho thấy đacircy lagrave một phương phaacutep chọn

đường phacircn cấp coacute khả năng tiết kiệm được năng lượng vagrave keacuteo dagravei thời gian sống của

mạng

Tuy nhiecircn cơ chế hoạt động của LEACH lagrave lựa chọn số liệu được tập trung vagrave

thực hiện theo chu kỳ Do đoacute giao thức nagravey chỉ thiacutech hợp với yecircu cầu giaacutem saacutet liecircn tục

bởi mạng cảm biến Với ứng dụng magrave người sử dụng khocircng cần tất cả caacutec số liệu ngay

lập tức thigrave việc truyền số liệu theo chu kỳ lagrave khocircng cần thiết vagrave coacute thể lagravem tiecircu tốn

năng lượng vocirc iacutech Giao thức LEACH cần tiếp tục được cải tiến để khắc phục hạn chế

33 Hoạt động truyền nhận khocircng dacircy

Đối với mạng cảm nhận khocircng dacircy thigrave năng lượng trở thagravenh một vấn đề được chuacute

yacute để duy trigrave hoạt động của hệ thống mạng vigrave caacutec nuacutet mạng độc lập chỉ được cung cấp

năng lượng từ một nguồn cố định (pin) Việc tiecircu thụ năng lượng thấp lagrave một nhu cầu

quan trọng cho caacutec hệ thống hoạt động bằng pin - khocircng được cung cấp năng lượng

thường xuyecircn Khi coacute một dograveng tiecircu thụ thấp thigrave thời gian sống của chuacuteng sẽ keacuteo dagravei

thecircm Hệ thống tiecircu thụ năng lượng thấp lagrave mục tiecircu cần đạt của mạng cảm nhận

khocircng dacircy sử dụng CC1010 Caacutec vấn đề đưa ra trong phần nagravey lagrave cơ sở cho việc viết

phần mềm tiết kiệm tiecircu thụ năng lượng cho nuacutet mạng cảm nhận khocircng dacircy

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 16

CHƢƠNG 2 MAtilde SỬA LỖI

Mạng phải coacute khả năng truyền chiacutenh xaacutec dữ liệu từ thiết bị nagravey tới thiết bị khaacutec

Một hệ thống khocircng bảo đảm dữ liệu nhận giống như dữ liệu truyền lagrave hệ thống khocircng

sử dụng được Coacute nhiều nhacircn tố như tạp nhiễu đường dacircy coacute thể lagravem hỏng một hoặc

nhiều bit của khối dữ liệu đang truyền Một hệ thống thực sự dugraveng được phải coacute cơ cấu

để phaacutet hiện vagrave sửa caacutec lỗi đoacute

Việc phaacutet hiện vagrave sửa lỗi được trang bị ở lớp liecircn kết dữ liệu hoặc lớp giao vận

tương ứng trong mocirc higravenh OSI

1 CAacuteC CƠ CHẾ TRUYỀN DỮ LIỆU

11 Truyền dữ liệu song song

bull Mỗi bit dugraveng một đường truyền riecircng Nếu coacute 8 bits được truyền đồng thời sẽ

yecircu cầu 8 đường truyền độc lập

bull Để truyền dữ liệu trecircn một đường truyền song song một kecircnh truyền riecircng

được dugraveng để thocircng baacuteo cho becircn nhận biết khi nagraveo dữ liệu coacute sẵn (clock signal)

bull Cần thecircm một kecircnh truyền khaacutec để becircn nhận baacuteo cho becircn gởi biết lagrave đatilde sẵn

sagraveng để nhận dữ liệu kế tiếp

12 Truyền dữ liệu tuần tự

bull Tất cả caacutec bit đều được truyền trecircn cugraveng một đường truyền bit nagravey tiếp theo

sau bit kia

bull Khocircng cần caacutec đường truyền riecircng cho tiacuten hiệu đồng bộ vagrave tiacuten hiệu bắt tay (caacutec

tiacuten hiệu nagravey được matilde hoacutea vagraveo dữ liệu truyền đi)

bull Vấn đề định thời (timing) đogravei hỏi phải coacute cơ chế đồng bộ giữa becircn truyền vagrave

becircn nhận

bull 2 caacutech giải quyết

- Bất đồng bộ mỗi kyacute tự được đồng bộ bởi start vagrave stop bit

- Đồng bộ mỗi khối kyacute tự được đồng bộ dugraveng cờ

13 Truyền bất đồng bộ

bull Dữ liệu được truyền theo từng kyacute tự để traacutenh việc mất đồng bộ khi nhận được chuỗi

bit quaacute dagravei

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 17

- 5 đến 8 bits

- Chỉ cần giữ đồng bộ trong một kyacute tự

- Taacutei đồng bộ cho mỗi kyacute tự mới

bull Hagravenh vi

- Đối với dograveng dữ liệu đều khoảng caacutech giữa caacutec kyacute tự lagrave đồng nhất (bằng chiều dagravei

của phần tử stop)

- Ở trạng thaacutei rỗi bộ thu phaacutet hiện sự chuyển 1 đến 0

- Lấy mẫu 7 khoảng kế tiếp (chiều dagravei kyacute tự)

- Đợi việc chuyển 1 đến 0 cho kyacute tự kế tiếp

bull Hiệu suất

- Đơn giản

- Rẻ

- Phiacute tổn 2 hoặc 3 bit cho một kyacute tự (~20)

- Thiacutech hợp cho dữ liệu với khoảng trống giữa caacutec kyacute tự lớn (dữ liệu nhập từ bagraven

phiacutem)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 18

bull Đồng bộ khung (frame synchronization) dugraveng caacutec kyacute tự điều khiển (STX ETX

DLE)

14 Truyền đồng bộ

bull Truyền khocircng cần startstop

bull Phải coacute tiacuten hiệu đồng bộ

bull Đồng bộ bit (bit synchronization) sử dụng caacutec phƣơng phaacutep sau

- Tiacutech hợp xung clock vagraveo dữ liệu truyền đi

+ Tiacutech hợp thocircng tin đồng bộ (clock) vagraveo trong dữ liệu truyền

+ Đầu nhận sẽ taacutech thocircng tin đồng bộ dựa vagraveo dữ liệu nhận được

+ Manchester differential Manchester tần số soacuteng mang (analog)

- Sử dụng đường clock riecircng

+ Dugraveng một đường tiacuten hiệu đồng bộ riecircng biệt

+ Một becircn (phaacutet hoặc nhận) tạo ra caacutec xung clock đồng bộ với caacutec bit truyền đi

trecircn đường clock riecircng

+ Becircn cograven lại dugraveng tiacuten hiệu trecircn đường clock riecircng để lagravem clock

+ Thiacutech hợp khi truyền trong khoảng caacutech ngắn

+ Tiacuten hiệu đồng bộ dễ bị suy giảm trecircn đường truyền

bull Đồng bộ frame

- Mỗi block dữ liệu được bắt đầu bằng một cờ gọi lagrave preamble kết thuacutec bằng

một cờ gọi lagrave postamble

- Preamble vagrave postamble lagrave một mẫu bit (bit pattern) được quy định sẵn

+ Một chuỗi caacutec kyacute tự SYN (16h trong bảng matilde ASCII)

+ Mẫu bit 11111110

- Frame dữ liệu + preamble + postamble + thocircng tin điều khiển

- Hiệu quả hơn so với truyền bất đồng bộ (phiacute tổn thấp hơn cho caacutec bit điều

khiển)

+ HDLC 48 bit điều khiển cho mỗi block 1000 kyacute tự (8000 bit)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 19

2 VẤN ĐỀ XỬ LYacute LỖI

11 Caacutec lỗi xẩy ra trecircn đường truyền

bull Mocirci trƣờng truyền dẫn bị nhiễu (điện từ hellip) dẫn đến dữ liệu nhận coacute lỗi

(caacutec bit bị thay đổi)

bull 2 caacutech khắc phục khi phaacutet hiện coacute lỗi

- Forward error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự hoặc caacutec

frame truyền đi để becircn nhận coacute thể phaacutet hiện khi nagraveo coacute lỗi va lỗi nằm ở đacircu để sửa

(coacute khả năng sửa lỗi)

- Feedback (backward) error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự

hoặc caacutec frame truyền đi chỉ đủ để phaacutet hiện khi nagraveo coacute lỗi (khocircng coacute khả năng sửa

lỗi) Cơ chế yecircu cầu truyền lại kyacute tựframe sai được dugraveng trong trường hợp nagravey

bull Phacircn loại lỗi

- Lỗi 1 bit

+ Chỉ 1 bit bị lỗi khocircng ảnh hưởng caacutec bit xung quanh

+ Thường xảy ra do nhiễu trắng

- Lỗi chugravem (busrt error)

+ Một chuỗi liecircn tục B bit trong đoacute bit đầu bit cuối vagrave caacutec bit bất kigrave nằm giữa

chuỗi đều bị lỗi

+ Thường xảy ra do nhiễu xung

+ Ảnh hưởng cagraveng lớn đối với tốc độ truyền cao

Bit error rate (BER) xaacutec suất một bit nhận đƣợc bị lỗi

12 Cơ chế phaacutet hiện lỗi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 10

C2WSNs vagrave cocircng nghệ ZigBee đặc điểm nổi bật lagrave dugraveng caacutec cocircng nghệ microsensor

tiecircu thụ rất iacutet cocircng suất thu phaacutet vocirc tuyến kỹ thuật liecircn lạc vả cảm biến khocircng dacircy đa

chức năng

125 Quản lyacute quaacute trigravenh tự động trong cocircng nghiệp

Caacutec ứng dụng trong sản xuất cocircng nghiệp gồm điều khiển quản lyacute hiệu suất vagrave

an toagraven Caacutec cảm biến đặt trong mocirci trường lagravem việc giaacutem saacutet quaacute trigravenh sản xuất chất

lượng sản phẩm kiểm soaacutet mocirci trường lagravem việc quản lyacute nhacircn viecircnhellipdữ liệu được đưa

về trung tacircm để người quản lyacute coacute thể đưa ra caacutec quyết định kịp thời

126 Caacutec ứng dụng trong y học

Một số bệnh viện vagrave trung tacircm y tế đang ứng dụng cocircng nghệ WSNs vagraveo tiền

chẩn đoaacuten chăm soacutec sức khỏe đối phoacute với caacutec dịch bệnh vagrave phục hồi chức năng cho

người bệnh WSNs cho pheacutep theo dotildei tigravenh trạng của caacutec bệnh nhacircn kinh niecircn ngay tại

nhagrave lagravem cho việc phacircn tiacutech vagrave điều trị thuận tiện hơn ruacutet ngắn thời gian điều trị tại

bệnh viện WSNs cograven cho pheacutep thu thập thocircng tin y tế qua thời gian dagravei thagravenh caacutec cơ

sở dữ liệu quan trọng caacutec biện phaacutep can thiệp hiệu quả

2 TRUYỀN DỮ LIỆU GIỮA CAacuteC NUacuteT MẠNG NGUYEcircN TẮC

Một nuacutet cảm nhận khocircng dacircy giao tiếp với caacutec nuacutet cảm nhận khaacutec bằng việc sử

dụng net work - stack

- Ở lớp ứng dụng (Application) dữ liệu coacute thể được gửi ở dạng goacutei do chip radio

ở lớp phần cứng coacute thể truyền vagrave nhận dữ liệu dạng byte necircn caacutec goacutei tin nagravey cần được

phacircn đoạn trước khi chuacuteng được gửi vagrave phải được gheacutep lại sau khi chuacuteng được nhận

Lớp điều khiển đa truy cập Media - Access - Control (MAC) chuyển tiếp lớp ứng

dụng với radio chip

+ Khi 1 goacutei tin được gửi đi nhờ 1 ứng dụng goacutei tin được phacircn nhỏ thagravenh caacutec

byte 1 chuỗi liecircn tiếp caacutec byte đặc biệt được gọi lagrave Preamble (phần mở đầu) được gửi

đi trước caacutec byte dữ liệu do đoacute phiacutea thu coacute thể đồng bộ vagrave xaacutec định phần bắt đầu của 1

goacutei tin

+ Sau khi nhận 1 byte radio chip matilde hoacutea bit dữ liệu vagrave truyền chuacuteng Ở phiacutea

nhận radio chip baacuteo hiệu việc đến của caacutec byte sau khi xaacutec định vagrave giải matilde caacutecbit dữ

liệu

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 11

+ Sau đoacute lớp MAC hợp lại goacutei tin bắt đầu từ goacutei đầu tiecircn sau goacutei preamble Tiếp

theo lớp MAC baacuteo hiệu việc đến của goacutei tin cho lớp trecircn

Caacutec byte dữ liệu coacute thể được matilde hoacutea một caacutech tugravey yacute sau khi được phacircn đoạn cugraveng

với matilde sửa lỗi (ECC ) Matilde sửa lỗi ECC được dugraveng để khocirci phục caacutec bit dữ liệu trong

trường hợp coacute số lượng nhỏ bit lỗi Khi caacutec byte dữ liệu đoacute tới bộ thu tại đacircy noacute được

giải matilde để trở về dạng caacutec byte dữ liệu ban đầu

3 TIẾT KIỆM VAgrave TIEcircU THỤ NĂNG LƢỢNG

Năng lượng tiecircu thụ phụ thuộc vagraveo nhiều yếu tố sử dụng khaacutec nhau như Kiến

truacutec giao thức mạng Giao thức chọn đường Hoạt động truyền nhận khocircng dacircy

31 Kiến truacutec giao thức mạng

Kiến truacutec giao thức nagravey kết hợp giữa năng lượng vagrave chọn đường kết hợp số liệu

với caacutec giao thức mạng sử dụng năng lượng hiệu quả Kiến truacutec giao thức bao gồm

lớp vật lyacute lớp liecircn kết số liệu lớp mạng lớp truyền tải lớp ứng dụng phần quản lyacute

cocircng suất phần quản lyacute di động vagrave phần quản lyacute nhiệm vụ

Lớp vật lyacute cung cấp caacutec kỹ thuật điều chế phaacutet vagrave thu Vigrave mocirci trường coacute tạp acircm

vagrave caacutec nuacutet cảm biến coacute thể di động giao thức điều khiển truy cập mocirci trường (MAC)

phải xeacutet đến vấn đề cocircng suất vagrave phải coacute khả năng tối thiểu hoaacute việc va chạm với

thocircng tin quản baacute của caacutec nuacutet lacircn cận

Lớp mạng quan tacircm đến việc chọn đường số liệu được cung cấp bởi lớp truyền

tải

Lớp truyền tải giuacutep duy trigrave luồng số liệu nếu ứng dụng mạng cảm biến yecircu cầu

Tuỳ theo nhiệm vụ cảm biến caacutec loại phần mềm khaacutec nhau coacute thể được xacircy dựng vagrave

sử dụng ở lớp ứng dụng Ngoagravei ra caacutec phần quản lyacute cocircng suất di chuyển vagrave nhiệm vụ

sẽ giaacutem saacutet việc sử dụng cocircng suất sự di chuyển vagrave thực hiện nhiệm vụ giữa caacutec nuacutet

cảm biến Những phần nagravey giuacutep caacutec nuacutet cảm biến phối hợp nhiệm vụ cảm biến vagrave tiecircu

thụ năng lượng tổng thể thấp hơn

Phần quản lyacute năng lượng điều khiển việc sử dụng năng lượng của nuacutet mạng Viacute

dụ nuacutet mạng coacute thể tắt khối thu của noacute sau khi thu được một bản tin từ một nuacutet lacircn

cận Điều nagravey giuacutep traacutenh tạo ra caacutec bản tin giống nhau Cũng vậy khi mức năng lượng

của nuacutet mạng thấp noacute sẽ phaacutet quảng baacute tới caacutec nuacutet lacircn cận để thocircng baacuteo noacute coacute mức

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 12

năng lượng thấp vagrave khocircng thể tham gia vagraveo caacutec bản tin chọn đường Phần năng lượng

cograven lại sẽ dagravenh riecircng cho nhiệm vụ cảm biến

Phần quản lyacute di chuyển phaacutet hiện vagrave ghi lại sự di chuyển của caacutec nuacutet cảm biến để

duy trigrave tuyến tới người sử dụng vagrave caacutec nuacutet cảm biến coacute thể lưu vết của caacutec nuacutet cảm

biến lacircn cận Nhờ xaacutec định được caacutec nuacutet cảm biến lacircn cận caacutec nuacutet cảm biến coacute thể cacircn

bằng giữa cacircn bằng giữa cocircng suất của noacute vagrave nhiệm vụ thực hiện

Phần quản lyacute nhiệm vụ dugraveng để lagravem cacircn bằng vagrave lecircn kế hoạch caacutec nhiệm vụ cảm

biến trong một vugraveng xaacutec định Khocircng phải tất cả caacutec nuacutet cảm biến trong vugraveng đoacute đều

phải thực hiện nhiệm vụ cảm biến tại cugraveng một thời điểm Kết quả lagrave một số nuacutet cảm

biến thực hiện nhiều hơn caacutec nuacutet khaacutec tuỳ theo mức cocircng suất của noacute Những phần

quản lyacute nagravey lagrave cần thiết để caacutec nuacutet cảm biến coacute thể lagravem việc cugraveng nhau theo một caacutech

thức sử dụng hiệu quả cocircng suất chọn đường số liệu trong mạng cảm biến di động vagrave

phacircn chia tagravei nguyecircn giữa caacutec nuacutet cảm biến

Kiến truacutec mạng như trecircn goacutep phần quản lyacute năng lượng của caacutec nuacutet mạng đồng

thời duy trigrave hoạt động của toagraven mạng trong thời gian dagravei hơn

32 Giao thức chọn đường

321 Khoacute khăn trong giao thức chọn đường

Mặc dugrave caacutec ứng dụng của mạng WSN lagrave rất lớn tuy nhiecircn những mạng nagravey coacute

một số hạn chế như giới hạn về nguồn cocircng suất khả năng tiacutenh toaacuten vagrave độ rộng băng

thocircng Một số giao thức chọn đường quản lyacute cocircng suất vagrave trao đổi số liệu đatilde được

thiết kế cho WSN với yecircu cầu quan trọng nhất lagrave tiết kiệm được năng lượng

Một trong những mục tiecircu thiết kế chiacutenh của WSN lagrave keacuteo dagravei thời gian sống của

mạng vagrave traacutenh suy giảm kết nối nhờ caacutec kỹ thuật quản lyacute năng lượng Vấn đề nagravey cần

được giải quyết triệt để thigrave mới đạt được hiệu quả truyền tin trong WSN Caacutec giao thức

chọn đường trong WSN coacute thể khaacutec nhau tuỳ theo ứng dụng vagrave cấu truacutec mạng Tuy

nhiecircn việc chọn đường gặp phải những khoacute khăn như Phacircn bố nuacutet tiecircu thụ năng

lượng khocircng được lagravem mất độ chiacutenh xaacutec tiacutenh khocircng đồng nhất của nuacutet mạng tiacutenh

động của mạng khả năng định cỡ khả năng chống lỗi chất lượng dịch vụ

Phacircn bố nuacutet Việc phacircn bố nuacutet trong WSN phụ thuộc vagraveo ứng dụng vagrave coacute thể

được thực hiện bằng tay hoặc phacircn bố ngẫu nhiecircn Khi phacircn bố bằng tay số liệu được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 13

chọn đường thocircng qua caacutec đường đatilde định trước Tuy nhiecircn khi phacircn bố caacutec nuacutet ngẫu

nhiecircn sẽ tạo ra một cấu truacutec chọn đường đặc biệt (Ad-hoc)

Tiecircu thụ năng lượng khocircng được lagravem mất độ chiacutenh xaacutec Caacutec nuacutet cảm biến coacute

thể sử dụng quaacute caacutec giới hạn về cocircng suất để thực hiện tiacutenh toaacuten vagrave truyền tin trong

mocirci trường vocirc tuyến Thời gian sống của nuacutet mạng cảm biến phụ thuộc rất nhiều vagraveo

thời gian sử dụng của pin Trong WSN đa bước nhảy mỗi nuacutet đoacuteng hai vai trograve lagrave

truyền số liệu vagrave chọn đường Một số nuacutet cảm biến hoạt động sai chức năng do lỗi

nguồn cocircng suất coacute thể gacircy ra sự thay đổi cấu higravenh mạng nghiecircm trọng vagrave phải chọn

đường lại caacutec goacutei hoặc phải tổ chức lại mạng

Tiacutenh khocircng đồng nhất của nuacutet mạng Nghĩa lagrave caacutec nuacutet mạng coacute khả năng tiacutenh

toaacuten khả năng truyền tin vagrave coacute cocircng suất khaacutec nhau Khi đoacute sẽ gacircy khoacute khăn cho kỹ

thuật chọn đường

Khả năng chống lỗi Một số nuacutet cảm biến coacute thể bị lỗi hoặc bị ngắt do thiếu cocircng

suất hỏng phần cứng hoặc bị nhiễu mocirci trường Sự cố của caacutec nuacutet cảm biến khocircng

được ảnh hưởng tới nhiệm vụ của toagraven mạng cảm biến Nếu coacute nhiều nuacutet bị lỗi caacutec

giao thức chọn đường vagrave điều khiển truy cập mocirci trường (MAC) phải thagravenh lập caacutec

tuyến mới tới nuacutet gốc Việc nagravey coacute thể cần thiết phải điều chỉnh cocircng suất phaacutet vagrave tốc

độ tiacuten hiệu trecircn caacutec tuyến hiện tại để giảm sự tiecircu thụ năng lượng hoặc lagrave caacutec goacutei phải

chọn đường lại qua caacutec caacutec vugraveng mạng coacute cocircng suất khả dụng lớn hơn

Khả năng định cỡ Số lượng nuacutet mạng coacute thể lagrave hagraveng trăm hagraveng nghigraven hoặc

nhiều hơn Bất kỳ phương phaacutep chọn đường nagraveo cũng phải coacute khả năng lagravem việc với

một số lượng lớn caacutec nuacutet cảm biến như vậy

Tiacutenh động của mạng Trong nhiều nghiecircn cứu caacutec nuacutet cảm biến được coi lagrave cố

định Tuy nhiecircn trong một số ứng dụng cả nuacutet gốc vagrave caacutec nuacutet cảm biến coacute thể di

chuyển Khi đoacute caacutec bản tin chọn đường từ hoặc tới caacutec nuacutet di chuyển sẽ gặp phải caacutec

vần đề như đường liecircn lạc cấu higravenh mạng năng lượng độ rộng bănghellip

Chất lượng dịch vụ Khi năng lượng gần hết caacutec nuacutet mạng coacute thể yecircu cầu giảm

chất lượng caacutec kết quả để giảm mức tiecircu thụ năng lượng của nuacutet vagrave keacuteo dagravei thời gian

sống của toagraven mạng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 14

Mặc dugrave việc chọn đường gặp nhiều khoacute khăn nhưng khi coacute một giao thức chọn

đường tốt sẽ tiết kiệm thời gian truyền nhận thocircng tin giảm năng lượng tiecircu hao latildeng

phiacute do tắc nghẽn lỗi đường truyềnVigrave vậy người ta đatilde đưa ra một số giao thức chọn

đường magrave dưới đacircy sẽ trigravenh bầy

322 Caacutec giao thức chọn đường

Phần nagravey sẽ trigravenh bagravey về phương phaacutep chọn đường trong WSN Noacutei chung caacutec

giao thức chọn đường được chia lagravem 3 loại dựa vagraveo cấu truacutec mạng ngang hagraveng phacircn

cấp hoặc dựa vagraveo vị triacute

Trong chọn đường ngang hagraveng tất cả caacutec nuacutet thường coacute vai trograve hoặc chức năng

như nhau như cảm nhận truyền Chuacuteng sẽ thực hiện việc cảm nhận thocircng tin cần

thiết vagrave truyền số liệu về nuacutet gốc

Trong chọn đường phacircn cấp caacutec nuacutet sẽ đoacuteng vai trograve khaacutec nhau trong mạng sẽ coacute

nuacutet chủ đại diện cho từng nhoacutem caacutec nuacutet cảm biến để nhận số liệu từ caacutec nuacutet cảm biến

truyền tới Caacutec nuacutet chủ cũng tập hợp số liệu từ caacutec nuacutet trong nhoacutem của noacute trước khi

gửi số liệu đến nuacutet gốc Nuacutet chủ sẽ thay đổi khi bắt đầu chu kỳ lagravem việc mới vagrave sẽ thay

bằng nuacutet khaacutec coacute khả năng đảm nhận chức năng nagravey

Trong chọn đường dựa theo vị triacute thigrave vị triacute của caacutec nuacutet cảm biến sẽ được dugraveng để

chọn đường số liệu Giao thức chọn đường cograven coacute thể được phacircn loại dựa theo đa

đường yecircu cầu hỏiđaacutep QoS vagrave liecircn kết tuỳ thuộc vagraveo chế độ hoạt động Ngoagravei ra

cũng coacute thể chia thagravenh 3 loại chủ động tương taacutec hoặc lai gheacutep tuỳ thuộc vagraveo caacutech

thức magrave nguồn tigravem đường tời điacutech Một giao thức chọn đường được coi lagrave thiacutech ứng

nếu caacutec tham số của hệ thống coacute thể điều khiển được để phugrave hợp với caacutec trạng thaacutei

mạng hiện tại vagrave caacutec mức năng lượng khả dụng Một số giao thức chọn đường đatilde phaacutet

huy hiệu quả tiết kiệm tiecircu thụ năng lượng như LEACH

TEENampAPTEEN MECNampSVECN PEGASIS thuộc chọn đường phacircn cấp SPIN

Directed Diffusion CADR CUGAR thuộc chọn đường ngang hagraveng Trong đoacute đaacuteng

quan tacircm nhất lagrave giao thức chọn đường LEACH LEACH (Low Energy Adaptive

Clustering Hierarchy) - phacircn cấp nhoacutem thiacutech ứng cocircng suất thấp giao thức nagravey cho

pheacutep tiết kiệm năng lượng trong mạng WSN Mục điacutech của LEACH lagrave lựa chọn ngẫu

nhiecircn caacutec nuacutet cảm biến lagravem caacutec nuacutet chủ do đoacute việc tiecircu hao năng lượng khi liecircn lạc

với nuacutet gốc được trải đều cho tất cả caacutec nuacutet cảm biến trong mạng Quaacute trigravenh hoạt động

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 15

của LEACH được chia thagravenh 2 bước bước thiết lập vagrave bước ổn định Thời gian bước

ổn định keacuteo dagravei hơn so với thời gian của bước thiết lập để giảm thiểu phần điều khiển

Tại bước thiết lập sẽ xaacutec định nuacutet mạng nagraveo sẽ lagravem chủ Tại bước ổn định caacutec nuacutet cảm

biến bắt đầu cảm nhận vagrave truyền số liệu về nuacutet chủ nuacutet chủ cũng tập hợp số liệu từ caacutec

nuacutet trong nhoacutem trước khi gửi caacutec số liệu nagravey về nuacutet gốc Theo thử nghiệm mocirc phỏng

giao thức LEACH của mạng WSN coacute 160 nuacutet phacircn bố đều cocircng suất ban đầu của nuacutet

lagrave 30 Kết quả thu được lagrave khi truyền trực tiếp tới nuacutet gốc sau khoảng 470 chu kỳ

thời gian sẽ kết thuacutec truyền tin khi sử dụng giao thức LEACH sau khoảng 685 chu kỳ

thời gian mới kết thuacutec truyền tin Kết quả nagravey cho thấy đacircy lagrave một phương phaacutep chọn

đường phacircn cấp coacute khả năng tiết kiệm được năng lượng vagrave keacuteo dagravei thời gian sống của

mạng

Tuy nhiecircn cơ chế hoạt động của LEACH lagrave lựa chọn số liệu được tập trung vagrave

thực hiện theo chu kỳ Do đoacute giao thức nagravey chỉ thiacutech hợp với yecircu cầu giaacutem saacutet liecircn tục

bởi mạng cảm biến Với ứng dụng magrave người sử dụng khocircng cần tất cả caacutec số liệu ngay

lập tức thigrave việc truyền số liệu theo chu kỳ lagrave khocircng cần thiết vagrave coacute thể lagravem tiecircu tốn

năng lượng vocirc iacutech Giao thức LEACH cần tiếp tục được cải tiến để khắc phục hạn chế

33 Hoạt động truyền nhận khocircng dacircy

Đối với mạng cảm nhận khocircng dacircy thigrave năng lượng trở thagravenh một vấn đề được chuacute

yacute để duy trigrave hoạt động của hệ thống mạng vigrave caacutec nuacutet mạng độc lập chỉ được cung cấp

năng lượng từ một nguồn cố định (pin) Việc tiecircu thụ năng lượng thấp lagrave một nhu cầu

quan trọng cho caacutec hệ thống hoạt động bằng pin - khocircng được cung cấp năng lượng

thường xuyecircn Khi coacute một dograveng tiecircu thụ thấp thigrave thời gian sống của chuacuteng sẽ keacuteo dagravei

thecircm Hệ thống tiecircu thụ năng lượng thấp lagrave mục tiecircu cần đạt của mạng cảm nhận

khocircng dacircy sử dụng CC1010 Caacutec vấn đề đưa ra trong phần nagravey lagrave cơ sở cho việc viết

phần mềm tiết kiệm tiecircu thụ năng lượng cho nuacutet mạng cảm nhận khocircng dacircy

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 16

CHƢƠNG 2 MAtilde SỬA LỖI

Mạng phải coacute khả năng truyền chiacutenh xaacutec dữ liệu từ thiết bị nagravey tới thiết bị khaacutec

Một hệ thống khocircng bảo đảm dữ liệu nhận giống như dữ liệu truyền lagrave hệ thống khocircng

sử dụng được Coacute nhiều nhacircn tố như tạp nhiễu đường dacircy coacute thể lagravem hỏng một hoặc

nhiều bit của khối dữ liệu đang truyền Một hệ thống thực sự dugraveng được phải coacute cơ cấu

để phaacutet hiện vagrave sửa caacutec lỗi đoacute

Việc phaacutet hiện vagrave sửa lỗi được trang bị ở lớp liecircn kết dữ liệu hoặc lớp giao vận

tương ứng trong mocirc higravenh OSI

1 CAacuteC CƠ CHẾ TRUYỀN DỮ LIỆU

11 Truyền dữ liệu song song

bull Mỗi bit dugraveng một đường truyền riecircng Nếu coacute 8 bits được truyền đồng thời sẽ

yecircu cầu 8 đường truyền độc lập

bull Để truyền dữ liệu trecircn một đường truyền song song một kecircnh truyền riecircng

được dugraveng để thocircng baacuteo cho becircn nhận biết khi nagraveo dữ liệu coacute sẵn (clock signal)

bull Cần thecircm một kecircnh truyền khaacutec để becircn nhận baacuteo cho becircn gởi biết lagrave đatilde sẵn

sagraveng để nhận dữ liệu kế tiếp

12 Truyền dữ liệu tuần tự

bull Tất cả caacutec bit đều được truyền trecircn cugraveng một đường truyền bit nagravey tiếp theo

sau bit kia

bull Khocircng cần caacutec đường truyền riecircng cho tiacuten hiệu đồng bộ vagrave tiacuten hiệu bắt tay (caacutec

tiacuten hiệu nagravey được matilde hoacutea vagraveo dữ liệu truyền đi)

bull Vấn đề định thời (timing) đogravei hỏi phải coacute cơ chế đồng bộ giữa becircn truyền vagrave

becircn nhận

bull 2 caacutech giải quyết

- Bất đồng bộ mỗi kyacute tự được đồng bộ bởi start vagrave stop bit

- Đồng bộ mỗi khối kyacute tự được đồng bộ dugraveng cờ

13 Truyền bất đồng bộ

bull Dữ liệu được truyền theo từng kyacute tự để traacutenh việc mất đồng bộ khi nhận được chuỗi

bit quaacute dagravei

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 17

- 5 đến 8 bits

- Chỉ cần giữ đồng bộ trong một kyacute tự

- Taacutei đồng bộ cho mỗi kyacute tự mới

bull Hagravenh vi

- Đối với dograveng dữ liệu đều khoảng caacutech giữa caacutec kyacute tự lagrave đồng nhất (bằng chiều dagravei

của phần tử stop)

- Ở trạng thaacutei rỗi bộ thu phaacutet hiện sự chuyển 1 đến 0

- Lấy mẫu 7 khoảng kế tiếp (chiều dagravei kyacute tự)

- Đợi việc chuyển 1 đến 0 cho kyacute tự kế tiếp

bull Hiệu suất

- Đơn giản

- Rẻ

- Phiacute tổn 2 hoặc 3 bit cho một kyacute tự (~20)

- Thiacutech hợp cho dữ liệu với khoảng trống giữa caacutec kyacute tự lớn (dữ liệu nhập từ bagraven

phiacutem)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 18

bull Đồng bộ khung (frame synchronization) dugraveng caacutec kyacute tự điều khiển (STX ETX

DLE)

14 Truyền đồng bộ

bull Truyền khocircng cần startstop

bull Phải coacute tiacuten hiệu đồng bộ

bull Đồng bộ bit (bit synchronization) sử dụng caacutec phƣơng phaacutep sau

- Tiacutech hợp xung clock vagraveo dữ liệu truyền đi

+ Tiacutech hợp thocircng tin đồng bộ (clock) vagraveo trong dữ liệu truyền

+ Đầu nhận sẽ taacutech thocircng tin đồng bộ dựa vagraveo dữ liệu nhận được

+ Manchester differential Manchester tần số soacuteng mang (analog)

- Sử dụng đường clock riecircng

+ Dugraveng một đường tiacuten hiệu đồng bộ riecircng biệt

+ Một becircn (phaacutet hoặc nhận) tạo ra caacutec xung clock đồng bộ với caacutec bit truyền đi

trecircn đường clock riecircng

+ Becircn cograven lại dugraveng tiacuten hiệu trecircn đường clock riecircng để lagravem clock

+ Thiacutech hợp khi truyền trong khoảng caacutech ngắn

+ Tiacuten hiệu đồng bộ dễ bị suy giảm trecircn đường truyền

bull Đồng bộ frame

- Mỗi block dữ liệu được bắt đầu bằng một cờ gọi lagrave preamble kết thuacutec bằng

một cờ gọi lagrave postamble

- Preamble vagrave postamble lagrave một mẫu bit (bit pattern) được quy định sẵn

+ Một chuỗi caacutec kyacute tự SYN (16h trong bảng matilde ASCII)

+ Mẫu bit 11111110

- Frame dữ liệu + preamble + postamble + thocircng tin điều khiển

- Hiệu quả hơn so với truyền bất đồng bộ (phiacute tổn thấp hơn cho caacutec bit điều

khiển)

+ HDLC 48 bit điều khiển cho mỗi block 1000 kyacute tự (8000 bit)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 19

2 VẤN ĐỀ XỬ LYacute LỖI

11 Caacutec lỗi xẩy ra trecircn đường truyền

bull Mocirci trƣờng truyền dẫn bị nhiễu (điện từ hellip) dẫn đến dữ liệu nhận coacute lỗi

(caacutec bit bị thay đổi)

bull 2 caacutech khắc phục khi phaacutet hiện coacute lỗi

- Forward error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự hoặc caacutec

frame truyền đi để becircn nhận coacute thể phaacutet hiện khi nagraveo coacute lỗi va lỗi nằm ở đacircu để sửa

(coacute khả năng sửa lỗi)

- Feedback (backward) error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự

hoặc caacutec frame truyền đi chỉ đủ để phaacutet hiện khi nagraveo coacute lỗi (khocircng coacute khả năng sửa

lỗi) Cơ chế yecircu cầu truyền lại kyacute tựframe sai được dugraveng trong trường hợp nagravey

bull Phacircn loại lỗi

- Lỗi 1 bit

+ Chỉ 1 bit bị lỗi khocircng ảnh hưởng caacutec bit xung quanh

+ Thường xảy ra do nhiễu trắng

- Lỗi chugravem (busrt error)

+ Một chuỗi liecircn tục B bit trong đoacute bit đầu bit cuối vagrave caacutec bit bất kigrave nằm giữa

chuỗi đều bị lỗi

+ Thường xảy ra do nhiễu xung

+ Ảnh hưởng cagraveng lớn đối với tốc độ truyền cao

Bit error rate (BER) xaacutec suất một bit nhận đƣợc bị lỗi

12 Cơ chế phaacutet hiện lỗi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 11

+ Sau đoacute lớp MAC hợp lại goacutei tin bắt đầu từ goacutei đầu tiecircn sau goacutei preamble Tiếp

theo lớp MAC baacuteo hiệu việc đến của goacutei tin cho lớp trecircn

Caacutec byte dữ liệu coacute thể được matilde hoacutea một caacutech tugravey yacute sau khi được phacircn đoạn cugraveng

với matilde sửa lỗi (ECC ) Matilde sửa lỗi ECC được dugraveng để khocirci phục caacutec bit dữ liệu trong

trường hợp coacute số lượng nhỏ bit lỗi Khi caacutec byte dữ liệu đoacute tới bộ thu tại đacircy noacute được

giải matilde để trở về dạng caacutec byte dữ liệu ban đầu

3 TIẾT KIỆM VAgrave TIEcircU THỤ NĂNG LƢỢNG

Năng lượng tiecircu thụ phụ thuộc vagraveo nhiều yếu tố sử dụng khaacutec nhau như Kiến

truacutec giao thức mạng Giao thức chọn đường Hoạt động truyền nhận khocircng dacircy

31 Kiến truacutec giao thức mạng

Kiến truacutec giao thức nagravey kết hợp giữa năng lượng vagrave chọn đường kết hợp số liệu

với caacutec giao thức mạng sử dụng năng lượng hiệu quả Kiến truacutec giao thức bao gồm

lớp vật lyacute lớp liecircn kết số liệu lớp mạng lớp truyền tải lớp ứng dụng phần quản lyacute

cocircng suất phần quản lyacute di động vagrave phần quản lyacute nhiệm vụ

Lớp vật lyacute cung cấp caacutec kỹ thuật điều chế phaacutet vagrave thu Vigrave mocirci trường coacute tạp acircm

vagrave caacutec nuacutet cảm biến coacute thể di động giao thức điều khiển truy cập mocirci trường (MAC)

phải xeacutet đến vấn đề cocircng suất vagrave phải coacute khả năng tối thiểu hoaacute việc va chạm với

thocircng tin quản baacute của caacutec nuacutet lacircn cận

Lớp mạng quan tacircm đến việc chọn đường số liệu được cung cấp bởi lớp truyền

tải

Lớp truyền tải giuacutep duy trigrave luồng số liệu nếu ứng dụng mạng cảm biến yecircu cầu

Tuỳ theo nhiệm vụ cảm biến caacutec loại phần mềm khaacutec nhau coacute thể được xacircy dựng vagrave

sử dụng ở lớp ứng dụng Ngoagravei ra caacutec phần quản lyacute cocircng suất di chuyển vagrave nhiệm vụ

sẽ giaacutem saacutet việc sử dụng cocircng suất sự di chuyển vagrave thực hiện nhiệm vụ giữa caacutec nuacutet

cảm biến Những phần nagravey giuacutep caacutec nuacutet cảm biến phối hợp nhiệm vụ cảm biến vagrave tiecircu

thụ năng lượng tổng thể thấp hơn

Phần quản lyacute năng lượng điều khiển việc sử dụng năng lượng của nuacutet mạng Viacute

dụ nuacutet mạng coacute thể tắt khối thu của noacute sau khi thu được một bản tin từ một nuacutet lacircn

cận Điều nagravey giuacutep traacutenh tạo ra caacutec bản tin giống nhau Cũng vậy khi mức năng lượng

của nuacutet mạng thấp noacute sẽ phaacutet quảng baacute tới caacutec nuacutet lacircn cận để thocircng baacuteo noacute coacute mức

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 12

năng lượng thấp vagrave khocircng thể tham gia vagraveo caacutec bản tin chọn đường Phần năng lượng

cograven lại sẽ dagravenh riecircng cho nhiệm vụ cảm biến

Phần quản lyacute di chuyển phaacutet hiện vagrave ghi lại sự di chuyển của caacutec nuacutet cảm biến để

duy trigrave tuyến tới người sử dụng vagrave caacutec nuacutet cảm biến coacute thể lưu vết của caacutec nuacutet cảm

biến lacircn cận Nhờ xaacutec định được caacutec nuacutet cảm biến lacircn cận caacutec nuacutet cảm biến coacute thể cacircn

bằng giữa cacircn bằng giữa cocircng suất của noacute vagrave nhiệm vụ thực hiện

Phần quản lyacute nhiệm vụ dugraveng để lagravem cacircn bằng vagrave lecircn kế hoạch caacutec nhiệm vụ cảm

biến trong một vugraveng xaacutec định Khocircng phải tất cả caacutec nuacutet cảm biến trong vugraveng đoacute đều

phải thực hiện nhiệm vụ cảm biến tại cugraveng một thời điểm Kết quả lagrave một số nuacutet cảm

biến thực hiện nhiều hơn caacutec nuacutet khaacutec tuỳ theo mức cocircng suất của noacute Những phần

quản lyacute nagravey lagrave cần thiết để caacutec nuacutet cảm biến coacute thể lagravem việc cugraveng nhau theo một caacutech

thức sử dụng hiệu quả cocircng suất chọn đường số liệu trong mạng cảm biến di động vagrave

phacircn chia tagravei nguyecircn giữa caacutec nuacutet cảm biến

Kiến truacutec mạng như trecircn goacutep phần quản lyacute năng lượng của caacutec nuacutet mạng đồng

thời duy trigrave hoạt động của toagraven mạng trong thời gian dagravei hơn

32 Giao thức chọn đường

321 Khoacute khăn trong giao thức chọn đường

Mặc dugrave caacutec ứng dụng của mạng WSN lagrave rất lớn tuy nhiecircn những mạng nagravey coacute

một số hạn chế như giới hạn về nguồn cocircng suất khả năng tiacutenh toaacuten vagrave độ rộng băng

thocircng Một số giao thức chọn đường quản lyacute cocircng suất vagrave trao đổi số liệu đatilde được

thiết kế cho WSN với yecircu cầu quan trọng nhất lagrave tiết kiệm được năng lượng

Một trong những mục tiecircu thiết kế chiacutenh của WSN lagrave keacuteo dagravei thời gian sống của

mạng vagrave traacutenh suy giảm kết nối nhờ caacutec kỹ thuật quản lyacute năng lượng Vấn đề nagravey cần

được giải quyết triệt để thigrave mới đạt được hiệu quả truyền tin trong WSN Caacutec giao thức

chọn đường trong WSN coacute thể khaacutec nhau tuỳ theo ứng dụng vagrave cấu truacutec mạng Tuy

nhiecircn việc chọn đường gặp phải những khoacute khăn như Phacircn bố nuacutet tiecircu thụ năng

lượng khocircng được lagravem mất độ chiacutenh xaacutec tiacutenh khocircng đồng nhất của nuacutet mạng tiacutenh

động của mạng khả năng định cỡ khả năng chống lỗi chất lượng dịch vụ

Phacircn bố nuacutet Việc phacircn bố nuacutet trong WSN phụ thuộc vagraveo ứng dụng vagrave coacute thể

được thực hiện bằng tay hoặc phacircn bố ngẫu nhiecircn Khi phacircn bố bằng tay số liệu được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 13

chọn đường thocircng qua caacutec đường đatilde định trước Tuy nhiecircn khi phacircn bố caacutec nuacutet ngẫu

nhiecircn sẽ tạo ra một cấu truacutec chọn đường đặc biệt (Ad-hoc)

Tiecircu thụ năng lượng khocircng được lagravem mất độ chiacutenh xaacutec Caacutec nuacutet cảm biến coacute

thể sử dụng quaacute caacutec giới hạn về cocircng suất để thực hiện tiacutenh toaacuten vagrave truyền tin trong

mocirci trường vocirc tuyến Thời gian sống của nuacutet mạng cảm biến phụ thuộc rất nhiều vagraveo

thời gian sử dụng của pin Trong WSN đa bước nhảy mỗi nuacutet đoacuteng hai vai trograve lagrave

truyền số liệu vagrave chọn đường Một số nuacutet cảm biến hoạt động sai chức năng do lỗi

nguồn cocircng suất coacute thể gacircy ra sự thay đổi cấu higravenh mạng nghiecircm trọng vagrave phải chọn

đường lại caacutec goacutei hoặc phải tổ chức lại mạng

Tiacutenh khocircng đồng nhất của nuacutet mạng Nghĩa lagrave caacutec nuacutet mạng coacute khả năng tiacutenh

toaacuten khả năng truyền tin vagrave coacute cocircng suất khaacutec nhau Khi đoacute sẽ gacircy khoacute khăn cho kỹ

thuật chọn đường

Khả năng chống lỗi Một số nuacutet cảm biến coacute thể bị lỗi hoặc bị ngắt do thiếu cocircng

suất hỏng phần cứng hoặc bị nhiễu mocirci trường Sự cố của caacutec nuacutet cảm biến khocircng

được ảnh hưởng tới nhiệm vụ của toagraven mạng cảm biến Nếu coacute nhiều nuacutet bị lỗi caacutec

giao thức chọn đường vagrave điều khiển truy cập mocirci trường (MAC) phải thagravenh lập caacutec

tuyến mới tới nuacutet gốc Việc nagravey coacute thể cần thiết phải điều chỉnh cocircng suất phaacutet vagrave tốc

độ tiacuten hiệu trecircn caacutec tuyến hiện tại để giảm sự tiecircu thụ năng lượng hoặc lagrave caacutec goacutei phải

chọn đường lại qua caacutec caacutec vugraveng mạng coacute cocircng suất khả dụng lớn hơn

Khả năng định cỡ Số lượng nuacutet mạng coacute thể lagrave hagraveng trăm hagraveng nghigraven hoặc

nhiều hơn Bất kỳ phương phaacutep chọn đường nagraveo cũng phải coacute khả năng lagravem việc với

một số lượng lớn caacutec nuacutet cảm biến như vậy

Tiacutenh động của mạng Trong nhiều nghiecircn cứu caacutec nuacutet cảm biến được coi lagrave cố

định Tuy nhiecircn trong một số ứng dụng cả nuacutet gốc vagrave caacutec nuacutet cảm biến coacute thể di

chuyển Khi đoacute caacutec bản tin chọn đường từ hoặc tới caacutec nuacutet di chuyển sẽ gặp phải caacutec

vần đề như đường liecircn lạc cấu higravenh mạng năng lượng độ rộng bănghellip

Chất lượng dịch vụ Khi năng lượng gần hết caacutec nuacutet mạng coacute thể yecircu cầu giảm

chất lượng caacutec kết quả để giảm mức tiecircu thụ năng lượng của nuacutet vagrave keacuteo dagravei thời gian

sống của toagraven mạng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 14

Mặc dugrave việc chọn đường gặp nhiều khoacute khăn nhưng khi coacute một giao thức chọn

đường tốt sẽ tiết kiệm thời gian truyền nhận thocircng tin giảm năng lượng tiecircu hao latildeng

phiacute do tắc nghẽn lỗi đường truyềnVigrave vậy người ta đatilde đưa ra một số giao thức chọn

đường magrave dưới đacircy sẽ trigravenh bầy

322 Caacutec giao thức chọn đường

Phần nagravey sẽ trigravenh bagravey về phương phaacutep chọn đường trong WSN Noacutei chung caacutec

giao thức chọn đường được chia lagravem 3 loại dựa vagraveo cấu truacutec mạng ngang hagraveng phacircn

cấp hoặc dựa vagraveo vị triacute

Trong chọn đường ngang hagraveng tất cả caacutec nuacutet thường coacute vai trograve hoặc chức năng

như nhau như cảm nhận truyền Chuacuteng sẽ thực hiện việc cảm nhận thocircng tin cần

thiết vagrave truyền số liệu về nuacutet gốc

Trong chọn đường phacircn cấp caacutec nuacutet sẽ đoacuteng vai trograve khaacutec nhau trong mạng sẽ coacute

nuacutet chủ đại diện cho từng nhoacutem caacutec nuacutet cảm biến để nhận số liệu từ caacutec nuacutet cảm biến

truyền tới Caacutec nuacutet chủ cũng tập hợp số liệu từ caacutec nuacutet trong nhoacutem của noacute trước khi

gửi số liệu đến nuacutet gốc Nuacutet chủ sẽ thay đổi khi bắt đầu chu kỳ lagravem việc mới vagrave sẽ thay

bằng nuacutet khaacutec coacute khả năng đảm nhận chức năng nagravey

Trong chọn đường dựa theo vị triacute thigrave vị triacute của caacutec nuacutet cảm biến sẽ được dugraveng để

chọn đường số liệu Giao thức chọn đường cograven coacute thể được phacircn loại dựa theo đa

đường yecircu cầu hỏiđaacutep QoS vagrave liecircn kết tuỳ thuộc vagraveo chế độ hoạt động Ngoagravei ra

cũng coacute thể chia thagravenh 3 loại chủ động tương taacutec hoặc lai gheacutep tuỳ thuộc vagraveo caacutech

thức magrave nguồn tigravem đường tời điacutech Một giao thức chọn đường được coi lagrave thiacutech ứng

nếu caacutec tham số của hệ thống coacute thể điều khiển được để phugrave hợp với caacutec trạng thaacutei

mạng hiện tại vagrave caacutec mức năng lượng khả dụng Một số giao thức chọn đường đatilde phaacutet

huy hiệu quả tiết kiệm tiecircu thụ năng lượng như LEACH

TEENampAPTEEN MECNampSVECN PEGASIS thuộc chọn đường phacircn cấp SPIN

Directed Diffusion CADR CUGAR thuộc chọn đường ngang hagraveng Trong đoacute đaacuteng

quan tacircm nhất lagrave giao thức chọn đường LEACH LEACH (Low Energy Adaptive

Clustering Hierarchy) - phacircn cấp nhoacutem thiacutech ứng cocircng suất thấp giao thức nagravey cho

pheacutep tiết kiệm năng lượng trong mạng WSN Mục điacutech của LEACH lagrave lựa chọn ngẫu

nhiecircn caacutec nuacutet cảm biến lagravem caacutec nuacutet chủ do đoacute việc tiecircu hao năng lượng khi liecircn lạc

với nuacutet gốc được trải đều cho tất cả caacutec nuacutet cảm biến trong mạng Quaacute trigravenh hoạt động

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 15

của LEACH được chia thagravenh 2 bước bước thiết lập vagrave bước ổn định Thời gian bước

ổn định keacuteo dagravei hơn so với thời gian của bước thiết lập để giảm thiểu phần điều khiển

Tại bước thiết lập sẽ xaacutec định nuacutet mạng nagraveo sẽ lagravem chủ Tại bước ổn định caacutec nuacutet cảm

biến bắt đầu cảm nhận vagrave truyền số liệu về nuacutet chủ nuacutet chủ cũng tập hợp số liệu từ caacutec

nuacutet trong nhoacutem trước khi gửi caacutec số liệu nagravey về nuacutet gốc Theo thử nghiệm mocirc phỏng

giao thức LEACH của mạng WSN coacute 160 nuacutet phacircn bố đều cocircng suất ban đầu của nuacutet

lagrave 30 Kết quả thu được lagrave khi truyền trực tiếp tới nuacutet gốc sau khoảng 470 chu kỳ

thời gian sẽ kết thuacutec truyền tin khi sử dụng giao thức LEACH sau khoảng 685 chu kỳ

thời gian mới kết thuacutec truyền tin Kết quả nagravey cho thấy đacircy lagrave một phương phaacutep chọn

đường phacircn cấp coacute khả năng tiết kiệm được năng lượng vagrave keacuteo dagravei thời gian sống của

mạng

Tuy nhiecircn cơ chế hoạt động của LEACH lagrave lựa chọn số liệu được tập trung vagrave

thực hiện theo chu kỳ Do đoacute giao thức nagravey chỉ thiacutech hợp với yecircu cầu giaacutem saacutet liecircn tục

bởi mạng cảm biến Với ứng dụng magrave người sử dụng khocircng cần tất cả caacutec số liệu ngay

lập tức thigrave việc truyền số liệu theo chu kỳ lagrave khocircng cần thiết vagrave coacute thể lagravem tiecircu tốn

năng lượng vocirc iacutech Giao thức LEACH cần tiếp tục được cải tiến để khắc phục hạn chế

33 Hoạt động truyền nhận khocircng dacircy

Đối với mạng cảm nhận khocircng dacircy thigrave năng lượng trở thagravenh một vấn đề được chuacute

yacute để duy trigrave hoạt động của hệ thống mạng vigrave caacutec nuacutet mạng độc lập chỉ được cung cấp

năng lượng từ một nguồn cố định (pin) Việc tiecircu thụ năng lượng thấp lagrave một nhu cầu

quan trọng cho caacutec hệ thống hoạt động bằng pin - khocircng được cung cấp năng lượng

thường xuyecircn Khi coacute một dograveng tiecircu thụ thấp thigrave thời gian sống của chuacuteng sẽ keacuteo dagravei

thecircm Hệ thống tiecircu thụ năng lượng thấp lagrave mục tiecircu cần đạt của mạng cảm nhận

khocircng dacircy sử dụng CC1010 Caacutec vấn đề đưa ra trong phần nagravey lagrave cơ sở cho việc viết

phần mềm tiết kiệm tiecircu thụ năng lượng cho nuacutet mạng cảm nhận khocircng dacircy

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 16

CHƢƠNG 2 MAtilde SỬA LỖI

Mạng phải coacute khả năng truyền chiacutenh xaacutec dữ liệu từ thiết bị nagravey tới thiết bị khaacutec

Một hệ thống khocircng bảo đảm dữ liệu nhận giống như dữ liệu truyền lagrave hệ thống khocircng

sử dụng được Coacute nhiều nhacircn tố như tạp nhiễu đường dacircy coacute thể lagravem hỏng một hoặc

nhiều bit của khối dữ liệu đang truyền Một hệ thống thực sự dugraveng được phải coacute cơ cấu

để phaacutet hiện vagrave sửa caacutec lỗi đoacute

Việc phaacutet hiện vagrave sửa lỗi được trang bị ở lớp liecircn kết dữ liệu hoặc lớp giao vận

tương ứng trong mocirc higravenh OSI

1 CAacuteC CƠ CHẾ TRUYỀN DỮ LIỆU

11 Truyền dữ liệu song song

bull Mỗi bit dugraveng một đường truyền riecircng Nếu coacute 8 bits được truyền đồng thời sẽ

yecircu cầu 8 đường truyền độc lập

bull Để truyền dữ liệu trecircn một đường truyền song song một kecircnh truyền riecircng

được dugraveng để thocircng baacuteo cho becircn nhận biết khi nagraveo dữ liệu coacute sẵn (clock signal)

bull Cần thecircm một kecircnh truyền khaacutec để becircn nhận baacuteo cho becircn gởi biết lagrave đatilde sẵn

sagraveng để nhận dữ liệu kế tiếp

12 Truyền dữ liệu tuần tự

bull Tất cả caacutec bit đều được truyền trecircn cugraveng một đường truyền bit nagravey tiếp theo

sau bit kia

bull Khocircng cần caacutec đường truyền riecircng cho tiacuten hiệu đồng bộ vagrave tiacuten hiệu bắt tay (caacutec

tiacuten hiệu nagravey được matilde hoacutea vagraveo dữ liệu truyền đi)

bull Vấn đề định thời (timing) đogravei hỏi phải coacute cơ chế đồng bộ giữa becircn truyền vagrave

becircn nhận

bull 2 caacutech giải quyết

- Bất đồng bộ mỗi kyacute tự được đồng bộ bởi start vagrave stop bit

- Đồng bộ mỗi khối kyacute tự được đồng bộ dugraveng cờ

13 Truyền bất đồng bộ

bull Dữ liệu được truyền theo từng kyacute tự để traacutenh việc mất đồng bộ khi nhận được chuỗi

bit quaacute dagravei

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 17

- 5 đến 8 bits

- Chỉ cần giữ đồng bộ trong một kyacute tự

- Taacutei đồng bộ cho mỗi kyacute tự mới

bull Hagravenh vi

- Đối với dograveng dữ liệu đều khoảng caacutech giữa caacutec kyacute tự lagrave đồng nhất (bằng chiều dagravei

của phần tử stop)

- Ở trạng thaacutei rỗi bộ thu phaacutet hiện sự chuyển 1 đến 0

- Lấy mẫu 7 khoảng kế tiếp (chiều dagravei kyacute tự)

- Đợi việc chuyển 1 đến 0 cho kyacute tự kế tiếp

bull Hiệu suất

- Đơn giản

- Rẻ

- Phiacute tổn 2 hoặc 3 bit cho một kyacute tự (~20)

- Thiacutech hợp cho dữ liệu với khoảng trống giữa caacutec kyacute tự lớn (dữ liệu nhập từ bagraven

phiacutem)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 18

bull Đồng bộ khung (frame synchronization) dugraveng caacutec kyacute tự điều khiển (STX ETX

DLE)

14 Truyền đồng bộ

bull Truyền khocircng cần startstop

bull Phải coacute tiacuten hiệu đồng bộ

bull Đồng bộ bit (bit synchronization) sử dụng caacutec phƣơng phaacutep sau

- Tiacutech hợp xung clock vagraveo dữ liệu truyền đi

+ Tiacutech hợp thocircng tin đồng bộ (clock) vagraveo trong dữ liệu truyền

+ Đầu nhận sẽ taacutech thocircng tin đồng bộ dựa vagraveo dữ liệu nhận được

+ Manchester differential Manchester tần số soacuteng mang (analog)

- Sử dụng đường clock riecircng

+ Dugraveng một đường tiacuten hiệu đồng bộ riecircng biệt

+ Một becircn (phaacutet hoặc nhận) tạo ra caacutec xung clock đồng bộ với caacutec bit truyền đi

trecircn đường clock riecircng

+ Becircn cograven lại dugraveng tiacuten hiệu trecircn đường clock riecircng để lagravem clock

+ Thiacutech hợp khi truyền trong khoảng caacutech ngắn

+ Tiacuten hiệu đồng bộ dễ bị suy giảm trecircn đường truyền

bull Đồng bộ frame

- Mỗi block dữ liệu được bắt đầu bằng một cờ gọi lagrave preamble kết thuacutec bằng

một cờ gọi lagrave postamble

- Preamble vagrave postamble lagrave một mẫu bit (bit pattern) được quy định sẵn

+ Một chuỗi caacutec kyacute tự SYN (16h trong bảng matilde ASCII)

+ Mẫu bit 11111110

- Frame dữ liệu + preamble + postamble + thocircng tin điều khiển

- Hiệu quả hơn so với truyền bất đồng bộ (phiacute tổn thấp hơn cho caacutec bit điều

khiển)

+ HDLC 48 bit điều khiển cho mỗi block 1000 kyacute tự (8000 bit)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 19

2 VẤN ĐỀ XỬ LYacute LỖI

11 Caacutec lỗi xẩy ra trecircn đường truyền

bull Mocirci trƣờng truyền dẫn bị nhiễu (điện từ hellip) dẫn đến dữ liệu nhận coacute lỗi

(caacutec bit bị thay đổi)

bull 2 caacutech khắc phục khi phaacutet hiện coacute lỗi

- Forward error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự hoặc caacutec

frame truyền đi để becircn nhận coacute thể phaacutet hiện khi nagraveo coacute lỗi va lỗi nằm ở đacircu để sửa

(coacute khả năng sửa lỗi)

- Feedback (backward) error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự

hoặc caacutec frame truyền đi chỉ đủ để phaacutet hiện khi nagraveo coacute lỗi (khocircng coacute khả năng sửa

lỗi) Cơ chế yecircu cầu truyền lại kyacute tựframe sai được dugraveng trong trường hợp nagravey

bull Phacircn loại lỗi

- Lỗi 1 bit

+ Chỉ 1 bit bị lỗi khocircng ảnh hưởng caacutec bit xung quanh

+ Thường xảy ra do nhiễu trắng

- Lỗi chugravem (busrt error)

+ Một chuỗi liecircn tục B bit trong đoacute bit đầu bit cuối vagrave caacutec bit bất kigrave nằm giữa

chuỗi đều bị lỗi

+ Thường xảy ra do nhiễu xung

+ Ảnh hưởng cagraveng lớn đối với tốc độ truyền cao

Bit error rate (BER) xaacutec suất một bit nhận đƣợc bị lỗi

12 Cơ chế phaacutet hiện lỗi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 12

năng lượng thấp vagrave khocircng thể tham gia vagraveo caacutec bản tin chọn đường Phần năng lượng

cograven lại sẽ dagravenh riecircng cho nhiệm vụ cảm biến

Phần quản lyacute di chuyển phaacutet hiện vagrave ghi lại sự di chuyển của caacutec nuacutet cảm biến để

duy trigrave tuyến tới người sử dụng vagrave caacutec nuacutet cảm biến coacute thể lưu vết của caacutec nuacutet cảm

biến lacircn cận Nhờ xaacutec định được caacutec nuacutet cảm biến lacircn cận caacutec nuacutet cảm biến coacute thể cacircn

bằng giữa cacircn bằng giữa cocircng suất của noacute vagrave nhiệm vụ thực hiện

Phần quản lyacute nhiệm vụ dugraveng để lagravem cacircn bằng vagrave lecircn kế hoạch caacutec nhiệm vụ cảm

biến trong một vugraveng xaacutec định Khocircng phải tất cả caacutec nuacutet cảm biến trong vugraveng đoacute đều

phải thực hiện nhiệm vụ cảm biến tại cugraveng một thời điểm Kết quả lagrave một số nuacutet cảm

biến thực hiện nhiều hơn caacutec nuacutet khaacutec tuỳ theo mức cocircng suất của noacute Những phần

quản lyacute nagravey lagrave cần thiết để caacutec nuacutet cảm biến coacute thể lagravem việc cugraveng nhau theo một caacutech

thức sử dụng hiệu quả cocircng suất chọn đường số liệu trong mạng cảm biến di động vagrave

phacircn chia tagravei nguyecircn giữa caacutec nuacutet cảm biến

Kiến truacutec mạng như trecircn goacutep phần quản lyacute năng lượng của caacutec nuacutet mạng đồng

thời duy trigrave hoạt động của toagraven mạng trong thời gian dagravei hơn

32 Giao thức chọn đường

321 Khoacute khăn trong giao thức chọn đường

Mặc dugrave caacutec ứng dụng của mạng WSN lagrave rất lớn tuy nhiecircn những mạng nagravey coacute

một số hạn chế như giới hạn về nguồn cocircng suất khả năng tiacutenh toaacuten vagrave độ rộng băng

thocircng Một số giao thức chọn đường quản lyacute cocircng suất vagrave trao đổi số liệu đatilde được

thiết kế cho WSN với yecircu cầu quan trọng nhất lagrave tiết kiệm được năng lượng

Một trong những mục tiecircu thiết kế chiacutenh của WSN lagrave keacuteo dagravei thời gian sống của

mạng vagrave traacutenh suy giảm kết nối nhờ caacutec kỹ thuật quản lyacute năng lượng Vấn đề nagravey cần

được giải quyết triệt để thigrave mới đạt được hiệu quả truyền tin trong WSN Caacutec giao thức

chọn đường trong WSN coacute thể khaacutec nhau tuỳ theo ứng dụng vagrave cấu truacutec mạng Tuy

nhiecircn việc chọn đường gặp phải những khoacute khăn như Phacircn bố nuacutet tiecircu thụ năng

lượng khocircng được lagravem mất độ chiacutenh xaacutec tiacutenh khocircng đồng nhất của nuacutet mạng tiacutenh

động của mạng khả năng định cỡ khả năng chống lỗi chất lượng dịch vụ

Phacircn bố nuacutet Việc phacircn bố nuacutet trong WSN phụ thuộc vagraveo ứng dụng vagrave coacute thể

được thực hiện bằng tay hoặc phacircn bố ngẫu nhiecircn Khi phacircn bố bằng tay số liệu được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 13

chọn đường thocircng qua caacutec đường đatilde định trước Tuy nhiecircn khi phacircn bố caacutec nuacutet ngẫu

nhiecircn sẽ tạo ra một cấu truacutec chọn đường đặc biệt (Ad-hoc)

Tiecircu thụ năng lượng khocircng được lagravem mất độ chiacutenh xaacutec Caacutec nuacutet cảm biến coacute

thể sử dụng quaacute caacutec giới hạn về cocircng suất để thực hiện tiacutenh toaacuten vagrave truyền tin trong

mocirci trường vocirc tuyến Thời gian sống của nuacutet mạng cảm biến phụ thuộc rất nhiều vagraveo

thời gian sử dụng của pin Trong WSN đa bước nhảy mỗi nuacutet đoacuteng hai vai trograve lagrave

truyền số liệu vagrave chọn đường Một số nuacutet cảm biến hoạt động sai chức năng do lỗi

nguồn cocircng suất coacute thể gacircy ra sự thay đổi cấu higravenh mạng nghiecircm trọng vagrave phải chọn

đường lại caacutec goacutei hoặc phải tổ chức lại mạng

Tiacutenh khocircng đồng nhất của nuacutet mạng Nghĩa lagrave caacutec nuacutet mạng coacute khả năng tiacutenh

toaacuten khả năng truyền tin vagrave coacute cocircng suất khaacutec nhau Khi đoacute sẽ gacircy khoacute khăn cho kỹ

thuật chọn đường

Khả năng chống lỗi Một số nuacutet cảm biến coacute thể bị lỗi hoặc bị ngắt do thiếu cocircng

suất hỏng phần cứng hoặc bị nhiễu mocirci trường Sự cố của caacutec nuacutet cảm biến khocircng

được ảnh hưởng tới nhiệm vụ của toagraven mạng cảm biến Nếu coacute nhiều nuacutet bị lỗi caacutec

giao thức chọn đường vagrave điều khiển truy cập mocirci trường (MAC) phải thagravenh lập caacutec

tuyến mới tới nuacutet gốc Việc nagravey coacute thể cần thiết phải điều chỉnh cocircng suất phaacutet vagrave tốc

độ tiacuten hiệu trecircn caacutec tuyến hiện tại để giảm sự tiecircu thụ năng lượng hoặc lagrave caacutec goacutei phải

chọn đường lại qua caacutec caacutec vugraveng mạng coacute cocircng suất khả dụng lớn hơn

Khả năng định cỡ Số lượng nuacutet mạng coacute thể lagrave hagraveng trăm hagraveng nghigraven hoặc

nhiều hơn Bất kỳ phương phaacutep chọn đường nagraveo cũng phải coacute khả năng lagravem việc với

một số lượng lớn caacutec nuacutet cảm biến như vậy

Tiacutenh động của mạng Trong nhiều nghiecircn cứu caacutec nuacutet cảm biến được coi lagrave cố

định Tuy nhiecircn trong một số ứng dụng cả nuacutet gốc vagrave caacutec nuacutet cảm biến coacute thể di

chuyển Khi đoacute caacutec bản tin chọn đường từ hoặc tới caacutec nuacutet di chuyển sẽ gặp phải caacutec

vần đề như đường liecircn lạc cấu higravenh mạng năng lượng độ rộng bănghellip

Chất lượng dịch vụ Khi năng lượng gần hết caacutec nuacutet mạng coacute thể yecircu cầu giảm

chất lượng caacutec kết quả để giảm mức tiecircu thụ năng lượng của nuacutet vagrave keacuteo dagravei thời gian

sống của toagraven mạng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 14

Mặc dugrave việc chọn đường gặp nhiều khoacute khăn nhưng khi coacute một giao thức chọn

đường tốt sẽ tiết kiệm thời gian truyền nhận thocircng tin giảm năng lượng tiecircu hao latildeng

phiacute do tắc nghẽn lỗi đường truyềnVigrave vậy người ta đatilde đưa ra một số giao thức chọn

đường magrave dưới đacircy sẽ trigravenh bầy

322 Caacutec giao thức chọn đường

Phần nagravey sẽ trigravenh bagravey về phương phaacutep chọn đường trong WSN Noacutei chung caacutec

giao thức chọn đường được chia lagravem 3 loại dựa vagraveo cấu truacutec mạng ngang hagraveng phacircn

cấp hoặc dựa vagraveo vị triacute

Trong chọn đường ngang hagraveng tất cả caacutec nuacutet thường coacute vai trograve hoặc chức năng

như nhau như cảm nhận truyền Chuacuteng sẽ thực hiện việc cảm nhận thocircng tin cần

thiết vagrave truyền số liệu về nuacutet gốc

Trong chọn đường phacircn cấp caacutec nuacutet sẽ đoacuteng vai trograve khaacutec nhau trong mạng sẽ coacute

nuacutet chủ đại diện cho từng nhoacutem caacutec nuacutet cảm biến để nhận số liệu từ caacutec nuacutet cảm biến

truyền tới Caacutec nuacutet chủ cũng tập hợp số liệu từ caacutec nuacutet trong nhoacutem của noacute trước khi

gửi số liệu đến nuacutet gốc Nuacutet chủ sẽ thay đổi khi bắt đầu chu kỳ lagravem việc mới vagrave sẽ thay

bằng nuacutet khaacutec coacute khả năng đảm nhận chức năng nagravey

Trong chọn đường dựa theo vị triacute thigrave vị triacute của caacutec nuacutet cảm biến sẽ được dugraveng để

chọn đường số liệu Giao thức chọn đường cograven coacute thể được phacircn loại dựa theo đa

đường yecircu cầu hỏiđaacutep QoS vagrave liecircn kết tuỳ thuộc vagraveo chế độ hoạt động Ngoagravei ra

cũng coacute thể chia thagravenh 3 loại chủ động tương taacutec hoặc lai gheacutep tuỳ thuộc vagraveo caacutech

thức magrave nguồn tigravem đường tời điacutech Một giao thức chọn đường được coi lagrave thiacutech ứng

nếu caacutec tham số của hệ thống coacute thể điều khiển được để phugrave hợp với caacutec trạng thaacutei

mạng hiện tại vagrave caacutec mức năng lượng khả dụng Một số giao thức chọn đường đatilde phaacutet

huy hiệu quả tiết kiệm tiecircu thụ năng lượng như LEACH

TEENampAPTEEN MECNampSVECN PEGASIS thuộc chọn đường phacircn cấp SPIN

Directed Diffusion CADR CUGAR thuộc chọn đường ngang hagraveng Trong đoacute đaacuteng

quan tacircm nhất lagrave giao thức chọn đường LEACH LEACH (Low Energy Adaptive

Clustering Hierarchy) - phacircn cấp nhoacutem thiacutech ứng cocircng suất thấp giao thức nagravey cho

pheacutep tiết kiệm năng lượng trong mạng WSN Mục điacutech của LEACH lagrave lựa chọn ngẫu

nhiecircn caacutec nuacutet cảm biến lagravem caacutec nuacutet chủ do đoacute việc tiecircu hao năng lượng khi liecircn lạc

với nuacutet gốc được trải đều cho tất cả caacutec nuacutet cảm biến trong mạng Quaacute trigravenh hoạt động

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 15

của LEACH được chia thagravenh 2 bước bước thiết lập vagrave bước ổn định Thời gian bước

ổn định keacuteo dagravei hơn so với thời gian của bước thiết lập để giảm thiểu phần điều khiển

Tại bước thiết lập sẽ xaacutec định nuacutet mạng nagraveo sẽ lagravem chủ Tại bước ổn định caacutec nuacutet cảm

biến bắt đầu cảm nhận vagrave truyền số liệu về nuacutet chủ nuacutet chủ cũng tập hợp số liệu từ caacutec

nuacutet trong nhoacutem trước khi gửi caacutec số liệu nagravey về nuacutet gốc Theo thử nghiệm mocirc phỏng

giao thức LEACH của mạng WSN coacute 160 nuacutet phacircn bố đều cocircng suất ban đầu của nuacutet

lagrave 30 Kết quả thu được lagrave khi truyền trực tiếp tới nuacutet gốc sau khoảng 470 chu kỳ

thời gian sẽ kết thuacutec truyền tin khi sử dụng giao thức LEACH sau khoảng 685 chu kỳ

thời gian mới kết thuacutec truyền tin Kết quả nagravey cho thấy đacircy lagrave một phương phaacutep chọn

đường phacircn cấp coacute khả năng tiết kiệm được năng lượng vagrave keacuteo dagravei thời gian sống của

mạng

Tuy nhiecircn cơ chế hoạt động của LEACH lagrave lựa chọn số liệu được tập trung vagrave

thực hiện theo chu kỳ Do đoacute giao thức nagravey chỉ thiacutech hợp với yecircu cầu giaacutem saacutet liecircn tục

bởi mạng cảm biến Với ứng dụng magrave người sử dụng khocircng cần tất cả caacutec số liệu ngay

lập tức thigrave việc truyền số liệu theo chu kỳ lagrave khocircng cần thiết vagrave coacute thể lagravem tiecircu tốn

năng lượng vocirc iacutech Giao thức LEACH cần tiếp tục được cải tiến để khắc phục hạn chế

33 Hoạt động truyền nhận khocircng dacircy

Đối với mạng cảm nhận khocircng dacircy thigrave năng lượng trở thagravenh một vấn đề được chuacute

yacute để duy trigrave hoạt động của hệ thống mạng vigrave caacutec nuacutet mạng độc lập chỉ được cung cấp

năng lượng từ một nguồn cố định (pin) Việc tiecircu thụ năng lượng thấp lagrave một nhu cầu

quan trọng cho caacutec hệ thống hoạt động bằng pin - khocircng được cung cấp năng lượng

thường xuyecircn Khi coacute một dograveng tiecircu thụ thấp thigrave thời gian sống của chuacuteng sẽ keacuteo dagravei

thecircm Hệ thống tiecircu thụ năng lượng thấp lagrave mục tiecircu cần đạt của mạng cảm nhận

khocircng dacircy sử dụng CC1010 Caacutec vấn đề đưa ra trong phần nagravey lagrave cơ sở cho việc viết

phần mềm tiết kiệm tiecircu thụ năng lượng cho nuacutet mạng cảm nhận khocircng dacircy

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 16

CHƢƠNG 2 MAtilde SỬA LỖI

Mạng phải coacute khả năng truyền chiacutenh xaacutec dữ liệu từ thiết bị nagravey tới thiết bị khaacutec

Một hệ thống khocircng bảo đảm dữ liệu nhận giống như dữ liệu truyền lagrave hệ thống khocircng

sử dụng được Coacute nhiều nhacircn tố như tạp nhiễu đường dacircy coacute thể lagravem hỏng một hoặc

nhiều bit của khối dữ liệu đang truyền Một hệ thống thực sự dugraveng được phải coacute cơ cấu

để phaacutet hiện vagrave sửa caacutec lỗi đoacute

Việc phaacutet hiện vagrave sửa lỗi được trang bị ở lớp liecircn kết dữ liệu hoặc lớp giao vận

tương ứng trong mocirc higravenh OSI

1 CAacuteC CƠ CHẾ TRUYỀN DỮ LIỆU

11 Truyền dữ liệu song song

bull Mỗi bit dugraveng một đường truyền riecircng Nếu coacute 8 bits được truyền đồng thời sẽ

yecircu cầu 8 đường truyền độc lập

bull Để truyền dữ liệu trecircn một đường truyền song song một kecircnh truyền riecircng

được dugraveng để thocircng baacuteo cho becircn nhận biết khi nagraveo dữ liệu coacute sẵn (clock signal)

bull Cần thecircm một kecircnh truyền khaacutec để becircn nhận baacuteo cho becircn gởi biết lagrave đatilde sẵn

sagraveng để nhận dữ liệu kế tiếp

12 Truyền dữ liệu tuần tự

bull Tất cả caacutec bit đều được truyền trecircn cugraveng một đường truyền bit nagravey tiếp theo

sau bit kia

bull Khocircng cần caacutec đường truyền riecircng cho tiacuten hiệu đồng bộ vagrave tiacuten hiệu bắt tay (caacutec

tiacuten hiệu nagravey được matilde hoacutea vagraveo dữ liệu truyền đi)

bull Vấn đề định thời (timing) đogravei hỏi phải coacute cơ chế đồng bộ giữa becircn truyền vagrave

becircn nhận

bull 2 caacutech giải quyết

- Bất đồng bộ mỗi kyacute tự được đồng bộ bởi start vagrave stop bit

- Đồng bộ mỗi khối kyacute tự được đồng bộ dugraveng cờ

13 Truyền bất đồng bộ

bull Dữ liệu được truyền theo từng kyacute tự để traacutenh việc mất đồng bộ khi nhận được chuỗi

bit quaacute dagravei

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 17

- 5 đến 8 bits

- Chỉ cần giữ đồng bộ trong một kyacute tự

- Taacutei đồng bộ cho mỗi kyacute tự mới

bull Hagravenh vi

- Đối với dograveng dữ liệu đều khoảng caacutech giữa caacutec kyacute tự lagrave đồng nhất (bằng chiều dagravei

của phần tử stop)

- Ở trạng thaacutei rỗi bộ thu phaacutet hiện sự chuyển 1 đến 0

- Lấy mẫu 7 khoảng kế tiếp (chiều dagravei kyacute tự)

- Đợi việc chuyển 1 đến 0 cho kyacute tự kế tiếp

bull Hiệu suất

- Đơn giản

- Rẻ

- Phiacute tổn 2 hoặc 3 bit cho một kyacute tự (~20)

- Thiacutech hợp cho dữ liệu với khoảng trống giữa caacutec kyacute tự lớn (dữ liệu nhập từ bagraven

phiacutem)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 18

bull Đồng bộ khung (frame synchronization) dugraveng caacutec kyacute tự điều khiển (STX ETX

DLE)

14 Truyền đồng bộ

bull Truyền khocircng cần startstop

bull Phải coacute tiacuten hiệu đồng bộ

bull Đồng bộ bit (bit synchronization) sử dụng caacutec phƣơng phaacutep sau

- Tiacutech hợp xung clock vagraveo dữ liệu truyền đi

+ Tiacutech hợp thocircng tin đồng bộ (clock) vagraveo trong dữ liệu truyền

+ Đầu nhận sẽ taacutech thocircng tin đồng bộ dựa vagraveo dữ liệu nhận được

+ Manchester differential Manchester tần số soacuteng mang (analog)

- Sử dụng đường clock riecircng

+ Dugraveng một đường tiacuten hiệu đồng bộ riecircng biệt

+ Một becircn (phaacutet hoặc nhận) tạo ra caacutec xung clock đồng bộ với caacutec bit truyền đi

trecircn đường clock riecircng

+ Becircn cograven lại dugraveng tiacuten hiệu trecircn đường clock riecircng để lagravem clock

+ Thiacutech hợp khi truyền trong khoảng caacutech ngắn

+ Tiacuten hiệu đồng bộ dễ bị suy giảm trecircn đường truyền

bull Đồng bộ frame

- Mỗi block dữ liệu được bắt đầu bằng một cờ gọi lagrave preamble kết thuacutec bằng

một cờ gọi lagrave postamble

- Preamble vagrave postamble lagrave một mẫu bit (bit pattern) được quy định sẵn

+ Một chuỗi caacutec kyacute tự SYN (16h trong bảng matilde ASCII)

+ Mẫu bit 11111110

- Frame dữ liệu + preamble + postamble + thocircng tin điều khiển

- Hiệu quả hơn so với truyền bất đồng bộ (phiacute tổn thấp hơn cho caacutec bit điều

khiển)

+ HDLC 48 bit điều khiển cho mỗi block 1000 kyacute tự (8000 bit)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 19

2 VẤN ĐỀ XỬ LYacute LỖI

11 Caacutec lỗi xẩy ra trecircn đường truyền

bull Mocirci trƣờng truyền dẫn bị nhiễu (điện từ hellip) dẫn đến dữ liệu nhận coacute lỗi

(caacutec bit bị thay đổi)

bull 2 caacutech khắc phục khi phaacutet hiện coacute lỗi

- Forward error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự hoặc caacutec

frame truyền đi để becircn nhận coacute thể phaacutet hiện khi nagraveo coacute lỗi va lỗi nằm ở đacircu để sửa

(coacute khả năng sửa lỗi)

- Feedback (backward) error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự

hoặc caacutec frame truyền đi chỉ đủ để phaacutet hiện khi nagraveo coacute lỗi (khocircng coacute khả năng sửa

lỗi) Cơ chế yecircu cầu truyền lại kyacute tựframe sai được dugraveng trong trường hợp nagravey

bull Phacircn loại lỗi

- Lỗi 1 bit

+ Chỉ 1 bit bị lỗi khocircng ảnh hưởng caacutec bit xung quanh

+ Thường xảy ra do nhiễu trắng

- Lỗi chugravem (busrt error)

+ Một chuỗi liecircn tục B bit trong đoacute bit đầu bit cuối vagrave caacutec bit bất kigrave nằm giữa

chuỗi đều bị lỗi

+ Thường xảy ra do nhiễu xung

+ Ảnh hưởng cagraveng lớn đối với tốc độ truyền cao

Bit error rate (BER) xaacutec suất một bit nhận đƣợc bị lỗi

12 Cơ chế phaacutet hiện lỗi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 13

chọn đường thocircng qua caacutec đường đatilde định trước Tuy nhiecircn khi phacircn bố caacutec nuacutet ngẫu

nhiecircn sẽ tạo ra một cấu truacutec chọn đường đặc biệt (Ad-hoc)

Tiecircu thụ năng lượng khocircng được lagravem mất độ chiacutenh xaacutec Caacutec nuacutet cảm biến coacute

thể sử dụng quaacute caacutec giới hạn về cocircng suất để thực hiện tiacutenh toaacuten vagrave truyền tin trong

mocirci trường vocirc tuyến Thời gian sống của nuacutet mạng cảm biến phụ thuộc rất nhiều vagraveo

thời gian sử dụng của pin Trong WSN đa bước nhảy mỗi nuacutet đoacuteng hai vai trograve lagrave

truyền số liệu vagrave chọn đường Một số nuacutet cảm biến hoạt động sai chức năng do lỗi

nguồn cocircng suất coacute thể gacircy ra sự thay đổi cấu higravenh mạng nghiecircm trọng vagrave phải chọn

đường lại caacutec goacutei hoặc phải tổ chức lại mạng

Tiacutenh khocircng đồng nhất của nuacutet mạng Nghĩa lagrave caacutec nuacutet mạng coacute khả năng tiacutenh

toaacuten khả năng truyền tin vagrave coacute cocircng suất khaacutec nhau Khi đoacute sẽ gacircy khoacute khăn cho kỹ

thuật chọn đường

Khả năng chống lỗi Một số nuacutet cảm biến coacute thể bị lỗi hoặc bị ngắt do thiếu cocircng

suất hỏng phần cứng hoặc bị nhiễu mocirci trường Sự cố của caacutec nuacutet cảm biến khocircng

được ảnh hưởng tới nhiệm vụ của toagraven mạng cảm biến Nếu coacute nhiều nuacutet bị lỗi caacutec

giao thức chọn đường vagrave điều khiển truy cập mocirci trường (MAC) phải thagravenh lập caacutec

tuyến mới tới nuacutet gốc Việc nagravey coacute thể cần thiết phải điều chỉnh cocircng suất phaacutet vagrave tốc

độ tiacuten hiệu trecircn caacutec tuyến hiện tại để giảm sự tiecircu thụ năng lượng hoặc lagrave caacutec goacutei phải

chọn đường lại qua caacutec caacutec vugraveng mạng coacute cocircng suất khả dụng lớn hơn

Khả năng định cỡ Số lượng nuacutet mạng coacute thể lagrave hagraveng trăm hagraveng nghigraven hoặc

nhiều hơn Bất kỳ phương phaacutep chọn đường nagraveo cũng phải coacute khả năng lagravem việc với

một số lượng lớn caacutec nuacutet cảm biến như vậy

Tiacutenh động của mạng Trong nhiều nghiecircn cứu caacutec nuacutet cảm biến được coi lagrave cố

định Tuy nhiecircn trong một số ứng dụng cả nuacutet gốc vagrave caacutec nuacutet cảm biến coacute thể di

chuyển Khi đoacute caacutec bản tin chọn đường từ hoặc tới caacutec nuacutet di chuyển sẽ gặp phải caacutec

vần đề như đường liecircn lạc cấu higravenh mạng năng lượng độ rộng bănghellip

Chất lượng dịch vụ Khi năng lượng gần hết caacutec nuacutet mạng coacute thể yecircu cầu giảm

chất lượng caacutec kết quả để giảm mức tiecircu thụ năng lượng của nuacutet vagrave keacuteo dagravei thời gian

sống của toagraven mạng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 14

Mặc dugrave việc chọn đường gặp nhiều khoacute khăn nhưng khi coacute một giao thức chọn

đường tốt sẽ tiết kiệm thời gian truyền nhận thocircng tin giảm năng lượng tiecircu hao latildeng

phiacute do tắc nghẽn lỗi đường truyềnVigrave vậy người ta đatilde đưa ra một số giao thức chọn

đường magrave dưới đacircy sẽ trigravenh bầy

322 Caacutec giao thức chọn đường

Phần nagravey sẽ trigravenh bagravey về phương phaacutep chọn đường trong WSN Noacutei chung caacutec

giao thức chọn đường được chia lagravem 3 loại dựa vagraveo cấu truacutec mạng ngang hagraveng phacircn

cấp hoặc dựa vagraveo vị triacute

Trong chọn đường ngang hagraveng tất cả caacutec nuacutet thường coacute vai trograve hoặc chức năng

như nhau như cảm nhận truyền Chuacuteng sẽ thực hiện việc cảm nhận thocircng tin cần

thiết vagrave truyền số liệu về nuacutet gốc

Trong chọn đường phacircn cấp caacutec nuacutet sẽ đoacuteng vai trograve khaacutec nhau trong mạng sẽ coacute

nuacutet chủ đại diện cho từng nhoacutem caacutec nuacutet cảm biến để nhận số liệu từ caacutec nuacutet cảm biến

truyền tới Caacutec nuacutet chủ cũng tập hợp số liệu từ caacutec nuacutet trong nhoacutem của noacute trước khi

gửi số liệu đến nuacutet gốc Nuacutet chủ sẽ thay đổi khi bắt đầu chu kỳ lagravem việc mới vagrave sẽ thay

bằng nuacutet khaacutec coacute khả năng đảm nhận chức năng nagravey

Trong chọn đường dựa theo vị triacute thigrave vị triacute của caacutec nuacutet cảm biến sẽ được dugraveng để

chọn đường số liệu Giao thức chọn đường cograven coacute thể được phacircn loại dựa theo đa

đường yecircu cầu hỏiđaacutep QoS vagrave liecircn kết tuỳ thuộc vagraveo chế độ hoạt động Ngoagravei ra

cũng coacute thể chia thagravenh 3 loại chủ động tương taacutec hoặc lai gheacutep tuỳ thuộc vagraveo caacutech

thức magrave nguồn tigravem đường tời điacutech Một giao thức chọn đường được coi lagrave thiacutech ứng

nếu caacutec tham số của hệ thống coacute thể điều khiển được để phugrave hợp với caacutec trạng thaacutei

mạng hiện tại vagrave caacutec mức năng lượng khả dụng Một số giao thức chọn đường đatilde phaacutet

huy hiệu quả tiết kiệm tiecircu thụ năng lượng như LEACH

TEENampAPTEEN MECNampSVECN PEGASIS thuộc chọn đường phacircn cấp SPIN

Directed Diffusion CADR CUGAR thuộc chọn đường ngang hagraveng Trong đoacute đaacuteng

quan tacircm nhất lagrave giao thức chọn đường LEACH LEACH (Low Energy Adaptive

Clustering Hierarchy) - phacircn cấp nhoacutem thiacutech ứng cocircng suất thấp giao thức nagravey cho

pheacutep tiết kiệm năng lượng trong mạng WSN Mục điacutech của LEACH lagrave lựa chọn ngẫu

nhiecircn caacutec nuacutet cảm biến lagravem caacutec nuacutet chủ do đoacute việc tiecircu hao năng lượng khi liecircn lạc

với nuacutet gốc được trải đều cho tất cả caacutec nuacutet cảm biến trong mạng Quaacute trigravenh hoạt động

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 15

của LEACH được chia thagravenh 2 bước bước thiết lập vagrave bước ổn định Thời gian bước

ổn định keacuteo dagravei hơn so với thời gian của bước thiết lập để giảm thiểu phần điều khiển

Tại bước thiết lập sẽ xaacutec định nuacutet mạng nagraveo sẽ lagravem chủ Tại bước ổn định caacutec nuacutet cảm

biến bắt đầu cảm nhận vagrave truyền số liệu về nuacutet chủ nuacutet chủ cũng tập hợp số liệu từ caacutec

nuacutet trong nhoacutem trước khi gửi caacutec số liệu nagravey về nuacutet gốc Theo thử nghiệm mocirc phỏng

giao thức LEACH của mạng WSN coacute 160 nuacutet phacircn bố đều cocircng suất ban đầu của nuacutet

lagrave 30 Kết quả thu được lagrave khi truyền trực tiếp tới nuacutet gốc sau khoảng 470 chu kỳ

thời gian sẽ kết thuacutec truyền tin khi sử dụng giao thức LEACH sau khoảng 685 chu kỳ

thời gian mới kết thuacutec truyền tin Kết quả nagravey cho thấy đacircy lagrave một phương phaacutep chọn

đường phacircn cấp coacute khả năng tiết kiệm được năng lượng vagrave keacuteo dagravei thời gian sống của

mạng

Tuy nhiecircn cơ chế hoạt động của LEACH lagrave lựa chọn số liệu được tập trung vagrave

thực hiện theo chu kỳ Do đoacute giao thức nagravey chỉ thiacutech hợp với yecircu cầu giaacutem saacutet liecircn tục

bởi mạng cảm biến Với ứng dụng magrave người sử dụng khocircng cần tất cả caacutec số liệu ngay

lập tức thigrave việc truyền số liệu theo chu kỳ lagrave khocircng cần thiết vagrave coacute thể lagravem tiecircu tốn

năng lượng vocirc iacutech Giao thức LEACH cần tiếp tục được cải tiến để khắc phục hạn chế

33 Hoạt động truyền nhận khocircng dacircy

Đối với mạng cảm nhận khocircng dacircy thigrave năng lượng trở thagravenh một vấn đề được chuacute

yacute để duy trigrave hoạt động của hệ thống mạng vigrave caacutec nuacutet mạng độc lập chỉ được cung cấp

năng lượng từ một nguồn cố định (pin) Việc tiecircu thụ năng lượng thấp lagrave một nhu cầu

quan trọng cho caacutec hệ thống hoạt động bằng pin - khocircng được cung cấp năng lượng

thường xuyecircn Khi coacute một dograveng tiecircu thụ thấp thigrave thời gian sống của chuacuteng sẽ keacuteo dagravei

thecircm Hệ thống tiecircu thụ năng lượng thấp lagrave mục tiecircu cần đạt của mạng cảm nhận

khocircng dacircy sử dụng CC1010 Caacutec vấn đề đưa ra trong phần nagravey lagrave cơ sở cho việc viết

phần mềm tiết kiệm tiecircu thụ năng lượng cho nuacutet mạng cảm nhận khocircng dacircy

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 16

CHƢƠNG 2 MAtilde SỬA LỖI

Mạng phải coacute khả năng truyền chiacutenh xaacutec dữ liệu từ thiết bị nagravey tới thiết bị khaacutec

Một hệ thống khocircng bảo đảm dữ liệu nhận giống như dữ liệu truyền lagrave hệ thống khocircng

sử dụng được Coacute nhiều nhacircn tố như tạp nhiễu đường dacircy coacute thể lagravem hỏng một hoặc

nhiều bit của khối dữ liệu đang truyền Một hệ thống thực sự dugraveng được phải coacute cơ cấu

để phaacutet hiện vagrave sửa caacutec lỗi đoacute

Việc phaacutet hiện vagrave sửa lỗi được trang bị ở lớp liecircn kết dữ liệu hoặc lớp giao vận

tương ứng trong mocirc higravenh OSI

1 CAacuteC CƠ CHẾ TRUYỀN DỮ LIỆU

11 Truyền dữ liệu song song

bull Mỗi bit dugraveng một đường truyền riecircng Nếu coacute 8 bits được truyền đồng thời sẽ

yecircu cầu 8 đường truyền độc lập

bull Để truyền dữ liệu trecircn một đường truyền song song một kecircnh truyền riecircng

được dugraveng để thocircng baacuteo cho becircn nhận biết khi nagraveo dữ liệu coacute sẵn (clock signal)

bull Cần thecircm một kecircnh truyền khaacutec để becircn nhận baacuteo cho becircn gởi biết lagrave đatilde sẵn

sagraveng để nhận dữ liệu kế tiếp

12 Truyền dữ liệu tuần tự

bull Tất cả caacutec bit đều được truyền trecircn cugraveng một đường truyền bit nagravey tiếp theo

sau bit kia

bull Khocircng cần caacutec đường truyền riecircng cho tiacuten hiệu đồng bộ vagrave tiacuten hiệu bắt tay (caacutec

tiacuten hiệu nagravey được matilde hoacutea vagraveo dữ liệu truyền đi)

bull Vấn đề định thời (timing) đogravei hỏi phải coacute cơ chế đồng bộ giữa becircn truyền vagrave

becircn nhận

bull 2 caacutech giải quyết

- Bất đồng bộ mỗi kyacute tự được đồng bộ bởi start vagrave stop bit

- Đồng bộ mỗi khối kyacute tự được đồng bộ dugraveng cờ

13 Truyền bất đồng bộ

bull Dữ liệu được truyền theo từng kyacute tự để traacutenh việc mất đồng bộ khi nhận được chuỗi

bit quaacute dagravei

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 17

- 5 đến 8 bits

- Chỉ cần giữ đồng bộ trong một kyacute tự

- Taacutei đồng bộ cho mỗi kyacute tự mới

bull Hagravenh vi

- Đối với dograveng dữ liệu đều khoảng caacutech giữa caacutec kyacute tự lagrave đồng nhất (bằng chiều dagravei

của phần tử stop)

- Ở trạng thaacutei rỗi bộ thu phaacutet hiện sự chuyển 1 đến 0

- Lấy mẫu 7 khoảng kế tiếp (chiều dagravei kyacute tự)

- Đợi việc chuyển 1 đến 0 cho kyacute tự kế tiếp

bull Hiệu suất

- Đơn giản

- Rẻ

- Phiacute tổn 2 hoặc 3 bit cho một kyacute tự (~20)

- Thiacutech hợp cho dữ liệu với khoảng trống giữa caacutec kyacute tự lớn (dữ liệu nhập từ bagraven

phiacutem)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 18

bull Đồng bộ khung (frame synchronization) dugraveng caacutec kyacute tự điều khiển (STX ETX

DLE)

14 Truyền đồng bộ

bull Truyền khocircng cần startstop

bull Phải coacute tiacuten hiệu đồng bộ

bull Đồng bộ bit (bit synchronization) sử dụng caacutec phƣơng phaacutep sau

- Tiacutech hợp xung clock vagraveo dữ liệu truyền đi

+ Tiacutech hợp thocircng tin đồng bộ (clock) vagraveo trong dữ liệu truyền

+ Đầu nhận sẽ taacutech thocircng tin đồng bộ dựa vagraveo dữ liệu nhận được

+ Manchester differential Manchester tần số soacuteng mang (analog)

- Sử dụng đường clock riecircng

+ Dugraveng một đường tiacuten hiệu đồng bộ riecircng biệt

+ Một becircn (phaacutet hoặc nhận) tạo ra caacutec xung clock đồng bộ với caacutec bit truyền đi

trecircn đường clock riecircng

+ Becircn cograven lại dugraveng tiacuten hiệu trecircn đường clock riecircng để lagravem clock

+ Thiacutech hợp khi truyền trong khoảng caacutech ngắn

+ Tiacuten hiệu đồng bộ dễ bị suy giảm trecircn đường truyền

bull Đồng bộ frame

- Mỗi block dữ liệu được bắt đầu bằng một cờ gọi lagrave preamble kết thuacutec bằng

một cờ gọi lagrave postamble

- Preamble vagrave postamble lagrave một mẫu bit (bit pattern) được quy định sẵn

+ Một chuỗi caacutec kyacute tự SYN (16h trong bảng matilde ASCII)

+ Mẫu bit 11111110

- Frame dữ liệu + preamble + postamble + thocircng tin điều khiển

- Hiệu quả hơn so với truyền bất đồng bộ (phiacute tổn thấp hơn cho caacutec bit điều

khiển)

+ HDLC 48 bit điều khiển cho mỗi block 1000 kyacute tự (8000 bit)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 19

2 VẤN ĐỀ XỬ LYacute LỖI

11 Caacutec lỗi xẩy ra trecircn đường truyền

bull Mocirci trƣờng truyền dẫn bị nhiễu (điện từ hellip) dẫn đến dữ liệu nhận coacute lỗi

(caacutec bit bị thay đổi)

bull 2 caacutech khắc phục khi phaacutet hiện coacute lỗi

- Forward error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự hoặc caacutec

frame truyền đi để becircn nhận coacute thể phaacutet hiện khi nagraveo coacute lỗi va lỗi nằm ở đacircu để sửa

(coacute khả năng sửa lỗi)

- Feedback (backward) error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự

hoặc caacutec frame truyền đi chỉ đủ để phaacutet hiện khi nagraveo coacute lỗi (khocircng coacute khả năng sửa

lỗi) Cơ chế yecircu cầu truyền lại kyacute tựframe sai được dugraveng trong trường hợp nagravey

bull Phacircn loại lỗi

- Lỗi 1 bit

+ Chỉ 1 bit bị lỗi khocircng ảnh hưởng caacutec bit xung quanh

+ Thường xảy ra do nhiễu trắng

- Lỗi chugravem (busrt error)

+ Một chuỗi liecircn tục B bit trong đoacute bit đầu bit cuối vagrave caacutec bit bất kigrave nằm giữa

chuỗi đều bị lỗi

+ Thường xảy ra do nhiễu xung

+ Ảnh hưởng cagraveng lớn đối với tốc độ truyền cao

Bit error rate (BER) xaacutec suất một bit nhận đƣợc bị lỗi

12 Cơ chế phaacutet hiện lỗi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 14

Mặc dugrave việc chọn đường gặp nhiều khoacute khăn nhưng khi coacute một giao thức chọn

đường tốt sẽ tiết kiệm thời gian truyền nhận thocircng tin giảm năng lượng tiecircu hao latildeng

phiacute do tắc nghẽn lỗi đường truyềnVigrave vậy người ta đatilde đưa ra một số giao thức chọn

đường magrave dưới đacircy sẽ trigravenh bầy

322 Caacutec giao thức chọn đường

Phần nagravey sẽ trigravenh bagravey về phương phaacutep chọn đường trong WSN Noacutei chung caacutec

giao thức chọn đường được chia lagravem 3 loại dựa vagraveo cấu truacutec mạng ngang hagraveng phacircn

cấp hoặc dựa vagraveo vị triacute

Trong chọn đường ngang hagraveng tất cả caacutec nuacutet thường coacute vai trograve hoặc chức năng

như nhau như cảm nhận truyền Chuacuteng sẽ thực hiện việc cảm nhận thocircng tin cần

thiết vagrave truyền số liệu về nuacutet gốc

Trong chọn đường phacircn cấp caacutec nuacutet sẽ đoacuteng vai trograve khaacutec nhau trong mạng sẽ coacute

nuacutet chủ đại diện cho từng nhoacutem caacutec nuacutet cảm biến để nhận số liệu từ caacutec nuacutet cảm biến

truyền tới Caacutec nuacutet chủ cũng tập hợp số liệu từ caacutec nuacutet trong nhoacutem của noacute trước khi

gửi số liệu đến nuacutet gốc Nuacutet chủ sẽ thay đổi khi bắt đầu chu kỳ lagravem việc mới vagrave sẽ thay

bằng nuacutet khaacutec coacute khả năng đảm nhận chức năng nagravey

Trong chọn đường dựa theo vị triacute thigrave vị triacute của caacutec nuacutet cảm biến sẽ được dugraveng để

chọn đường số liệu Giao thức chọn đường cograven coacute thể được phacircn loại dựa theo đa

đường yecircu cầu hỏiđaacutep QoS vagrave liecircn kết tuỳ thuộc vagraveo chế độ hoạt động Ngoagravei ra

cũng coacute thể chia thagravenh 3 loại chủ động tương taacutec hoặc lai gheacutep tuỳ thuộc vagraveo caacutech

thức magrave nguồn tigravem đường tời điacutech Một giao thức chọn đường được coi lagrave thiacutech ứng

nếu caacutec tham số của hệ thống coacute thể điều khiển được để phugrave hợp với caacutec trạng thaacutei

mạng hiện tại vagrave caacutec mức năng lượng khả dụng Một số giao thức chọn đường đatilde phaacutet

huy hiệu quả tiết kiệm tiecircu thụ năng lượng như LEACH

TEENampAPTEEN MECNampSVECN PEGASIS thuộc chọn đường phacircn cấp SPIN

Directed Diffusion CADR CUGAR thuộc chọn đường ngang hagraveng Trong đoacute đaacuteng

quan tacircm nhất lagrave giao thức chọn đường LEACH LEACH (Low Energy Adaptive

Clustering Hierarchy) - phacircn cấp nhoacutem thiacutech ứng cocircng suất thấp giao thức nagravey cho

pheacutep tiết kiệm năng lượng trong mạng WSN Mục điacutech của LEACH lagrave lựa chọn ngẫu

nhiecircn caacutec nuacutet cảm biến lagravem caacutec nuacutet chủ do đoacute việc tiecircu hao năng lượng khi liecircn lạc

với nuacutet gốc được trải đều cho tất cả caacutec nuacutet cảm biến trong mạng Quaacute trigravenh hoạt động

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 15

của LEACH được chia thagravenh 2 bước bước thiết lập vagrave bước ổn định Thời gian bước

ổn định keacuteo dagravei hơn so với thời gian của bước thiết lập để giảm thiểu phần điều khiển

Tại bước thiết lập sẽ xaacutec định nuacutet mạng nagraveo sẽ lagravem chủ Tại bước ổn định caacutec nuacutet cảm

biến bắt đầu cảm nhận vagrave truyền số liệu về nuacutet chủ nuacutet chủ cũng tập hợp số liệu từ caacutec

nuacutet trong nhoacutem trước khi gửi caacutec số liệu nagravey về nuacutet gốc Theo thử nghiệm mocirc phỏng

giao thức LEACH của mạng WSN coacute 160 nuacutet phacircn bố đều cocircng suất ban đầu của nuacutet

lagrave 30 Kết quả thu được lagrave khi truyền trực tiếp tới nuacutet gốc sau khoảng 470 chu kỳ

thời gian sẽ kết thuacutec truyền tin khi sử dụng giao thức LEACH sau khoảng 685 chu kỳ

thời gian mới kết thuacutec truyền tin Kết quả nagravey cho thấy đacircy lagrave một phương phaacutep chọn

đường phacircn cấp coacute khả năng tiết kiệm được năng lượng vagrave keacuteo dagravei thời gian sống của

mạng

Tuy nhiecircn cơ chế hoạt động của LEACH lagrave lựa chọn số liệu được tập trung vagrave

thực hiện theo chu kỳ Do đoacute giao thức nagravey chỉ thiacutech hợp với yecircu cầu giaacutem saacutet liecircn tục

bởi mạng cảm biến Với ứng dụng magrave người sử dụng khocircng cần tất cả caacutec số liệu ngay

lập tức thigrave việc truyền số liệu theo chu kỳ lagrave khocircng cần thiết vagrave coacute thể lagravem tiecircu tốn

năng lượng vocirc iacutech Giao thức LEACH cần tiếp tục được cải tiến để khắc phục hạn chế

33 Hoạt động truyền nhận khocircng dacircy

Đối với mạng cảm nhận khocircng dacircy thigrave năng lượng trở thagravenh một vấn đề được chuacute

yacute để duy trigrave hoạt động của hệ thống mạng vigrave caacutec nuacutet mạng độc lập chỉ được cung cấp

năng lượng từ một nguồn cố định (pin) Việc tiecircu thụ năng lượng thấp lagrave một nhu cầu

quan trọng cho caacutec hệ thống hoạt động bằng pin - khocircng được cung cấp năng lượng

thường xuyecircn Khi coacute một dograveng tiecircu thụ thấp thigrave thời gian sống của chuacuteng sẽ keacuteo dagravei

thecircm Hệ thống tiecircu thụ năng lượng thấp lagrave mục tiecircu cần đạt của mạng cảm nhận

khocircng dacircy sử dụng CC1010 Caacutec vấn đề đưa ra trong phần nagravey lagrave cơ sở cho việc viết

phần mềm tiết kiệm tiecircu thụ năng lượng cho nuacutet mạng cảm nhận khocircng dacircy

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 16

CHƢƠNG 2 MAtilde SỬA LỖI

Mạng phải coacute khả năng truyền chiacutenh xaacutec dữ liệu từ thiết bị nagravey tới thiết bị khaacutec

Một hệ thống khocircng bảo đảm dữ liệu nhận giống như dữ liệu truyền lagrave hệ thống khocircng

sử dụng được Coacute nhiều nhacircn tố như tạp nhiễu đường dacircy coacute thể lagravem hỏng một hoặc

nhiều bit của khối dữ liệu đang truyền Một hệ thống thực sự dugraveng được phải coacute cơ cấu

để phaacutet hiện vagrave sửa caacutec lỗi đoacute

Việc phaacutet hiện vagrave sửa lỗi được trang bị ở lớp liecircn kết dữ liệu hoặc lớp giao vận

tương ứng trong mocirc higravenh OSI

1 CAacuteC CƠ CHẾ TRUYỀN DỮ LIỆU

11 Truyền dữ liệu song song

bull Mỗi bit dugraveng một đường truyền riecircng Nếu coacute 8 bits được truyền đồng thời sẽ

yecircu cầu 8 đường truyền độc lập

bull Để truyền dữ liệu trecircn một đường truyền song song một kecircnh truyền riecircng

được dugraveng để thocircng baacuteo cho becircn nhận biết khi nagraveo dữ liệu coacute sẵn (clock signal)

bull Cần thecircm một kecircnh truyền khaacutec để becircn nhận baacuteo cho becircn gởi biết lagrave đatilde sẵn

sagraveng để nhận dữ liệu kế tiếp

12 Truyền dữ liệu tuần tự

bull Tất cả caacutec bit đều được truyền trecircn cugraveng một đường truyền bit nagravey tiếp theo

sau bit kia

bull Khocircng cần caacutec đường truyền riecircng cho tiacuten hiệu đồng bộ vagrave tiacuten hiệu bắt tay (caacutec

tiacuten hiệu nagravey được matilde hoacutea vagraveo dữ liệu truyền đi)

bull Vấn đề định thời (timing) đogravei hỏi phải coacute cơ chế đồng bộ giữa becircn truyền vagrave

becircn nhận

bull 2 caacutech giải quyết

- Bất đồng bộ mỗi kyacute tự được đồng bộ bởi start vagrave stop bit

- Đồng bộ mỗi khối kyacute tự được đồng bộ dugraveng cờ

13 Truyền bất đồng bộ

bull Dữ liệu được truyền theo từng kyacute tự để traacutenh việc mất đồng bộ khi nhận được chuỗi

bit quaacute dagravei

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 17

- 5 đến 8 bits

- Chỉ cần giữ đồng bộ trong một kyacute tự

- Taacutei đồng bộ cho mỗi kyacute tự mới

bull Hagravenh vi

- Đối với dograveng dữ liệu đều khoảng caacutech giữa caacutec kyacute tự lagrave đồng nhất (bằng chiều dagravei

của phần tử stop)

- Ở trạng thaacutei rỗi bộ thu phaacutet hiện sự chuyển 1 đến 0

- Lấy mẫu 7 khoảng kế tiếp (chiều dagravei kyacute tự)

- Đợi việc chuyển 1 đến 0 cho kyacute tự kế tiếp

bull Hiệu suất

- Đơn giản

- Rẻ

- Phiacute tổn 2 hoặc 3 bit cho một kyacute tự (~20)

- Thiacutech hợp cho dữ liệu với khoảng trống giữa caacutec kyacute tự lớn (dữ liệu nhập từ bagraven

phiacutem)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 18

bull Đồng bộ khung (frame synchronization) dugraveng caacutec kyacute tự điều khiển (STX ETX

DLE)

14 Truyền đồng bộ

bull Truyền khocircng cần startstop

bull Phải coacute tiacuten hiệu đồng bộ

bull Đồng bộ bit (bit synchronization) sử dụng caacutec phƣơng phaacutep sau

- Tiacutech hợp xung clock vagraveo dữ liệu truyền đi

+ Tiacutech hợp thocircng tin đồng bộ (clock) vagraveo trong dữ liệu truyền

+ Đầu nhận sẽ taacutech thocircng tin đồng bộ dựa vagraveo dữ liệu nhận được

+ Manchester differential Manchester tần số soacuteng mang (analog)

- Sử dụng đường clock riecircng

+ Dugraveng một đường tiacuten hiệu đồng bộ riecircng biệt

+ Một becircn (phaacutet hoặc nhận) tạo ra caacutec xung clock đồng bộ với caacutec bit truyền đi

trecircn đường clock riecircng

+ Becircn cograven lại dugraveng tiacuten hiệu trecircn đường clock riecircng để lagravem clock

+ Thiacutech hợp khi truyền trong khoảng caacutech ngắn

+ Tiacuten hiệu đồng bộ dễ bị suy giảm trecircn đường truyền

bull Đồng bộ frame

- Mỗi block dữ liệu được bắt đầu bằng một cờ gọi lagrave preamble kết thuacutec bằng

một cờ gọi lagrave postamble

- Preamble vagrave postamble lagrave một mẫu bit (bit pattern) được quy định sẵn

+ Một chuỗi caacutec kyacute tự SYN (16h trong bảng matilde ASCII)

+ Mẫu bit 11111110

- Frame dữ liệu + preamble + postamble + thocircng tin điều khiển

- Hiệu quả hơn so với truyền bất đồng bộ (phiacute tổn thấp hơn cho caacutec bit điều

khiển)

+ HDLC 48 bit điều khiển cho mỗi block 1000 kyacute tự (8000 bit)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 19

2 VẤN ĐỀ XỬ LYacute LỖI

11 Caacutec lỗi xẩy ra trecircn đường truyền

bull Mocirci trƣờng truyền dẫn bị nhiễu (điện từ hellip) dẫn đến dữ liệu nhận coacute lỗi

(caacutec bit bị thay đổi)

bull 2 caacutech khắc phục khi phaacutet hiện coacute lỗi

- Forward error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự hoặc caacutec

frame truyền đi để becircn nhận coacute thể phaacutet hiện khi nagraveo coacute lỗi va lỗi nằm ở đacircu để sửa

(coacute khả năng sửa lỗi)

- Feedback (backward) error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự

hoặc caacutec frame truyền đi chỉ đủ để phaacutet hiện khi nagraveo coacute lỗi (khocircng coacute khả năng sửa

lỗi) Cơ chế yecircu cầu truyền lại kyacute tựframe sai được dugraveng trong trường hợp nagravey

bull Phacircn loại lỗi

- Lỗi 1 bit

+ Chỉ 1 bit bị lỗi khocircng ảnh hưởng caacutec bit xung quanh

+ Thường xảy ra do nhiễu trắng

- Lỗi chugravem (busrt error)

+ Một chuỗi liecircn tục B bit trong đoacute bit đầu bit cuối vagrave caacutec bit bất kigrave nằm giữa

chuỗi đều bị lỗi

+ Thường xảy ra do nhiễu xung

+ Ảnh hưởng cagraveng lớn đối với tốc độ truyền cao

Bit error rate (BER) xaacutec suất một bit nhận đƣợc bị lỗi

12 Cơ chế phaacutet hiện lỗi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 15

của LEACH được chia thagravenh 2 bước bước thiết lập vagrave bước ổn định Thời gian bước

ổn định keacuteo dagravei hơn so với thời gian của bước thiết lập để giảm thiểu phần điều khiển

Tại bước thiết lập sẽ xaacutec định nuacutet mạng nagraveo sẽ lagravem chủ Tại bước ổn định caacutec nuacutet cảm

biến bắt đầu cảm nhận vagrave truyền số liệu về nuacutet chủ nuacutet chủ cũng tập hợp số liệu từ caacutec

nuacutet trong nhoacutem trước khi gửi caacutec số liệu nagravey về nuacutet gốc Theo thử nghiệm mocirc phỏng

giao thức LEACH của mạng WSN coacute 160 nuacutet phacircn bố đều cocircng suất ban đầu của nuacutet

lagrave 30 Kết quả thu được lagrave khi truyền trực tiếp tới nuacutet gốc sau khoảng 470 chu kỳ

thời gian sẽ kết thuacutec truyền tin khi sử dụng giao thức LEACH sau khoảng 685 chu kỳ

thời gian mới kết thuacutec truyền tin Kết quả nagravey cho thấy đacircy lagrave một phương phaacutep chọn

đường phacircn cấp coacute khả năng tiết kiệm được năng lượng vagrave keacuteo dagravei thời gian sống của

mạng

Tuy nhiecircn cơ chế hoạt động của LEACH lagrave lựa chọn số liệu được tập trung vagrave

thực hiện theo chu kỳ Do đoacute giao thức nagravey chỉ thiacutech hợp với yecircu cầu giaacutem saacutet liecircn tục

bởi mạng cảm biến Với ứng dụng magrave người sử dụng khocircng cần tất cả caacutec số liệu ngay

lập tức thigrave việc truyền số liệu theo chu kỳ lagrave khocircng cần thiết vagrave coacute thể lagravem tiecircu tốn

năng lượng vocirc iacutech Giao thức LEACH cần tiếp tục được cải tiến để khắc phục hạn chế

33 Hoạt động truyền nhận khocircng dacircy

Đối với mạng cảm nhận khocircng dacircy thigrave năng lượng trở thagravenh một vấn đề được chuacute

yacute để duy trigrave hoạt động của hệ thống mạng vigrave caacutec nuacutet mạng độc lập chỉ được cung cấp

năng lượng từ một nguồn cố định (pin) Việc tiecircu thụ năng lượng thấp lagrave một nhu cầu

quan trọng cho caacutec hệ thống hoạt động bằng pin - khocircng được cung cấp năng lượng

thường xuyecircn Khi coacute một dograveng tiecircu thụ thấp thigrave thời gian sống của chuacuteng sẽ keacuteo dagravei

thecircm Hệ thống tiecircu thụ năng lượng thấp lagrave mục tiecircu cần đạt của mạng cảm nhận

khocircng dacircy sử dụng CC1010 Caacutec vấn đề đưa ra trong phần nagravey lagrave cơ sở cho việc viết

phần mềm tiết kiệm tiecircu thụ năng lượng cho nuacutet mạng cảm nhận khocircng dacircy

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 16

CHƢƠNG 2 MAtilde SỬA LỖI

Mạng phải coacute khả năng truyền chiacutenh xaacutec dữ liệu từ thiết bị nagravey tới thiết bị khaacutec

Một hệ thống khocircng bảo đảm dữ liệu nhận giống như dữ liệu truyền lagrave hệ thống khocircng

sử dụng được Coacute nhiều nhacircn tố như tạp nhiễu đường dacircy coacute thể lagravem hỏng một hoặc

nhiều bit của khối dữ liệu đang truyền Một hệ thống thực sự dugraveng được phải coacute cơ cấu

để phaacutet hiện vagrave sửa caacutec lỗi đoacute

Việc phaacutet hiện vagrave sửa lỗi được trang bị ở lớp liecircn kết dữ liệu hoặc lớp giao vận

tương ứng trong mocirc higravenh OSI

1 CAacuteC CƠ CHẾ TRUYỀN DỮ LIỆU

11 Truyền dữ liệu song song

bull Mỗi bit dugraveng một đường truyền riecircng Nếu coacute 8 bits được truyền đồng thời sẽ

yecircu cầu 8 đường truyền độc lập

bull Để truyền dữ liệu trecircn một đường truyền song song một kecircnh truyền riecircng

được dugraveng để thocircng baacuteo cho becircn nhận biết khi nagraveo dữ liệu coacute sẵn (clock signal)

bull Cần thecircm một kecircnh truyền khaacutec để becircn nhận baacuteo cho becircn gởi biết lagrave đatilde sẵn

sagraveng để nhận dữ liệu kế tiếp

12 Truyền dữ liệu tuần tự

bull Tất cả caacutec bit đều được truyền trecircn cugraveng một đường truyền bit nagravey tiếp theo

sau bit kia

bull Khocircng cần caacutec đường truyền riecircng cho tiacuten hiệu đồng bộ vagrave tiacuten hiệu bắt tay (caacutec

tiacuten hiệu nagravey được matilde hoacutea vagraveo dữ liệu truyền đi)

bull Vấn đề định thời (timing) đogravei hỏi phải coacute cơ chế đồng bộ giữa becircn truyền vagrave

becircn nhận

bull 2 caacutech giải quyết

- Bất đồng bộ mỗi kyacute tự được đồng bộ bởi start vagrave stop bit

- Đồng bộ mỗi khối kyacute tự được đồng bộ dugraveng cờ

13 Truyền bất đồng bộ

bull Dữ liệu được truyền theo từng kyacute tự để traacutenh việc mất đồng bộ khi nhận được chuỗi

bit quaacute dagravei

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 17

- 5 đến 8 bits

- Chỉ cần giữ đồng bộ trong một kyacute tự

- Taacutei đồng bộ cho mỗi kyacute tự mới

bull Hagravenh vi

- Đối với dograveng dữ liệu đều khoảng caacutech giữa caacutec kyacute tự lagrave đồng nhất (bằng chiều dagravei

của phần tử stop)

- Ở trạng thaacutei rỗi bộ thu phaacutet hiện sự chuyển 1 đến 0

- Lấy mẫu 7 khoảng kế tiếp (chiều dagravei kyacute tự)

- Đợi việc chuyển 1 đến 0 cho kyacute tự kế tiếp

bull Hiệu suất

- Đơn giản

- Rẻ

- Phiacute tổn 2 hoặc 3 bit cho một kyacute tự (~20)

- Thiacutech hợp cho dữ liệu với khoảng trống giữa caacutec kyacute tự lớn (dữ liệu nhập từ bagraven

phiacutem)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 18

bull Đồng bộ khung (frame synchronization) dugraveng caacutec kyacute tự điều khiển (STX ETX

DLE)

14 Truyền đồng bộ

bull Truyền khocircng cần startstop

bull Phải coacute tiacuten hiệu đồng bộ

bull Đồng bộ bit (bit synchronization) sử dụng caacutec phƣơng phaacutep sau

- Tiacutech hợp xung clock vagraveo dữ liệu truyền đi

+ Tiacutech hợp thocircng tin đồng bộ (clock) vagraveo trong dữ liệu truyền

+ Đầu nhận sẽ taacutech thocircng tin đồng bộ dựa vagraveo dữ liệu nhận được

+ Manchester differential Manchester tần số soacuteng mang (analog)

- Sử dụng đường clock riecircng

+ Dugraveng một đường tiacuten hiệu đồng bộ riecircng biệt

+ Một becircn (phaacutet hoặc nhận) tạo ra caacutec xung clock đồng bộ với caacutec bit truyền đi

trecircn đường clock riecircng

+ Becircn cograven lại dugraveng tiacuten hiệu trecircn đường clock riecircng để lagravem clock

+ Thiacutech hợp khi truyền trong khoảng caacutech ngắn

+ Tiacuten hiệu đồng bộ dễ bị suy giảm trecircn đường truyền

bull Đồng bộ frame

- Mỗi block dữ liệu được bắt đầu bằng một cờ gọi lagrave preamble kết thuacutec bằng

một cờ gọi lagrave postamble

- Preamble vagrave postamble lagrave một mẫu bit (bit pattern) được quy định sẵn

+ Một chuỗi caacutec kyacute tự SYN (16h trong bảng matilde ASCII)

+ Mẫu bit 11111110

- Frame dữ liệu + preamble + postamble + thocircng tin điều khiển

- Hiệu quả hơn so với truyền bất đồng bộ (phiacute tổn thấp hơn cho caacutec bit điều

khiển)

+ HDLC 48 bit điều khiển cho mỗi block 1000 kyacute tự (8000 bit)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 19

2 VẤN ĐỀ XỬ LYacute LỖI

11 Caacutec lỗi xẩy ra trecircn đường truyền

bull Mocirci trƣờng truyền dẫn bị nhiễu (điện từ hellip) dẫn đến dữ liệu nhận coacute lỗi

(caacutec bit bị thay đổi)

bull 2 caacutech khắc phục khi phaacutet hiện coacute lỗi

- Forward error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự hoặc caacutec

frame truyền đi để becircn nhận coacute thể phaacutet hiện khi nagraveo coacute lỗi va lỗi nằm ở đacircu để sửa

(coacute khả năng sửa lỗi)

- Feedback (backward) error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự

hoặc caacutec frame truyền đi chỉ đủ để phaacutet hiện khi nagraveo coacute lỗi (khocircng coacute khả năng sửa

lỗi) Cơ chế yecircu cầu truyền lại kyacute tựframe sai được dugraveng trong trường hợp nagravey

bull Phacircn loại lỗi

- Lỗi 1 bit

+ Chỉ 1 bit bị lỗi khocircng ảnh hưởng caacutec bit xung quanh

+ Thường xảy ra do nhiễu trắng

- Lỗi chugravem (busrt error)

+ Một chuỗi liecircn tục B bit trong đoacute bit đầu bit cuối vagrave caacutec bit bất kigrave nằm giữa

chuỗi đều bị lỗi

+ Thường xảy ra do nhiễu xung

+ Ảnh hưởng cagraveng lớn đối với tốc độ truyền cao

Bit error rate (BER) xaacutec suất một bit nhận đƣợc bị lỗi

12 Cơ chế phaacutet hiện lỗi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 16

CHƢƠNG 2 MAtilde SỬA LỖI

Mạng phải coacute khả năng truyền chiacutenh xaacutec dữ liệu từ thiết bị nagravey tới thiết bị khaacutec

Một hệ thống khocircng bảo đảm dữ liệu nhận giống như dữ liệu truyền lagrave hệ thống khocircng

sử dụng được Coacute nhiều nhacircn tố như tạp nhiễu đường dacircy coacute thể lagravem hỏng một hoặc

nhiều bit của khối dữ liệu đang truyền Một hệ thống thực sự dugraveng được phải coacute cơ cấu

để phaacutet hiện vagrave sửa caacutec lỗi đoacute

Việc phaacutet hiện vagrave sửa lỗi được trang bị ở lớp liecircn kết dữ liệu hoặc lớp giao vận

tương ứng trong mocirc higravenh OSI

1 CAacuteC CƠ CHẾ TRUYỀN DỮ LIỆU

11 Truyền dữ liệu song song

bull Mỗi bit dugraveng một đường truyền riecircng Nếu coacute 8 bits được truyền đồng thời sẽ

yecircu cầu 8 đường truyền độc lập

bull Để truyền dữ liệu trecircn một đường truyền song song một kecircnh truyền riecircng

được dugraveng để thocircng baacuteo cho becircn nhận biết khi nagraveo dữ liệu coacute sẵn (clock signal)

bull Cần thecircm một kecircnh truyền khaacutec để becircn nhận baacuteo cho becircn gởi biết lagrave đatilde sẵn

sagraveng để nhận dữ liệu kế tiếp

12 Truyền dữ liệu tuần tự

bull Tất cả caacutec bit đều được truyền trecircn cugraveng một đường truyền bit nagravey tiếp theo

sau bit kia

bull Khocircng cần caacutec đường truyền riecircng cho tiacuten hiệu đồng bộ vagrave tiacuten hiệu bắt tay (caacutec

tiacuten hiệu nagravey được matilde hoacutea vagraveo dữ liệu truyền đi)

bull Vấn đề định thời (timing) đogravei hỏi phải coacute cơ chế đồng bộ giữa becircn truyền vagrave

becircn nhận

bull 2 caacutech giải quyết

- Bất đồng bộ mỗi kyacute tự được đồng bộ bởi start vagrave stop bit

- Đồng bộ mỗi khối kyacute tự được đồng bộ dugraveng cờ

13 Truyền bất đồng bộ

bull Dữ liệu được truyền theo từng kyacute tự để traacutenh việc mất đồng bộ khi nhận được chuỗi

bit quaacute dagravei

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 17

- 5 đến 8 bits

- Chỉ cần giữ đồng bộ trong một kyacute tự

- Taacutei đồng bộ cho mỗi kyacute tự mới

bull Hagravenh vi

- Đối với dograveng dữ liệu đều khoảng caacutech giữa caacutec kyacute tự lagrave đồng nhất (bằng chiều dagravei

của phần tử stop)

- Ở trạng thaacutei rỗi bộ thu phaacutet hiện sự chuyển 1 đến 0

- Lấy mẫu 7 khoảng kế tiếp (chiều dagravei kyacute tự)

- Đợi việc chuyển 1 đến 0 cho kyacute tự kế tiếp

bull Hiệu suất

- Đơn giản

- Rẻ

- Phiacute tổn 2 hoặc 3 bit cho một kyacute tự (~20)

- Thiacutech hợp cho dữ liệu với khoảng trống giữa caacutec kyacute tự lớn (dữ liệu nhập từ bagraven

phiacutem)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 18

bull Đồng bộ khung (frame synchronization) dugraveng caacutec kyacute tự điều khiển (STX ETX

DLE)

14 Truyền đồng bộ

bull Truyền khocircng cần startstop

bull Phải coacute tiacuten hiệu đồng bộ

bull Đồng bộ bit (bit synchronization) sử dụng caacutec phƣơng phaacutep sau

- Tiacutech hợp xung clock vagraveo dữ liệu truyền đi

+ Tiacutech hợp thocircng tin đồng bộ (clock) vagraveo trong dữ liệu truyền

+ Đầu nhận sẽ taacutech thocircng tin đồng bộ dựa vagraveo dữ liệu nhận được

+ Manchester differential Manchester tần số soacuteng mang (analog)

- Sử dụng đường clock riecircng

+ Dugraveng một đường tiacuten hiệu đồng bộ riecircng biệt

+ Một becircn (phaacutet hoặc nhận) tạo ra caacutec xung clock đồng bộ với caacutec bit truyền đi

trecircn đường clock riecircng

+ Becircn cograven lại dugraveng tiacuten hiệu trecircn đường clock riecircng để lagravem clock

+ Thiacutech hợp khi truyền trong khoảng caacutech ngắn

+ Tiacuten hiệu đồng bộ dễ bị suy giảm trecircn đường truyền

bull Đồng bộ frame

- Mỗi block dữ liệu được bắt đầu bằng một cờ gọi lagrave preamble kết thuacutec bằng

một cờ gọi lagrave postamble

- Preamble vagrave postamble lagrave một mẫu bit (bit pattern) được quy định sẵn

+ Một chuỗi caacutec kyacute tự SYN (16h trong bảng matilde ASCII)

+ Mẫu bit 11111110

- Frame dữ liệu + preamble + postamble + thocircng tin điều khiển

- Hiệu quả hơn so với truyền bất đồng bộ (phiacute tổn thấp hơn cho caacutec bit điều

khiển)

+ HDLC 48 bit điều khiển cho mỗi block 1000 kyacute tự (8000 bit)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 19

2 VẤN ĐỀ XỬ LYacute LỖI

11 Caacutec lỗi xẩy ra trecircn đường truyền

bull Mocirci trƣờng truyền dẫn bị nhiễu (điện từ hellip) dẫn đến dữ liệu nhận coacute lỗi

(caacutec bit bị thay đổi)

bull 2 caacutech khắc phục khi phaacutet hiện coacute lỗi

- Forward error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự hoặc caacutec

frame truyền đi để becircn nhận coacute thể phaacutet hiện khi nagraveo coacute lỗi va lỗi nằm ở đacircu để sửa

(coacute khả năng sửa lỗi)

- Feedback (backward) error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự

hoặc caacutec frame truyền đi chỉ đủ để phaacutet hiện khi nagraveo coacute lỗi (khocircng coacute khả năng sửa

lỗi) Cơ chế yecircu cầu truyền lại kyacute tựframe sai được dugraveng trong trường hợp nagravey

bull Phacircn loại lỗi

- Lỗi 1 bit

+ Chỉ 1 bit bị lỗi khocircng ảnh hưởng caacutec bit xung quanh

+ Thường xảy ra do nhiễu trắng

- Lỗi chugravem (busrt error)

+ Một chuỗi liecircn tục B bit trong đoacute bit đầu bit cuối vagrave caacutec bit bất kigrave nằm giữa

chuỗi đều bị lỗi

+ Thường xảy ra do nhiễu xung

+ Ảnh hưởng cagraveng lớn đối với tốc độ truyền cao

Bit error rate (BER) xaacutec suất một bit nhận đƣợc bị lỗi

12 Cơ chế phaacutet hiện lỗi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 17

- 5 đến 8 bits

- Chỉ cần giữ đồng bộ trong một kyacute tự

- Taacutei đồng bộ cho mỗi kyacute tự mới

bull Hagravenh vi

- Đối với dograveng dữ liệu đều khoảng caacutech giữa caacutec kyacute tự lagrave đồng nhất (bằng chiều dagravei

của phần tử stop)

- Ở trạng thaacutei rỗi bộ thu phaacutet hiện sự chuyển 1 đến 0

- Lấy mẫu 7 khoảng kế tiếp (chiều dagravei kyacute tự)

- Đợi việc chuyển 1 đến 0 cho kyacute tự kế tiếp

bull Hiệu suất

- Đơn giản

- Rẻ

- Phiacute tổn 2 hoặc 3 bit cho một kyacute tự (~20)

- Thiacutech hợp cho dữ liệu với khoảng trống giữa caacutec kyacute tự lớn (dữ liệu nhập từ bagraven

phiacutem)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 18

bull Đồng bộ khung (frame synchronization) dugraveng caacutec kyacute tự điều khiển (STX ETX

DLE)

14 Truyền đồng bộ

bull Truyền khocircng cần startstop

bull Phải coacute tiacuten hiệu đồng bộ

bull Đồng bộ bit (bit synchronization) sử dụng caacutec phƣơng phaacutep sau

- Tiacutech hợp xung clock vagraveo dữ liệu truyền đi

+ Tiacutech hợp thocircng tin đồng bộ (clock) vagraveo trong dữ liệu truyền

+ Đầu nhận sẽ taacutech thocircng tin đồng bộ dựa vagraveo dữ liệu nhận được

+ Manchester differential Manchester tần số soacuteng mang (analog)

- Sử dụng đường clock riecircng

+ Dugraveng một đường tiacuten hiệu đồng bộ riecircng biệt

+ Một becircn (phaacutet hoặc nhận) tạo ra caacutec xung clock đồng bộ với caacutec bit truyền đi

trecircn đường clock riecircng

+ Becircn cograven lại dugraveng tiacuten hiệu trecircn đường clock riecircng để lagravem clock

+ Thiacutech hợp khi truyền trong khoảng caacutech ngắn

+ Tiacuten hiệu đồng bộ dễ bị suy giảm trecircn đường truyền

bull Đồng bộ frame

- Mỗi block dữ liệu được bắt đầu bằng một cờ gọi lagrave preamble kết thuacutec bằng

một cờ gọi lagrave postamble

- Preamble vagrave postamble lagrave một mẫu bit (bit pattern) được quy định sẵn

+ Một chuỗi caacutec kyacute tự SYN (16h trong bảng matilde ASCII)

+ Mẫu bit 11111110

- Frame dữ liệu + preamble + postamble + thocircng tin điều khiển

- Hiệu quả hơn so với truyền bất đồng bộ (phiacute tổn thấp hơn cho caacutec bit điều

khiển)

+ HDLC 48 bit điều khiển cho mỗi block 1000 kyacute tự (8000 bit)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 19

2 VẤN ĐỀ XỬ LYacute LỖI

11 Caacutec lỗi xẩy ra trecircn đường truyền

bull Mocirci trƣờng truyền dẫn bị nhiễu (điện từ hellip) dẫn đến dữ liệu nhận coacute lỗi

(caacutec bit bị thay đổi)

bull 2 caacutech khắc phục khi phaacutet hiện coacute lỗi

- Forward error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự hoặc caacutec

frame truyền đi để becircn nhận coacute thể phaacutet hiện khi nagraveo coacute lỗi va lỗi nằm ở đacircu để sửa

(coacute khả năng sửa lỗi)

- Feedback (backward) error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự

hoặc caacutec frame truyền đi chỉ đủ để phaacutet hiện khi nagraveo coacute lỗi (khocircng coacute khả năng sửa

lỗi) Cơ chế yecircu cầu truyền lại kyacute tựframe sai được dugraveng trong trường hợp nagravey

bull Phacircn loại lỗi

- Lỗi 1 bit

+ Chỉ 1 bit bị lỗi khocircng ảnh hưởng caacutec bit xung quanh

+ Thường xảy ra do nhiễu trắng

- Lỗi chugravem (busrt error)

+ Một chuỗi liecircn tục B bit trong đoacute bit đầu bit cuối vagrave caacutec bit bất kigrave nằm giữa

chuỗi đều bị lỗi

+ Thường xảy ra do nhiễu xung

+ Ảnh hưởng cagraveng lớn đối với tốc độ truyền cao

Bit error rate (BER) xaacutec suất một bit nhận đƣợc bị lỗi

12 Cơ chế phaacutet hiện lỗi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 18

bull Đồng bộ khung (frame synchronization) dugraveng caacutec kyacute tự điều khiển (STX ETX

DLE)

14 Truyền đồng bộ

bull Truyền khocircng cần startstop

bull Phải coacute tiacuten hiệu đồng bộ

bull Đồng bộ bit (bit synchronization) sử dụng caacutec phƣơng phaacutep sau

- Tiacutech hợp xung clock vagraveo dữ liệu truyền đi

+ Tiacutech hợp thocircng tin đồng bộ (clock) vagraveo trong dữ liệu truyền

+ Đầu nhận sẽ taacutech thocircng tin đồng bộ dựa vagraveo dữ liệu nhận được

+ Manchester differential Manchester tần số soacuteng mang (analog)

- Sử dụng đường clock riecircng

+ Dugraveng một đường tiacuten hiệu đồng bộ riecircng biệt

+ Một becircn (phaacutet hoặc nhận) tạo ra caacutec xung clock đồng bộ với caacutec bit truyền đi

trecircn đường clock riecircng

+ Becircn cograven lại dugraveng tiacuten hiệu trecircn đường clock riecircng để lagravem clock

+ Thiacutech hợp khi truyền trong khoảng caacutech ngắn

+ Tiacuten hiệu đồng bộ dễ bị suy giảm trecircn đường truyền

bull Đồng bộ frame

- Mỗi block dữ liệu được bắt đầu bằng một cờ gọi lagrave preamble kết thuacutec bằng

một cờ gọi lagrave postamble

- Preamble vagrave postamble lagrave một mẫu bit (bit pattern) được quy định sẵn

+ Một chuỗi caacutec kyacute tự SYN (16h trong bảng matilde ASCII)

+ Mẫu bit 11111110

- Frame dữ liệu + preamble + postamble + thocircng tin điều khiển

- Hiệu quả hơn so với truyền bất đồng bộ (phiacute tổn thấp hơn cho caacutec bit điều

khiển)

+ HDLC 48 bit điều khiển cho mỗi block 1000 kyacute tự (8000 bit)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 19

2 VẤN ĐỀ XỬ LYacute LỖI

11 Caacutec lỗi xẩy ra trecircn đường truyền

bull Mocirci trƣờng truyền dẫn bị nhiễu (điện từ hellip) dẫn đến dữ liệu nhận coacute lỗi

(caacutec bit bị thay đổi)

bull 2 caacutech khắc phục khi phaacutet hiện coacute lỗi

- Forward error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự hoặc caacutec

frame truyền đi để becircn nhận coacute thể phaacutet hiện khi nagraveo coacute lỗi va lỗi nằm ở đacircu để sửa

(coacute khả năng sửa lỗi)

- Feedback (backward) error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự

hoặc caacutec frame truyền đi chỉ đủ để phaacutet hiện khi nagraveo coacute lỗi (khocircng coacute khả năng sửa

lỗi) Cơ chế yecircu cầu truyền lại kyacute tựframe sai được dugraveng trong trường hợp nagravey

bull Phacircn loại lỗi

- Lỗi 1 bit

+ Chỉ 1 bit bị lỗi khocircng ảnh hưởng caacutec bit xung quanh

+ Thường xảy ra do nhiễu trắng

- Lỗi chugravem (busrt error)

+ Một chuỗi liecircn tục B bit trong đoacute bit đầu bit cuối vagrave caacutec bit bất kigrave nằm giữa

chuỗi đều bị lỗi

+ Thường xảy ra do nhiễu xung

+ Ảnh hưởng cagraveng lớn đối với tốc độ truyền cao

Bit error rate (BER) xaacutec suất một bit nhận đƣợc bị lỗi

12 Cơ chế phaacutet hiện lỗi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 19

2 VẤN ĐỀ XỬ LYacute LỖI

11 Caacutec lỗi xẩy ra trecircn đường truyền

bull Mocirci trƣờng truyền dẫn bị nhiễu (điện từ hellip) dẫn đến dữ liệu nhận coacute lỗi

(caacutec bit bị thay đổi)

bull 2 caacutech khắc phục khi phaacutet hiện coacute lỗi

- Forward error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự hoặc caacutec

frame truyền đi để becircn nhận coacute thể phaacutet hiện khi nagraveo coacute lỗi va lỗi nằm ở đacircu để sửa

(coacute khả năng sửa lỗi)

- Feedback (backward) error control thocircng tin sửa sai được thecircm vagraveo caacutec kyacute tự

hoặc caacutec frame truyền đi chỉ đủ để phaacutet hiện khi nagraveo coacute lỗi (khocircng coacute khả năng sửa

lỗi) Cơ chế yecircu cầu truyền lại kyacute tựframe sai được dugraveng trong trường hợp nagravey

bull Phacircn loại lỗi

- Lỗi 1 bit

+ Chỉ 1 bit bị lỗi khocircng ảnh hưởng caacutec bit xung quanh

+ Thường xảy ra do nhiễu trắng

- Lỗi chugravem (busrt error)

+ Một chuỗi liecircn tục B bit trong đoacute bit đầu bit cuối vagrave caacutec bit bất kigrave nằm giữa

chuỗi đều bị lỗi

+ Thường xảy ra do nhiễu xung

+ Ảnh hưởng cagraveng lớn đối với tốc độ truyền cao

Bit error rate (BER) xaacutec suất một bit nhận đƣợc bị lỗi

12 Cơ chế phaacutet hiện lỗi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 20

13 Phaacutet hiện lỗi bằng bit parity

bull 1 bit parity đƣợc thecircm vagraveo 1 khối dữ liệu cần truyền đi

bull Bit parity

- Parity chẵn tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số chẵn

- Parity lẻ tổng số bit 1 coacute trong khối dữ liệu kể cả bit parity lagrave số lẻ

Coacute đặc điểm

- Chỉ dograve được lỗi sai một số lẻ bit khocircng dograve được lỗi sai một số chẵn bit

- Khocircng sửa được lỗi

- Iacutet được dugraveng trong truyền dữ liệu đi xa đặc biệt ở tốc độ cao

14 Bộ matilde phaacutet hiện lỗi

Khi truyền tải một chuỗi caacutec bit caacutec lỗi coacute thể phaacutet sinh ra bit 1 coacute thể biến

thagravenh bit 0 hay ngược lại

Ta định nghĩa tỷ lệ lỗi bởi tỷ số sau

τ = Số biacutet bị lỗi Tổng số biacutet được truyền

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 21

Tỷ lệ lỗi nagravey coacute giaacute trị từ 10-5 đến 10-8 Tugravey thuộc vagraveo từng loại ứng dụng một

lỗi coacute mức độ nghiecircm trọng khaacutec nhau chiacutenh vigrave thế cần coacute caacutec cơ chế cho pheacutep phaacutet

hiện lỗi cũng như sửa lỗi

Caacutec thống kecirc cho thấy rằng 88 caacutec lỗi xẩy ra do sai lệch một bit vagrave 10 caacutec lỗi

xảy ra do sự sai lệch 2 bit kề nhau Chiacutenh vigrave thế ta ưu tiecircn cho vấn đề phaacutet hiện caacutec lỗi

trecircn một bit vagrave sửa đổi chuacuteng một caacutech tự động

Với yacute tưởng như thế ta sử dụng caacutec matilde phaacutet hiện lỗi becircn cạnh caacutec thocircng tin hữu

iacutech cần truyền đi ta thecircm vagraveo caacutec thocircng tin điều khiển Becircn nhận thực hiện việc giải

matilde caacutec thocircng tin điều khiển nagravey để phacircn tiacutech xem thocircng tin nhận được lagrave chiacutenh xaacutec

hay coacute lỗi

Higravenh 21 Mocirc higravenh xử lyacute lỗi trong truyền dữ liệu

Thocircng tin điều khiển được đưa vagraveo coacute thể theo 2 chiến lược Chiến lược thứ nhất

gọi lagrave bộ matilde sửa lỗi (Error-correcting codes) vagrave chiến lược thứ hai gọi lagrave bộ matilde phaacutet

hiện lỗi (Error-detecting codes) Bộ matilde sửa lỗi cho pheacutep becircn nhận coacute thể tiacutenh toaacuten vagrave

suy ra được caacutec thocircng tin bị lỗi (sửa dữ liệu bị lỗi) Trong khi bộ matilde phaacutet hiện lỗi chỉ

cho pheacutep becircn nhận phaacutet hiện ra dữ liệu coacute lỗi hay khocircng Nếu coacute lỗi becircn nhận sẽ yecircu

cầu becircn gởi gởi lại thocircng tin Với tốc độ của đường truyền ngagravey cagraveng cao người ta

thấy rằng việc gởi lại một khung thocircng tin bị lỗi sẽ iacutet tốn keacutem hơn so với việc tiacutenh toaacuten

để suy ra giaacute trị ban đầu của caacutec dữ liệu bị lỗi Chiacutenh vigrave thế đa số caacutec hệ thống mạng

ngagravey nay đều chọn bộ matilde phaacutet hiện lỗi

15 Những bộ matilde phaacutet hiện lỗi (Error-Detecting Codes)

Coacute nhiều sơ đồ phaacutet hiện lỗi trong đoacute coacute caacutec sơ đồ thocircng dụng lagrave

- Kiểm tra chẵn lẻ (Parity checks)

- Kiểm tra thecircm theo chiều dọc (Longitudinal reduncy check)

- Kiểm tra phần dư tuần hoagraven (Cyclic redundancy check)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 22

121 Kiểm tra chẵn lẻ (Parity Check)

Sơ đồ phaacutet hiện bit lỗi đơn giản nhất lagrave nối một bit chẵn-lẻ vagraveo cuối của mỗi từ

trong khung Một viacute dụ tiecircu biểu lagrave việc truyền caacutec kyacute tự ASCII magrave trong đoacute một bit

chẵn-lẻ được nối vagraveo mỗi kyacute tự ASCII 7 bit Giaacute trị của bit nagravey được lựa chọn sao cho

coacute một số chẵn của bit 1 với kiểm tra chẵn (even parity) hoặc một số lẻ của bit 1 với

kiểm tra lẻ (odd parity)

Viacute dụ nếu becircn gởi đang truyền một kyacute tự ASCII G ( matilde ASCII lagrave1110001) vagrave

đang dugraveng phương phaacutep kiểm tra lẽ noacute sẽ nối một bit 1 vagrave truyền đi 11100011 Becircn

nhận sẽ kiểm tra kyacute tự nhận được vagrave nếu tổng của caacutec bit 1 lagrave lẻ noacute xem như khocircng coacute

lỗi Nếu một bit hoặc một số lẻ bất kỳ caacutec bit bị lỗi đảo ngược thigrave rotilde ragraveng becircn nhận sẽ

phaacutet hiện được lỗi Tuy nhiecircn nếu hai hay một số chẵn bất kỳ caacutec bit bị lỗi đảo ngược

thigrave noacute sẽ khocircng phaacutet hiện được lỗi Trecircn thực tế những xung nhiễu lại thường đủ dagravei để

coacute thể phaacute hủy hơn một bit đặc biệt lagrave với tốc độ dữ liệu cao Do đoacute cần phải coacute một

phương phaacutep cải thiện trường hợp nagravey

122 Kiểm tra thecircm theo chiều dọc (Longitudinal Redundancy Check or Checksum)

Coacute thể cải thiện sơ đồ trecircn bằng caacutech dugraveng phương phaacutep LRC Trong phương

phaacutep nagravey khung được xem như một khối nhiều kyacute tự được sắp xếp theo dạng hai

chiều vagrave việc kiểm tra được thực hiện cả chiều ngang lẫn chiều dọc

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 23

Theo chiều ngang mỗi kyacute tự được thecircm vagraveo một bit kiểm tra chẵn lẽ như trường

hợp trecircn vagrave được gọi lagrave bit Kiểm tra chiều ngang VRC (Vertical Redundancy Check)

Theo chiều dọc cung cấp thecircm một kyacute tự kiểm tra được gọi lagrave kyacute tự Kiểm tra

chiều dọc LRC (Longitudinal Redundancy Check) hay Checksum Trong đoacute biacutet thứ i

của kyacute tự nagravey chiacutenh lagrave bit kiểm tra cho tất cả caacutec bit thứ i của tất cả caacutec kyacute tự trong

khối

Caacutec pheacutep đo chỉ ra rằng việc dugraveng cả hai VRC vagrave LRC giảm đi tỷ lệ lỗi khocircng

phaacutet hiện được hai đến bốn bậc so với dugraveng chỉ VRC Hatildey xem trường hợp bit 1 vagrave 3

trong kyacute tự 1 đang bị lỗi Khi becircn nhận tiacutenh toaacuten được bit VRC cho kyacute tự 1 noacute sẽ kiểm

tra với bit VRC đatilde nhận vagrave sẽ khocircng phaacutet hiện được lỗi Tuy nhiecircn khi noacute tiacutenh toaacuten

được kyacute tự LRC bit 1 vagrave 3 của kyacute tự nagravey sẽ khaacutec với những bit đoacute trong kyacute tự LRC

nhận được vagrave sẽ phaacutet hiện được lỗi

Tuy nhiecircn ngay sơ đồ nagravey cũng khocircng phải lagrave thật sự tốt Bacircy giờ nếu giả sử bit

1 vagrave 3 của kyacute tự 5 cũng bị lỗi phương phaacutep nagravey sẽ khocircng phaacutet hiện được điểm sai

123 Kiểm tra phần dư tuần hoagraven (Cyclic Redundancy Check)

Để cải tiến hơn nữa caacutec nhagrave thiết kế đatilde dugraveng kỹ thuật mới dễ dagraveng vagrave hiệu quả

được gọi lagrave kiểm tra phần dư tuần hoagraven trong đoacute coacute thể sử dụng một số phương phaacutep

cagravei đặt khaacutec nhau như modulo 2 đa thức thanh ghi dịch vagrave caacutec cổng Exclusive-or

Caacutec thủ tục với modulo 2 diễn ra như sau Với một thocircng điệp M coacute k bit cần gởi

đi becircn gởi sẽ nối vagraveo cuối thocircng điệp một chuỗi F coacute r bit được gọi lagrave Chuỗi kiểm tra

khung (FCS Frame Check Sequence) Chuỗi kiểm tra khung sẽ tiacutenh toaacuten sao cho

khung kết quả T được higravenh thagravenh từ việc nối M với F (gồm k + r bit) coacute thể chia hết

bởi số P nagraveo đoacute được định trước Becircn gởi sẽ gởi T đi Khi becircn nhận nhận được T noacute sẽ

thực hiện pheacutep chia modulo T cho P Nếu pheacutep chia khocircng hết tức coacute số dư becircn nhận

xaacutec định rằng khung T đatilde bị lỗi ngược lại lagrave khocircng coacute lỗi Nếu khung khocircng coacute lỗi

becircn nhận sẽ taacutech thocircng điệp M từ T lagrave k bits trọng số cao của T

Phương phaacutep nagravey dugraveng pheacutep chia modulo 2 trong việc chia T cho P pheacutep toaacuten

modulo 2 dugraveng một pheacutep cộng nhị phacircn khocircng nhớ vagrave đoacute cũng chiacutenh lagrave pheacutep toaacuten

Exclusive-or Viacute dụ sau mocirc tả pheacutep toaacuten cộng vagrave nhacircn modulo 2

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 24

1

111

1

1001

+

1

010

x 1

1

0

101

1

1001

11001

1

01011

Giả sử ta coacute

o M Thocircng điệp k bit cần được gởi sang becircn nhận

o F Chuỗi kiểm tra khung FCS gồm r bit lagrave thocircng tin điều khiển được gởi theo

M để giuacutep becircn nhận coacute thể phaacutet hiện được lỗi

o T =MF lagrave khung (k + r) bit được higravenh thagravenh bằng caacutech nối M vagrave F lại với

nhau T sẽ được truyền sang becircn nhận với r lt k

Với M (k bit) P (r+1 bit) F (r bit) T (k+r bit) thủ tục tiến hagravenh để xaacutec định

checksum F vagrave tạo khung truyền như sau

o Nối r bit 0 vagraveo cuối M hay thực hiện pheacutep nhacircn M với 2r

o Dugraveng pheacutep chia modulo 2 chia chuỗi bit M2r cho P

o Phần dư của pheacutep chia sẽ được cộng với M2r tạo thagravenh khung T truyền đi

o Trong đoacute P được chọn dagravei hơn F một bit vagrave cả hai bit cao nhất vagrave thấp nhất

phải lagrave 1

Ngoagravei ra người ta cograven coacute thể sử dụng phương phaacutep đa thức để biểu diễn phương

phaacutep kiểm tra phần dư tuần hogravean Trong phương phaacutep nagravey người ta biểu diễn caacutec chuỗi

nhị phacircn dưới dạng những đa thức của biến x với caacutec hệ số nhị phacircn Caacutec hệ số tương

ứng với caacutec bit trong chuỗi nhị phacircn cần biểu diễn

Giả sử ta coacute M=110011vagrave P = 11001 khi đoacute M vagrave P sẽ được biểu diễn lại bằng 2

đa thức sau

M(x) = x5 + x

4 + x + 1

P(x) = x4 + x

3 + 1

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 25

Những pheacutep toaacuten trecircn đa thức vẫn lagrave modulo 2 Quaacute trigravenh tiacutenh CRC được mocirc tả

dưới dạng caacutec biểu thức sau

1

2

Caacutec version thường được sử dụng của P lagrave

CRC-12 = X12

+ X11

+ X3 + X

2 + X + 1

CRC-16 = X16

+ X15

+ X2 + 1

CRC-CCITT = X16

+ X12

+ X5 + 1

CRC-32 = X32

+ X26

+ X23

+ X22

+ X16

+ X12

+ X11

+ X10

+ X8 + X

7 + X

5 + X

4 + X

2 + X +1

Viacute dụ

Cho M=1010001101 P=110101

Ta coacute r=5

M(x)= x9+x

7+x

3+x

2+1

x5M(x)= x

14+x

12+x

8+x

7+x

5

P(x) = x5+x

4+x

2+1

Thực hiện pheacutep toaacuten

)(

)()(

)(

)(

xP

xRxQ

xP

xMx r

=gt Q(x)= x9+ x

8+ x

6+x

4+x

2 +x

1

F(x)= x3+ x

2+ x

1 ltgt 01110

Khung cần truyền đi lagrave T= 101000110101110

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 26

CHƢƠNG 3 PHƢƠNG PHAacuteP TẠO RA TỪ MAtilde

Truyền dữ liệu trong mạng khocircng dacircy lagrave do mạng khocircng dacircy nuocirci bằng nguồn

nuocirci độc lập cho necircn tiết kiệm được năng lượng Khi nghiecircn cứu một nuacutet mạng người

ta nhận thấy khi truyền đi lagrave tốn nhiều năng lượng nhất iacutet hơn tiacute lagrave nhận năng lượng iacutet

hơn nữa lagrave quaacute trigravenh xử lyacute vagrave cuối cugraveng nghỉ lagrave tốn iacutet năng lượng nhất

Truyền mạng WSN sai số lớn nhất khi truyền caacutep quang lagrave sai số iacutet caacutep đồng

khocircng dacircy lagrave lỗi truyền dữ liệu lagrave nhiều nhất Vấn đề đặt ra khi bị lỗi thigrave nơi gửi phải

truyền lại dữ liệu người ta đatilde nghĩ ra nếu nhận biết coacute lỗi khi truyền necircn phải tự động

sửa lỗi thigrave khocircng tốn năng lượng

Trong caacutec lỗi coacute lỗi đơn biacutet đa bit đảo biacutet tuy nhiecircn trong truyền khocircng dacircy thigrave

đa bit vagrave đảo bit xuất hiện iacutet chỉ xuất hiện đơn bit lagrave nhiều Trong nội dung nghiecircn cứu

của chương nagravey ta tập trung vagraveo sửa lỗi đơn bit

Muốn sửa lỗi thigrave nơi gửi phải tạo ra được caacutec từ matilde (từ matilde gồm dữ liệu vagrave bit dư

thừa)

31 Phaacutet hiện lỗi vagrave truyền lại

Phaacutet hiện lỗi vagrave truyền lại (error detection amp retransmission)

Phaacutet hiện lỗi vagrave sửa lỗi FEC (Forward Error correction)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 27

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 28

32 Caacutec phương phaacutep tạo ra từ matilde

Trong bất kỳ mạng nagraveo đều coacute 2 phương phaacutep cơ bản để khocirci phục lại caacutec goacutei tin

bị lỗi Một lagrave Yecircu cầu trả lời tự động ARQ (Automatic Repeat Request) vagrave một lagrave sửa

lỗi hướng trước FEC (Forward Erro Correction) Trong mạng cảm biến nguồn năng

lượng lagrave khan hiếm vagrave chủ yếu được tiecircu thụ bởi caacutec quaacute trigravenh truyền dẫn vagrave thu nhận

khocircng dacircy mặt khaacutec đặc tiacutenh lỗi của mạng WSN lagrave caacutec lỗi đơn bit vagrave lỗi 2 bit necircn sử

dụng sửa lỗi hướng trước FEC lagrave hiệu quả hơn cả

FEC coacute khả năng sửa caacutec lỗi chiacutenh 1 loại matilde coacute khả năng sửa lỗi đơn bit một coacute

khả năng sửa lỗi keacutep vagrave 1 matilde Reed Solomen tất cả đều thuộc loại matilde khối - block

codes Vigrave vậy ta sẽ tập trung nghiecircn cứu matilde hoacutea khối tuyến tiacutenh

311 Matilde hoacutea khối tuyến tiacutenh

Một matilde khối coacute chiều dagravei n gồm nk từ matilde được gọi lagrave matilde tuyến tiacutenh C(nk) nếu

vagrave chỉ nếu 2k từ matilde higravenh thagravenh một khocircng gian vectơ con k chiều của khocircng gian

vectơ n chiều gồm tất cả caacutec vectơ n thagravenh phần trecircn trường nhị phacircn GF (2)

Với trường GF(2) lagrave trường nhị phacircn đồng thời pheacutep cộng vagrave pheacutep cộng modul

2(cộng tuyệt đối) vagrave pheacutep vagrave (AND)

1+1=0

1+0=1

0+1=1

0+0=0

1 and 1 = 1

1and 0 = 0

0 and 1 = 0

0 and 0 = 0

Matilde tuyến tiacutenh C (nk) coacute mục điacutech matilde hoacutea những khối tin k bit thagravenh những từ

matilde n bit

Caacutech matilde hoacutea

Gọi u = [a0 a1 a2 ak-1] lagrave thocircng tin cần được matilde hoacutea thigrave từ matilde v tương ứng với

u sẽ coacute được bằng caacutech lấy u nhacircn với ma trận G

Cocircng thức v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1

Vigrave caacutec từ matilde tương ứng với caacutec thocircng baacuteo được sinh ra bởi G theo caacutech trecircn necircn

G được gọi lagrave ma trận sinh của bộ matilde

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 29

Xeacutet viacute dụ sau Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

Nếu u = [1101] lagrave thocircng tin cần matilde hoacutea thigrave từ matilde tương ứng lagrave

v = 1g0+ 1g1+0g2+ 1g3 = [1100101]

Toacutem tắt như sau

- Bất kỳ k từ matilde độc lập tuyến tiacutenh nagraveo cũng coacute thể được dugraveng để lagravem ma trận

sinh cho bộ matilde

- Một bộ matilde tuyến tiacutenh coacute thể coacute nhiều ma trận sinh khaacutec nhau cugraveng biểu diễn

- Mỗi ma trận sinh tương ứng với một caacutech matilde hoacutea khaacutec nhau

Caacutech giải matilde

Ta coacute thocircng tin u = [a0 a1 a2 ak-1]

Từ matilde nhận được tại bộ thu v = [b0 b1 b2bk-1 bk bn-1]

Giả sử quaacute trigravenh truyền tiacuten hiệu khocircng lỗi tức lagrave v thu đuacuteng thocircng tin u Từ v ta

tigravem lại u như sau

ta giải phương trigravenh v = uG hoặc v= a0g0+ a1g1++ ak-1gk-1 để tigravem ai từ đoacute tigravem

được u

Ta coacute một ma trận sinh của bộ matilde tuyến tiacutenh C(74)

u = [a0 a1 a2a3]

v = [b0 b1 b2 b3 b4 b5 b6]

v = u x G = hệ phương trigravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 30

b0 = a0 + a1 + a3

b1 = a0 + a2

b2 = a1 + a3

b3 = a0 + a1

b4 = a1

b5 = a2

b6 = a2 + a3

với v = [1100101] ta giải được u = [1101]

Thực tế dữ liệu khocircng chỉ được kiểm tra lỗi theo từng byte magrave cograven được kiểm tra

lỗi theo dạng khối sử dụng ma trận sinh trong việc kiểm tra lỗi hướng trước FEC

mang lại hiệu quả cao

312 Matilde Hamming

Matilde Hamming lagrave một matilde sửa lỗi tuyến tiacutenh (linear error-correcting code) được

đặt tecircn theo tecircn của người phaacutet minh ra noacute Richard Hamming Matilde Hamming coacute thể

phaacutet hiện một bit hoặc hai bit bị lỗi (single and double-bit errors) Matilde Hamming cograven

coacute thể sửa caacutec lỗi do một bit bị sai gacircy ra Ngược lại matilde chẵn lẻ (parity code) đơn giản

vừa khocircng coacute khả năng phaacutet hiện caacutec lỗi khi 2 bit cugraveng một luacutec bị hoaacuten vị (0 thagravenh 1

vagrave ngược lại) vừa khocircng thể giuacutep để sửa được caacutec lỗi magrave noacute phaacutet hiện thấy

Mocirc higravenh của một matilde 7-bit bao gồm 4 bit dữ liệu (3567) vagrave 3 bit chẵn lẻ (124)

Sự liecircn quan của caacutec bit dữ liệu với bit chẵn lẻ được biểu hiện bằng caacutec phần của higravenh

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 31

trograven gối lecircn nhau Bit thứ 1 kiểm tra bit thứ (3 5 7) trong khi bit 2 kiểm tra bit (3 6

7) Lưu yacute caacutec vị trị (124 vv) thực ra lagrave vị triacute 20 2

1 2

2 vv

Caacutec bit dữ liệu vagrave bit chẵn lẻ trong mối quan hệ chồng gối với nhau Caacutec bit chẵn

lẻ được tiacutenh dugraveng quy luật số chẵn Giaacute trị của nhoacutem dữ liệu lagrave 1100110 - caacutec bit

chẵn lẻ được in đậm vagrave đọc từ phải sang traacutei

Cagraveng nhiều bit sửa lỗi thecircm vagraveo trong thocircng điệp vagrave caacutec bit ấy được bố triacute theo

một caacutech lagrave mỗi bỗ triacute của nhoacutem caacutec bit bị lỗi tạo necircn một higravenh thaacutei lỗi riecircng biệt thigrave

chuacuteng ta coacute thể xaacutec định được những bit bị sai Trong một thocircng điệp dagravei 7-bit chuacuteng

ta coacute 7 khả năng một bit coacute thể bị lỗi như vậy chỉ cần 3 bit kiểm tra (23 = 8) lagrave chuacuteng

ta coacute thể khocircng những chỉ xaacutec định được lagrave lỗi trong truyền thocircng coacute xảy ra hay

khocircng magrave cograven coacute thể xaacutec định được bit nagraveo lagrave bit bị lỗi

Hamming nghiecircn cứu caacutec kế hoạch matilde hoacutea hiện coacute bao gồm cả matilde hai-trong-

năm rồi tổng quaacutet hoacutea khaacutei niệm của chuacuteng Khởi đầu ocircng xacircy dựng một danh mục

(nomenclature) để diễn tả hệ thống maacutey bao gồm cả số lượng bit dugraveng cho dữ liệu vagrave

caacutec bit sửa lỗi trong một khối Chẳng hạn bit chẵn lẻ phải thecircm 1 bit vagraveo trong mỗi từ

dữ liệu (DATA word) Hamming diễn tả phương phaacutep nagravey lagrave matilde (87) Noacute coacute nghĩa lagrave

một từ dữ liệu coacute tổng số bit lagrave 8 bit trong đoacute chỉ coacute 7 bit lagrave caacutec bit của dữ liệu magrave

thocirci Theo phương phaacutep suy nghĩ nagravey matilde taacutei diễn (nhắc lại) ở trecircn phải được gọi lagrave matilde

(31) Tỷ lệ thocircng tin lagrave tỷ lệ được tiacutenh bằng việc lấy con số thứ hai chia cho con số thứ

nhất Như vậy với matilde taacutei diễn (31) ở trecircn tỷ lệ thocircng tin của noacute lagrave

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 32

Hamming cograven phaacutet hiện ra vấn đề với việc đảo giaacute trị của hai hoặc hơn hai bit

nữa vagrave miecircu tả noacute lagrave khoảng caacutech (distance) (hiện nay noacute được gọi lagrave khoảng caacutech

Hamming (Hamming distance) - theo caacutei tecircn của ocircng) Matilde chẵn lẻ coacute khoảng caacutech

bằng 2 vigrave nếu coacute 2 bit bị đảo ngược thigrave lỗi trong truyền thocircng trở necircn vocirc higravenh khocircng

phaacutet hiện được Matilde taacutei diễn (31) coacute khoảng caacutech lagrave 3 vigrave 3 bit trong cugraveng một bộ ba

phải bị đổi ngược trước khi chuacuteng ta được một từ matilde khaacutec Matilde taacutei diễn (41) (mỗi bit

được nhắc lại 4 lần) coacute khoảng caacutech bằng 4 necircn nếu 2 bit trong cugraveng một nhoacutem bị đảo

ngược thigrave lỗi đảo ngược nagravey sẽ đi thoaacutet magrave khocircng bị phaacutet hiện

Cugraveng một luacutec Hamming quan tacircm đến hai vấn đề tăng khoảng caacutech vagrave đồng thời

tăng tỷ lệ thocircng tin lecircn cagraveng nhiều cagraveng tốt Trong những năm thuộc niecircn kỷ 1940

ocircng đatilde xacircy dựng mocirct số kế hoạch matilde hoacutea Những kế hoạch nagravey đều dựa trecircn những

matilde hiện tồn tại song được nacircng cấp vagrave tiến bộ một caacutech sacircu sắc Biacute quyết chigravea khoacutea

cho tất cả caacutec hệ thống của ocircng lagrave việc cho caacutec bit chẵn lẻ gối lecircn nhau (overlap) sao

cho chuacuteng coacute khả năng tự kiểm tra lẫn nhau trong khi cugraveng kiểm tra được dữ liệu nữa

Thuật toaacuten cho việc sử dụng bit chẵn lẻ trong matilde Hamming thocircng thường cũng

tương đối đơn giản

1 Tất cả caacutec bit ở vị triacute lagrave caacutec số mũ của 2 (powers of two) được dugraveng lagravem bit

chẵn lẻ (caacutec vị triacute như 1 2 4 8 16 32 64 vv hay noacutei caacutech khaacutec 20 2

1 2

2 2

3 2

4 2

5

26 vv)

2 Tất cả caacutec vị triacute bit khaacutec được dugraveng cho dữ liệu sẽ được matilde hoacutea (caacutec vị triacute

3 5 6 7 9 10 11 12 13 14 15 17 etc)

3 Mỗi bit chẵn lẻ tiacutenh giaacute trị chẵn lẻ cho một số bit trong từ matilde (code word)

Vị triacute của bit chẵn lẻ quyết định chuỗi caacutec bit magrave noacute luacircn phiecircn kiểm tra vagrave bỏ qua

(skips)

o Vị triacute 1 (n=1) bỏ qua 0 bit(n-1) kiểm 1 bit(n) bỏ qua 1 bit(n) kiểm 1

bit(n) bỏ qua 1 bit(n) vv

o Vị triacute 2(n=2) bỏ qua 1 bit(n-1) kiểm 2 bit(n) bỏ qua 2 bit(n) kiểm 2 bit(n)

bỏ qua 2 bit(n) vv

o Vị triacute 4(n=4) bỏ qua 3 bit(n-1) kiểm 4 bit(n) bỏ qua 4 bit(n) kiểm 4 bit(n)

bỏ qua 4 bit(n) vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 33

o Vị triacute 8(n=8) bỏ qua 7 bit(n-1) kiểm 8 bit(n) bỏ qua 8 bit(n) kiểm 8 bit(n)

bỏ qua 8 bit(n) vv

o Vị triacute 16(n=16) bỏ qua 15 bit(n-1) kiểm 16 bit(n) bỏ qua 16 bit(n) kiểm

16 bit(n) bỏ qua 16 bit(n) vv

o Vị triacute 32(n=32) bỏ qua 31 bit(n-1) kiểm 32 bit(n) bỏ qua 32 bit(n) kiểm

32 bit(n) bỏ qua 32 bit(n) vv

o vagrave tiếp tục như trecircn

Noacutei caacutech khaacutec bit chẵn lẻ tại vị triacute 2k kiểm caacutec bit ở caacutec bit ở vị triacute t coacute giaacute trị

logic của pheacutep toaacuten AND giữa k vagrave t lagrave khaacutec 0

a) Viacute dụ dugraveng (117) matilde Hamming

Lấy viacute dụ chuacuteng ta coacute một từ dữ liệu dagravei 7 bit với giaacute trị lagrave 0110101 Để chứng

minh phương phaacutep caacutec matilde Hamming được tiacutenh toaacuten vagrave được sử dụng để kiểm tra lỗi

xin xem bảng liệt kecirc dưới đacircy Chữ d (DỮ LIỆU) được dugraveng để biểu thị caacutec bit dữ liệu

vagrave chữ p (parity) để biểu thị caacutec bit chẵn lẻ (parity bits)

Đầu tiecircn caacutec bit của dữ liệu được đặt vagraveo vị triacute tương thiacutech của chuacuteng sau đoacute caacutec

bit chẵn lẻ cho mỗi trường hợp được tiacutenh toaacuten dugraveng quy luật bit chẵn lẻ số chẵn[1]

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhoacutem dữ liệu (khocircng coacute bit chẵn lẻ) 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhoacutem dữ liệu (với bit chẵn lẻ) 1 0 0 0 1 1 0 0 1 0 1

Caacutech tiacutenh caacutec bit chẵn lẻ trong matilde Hamming (từ traacutei sang phải)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 34

Nhoacutem dữ liệu mới (new DỮ LIỆU word) - bao gồm caacutec bit chẵn lẻ - bacircy giờ lagrave

10001100101 Nếu chuacuteng ta thử cho rằng bit cuối cugraveng bị thoaacutei hoacutea (gets corrupted)

vagrave bị lộn ngược từ 1 sang 0 Nhoacutem dữ liệu mới sẽ lagrave 10001100100 Dưới đacircy chuacuteng

ta sẽ phacircn tiacutech quy luật kiến tạo matilde Hamming bằng caacutech cho bit chẵn lẻ giaacute trị 1 khi

kết quả kiểm tra dugraveng quy luật số chẵn bị sai

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị triacute bit chẵn lẻ vagrave

caacutec bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Kiểm

chẵn lẻ

Bit

chẵn lẻ

Nhoacutem dữ liệu nhận 1 0 0 0 1 1 0 0 1 0 0 1

p1 1 0 1 0 1 0 Sai 1

p2 0 0 1 0 0 0 Sai 1

p3 0 1 1 0 Đuacuteng 0

p4 0 1 0 0 Sai 1

Kiểm tra caacutec bit chẵn lẻ (bit bị đảo lộn coacute nền thẫm)

Bước cuối cugraveng lagrave định giaacute trị của caacutec bit chẵn lẻ (necircn nhớ bit nằm dưới cugraveng

được viết về becircn phải - viết ngược lại từ dưới lecircn trecircn) Giaacute trị số nguyecircn của caacutec bit

chẵn lẻ lagrave 11(10) vagrave như vậy coacute nghĩa lagrave bit thứ 11 trong nhoacutem dữ liệu (DỮ LIỆU

word) - bao gồm cả caacutec bit chẵn lẻ - lagrave bit coacute giaacute trị khocircng đuacuteng vagrave bit nagravey cần phải

đổi ngược lại

p4 p3 p2 p1

Nhị phacircn 1 0 1 1

Thập phacircn 8 2 1 Σ = 11

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 35

Khi hai bit dữ liệu (37) coacute cugraveng bit chẵn lẻ kiểm tra tại vi triacute 2k - viacute dụ (12) -

biến đổi giaacute trị (lỗi trong truyền thocircng) thigrave giaacute trị của bit chẵn lẻ vẫn đuacuteng như giaacute trị

gốc (01)

Việc đổi ngược giaacute trị của bit thứ 11 lagravem cho nhoacutem

10001100100

trở lại thagravenh

10001100101

Bằng việc bỏ đi phần matilde Hamming chuacuteng ta lấy được phần dữ liệu gốc với giaacute

trị lagrave 0110101

Lưu yacute caacutec bit chẵn lẻ khocircng kiểm tra được lẫn nhau nếu chỉ một bit chẵn lẻ bị

sai thocirci trong khi tất cả caacutec bit khaacutec lagrave đuacuteng thigrave chỉ coacute bit chẵn lẻ noacutei đến lagrave sai magrave

thocirci vagrave khocircng phải lagrave caacutec bit noacute kiểm tra (not any bit it checks)

Cuối cugraveng giả sử coacute hai bit biến đổi tại vị triacute x vagrave y Nếu x vagrave y coacute cugraveng một bit

tại vị triacute 2k trong đại diện nhị phacircn của chuacuteng thigrave bit chẵn lẻ tương ứng với vị triacute đấy

kiểm tra cả hai bit vagrave do đoacute sẽ giữ nguyecircn giaacute trị khocircng thay đổi Song một số bit

chẵn lẻ nagraveo đấy nhất định phải bị thay đổi vigrave x ne y vagrave do đoacute hai bit tương ứng nagraveo đoacute

coacute giaacute trị x vagrave y khaacutec nhau Do vậy matilde Hamming phaacutet hiện tất cả caacutec lỗi do hai bit bị

thay đổi mdash song noacute khocircng phacircn biệt được chuacuteng với caacutec lỗi do 1 bit bị thay đổi

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 36

b) Matilde Hamming (74)

Với mỗi nhoacutem 4 bit dữ liệu matilde Hamming thecircm 3 bit kiểm tra Thuật toaacuten (74)

của Hamming coacute thể sửa chữa bất cứ một bit lỗi nagraveo vagrave phaacutet hiện tất cả lỗi của 1 bit

vagrave caacutec lỗi của 2 bit gacircy ra Điều nagravey coacute nghĩa lagrave đối với tất cả caacutec phương tiện truyền

thocircng khocircng coacute chugravem lỗi đột phaacutet (burst errors) xảy ra matilde (74) của Hamming rất coacute

hiệu quả (trừ phi phương tiện truyền thocircng coacute độ nhiễu rất cao thigrave noacute mới coacute thể gacircy

cho 2 bit trong số 7 bit truyền bị đảo lộn)

c) Viacute dụ về caacutech dugraveng caacutec ma trận thocircng qua GF(2) [2]

Nguyecircn lyacute của matilde Hamming bắt nguồn từ việc khai triển vagrave mở rộng quan điểm

chẵn lẻ Việc khai triển nagravey bắt đầu bằng việc nhacircn caacutec ma trận được gọi lagrave Ma trận

Hamming (Hamming matrices) với nhau Đối với matilde Hamming (74) chuacuteng ta sử

dụng hai matilde trận coacute liecircn quan gần gũi vagrave đặt tecircn cho chuacuteng lagrave

vagrave

Caacutec cột vectơ trong He lagrave necircn tảng hạch của Hd vagrave phần trecircn của He (4 hagraveng đầu)

lagrave một ma trận đơn vị (identity matrix) Ma trận đơn vị cho pheacutep vectơ dữ liệu đi qua

trong khi lagravem tiacutenh nhacircn vagrave như vậy caacutec bit dữ liệu sẽ nằm ở 4 vị triacute trecircn cugraveng (sau khi

nhacircn) Sau khi pheacutep nhacircn hoagraven thagravenh khaacutec với caacutech giải thiacutech ở phần trước (caacutec bit

chẵn lẻ nằm ở vị triacute 2k) trật tự của caacutec bit trong từ matilde (codewords) ở đacircy khaacutec với

caacutech bố triacute đatilde noacutei (caacutec bit dữ liệu nằm ở trecircn caacutec bit kiểm chẵn lẻ nằm ở dưới)

Chuacuteng ta dugraveng một nhoacutem 4 bit dữ liệu (số 4 trong caacutei tecircn của matilde lagrave vigrave vậy) chủ

chốt vagrave cộng thecircm vagraveo đoacute 3 bit dữ liệu thừa (vigrave 4+3=7 necircn mới coacute số 7 trong caacutei tecircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 37

của matilde) Để truyền gửi dữ liệu chuacuteng ta hatildey nhoacutem caacutec bit dữ liệu magrave migravenh muốn gửi

thagravenh một vectơ Lấy viacute dụ nếu dữ liệu lagrave 1011 thigrave vectơ của noacute lagrave

Giả sử chuacuteng ta muốn truyền gửi dữ liệu trecircn Chuacuteng ta tigravem tiacutech của He vagrave p với

caacutec giaacute trị mocircđulocirc 2 [3]

Maacutey thu sẽ nhacircn Hd với r để kiểm tra xem coacute lỗi xảy ra hay khocircng Thi hagravenh tiacutenh

nhacircn nagravey maacutey thu được (một lần nữa caacutec giaacute trị đồng dư mocircđulocirc 2)

Vigrave chuacuteng ta được một vectơ toagraven số khocircng cho necircn maacutey thu coacute thể kết luận lagrave

khocircng coacute lỗi xảy ra

Sở dĩ một vectơ toagraven số khocircng coacute nghĩa lagrave khocircng coacute lỗi bởi vigrave khi He được nhacircn

với vectơ dữ liệu một sự thay đổi trong nền tảng xảy ra đối với khocircng gian becircn trong

vectơ (vector subspace) tức lagrave hạch của Hd Nếu khocircng coacute vấn đề gigrave xảy ra trong khi

truyền thocircng r sẽ nằm nguyecircn trong hạch của Hd vagrave pheacutep nhacircn sẽ cho kết quả một

vectơ toagraven số khocircng

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 38

Trong một trường hợp khaacutec nếu chuacuteng ta giả sử lagrave lỗi một bit đatilde xảy ra Trong

toaacuten học chuacuteng ta coacute thể viết

mocircđulocirc 2 trong đoacute ei lagrave vectơ đơn vị đứng thứ i (ith unit vector) coacute nghĩa lagrave một

vectơ số 0 coacute một giaacute trị 1 trong vị triacute i (tiacutenh từ 1 tiacutenh đi) Biểu thức trecircn noacutei cho chuacuteng

ta biết rằng coacute một bit bị lỗi tại vị triacute i

Nếu bacircy giờ chuacuteng ta nhacircn Hd với cả hai vectơ nagravey

Vigrave r lagrave dữ liệu thu nhận được khocircng coacute lỗi cho necircn tiacutech của Hd vagrave r bằng 0 Do

đoacute

Vậy tiacutech của Hd với vectơ nền chuẩn tại cột thứ i (the ith standard basis vector)

lagravem lộ ra cột ở trong Hd vigrave thế magrave chuacuteng ta biết rằng lỗi đatilde xảy ra tại vị triacute cột nagravey

trong Hd Vigrave chuacuteng ta đatilde kiến tạo Hd dưới một higravenh thức nhất định cho necircn chuacuteng ta

coacute thể hiểu giaacute trị của cột nagravey như một số nhị phacircn - viacute dụ (101) lagrave một cột trong Hd

tương đồng giaacute trị với cột thứ 5 do đoacute chuacuteng ta biết lỗi xảy ra ở đacircu vagrave coacute thể sửa

được noacute

Lấy viacute dụ giả sử chuacuteng ta coacute

Nếu thi hagravenh pheacutep nhacircn

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 39

Tiacutech của pheacutep nhacircn cho chuacuteng ta một kết quả tương đương với cột thứ 2 (010

tương đương với giaacute trị 2 trong số thập phacircn) vagrave do đoacute chuacuteng ta biết rằng lỗi đatilde xảy

ra ở vị triacute thứ 2 trong hagraveng dữ liệu vagrave vigrave vậy coacute thể sửa được lỗi

Chuacuteng ta coacute thể dễ dagraveng thấy rằng việc sửa lỗi do 1 bit bị đảo lộn gacircy ra dugraveng

phương phaacutep trecircn lagrave một việc thực hiện được Becircn cạnh đoacute matilde Hamming cograven coacute thể

phaacutet hiện lỗi do 1 bit hoặc 2 bit bị đảo lộn gacircy ra dugraveng tiacutech của Hd khi tiacutech nagravey khocircng

cho một vectơ số khocircng Tuy thế song matilde Hamming khocircng thể hoagraven thagravenh cả hai

việc

d) Matilde Hamming vagrave bit chẵn lẻ bổ sung

Nếu chuacuteng ta bổ sung thecircm một bit vagraveo matilde Hamming thigrave matilde nagravey coacute thể dugraveng để

phaacutet hiện những lỗi gacircy ra do 2 bit bị lỗi vagrave đồng thời noacute khocircng cản trở việc sửa caacutec

lỗi do một bit gacircy ra [1] Nếu khocircng bổ sung một bit vagraveo thecircm thigrave matilde nagravey coacute thể phaacutet

hiện caacutec lỗi do một bit hai bit ba bit gacircy ra song noacute sẽ cản trở việc sửa caacutec lỗi do một

bit bị đảo lộn Bit bổ sung lagrave bit được aacutep dụng cho tất cả caacutec bit sau khi tất cả caacutec bit

kiểm của matilde Hamming đatilde được thecircm vagraveo

Khi sử dụng tiacutenh sửa lỗi của matilde nếu lỗi ở một bit chẵn lẻ bị phaacutet hiện vagrave matilde

Hamming baacuteo hiệu lagrave coacute lỗi xảy ra thigrave chuacuteng ta coacute thể sửa lỗi nagravey song nếu chuacuteng ta

khocircng phaacutet hiện được lỗi trong bit chẵn lẻ nhưng matilde Hamming baacuteo hiệu lagrave coacute lỗi xảy

ra thigrave chuacuteng ta coacute thể cho rằng lỗi nagravey lagrave do 2 bit bị đổi cugraveng một luacutec Tuy chuacuteng ta

phaacutet hiện được noacute nhưng khocircng thể sửa lỗi được

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 40

7 bit dữ liệu

byte coacute bit chẵn lẻ

Quy luật số chẵn

Quy luật số lẻ

0000000

00000000

00000001

1010001

10100011

10100010

1101001

11010010

11010011

1111111 11111111

11111110

Caacutech tiacutenh bit chẵn lẻ trong nhoacutem caacutec bit dữ liệu dugraveng quy luật số chẵn như sau

nếu số lượng bit coacute giaacute trị bằng 1 (the bit is set) lagrave một số lẻ thigrave bit chẵn lẻ bằng 1(2)

(vagrave do việc cộng thecircm một bit coacute giaacute trị 1(2) nagravey vagraveo dữ liệu tổng số bit coacute giaacute trị 1(2) sẽ

lagrave một số chẵn - bao gồm cả bit chẵn lẻ cograven khocircng thigrave bit chẵn lẻ sẽ coacute giaacute trị 0(2)

Ngược lại bit chẵn lẻ dugraveng quy luật số lẻ sẽ coacute giaacute trị 1(2) nếu số lượng caacutec bit coacute giaacute

trị bằng 1(2) lagrave một số chẵn - do việc thecircm bit chẵn lẻ coacute giaacute trị bằng 1(2) vagraveo nhoacutem dữ

liểu tổng số bit coacute giaacute trị 1(2) lagrave một số lẻ - vagrave bằng 0 nếu ngược lại

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 41

33 Một vagravei viacute dụ về higravenh thagravenh từ matilde vagrave sửa lỗi

Snot regaring minh haumla qua trtimesnh truyOgraven tin gidividea 2 noacutet msup1ng souml docircng giao thoslashc SPP catilde ACK

Nguyecircn lyacute truyền dẫn giữa 2 nuacutet mạng được mocirc tả như sau

Với giao thức SPP (simple packet protocol) coacute ACK thigrave đường truyền giữa 2 nuacutet

lagrave hlf duplex chỉ coacute một becircn được truyền Quaacute trigravenh truyền được diễn ra ngay sau khi

phiacutea truyền nhận được goacutei ACK từ phiacutea nhận

Quaacute trigravenh truyền

Nếu bộ thu phaacutet ở trạng thaacutei rỗi (sẵn sagraveng truyền) thigrave thagravenh phần phaacutet sẽ được

kiacutech hoạt Quaacute trigravenh truyền được thực hiện trecircn RF ISR vagrave nuacutet truyền chờ nhận ack

(nếu được yecircu cầu)

Nếu tại bộ phaacutet (nuacutet truyền) được cấp yecircu cầu truyền lại với

sppSettingTXAttempts=n) thigrave goacutei tin sẽ được truyền lại (n-1) lần cho đến khi nhận

được goacutei tin phản hồi ack

Quaacute trigravenh truyền nhận diễn ra liecircn tục ngay cả khi UART vẫn đang trong quaacute

trigravenh nhận trong suốt quaacute truyền noacute được đặt vagraveo chế độ TX_Mode (chế độ đang

truyền) hoặc chờ nhận ACK (TXACK_MODE) Kết thuacutec hoạt động truyền trạng thaacutei

của đường truyền sppStatus ( ) sẽ trở lại trạng thaacutei rỗi (spp_IDLE_MODE)

Quaacute trigravenh nhận

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 42

Nếu bộ thu phaacutet rỗi (ở trạng thaacutei sẵn sagraveng truyền vagrave nhận (spp_IDLE_MODE)

khi đoacute nếu nhận được yecircu cầu nhận thigrave thagravenh phần nhận trong nuacutet mạng sẽ được kiacutech

hoạt Quaacute trigravenh nhận được thực hiện nhờ RF ISR (radio-Frequency Interrupt-Service-

Routine) vagrave thực hiện truyền ACK (nếu được yecircu cầu)

Kết thuacutec mỗi lần nhận Bộ nhận sẽ được tắt nguồn Nhưng chức năng nhận sẽ

được kiacutech hoạt trở lại ngay khi ứng dụng được yecircu cầu tiếp theo đoacute Trong suốt quaacute

trigravenh nhận bộ nhận luocircn ở trạng thaacutei chờ nhận goacutei tin (RX-MODE) hoặc đang truyền

ACK (RXACK_MODE)

Kết thuacutec hoạt động truyền trạng thaacutei của đường truyền spp Status ( ) sẽ trở lại

trạng thaacutei rỗi ban đầu (spp_IDLE_MODE)

Giữa hai nuacutet mạng cảm biến thigrave quaacute trigravenh truyền vagrave nhận luocircn được chuyển đổi

qua lại Do đường truyền lagrave baacuten song cocircng necircn trong cugraveng một thời điểm chỉ coacute một

becircn được pheacutep truyền kết thuacutec quaacute trigravenh truyền nhận thường bộ thu phaacutet sẽ thiết lập

lại caacutec giaacute trị Hệ thống truyền dẫn RF thời gian time out vv Dưới đacircy lagrave minh họa

về cấu truacutec chương trigravenh truyền nhận trecircn RF được thực hiện trong vograveng lặp While

While (TRUE)

Receive a packet - Nếu nhận tin

if (sppReceive(ampRXI) ==SPP_RX_STARTED)

thực hiện truyền khi becircn nhận đatilde sẵn sagraveng Nhưng cần kiểm tra nếu đường

truyền RF đang coacute goacutei tin được truyền thigrave cần chờ cho noacute truyền xong rồi mới thực

hiện Vograveng lặp dưới đacircy được thực hiện khi SPP_Status ( ) khocircng rỗi

do

if (txRequest ampamp (TXIstatus == SPP_TX_FINISHED) ampamp (RXIstatus ==

SPP_RX_WAITING))

sppReset ()

while (SPP_STATUS()=SPP_IDLE_MODE

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 43

goacutei tin sau khi được nhận hoagraven chỉnh sẽ được đưa vagraveo UART

Check the results (ignore retransmitted messages)

if (RXIstatus == SPP_RX_FINISHED)

if (SPP_SEQUENCE_BIT amp (lastRXflags ^RXIflags))

while (uartRXPos =rxDateLen[uartRXBuffer])

if ((rxDataLen[rfRXBuffer] = RXIdataLen) =0 dau

Switch buffers and initiate UART0 transmission

GLED=~GLED

SWITCH(uartRXBuffer rfRXBuffer)

uartRXPos=0

UART0_SEND(pRXBuffer[uartRXBuffer][uartRXPos])

lastRXflags = RXIflags

Transmitpacket if requested --- truyền tin nếu nhận được yecircu cầu

if (txRequest) thực hiện khi coacute yecircu cầu

if (sppSend(ampTXI) === SPP_TX_STARTED)

kiểm tra xem trecircn đường truyền coacute rỗi khocircng nếu khocircng rỗi thigrave chờ cho đến khi

quaacute trigravenh truyền kết thuacutec mới thực hiện

Wait for the transmission to finish

YLED = LED_ON đegraven vagraveng bật lt-gt đang truyền

while (SPP_STATUS() =SPP_IDLE_MODE

nếu đường truyền rỗi thigrave ta thực hiện truyền

YLED=LED_OFF

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 44

Check out the results

if(TXIstatus==SPP_TX_FINISHED)

sppSettingrxTimeout = NORMAL_TIMEOUT

RLED = LED_OFF

txRequest = TX_REQUEST_OFF

else

RLED = LED_ON

sppSetingsrxTimeout = RETRY_TX_TIMEOUT

Recalibrate the transceiver if requested to ---xaacutec lập lại tại bộ thu phaacutet nếu coacute

lệnh yecircu cầu

if (recalibRequest)

sppSetup RF(ampRF_SETTINGS ampRF_CALDATA TRUE)

main

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 45

KẾT LUẬN

Đề tagravei đatilde xem xeacutet caacutec đặc trưng chủ yếu của mạng cảm nhận khocircng dacircy Nghiecircn

cứu chuyecircn sacircu về việc Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng

dacircy bằng phương phaacutep matilde hoacutea dữ liệu Trecircn cơ sở

- Xacircy dựng từ matilde cho việc tự động sửa lỗi

- Đaacutenh giaacute khoảng caacutech Hamming qua caacutec từ matilde

- Đaacutenh giaacute khả năng phaacutet hiện lỗi vagrave sửa lỗi qua tiacutenh toaacuten khoảng caacutech Hamming

- Đưa ra phương phaacutep phaacutet hiện vagrave sửa lỗi tại nơi nhận qua tập hợp từ matilde nhận

được

Để giải quyết caacutec vấn đề trecircn ta sử dụng phương phaacutep sửa lỗi FEC (Forward

Error Correction) - Sửa lỗi hướng trước Với matilde sửa lỗi FEC dữ liệu mất sẽ được khocirci

phục ở phiacutea thu magrave khocircng cần yecircu cầu phaacutet lại ở phiacutea phaacutet Ưu điểm của noacute lagrave coacute thể

tự khocirci phục lại caacutec goacutei bị mất nhờ vagraveo caacutec goacutei đatilde thu được vagrave phần goacutei chẵn lẻ dư

thừa được thecircm vagraveo tại nơi phaacutet trong quaacute trigravenh truyền như vậy lỗi đơn bit vagrave caacutec đoạn

dữ liệu cograven thiếu tại bộ thu sẽ được tự động sửa lại nhờ vagraveo FEC

Trecircn thực tế sửa lỗi hướng trước FEC cho thấy hiệu quả trong việc giảm đi caacutec

bit lỗi khi hầu hết lagrave caacutec lỗi đơn biacutet với số lượng caacutec bit lỗi trong goacutei tin lagrave nhỏ (đơn

bit 2 bit hay 3 bit ) cograven với trường hợp lỗi chugravem bit hay nhiều lỗi noacute khocircng phaacutet huy

được nhiều taacutec dụng Mặc dugrave lỗi đa bit hoặc chugravem bit lagrave hiếm nhưng nếu gặp phải đocirci

khi cũng gacircy necircn những ảnh hưởng lớn vagrave tuy ARQ đatilde được đưa ra để giải quyết

những trường hợp nagravey nhưng dễ thấy đoacute khocircng phải lagrave phương phaacutep tối ưu hơn nữa

cũng khocircng coacute gigrave thuacute vị nếu trong cugraveng một nuacutet mạng magrave sử dụng hai thuật toaacuten liền

để sửa lỗi Do vậy sẽ thật sự coacute yacute nghĩa nều tigravem được phương phaacutet hiệu quả magrave coacute thể

sửa được đồng thời cả lỗi đơn bit đa bit vagrave chugravem bit magrave vẫn đảm bảo caacutec yecircu cầu về

thuật toaacuten như đơn giản tốn iacutet dung lượng bộ nhớ tiecircu thụ năng lượng thấp vv

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)

Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạng khocircng dacircy bằng phương phaacutep

matilde hoacutea dữ liệu

SVTH Nguyễn Thị Hồng Hạnh - Lớp CT1001 46

Tagravei liệu tham khảo

[1] ―Mạng truyền số liệu - Vương Đạo Vy - Nhagrave xuất bản ĐHQG - Năm 2006

[2] Mạng maacutey tiacutenh vagrave caacutec hệ thống mở (Nguyễn Thuacutec Hải)

[3] Bagravei giảng mạng maacutey tiacutenh (Phạm Thế Quế)

[4] Wireless Local Area Netwozzrks (Pierfranco Issa 1999)

[5] Designing A Wireless Network (Syngress Publishing 2001)

[6] Building A Cisco Wireless LAN (Syngress Publishing 2002)

[7] Building Wireless Community Networks (OReilly 2002)

[8] Configuring the Cisco Wireless Security Suite (Cisco System 2002)

[9] Wireless Security and Privacy Best Practices and Design Techniques

(Addison Wesley 92002)

[10] Building Secure Wireless Networks with 80211 (Wiley Publishing 2003)

[11] Wireless Security Critical Issues and Solutions (Craig J Mathias 2003)