TCP vs UDP

TCP(Transmission Control Protocol)와 UDP(User Datagram Protocol)는 주요 통신 프로토콜로, 각각 다른 방식으로 데이터를 전송한다.

TCP (Transmission Control Protocol)

특징

  • 연결 지향(Connection-oriented)
    TCP는 통신을 시작하기 전에 연결을 설정한다. 이 연결은 3-way handshake 과정을 통해 이루어진다.
  • 신뢰성(Reliability)
    데이터 전송의 신뢰성을 보장한다. 데이터 패킷이 손실되거나 손상되면 재전송한다.
  • 순서 보장(Ordering)
    패킷이 순서대로 도착하도록 보장한다. 수신자는 전송된 데이터가 원래의 순서대로 도착하는 것을 확인할 수 있다.
  • 흐름 제어(Flow control)
    송신자와 수신자 간의 데이터 전송 속도를 조절하여 수신자가 데이터를 처리할 수 있도록 한다.
  • 혼잡 제어(Congestion control)
    네트워크 혼잡을 피하기 위해 송신 속도를 조절한다.

용도

  • 웹 브라우징(HTTP/HTTPS)
  • 이메일(SMTP, IMAP, POP3)
  • 파일 전송(FTP)
  • 원격 서버 접속(SSH, Telnet)

UDP (User Datagram Protocol)

특징

  1. 비연결 지향(Connectionless)
    UDP는 연결 설정 없이 데이터를 전송한다.
  2. 비신뢰성(Unreliable)
    데이터 전송의 신뢰성을 보장하지 않는다. 데이터 패킷이 손실되거나 손상되어도 재전송하지 않는다.
  3. 순서 미보장(No ordering)
    패킷의 순서를 보장하지 않는다. 수신자는 패킷이 순서대로 도착하지 않을 수 있다.
  4. 단순한 헤더 구조(Simple header)
    TCP에 비해 UDP의 헤더 구조가 단순하여 오버헤드가 적다.
  5. 빠른 속도(Low latency)
    TCP보다 전송 속도가 빠르고 지연 시간이 적다.

용도

  • 실시간 스트리밍(Media streaming)
  • 온라인 게임
  • VoIP(Voice over IP)
  • 방송(Broadcast)
  • DNS(Domain Name System) 조회

3-way Handshake는 TCP(Transmission Control Protocol)에서 연결을 설정하기 위해 사용하는 절차이다. 이 과정은 세 개의 단계로 이루어지며, 클라이언트와 서버 간의 신뢰할 수 있는 통신을 보장하기 위한 중요한 메커니즘이다. 3-way Handshake 과정은 다음과 같다.

  1. SYN (Synchronize)
    클라이언트가 서버에 연결 요청을 보낸다.
    이 요청에는 클라이언트의 초기 시퀀스 번호(ISN, Initial Sequence Number)가 포함된다.
    패킷의 플래그 필드에 SYN(Synchronize) 플래그가 설정되어 있다.
  2. SYN-ACK (Synchronize-Acknowledge)
    서버는 클라이언트의 SYN 요청을 수신하고, 이를 확인하는 응답을 보낸다.
    응답에는 서버의 초기 시퀀스 번호(ISN, Initial Sequence Number)와 클라이언트의 시퀀스 번호에 대한 확인 응답(ACK, Acknowledgment)이 포함된다.
    패킷의 플래그 필드에 SYN 및 ACK 플래그가 설정되어 있다.
  3. ACK (Acknowledge)
    클라이언트는 서버의 SYN-ACK 응답을 수신하고, 이를 확인하는 응답을 보낸다.
    이 응답에는 클라이언트의 시퀀스 번호와 서버의 시퀀스 번호에 대한 확인 응답(ACK, Acknowledgment)이 포함된다.
    패킷의 플래그 필드에 ACK 플래그가 설정되어 있다.
같은 카테고리의 다른 글

워드 프로세서 - 뜻, 주요 기능, 소프트웨어

워드 프로세서의 정의와 역사 워드 프로세서(word processor)는 텍스트 문서를 작성, 편집, 형식화하고 출력할 수 있는 소프트웨어 응용 프로그램입니다. 워드 프로세서는 글쓰기와 문서 작성 작업을 단순화하고 효율적으로 만들기 위해 다양한 기능을 제공합니다. 워드 프로세서의 개념은 1960년대에 전자 타자기의 발전과 함께 등장했습니다. 초기 워드 프로세서 프로그램 중 하나인 IBM의 "타입라이터"는 1970년대에 출시되었고, 이후 ...

마우스 / DPI 완벽 가이드

DPI는 마우스의 중요한 사양 중 하나로, 특히 게임, 그래픽 디자인, 세밀한 작업을 할 때 매우 중요합니다. DPI가 무엇인지, 마우스 성능에 어떤 영향을 미치는지, 다양한 DPI 설정의 장단점에 대해 알아보겠습니다. DPI란 무엇인가? DPI(Dots Per Inch)는 마우스의 감도를 측정하는 단위입니다. DPI는 마우스가 물리적으로 1인치(2.54cm) 움직일 때 화면에서 커서가 몇 픽셀 움직이는지를 나타냅니다. 예를 들어, ...

디아블로 3 / 구입하는 방법

디아블로 3 / 구입하는 방법

블리자드의 디아블로 1과 디아블로 2를 즐겼었습니다. 아주 오래 전 얘기네요. 그러다 문득 디아블로 3이 해보고 싶어졌습니다. 일정 레벨까지 무료 플레이가 가능하다고 해서 설치하고 해보았는데... 재미있네요... 그래서 구입을 했습니다. 출시된 지 꽤 되었기에 가격도 저렴하고 해서... 구입하면서 그 과정을 스크린샷으로 찍었습니다. 스타크래프트나 오버워치 등 블리자드의 다른 게임을 구입하는 것도 과정이 같아서, 블리자드 ...

구글 포토 / 콜라주 만드는 방법

구글 포토 / 콜라주 만드는 방법

콜라주는 보통 PC에서 포토스케이프로 만들어요. 화면도 크고 마우스로 조작하는 게 편해요. 불편한 건 스마트폰의 사진을 PC로 옮겨야 한다는 거에요. 사진을 대부분 폰으로 찍는데 말이죠. 그래서 콜라주를 스마트폰에서 만드는 방법을 찾아봤는데, 가까운데 있었네요. 구글 포토에서 만들 수 있습니다. 하단의 어시스턴스를 누른 후 상단에서 콜라주를 누르세요. 사진을 2-9개 선택하세요. 선택한 사진의 개수에 맞게 콜라주가 만들어져요. 필터 효과도 줄 ...

스프레드시트 - 뜻, 주요 기능, 소프트웨어

스프레드시트의 정의와 역사 스프레드시트(spreadsheet)는 행과 열의 격자로 이루어진 데이터를 관리하고 분석하는 소프트웨어 도구입니다. 각 셀은 숫자, 텍스트 또는 수식을 포함할 수 있으며, 이러한 셀을 사용하여 복잡한 계산을 수행하고 데이터를 시각적으로 표현할 수 있습니다. 스프레드시트의 개념은 1970년대 후반에 전자 계산기의 기능을 확장하기 위해 처음 도입되었습니다. 가장 유명한 초기 스프레드시트 프로그램 중 하나는 ...

안드로이드 / 앱 / 카카오뱅크 / 지문으로 이체, 로그인 가능하게 등록, 설정하는 방법

안드로이드 / 앱 / 카카오뱅크 / 지문으로 이체, 로그인 가능하게 등록, 설정하는 방법

스마트폰이나 스마트폰 앱에 로그인할 때 지문을 사용하면 상당히 편합니다. 비밀번호나 패턴보다 보안 측면에서 좋은지는 잘 모르겠지만, 편한 건 맞습니다. 지문 사용이 가능한 스마트폰이라면 카카오뱅크도 지문으로 본인 인증이 가능합니다. 카카오뱅크 앱을 설치할 때 설정할 수 있는데, 그 때 사용 설정을 하지 않아도 변경이 가능합니다. 카카오뱅크 앱을 실행하고, 왼쪽 위에 있는 선 세 개 ...

엣지 / 암호 저장 설정하는 방법

엣지 / 암호 저장 설정하는 방법

마이크로소프트 엣지에는 암호 저장 기능이 있다. 상황에 따라 유용할 수도 있고 위험할 수도 있다. 암호 저장 기능의 사용 여부를 설정하는 방법은 다음과 같다. 오른쪽 위의 점 세 개 아이콘을 클릭하고 을 클릭한다. 를 클릭한다. 빨간 박스 부분에서 암호 저장 기능 사용 여부를 정할 수 있다. 기존에 저장된 암호 목록에서는 수정, 삭제 등을 할 ...

한화손해보험 / 실비보험 / 보험금 앱으로 청구하여 받는 방법

한화손해보험 / 실비보험 / 보험금 앱으로 청구하여 받는 방법

한화손해보험에 실비보험을 들어둔 게 있습니다. 병원에 잘 가지 않아서 실비보험의 드는 게 의미가 있나 고민을 했었는데, 나이가 들고 병원을 다니게 되니 잘 가입했다는 생각이 듭니다. 물론 계속 건강해서 보험금을 아까워하는 게 더 좋은 거지만요. 실비보험은 실제로 지출한 병원비를 보장 받는 건데, 보험금을 받으려면 보험회사에 청구를 해야 합니다. 병원에서 보험사로 자동으로 청구를 ...

한화손해보험 / 실비보험 / 보장 내용 확인하는 방법

한화손해보험 / 실비보험 / 보장 내용 확인하는 방법

한화손해보험의 실비보험에 가입되어 있다. 손을 다쳐 체외충격파 치료를 받으려고 하는데, 실비보험 대상인지 확인하기 위해 전화로 문의를 했다. 보상 대상이 맞긴 하지만 정확한 것은 심사를 해야 한다는 답변을 들었고, 금액 한도와 횟수 등에 대한 것도 들었다. 그런데, 메모를 하지 않아 금액 한도와 횟수를 잊어버렸다. 전화 문의는 연결이 쉽지 않고, 또 잊어버릴 수 ...

버추얼박스 / 공유 폴더 만드는 방법

버추얼박스 / 공유 폴더 만드는 방법

버추얼박스에서 호스트와 게스트 간 파일을 주고 받는 방법 중 가장 쉬운 것은 드래그 앤 드롭을 이용하는 것입니다. 그런데 단점이 있습니다. 게스트에서 수정한 파일을 호스트에서 사용하려면 또 옮겨야 하고, 호스트에서 수정한 파일을 게스트에서 사용하려면 또 옮겨야 합니다. 호스트와 게스트가 동시에 사용하면서 수정이 잦다면, 드래그 앤 드롭보다 공유 폴더를 이용하는 것이 더 ...