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 플래그가 설정되어 있다.
같은 카테고리의 다른 글

공인 IP vs 사설 IP

공인 IP(공인 인터넷 프로토콜 주소)와 사설 IP(사설 인터넷 프로토콜 주소)는 네트워크에서 사용되는 IP 주소의 두 가지 주요 유형이다. 각각의 정의와 주요 차이점은 다음과 같다. 공인 IP (Public IP) 정의 공인 IP 주소는 인터넷 서비스 제공업체(ISP)에 의해 할당된 고유한 IP 주소로, 인터넷 상에서 다른 장치들과 직접 통신할 수 있다. 사용 위치 인터넷에 직접 연결된 모든 장치에 ...

스팀 / 자녀 보호 설정하는 방법, 해제하는 방법

스팀 / 자녀 보호 설정하는 방법, 해제하는 방법

요즘 아이들은 게임으로 논다. 멀티플레이 게임도 많으니까 혼자 논다고 볼 수는 없다. 친구들과 함께 게임을 즐긴다. 그러려면 게임을 사줘야 하는데, 아무 거나 사줄 수도 없고, 아무거나 플레이하게 할 수도 없다. 그래서 게임 판매자는 청소년에 대한 제한을 두고 있다. 그건 스팀도 마찬가지다. 스팀에는 자녀 보호라는 이름의 기능으로 아이의 게임을 제한한다. 그렇다고 뭔가 ...

네트워크 / 잘 알려진 포트, 등록된 포트, 동적 포트

포트 번호는 0~65535까지 사용 가능합니다. 이를 용도에 따라 잘 알려진 포트, 등록된 포트, 동적 포트 세 가지로 분류합니다. 관리는 IANA(Internet Assigned Numbers Authority)에서 합니다.

DLP와 DRM 차이

DLP(Data Loss Prevention)와 DRM(Digital Rights Management)은 모두 데이터 및 디지털 콘텐츠의 보호를 목적으로 하지만, 그 목표와 작동 방식에서 차이점이 있습니다. DLP는 주로 기업 내부의 데이터 보안을 강화하기 위한 솔루션이며, DRM은 디지털 콘텐츠의 저작권을 보호하고 불법 복제를 방지하는 데 사용됩니다. 두 기술은 각기 다른 목적과 적용 범위를 가지고 있지만, 모두 중요한 ...

INET과 UDS

INET과 UDS는 소켓(socket) 프로그래밍에서 사용되는 용어로, 네트워크 통신 방식의 차이를 의미합니다. 1. INET (Internet socket) INET 소켓은 TCP/IP 프로토콜을 통해 네트워크상의 통신을 지원하는 소켓입니다. 원격 컴퓨터와의 통신에 사용됩니다. IP 주소와 포트 번호를 사용합니다. 일반적인 인터넷 및 네트워크 응용 프로그램(예: HTTP 웹 서버, FTP 서버 등)에서 사용됩니다. 예시: 192.168.0.100:8080 2. UDS (Unix Domain Socket) UDS는 UNIX 운영체제에서 로컬 프로세스 간 ...

하이패스 사용 내역 확인하고 출력하는 방법

하이패스 사용 내역 확인하고 출력하는 방법

현대카드의 하이패스를 사용하고 있는데 카드 명세서에는 금액만 찍힌다. 그래서 언제 어디에서 사용한 것인지 알 수가 없다. 정확히 언제 어디서 사용한 것인지 알아야 한다면, 그리고 건별 영수증이 필요하다면 고속도로 통행료 홈페이지로 가자. 원하는 정보를 얻을 수 있다. 회원 가입을 하고... 카드 등록을 한다. 에서... 조건을 지정하여 내역을 조회할 수 있다. 영수증이 필요하면 선택을 한 후 ...

TCP vs UDP

TCP(Transmission Control Protocol)와 UDP(User Datagram Protocol)는 주요 통신 프로토콜로, 각각 다른 방식으로 데이터를 전송한다. TCP (Transmission Control Protocol) 특징 연결 지향(Connection-oriented) TCP는 통신을 시작하기 전에 연결을 설정한다. 이 연결은 3-way handshake 과정을 통해 이루어진다. 신뢰성(Reliability) 데이터 전송의 신뢰성을 보장한다. 데이터 패킷이 손실되거나 손상되면 재전송한다. 순서 보장(Ordering) 패킷이 순서대로 도착하도록 보장한다. 수신자는 전송된 데이터가 원래의 순서대로 도착하는 것을 확인할 ...

페이팔 / 카카오뱅크 연결하는 방법

페이팔 / 카카오뱅크 연결하는 방법

최근 환율이 많이 올랐다. 그래서 페이팔에 있는 달러를 원화로 이체하기로 했다. 예전에 우리은행과 국민은행을 연결해두었는데, 최근에는 카카오뱅크를 주로 사용해서 카카오뱅크를 추가하고 이체하기로 정했다. 일단 할 것은 카카오뱅크를 페이팔 지갑에 추가하는 것인데... 많이 편해졌다. 은행계좌 연결에서 ka라고 치면... KAKAOBANK가 바로 나온다. KAKAOBANK를 선택하고... 계좌 유형을 예금으로 선택한 후, 계좌번호는 숫자만 넣는다. 동의 후 연결을 클릭하면 연결 ...

자동차 / 타이어 / 사이즈(규격) 보는 방법

자동차 / 타이어 / 사이즈(규격) 보는 방법

타이어 규격은 타이어의 크기, 형태, 성능 특성을 나타내는 다양한 숫자와 문자로 구성된 코드입니다. 이 코드는 타이어의 측면에 표기되어 있으며, 이를 통해 적절한 타이어를 선택할 수 있습니다. 타이어 규격을 이해하는 것은 차량의 안전과 성능을 최적화하는 데 매우 중요합니다. 일반적인 타이어 규격 표기법을 예로 들어 설명하겠습니다. 타이어 규격 예시 예시 : P215/65R15 95H 각 부분을 ...

ICAP(Internet Content Adaptation Protocol) 서버

ICAP(Internet Content Adaptation Protocol) 서버는 HTTP 요청과 응답을 중간에서 가로채어 콘텐츠를 검사하거나 변경할 수 있도록 하는 서버입니다. 주로 웹 프록시 서버와 연동하여 바이러스 검사, 콘텐츠 필터링, 보안 정책 적용 등의 용도로 사용됩니다. ICAP 서버의 주요 용도 바이러스 검사 및 보안 검사: 웹 콘텐츠가 사용자에게 도달하기 전에 악성 코드나 바이러스를 탐지하고 차단합니다. 콘텐츠 필터링: ...