Network
[HTTP] IP(Internet Protocol) - 인터넷 프로토콜
Gray__
2021. 8. 24. 20:38
IP (인터넷 프로토콜) 역할
- 지정한 IP 주소(IP Address)에 데이터 전달
- 패킷(Packet)이라는 통신 단위로 데이터 전달
IP 주소 부여

IP 패킷 정보
IP 패킷에 전송 데이터가 전송되는데, 전송 데이터에 출발지 IP, 목적지 IP, 기타 정보등이 들어가 있다.
클라이언트와 서버간 데이터를 전송할 때 서버 패킷을 전달한다.
IP 프로토콜의 한계
- 비연결성 : 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송
- 비신뢰성 : 중간에 패킷이 사라지는 경우, 패킷이 순서대로 도착하지 않은 경우 ex) Hello World를 보냈는데 World Hello가 도착한 경우
- 프로그램 구분 : 같은 IP를 사용하는 서버에서 통신하는 애플리켕션이 둘 이상이라면?
TCP / UDP
인터넷 프로토콜 스택의 4계층

프로토콜 계층

IP 패킷 정보
- 출발지 IP
- 목적지 IP
- 전송 데이터
- 기타 정보

TCP/IP 패킷 정보
- 출발지 IP
- 목적지 IP
- 출발지 PORT
- 목적지 PORT
- 전송 제어, 순서, 검증 정보..
- 전송 데이터

TCP의 특징
- 연결지향 - TCP 3 way handshake (가상 연결)
- 데이터 전달 보증
- 순서 보장
- 신뢰할 수 있는 프로토콜
- 현재는 대부분 TCP 사용

1. 클라이언트가 서버에게 SYN(synchronization)을 요청한다
2. 서버는 클라이언트에게 SYN를 요청하고 ACK(Acknowledge)를 보낸다
3. 클라이언트는 서버에게 ACK를 보낸다
4. 클라이언트와 서버는 데이터를 전달한다 (3, 4 과정이 함께하는 경우도 있다)
UDP 특징 (User Datagram Protocol)
- 하얀 도화지에 비유 (기능이 거의 없다)
- 연결 지향 - TCP 3 way handshake X
- 데이터 전달 보증 X
- 순서 보장 X
- 데이터 전달 및 순서가 보장되지 않지만, 단순하고 빠름
- 정리 : IP와 거의 같은 특징 + PORT + CheckSum , 애플리케이션 추가 작업 필요