Mục 6.1 của thông số CAN :
BIT ERROR: Một đơn vị đang gửi một chút trên xe buýt cũng giám sát xe buýt. Một BIT ERROR phải được phát hiện tại thời điểm bit đó, khi giá trị bit được theo dõi khác với giá trị bit được gửi. Một ngoại lệ là việc gửi bit 'recessive' trong luồng bit nhồi của L FINH VỰC ARBITRATION hoặc trong ACK SLOT.
Vì vậy, nút đầu tiên truyền '1' khi nút kia truyền '0' sẽ lưu ý Lỗi Bit và sau đó báo hiệu lỗi như bình thường - bằng cách truyền cờ lỗi (xem Phần 3.1.3), như được mô tả chính thức trong mục 6.2.
Một cách không chính thức, nếu nút đó hoạt động lỗi (nên là trường hợp thông thường), nó sẽ truyền một cờ lỗi gồm 6 bit trội, mà tất cả các nút khác cũng sẽ phát hiện (như một lỗi công cụ). Điều này có tác dụng phá hủy hoàn toàn thông điệp đó:
- không ai sẽ nhận được nó
- không ai trong số các máy phát sẽ nghĩ rằng họ đã truyền tải thành công bất cứ thứ gì.
Mỗi máy phát sau đó sẽ cố gắng truyền lại - tùy thuộc vào thời gian truyền lại chính xác, người ta có thể bắt đầu đủ trước khi người kia kiểm soát mức tăng của xe buýt. Nếu không, trình tự tương tự có thể xảy ra một lần nữa. (Hoặc một tin nhắn ưu tiên cao hơn khác có thể khiến cả hai tắt trong một thời gian!)
Câu trả lời mở rộng lấy cảm hứng từ câu trả lời của @ clabbacchio bên dưới.
Bạn đề cập đến "các nút khó chịu" và clabbacchio đưa ra điểm hợp lệ rằng nếu hai nút truyền vào các thời điểm khác nhau, mỗi người nhận cần quyết định phải làm gì với nhiều lần tiếp khách.
Điều này đã được chứng minh bằng một vụ hack năm ngoái . Bài viết thảo luận, trong phần "Thông tin cụ thể về PSCM", làm thế nào kẻ tấn công có thể đồng bộ hóa với các tin nhắn thông thường trên xe buýt và phát thông điệp xấu xa của chúng ngay trước khi ECU "tốt" sắp gửi. ECU nhận sẽ chấp nhận tin nhắn trước đó, cập nhật bộ đếm tin nhắn và sau đó loại bỏ các tin nhắn "tốt" là sai, vì bộ đếm tin nhắn của nó không tăng lên.