TCP 통신과 UDP 통신의 개념과 차이점!
게임 프로젝트를 진행하며 UDP 통신에 대한 연구를 진행하였지만(결국 적용엔 실패하였지만) 정작 TCP와 UDP에 대해 설명해보라고 하면
에... TCP는 신뢰할 수 있는 정보인 대신 비교적 느리구... UDP는 신뢰성이 부족한 대신 빠릅니다...! 밖에 대답할 수 없어서 자료를 이것 저것 찾아봤다.
TCP(Transmission Control Protocol)
신뢰할 수 있지만 복잡한 전송 계층 프로토콜. IP에 연결 지향 기능 및 신뢰성을 추가한다.
TCP는 신뢰할 수 있는 스트림 전달 서비스로, 중복되거나 손실된 데이터 없이 한 호스트에서 전송한 데이터 스트림을 다른 호스트로 전다할 수 있도록 보장한다. 패킷 전송은 신뢰할 수 없으므로, 재전송을 사용하는 긍정 수신확인이라고 하는 기술을 사용하여 패킷 전송의 신뢰성을 보장한다. 이 기본 기술을 사용하려면 수신인이 데이터 수신 시 수신확인 메시지로 응답해야 한다.
발신인은 전송한 각 패킷의 레크드를 보존하고 다음 패킷을 전송하기 전에 수신확인을 기다린다. 또한 패킷 전송 당시의 타이머도 보존하여 타이머가 만료되면 패킷을 다시 전송한다. 타이머는 패킷이 손실되었거나 손상되었을 경우 필요하다.
3 Way Handshake
TCP가 연결지향적인 특성을 가지게 해주는 과정이 3 way handshake
ACK : 승인을 서명하거나, 응답을 보내기 위해, 통신 프로토콜의 일부로서 통신 프로세서나 컴퓨터 사이를 지나가는 신호
SYN : TCP가 통신을 연결할 때 쓰는 flag
UDP(User Datagram Protocol)
비연결성(따라서 신뢰할 수 없음)전송 프로토콜이다. UDP는 오류 검사를 거의 수행하지 않으며 호스트 간 통신 대신 프로세스 간 통신을 제공하는 것 이외에 IP 서비스에 아무것도 추가하지 않는다.
UDP는 최소한의 오버헤드가 발생하는 단순 프로토콜이다. 따라서 프로세스에서 소규모의 메시지를 전송하려고 하며 신뢰성이 중요하지 않은 경우에 UDP를 사용할 수 있다. UDP를 사용하여 메시지를 전송할 경우 TCP를 사용하는 경우보다 시간이 덜 걸린다.
멀티미디어 및 멀티캐스팅 애플리케이션에 편리한 프로토콜
UDP 사용분야
- 인터넷 전화
- 온라인 게임
- 영상 스트리밍
(내가 이해한대로) 한번 그려보았다.
이런 느낌인가... 하구...
말할 때 마다 상대가 듣고있는지 확인하고 대꾸 없으면 대꾸 할 때까지 찔러보는 느낌
친한 친구 단톡방 st
요약
TCP : 신뢰성있다, 느리다
UDP : 빠르다, 정보의 손실이 있을 수 있다
TCP가 신뢰성 있고 느린 요인 : 3 way handshake
참고자료
https://www.ibm.com/docs/ko/rtw/9.0.1?topic=transports-sockets-overview
'취준 > 면접준비' 카테고리의 다른 글
컴퓨터 그래픽스 - 애니메이션 (0) | 2022.06.28 |
---|---|
컴퓨터 그래픽스 - 렌더링 (0) | 2022.06.28 |
컴퓨터 그래픽스 응용분야 XR(VR, AR, MR) (0) | 2022.06.27 |
DNS(Domain Name System) 도메인 네임 시스템 (0) | 2022.06.27 |
인터프리터 언어와 컴파일 언어의 차이 (0) | 2022.06.22 |