본문으로 건너뛰기
/ Docs

패킷 스위칭, 인터넷 프로토콜

프론트엔드 중요 개념 - 인터넷 개념 정리 2편입니다.

프론트엔드 프로그래밍의 기반이 되는 개념 입니다.

개념정리 끝에는 관련 면접질문을 첨부하였으니 도움이 되었으면 좋겠습니다.

패킷스위칭 Packet Switching

패킷 교환

인터넷에서는 데이터를 한 덩어리로 보내는 대신 작은 조각들(=패킷)로 나눠서 전송합니다. 예를 들어 웹사이트 주소를 브라우저에 입력하면, 컴퓨터는 웹 페이지에 대한 요청을 여러 개의 패킷으로 나누어 전송합니다. 전송된 각 패킷은 서로 다른 경로로 이동하여 목적지에 도착한 뒤 순서대로 조립되구요.

대용량 데이터를 한 번에 보낸다면 일정시간 네트워크를 독점하고 에러가 발생하기 쉽습니다. 하지만 패킷을 이용한 데이터 전송은 하나가 막혀도 다른 길로 돌아갈 수 있어 빠르고 유연한 통신이 가능합니다. 또한 네트워크를 여러 통신이 공유하여 여러 통신이 동시에 효율적으로 이루어질 수 있습니다.

패킷의 구조

패킷은 일반적으로 패킷 헤더내용 두 부분으로 구성됩니다. 패킷 헤더는 목적지에 도착한 패킷을 순서대로 조립하는 데 사용됩니다.

Header메타정보 (출발지IP주소, 목적지IP주소, 패킷 번호 등)
Payload전송할 실제 데이터

프로토콜

프로토콜은 서로 다른 하드웨어와 소프트웨어를 가진 장치들이 통신할 때 지켜야 할 규칙과 약속입니다. 인터넷에서 데이터(패킷)를 전송하는 패킷 스위칭과정에서도 여러 프로토콜이 관여합니다.

프로토콜 - 설명
이더넷 - 같은 네트워크(ex. 집 안) 안에서 패킷 전송
-> IP - 다른 네트워크로 패킷 전송
-> TCP - 패킷이 순서대로, 손실없이 도착하는지
-> HTTP - 웹사이트, 애플리케이션 등이 어떤 형식으로 데이터를 주고받을지

데이터가 프로토콜을 따라 전송될때는, 각 프로토콜 계층마다 필요한 제어 정보를 담은 패킷 헤더가 붙습니다. 이렇게 계층별로 추가된 헤더는 해당 계층에서 데이터를 어떻게 처리해야하는지를 알려주는 역할을 합니다. 패킷이 도착하면 패킷 헤더를 활용해 순서대로 데이터를 해석합니다.

  1. 네트워크 인터페이스 계층 : Ethernet Header
  2. 인터넷 계층 : IP Header
  3. 전송 계층 : TCP Header
  4. 애플리케이션 계층 : HTTP Header

최종 전송 구조 → Ethernet Header+IP Header+TCP Header+HTTP Header+Data

인터넷 프로토콜 (IP)

데이터를 어디서 어디로 보낼지

인터넷 프로토콜은 패킷을 다른 네트워크로 전송할 때, 정확한 목적지에 도착하도록 최적의 경로를 찾고 주소를 지정하는 프로토콜입니다.

또한 IP는 인터넷에 연결된 장치를 식별하는 고유의 주소 체계이기도 합니다.

  • 우리가 아는 192.168.1.1와 같은 IP 주소는 데이터 목적지를 지정하는 규칙
  • IP 프로토콜은 네트워크를 통해 데이터를 주고받을때 지켜야 할 규칙

🌞

요약

패킷스위칭은 패킷 단위의 데이터를 전송하는 시스템이다.

인터넷프로토콜은 인터넷에서 데이터 주소를 지정하고 라우팅하기 위한 규칙이다.