본문 바로가기

Etc./APM

TCP / UDP

TCP와 UDP는 Transport Layer의 대표적인 프로토콜이다.

Transport Layer는 End Point간 신뢰성 있는 데이터 전송을 담당하는 계층인데, 2가지 역할을 한다.

 

1) 신뢰성: 데이터를 순차적, 안정적으로 전달

2) 전송: 포트 번호에 해당하는 프로세스에 데이터를 전달

 

만약 Transport Layer가 없다면? 

1. 데이터의 순차 전송이 원활이 진행되지 않을 수 있다. ex. 1-2-3 데이터가 2-3-1로 전달

2. 송수신자간의 데이터 처리 속도 차이로 흐름 문제가 생길 수 있다. 

3. 네트워크의 문제로 혼잡 문제가 발생할 수 있다.

 

결과로 데이터의 손실이 발생할 수 있다. 

ex) Hi my name is Kyuri ➡️  Hi name ri

 

그래서 필요한 것이 TCP, Transmission Control Protocol 이다. 

TCP는 신뢰성있는 데이터 통신을 가능하게 해주는 프로토콜이다.

3 way - handshake를 통한 connection 연결을 하며 양방향 통신이다.

 

단점은 전송의 신뢰성은 보장하지만 매번 Connection을 연결하기 때문에 시간 손실이 발생하고, 조금만 손실해도 재전송을 한다.

 

이 단점을 보안해주는 것이 UDP, User Datagram Protocol 이다.

TCP보다 신뢰성이 떨어지지만 전송 속도가 일반적으로 빠르고, 3 way-handshake를 하지 않는 connectionloss이다.

영상처리와 같은 비교적 데이터의 신뢰성이 중요하지 않을 때 사용한다.

 

참고) https://www.youtube.com/watch?v=ikDVGYp5dhg 

 

'Etc. > APM' 카테고리의 다른 글

[APM] Message Queue  (0) 2023.02.27
[DB] 프로시저 (procedure)  (0) 2023.01.30
[APM] APM 스카우터  (0) 2023.01.27
OSI 7계층  (1) 2023.01.25
TCP/IP 소켓 프로그래밍 기초 지식  (0) 2023.01.25