나만의 학습 기록

최종 목적은 기술 블로그💩

백엔드 공부

인터넷의 이해 1 - 인터넷의 작동 원리

밈밍민믹 2026. 3. 10. 21:11

인터넷을 택배에 비유하자면?

택배를 받는 사람 보내는 사람 -> 호스트

택배물,소포 -> 패킷

물류창고 -> 라우터/홉

택배 회사 -> 인터넷 제공자(ISP)

용어

  • 호스트 : 네트워크에 연결되어 있는 컴퓨터들, 즉 IP를 가지고 있는 양방향 통신이 가능한 컴퓨
  • 패킷 : 네트워크를 통해 전송하기 쉽도록 자른 데이터 전송 단위
  • 라우터 : 네트워크와 네트워크 간의 경로를 설정하고 가장 빠른 길로 트래픽을 이끌어주는 네트워크 장비
  • 인터넷 제공자(ISP) : 개인이나 기업에게 인터넷 접속을 제공하는 업체(KT, LG 유플러스 등)

 

컴퓨터 네트워크

인터넷은 하나의 네트워크로 구성된 것이 아닌 연결 장치를 통하여 수많은 네트워크로 구성된다. 즉, 인터넷은 LAN과 WAN들의 조합인 네트워크들이 서로 연결된 네트워크이다. 위의 그림은 링크와 연결장치의 조합으로서의 가상의 작은 인터넷을 보여준다.

 

IP Packet 구조

  • 크게 Header와 Data 부분으로 나눌 수 있다.

 

구조의 설명

  1. version : 인터넷 프로토콜 버전에 대해 표기된다.( IPv4 = 4, IPv6 = 6)
  2. Length : 헤더의 32-bit 워드 크기를 나타낸다.
  3. Service type(TOS; Type of Service) : 라우터가 이 패킷을 서비스 할 종류를 지정한다.(일반적으로 사용x)
  4. Packet Length(TL; Total Length) : 헤더를 초함한 패킷 전체의 크기를 바이트 단위로 나타낸다.
  5. Identification : 상위 계층으로부터 각 IP 데이터 그램을 분별하기 위한 식별번호(단편화에 사용)
  6. DM/MF/Fragment Offset : Unused field[1bit] / Do not Fragment[1bit] / More Fragment[1bit] / 각 Fragment의 원 데이터에 있어 위치를 바이트 단위로 나타낸 것. 
  7. Time to Live(TTL) : 패킷이 최대로 방문할 수 있는 홉의 수(홉을 지나면서 값이 감소하고, 0이 되면 패킷은 버려짐)
  8. Transport : 데이터를 포함한 상위 프로토콜의 종류를 나타냄(ICMP message :1 / TCP segment : 6 / UDP datagram : 17)
  9. Header Checksum : IP 프로토콜 헤더 자체의 내용이 바르게 교환되었는가를 점검하고, 전송 중 헤더가 손상되지 않았음을 보장하기 위해 수신된 패킷 내 IP 헤더 자체를 검사하는데 이용
  10. Source IP Address : 발신 노드 IP 주소
  11. Destination IP Address : 수신 노드 IP 주소
  12. Options : 경로 배정 및 보안 등과 같은 제어 기능에 사용되는 부가 정보를 나타낸다.
  13. Padding : Options가 32bit를 채우지 못할 경우 0을 채워 넣는다.
  14. Data : 전송의 근본적인 목적이 되는 데이터의 일부분으로 '페이로드' 또는 'Body'라고 하며, 그 데이터와 함께 전송되는 헤더와 메타데이터와 같은 것은 제외한다.
# "Hello!" 가 클라이언트가 관심을 가지는 Data가 된다.
{
	"status" : "OK",
	"data" : {
    	"message" : "Hello!"
    }
}

 

OSI 7 Layer & TCP/IP의 4Layer

OSI 7계층과 TCP/IP 4계층을 통한 인터 동작 과정

인코딩 과정

 

  1. 응용 계층에서 HTTP(GET, POST 등), SMTP 등의 프로토콜을 사용해 메시지 전송, 게시물 작성·조회, 로그인 등의 요청 데이터를 만든다.
  2. 생성된 데이터는 전송 계층으로 내려가며, TCP를 사용하는 경우 세그먼트, UDP를 사용하는 경우 데이터그램 단위로 처리된다. 이때 포트 번호 등의 정보가 헤더에 포함된다.
  3. 그다음 네트워크 계층에서는 전송 계층에서 내려온 데이터에 IP 헤더를 붙여 IP 패킷을 만든다. 이 패킷에는 출발지 IP와 목적지 IP 정보가 포함되어 목적지까지 전달될 수 있도록 한다.
  4. 이후 링크 계층에서는 실제 네트워크 전송을 위해 프레임 단위로 캡슐화한다.
  5. 마지막으로 물리 계층에서는 이 데이터가 전기 신호, 광 신호, 무선 신호 등의 형태로 변환되어 0과 1의 비트 흐름으로 전송된다.

디코딩 과정

  1. 물리 계층에서 전기 신호, 광 신호, 무선 신호 등의 형태로 전달된 데이터를 받아 0과 1의 비트 흐름으로 해석한다.
  2. 링크 계층에서는 전달받은 비트 데이터를 프레임 단위로 확인하고, 목적지 MAC 주소 등이 자신과 일치하는지 검사한 뒤 상위 계층으로 올린다.
  3. 네트워크 계층에서는 프레임의 헤더를 제거하고 IP 패킷을 확인한다. 이때 목적지 IP 주소를 검사하고, 자신의 IP와 일치하면 IP 헤더를 벗긴 뒤 전송 계층으로 전달한다.
  4. 전송 계층에서는 TCP 또는 UDP 헤더를 확인한다.
    • TCP라면 순서 보장, 오류 확인, 재조립 등의 과정을 거친다.
    • UDP라면 필요한 최소한의 정보만 확인하고 상위 계층으로 전달한다.
      이후 목적지 포트 번호를 확인하여 알맞은 응용 프로그램에 전달한다.
  5. 응용 계층에서는 최종적으로 HTTP, SMTP 등의 프로토콜에 맞게 데이터를 해석하여, 로그인 결과, 게시물 조회 결과, 메시지 내용 등 실제 사용자가 이해할 수 있는 형태로 처리한다.

 

 

이상 간단하게 인터넷의 작동 원리를 이해해보았습니다.