[Internet] 인터넷은 어떻게 동작할까?

youznn·2023년 11월 9일
1

여태껏 개발과 컴퓨터과학을 공부하면서 많은 코드들을 마주치고 컴퓨터의 작동원리에 대해 익혔지만 정작 "인터넷"이 어떻게 작동하는가? 에 대한 물음에는 답을 할 수 없었다. 네트워크 수업을 듣지 않아서... 라는 변명도 있지만 😅 웹 개발을 조금 더 본격적으로 공부해 보기 이전에 인터넷 동작 방식에 대해 알아보고자 한다.


인터넷은 어떻게 동작하는가? 🖥️

인터넷은 네트워크들의 네트워크이다.

인터넷은 표준 프로토콜들을 이용하여 디바이스와 컴퓨터 시스템들을 연결시켜준다. 인터넷의 핵심은 서로 연결된 라우터들 이다.

두 개의 컴퓨터가 서로 연결될 때, 다음과 같은 한 개의 케이블이 필요하다. 그렇다면... 여러 대의 컴퓨터가 서로 연결되려면 몇 개의 케이블이 필요할까?


컴퓨터의 대수가 늘어날수록, 연결을 위해 필요한 유선케이블(또는 무선 연결)이의 수는 엄청나게 늘어나게 된다.

라우터는 이러한 문제점을 해결한다. 하나의 컴퓨터는 오직 하나의 라우터에만 연결되면 된다.


라우터는 다른 라우터와도 연결될 수 있다. 서로 다른 라우터들이 연결되면서 인터넷은 무한히 확장된다.

그래서 라우터란 무엇일까?

우리가 인터넷에서 데이터를 전송한다고 해 보자. 이 데이터들은 패킷이라고 하는 작은 단위로 나뉘어 라우터로 보내진다. 라우터는 패킷을 검사하고, 패킷이 올바른 목적지에 도착할 수 있도록 다음 라우터로 인도한다.

패킷을 올바른 목적지로 주고받기 위해서 인터넷은 다양한 프로토콜을 사용한다. 이때 등장하는 용어가 IP(Internet Protocol) 과 TCP(transmisssion Control Protocol)이다.

  • IP: 패킷들이 올바른 목적지로 도착하도록 라우팅한다.
  • TCP: 패킷들이 올바른 순서대로 잘 도착할 수 있도록 한다.

이런 핵심 프로토콜 외에도 인터넷에서 소통과 데이터 교환이 가능하게 하도록 하는 기술들과 프로토콜들이 있다.

  • DNS(domain name system)
  • HTTP(Hypertext Transfer Protocol)
  • SSL/TLS protocol(Secure Sockets Layer/Transport Layer Security)
    등이 그 예시이다.

하지만 아주 먼 곳에 있는 디바이스와 소통을 하고 싶다면 어떻게 할까?

네트워크들은 ISP (Internet Service Provider)에 연결된다. ISP는 다른 ISP들과 연결될 수 있다. 인터넷은 이런 식으로 동작한다.

컴퓨터 찾기

컴퓨터에 메시지를 보내려면, 받는 컴퓨터를 지정해 줘야 한다고 했었다. 인간이 특정 장소를 찾아갈 때 주소가 필요한 것처럼, 컴퓨터에게도 주소가 필요하다. 네트워크에 연결된 모든 컴퓨터에는 IP 주소가 있다. IP 주소는 네 개의 숫자 배열이 점으로 구분되어 있다.

  • IP
    IP 주소는 네트워크에 연결된 디바이스들의 고유한 인식자이다. 데이터가 올바른 곳에 도달할 수 있도록 라우팅하는 데 사용된다. '173.194.121.32' 같은 숫자의 배열이다.

  • Domain Name
    도메인 이름은 인간이 읽을 수 있는 이름이다. google.com과 같은 주소가 이에 해당된다. IP 주소는 Domain Name System(DNS)를 사용하여 도메인 이름으로 번역된다.

만일 내 컴퓨터가 웹브라우저에서 google.com에 접속하려고 시도한다 해보자. 컴퓨터는 DNS 서버에 DNS 쿼리를 보낸다. DNS 서버는 받은 쿼리에 응답하여 알맞은 IP 주소를 돌려준다. 내 컴퓨터는 받은 IP 주소를 통해 웹이나 다른 자원에 접근한다.

여기까지 인터넷에 대한 아주 기초적인 내용들이었다~!
다음으로는 HTTP, DNS, Browser 등에 대해 알아보도록 하자! 🙂

profile
https://github.com/youznn

0개의 댓글