Multiplexing 은 데이터를 보낼 때 효율적인 자원 활용을 위해 Time, Frequency, Code를 활용하여 분할하는 기법입니다.
Multiple Access는 클라이언트의 엔드포인트가 여러개인 경우 개별 포인트에서 데이터를 받기 위한 기법입니다.
즉 Multiplexing은 전송의 관점에서 분할법이고, Multiple Access는 수신의 관점에서 분할법이라고 볼 수 있습니다.
이 방식은 Full-Duplex 방식입니다.
여러 사용자들(nodes) 들이 동일한 물리적 채널을 공유하여 통신하는 방식입니다. 만약 node가 2개 이상의 신호를 동시에 받게 된다면, Collision 이 발생하였다고 합니다.
여러 사용자가 동시에 하나의 통신 채널을 공유할 수 있는 방식을 제공하는 프로토콜입니다. 즉, 어떻게 각 노드들이 채널을 공유해서 사용할지, 예를 들어 언제 노드가 데이터를 전송할지, 를 결정하는 프로토콜 이라고 할 수 있습니다.
주의해야 할 점은, 각 노드들이 채널을 공유하여 사용할 때, 노드들 간의 통신이 없다는 점입니다. 채널 스스로 결정해야만 합니다.
분할하는 방식에는
3가지 broad class가 있습니다.
Channel Partitioning (자원을 나눠서 할당해주기)
채널을 분할하여 각각의 노드에 할당해줍니다. 분할하는 방법에는 앞서 설명한 FDMA, TDMA, CDMA 가 있습니다.
Taking Turns : 순서 정하기
순서를 정하여 채널을 사용하는 방식입니다.
random Access (동시에 나눠쓰기)
채널에 모든 유저가 동시에 접근합니다. Collision 이 발생합니다. “Receiver" from collision 입니다.
Contention based Access Protocols 라고도 불립니다!
하나의 링크로 여러 개의 패킷을 한번에 전송한다면?! Collision 이 발생합니다 ,,, 즉
transmit at full channel data rate R. No a priori coordination among nodes.
입니다 !! 한국말로 번역해보자면
노드 중 하나가 전송할 데이터가 있으면, 그 노드는 전송할 데이터를 전체 채널 데이터 전송 속도인 R로 전송합니다. 이 프로토콜에서는 노드들 간에 사전 조정이나 협조가 없습니다.
즉, 노드들은 다른 노드들이 전송하고 있는지 여부와 관계없이 전송을 시도합니다. 이러한 방식으로 충돌이 발생할 수 있지만, 충돌 발생 시 재전송이나 백오프 등의 방법으로 문제를 해결합니다.
이 방식은 비록 충돌이 있지만, 널리 쓰입니다. LAN, Ethernet 등등 많은 기술에서 쓰이는 접근법입니다. Random access MAC protocol 에는 2가지 명세가 있습니다.
Contention based MAC protocol 에는 여러가지 타입이 존재합니다.