TCP / UDP

WangyuKim·2021년 8월 30일
0

Network

목록 보기
1/7

- TCP : Transmission Control Protocol
(전송제어 프로토콜)
: 신뢰성이 요구되는 애플리케이션에서 사용
: 네트워크에 연결된 컴퓨터에서 실행되는 프로그램 간, 바이트 스트림(데이터, 메시지, 세그먼트_블록단위)을 안정적으로, 순서대로, 에러없이 교환할 수 있게 한다.

- UDP : User Datagram Protocol
(사용자 데이터그램 프로토콜)
: 간단한 데이터를 빠른 속도로 전송하고자 하는 애플리케이션에서 사용
: IP데이터그램을 캡슐화하여, 연결설정 없이 전송함

  • IP : Internet Protocol
    • IP 주소에 따라 다른 네트워크 간 패킷의 전송; 경로제어를 위한 규약
      => 다른 네트워크 간의 데이터 전송을 가능하게 한다.
    • 패킷이 발신된 순서대로 도착하는 것을 보증하지 않는다.
    • 네트워크 주소와 호스트 주소의 정의에 의한 네트워크의 논리적 관리 등을 담당한다.
  • IP데이터그램
    • IP는 각기 개별적으로 전송되는 데이터그램이라는 패킷 형태로 데이터를 전송한다.
    • 데이터그램은 송신자IP주소, 수신자IP주소, 버전, 헤더길이, 서비스타입 등으로 구성된다.
  • 비교

  • TCP의 특징
    (1) 연결형 서비스
    연결형 서비스로, 가상회선 방식을 제공한다.
    - 3-way handshaking 을 통해 연결을 설정
    - 4-way handshaking 을 통해 연결을 해제
    (2) 흐름제어(Flow control)
    - 데이터 처리 속도를 조절하여 수신자의 버퍼 오버플로우를 방지
    - 송신하는 곳에서 너무 많은 데이터를 너무 빨리 보내 수신하는 곳에서 문제가 발생되는 것을 막는다.
    - 수신자가 윈도우 크기(Window Size) 값을 통해 수신량을 정할 수 있다.
    (3) 혼잡제어(Congestion control)
    - 네트워크 내의 패킷 수가 과도하게 증가하지 않도록 방지
    - 정소의 소통량이 너무 많으면 패킷 전송량을 조정하여 혼잡붕괴현상이 일어나는 것을 막는다.
    (4) 신뢰성이 높은 정송(Reliable transmission)
    - Dupack-based retransmission
    - 정상적인 상황에서는 ACK값이 연속적으로 전송되어야 한다.
    - ACK값이 중복으로 올 경우 패킷 이상을 감지하고 재전송을 요청한다.
    - Timeout-based retransmission
    - 일정시간동안 ACK 값이 수신을 못할 경우 재전송을 요청한다.
    (5) 전이중, 점대점 방식
    - 전이중(Full-Duplex)
    - 전송이 양방향으로 동시에 일어날 수 있다.
    - 점대점(Point to Point)
    - 각 연결이 정확히 2개의 종단점을 가지고 있다.
    => 멀티캐스팅(다대다)과 브로드캐스팅(일대일, 일대다)을 지원하지 않는다.

  • UCP의 특징
    (1) 비연결형 프로토콜
    (2...) TCP의 반대임
    (3) 사용예 : DNS
    - 어떤 호스트 네임의 IP 주소를 찾을 필요가 있는 프로그램은, DNS서버로 호스트 네임을 포함한 UDP 패킷을 보낸다.
    -> 이 서버는 호스트의 IP주소를 포함한 UDP 패킷으로 응답한다.

0개의 댓글