All About Computer
인류 최강의 도구 Computer를 자유자재로!
#19. 인터넷
Internet
지난 시간에 배운 네트워크(LAN) 개념을 확장하여, 전 세계의 컴퓨터를 연결하는 **인터넷(Internet)**이 어떻게 작동하는지 그 원리와 핵심 기술들을 설명합니다.
- 인터넷의 탄생 배경:
- LAN(근거리 통신망)은 정보와 장치 공유를 가능하게 했지만, 지역적으로 제한되었습니다.
- 더 멀리 있는 컴퓨터와 통신하고 더 많은 컴퓨터를 연결하려는 요구에서 네트워크와 네트워크를 연결하는 아이디어가 나왔습니다.
- 전 세계의 모든 네트워크(LAN)를 서로 연결하면 거대한 하나의 네트워크, 즉 **인터넷(Internet, Interconnected Network)**이 됩니다.
- 인터넷 연결 과정과 장비:
- 모뎀(Modem): 컴퓨터 내부의 디지털 신호를 장거리 전송에 적합한 아날로그 신호로 변환(변조, MOdulation)하고, 수신 시 다시 디지털로 변환(복조, DEModulation)하는 장치입니다. (ISP 제공)
- 라우터(Router): 서로 다른 네트워크(예: 우리 집 LAN과 ISP 네트워크)를 연결하고, 데이터가 올바른 경로로 가도록 길을 찾아 안내(라우팅, Routing)하는 핵심 장비입니다.
- 인터넷 공유기(Home Router): 가정에서 흔히 쓰는 장비로, 라우터, 스위치, 무선 AP 기능을 통합한 경우가 많습니다. 모뎀과 연결되어 집 안 기기들의 인터넷 접속을 가능하게 합니다.
- 인터넷 서비스 사업자(ISP): 개인이나 기업에게 인터넷 접속 서비스를 제공하는 회사(KT, SKT 등). 각 지역의 라우터들을 서로 그물망처럼 연결하고, 더 나아가 도시권 네트워크(MAN), 광역 네트워크(WAN)를 구성합니다.
- 백본(Backbone): 국가 단위의 ISP들이 자신들의 WAN을 연결하는 초고속 기간망입니다. 전 세계의 백본들이 서로 연결되어 인터넷을 이룹니다.
- 데이터 전송 방식:
- IP 주소 (IP Address):
- MAC 주소는 LAN 내부용이며 하드웨어에 고정되어 인터넷 환경에는 부적합합니다.
- 인터넷에 연결된 모든 장치에 부여되는 논리적 주소 체계입니다. 장치가 바뀌거나 위치가 바뀌면 IP 주소도 바뀔 수 있습니다.
- 현재 주로 사용되는 IPv4 주소는 0~255 사이 숫자 4개(각 8비트, 총 32비트)로 구성되며, 약 43억 개의 주소를 표현 가능합니다.
- IP 주소는 네트워크 ID(어떤 네트워크 소속인지)와 호스트 ID(해당 네트워크 내 어떤 장치인지)로 나뉩니다.
- 라우팅(Routing)과 호핑(Hopping):
- 라우터는 IP 주소의 네트워크 ID를 보고 데이터(패킷)를 목적지 네트워크 방향으로 전달합니다. 이 과정을 라우팅이라 합니다.
- 데이터는 목적지에 도달할 때까지 여러 라우터를 거쳐(깡총깡총 뛰듯이) 이동하는데, 이를 호핑(Hopping)이라고 합니다.
- 라우터는 라우팅 테이블(Routing Table) 정보를 이용하여 최적의 경로를 계산하고, 특정 경로에 문제가 생기면 다른 경로로 우회합니다.
- 패킷(Packet):
- 동영상 등 용량이 큰 데이터를 한 번에 보내면 네트워크 정체를 유발하므로, 데이터를 작은 단위로 잘라서 보냅니다. 이 조각 하나하나를 패킷이라고 합니다.
- 각 패킷에는 출발지/목적지 IP 주소, 순서 번호 등 IP 헤더(Header) 정보가 붙습니다.
- 패킷들은 서로 다른 경로로 전송될 수 있으며, 목적지에서 순서 번호를 보고 재조립됩니다.
- 프로토콜(Protocol):
- 데이터 전송 과정, 처리 규칙, 패킷 구조, 주소 체계 등 인터넷 통신을 위한 모든 약속과 규칙을 의미합니다. (우편물 작성 및 발송 규칙 비유)
- 인터넷의 핵심 프로토콜은 **IP(Internet Protocol)**입니다.
- TCP와 UDP:
- IP는 데이터 전송 경로를 찾는 역할만 하며, 데이터의 정확한 전달이나 순서를 보장하지 않습니다.
- 애플리케이션(앱)의 특성에 따라 IP 위에 추가적인 프로토콜을 사용합니다.
- TCP (Transmission Control Protocol): 데이터 수신 여부를 일일이 확인하고, 누락 시 재전송을 요청하여 정확하고 순서 있는 데이터 전송을 보장합니다. (신뢰성 높음, 속도 느림 / 예: 이메일, 웹 페이지)
- UDP (User Datagram Protocol): 확인 과정 없이 데이터를 빠르게 일방적으로 전송합니다. 중간에 데이터가 유실될 수 있습니다. (신뢰성 낮음, 속도 빠름 / 예: 실시간 게임, 동영상 스트리밍)
- 포트 번호 (Port Number):
- IP 주소가 컴퓨터까지 데이터를 전달한다면, 포트 번호는 해당 컴퓨터 내의 **특정 애플리케이션(앱)**까지 데이터를 전달하는 역할을 합니다.
- 운영체제는 네트워크를 사용하는 앱마다 고유한 포트 번호를 할당합니다.
- 패킷에는 출발지/목적지 포트 번호 정보도 포함됩니다 (TCP/UDP 헤더에).
- 캡슐화(Encapsulation): 데이터 전송 시, 각 프로토콜 계층(이더넷 -> IP -> TCP/UDP 등)은 자신의 역할에 필요한 정보(헤더)를 데이터 앞에 덧붙여 포장합니다.
- IP 주소 (IP Address):
- IP 주소 고갈 문제와 해결책:
- IPv4 주소 고갈: 약 43억 개의 IPv4 주소는 인터넷 사용자 및 기기 증가로 인해 거의 소진되었습니다.
- NAT (Network Address Translation):
- IP 주소 부족을 임시로 해결하기 위한 기술입니다.
- 공유기는 외부 인터넷과는 공인 IP 주소 하나를 사용하고, 내부 LAN의 기기들에는 사설 IP 주소(정해진 대역에서 자유롭게 사용, 외부 인터넷에서 직접 접근 불가)를 할당합니다.
- 공유기가 중간에서 공인 IP와 사설 IP 주소를 변환(기록 테이블 관리)해주어, 하나의 공인 IP로 여러 기기가 인터넷을 사용할 수 있게 합니다.
- IPv6 주소:
- 근본적인 해결책으로, 128비트를 사용하여 거의 무한대(약 340澗(간)개)의 주소를 제공합니다.
- 사물인터넷(IoT) 시대에 필수적인 기술이며, 점차 도입이 확대되고 있습니다.
인터넷은 전 세계의 LAN들이 라우터를 통해 서로 연결된 거대한 네트워크입니다. IP 주소 체계를 기반으로 데이터를 패킷 단위로 나누어 최적의 경로(라우팅)를 통해 전송하며, TCP/UDP 같은 상위 프로토콜과 포트 번호를 이용해 특정 애플리케이션까지 데이터를 전달합니다. IP 주소 고갈 문제를 해결하기 위해 NAT 기술과 IPv6가 사용되고 있습니다. 이러한 복잡한 기술들이 우리가 편리하게 인터넷 서비스를 이용할 수 있는 기반이 됩니다.
Chapters:
0:00 Intro
01:18 모뎀 (modem)
01:43 홈 라우터/공유기 (Home router)
02:00 Metropolitan Area Network (MAN), Wide Area Network (WAN)
02:29 백본 (backbone)
02:43 인터넷 (internet)
03:07 홉핑과 라우팅, 라우터 (hopping, routing, router)
03:30 라우팅 테이블 (Routing Table)
04:00 IP 주소 (IP Address), 네트워크 ID, 호스트 ID
05:19 패킷 (packet)
05:58 통신 프로토콜 (Communication Protocol)
06:54 인터넷 프로토콜(Internet Protocol, IP)
07:28 인터넷 통신 과정
07:56 게이트웨이 (Gateway)
10:28 포트번호 (port)
11:30 전송 제어 프로토콜 (Transmission Control Protocol, TCP), 사용자 데이터그램 프로토콜 (User Datagram Protocol, UDP)
13:21 사설 IP주소 (Private IP Address), 공인 IP주소 (Public IP Address)
14:26 네트워크 주소 변환 (Network Address Translation, NAT)
15:00 IPv6 주소 (IPv6 Address)
15:48 마무리