질문 : 무선랜에 CF와 DCF와 PCF의 차이점이 뭔지 설명해주세요.
답:
안녕하세요?
언제나 허접이자 실력은 쥐뿔없으면서 이빨로 무장한 안톤입니다.
제가 아는 만큼만 몇자 끄적 거려 볼까 합니다.
우선 반선님이 여쭤보신 DCF(Distributed Coordination Function) 부터 말씀 드리겠습니다.
PC
---------------------------------
1.농사꾼님 PC
2.스티븐님 PC
3.네떡달인님 PC
4.애기때지님 PC
5.바하무트님 PC
----------------------------------
제로님 AP
----------------------------------
이렇게 다섯분이 소유하신 스테이션이 있다고 가정을 합시다.
그리고 제로님이 소유하고 계시는 AP가 하나 있다고 하죠
위에 다섯개의 스테이션들은 제로님의 AP에 붙기 위해 서로 경쟁을 해야 합니다.
하지만 농사꾼님을 비롯한 다섯분들은 "아 조용히 생각해보니 무작정 달려가다가 부딪히겠구나 (,,)a"
이러면서 서로 배려를 해줍니다.
농사꾼님 먼저 ^^/
아니 아니 스티븐님 먼저 ^^/
형님먼저 아우먼저
즉 스테이션입장에서는 데이터를 전송하기전 다른 스테이션이 사용중인지 확인해보고
일정 시간동안 기다리게 됩니다.
바로 DCF란 이러한 충돌을 사전에 방지하기위한 기능이며 위에 "데이터를 전송하기전 다른 스테이션이 사용중인지 확인 해
보고 일정 시간동안 기다림" 이것을 메카니즘화 한것이 CSMA/CA 방식이라고 합니다.
잠깐
여기서 안톤씨 질문요 ^-^/
왜 무선랜은 CSMA/CD방식을 사용하지 않고 CSMA/CA방식을 쓰나요?
정답은 여기에 있습니다.
CSMA/CD 방식을 봅시다.
CSMA/CD 방식은 꼭 여기서 말씀을 드리지 않더라도 익히 잘 알고 계시리라 믿습니다만 비교차원에서
다시한번 집고 넘어 가도록 하겠습니다.
HUB가 있다고 가정을 하죠.
A와 B라는 단말이 있다고 가정을 합시다.
만약 A와 B라는 단말이 동시에 데이터를 송신했을때 HUB는 두개의 포트 이상에서 신호가 입력되면
HUB왈 : 어라 이거 충돌이네 @@?
이러고 모든 프레임의 수신을 중지하고 A와 B의 포트는 물론 전체 포트에 Jam Signal을 보냅니다.
흔히들 이것을 재밍신호라고 말합니다.
그럼 A와 B의 단말은 이렇게 생각합니다.
A/B왈 : 야야 우리 충돌났데 @@> 그런거야 (~-.-)~
이렇게 판단을 하고 즉시 자신의 데이터 전송을 중지 합니다.
그다음에 일정시간후에 A또는 B에서 데이터를 재 전송시도를 하게됩니다.
구체적인 내용은 CSMA/CD 한번 다시 읽어보시길 바라고...
------------------------------------------------------------
자 그러면 왜 무선랜은 CSMA/CD방식이 아닌 CSMA/CA 방식을 쓰느냐?
이러면 또 이더넷에 사용되는 유선랜에 대해서 또 집고 넘어 가겠습니다.
일반적으로 유선랜은 송수신 선로가 분리가 되어 있습니다.
주띠 주 녹띠 녹 = Cat5(1/2/3/6)
즉 송수신 선로가 분리 되어 있기에 캐리어감지 동작후 프레임을 전송합니다.
-------------------------------------------------------------
하지만 무선랜은 어떨까요?
유선랜 처럼 송수신(Rx/Tx)선로가 분리되어 있는대신 무선랜은 1개의 체널만을 사용하므로
전송중에 발생되는 Collsion을 감지할 방법이 없습니다.
그렇기 때문에 스테이션측에서 미리 DCF(Distributed Coordination Function)방식의 CSMA/CA메카니즘을 사용하게 됩니다.
다시 말씀드리지만 "데이터를 전송하기 전에 미리 감지 일정시간 대기"
간단하게 충돌회피라고 합니다.
어려운가요?
더 쉽게 말씀드린다면
CSMA/CD방식은 충돌이 난다음 일정 시간 대기후에 데이터 전송
CSMA/CA방식은 충돌이 나기전 다른 스테이션이 사용중인지 확인후 일정 시간대기후 전송
이렇다는 이야기입니다.
---------------------------------------------------------------
자 그런데 하나 봅시다 위에 DCF방식의 CSMA/CA 메카니즘은 충돌이 나기전 다른 스테이션이 사용중인지 확인후
일정 시간 대기 한 다음 전송 한다.
자 그러면 DCF방식을 사용하는 메카니즘인 CSMA/CA방식 예를 하나 들어 보겠습니다.
동작방식은 이렇습니다.
1.바하무트 : 다른 전송하는 스테이션이 있나 없나 (,,)('') 두리번 두리번
2.바하무트님이 데이터를 전송을 시작한다.
2.바하무트님께서 제로님 AP에 말씀 하신다. -.-y~ 나 데이터 전송중이야 훔훔 나 이시간만큼 송신을 할꺼야
즉 시간값이 기재된 RTS(Request To Send) Frame을 제로님 AP에게 알립니다.
3.제로님 AP 바하무트 스테이션 에게 말씀 하신다 -.-y~
오~ 전송중이시군요 하신다음 응답메시지로 CTS(Clear TO Send) 를 보내줍니다.
제로님 AP 공지 : 바하무트님께서 데이터를 전송하고 있다. 모든 스테이션 Standby
----------------------------------------------------------------------------
쉬어가는 이야기 ^-^ 화장실에 볼일 보러가서 똑똑 노크를 하고 "안에 계세요 @@?"
이러는 것과 무슨 차이가 있을까 하는거죠.
비유법이 좀 그런가 이때 딴지 또 들어옵니다.
아쒸 화장실에서 똑똑 두들기는 자체가 CSMA/CD 방식 아닙니까 ?
어쩌라는건지 ㅡㅡ;
여기서 입장 바꿔서 두사람이 동시에 화장실에 뛰어 갔습니다.
서로 문을 열고 들어가려다가
아네 네 먼저 들어가세요.
이렇게 하면 이것이 CSMA/CD 라고 하죠모 ㅡㅡ;
제가 말씀드리고 나서도 좀 애매한 비유입니다만 돌맹이부터 퍽퍽 하는군요 >.<
사족 : 전송 대기시간이 길다. 즉 전송을 시행하고 있는 스테이션이 전송을 끝낼때 까지 다른 스테이션은 기다린다.
-----------------------------------------------------------------------------
어쨌든 DCF방식의 긴데이터 전송에는 유리 하지만 짧은 데이터 전송에는 불리 하겠군요.
그래서 나온것이 바로 Contention Free라고 부르는 CF 즉 무경쟁 방식이 나오게 됩니다.
여기에서 무경쟁 방식의 대표적인 녀석이 바로 PCF(Point Coordination Function)이라는 녀석입니다.
즉 PCF라는 녀석은 DCF에 비해 정말 성질이 급합니다.
PCF 봅시다.
1.제로님 AP 일정 시간동안 PCF 구간 시작 한다. 폴링 폴링 폴링 ~~~~~~~~~~~~~~~~
2.제로님 AP 왈 : 바하무트님 데이터 보낼것 있어요?
3.바하무트님 왈 : 없어요
4.제로님 AP 왈 : 스티븐님 데이터 보낼것 있어요?
5.스티븐님 왈 : 없어요.
6.제로님 AP왈 : 농사꾼님 데이터 보낼것 있어요?
7.농사꾼님 왈 : 네 있어요 홍홍 제꺼 받아주세요.
8.제로님 AP왈 : 오~~~ 쏘세요.
제로님 AP 공지 : 지금 시간은 농사꾼님이 데이터를 전송중인 시간입니다.
전송 완료후
제로님 AP 일정 시간동안 PCF 구간 시작 한다. 폴링 폴링 폴링 ~~~~~~~~~~~~~~~~
이 사이클이 반복 되는 것이 바로 PCF입니다.
-------------------------------------------------------------------------------
자 그러면 정리 하겠습니다.
DCF 방식 : 스테이션에서 데이터를 전송하기전 충돌을 회피하기 위해서 미리 감지후 대기 한다. =스테이션에서 제어
PCF 방식 : AP에서 직접 스테이션들에게 여쭤보시고 대기 시킨다. = AP에서 제어
이상입니다.
언제나 밝은 넷떡을 위해서 (~-.-)~
추신 : 잘못된점이나 고칠점이 있으면 지적해 주시면 감사드리겠습니다