Sapere_aude_Dev개발

인터넷 작동 원리

톰탐톰 2024. 8. 9. 00:04

효율적이고 안전한 그리고 확장 가능한 서비스를 만들기 위해서는 인터넷이 어떻게 작동하는지,

어떻게 인터넷의 힘과 연결성을 강화할 수 있는지를 알아야 한다.

 

인터넷 : 표준화된 프로토콜 세트를 통해 통신하는 서로 연결된 컴퓨터의 글로벌 네트워크

 

인터넷에 대하여 먼저 말하기 이전에 네트워크란 무엇인지 먼저 살펴보자

네트워크는 컴퓨터 혹은 다른 기기들이 서로 연결되는 것을 의미한다.

이러한 모든 네트워크들이 연결되면 인터넷이 형성된다.

 

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

인터넷은 기기와 컴퓨터 시스템들이 서로 표준화된 프로토콜을 통해 연결됨으로 작동한다.

프로토콜이란 어떻게 기기간에 정보를 안정적이고 안전하게 전달할지 정의하는 것이다.

인터넷의 핵심은 서로 연결된 라우터로 구성된 글로벌 네트워크이다.

서로 다른 장치와 시스템간의 라우팅을 담당하는 역할을 한다.

인터넷을 통해 데이터를 전달할 때, 데이터는 작은 패킷으로 쪼개져서 라우터로 전달된다.

라우터는 패킷을 검사하여 목적지로 향하는 경로의 다름 라우터로 패킷을 전달한다.

 

패킷이 올바르게 송수신되도록 하기 위해 인터넷에서는 IPTCP를 비롯한 다양한 프로토콜을 사용한다.

IP : 패킷을 올바를 목적지로 라우팅하는 역할.

TCP : 패킷이 올바른 순서로 안정적으로 전송되도록 보장.

이런 핵심적인 프로토콜 뿐 아니라 다양한 프로토콜이 있다. ex) DNS, HTTP, SSL/TLS

 

기본 개념 및 용어

패킷: 인터넷을 통해 전송되는 데이터의 작은 단위.

라우터: 서로 다른 네트워크 간에 데이터 패킷을 전달하는 장치.

IP 주소: 네트워크의 각 장치에 할당된 고유 식별자로, 데이터를 올바른 대상으로 라우팅하는 데 사용.

도메인 이름: google.com과 같이 웹사이트를 식별하는 데 사용되는 사람이 읽을 수 있는 이름.

DNS: 도메인 네임 시스템은 도메인 네임을 IP 주소로 변환하는 역할.

HTTP: 하이퍼텍스트 전송 프로토콜은 클라이언트(웹 브라우저 등)와 서버(웹사이트 등) 간에 데이터를 전송하는 데 사용.

HTTPS: 클라이언트와 서버 간에 보안 통신을 제공하는 데 사용되는 HTTP의 암호화된 버전.

SSL/TLS: 보안 소켓 계층 및 전송 계층 보안 프로토콜은 인터넷을 통한 보안 통신을 제공하는 데 사용.

 

인터넷에서 프로토콜의 역할

프로토콜은 인터넷을 통한 통신과 데이터 교환을 가능하게 하는 데 중요한 역할을 한다.

프로토콜은 장치와 시스템 간에 정보가 교환되는 방식을 정의하는 일련의 규칙과 표준이다.

표준화된 프로토콜 사용의 주요 이점 중 하나는 다양한 제조업체 및 공급업체의 디바이스와 시스템이

서로 원활하게 통신할 수 있다는 점이다.

 

HTTP와 HTTPS

HTTP는 클라이언트와 서버 사이에서의 데이터 교환할 때 사용되는 프로토콜이다.

HTTPS는 클라이언트와 서버 사이에 전송되는 데이터를 SSL/TSL 암호화를 사용하여 암호화하는 안전한 HTTP 버전이다.

 

TCP/IP로 어플리케이션 만들기

TCP/IP는 인터넷을 기반으로 하는 대부분의 통신 프로토콜이다.

포트: 포트는 기기에서 실행 중인 애플리케이션 또는 서비스를 식별하는 데 사용된다. 각 애플리케이션 또는 서비스에는 고유한 포트 번호가 할당되어 데이터를 올바른 대상으로 전송할 수 있다.

소켓: 소켓은 IP 주소와 포트 번호의 조합으로, 통신을 위한 특정 엔드포인트를 나타낸다. 소켓은 장치 간에 연결을 설정하고 애플리케이션 간에 데이터를 전송하는 데 사용된다.

연결: 두 장치가 서로 통신하고자 할 때 두 소켓 간에 연결이 설정된다. 연결 설정 과정에서 장치는 연결을 통해 데이터가 전송되는 방식을 결정하는 최대 세그먼트 크기 및 창 크기와 같은 다양한 매개변수를 정한다.

데이터 전송: 연결이 설정되면 각 디바이스에서 실행 중인 애플리케이션 간에 데이터를 전송할 수 있다. 데이터는 일반적으로 세그먼트 단위로 전송되며, 각 세그먼트에는 안정적인 전송을 보장하기 위해 시퀀스 번호와 기타 메타데이터가 포함되어 있다.

 

SSL/TLS로 인터넷 보완

인증서: SSL/TLS 인증서는 클라이언트와 서버 간의 신뢰를 구축하는 데 사용된다. 인증서에는 서버의 신원에 대한 정보가 포함되어 있으며 신뢰할 수 있는 제3자(인증 기관)가 서명하여 진위 여부를 확인한다.

핸드셰이크: SSL/TLS 핸드셰이크 프로세스 중에 클라이언트와 서버는 정보를 교환하여 보안 연결을 위한 암호화 알고리즘 및 기타 매개변수를 정한다.

암호화: 보안 연결이 설정되면 합의된 알고리즘을 사용하여 데이터가 암호화되고 클라이언트와 서버 간에 안전하게 전송될 수 있다.

반응형