인터넷 프로토콜 역할

-> 패킷을 전달할 때 출발 IP와 목적 IP를 적어서 보낸다.

비연결성
패킷을 받을 대상이 없거나, 서비스 불능 상태여도 패킷 전송
비신뢰성
if) 중간에 패킷이 사라진다면??
if) 패킷이 순서대로 안온다면?? -> 보내는 용량이 클 경우 나눠서 보냄
3.프로그램 구분
같은 IP를 사용하는 서버에서 통신하는 애플리케이션이 둘 이상이라면??
인터넷 프로토콜 스택 4계층

ex)

애플리케이션층에 Hello 라는 메세지를 전달 하고 -> OS층에 TCP에 전달
-> IP 패킷 생성, TCP data 위에 쌓진다고 보면 됨
전송 제어 프로토콜
syn
ACK
신뢰할 수 있는 프로토콜
현재는 대부분 TCP 사용

사용자 데이터프로그램 프로토콜
실시간 통신이나 스트리밍 애플리케이션에서는 빠른 전송이 중요했기 때문에 UDP는 이러한 요구를 충족하기 위해 개발
기능이 거의 없다.
연결지향X, 데이터 전달 보증X, 순서 보장X
데이터 무결성 검사 → 체크섬(Checksum)을 포함하고 있다. 잘못된 데이터가 전송되지 않도록 만들어준다.
단순히 빠르다.
정리
IP + PORT + 체크섬 정도만 추가
애플리케이션 추가 작업 필요
PORT
한번에 둘 이상을 연결해야 한다면??

port로 구분해서 각각 어느 곳에 들어가야 하는지 알 수 있다. (같은 IP 내에서 프로세스 구분)
ex)
FTP - 20,21
TELNET - 23
HTTP - 80 (TCP)
HTTPS - 443 (TCP)

IP는 기억하기 어렵기도 하고 변경 가능성이 있다
따라서 DNS 서버에 도메인 명을 입력하면, DNS에서 Domain 주소를 IP로 변경 해서 응답하는 형태 (사람이 읽을 수 있는 도메인 이름을 컴퓨터가 읽을 수 있는 IP 주소)
