Đề tagravei Tăng khả năng thagravenh cocircng truyền dữ liệu trong mạ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)
Top Related