Khi truyền thông tin trong mạng, thông tin truyền từ phía phát sang phía thu có thể bị sai, lỗi hoặc mất. Trong trường hợp thông tin bị mất, cần phải thực
hiện truyền lại thông tin. Với trường hợp thông tin bị sai, có thể sửa sai bằng một trong hai cách:
Sửa lỗi trực tiếp bên thu: phía thu sau khi phát hiện lỗi có thể sửa lỗi trực tiếp ngay bên thu mà không yêu cầu phải phát lại. Để có thể thực hiện được điều này, thông tin trước khi truyền đi phải được cài các mã sửa lỗi (bên cạnh việc có khả năng phát hiện lỗi, cần có khả năng sửa lỗi). Đó là cơ chế sửa lỗi chuyển tiếp FEC (Forward Error Correction)
Yêu cầu phía phát truyền lại: phía thu sau khi kiểm tra và phát hiện có lỗi sẽ yêu cầu phía phát truyền lại thông tin. Đó là sử dụng cơ chế yêu cầu trả lời tự động ARQ (Automatic Repeat Request)
+ Cơ chế yêu cầu trả lời tự động ARQ hoạt động như sau: - Phát hiện lỗi
- Positive acknowledgement (ACK): frame nhận OK tại Rx - Truyền lại sau timeout
- Negative acknowledgement (NACK): truyền lại được chia ra làm 3 loại chính:
- Cơ chế phát lại dừng và đợi (Stop-and-Wait ARQ)
Hình 1.14a Cơ chế phát lại dừng và đợi Stop and Wait ARQ Tx gửi 1 frame và đợi ACK từ Rx trước khi truyền next frame Tx phải giữ bản copy của frame đã gửi đến khi nhận đươc ACK Sử dụng timeout cho các frame hoặc ACK bị mất
Đánh số các frame gửi và nhận để nhận biết khi lặp frame - Cơ chế phát lại theo nhóm (Go-back-N ARQ)
Hình 1.14b Cơ chế phát lại theo nhóm Go back N ARQ
Tx có thể truyền liên tiếp các frame
Rx gửi negative acknowledgement (REJ) khi phát hiện lỗi Tx phải truyền lại tất cả các frame từ frame bi lỗi
Tx phải giữ bản copy của tất cả các frame đã gửi - Cơ chế phát lại có lựa chọn (Selective Repeat ARQ)
Hình 1.15 Cơ chế phát lại có lựa chọn Selective Repeat ARQ
Tx có thể truyền liên tiếp các frame
Rx lưu lại tất cả các frame OK sau frame bị lỗi Tx chỉ gửi lại duy nhất frame bị lỗi
Rx phải sắp xếp lại các frame đã lưu sau khi nhận được frame truyền lại + Cơ chế sửa lỗi chuyển tiếp FEC: là một hệ thống quản lý và sửa lỗi trong truyền thông kỹ thuật số. Nguyên tắc của FEC là người gửi thêm thông tin trùng lặp vào trong thông điệp gửi đi, điều đó cho phép người nhận có thể tự kiểm tra và sửa lỗi (nếu có) gây ra do kênh truyền. Lợi điểm của FEC là không yêu cầu gửi lại thông tin.
Do năng lượng trong mỗi node của mạng cảm biến bị hạn chế nên cơ chế sửa lỗi chuyển tiếp FEC tỏ ra hiệu quả hơn cơ chế ARQ.