twocowsong

[모든 개발자를 위한 HTTP 웹 기본 지식 - 2] 본문

IT/HTTP

[모든 개발자를 위한 HTTP 웹 기본 지식 - 2]

WsCode 2022. 1. 22. 16:03

IP 인터넷 프로토콜

복잡한 인터넷망을 통해서 출발지에서 목적지까지 가기 위해서는 IP 주소가 필요로하다.

클라이언트(출발지) - 서버(목적지)로 이야기를 해보자

(출발지에도 IP가 있는 이유는 택배를 보낼때 보낸 사람의 주소를 들어간다는 비슷한 얘로 생각하면된다.)

목적지 IP 주소에 데이터 전달하기 위해서는 패킷 이라는 통신단위로 데이터를 전달 한다. 패킷은 위와 같이 구성된다. 큰 데이터를 패킷단위로 짤라 여러개의 패킷이 생성된다.


위와 같이 패킷은 수많은 노드를 거쳐 출발지에서 목적지 또는 목적지에서 출발지로 전달된다. 네트워크 상황에 다른 노드를 거칠수 있다. 도착지에서 출발지에 데이터를 보내기 위한방법도 같은 방법으로 진행이된다.

하지만 IP 인터넷 프로토콜로는 아래와 같은 한계가 있다.

  1. 비연결성 : 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송

 


2. 비신뢰성 : 중간에 패킷이 사라지면? 패킷이 순서대로 안오면?
3. 프로그램 구분 : 같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 둘 이상이면?
(즉 한개의 IP에서 여러개에 서비스가 작동중이면?)

위와 같은 문제들이 발생되면 어떻게 해결해야할까?