🌱 기초 네트워크
TCP와 UDP의 차이
쉽게 이해하기
택배를 보낼 때 '등기'와 '일반우편'을 선택하는 것과 비슷해요. TCP는 등기처럼 배송 확인을 하고 순서대로 정확히 전달하지만 시간이 좀 걸려요. UDP는 일반우편처럼 빠르게 보내지만 중간에 분실될 수도 있고 순서가 바뀔 수도 있죠.
핵심 정리
데이터를 전송하는 두 가지 방식, TCP는 확실하게 UDP는 빠르게 보내요.
자세히 알아보기
인터넷에서 데이터를 주고받을 때 사용하는 두 가지 주요 프로토콜이에요. TCP(Transmission Control Protocol)는 '신뢰성'을 중시해요. 데이터가 제대로 도착했는지 확인하고, 손실되면 다시 보내고, 순서가 뒤바뀌면 재정렬해줘요. 그래서 이메일, 웹페이지 로딩, 파일 다운로드처럼 정확성이 중요한 곳에 사용돼요.
UDP(User Datagram Protocol)는 '속도'를 중시해요. 확인 절차 없이 바로바로 데이터를 보내기 때문에 TCP보다 훨씬 빨라요. 대신 데이터가 중간에 사라질 수도 있고 순서가 뒤바뀔 수도 있어요. 실시간 화상회의, 온라인 게임, 유튜브 라이브 스트리밍처럼 속도가 더 중요한 곳에 사용돼요.
실무에서는 상황에 맞게 선택해요. 예를 들어 줌(Zoom) 회의는 UDP를 써서 실시간 음성과 영상을 빠르게 전송하고, 채팅 메시지는 TCP를 써서 정확하게 전달해요. 넷플릭스는 처음 영상을 받아올 때는 TCP로 정확히 받고, 재생 중에는 UDP로 빠르게 스트리밍해요.
개발자가 앱을 만들 때 '이 기능은 정확성이 중요한가, 속도가 중요한가'를 판단해서 TCP와 UDP 중 하나를 선택하게 돼요. 대부분의 경우 프레임워크나 라이브러리가 자동으로 적절한 프로토콜을 선택해주지만, 성능 최적화가 필요할 때는 직접 선택할 수도 있어요.