인터넷 통신은 어떻게 동작이 될까?
위의 그림을 보다시피 클라이언트와 서버간에 요청과 응답으로 동작하게 된다.
클라이언트와 서버가 가까이 있을 시 (같은 pc..) 다이렉트로 연결하여 통신을 할 수 있게 만들 수 있다.
하지만 서로 다른 pc 라면 클라이언트에서 요청을 보내어 통신 하려면 인터넷 망이라는 곳을 거처야 한다.
인터넷 망 내부에는 수많은 노드들이 존재한다. 어떠한 규칙으로 각 노드들을 거쳐 서버에 요청을 줄 수 있을까?
이 규칙은 인터넷 프로토콜이라 한다. 인터넷 프로토콜에 대해 알아보자.
인터넷 프로토콜 (IP)
IP 는 주소라고 생각하면 되고 클라이언트와 서버에게 IP의 주소를 할당하여 패킷 통신 단위로 데이터를 전달 할 수 있다..
아래 그림을 참고하자.
IP 패킷 정보
위에서 말했듯 패킷 통신 단위로 데이터를 전달할 수 있다고 했다.
이 패킷 통신 단위에는 출발지 IP 와 목적지 IP를 담고 전송 데이터를 담아 보낼 수 있다.
즉, 우리가 택배를 보낼 때 보낸이의 주소와 받는이의 주소 그리고 내용물을 담아 택배를 보낼 수 있다고 생각하면 된다.
클라이언트 와 서버의 패킷 전달 그림 참고
IP 프로토콜의 한계점
- 택배 보내기를 생각해보자
- 택배 받는이의 주소를 모르면 택배를 보낼 수 가 없다. 즉, 서비스 불능 상태가 된다.
- 받는이가 집에 거주 중이거나 부재중 인지는 알 수 가 없다.
- 비연결성
- 택배사에서 택배를 분실해버리면 택배를 받을 수 없다.
- 택배사에서 과연 택배를 순서대로 보내 줄 것인가?
- 비신뢰성
- 같은 주소로 택배를 보내면 누가 보냈는지 확인이 안된다.
- 프로그램 구분
참고 : https://hseungyeon.tistory.com/424?category=1060297
'HTTP' 카테고리의 다른 글
[모든 개발자를 위한 HTTP 웹 기본 지식] HTTP 상태코드 (0) | 2022.11.16 |
---|---|
[모든 개발자를 위한 HTTP 웹 기본 지식] HTTP 메서드 활용 (0) | 2022.11.15 |
[모든 개발자를 위한 HTTP 웹 기본 지식] HTTP 메서드 (0) | 2022.10.24 |
[모든 개발자를 위한 HTTP 웹 기본 지식] HTTP 기본 (0) | 2022.10.24 |
[모든 개발자를 위한 HTTP 웹 기본 지식] HTTP 기본 - 모든 것이 HTTP, 클라이언트 서버 구조 (0) | 2022.10.08 |
[모든 개발자를 위한 HTTP 웹 기본 지식]URI와 웹 브라우저 요청 흐름 - URI, 웹 브라우저의 요청 흐름 (0) | 2022.10.05 |
[모든 개발자를 위한 HTTP 웹 기본 지식] 인터넷 네트워크 - PORT, DNS (2) | 2022.10.04 |
[모든 개발자를 위한 HTTP 웹 기본 지식] 인터넷 네트워크 - TCP, UDP (0) | 2022.10.03 |