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 |