네지덤

  1. 네트워크
    1. 네트워크

    2. 네트워크 기출문제

CSMA/CD

개념
- CSMA/CD는 호스트가 채널의 상태를 감지해 충돌을 피하는 매체접근방식임 - 초기의 다중접근방식(MA:Multiple Access)은 두개 이상의 장치가 동시에 매체에 접근할 확률을 매우 낮은 것으로 보고 전송하고자 하는 프레임이 다른 것들에 의해 손상되지 않았다는 확인 응답을 받은 호스트가 전송에 성공한 것으로 간주하는 방식인 ALOHA방식을 사용했음 - 다음에 등장한 CSMA(Carrier Sense Multiple Access)방식은 호스트가 전송하기 전에 매체의 전압을 점검하여 회선이 사용되지 않는 상태임을 확인하고 전송을 시작함 - CSMA 방식에 충돌을 검출하는 기능을 추가한 것이 바로 CSMA/CD방식임

I. CSMA / CD 개요

  • CSMA/CD는 호스트가 채널의 상태를 감지해 충돌을 피하는 매체접근방식임
  • 초기의 다중접근방식(MA:Multiple Access)은 두개 이상의 장치가 동시에 매체에 접근할 확률을 매우 낮은 것으로 보고 전송하고자하는 프레임이 다른 것들에 의해 손상되지 않았다는 확인 응답을 받은 호스트가 전송에 성공한 것으로 간주하는 방식인 ALOHA방식을 사용했음
  • 다음에 등장한 CSMA(Carrier Sense Multiple Access)방식은 호스트가 전송하기 전에 매체의 전압을 점검하여 회선이 사용되지 않는 상태임을 확인하고 전송을 시작함
  • CSMA 방식에 충돌을 검출하는 기능을 추가한 것이 바로 CSMA/CD방식임

 

그림. CSMA/CD 발전과정

 

Ⅱ. 동작과정 및 충돌윈도우

 가.    동작과정

  ①     호스트는 데이터를 전송하기 전에 회선이 사용 중인지 점검한다.

  ②     회선이 사용중이면 임의의 시간만큼 기다린 후 다시 회선의 사용 유무를 점검한다.

  ③     회선이 사용되지 않는 것이 확인되면 데이터를 전송한다.

  ④     데이터 전송 중 충돌이 검출되면 충돌 발생 사실을 모든 호스트에 간단한 통보신호(jam신호)를 보낸다.

  ⑤     충돌이 발생하면 임의의 시간동안 대기한 후 다시 데이터를 전송한다.

그림. CSMA/CD의 동작

 

 나. 충돌윈도우(Collision window)

  •  CSMA/CD에서 충돌 윈도우의 개념은  그 크기에 따라서 LAN 세그먼트의 길이와 함께 최소 프레임 크기가 정해진다는 점에서 중요한 의미를 갖는다
  •  두 호스트가 동시에 데이터 전송을 시도할 때에 충돌이 발생하면 충돌이 발생하였다는 사실을 각 호스트가 반드시 알 수 있어야 하는데 이때 사용되는 개념이 충돌 윈도우임
  •  가장 멀리 떨어져 있는 두 호스트 사이의 신호 전송 시간은 t라고 가정하면 어느 특정한 시점에서 하나의 호스트A가 전송을 시작할 때, 이 호스트에서 가장 먼거리에 있는 다른 호스트 B가 호스트A로부터의 신호를 수신하기 전에 전송을 시작했다면, 호스트 B는    전송 직 후 아주 짧은 순간에 충돌을 감지하고 다른 모든 호스트에 jam 신호를 보냄
  •  그러나 호스트 A는 2t의 시간이 흐른 후에 이러한 충돌 사실을 확인할 수 있음, 즉 호스트 A가 아주 짧은  프레임을 약 2t 시간 내에 전송하였다면 호스트 A는 프레임이 충돌 없이 전송되었다고 판단함
  •  따라서 이러한 현상을 방지하기 위해 CSMA/CD에서는 최소 전송 프레임의 길이를 전송 프레임의 첫 비트가 케이블 전체에 전파되는 시간의 최소 두배 이상이 되어야 한다라고 정하고 있음
  •  즉 충돌윈도우는 각 호스트가 데이터를 전송하고 나서 충돌을 감지하는데 까지 걸리는 시간을 의미함
  •  프레임의 최소 길이는 최소한 51.2us(64byte)의 전송시간을 가져야 함
    • 802.3에서 망 최대 길이(4개의 리피터로 연결)= 2500m
    • propagation time(빛의 속도의 2/3)= 2500/(2*108m/sec) = 12.5usec
    • propagation time + delay in repeater = 51.2usec
    • for 10Mbps, 51.2usec * 10Mbps = 512 bits(=64 bytes)

 

Ⅲ.  충돌검출과 재전송 알고리즘

 가. collsion detection

  •  baseband bus에서, 충돌이 발생할 경우 signal의 전압은 단일 스테이션의 데이터 signal의 전압 보다 높다.
  •  Signal은 전송되면서 감쇄된다(attenuate). 따라서 signal을 인식하기 위한 전송 거리의 한계는 500m (10Base5) 혹은 200m (10Base2)이다.
  •  star-topology에서는 동시에 한 포트 이상에서부터 데이터가 전송되었는지 충돌이 발생했는지를 판단한다. 이 경우 Special collision presence signal을 각 포트에 전송한다.

 

 나. Binary exponential backoff(재전송알고리즘)

  •  스테이션은 충돌이 발생하면 지속해서 전송을 재시도한다.
  •  그런데 재시도할 때 마다 backoff하는 시간(random delay의 평균값)은 매번 2배씩 증가한다.
  •  그리고 16번 충돌이 계속해서 발생하면 전송을 중지하고 에러가 발생했다고 보고한다.

 

Ⅳ. 채널획득 (Persistent Mechanism)방법

  •  채널을 상태를 검사하여 채널을 획득하는 방법은 Non-persistent방식, 1-persistent방식, P-persistent방식이 있음

그림. CSMA/CD 의 채널획득 방법

 

 가. non-persistent방식

  •  호스트는 프레임을 전송하기 전에 채널을 검사함
  •  만약 LAN 상의 다른 노드들이 전송을 하고 있지 않으면 스스로 데이터를 전송하기 시작함
  •  그러나 호스트는 만약 채널이 이미 사용중이면 이전 전송작업의 종료를 확인하기 위해 채널의 상태를 계속적으로 검사하지 않고 임의의 시간이 지난 후 채널의 상태를 검사함

 

 나. 1-persistent방식

  •  호스트가 전송할 데이터를 가지고 있을 때 그 순간 다른 호스트가 전송을 하고 있는지를 확인하기 위해 채널의 상태를 검사함
  •  만약 채널이 busy상태이면 호스트는 채널이 idle상태일 때가지 기다리고 채널이 idle 상태이면 즉시 프레임을 전송하기 시작함
  •  충돌이 발생하면 임의의 시간동안 대기한 후 다시 채널을 검사함
  •  이 방식은 채널이 idle상태일 때마다 1의 확률을 가지고 프레임을 전송하기 때문에 1-persistent 방식이라 함
  •  대부분 CSMA/CD 매체접근제어 방식은 1-persistent 방식을 사용함

 

 다. p-persistent방식

  •  이 방식은 채널이 각 슬롯으로 나뉜 슬롯 채널에서 사용됨
  •  호스트가 전송할 준비가 되어 있으면 채널의 상태를 검사하며 만약 채널이 idle 상태이면 p의 확률을 가지고 전송을 시작함

 

None-persistent

1-persistent

P-persistent

 

댓글