Giao thức CSMA/CA có sử dụng ACK đã cải tiến CSMA/CA bằng cách thêm thông báo biên nhận ACK. Tiến trình của giao thức này như sau (hình 2.4)
- Bước 1: Phía nhận sẽ gửi ACK ngay sau khi nhận được khung tin mà không cần thăm dò đường truyền. Khung ACK được truyền sau khoảng thời gian SIFS (Short Inter-Frame Space) (SIFS < DIFS) (xem thêm ở phần 2.3)
- Bước 2: Nếu ACK bị mất, việc truyền lại sẽ được tiến hành.
Hình 2.4: Lược đồ giao thức CSMA/CA có ACK
Cơ chế báo nhận ACK được thêm vào giao thức CSMA/CA sẽ đảm bảo cho gói tin đến đích mà không có lỗi. Các trạm muốn phát đều phải nghe đường truyền để phát gói tin vào các khe thời gian không giao nhau nên không thể xảy ra xung đột. Ví dụ ở hình 2.2, nếu sử dụng CSMA/CD, trạm A và C có thể đồng thời truyền tin đến trạm B gây xung đột nhưng với CSMA/CA có sử dụng ACK, từng kênh truyền được hoạt động trên những khe thời gian riêng lẻ (sau những thời gian chờ nhất đinh) nên đã giải quyết triệt để vấn đề trạm ẩn (Hidden terminal). Tuy nhiên vấn đề Exposed terminal thì giao thức CSMA/CA + ACK vẫn chưa giải quyết được. Ví dụ ở hình 2.3, giả sử trạm B đang truyền dữ liệu cho trạm A, trạm C muốn truyền dữ liệu cho trạm D nên phải lắng nghe đường truyền rỗi bằng cách chờ đợi các khoảng thời gian SIFS (trong trường hợp A, B gửi ACK) hoặc DIFS (trong trường hợp trạm A hoặc B gửi gói tin dữ liệu), thời gian chờ này là không cần thiết vì C có thể gửi cho D bất kỳ lúc nào (sau các
nhịp thời gian SIFS hoặc DIFS) mà không sợ bị xung đột. Hơn nữa, tuy B và C nằm trong 1 cell (cùng kênh truyền) nhưng C và D lại khác kênh nên sự lãng phí thời gian chờ đợi (độ trễ) càng trở nên trầm trọng.