[컴퓨터네트워크] 03. 네트워크 통신
데이터가 실제로 오갈 때는 여러 규칙이 작동한다. 누구에게 보낼지(전송 대상), 어느 방향으로 보낼지, 오류는 어떻게 잡을지, 여러 기기가 한 매체를 어떻게 나눠 쓸지 등이다. 오늘은 네트워크 통신의 이런 기본 메커니즘을 정리했다.
1. 통신 방식
전송 대상에 따라
| 방식 | 설명 |
|---|---|
| 유니캐스트 | 특정 1대에만 전송 (1:1). 가장 흔함 |
| 브로드캐스트 | 같은 LAN의 모든 기기에 전송 (1:전체) |
| 멀티캐스트 | 특정 그룹에만 전송 (1:그룹) |
전송 방향에 따라
| 방식 | 설명 | 예 |
|---|---|---|
| 단방향(Simplex) | 한 방향으로만 | 라디오, 키보드 |
| 반이중(Half-Duplex) | 양방향이되 교대로 | 무전기, 허브 |
| 전이중(Full-Duplex) | 동시 송수신 | 전화, 스위치 |
반이중과 전이중의 차이가 허브와 스위치의 차이로 이어졌다. 허브는 교대로만 통신해 충돌이 생기고, 스위치는 양방향 동시 통신이 가능해 충돌이 없다. 앞 글의 허브/스위치 차이가 여기서 통신 방향으로 설명되니 두 단원이 맞물렸다.
2. 통신 오류 검출
전송 중 비트가 뒤집히는 오류를 잡는 방법들이다.
| 방식 | 설명 |
|---|---|
| 패리티 비트 | 1의 개수를 짝수/홀수로 맞춤. 짝수 개 오류는 못 잡음 |
| 블록 합 검사(BCC) | 수평·수직 2차원 패리티. 짝수 개 오류도 검출 |
| 순환 중복 검사(CRC) | 다항식으로 나눈 나머지를 붙임. 집단 오류 검출에 탁월 |
송신 측이 데이터를 정해진 생성 다항식으로 나눠 그 나머지(FCS)를 데이터 뒤에 붙여 보낸다. 수신 측이 같은 다항식으로 나눠 나머지가 0이면 정상, 0이 아니면 오류로 판단한다. 연속된 비트가 한꺼번에 손상되는 집단 오류를 잘 잡아내, 실제 네트워크에서 널리 쓰인다.
컴퓨터구조에서 본 패리티·해밍 코드가 네트워크 통신에도 그대로 나와서, 오류 검출이 분야를 넘나드는 공통 주제라는 게 보였다.
3. 매체 접근 방식 (LAN)
여러 기기가 하나의 통신 매체를 공유하면, "누가 언제 보낼지"를 정하는 규칙이 필요하다. 안 그러면 동시에 보내 충돌한다.
| 방식 | 설명 |
|---|---|
| CSMA/CD | 매체가 비었는지 확인 후 전송, 충돌을 검출. 유선 이더넷 |
| CSMA/CA | 충돌을 회피(전송 전 대기, 응답 확인). 무선 LAN(Wi-Fi) |
| 토큰 제어 | 토큰을 가진 노드만 전송. 충돌 자체가 없음 |
유선(CSMA/CD)은 "말하기 전에 듣고, 충돌이 나면 감지해 멈춘다"는 방식이다. 그런데 무선에서는 자기가 보내는 신호가 너무 커서 다른 신호와의 충돌을 감지하기 어렵다. 그래서 무선은 아예 충돌을 피하려고(CA) 전송 전에 대기하고 수신 확인(ACK)을 받는 방식을 쓴다. 매체의 물리적 특성이 규칙을 바꾼 것이다.
유선은 CD, 무선은 CA라는 게 단순 암기 같았는데, "무선은 자기 신호가 커서 충돌을 못 듣는다"는 물리적 이유를 알고 나니 외울 필요가 없어졌다. 이더넷(Ethernet)이 바로 CSMA/CD를 쓰는 대표적인 유선 LAN 구조다.
4. WAN의 교환 방식
먼 거리를 잇는 WAN에서는 데이터를 "어떻게 길에 실어 보내느냐"가 갈린다.
| 방식 | 설명 |
|---|---|
| 회선 교환 | 전용 경로를 잡아두고 전송(전화). 실시간엔 좋으나 안 쓸 때도 회선 독점 |
| 패킷 교환 | 패킷으로 쪼개 전송. 회선을 공유해 효율적 |
- 데이터그램: 연결 설정 없이 패킷마다 독립적으로 전송. 경로가 달라 순서가 뒤바뀔 수 있다(비연결 지향).
- 가상 회선(VC): 논리적 연결을 먼저 설정한 뒤 그 길로 전송. 순서가 보장된다(연결 지향).
인터넷이 패킷 교환을 쓰는 이유는 효율 때문이다. 전화처럼 회선을 독점하지 않고, 수많은 통신이 같은 길을 나눠 쓰며 빈 시간 없이 채운다.
5. 무선 네트워크 (Wi-Fi)
무선 LAN은 AP(Access Point, 액세스 포인트)를 통해 유선 네트워크와 연결되며, 2.4GHz와 5GHz 주파수를 쓴다. 표준은 IEEE 802.11 계열이다.
| 표준 | 주파수 / 최대 속도 |
|---|---|
| 802.11b | 2.4GHz / 11Mbps |
| 802.11g | 2.4GHz / 54Mbps |
| 802.11n | 2.4/5GHz / 300Mbps |
| 802.11ac | 5GHz |
저주파(2.4GHz)는 파장이 길어 멀리·벽 너머까지 닿지만 간섭이 많다. 고주파(5GHz)는 범위가 좁은 대신 빠르고 간섭이 적다. 공유기에 두 주파수가 함께 있는 건 "멀리 가는 것"과 "빠른 것"을 둘 다 제공하기 위해서다.
무선 네트워크를 구분하는 이름이 SSID(우리가 와이파이 목록에서 보는 그 이름)이고, 보안은 옛 WEP에서 더 안전한 WPA2로 발전했다.
오늘 느낀 점
- 허브/스위치 차이가 반이중/전이중이라는 통신 방향으로 설명되면서, 앞 단원의 장치 구분과 이번 통신 방식이 한 줄로 이어졌다.
- 유선 CD·무선 CA의 차이를 "무선은 자기 신호가 커서 충돌을 못 듣는다"는 물리적 이유로 이해하니, 암기 대신 원리로 남았다.
- 인터넷이 패킷 교환을 쓰는 이유가 "회선 공유로 효율"이라는 데서, 전화망과 인터넷의 근본적 설계 차이가 잡혔다.
한 걸음 더
- "오류 검출"과 "오류 정정"은 다른 차원이다. 패리티·CRC는 "틀렸다"만 알려주고, 틀린 데이터는 재전송으로 다시 받는다. 반면 앞서 본 해밍 코드처럼 "어디가 틀렸는지 찾아 고치는" 정정 코드도 있다. 재전송이 쉬운 네트워크에선 검출만, 재전송이 어려운 환경(우주 통신, 저장 매체)에선 정정까지 쓴다.
- 데이터그램 방식이 "순서도 도착도 보장 안 한다"는 건 단점 같지만, 바로 그 단순함이 인터넷의 확장성을 만들었다. 중간 라우터들이 복잡한 연결 상태를 관리할 필요 없이 패킷을 받는 대로 최선을 다해 넘기기만 하면 되기 때문이다. 순서·신뢰성은 양 끝의 TCP가 책임진다(다음에 배울 전송 계층).
- 와이파이가 "충돌 회피(CA)"를 쓴다는 사실은, 사람 많은 카페에서 와이파이가 느려지는 이유를 설명한다. 기기가 많을수록 다들 "전송 전 대기"를 하느라 실제 보낼 시간이 줄어든다. 무선이 유선보다 혼잡에 약한 근본 이유가 이 매체 접근 방식에 있다.