CSMA/CD (ang. Carrier Sense Multiple Access with Collision Detection - wielodostęp do łącza z badaniem jego stanu z wykrywaniem kolizji[1]) – protokół wielodostępu CSMA z badaniem stanu kanału i wykrywaniem kolizji[1][2][3].
Protokół CSMA/CD jest wykorzystywany w sieciach LAN typu Ethernet[a][1][2][3] pracujących w half-duplexie.
Kiedy urządzenie lub węzeł w sieci posiada dane, które chce przesłać - nasłuchuje łącza, sprawdzając czy jakieś inne urządzenie nie przesyła danych w linii transmisyjnej. Dane będą wysłane jedynie wtedy, gdy nie zostanie wykryty żaden sygnał świadczący o tym, że jakieś urządzenie w sieci wysyła dane. Węzeł, który nie wysyła danych, nasłuchuje, czy inne urządzenia wysyłają do niego dane[1][2][3].
Istnieje możliwość, że dwa lub więcej urządzeń przystąpi do wysyłania danych w tej samej chwili lub zanim sygnał z pierwszego węzła dotrze do drugiego. W takiej sytuacji żadne z nich nie wykryje sygnału nośnego drugiego. W efekcie obydwa urządzenia wysyłając dane w (prawie) tym samym czasie spowodują kolizję w sieci Ethernet (dotyczy to jedynie half-duplexu). Możliwość wystąpienia takiej sytuacji rodzi potrzebę stworzenia mechanizmów pozwalających tę kolizję wykryć i wyeliminować jej skutki[1][2][3].

Urządzenie podczas wysyłania swoich danych, monitoruje stan linii na której nadaje. W tym celu sprawdza wartość sygnału w kanale transmisyjnym i porównuje je z aktualnie nadawanym przez siebie stanem logicznym, używając w tym celu przetwornika A/C. Urządzenie, które wykryło kolizję, zatrzymuje wysyłanie danych i wysyła sekwencję informującą o kolizji (sygnał zagłuszania, tzw. JAM), aby zasygnalizować innym węzłom, że dane są nieważne (na pewno zostaną błędnie odebrane). Poziom sygnału informującego o kolizji (prądu, ponieważ zgodnie z CSMA/CD węzły są nadajnikami prądu o stabilizowanym natężeniu) jest wyższy od normalnie generowanego przez węzeł, aby mieć pewność, że każdy węzeł odebrał sekwencję informującą o kolizji. Potem węzły, które weszły w kolizję, będą chciały retransmitować sygnał. Robią to sprawdzając po losowo wybranym czasie zajętość kanału i ponownie transmitując, przy czym losowany czas oczekiwania może być dłuższy po kilku kolizjach (system z "eksponencjalnym naleganiem"). Powyższe zasady nie tylko wykrywają kolizje, lecz również zmniejszają ryzyko ich wystąpienia, ponieważ liczba wysyłanych pakietów zmniejsza się, w porównaniu z siecią CSMA: dzięki wykrywaniu kolizji nie jest potrzebne potwierdzanie każdej ramki (jak w CSMA), ponieważ każdy węzeł, który nadał ramkę bezkolizyjnie zakłada, że dane dotarły bez problemów do węzła odbiorczego (w sieci przewodowej prawdopodobieństwo przekłamania bitu z innego powodu jest bardzo małe).
W przypadku zapełnienia łącza, czyli jednocześnie występowania dużej ilości kolizji, protokół ten generuje duże straty czasowe, bardzo spada wydajność systemu (przepustowość sieci)[1]. Dlatego powstały mechanizmy CSMA/AMP i CSMA/CA+AMP (ang. AMP - Arbitration on Message Priority, czyli arbitraż w oparciu o priorytet wiadomości).
W sieciach Ethernet współcześnie problem ten jest rozwiązany dzięki spadkowi cen urządzeń sieciowych i powszechnemu zastosowaniu przełączników, które odseparowują od siebie domeny kolizyjne.