A. CSMA/CA
1. CSMA/CA 개요
- Carrier Sense Multiple Access with Collision Avoidance, IEEE802.11
- 충돌 회피 방식, 무선랜 MAC(Media Access Control)프로토콜 DCF는 CSMA/CA사용 동등한 우선순위를 가지고 경쟁매체 공유하는 방식
- CSMA/CA에서는 ACK프레임을 사용
- DCF(Distributed Coordination Function) : 개별적인 노드가 경쟁에 의해 무선 채널을 획득하도록 하는 방식
2. 충돌 회피 방법
IFS : 프레임 간 공간 (Inter Frame Space) |
- 채널이 휴지 상태인 것으로 확인되더라도 전송을 늦추어 충돌을 회피 | 첫번째 충돌회피 방법 DIFS, SIFS, EIFS |
Contention Window 다툼 구간 |
- time-slot으로 나뉘어져 있는 일정 시간 - 전송할 준비가 되어 있는 지국은 임의의 수를 선택하여 대기, 오래 기다린 지국 우선 |
두번째 충돌회피 방법 |
Acknowledgement | - IFS와 Contention Window사용 하더라도 충돌 발생 데이터 손상/손실 | ACK와 Timer 이용 수신 보장 |
- DIFS(DCF IFS) : 일반 데이터 서비스에서 사용하는 최소한의 시간, 무선 매체가 유휴 상태임을 감지한 후에 다음 동작까지 기다려야할 최소한의 시간
- SIFS(Short IFS) : 스페이싱 짧게 하여 신속한 전송을 위한 서비스에 사용, 가장 짧은 대기 지연 시간
[참고] IEEE 802.11
- 무선 환경의 문제
충돌발생 : CAMA 방식사용
. 송신 전 안테나로부터 입력 확인(CA)
. 충돌 확인 후 데이터 전송(MA) - RF 링크 품질문제
. 모든 전송 프레임에 대한 ACK 수신 - 숨겨진 노드 문제
. 숨겨진 노드는 서로의 송신이 검출되지 않는 스테이션임
. B가 C와 통신중 이를 감지하지 못하고 A가 B로 데이터 송신시 충돌 발생함
. RTS/CTS 프레임내에 송신예약 기능으로 해결함
- 숨겨진 노드 해결책
- 송신측은 RTS 송신시 NAV(Network Allocation Vector)전달
- 수신측은 RTS 받고 다른 노드와 송수신 없을 때 CTS 응답
- NAV 포함 : 다른 노드와 송수신 금지
- 즉 NAV(CTS)신호를 이용하여 hidden node 문제를 해결함
- 하나의 프레임전송 : RTS/CTS.프레임, ACK
- 여러 프레임전송 : SIFS/DIFS 로 계속 통신 가능토록 우선권 제공
- RTS(Request to Send) : 통신상태를 물어봄
- CTS(Clear to Send) : 통신상태가 양호함을 응답
- 매체 접근에 대한 우선순위를 설정하기 위해 IFS(Inter Frame Spacing) 사용
- IFS의 종류
IFS 종류 | 내 용 |
SIFS(Short IFS) | - 우선순위1, ACK/CTS등에 이용 - 스페이싱을 짧게 하여 신속한 전송을 요하는 서비스에 사용 |
PIFS(PCF IFS) | - 우선순위2, 제한된 시간안에 응답시 이용 - 중재자 알고리즘 등 품질이 중요한 서비스에 사용 |
DIFS(DCF IFS) | - 우선순위3 - DCF(Distributed Coordination Function)등 일반 데이터서비스에 사용 |
B. CSMA/CD
1. CSMA / CD 개요
- CSMA/CD는 호스트가 채널의 상태를 감지해 충돌을 피하는 매체접근방식임
- 초기의 다중접근방식(MA:Multiple Access)은 두 개 이상의 장치가 동시에 매체에 접근할 확률을 매우 낮은 것으로 보고 전송하고자 하는 프레임이 다른 것들에 의해 손상되지 않았다는 확인 응답을 받은 호스트가 전송에 성공한 것으로 간주하는 방식인 ALOHA방식을 사용했음
- 다음에 등장한 CSMA(Carrier Sense Multiple Access) 방식은 호스트가 전송하기 전에 매체의 전압을 점검하여 회선이 사용되지 않는 상태임을 확인하고 전송을 시작함
- CSMA 방식에 충돌을 검출하는 기능을 추가한 것이 바로 CSMA/CD방식임
2. 동작과정 및 충돌윈도우
2-1. 동작과정
① 호스트는 데이터를 전송하기 전에 회선이 사용 중인지 점검한다.
② 회선이 사용 중이면 임의의 시간만큼 기다린 후 다시 회선의 사용 유무를 점검한다.
③ 회선이 사용되지 않는 것이 확인되면 데이터를 전송한다.
④ 데이터 전송 중 충돌이 검출되면 충돌 발생 사실을 모든 호스트에 간단한 통보신호(jam신호)를 보낸다.
⑤ 충돌이 발생하면 임의의 시간 동안 대기한 후 다시 데이터를 전송한다.
2-2. 충돌윈도우(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.5 usec
- propagation time + delay in repeater = 51.2 usec
- for 10 Mbps, 51.2 usec * 10 Mbps = 512 bits(=64 bytes)
3. 충돌검출과 재전송 알고리즘
3-1. collsion detection
- baseband bus에서, 충돌이 발생할 경우 signal의 전압은 단일 스테이션의 데이터 signal의 전압보다 높다.
- Signal은 전송되면서 감쇄된다(attenuate). 따라서 signal을 인식하기 위한 전송 거리의 한계는 500m (10 Base5) 혹은 200m (10 Base2)이다.
- star-topology에서는 동시에 한 포트 이상에서부터 데이터가 전송되었는지 충돌이 발생했는지를 판단한다. 이 경우 Special collision presence signal을 각 포트에 전송한다.
3-2. Binary exponential backoff(재전송알고리즘)
- 스테이션은 충돌이 발생하면 지속해서 전송을 재시도한다.
- 그런데 재시도할 때마다 backoff 하는 시간(random delay의 평균값)은 매번 2배씩 증가한다.
- 그리고 16번 충돌이 계속해서 발생하면 전송을 중지하고 에러가 발생했다고 보고한다.
4. 채널획득 (Persistent Mechanism) 방법
- 채널을 상태를 검사하여 채널을 획득하는 방법은 Non-persistent방식, 1-persistent방식, P-persistent방식이 있음
4-1. non-persistent방식
- 호스트는 프레임을 전송하기 전에 채널을 검사함
- 만약 LAN 상의 다른 노드들이 전송을 하고 있지 않으면 스스로 데이터를 전송하기 시작함
- 그러나 호스트는 만약 채널이 이미 사용 중이면 이전 전송작업의 종료를 확인하기 위해 채널의 상태를 계속적으로 검사하지 않고 임의의 시간이 지난 후 채널의 상태를 검사함
4-2. 1-persistent방식
- 호스트가 전송할 데이터를 가지고 있을 때 그 순간 다른 호스트가 전송을 하고 있는지를 확인하기 위해 채널의 상태를 검사함
- 만약 채널이 busy상태이면 호스트는 채널이 idle상태일 때까지 기다리고 채널이 idle 상태이면 즉시 프레임을 전송하기 시작함
- 충돌이 발생하면 임의의 시간 동안 대기한 후 다시 채널을 검사함
- 이 방식은 채널이 idle상태일 때마다 1의 확률을 가지고 프레임을 전송하기 때문에 1-persistent 방식이라 함
- 대부분 CSMA/CD 매체접근제어 방식은 1-persistent 방식을 사용함
4-3. p-persistent방식
- 이 방식은 채널이 각 슬롯으로 나뉜 슬롯 채널에서 사용됨
- 호스트가 전송할 준비가 되어 있으면 채널의 상태를 검사하며 만약 채널이 idle 상태이면 p의 확률을 가지고 전송을 시작함
'IT 용어 및 개념 > 기타' 카테고리의 다른 글
멧칼프의 법칙(Metcalfe's Law)&암달의 법칙(Amdal's Law)&무어의 법칙(Moore's Law) 비교 (0) | 2024.07.30 |
---|---|
다중화 기술(Multiplexing) TDM/FDM/WDM 개념 및 비교 (0) | 2024.07.30 |
SSO (Single Sign On) - 통합 인증 관리 서비스 (0) | 2024.07.30 |
HTTP 상태 코드/에러 코드 100~500 정리 (0) | 2024.06.05 |
IPsec 개념 및 프로토콜(AH/ESP/IKE) 종류 비교 정리 (0) | 2024.06.05 |