인프런 강의 학습/HTTP 기본 지식

HTTP 웹 기본 지식 1일차

현호s 2020. 12. 23. 21:06
반응형

# 모든 개발자를 위한 HTTP 웹 기본 지식 학습

# 인터넷 네트워크

## 인터넷 통신

  • 인터넷에서 컴퓨터 둘은 어떻게 통신?
  • 복잡한 인터넷 망 속에서 아주 먼 거리에 있는 대상에서 메시지 전송 관련 어떤 규칙과 방식을 통해 보내는 지 등등 의문을 바탕으로 학습 시작

## IP(인터넷 프로토콜)

  • 복잡한 인터넷 망에서 'hello world' 메시지를 외국에 있는 친구에게 보낼 때..
  • 클라이언트 : 메시지를 보내는 대상(나)
  • 서버 : 보낸 메시지를 받는 대상(친구)
  • 클라이언트와 서버 각각 IP 주소가 있어야 가능.

### 클라이언트 패킷 전달

  • IP(인터넷 프로토콜)의 역할 : 지정한 IP 주소(IP  Address)에 데이터 전달할 수 있도록 정해진 규칙, 패킷(Packet)이라는 통신 단위로 데이터를 전달하게 된다.
  • 이때, 전송 데이터를 그냥 보내는 것이 아닌 IP 패킷이라는 규칙을 바탕으로 전송.
  • IP 패킷 정보에 주소를 적듯 출발지 IP, 목적지 IP, 전송 데이터 등을 입력하여 IP 패킷을 만든 후, 인터넷 망에 만들어진 IP 패킷을 전송, 그러면 규칙에 맞게 인터넷 망에서 노드간에 패킷이 전달되며 목적지에 도착하게 된다.

### 서버 패킷 전달  

  • 메시지를 받은 대상 또한 동일한 방식을 이용하여 응답 메시지를 전송한다.
  • IP패킷 정보 작성(출발지 IP, 목적지 IP, 전송 데이터) 후, 인터넷 망에 만들어진 IP 패킷을 전송, 그러면 규칙에 맞게 인터넷 망에서 노드간에 패킷이 전달되며 목적지에 도착하게 된다.

## IP 프로토콜의 한계

  • 비 연결성 : 패킷을 받을 대상이 없거나, 서비스 불능 상태여도 패킷 전송
  • 비 신뢰성 : 중간에 패킷이 사라지거나, 패킷이 순서대로 도착하지 않을 수 있다.
  • 프로그램 구분 : 같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 둘 이상이면 어떻게 구분할지..에 대한 한계 존재
  • 대상이 서비스 불능, 패킷 전송 / 패킷 소실 / 패킷 전달 순서 문제 발생
  • 이러한 문제점을 해결해 주는게 바로 TCP, UDP 프로토콜이다.

 

출처 : 인프런 모든 개발자를 위한 HTTP 웹 기본 지식

반응형