TCP/IP란?
Transfer Control protocol / Internet protocol
인터넷 표준 프로토콜로서 컴퓨터 간의 데이터 송수신 중 에러가 발생하지 않도록 알맞게 나누어 전송하고 수신 시 이를 기존 정보로 변환하는 것을 약속해 놓은 것을 의미
- 데이터 흐름 관리
- 정확성 확인
- 패킷의 목적지 보장
- 데이터의 정확성 관리는 TCP , 패킷 관련 관리는 IP가 담당
TCP/IP 4 계층은 OSI 7 계층과는 다르며
4개의 계층은
- 응용계층
- 전송계층
- 인터넷 계층
- 네트워크 인터페이스 계층
으로 나뉘어있다.
전송 계층은 IP에 의해 전달되는 패킷의 오류를 검사하고 재 전송을 요구한다.
- 이곳에서 TCP UDP라는 두 종류의 프로토콜이 사용된다.
패킷 이란?
데이터를 보내기 위한 경로 설정을 효율적으로 하기 위해서 데이터를 여러 개의 조각들로 나누어 전송하는데
이때 해당 조각을 패킷이라 한다.
TCP vs UDP
위와 같이 신뢰성이 요구되는 애플리케이션에는 TCP를 사용하고 데이터를 빠른 속도로 전송하고자 하는 애플리케이션에는 UDP를 사용한다.
TCP의 특징
- 연결형 서비스로 가상 회선 방식을 제공
- 가상 회선 방식 : sender와 receiver를 연결하여 패킷의 논리적 경로를 배정하는 방식 (3-way handshaking)
- 3-way handshaking 과정을 통해 연결을 설정하고 4-way handshaking을 통해 해제한다.
- 흐름 제어 및 혼잡 제어
- 높은 신뢰성을 보장
- 전송속도가 UDP 보다 느리다
- 1:1 통신방식
- Full-Duplex, Point to Point 방식
UDP의 특징
- 흐흠제어가 없기 때문에 패킷이 제대로 전송되었는지 전송 도중 오류가 있었는지 확인 불가
- 파일 전송과 같은 신뢰성 보단 성능이 중시되는 경우에 사용
- 서버와 클라이언트는 1대 1, 1대 N, N대 M 등으로 연결 가능
- 데이터 그램 단위로 전송하며 크기는 65535바이트이고 크기가 초과하면 잘라서 전송한다.
References
https://madplay.github.io/post/network-tcp-udp-tcpip
https://mangkyu.tistory.com/15
'CS > Network' 카테고리의 다른 글
(Network) Domain Name System에 대해서 (1) | 2020.06.07 |
---|---|
(Network) 3way handshaking & 4way handshaking (0) | 2020.05.10 |
(Network) SSL 인증서 (0) | 2020.04.28 |
(Network) HTTPS와 SSL 인증서(2) - 공개키 (0) | 2020.04.28 |
(Network) HTTPS와 SSL 인증서(1) - 대칭키 (0) | 2020.04.28 |