본문 바로가기

백엔드

인터넷이 어떻게 작동될까?? How does the internet work? 백엔드 첫걸음!

인터넷이 어떻게 작동될까??

인터넷이란?

인터넷
(영어: Internet, 문화어:인터네트)은 컴퓨터로 연결하여 TCP/IP (Transmission Control Protocol/Internet Protocol)라는 통신 프로토콜을 이용해 정보를 주고받는 컴퓨터 네트워크이다.

해석하면 컴퓨터와 컴퓨터를 TCP/IP란 형식으로 정보를 주고받는 컴퓨터 연결망이란 뜻이다.

간단하게 우리 집 컴퓨터와 옆집 친구 민수의 컴퓨터가 연결되어 있고 TCP/IP의 형식, 규격으로 통신되면 이것 또한 인터넷이라고 말할 수 있다. 즉 전 세계 컴퓨터들끼리 연결되어 있고 연결되어 있어서 정보를 주고받을 수 있는 망 이 자체가 인터넷이라고 불리는 것이다.

 

우리가 집에서 구글의 방대한 정보를 얻을 수 있는데에는 인터넷이 꼭 필요하다! 구글의 모든 정보가 당신의 컴퓨터에 있는 것이 아닌데 어떠한 방법으로 인터넷을 이용하여 구글서버 컴퓨터에 저장되어 있는 정보들을 집에서 열람할 수 있는지 알아보자.

 

미리 알아야할 상식으로는 "실제로 구글 서버 컴퓨터와 당신의 집 컴퓨터는 전선으로 연결되어 있다!"

 

인터넷의 작동원리

상상해 보자 당신이 크롬으로 구글에 접속한다고 생각해 보자 그럼 당신은 www.google.com을  입력한다! 그럼 어떤 일이 일어날까?

기본지식으로 알아야 할 것이 있다! 인터넷에 접속할 수 있는 모든 기기는 각각 자신의 IP주소를 가지고 있다. 

 

ip주소란? 인터넷이란 나라의 주소라고 생각하면 된다! 또한 이것을 정해주고 관리하는 곳을 ISP라고 한다. isp ex) skt, kt, U+ 등 

 

위에 구글 서버컴퓨터와 당신의 집 컴퓨터가 연결돼있다고 했는데 실제로 유선으로 연결되어 있다. 무선인터넷 사용자라면 당신에게 무선으로 전파를 보내주는 송전탑과 연결되어 있다. 

 

하지만 우리는 IP주소를 모른다. 입력하는 것은 www.google.com이다 이것을 우리는 DNS라고 부르기로 약속했다. 

 

DNS란? Domain Name System의 약자로 ip주소 대신 이에 따른 도메인 이름(youtube.com)을 입력하면 ip주소를 주는 시스템이다. 전화번호부라고 생각하면 편하다. 

 

여기까지 정리하자면 당신은 ip주소를 isp로부터 입력받았고 웹브라우저 www.google.com를 입력하며 DNS에 접속해 해당 ip주소인 8.8.8.8을 돌려받았다! (실제로 저것을 입력하면 google.com으로 이동할 것이다!)

 

이후에 당신의 컴퓨터가 8.8.8.8의 주소를 가진 컴퓨터와 연결하자고 신호를 보내고 이내 연결될 것이다. 그럼 데이터가 광케이블을 타고 넘어온다 1010100010101010이란 데이터는 광케이블을 타고 당신의 모뎀(ISP)에서 전기신호로 전환된다.

이전에는 광케이블을 타고 산 넘고 바다 건너 빛신호로 이동한다! 그럼 모뎀과 연결된 공유기가 있을 것이고 이것은 렌선을 통해 당신의 컴퓨터에 전기신호로 데이터를 작동시킨다! 

 

그럼 중간에 데이터가 손실되거나 없어지면 어떡하냐? 이를 해결하기 위해 프로토콜이라는 체계, 약속을 사용한다!

프로토콜이란 

프로토콜: 복수의 컴퓨터 사이나 중앙 컴퓨터와 단말기 사이에서 데이터 통신을 원활하게 하기 위해 필요한 통신 규약. 신호 송신의 순서, 데이터의 표현법, 오류 검출법 등을 정함. 통신 규약.

 

이것의 종류에는 

 TCP/IP, HTTP/HTTPS, RTP 등이 있으며 각각 데이터전송, html데이터, 실시간 스트리밍 등에 사용된다!

데이터는 비트로 나누어져서 각각자 최대한 빠른 광케이블을 타고 넘어가서 당신의 ip로 이동되고 여기서 다시 모이는데 이때 어떤 비트가 먼저 오는지 프토토콜을 이용하여 알 수 있다! 

 

이 영상을 보면 조금 더 쉽게 이해 가능하다.

 

https://youtu.be/o5yBl59wRbY

 

앞으로 웹 개발자가 되기 위해 첫걸음인 인터넷에 대해 큰 틀을 알아보았다. 여러 가지 생략된 부분도 있고 그냥 공부한 걸 정리하는 입장으로 틀린 부분도 있을 것이다. 계속해서 업데이트할 것이다.

'백엔드' 카테고리의 다른 글

백엔드 로드맵 정리!  (0) 2023.01.20
개발자로서무엇을 하며 살아야 할까?  (0) 2023.01.08