[ACSA 교육#12] Wi-Fi 프레임

우리가 이제는 당연히 사용하고 흔한 기술이 되어 버린, Wi-Fi(와이파이).

와이파이는 무선 통신에서 Layer 1과 Layer 2에서 사용되는 기술입니다. 유선 기술인 Ethernet(이더넷)과 가장 큰 차이는 와이파이는 데이터 프레임 말고 추가로 2개의 프레임이 더 있다는 것입니다. 

왜나하면, 스마트폰과 같은 엔드포인트 단말과 무선 액세스포인트(AP)사이에 페이로드(Payload) 전송과 직접적인 관련이 없는 특별한 통신이 있기 때문입니다. 이 프레임들은 무선 네트워크 자체를 관리하고 제어하기 위해 사용됩니다.

그럼, 다음 그림에 있는 각 필드에 대해서 한 번 알아보겠습니다.

Wi-Fi Header 
Frame 
Control 
2 Bytes 
Duration 
2 Byte 
Address 
6 Bytes 
Address 
6 Bytes 
Address 
6 Bytes 
Sequence 
Control 
2 Bytes 
Addres 
6 Bytes 
Payload 
46 — 
1500 
Bytes 
VVi-Fi Trailer 
FCS 
4 Bytes
Wi-Fi Frame
  • Frame Control: 프레임의 유형(제어나 관리, 데이터)이 조각화(Fragmentation)와 개인정보를 포함하고 있음을 나타냅니다.
  • Duration ID (=Connection ID): 컨트롤 프레임을 성공적으로 전송하기 위해 할당되는 채널의 시간(마이크로 초)을 나타냅니다.
  • Addresses: 통신하는 장치의 MAC주소입니다. 주소의 수는 프레임의 유형과 컨텍스트에 따라 달라지게 됩니다. 일반적으로 앞에 3개의 주소만 사용합니다.
  • Sequence Control: 조각화(Fragmentation)과 재조립에 대한 정보를 담고 있는 필드입니다.
  • Payload: 전송할 데이터를 담고 있습니다.
  • FCS(Frame Check Sequence): CRC 또는 Checksum 방식을 사용하여 데이터가 손상되지 않았는지 확인합니다.

Wi-Fi 헤더 Address 필드의 이해

위에서 언급했던 Address 필드에 대해서 좀 더 자세히 얘기해보겠습니다.

Wi-Fi BSSID: 
Access Point 
Frame 1 
o 
Station A 
WI-Fi MAC: 
Frame 
Frame 
Address 1 (receiver) 
BSSID (AP) 
MAC of Station B 
Address 2 (transmitter) 
MAC of Station A 
BSSID (AP) 
Frame 2 
o 
Station B 
Wi-Fi MAC: 
Address 3 
MAC of Station B 
MAC of Station A 
Address 4 
Not Used 
Not Used

그림에서 보시는 것처럼 무선 단말 A(Station A)는 무선 단말 B(Station B)와 통신하고자 합니다. 각 스테이션은 각자 무선 NIC(흔히 일컫는 랜카드)에 할당된 MAC주소가 있을 것입니다. 여기서 AP(Access Point)는 중앙 장치 역할을 하게 됩니다. 각 스테이션은 직접 통신하는 것이 아니라 무선 AP를 통해서만 통신하게 됩니다.

즉, ① Station A에서 무선AP로, ② 무선AP에서 Station B로 각각 두 개의 프레임이 생성됩니다.

표를 보시면 이해가 더 쉬울 겁니다.

첫번째 프레임(Frame 1)에서 Station A는 무선 통신에서 송신자(Transmitter)이기 때문에 Address 2 필드에 MAC주소가 저장되고, 무선 AP는 수신자(Receiver)로서 Address 1 필드에 BSSID 주소가 저장됩니다. 그리고 Station B는 최종 목적지이기 때문에 Address 3에 MAC주소가 저장됩니다. 일반적인 통신이기 때문에 Address 4는 사용되지 않습니다. Address 4는 “Repeater”와 같은 특수한 환경에서 사용되게 됩니다.

무선 AP는 이 프레임을 수신하고 새로운 프레임을 생성하여 Station B로 전송합니다.

이 경우 AP는 송신자(Transmitter)이기 때문에 Address 2에 BSSID 주소를 저장하고, Station B는 수신자(Receiver)이기 때문에 Address 1에 MAC주소를 저장합니다. 그리고 여기서 Station A는 원래 발신자이기 때문에 Address 3에 MAC주소를 저장합니다.

여기서 BSSID(Basic Service Set Identifier)는 와이파이 네트워크에서 특정 무선대역 또는 WLAN에 할당되는 MAC주소를 의미합니다. 즉, 같은 SSID(무선 Wi-Fi 이름)를 갖고 있더라도 무선 단말이 AP를 구분하기 위한 주소라고 생각하시면 됩니다. Layer 2 통신을 하기 위해서 MAC주소가 필요하기 때문에 무선 통신의 중계 역할을 하는 AP의 MAC주소가 BSSID입니다.

이렇게 무선 Wi-Fi에 대해서 간단하게 알아보았습니다.

좀 더 자세한 내용은 향후 무선 네트워크 강좌에서 설명 드리도록 하겠습니다.