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 플래그가 설정되어 있다.
같은 카테고리의 다른 글
버추얼박스 / 호스트에서 게스트로, 게스트에서 호스트로 파일 전송하는 방법

버추얼박스 / 호스트에서 게스트로, 게스트에서 호스트로 파일 전송하는 방법

사용하는 PC에 영향을 주지 않고 이런 저런 테스트를 하기 위해 가상 머신을 만듭니다. 호스트와 게스트가 독립적으로 작동하는 것이죠. 하지만 독립적이라는 게 항상 편한 것은 아닙니다. 별개의 머신이라는 것이 불편할 때도 있습니다. 대표적인 예가 파일 전송입니다. 호스트에 있는 파일을 게스트로, 게스트에 있는 파일을 호스트로 옮기는 게 쉽지만은 않습니다. 하지만 방법이 없는 것은 ...

아이피타임(ipTIME) 공유기 / 관리자 아이디 비밀번호 변경하는 방법

아이피타임(ipTIME) 공유기 / 관리자 아이디 비밀번호 변경하는 방법

인터넷 공유기는 외부 네트워크와 내부 네트워크를 연결해주는 통로입니다. 따라서 보안은 당연히 중요합니다. 보안을 강화하는 좋은 방법 중의 하나는 관리자 계정 아이디와 비밀번호를 주기적으로 변경하는 것입니다. 아이피타임(ipTIME) 공유기의 관리자 아이디와 비밀번호를 어떻게 변경하는지 알아보겠습니다. 공유기 관리 페이지에 접속하고 로그인합니다. 설정을 변경하지 않았다면 URL은 192.168.0.1, 로그인 이름은 admin, 로그인 암호는 admin입니다. 를 클릭합니다. 왼쪽 메뉴에서 [고급 설정 - ...

구글 포토 / 휴지통 비우는 방법

구글 포토 / 휴지통 비우는 방법

구글 포토에서 사진을 지우면 휴지통으로 이동합니다. 그리고 일정 기간이 지나면 완전히 삭제됩니다. 만약 지금 즉시 사진을 완전히 삭제하고 싶다면 휴지통을 비워야 합니다. 안드로이드 구글 포토에서, 그리고 웹용 구글 포토에서 휴지통 비우는 방법을 알아봅니다. 안드로이드 구글 포토 왼쪽 위의 메뉴바를 누릅니다. 을 누릅니다. 점 세 개 아이콘을 누릅니다. 를 누릅니다. 웹용 구글 포토 웹브라우저로 구글 포토에 접속합니다. 왼쪽 위에 있는 ...

Brackets / 언어 변경하는 방법

Brackets / 언어 변경하는 방법

Brackets는 다국어를 지원합니다. 원하는 언어로 사용할 수 있습니다. 언어 변경은 다음 순서로 합니다. 상단 메뉴에서 디버그(Debug)를 클릭하고 언어 변경(Switch Language)을 클릭합니다. 언어를 선택하고 Brackets 재시작(Reload Brackets)를 클릭합니다. 브라켓이 재시작 되면서 언어가 변경됩니다.

워드프레스 / 플러그인 / Extended User Search In WP-Amin / 이름으로도 사용자 검색 가능하게 하는 플러그인

워드프레스 / 플러그인 / Extended User Search In WP-Amin / 이름으로도 사용자 검색 가능하게 하는 플러그인

이 Theme Buster인 경우... 사용자 목록에 이름이 AAA가 보여도 AAA로 검색하면... 검색이 되지 않는다. 을 AAA로 설정하면... 검색이 된다. 즉, 검색이 가능한 이름은 으로 검색이 되게 하려면 Extended User Search In WP-Amin 플러그인을 사용하면 된다. 특별한 설정을 필요 없고, 플러그인을 ...

당구 / 프레임 포인트, 레일 포인트

당구 / 프레임 포인트, 레일 포인트

당구대 둘레에 있는 하얀 점들을 포인트라고 합니다. 가로로 9개가 있고 가로를 8개로 나눕니다. 세로로는 5개가 있고 세로를 4개로 나눕니다. 이 포인트를 이용하여 어떻게 칠 지를 계산하고, 많은 당구 시스템도 이 포인트를 기준으로 설계되어 있습니다. 당구 시스템을 안내할 때 프레임 포인트와 레일 포인트라는 말이 나오는데요... 수구를 포인트를 향해 치는 걸 프레임 포인트를 향해 친다고 ...

당구 / 메모

당구 / 메모

임계각 파란색을 따라 치면 회전을 더 주든 덜 주든 3쿠션 지점이 비슷하다. ①번처럼 파란색보다 큰 각인 경우 회전을 많이 줄수록 3쿠션 지점이 길어진다. ②번처럼 파란색보다 작은 각인 경우 회전을 덜 줄수록 3쿠션 지점이 길어진다.  

워드프레스 / 플러그인 / 자동 업데이트 활성화 비활성화하는 방법

워드프레스 / 플러그인 / 자동 업데이트 활성화 비활성화하는 방법

워드프레스 플러그인에는 자동 업데이트 기능이 있다. 새 버전이 나오면 업데이트를 하고 관리자에게 메일을 보내준다. 커스터마이징 없이 그대로 사용하고 있다면 큰 문제가 없으나, 무언가 수정을 하거나 덧붙인 게 있다면 제대로 작동하지 않을 수 있다. 따라서 업데이트를 해도 문제가 없는지 테스트를 해보고 진행하는 것이 좋다. 그러기 위해서는 일단 자동 업데이트를 꺼야 한다. 플러그인 목록에 가면 ...

MobaXTerm / 사용법

MobaXTerm / 사용법

다운로드 MobaXTerm 다운로드 : https://mobaxterm.mobatek.net/download.html Home Edition과 Professional Edition 두 가지가 있고, Home Edition은 기능 제한이 있는 무료이다. Download now를 클릭한다. Portable edition은 설치가 필요 없고, Installer edition은 설치를 해야 한다. 원하는 것을 다운로드한다. SSH 기본 MobaXTerm을 실행하고, 을 클릭한다. SSH를 클릭한다. 접속에 필요한 정보를 입력하고, 를 클릭하면... 새 탭이 생기면서 연결된다. 로그인하면 아래와 같은 화면이 나온다. 로그아웃하면 세션이 끊기고, 엔터키를 누르면 ...

마우스 / 폴링 레이트(Polling Rate)

마우스 폴링 레이트는 마우스가 컴퓨터에 자신의 위치를 보고하는 빈도를 나타내는 중요한 성능 지표입니다. 이 글에서는 마우스 폴링 레이트의 정의, 일반적인 값, 게임 및 일상 사용에서의 중요성, 설정 방법, 그리고 폴링 레이트가 시스템에 미치는 영향을 상세히 설명합니다. 마우스 폴링 레이트란 무엇인가? 폴링 레이트(Polling Rate)는 마우스가 컴퓨터에 자신의 위치 정보를 얼마나 자주 보고하는지를 나타냅니다. ...