본문 바로가기
Knowledge/Protocol

CSMA/CD란?

by VIR&US 2023. 7. 10.
반응형

Carrier Sense Multiple Access/Collision Detection

  • Carrier Sense : 회선(매체)이 사용되고 있는지에 따라 (전송 여부 식별하여)
  • Multiple Access : 누구든 동시에 접근할 수 있으면서 (우선순위 없이 누구나)
  • Collision Detection : 충돌을 감지해 제어하는 통신 방식 

CSMA/CD 방식은 CSMA 방식에 충돌을 처리하는 절차를 추가한 통신방식입니다. CSMA/CD는 충돌이 감지되는 즉시 전송을 종료하여 재시도를 시도하기 전에 필요한 시간을 단축함으로써 CSMA 성능을 향상시키는 데 사용됩니다. 간단하게 말하면, 누구든 통신을 할 수 있지만, 현재 회선이 아무도 사용중이지 않아야하고, 두 매체가 동시에 신호를 보내려한다면 충돌이 감지되어 Jam신호를 보내고 랜덤한 시간뒤에 다시 신호를 보내는 통신방식입니다.

 

CSMA/CD (Carrier-sense multiple access with collision detection)는 로컬 영역 네트워킹에서 유선 Ethernet 기술에서 주로 사용하는 매체 접근 제어 (MAC) 방법입니다. 이는 다른 스테이션들이 전송하지 않을 때까지 전송을 연기하기 위해 캐리어 감지를 사용합니다. 이는 프레임을 전송하는 동안 다른 스테이션들로부터의 전송을 감지하여 충돌을 감지하는 것과 결합하여 사용됩니다. 이 충돌 조건이 감지되면, 스테이션은 해당 프레임의 전송을 중지하고, Jam 신호를 전송하고, 그런 다음 프레임을 다시 전송하려고 무작위 시간 간격을 기다립니다.

 

Collision Domain

같은 물리적 매체에 연결된 장치들의 집합. 같은 도메인 내에서 2개 이상의 장치가 동시에 접근하려고 하는 경우 충돌이 발생한다.

Back-off Time

충돌 발생 후 대기했다가 전송하기까지의 시간

 

지속 방식(Persistent Mechanism)

1-persistent

  • 회선(매체)이 사용 중이 아니면 즉시 전송
  • 회선(매체)이 사용 중이면 기다렸다가 채널이 비는 순간 즉시 전송

이 방식은 두 개 이상의 스테이션이 회선(매체)이 IDLE 상태인 것을 감지할 것이고 그런 경우에 모두 즉각 프레임을 전송하기 때문에 가장 높은 충돌 위험을 유발한다.

nonpersistent

  • 회선(매체)이 사용 중이 아니라면 즉시 전송
  • 회선(매체)이 사용 중이면, 확률분포에서 구한 재전송 지연시간(random delay)만큼 기다림

이 방식은 두 개 이상의 스테이션이 같은 시간을 대기하고 있다가 동시에 전송할 확률이 낮기 때문에 충돌의 위험은 낮다. 그러나 전송할 프레임을 가진 스테이션이 있음에도 random delay로 인해 회선이 idle 상태에 있을 수 있기 때문에 회선 효율이 낮다.

p-persistent

  • 회선(매체)이 사용 중이 아니라면, 확률 p로 전송하고 (1-p)의 확률로 하나의 Time Slot만큼 지연시킨후 회선을 다시 감지
  • 회선(매체) 사용 중이면 기다렸다가 채널이 비는 순간 확률 p로 전송하고 확률 (1-p)로 하나의 Time Slot만큼 지연시킨후 회선을 다시 감지

위의 두가지 방식을 합한 방식이며, 충돌의 위험을 줄이면서 회선 효율을 높인다.

 

Procedure

https://upload.wikimedia.org/wikipedia/commons/3/37/CSMACD-Algorithm.svg

Persistent Mechanism중 하나를 사용합니다.

 

  1. frame를 전송할 준비가 되었는지? (전송할 준비가 되지 않았다면 frame를 기다립니다.)
  2. 회선(매체)가 IDLE 상태인지? (IDLE상태가 아니라면 IDLE 상태를 기다립니다.)
  3. 전송을 시작하고 전송 중 충돌을 모니터링합니다.
  4. 충돌이 발생했는지? 발생하지 않았다면 frame 전송을 완료합니다. (발생했다면 충돌 감지 절차로 이동합니다.)
  5. 재전송 카운터를 재설정하고 frame 전송을 완료합니다.

 

Collision detected procedure(충돌감지절차)

  1. 모든 수신기가 충돌을 감지할 수 있도록 최소 패킷 시간에 도달할 때까지 전송을 계속합니다. (with a jam signal instead of frame header/data/CRC ). 
  2. 재전송 카운터를 증가시킵니다.
  3. 최대 전송 시도 횟수(>15)에 도달했는지? (도달했다면 전송을 중단합니다.) 
  4. 충돌 횟수에 따라 임의 백오프 기간을 계산하고 대기합니다. 
  5. 첫번째 단계부터 반복합니다.

 

2023.07.10 - [Knowledge] - Jamming signal이란?

 

Jamming signal이란?

2023.07.10 - [Knowledge] - CSMA/CD란? CSMA/CD란? Carrier Sense Multiple Access/Collision Detection Carrier Sense : 회선(매체)이 사용되고 있는지에 따라 (전송 여부 식별하여) Multiple Access : 누구든 동시에 접근할 수 있으

vir-us.tistory.com

 

728x90
반응형

'Knowledge > Protocol' 카테고리의 다른 글

[APB] AMBA APB에 대해 알아보자(Revisions, Signals, Basic transfers)  (0) 2023.07.20
Jamming signal이란?  (0) 2023.07.10
[Ethernet] Auto-Negotiation이란?  (0) 2023.07.04
[AXI] Low Power Interface (ENG)  (0) 2023.06.30
I2C? (3)  (0) 2023.06.21