[데이터 통신] 매체 접근 제어(Media Access Control)
Media Access Control
하나의 통신 채널을 여러 장치가 공유할 때, 각 장치가 언제 어떻게 채널에 접근할지를 결정하는 것이 바로 매체 접근 제어(Media Access Control, MAC)의 역할이다. 이 페이지에서는 MAC의 세 가지 주요 방식인 무작위 접근(Random Access), 제어된 접근(Controlled Access), 그리고 채널화(Channelization) 방식에 대해 간략히 소개한다.
첫 번째로, 무작위 접근(Random Access) 방식은 장치들이 서로 조율 없이 자유롭게 채널에 접근하는 방식이며, ALOHA, CSMA, CSMA/CD, CSMA/CA와 같은 대표적인 프로토콜이 이에 해당한다. 주로 LAN과 WAN에서 사용되며, 충돌을 허용하고 처리하는 구조를 갖는다.
두 번째로, 제어된 접근(Controlled Access) 방식은 장치들이 사전에 정해진 규칙에 따라 순서대로 채널에 접근하는 방법이다. 이 범주에는 예약(Reservation), 폴링(Poling), 토큰 패싱(Token Passing)이 있으며, 일부는 현재도 사용되지만 일부는 역사적 의미를 가진다.
마지막으로, 채널화(Channelizaion) 방식은 채널을 분할하여 여러 장치가 동시에 사용할 수 있도록 한다. FDMA, TDMA, CDMA 방식이 대표적이며, 이는 통히 셀룰러 통신에서 널리 사용된다.
Random Access - 무작위 접근
Random Access 방식은 매체 접근 제어 방식 중 하나로, 여러 장치가 동등한 권한을 가지고 매체에 접근할 수 있도록 허용한다. 이 방식의 핵심은 중앙 제어 장치 없이, 각 장치가 스스로 매체 상태를 확인하고 전송을 결정한다는 점이다. 따라서 각 장치는 전송을 원할 때, 현재 매체가 비어 있는지(Idle) 혹은 사용 중인지(Busy)를 판단하고, 비어 있으면 전송을 시도한다.
이러한 구조는 간단하고 유연하지만, 동시에 여러 장치가 전송을 시도할 경우 충돌(Collision)이 발생할 수 있다. 충돌 발생 시, 데이터는 손상되고, 다시 전송해야 하므로 성능 저하가 발생한다. 이를 해결하기 위한 다양한 방식이 개발되었으며, 대표적으로 다음과 같은 네 가지 프로토콜이 있다.
ALOHA
ALOHA는 최초의 무작위 접근 방식으로, 1970년대 하와이 대학교에서 무선 네트워크를 위해 개발되었다. 모든 장치는 매체가 비어 있는지 확인하지 않고 언제든지 전송할 수 있으며, 충돌이 발생하면 일정 시간 후 랜덤한 시간을 기다린 뒤 다시 전송한다.
동작 절차 :
- 전송자(Sender) : 프레임이 생기면 바로 전송하고, 일정 시간 동안 ACK(확인 응답)를 기다린다.
- ACK를 받으면 성공
- 못받으면 충돌이 발생한 것으로 보고, 랜덤한 지연 시간 후 재전송
- 일정 횟수 이상 실패하면 포기
- 수신자(Receiver) : 프레임이 손상되지 않았고, 자신의 주소와 일치하면 ACK를 보낸다.
- 전송할 프레임이 생기면, 시도 횟수 K를 0으로 초기화
- 프레임 전송
- 전송 후, 최대 전파 지연 시간의 2배(2 x Tp)만큼 기다림
- ACK 수신 여부 확인: - ACK가 오면 성공 - ACk가 없으면 -> 실패 -> K 증가
- K가 최대 허용 횟수(Kmax)를 넘었는지 확인: - 넘으면 -> 포기(abort) - 안넘으면 -> R(랜덤 값) -> R x T만큼 기다림(Backoff time) -> 다시 전송 시도
- 충돌은 감지하지 않고 ACK 유무로 판단한다. 충돌 후에는 무작위 지연(R x T)을 통해 충돌 확률을 줄인다. T는 Tp(전파 지연) 또는 Tfr(전송 시간)을 사용한다. R은 0 ~ 2K-1 범위의 랜덤 값이다. 문제점 :
- 충돌이 자주 발생하여, 채널 이용 효율이 낮다.
- 이론적으로 최대 18%의 효율만 낼 수 있다.
Vulnerable Time(취약 시간) :
- 순수 ALOHA에서는 전송 시작 전과 후의 전체 프레임 시간이 충돌 가능 구간이 된다.
- 즉, 한 프레임이 전송되기 시작한 시점부터 총 2배의 프레임 길이 동안 다른 프레임이 전송되면 충돌이 발생한다.
예시 계산 :
- 200비트 프레임을 200kbps 채널로 전송하면, 전송 시간은 1ms
- 충돌을 피하려면 ±1ms 구간 내에 다른 전송이 없어야 하므로 총 2ms가 취약 시간이 된다.
위 그림은 여러 개의 스테이션(Station)이 각자 임의의 시점에서 프레임을 전송하면서, 충돌이 어떻게 발생하는지를 시각화한 것이다.
- 각 스테이션은 ALOHA 방식으로 자기 시간 기준으로 아무 때나 전송한다.
- 프레임이 겹치는 경우(노란색 영역)는 충돌 발생
- 충돌 시 해당 구간의 모든 프레임이 망가진다.
- ALOHA는 전송 시작 시점과 무관하게 프레임 전체가 겹치지 않도록 해야 충돌을 피할 수 있다.
위 그림은 여러 노드가 동시에 데이터를 전송하려다 충돌이 발생하고, 이후에 무작위 시간(random backoff)을 기다린 뒤 재전송하는 과정을 보여준다.
- Node1이 먼저 전송을 시작해서 성공적으로 데이터를 보낸다.
- Node2와 Node3는 거의 동시에 전송을 시도해서 프레임이 겹치며 충돌(Collision)이 발생
- 충돌이 감지되지는 않지만 수신자는 ACK를 보내지 않는다. -> 두 노드는 재전송이 필요
- Node3와 Node2는 각각 랜덤한 시간 후 재전송하며, 이번에는 충돌 없이 성공한다.
이 방식은 전송하고 기다리는(Send and Wait) 구조로, 충돌이 감지되지않고(ALOHA는 충돌 감지 기능이 없다.), 단지 ACK를 못 받으면 재전송하며, 랜덤한 시간(delay)를 도입함으로써 같은 충돌이 반복하지 않도록 유도한다.
Slotted ALOHA
Slotted ALOHA는 순수 ALOHA의 비효율성을 개선하기 위해 도입된 방식으로, 시간을 일정한 슬롯(slot) 단위로 나누고, 각 노드는 슬롯의 시작에서만 전송을 할 수 있도록 한 구조이다.
이 방식은 다음과 같은 장점을 갖는다. :
- 충돌 가능성이 절반으로 줄어든다.
- 취약 시간(Vulnerable time)이 Tfr(프레임 전송 시간)으로 단축된다.(순수 ALOHA는 2 x Tfr)
주요 특징 :
- 각 프레임은 슬롯의 경계에서만 시작할 수 있다.
- 슬롯 단위 동기화가 필요하므로 중앙 시계 또는 동기화 기법이 요구된다.
- 프레임이 완전히 겹칠 경우에만 충돌이 발생한다.
- 이론적으로 최대 37%의 효율이 가능하다.
위 그림은 전송, 충돌, 무작위 대기 후 재전송하는 Slotted ALOHA의 실제 동작 절차를 시각적으로 보여준다.
- Node1은 Slot1에서 전송 -> 성공
- Node2와 Node3는 Slot2에서 동시에 전송 -> 충돌
- 두 노드는 이후 랜덤한 슬롯을 선택하여 재전송한다.
- Node2 -> Slot3에 재전송
- Node3 -> Slot4에 재전송
- Slot3,4에서는 각각 하나씩만 전송 -> 성공
충돌 후 재전송 시, 노드는 무작위 슬롯(random backoff)을 기다린 뒤 다시 전송한다. 이 과정은 ALOHA와 같지만, 슬롯 경계 내에서만 동작한다는 점이 다르다.
위 그림은 실제로 여러 노드(station 1~4)가 각 슬롯에서 전송을 시도할 때, 어떤 슬롯에서 충돌이 발생하고 어떤 슬롯에서는 성공적으로 전송되는지를 보여준다.
- Slot 2: Station 1, 2, 3이 동시에 전송 -> 충돌
- Slot 3: Station 1, 3, 4가 전송 -> 충돌
- Slot 4: Station 2만 전송 -> 성공
- Slot 5,6: 각각 하나씩만 전송 -> 성공
즉, 같은 슬롯에서 둘 이상이 전송되면 충돌하며, 하나만 전송하면 성공함을 볼 수 있다. 충돌이 발생한 슬롯에서는 모든 프레임이 손실된다.
위 그림은 슬롯 경계에서 전송이 일어나는 구조를 보여준다. Slotted ALOHA에서 충돌이 발생하는 시간 영역(Vulnerable time)을 설명하고 있다.
- Station B와 C가 같은 슬롯 t에서 동시에 전송 -> 충돌 발생
- 취약 시간은 슬롯 하나의 크기인 Tfr
- 그 외의 시간에는 어떤 노드가 전송하든 충돌 발생 가능성이 없다.
Slotted ALOHA에서는 오직 슬롯 시작 지점만 충돌의 원인이 되므로, 충돌 가능 시간은 하나의 프레임 시간(Tfr)로 제한된다.
CSMA
ALOHA와 Slotted ALOHA는 전송 전에 채널 상태를 확인하지 않는다는 문제점이 있어 충돌이 자주 발생했다. CSMA(Carrier Sense Multiple Access)는 이 문제를 해결하기 위해 고안된 방식으로, 각 스테이션이 채널이 비어있는지 감지한 후에만 전송을 시작한다.
핵심 원리 : “Sense before transmit”, 또는 “Listen before talk”
CSMA에서의 충돌 공간/시간 모델
위 그림은 CSMA에서도 충돌이 발생할 수 있음을 보여주는 모델이다.
- B는 t₁ 시점에 전송을 시작하고,
- C는 t₂ 시점에 전송을 시작함.
- 두 스테이션 사이 거리가 멀기 때문에, C는 B가 전송하고 있는 것을 아직 감지하지 못하고 전송을 시작한다.
- 이로 인해 두 신호가 중첩되는 회색 영역에서 충돌(Collision)이 발생한다.
즉, 전파지연(propagation delay)으로 인해 채널이 비어 있다고 착각하게 되고, 이로 인해 충돌이 발생할 수 있다.
CSMA에서의 취약 시간(Vulnerable Time)
위 그림은 CSMA에서의 취약 시간이 무엇인지 시각적으로 보여준다.
- A가 전송을 시작하고,
- B, C, D는 각각 일정 시간 뒤 A의 전송을 감지하게 된다.
- 전파 시간 동안은 채널이 비어 있다고 오해할 수 있기 때문에, 그 시간 동안 전송을 시도하면 충돌이 발생할 수 있다.
따라서 CSMA의 취약 시간 = 전파 시간(Propagation delay) -> 이는 Slotted ALOHA보다 훨씬 짧아 성능이 개선된다.
- Persistence 방식(전송 대기 전략)
- 1-persistent CSMA
- 채널이 Busy면 계속 감시하다가, 채널이 idle이 되는 즉시 전송한다.
- 여러 장치가 동시에 대기하고 있다면 동시에 전송하게 되어 충돌 위험이 크다.
- Non-persistent CSMA
- 채널이 busy면 기다리지 않고 랜덤 시간 후 다시 감지
- 채널 부하가 낮을 땐 충돌을 줄일 수 있다.
- 단, 대기 시간이 길어져 전송 지연이 늘어날 수 있다.
- p-persistent CSMA
- 슬롯 기반 환경(슬롯 단위로 감지/전송 시도)에서 사용
- 채널이 idle이면, 확률 p로 전송하고, 1-p 확률 대기 후 다시 시도
- 충동률과 지연을 절출할 수 있는 전략
- Persistence 방식의 플로우 차트
- 1-persistent : 채널이 idle이면 즉시 전송, busy면 계속 감시
- non-persistent : busy면 랜덤 시간 대기 후 다시 감지
- p-persistent : idle이면 확률적으로 전송(p), 그렇지 않으면 한 슬롯 대기
CSMA/CD(Collision Detection) - 충돌 감지 방식
CSMA/CD는 CSMA에 충돌 감지(Collision Detection) 기능을 추가한 방식으로, 유선 LAN(특히 이더넷)에서 널리 사용된다. 충돌이 발생하더라도 이를 감지하고 빠르게 대처할 수 있어 성능이 향상된다.
동작 절차
- 매체를 감지하고 비어 있으면 전송 시작
- 전송 중에도 충돌이 발생하는지 모니터링
- 충돌 발생 시 즉시 전송 중단
- Jamming Signal을 보내 충돌 알림
- 랜덤한 지연(BEB, Binary Exponential Backoff) 후 재전송 시도
첫 번째 비트의 충돌
- A는 t₁ 시점에 전송 시작, C는 t₂ 시점에 전송 시작.
- 두 신호는 네트워크 중간에서 충돌 발생.
- A는 C의 신호를 일정 시간이 지난 후 감지하고, t₄에서 충돌을 인식하고 전송 중단(abort).
- C도 마찬가지로 충돌 감지 후 전송 중단.
중요한 점은, 충돌이 발생하더라도 일정 시간 전송을 유지해야 감지가 가능하다는 것이다. 이 때문에 최소 프레임 길이가 존재한다.
충돌 감지와 전송 중단 과정
- A와 C가 각자 데이터를 전송하고 있다.
- 두 프레임이 네트워크 중간에서 충돌한다.
- A는 t₄, C는 충돌 후 특정 시점에서 충돌을 감지하고 전송을 중단함.
이처럼 충돌 감지는 즉시 일어나지 않고, 일정 전파 시간이 지난 후 감지되므로 프레임 길이가 너무 짧으면 감지 전에 전송이 끝나버려 문제가 발생한다.
CSMA/CD 플로우 차트 - 전체 동작 절차
- 프레임이 전송 대기 상태 -> K = 0으로 초기화
- Persistence 방식 중 하나로 채널 감지
- 채널이 idle이면 전송 시작
- 전송 중 충돌 감지 시 -> jamming signal(충돌 알림 전파)
- 충돌 횟수 K 증가, K > Kmax이면 전송 포기(abort)
- 재전송을 위한 backoff 시간 T_B = R × Tfr만큼 기다린 후 다시 시도
K는 시도 횟수, R은 랜덤 수, Tfr은 프레임 전송 시간
에너지 변화
위 그래프는 신호의 에너지 수준 변화를 보여주는 그림이다.
- 전송 중에는 지속적인 에너지가 측정된다.
- 충돌 시에는 짧은 고에너지 신호가 감지됨 -> 이를 통해 충돌 인식
- idle 상태는 에너지가 0으로 떨어짐
CSMA/CA (Collision Avoidance)
CSMA/CA는 무선 환경(Wireless LAN)을 위해 설계된 프로토콜이다. CSMA/CD처럼 충돌을 감지(detect)하는 것이 아니라, 아예 충돌 자체를 회피(avoid)하는 방식이다.
무선에서는 신호가 퍼져나가는 특성 때문에 충돌 감지 자체가 어렵다. 그래서 “충돌 회피” 전략을 선택한다.
충돌 회피 전략에는 다음 3가지가 있다. :
- IFS(Interface Space) : 채널이 비어있더라도 곧장 전송하지 않고 잠깐 기다린다.
- Contention Window(경재 윈도우) : 랜덤한 시간 슬롯 중 하나를 선택하여 대기 후 전송
- ACK(Acknowledgment) : 수신자가 수신 여부를 알려준다. 없으면 충돌로 간주하고 재전송한다.
CSMA/CA 프로토콜의 전체 절차
- 전송할 프레임이 생기면 K=0으로 초기화
- 채널을 감시(Carrier Sense)
- Channel이 busy면 -> Backoff Time T_B 기다림
- Channel이 idle이면 -> 짧은 대기 시간 IFS 대기
- 경쟁 윈도우(Contention Window)에서 랜던 슬롯 선택
- RTS(Request To Send) 메시지 전송
- CTS(Clear To Send) 메시지 수신 여부 확인
- 못 받으면 재시도
- CTS 수신 -> IFS 대기 후 데이터 전송
- 수신자가 ACK 보내면 전송 완료
- 못 받으면 K = K + 1 후 재시도
RTS/CTS는 충돌을 방지하기 위한 사전 협상 역할을 한다.
Contention Window 경쟁 윈도우
위 그림은 채널이 idle이 된 후, 어떻게 전송 타이밍이 결정되는지를 보여준다.
- 채널 감지 -> idle 확인
- 짧은 시간 IFS 대기
- 이후에는 경쟁 윈도우를 열고,
- 각 스테이션은 무작위 슬롯을 선택하여 대기 후 전송을 시도함
- 경쟁 윈도우 크기는 충돌 횟수 K에 따라 이진 지수 크기로 증가한다.
많은 충돌이 발생할수록 경쟁 윈도우 크기가 커진다.(Exponential Backoff 방식과 유사)
NAV(Network Allocation Vector)
위 그림은 CSMA/CA에서의 시간 예약 개념을 보여준다.
구성 요소 :
- Source A : RTS 전송
- Destination B : CTS로 응답
- Aloo other stations(C, D…) : CTS 메시지를 수신하고, NAV(Networkd Allocation Vector) 설정 -> 일정 시간 동안 채널 사용 금지. 이로 인해 C, D는 해당 시간 동안 전송하지 않는다.
CTS는 주변 모든 장치에게 “지금은 채널 사용 중이야!”라고 알려주는 역할을 한다.
Controlled Access - 제어된 접근 방식
Controlled Acceess란, 네트워크에 연결된 여러 스테이션이 협의를 통해 누가 언제 데이터를 전송할지를 정하는 방식을 말한다. 어떤 스테이션도 임의로 데이터를 전송할 수 없으며, 반드시 승인을 받아야만 채널을 사용할 수 있다.
이러한 방식은 충돌(Collision)을 줄이고, 네트워크 자원의 공정한 분배를 목표로 한다. Controlled Access에는 대표적으로 세 가지 방식이 있다.
- Reservation(예약 방식)
- Polling(폴링 방식)
- Token Passing(토큰 방식)
Reservation(예약 방식)
예약 방식은 말 그대로, 데이터를 전송하기 전에 채널 사용을 예약(Reservation)하는 방식을 말한다.
동작 방식 :
- 시간을 일정한 간격(interval)로 나눔
- 각 간격의 시작에는 예약 프레임(reservation frame)이 먼저 전송된다.
- 이 예약 프레임은 각 스테이션이 데이터 전송 의사를 표현할 수 있는 자리이다.
- 예약된 순서에 따라 데이터 프레임들이 전송된다.
이 방식을 사용하면, 충돌 없이 순차적으로 데이터가 전송된다.
Polling(폴링 방식)
Polling은 중앙에서 제어하는 장치(Primary)가 있는 네트워크에서 사용되는 방식이다. 보통 중앙 컴퓨터(Primary)가 여러 단말기(Secondary)를 관리하는 Multipoint Topology에 쓰인다.
동작 방식 :
- 하나의 Primary Station이 네트워크를 통제한다.
- Secondary Station들은 자율적으로 통신하지 못하고, Primary의 명령에 따라 움직인다.
- Primary는 누가 전송할지를 결정하고, 순차적으로 각 Secondary에게 질의(poll)를 한다.
- Secondary는 데이터가 있으면 응답하고, 없으면 무시한다.
이 방식은 충돌을 방지하고 중앙 집중 제어가 가능하지만, 중앙 장치에 문제가 생기면 전체 시스템에 영향을 준다.
- Polling과 Selection의 차이
Token Passing(토큰 방식)
Token Passing은 네트워크 상의 스테이션들이 논리적으로 고리(Ring) 형태로 연결되어 있는 구조에서 사용된다. 각 스테이션은 선행자(Predecessor)와 후속자(Successor)를 가지고 있으며, 토큰(token)이라는 작은 제어 패킷이 이 고리를 순환하면서 전송 권한을 전달한다.
동작 방식 :
- 네트워크 내에는 단 하나의 토큰만 존재한다.
- 이 토큰은 고리 구조를 따라 한 스테이션씩 순서대로 전달된다.
- 토큰을 받은 스테이션만 데이터 전송 권한을 가진다.
- 데이터를 보내거나 보낼 것이 없으면, 토큰을 다음 스테이션으로 넘긴다.
충돌이 원칙적으로 발생하지 않는다. (공정하고 예측 가능한 통신 구조를 가짐)
논리적 링과 물리적 구조
- 논리적 링(Logical Ring) : 실제 배선이 링구조가 아니더라도 토큰이 이동하는 논리적인 경로를 링으로 구성할 수 있다.
- 물리적 토폴로지는 버스형이나 스타형일 수도 있지만, 내부 논리는 고리처럼 작동한다.
각 스테이션은 토큰을 받은 후 전송하고, 다시 토큰을 넘기는 식으로 접근을 제어한다.
- Controlled Access 정리
Channelization - 채널 분할 방식
Channelization이란, 하나의 통신 매체를 여러 사용자(또는 스테이션)가 동시에 사용할 수 있도록 시간, 주파수, 코드 등의 기준으로 채널을 나누는 기술이다.
즉, 충돌이 발생하지 않도록 매체 접근을 사전에 계획하고 조정하는 방식이다. 주로 무선 통신, 위성 통신, 셀룰러 네트워크에서 많이 사용된다.
대표적인 세 가지 채널화 방식은 다음과 같다.
- FDMA(Frequency-Division Multiple Access)
- TDMA(Time-Division Multiple Access)
- CDMA(Code-Division Multiple Access)
FDMA(Frequency-Division Multiple Access) - 주파수 분할 다중 접속
FDMA는 사용 가능한 전체 대역폭을 여러 개의 주파수 밴드로 분할하고, 각 스테이션에게 하나의 밴드를 고정적으로 할당해 주는 방식이다.
특징
- 각 스테이션은 고유한 주파수 밴드를 가진다.
- 항상 할당된 주파수를 통해 통신이 가능하다.(연속적 사용)
- 각 채널은 Bandpass Filter를 사용해 주파수 간 간섭을 방지한다.
예시
- 아날로그 셀룰러 시스템(1G)
-
라디오 방송 채널 구분
-
아래 이미지는 주파수 대역이 여러 개로 나뉘고, 각 스테이션이 하나식 차지하는 모습을 보여준다.
TDMA(Time-Division Multiple Access) - 시간 분할 다중 접속
TDMA는 시간을 일정한 간격으로 나누고, 각 스테이션이 지정된 시간 슬롯에만 전송하는 방식이다.
특징
- 모든 스테이션이 같은 주파수를 사용하지만, 서로 다른 시간에만 전송한다.
- 전송 순서를 통해 충돌 방지
- 동기화된 클록이 필요하다.
예시
- 디지털 셀룰러 시스템(2G GSM)
-
항공 관제 통신
- 각 스테이션이 시간 축상에서 정해진 슬롯에만 데이터를 전송하는 모습이다.
CDMA(Code-Division Multiple Access) - 코드 분할 다중 접속
CDMA는 모든 스테이션이 동시에, 같은 주파수 대역에서 데이터를 전송할 수 있지만, 각 스테이션이 고유한 코드(Chip Sequence)를 이용하여 데이터를 구분하는 방식이다.
기본 원리
- 전체 대역폭은 하나의 논리적 채널로 동작
- 각 스테이션은 고유의 Chip Code를 통해 데이터를 인코딩
- 수신자는 원하는 스테이션의 Chip Code를 곱해서 원하는 신호만 복원한다.
장점
- 충돌 없음(완전 동시 전송 가능)
- 보안성 우수, 잡음에 강함
- 유연한 사용자 증가 가능
Code를 이용한 통신의 기본 아이디어
- 각 Station은 자신의 데이터 di에 고유한 코드 ci를 곱해 전송한다.
- 채널에는 모든 사용자의 코드화된 데이터가 합쳐진 형태로 존재한다. => d1⋅c1 + d2⋅c2 + d3⋅c3 + d4⋅c4
- 수신자는 이 합성 신호에 원하는 코드 ci를 곱하고 평균을 내어 di을 복원한다.
Chip Sequence로 데이터를 표현하는 방식
- 이들은 상호 직교(orthogonal)한 Walsh 코드이며, 서로 간섭하지 않도록 설계된다.
- CDMA에서는 다음과 같이 데이터 비트를 표현한다. 1 -> +1, 0 -> -1, 데이터없음 -> 0
여러 스테이션의 데이터가 겹쳐 있음에도 불구하고 각각의 코드로 구분 가능
- 각 station은 자신의 데이터를 해당 코드에 곱해 전송한다.
- 예: station1이 0을 보내면 -1⋅C1 = [ -1, -1, -1, -1 ]
- station3은 전송하지 않으므로 [0, 0, 0, 0]로 표현된다.
- 최종적으로 채널에는 모든 곱셈 결과가 더해져 하나의 신호로 전송된다. [ -1, -1, -3, +1 ]
- 실제로 전송된 모든 신호는 동시에 채널에 존재하며, 아래 노란 막대는 그 합성 결과를 시각화한 것이다.
원하는 스테이션의 데이터를 추출하는 디코딩 과정
- 수신자가 채널의 신호에 자신의 코드 C2 = [ +1, -1, +1, -1 ]을 곱한 후 평균을 내면 : **(-1) + (+1) + (-1) + (+1) = -4 => -4/4 = -1 => Bit = 0
-
즉, 원래 전송된 데이터 0을 정확히 복원할 수 있다.
- CDMA에서 사용하는 Walsh Table 생성 규칙