IP(Internet Protocol)
역할
IP의 역할로는 지정한 IP 주소에 패킷(packet)이라는 통신 단위로 데이터를 전달한다.
한계
하지만 IP만으로는
- 비연결성(packet을 받을 대상이 없거나 서비스 불능 상태여도 packet을 전송한다)
- 비신뢰성( packet이 중간에 소실 되거나, 순서가 다르게 전달 될 수 있다)
- 프로그램 구분 불가( 같은IP를 사용하는 서버에서 여러 애플리케이션에 정보를 전송 할 수 없다)
라는 한계를 가진다.
IP Packet
IP Packet에는 출발지 IP와 목적지 IP의 정보가 들어간다
TCP(Transmisson Control Protocol)
TCP는 IP의 한계들을 해결해 주기 위해서 고안되었다.
TCP Segment
TCP 세그먼트에는
- 출발지 PORT
- 목적지 PORT
- 전송 제어
- 순서
- 검증 정보
등이 들어있다.
특징
- 연결지향
- 데이터 전달 보증
- 순서 보장
연결지향
TCP 3way handshake를 통해서 논리적인 연결을 한다.
Client가 Server에 SYN을 보내고 Server에서 SYN을 받았다면 클라이언트로 SYN과 ACK를 보낸다. 이것을 클라이언트가 받았다면 다시 Server에 ACK를 보내고 Client와 Server는 논리적으로 연결된 상태이다. 물리적으로 연결된 것은 아니다.
3way handshake후 데이터를 전송한다.
데이터 전달 보증
서버에서 클라이언트로 부터 데이터를 전송받고 난 후 클라이언트로 데이터 전송완료 상태를 전달한다.
순서 보장
TCP 세그먼트에 순서를 담아 보내어 잘못온 순서 부터 클라이언트에 다시 데이터를 요청한다.
PORT
포트는 같은 IP 주소 내에서 프로세스를 구분해 주는 것이다.
IP의 한계인 "프로그램 구분 불가"를 해결하기 위해 존재하며 TCP에서 목적지 port를 가지므로 같은 IP주소에서 원하는 프로세스에 데이터를 전달가능하다.
TCP/IP
인터넷에서는 데이터에 TCP 세그먼트가 먼저 씌이고 IP 패킷이 씌여서, TCP와 IP를 합쳐 TCP/IP라고 부른다.
http://www.ktword.co.kr/test/view/view.php?m_temp1=347
'computer science > network' 카테고리의 다른 글
HTTP Method (0) | 2023.10.22 |
---|---|
HTTP 메시지 (0) | 2023.10.20 |
HTTP의 특징 (0) | 2023.10.20 |
Stateful, Stateless (0) | 2023.10.20 |
URI, URL, URN (0) | 2023.10.19 |