인터넷 네트워크
- 인터넷 통신
- 인터넷에서 컴퓨터 둘은 어떻게 통신할까?
- 내가 한국에 사는데 미국에 있는 친구한테 메시지를 보내야한다.
- 인터넷 망을 통해서 메시지를 보내야한다.
IP(인터넷 프로토콜)
- 복잡한 인터넷망에서 미국에 있는 친구한테 보내려면 최소한의 규칙 필요
- 이는 IP 주소를 통해 가능하다.
- 클라이언트인 내가 IP 주소를 부여받아야한다.
- 지정한 IP 주소(IP Address)에 데이터 전달
- 패킷(Packet)이라는 통신 단위로 전달
- IP 패킷 정보
- 그럼 친구가 메세지를 받았으면, 똑같이 한다.
- 출발지 IP를 넣고 목적지 IP를 넣고 던진다.
- 노드별로 주소 물어가면서 던지면서 최종적으로 클라이언트에게 다시 OK 메세지를 전달해준다.
- IP 프로토콜의 한계
- 비연결성
- 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송(나는 그냥 보낼뿐)
- 비신뢰성
- 중간에 패킷이 사라지면?
- 패킷이 순서대로 안오면?(이게 해결이 안되는 문제)
- 프로그램 구분
- 같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 둘 이상이라면?
- 비연결성
- 일단 대상 서버가 패킷을 받을 수 있는 상태인지 모른다.
- 중간에 있는 노드가 소실되도 모른다.
- 패킷의 용량이 되게 클 때가 있는데, 한번에 보통 나눠서 보내는데 1500바이트 정도 된다.
- 헬로를 한번, 월드를 한번 이렇게 끊어서 보낸다 -> 노드를 타는데, 이 패킷들이 중간에 다른 노드를 탈 수도 있다.
- 첫번째 패킷은 1번 노드로 갔는데, 다른 노드는 2번으로 갈 수도 있다.
- 그래서 2번이 먼저 도착해서, 월드가 먼저 도착하고 헬로가 도착할 수 있다.
- 그래서 이 문제를 해결해주는게, TCP 프로토콜이다.
'웹 애플리케이션' 카테고리의 다른 글
5. HTTP 웹 기본 지식 - DNS (0) | 2023.10.13 |
---|---|
4. HTTP 웹 기본 지식 - PORT (0) | 2023.10.13 |
3. HTTP 웹 기본 지식 - TCP, UDP (0) | 2023.10.13 |
1. HTTP 웹 기본 지식 (0) | 2023.10.13 |
node.js 백엔드 기초 (4) | 2023.08.30 |