https://lms.kmooc.kr/course/view.php?id=5858
K-MOOC
www.kmooc.kr
[K-MOOC] 네트워크 기초/안성진 강의 정리
모든 이미지는 강의에서 캡처
01. 이동전화와 위성네트워크
01.1 이동전화
이동전화의 서비스 영역은 Cell(셀)이라고 불리는 작은 단위로 나뉜다. 각 셀은 하나의 기지국(Base Station)에 의해 제어되며, 이동전화와 기지국은 해당 셀 안에서 무선으로 전파를 주고받는다. 우리가 스마트폰을 사용할 때, 해당 지역을 담당하는 기지국과 통신하게 된다. 즉 기지국을 중심으로 형성되는 가상의 서비스 영역이 곧 셀이다.
이동전화가 이동할 때 단말기는 주기적으로 기지국과 신호를 교환하면서 "어디에 위치하고 있는지"를 알리고, 전화를 걸거나 받을 때 기지국을 통해 연결 절차가 진행된다. 유선전화망이나 다른 무선망과 연결되는 과정도 모두 기지국을 통해 이루어진다.
이러한 기지국들을 더 큰 단위에서 제어하는 장치가 바로 MSC(Mobile Switching Center)이다. MSC는 여러 개의 기지국을 관리하면서 전화 연결, 통화 경로 설정, 가입자 인증, 요금 처리 등 제어 기능을 담당한다.
🤔 그렇다면 서울에서 부산으로 전화했을 때 부산까지 신호가 무선으로 갈까? (오..)
🚫 휴대전화로 전화를 건다고 해서 그 신호가 처음부터 끝까지 무선으로 전달되는 것이 아니다.
실제로 신호가 무선으로 전송되는 구간은 단말기에서 가까운 기지국까지이며, 이후 대부분 구간은 유선망을 통해 전달된다. 서울에서 부산으로 전화를 건다면 스마트폰에서 발생한 음성 신호는 무선으로 인근 기지국에 도달한 뒤, 기지국에서 MSC를 거쳐 유선망을 통해 부산까지 전달된다. 그리고 부산 지역의 기지국에서 다시 무선으로 전환되어 상대방 휴대전화로 전송된다.
이 과정에서 MSC가 여러 기지국을 통합 관리하면서 가입자의 위치를 추적하고, 사용한 통화 시간과 데이터량을 계산하여 과금 정보를 관리한다.
01.1.1 Handoff
휴대전화는 고정된 장소가 아니라 보통 이동하면서 사용한다. 이 때문에 사용자가 이동하다 보면 특정 기지국의 통신 범위(셀)를 벗어나게 되고, 자연스럽게 다른 기지국 범위(셀)로 들어가게 된다. 이때 끊김 없이 통화를 이어가기 위해 휴대전화는 새로운 기지국과 연결을 맺어야 하는데 바로 이 과정을 Handoff(핸드오프)라고 부른다.
사용자가 이동할 수록 기존 셀에서 신호 세기가 점점 약해지고 새로 진입하는 셀에서는 신호가 점점 강해진다. MSC는 이 신호를 감지하여 통신 품질을 유지하는 데 적절한 새로운 기지국(셀)을 탐색하고 연결 절차를 수행한다.
과거에는 이전 기지국과의 연결을 먼저 끊은 뒤 새로운 기지국에 접속을 시도했기 때문에, 만약 새 기지국에서 사용할 수 있는 채널이 부족하면 통화가 그대로 끊겨 버리는 문제가 있었다. 이를 Hard Handoff라고 한다.
반면 최근에는 훨씬 더 안정적인 Soft Handoff 방식을 사용하여, 이전 기지국과의 연결을 끊지 않은 상태에서 새로운 기지국과도 동시에 연결을 맺는다. 단말기가 잠시 동안 두 개 이상의 기지국과 동시 접속을 유지하다가 새로운 기지국과의 연결이 안정되면 이전 기지국과의 연결을 종료한다. 덕분에 통화 중 끊김이 거의 없이 부드럽게 셀이 전환된다.
01.1.2 세대별 이동통신 발전 과정
1G(First Generation)
1세대 이동통신은 사람들이 “이제는 이동하면서도 전화를 하고 싶다”는 요구에서 출발했다. 이 시기에는 아날로그 신호를 사용하여 음성을 전달했다. 그렇기 때문에 송신 주파수와 수신 주파수를 따로 정해놓고 이를 각각 포워드 채널(기지국→단말기), 리버스 채널(단말기→기지국)이라고 불렀다.
대표적인 기술은 AMPS(Advanced Mobile Phone System)였으며, FDMA를 사용해 단말기마다 주파수를 나누어 할당했다. 각 통화는 아날로그 채널 두 개(순방향, 역방향)를 사용해 이루어졌다.
2G(Second Generation)
2세대에서는 아날로그 신호 대신 디지털 음성 신호가 도입되었다. 디지털 신호를 사용하면서 많은 장점이 발생했다. 아날로그 신호의 경우 잡음이 들어오면 잡음까지 증폭되어 신호가 왜곡되었지만, 디지털 신호는 0과 1만 구분하면 되기 때문에 원래 신호를 쉽게 복원할 수 있었다. 이로써 통화 품질이 향상되었고, 동시에 채널 용량이 증가하여 한 기지국에서 더 많은 단말기를 수용할 수 있게 되었다.
또한 음성통화뿐 아니라 새로운 서비스도 가능해졌다. GSM(Global System for Mobile Communication)은 유럽의 표준이 되었고, 우리나라를 포함한 여러 국가는 CDMA(Code Division Multiple Access)를 채택했다. CDMA 기반의 2세대는 GPS(Global Positioning System), SMS(Short Message Service) 같은 부가 서비스와 조금이나마 인터넷 접속도 가능하게 했다.
3G(Third Generation)
2세대까지는 주로 음성을 디지털화하는 데 초점이 있었다면, 3세대는 음성과 데이터를 통합적으로 처리하는 것을 목표로 했다. 이때부터는 음성 품질이 기존 유선 전화망 수준에 근접했고, 데이터 전송 속도도 최대 2Mbps까지 빨라졌다.
덕분에 인터넷 접속이 한층 원활해졌고, 휴대전화에서 다양한 브라우저를 사용할 수 있는 기반이 마련되었다. 기술적으로는 CDMA를 확장한 WCDMA(Wideband CDMA)와, 북미에서 발전한 CDMA2000이라는 두 가지 표준으로 나뉘었다.
4G(Fourth Generation)
인터넷 중심 사회로 접어들면서 4세대에서는 아예 모든 것을 올(All) IP 방식으로 통합하는 변화를 맞아 음성과 데이터 모두가 IP 기반으로 처리되었다. 대표적으로 LTE(WCDMA 계열)와 와이브로(CDMA2000 계열)가 4세대 기술로 자리잡았다.
이 시기에는 데이터 전송 속도가 최대 100Mbps까지 향상되어, 음성통화나 문자뿐만 아니라 고화질 멀티미디어 통신, 영상 통화, 모바일 인터넷이 원활해졌다. 사실상 우리가 지금 일상적으로 사용하는 대부분의 스마트폰 통신 환경이 바로 이 4세대 기반이다.
01.2 위성 네트워크
위성 네트워크는 인공위성을 이용한 통신 형태로, 지구 주위를 도는 다양한 궤도 위에 위성을 띄워 통신을 가능하게 한다. 하지만 지구 주변에는 Van Allen 벨트라고 불리는 2개의 하전입자 층이 존재한다. 이 영역에 인공위성이 위치할 경우 하전입자에 의해 인공위성이 파괴될 위험이 있기 때문에, 인공위성은 벨트를 피해 띄워야 한다. 그 결과 위성의 궤도는 LEO(Low-Earth Orbit), MEO(Medium-Earth Orbit), GEO(Geosynchronous Earth Orbit) 세 가지 영역으로 구분된다.
GEO Satellites
정지궤도 위성은 지구 자전 속도와 동일하게 움직이기 때문에 지표에서 보면 하늘에 고정된 것처럼 보인다. 북극에서 지구를 내려본다고 가정했을 때 세 개의 위성이 서로 120도 간격으로 배치되어 지구 전체를 관찰하고 있는 것으로 보인다.
MEO Satellites
중궤도 위성은 두 개의 Van Allen 벨트 사이에 위치하며, 약 6~8시간마다 지구를 한 바퀴 돈다. 대표적으로 GPS가 MEO 궤도 위성을 활용한다. GPS는 6개 궤도면에 총 24개의 위성을 띄워 운영되고 있으며, 정확한 위치를 계산하기 위해 4개의 위성으로부터 정보를 받는다. 평면에서라면 세 점만으로도 위치 추적이 가능하지만 공간에서는 고도를 고려해야 하기 때문에 네 점이 필요하다. 이를 통해 “어느 지점에 있는가” 이상으로 “어느 층, 어느 높이에 있는가”까지 알 수 있다.
LEO Satellites
저궤도 위성은 지구와 가장 가까운 궤도에 위치하기 때문에 전파 지연이 거의 없다. 왕복 전파 지연 시간이 약 20ms 이내로 짧기 때문에 주로 음성 통신에 주로 사용된다. 대표적으로 Iridium(이리듐) 위성이 있으며, 약 90~120분 만에 지구를 한 바퀴 도는 특징을 가진다. 이 시스템은 6개의 궤도에 궤도당 11개의 위성을 배치하여 총 66개의 위성으로 구성되어 있다.
02. 인터넷 프로토콜: IP
02.1 네트워크 프로토콜
네트워크에서 데이터를 주고받기 위해서는 일정한 규칙이 필요한데 이를 프로토콜이라고 부른다. 프로토콜은 크게 연결지향(Connection-oriented) 방식과 비연결형(Connectionless) 방식으로 나눌 수 있다.
연결지향 프로토콜은 데이터를 전송하기 전에 반드시 상대방과의 연결을 먼저 설정해야 한다. 대표적인 예가 TCP(Transmission Control Protocol)인데, TCP는 ‘3-way handshake’라는 과정을 통해 양쪽이 서로 통신 준비가 되었음을 확인한 뒤 데이터를 전송한다. 이렇게 연결을 설정하면 데이터가 순서대로 도착하며, 손실된 데이터는 재전송되어 신뢰 있는 통신이 가능하다. 따라서 파일 전송 같이 정확성이 중요한 서비스에서 TCP가 주로 사용된다.
반면 비연결형 프로토콜은 연결을 위한 절차 없이 데이터가 생기면 즉시 전송한다. 대표적인 예는 UDP(User Datagram Protocol)로, 데이터를 보낸 뒤 수신자가 제대로 받았는지 확인하지 않는다. 신뢰성은 떨어지지만 연결 설정 과정이 없으므로 속도가 빠르다. 따라서 실시간 스트리밍, 화상 통화같이 지연 시간이 중요한 서비스에서 활용된다.
인터넷에서 핵심적인 역할을 하는 대표적인 프로토콜인 IP(Internet Protocol) 자체는 비연결형 프로토콜이다. IP는 단순히 데이터를 목적지까지 전달하는 역할만 할 뿐 도착 여부나 순서를 보장하지 않는다. 그래서 실제 서비스에서는 IP 위에 TCP나 UDP 같은 상위 프로토콜을 얹어 신뢰성과 속도의 균형을 맞추어 사용하게 된다.
02.2 IP 패킷의 형태
인터넷 프로토콜 중 아주 중요한 프로토콜 중 하나인 IP는 네트워크 계층에서 동작하는 프로토콜로 데이터를 패킷 단위로 전달한다. 특히 IP 패킷은 데이터그램이라고 불리며 다음과 같은 특징을 갖는다.
비신뢰성(unreliable) | IP는 데이터가 제대로 도착하는지 보장하지 않는다. |
비연결형(connectionless) | 데이터를 보내기 전에 연결을 설정하지 않는다. |
Best-effort 서비스 | IP는 "최대한 목적지까지 보내보겠다"는 수준의 서비스만 제공한다. 네트워크가 혼잡하면 패킷은 지연되거나 버려질 수 있다. |
에러 제어/흐름 제어 없음 | IP는 데이터의 무결성을 보장하기 위한 에러 제어나 흐름 제어를 하지 않는다. 단 헤더 부분에 대한 오류 검출만 수행하고 문제가 있으면 해당 패킷을 폐기한다. |
이러한 특성 때문에 신뢰성이 중요한 전송에서는 반드시 상위 계층의 TCP와 함께 사용한다. TCP가 손실된 패킷을 재전송하고 순서를 맞춰주고 흐름을 제어하기 때문에 전체적으로 신뢰성 있는 통신이 가능하다. 반대로 실시간성을 우선하는 경우는 UDP와 함께 쓰인다.
02.2.1 Header
IP 헤더는 IP 패킷(데이터그램)의 제어 정보를 담고 있으며, 패킷을 목적지까지 정확히 전달하기 위해 필요한 여러 필드로 구성된다.
필드 | 설명 |
버전 (Version: VER) |
|
헤더의 크기 (Header Length: HLEN) |
|
서비스 (Type of Sevice) |
|
전체 길이 (Total Length) |
|
생존 시간 (Time To Live: TTL) |
|
프로토콜 (Protocol) |
|
헤더 체크섬 (Header Checksum) |
|
송신자 IP 주소 / 수신자 IP 주소 |
02.3 단편화와 옵션
IP 패킷은 네트워크 계층에서 아주 중요한 역할을 한다. 그런데 이 패킷이 실제로 링크 계층을 거쳐 전송되려면 문제가 하나 생긴다. 각 네트워크 기술마다 전달할 수 있는 메시지의 최대 크기가 다르다는 점이다. 예를 들어 이더넷(Ethernet)은 한 번에 보낼 수 있는 데이터의 크기가 1500바이트로 제한되는데, 이 값을 MTU(Maximum Transfer Unit)라고 부른다.
만약 IP 패킷이 이보다 클 경우 그대로 전송할 수 없기 때문에 패킷을 잘라서 보내야 하는데, 이 과정을 단편화(Fragmentation)라고 한다.
이때 단편화된 패킷은 목적지에 도착했을 때 다시 조립되어야 하는데, 이를 위해 IP 헤더에는 몇 가지 중요한 정보가 들어간다.
먼저 플래그(Flags) 값이 있다. 이 값은 3비트로 구성되는데, 첫 번째 비트는 사용되지 않는다. 두 번째 비트는 “단편화 금지(Do not fragment)”를 나타내며, 만약 이 값이 1이면 네트워크 장비는 패킷을 자를 수 없기 때문에 MTU보다 큰 패킷이 들어오면 폐기한다. 세 번째 비트는 “더 많은 단편이 있음(More fragments)”을 나타내며, 값이 1이면 뒤에 이어지는 단편이 있다는 뜻이므로 마지막 단편만 0으로 설정된다. 수신 측은 이 플래그를 보고 언제까지 조각을 기다려야 하는지 판단할 수 있다.
하지만 단편화된 패킷은 비연결형 방식으로 전송되기 때문에, 패킷은 여러 경로를 통해 전송되므로 순서가 뒤섞여 도착할 수 있다. 이때 올바른 순서로 패킷을 조립하기 위해 IP는 단편화 위치 값(Fragment Offset)을 사용한다. 이 값은 13비트로 구성되며, 각 단편이 원래 데이터에서 몇 번째 위치인지 알려준다.
단 바이트 단위가 아니라 8바이트 단위로 기록된다. 예를 들어 1500바이트짜리 패킷을 500바이트씩 나눴다면 실제 데이터 범위는 0–499, 500–999, 1000–1499가 되지만, Offset 값은 각각 0, 62, 125로 표시된다.
이 외에도 IP 헤더에는 옵션(Options) 필드가 존재한다. 옵션은 최대 40바이트까지 사용할 수 있으며 실제로는 몇 가지 기능만 주로 쓰인다. 대표적으로 Record Route는 패킷이 거쳐간 장치들의 IP 주소를 기록하는 기능이고, Strict Source Route는 반드시 특정 라우터들을 차례로 거쳐가도록 지정하는 기능이다. 반대로 Loose Source Route는 특정 장치를 반드시 거쳐가긴 하지만, 그 외 다른 경로는 자유롭게 선택할 수 있게 한다. 마지막으로 Timestamp 옵션은 패킷이 각 장치를 지날 때의 시간을 기록하는 기능이다.
'CS > 네트워크' 카테고리의 다른 글
[k-mooc/네트워크] 04. 무선 LAN과 네트워크 연결장치 (1) | 2025.09.05 |
---|---|
[k-mooc/네트워크] 03. LAN 매체와 유선 LAN 🌟 (0) | 2025.09.04 |
[k-mooc/네트워크] 02. 스위칭과 다중 접속 프로토콜 (2) | 2025.08.29 |
[k-mooc/네트워크] 01. 네트워크 개념 (3) | 2025.08.27 |