[목차여기]
오블완 챌린지에서 받은 이모티콘 :>
네트워크를 공부하면서 인터넷과 IP라는 개념이 등장한다.
인터넷이란?이라고 떠올렸을 때 말문이 턱 막히는 느낌이 들었다. 왜냐하면 인터넷을 한 마디로 정의하기에는 너무 많은 기기, 정보, 기술들이 포함되어 있다고 생각했기 때문이다. 그래서 어디서부터 설명해야 될지 감이 오지 않았다.
이 글에서는 인터넷이 무엇인지 설명하고, 함께 등장하는 IP 개념에 대해서 설명하겠다.
1️⃣ 인터넷 (internet)
인터넷이란, 공동 프로토콜을 사용하고 공동 서비스를 제공하는 이기종 네트워크들의 거대한 집합이다.
또는, 전 세계의 수많은 컴퓨팅 장치를 연결하는 컴퓨터 네트워크다.
* 컴퓨팅 장치란, 과거에는 PC, 리눅스 워크스테이션, 웹 페이지, 전자메일 메시지 같은 정보를 저장하고 전송하는 서버를 가리켰다면, 최근에는 TV, 게임 콘솔, 가전제품, 시계, 자동차 같은 비전통적인 인터넷 ‘사물들’이 인터넷에 연결되고 있다.
인터넷을 영어로 표현할 때는 Internet/internet 두 가지 표기법이 있다.
두 가지 단어의 의미에는 약간의 차이가 존재한다.
internet | 보통명사 |
Internet | 고유명사 : TCP/IP를 사용하는 internet |
✅ 인터넷의 구성 요소
기본적으로, 인터넷을 구성하는 모든 장치는 인터넷 용어로 호스트(host) 또는 종단 시스템(end system)이라고 부른다.
host | - 네트워크의 다른 장치와 통신하는 모든 컴퓨터 또는 장치를 말한다. 클라이언트와 서버 역할을 모두 할 수 있다. - 일반적으로 IP를 사용하여 데이터 통신이 가능한 장치를 말한다. - 각 호스트에는 네트워크에서 data를 보내고 받을 수 있는 고유 식별자(IP 주소)가 있다. |
end system | - 네트워크의 끝에서 사용자 애플리케이션을 실행하거나 데이터를 생성, 처리, 저장하는 역할을 한다. - 호스트의 하위 개념이다. ex. 클라이언트, 서버, IoT장치, 중간 시스템(CDN, Proxy server, ..) |
그 밖의 인터넷 구성요소에는 라우터(router), ISP(Internet Service Provider), 패킷(packet) 등이 있다.
router | - 스위칭 컴퓨터를 지칭하며, data가 목적지에 도달하기 위해 여러 경로 중 어떤 경로를 택할지 결정한다. - 서로 다른 네트워크 간 또는 대규모 네트워크 내에서 트래픽을 전달한다. |
ISP | - 개인이나 기업체에게 인터넷 접속 서비스, 웹사이트 구축 및 웹호스팅 서비스 등을 제공하는 회사를 말한다. ex. KT, LG U+ |
packet | - 데이터를 전송하기 위해서 데이터를 패킷으로 만든다. |
✅ 인터넷의 데이터 전송 흐름
종단 시스템은 통신 링크(Communication link)와 패킷 스위치(Packet Swtich)를 통해 네트워크로 연결되는데 각각의 링크들은 다양한 전송률(bps)을 이용하여 데이터를 전송한다.
종단 시스템은 ISP를 통해 인터넷에 접속한다. ISP는 종단 시스템과 인터넷 사이에서 다리 역할을 하며, 인터넷 연결의 품질과 안정성을 좌우한다.
데이터를 보내기 위해서 송신 종단 시스템은 그 데이터를 세그먼트(segment)로 나누고 각 세그먼트에 헤더(header)를 붙인다. 이렇게 만들어진 정보 패키지를 패킷(packet)이라고 한다.
종단 시스템 간 데이터를 송수신하기 위해 소켓 인터페이스(socket interface)를 사용한다. 소켓 인터페이스는 한 종단 시스템의 프로그램이 다른 종단 시스템의 프로그램과 데이터를 교환할 수 있도록 설계된 API이다.
패킷 스위치는 입력 통신 링크의 하나로 도착하는 패킷을 받아서 출력 통신 링크 중 하나로 그 패킷을 전달한다.
* 패킷 스위치 종류 중 인터넷에서 가장 많이 사용되는 것이 라우터(router)와 링크 계층 스위치(link-layer-switch)다.
패킷은 네트워크를 통해 보내지고 목적지에서 원래의 데이터로 다시 조립된다. 패킷이 전달되는 동안 거친 일련의 통신 링크와 패킷 스위치를 라우트(route 또는 path)라고 한다.
모든 인터넷 구성요소는 인터넷에서 정보 송수신을 제어하는 프로토콜(protocol)을 수행하게 된다.
✅ 인터넷의 소프트웨어 구조
Client-Server
- server는 리소스를 가지고 있고, client는 리소스를 가지고 와서 IO를 한다.
- server에 부하가 걸리는 구조다.
- 통신 주체는 프로세스(머신 X)
- 자원이 한곳에 집중되어 있을 때 적합한 구조다.
Peer to Peer
- 하나의 머신이 server도 될 수 있고 client도 될 수 있다.
- 자원에 흩어져 있을 때 적합한 구조다.
✅ 인터넷의 서비스(= 애플리케이션)
인터넷 애플리케이션은 우리가 잘 알고 있듯이 지도 서비스, 음악 스트리밍, 게임 등을 말한다.
인터넷 애플리케이션은 수많은 종단 시스템으로 구성되어 있어서 분산 애플리케이션(distributed application)이라고 부르기도 한다.
✅ 인터넷의 역사
인터넷의 창시자는 팀 버너스리(Tim Berners-Lee)로, 월드 와이드 웹(WWW)을 고안하고 개발한 영국의 컴퓨터 공학자이다.
- URL, HTTP, HTML을 최초로 설계하고 구현했다.
- 1990년에 자신의 컴퓨터와 동료의 컴퓨터에 웹 브라우저를 설치하고, info.cern.ch라는 URL을 가진 웹 서버와 통신했다.
- 1991년에 세계 최초의 웹페이지를 공개했다.
2️⃣ IP (Internet Protocol)
앞서 host를 설명할 때 IP의 개념이 살짝 나왔다.
IP란 인터넷을 통해 데이터를 주고받을 때 사용되는 통신 규약이며, 네트워크 계층에 속하는 프로토콜이다.
IP주소란 인터넷에 연결되어 있는 컴퓨팅 장치들이 식별될 수 있도록 부여된 고유 식별자다.
프로토콜을 간단히 설명하자면, 프로토콜은 둘 이상의 통신 개체 간에 데이터를 송수신하기 위한 통신 규약이다.
프로토콜은 계층화되어 있으며, 데이터를 일관되게 교환하고 해석할 수 있도록 보장한다. TCP, HTTP, FTP, DNS 등이 대표적인 프로토콜이다.
✅ IP의 역할
주요 역할은 다음과 같다.
- 패킷화 → 데이터를 작은 패킷으로 분할한다.
- 라우팅 → 패킷이 최적의 경로를 통해 목적지에 도달하도록 경로를 설정한다.
- 주소처리 → IP주소를 사용해서 데이터를 전달한다.
✅ IP 주소 (IPv4, IPv6)
IP는 유니크해야 한다. 네트워크 상의 각 장치의 주소가 중복된다면 원하는 목적지에 데이터를 전달하는 것이 불가능할 것이기 때문이다.
기존에는 IPv4 방식을 사용했다.
그런데, "언젠가 IP 개수가 부족하지 않을까?" 이 질문으로부터 IPv6 방식이 생겨났다.
IPv4 | IPv6 | |
주소 길이 | 32비트 | 128비트 |
표현 방법 | - 10진수 - 8비트 * 4 = 32비트 |
- 16진수 - 16비트 * 8 = 128비트 |
주소 개수 | 2^32 = 4,294,967,296(약 43억개) | 2^128 = 43억^4 |
📚 참고
컴퓨터 네트워킹 제8판 James F. Kurose Keith W. Ross
컴퓨터 네트워크 제5판 Andrew S. Tanenbaum David J. Wetherall
'Network' 카테고리의 다른 글
API 프로토콜 SOAP이란 - 개념, 실습 (4) | 2025.01.19 |
---|---|
TCP의 신뢰적인 데이터 전송 원리(GBN, SR, 혼잡제어) (0) | 2025.01.17 |
[Network] 다중화(multiplexing)와 역다중화(demultiplexing) (2) | 2024.04.20 |
웹과 HTTP 동작방식 - 비지속/지속 연결 HTTP, 버전별 특징 (0) | 2024.04.15 |
[Network] TCP, UDP 란? - 차이점, 특성 (0) | 2024.04.15 |