TCP와 UDP

c# 2023. 10. 16. 10:07
728x90

https://en.wikipedia.org/wiki/OSI_model

 

OSI model - Wikipedia

From Wikipedia, the free encyclopedia Model of communication of seven abstraction layers The Open Systems Interconnection model (OSI model) is a conceptual model from the International Organization for Standardization (ISO) that "provides a common basis fo

en.wikipedia.org

>전송 계층(Transport Layer)

: 네트워크 지점간의 데이터를 안정적으로 프로세스에 전달하는 계층

>TCP(Transmission Control Protocol)

: 데이터를 순차적, 안정적으로 전송하기 위한 표준 프로토콜 중 하나로, OSI 모델에서 전송 계층(Transport Layer)에 해당하는 연결 지향적 프로토콜이다. 데이터가 손실되지 않고 정확하게 전달되어야 하므로 신뢰성 있는 통신을 제공하는 곳에 사용된다.

>TCP 특징

1. 연결 지향 프로토콜 (Connection - Oriented Protocol)

: 통신을 위해 연결을 설정하고 해제하는 과정을 가지며, 이 연결 설정 및 해제 절차는 통신의 신뢰성을 보장한다. 가상 회선 방식

2. 신뢰성 있는 전송 (Reliable Transmission)

: TCP는 데이터를 안정적으로 전송하는 것을 목표로 하며, 데이터를 전송할 때, 수신 측에서 각 데이터 세그먼트를 확인하고 손실된 데이터를 재전송하며, 중복된 데이터를 거부한다.

3. 흐름 제어 (Flow Control)

: TCP는 수신 측의 데이터 처리 속도에 따라 데이터를 전송하므로 네트워크 혼잡을 방지하고 과부하를 예방한다

수신 측은 송신 측에 대해 자신의 수용 가능한 버퍼 크기를 통보한다

4. 오류 감지 및 복구 (Error Detection and Recovery)

: 오류 감지 기능을 내장하고 오류가 발생하면 해당 데이터를 재전송하여 데이터의 무결성을 보존한다

5. 순서 보장 (Sequential Data Delivery)

: 데이터를 송신한 순서대로 수신측에 전달한다. 데이터의 순서는 응용프로그램에 중요한 역할을 한다

6. 전이중(Full-Duplex), 점대점(Point to Point) 방식

: 전송이 양방향으로 동시에 일어날 수 있고, 각 연결이 2개의 종단점을 가지고 있다

7. 연결 과정(3-way handshake)

: Client -> Sever /Server -> Client /Client -> Server

8. 연결 해제(4-way handshake)

: Client -> Server /Server -> Client /Server -> Client /Client -> Server

 

>UDP(User Datagram Protocol)

: 데이터를 전송하는 비연결형 프로토콜, 데이터의 처리 속도가 빠르며 실시간 데이터 스트리밍, 음성 통화 등에서 주로 사용된다

>UDP 특징

1. 비연결 지향 프로토콜(Connectionless Protocol)

: 연결 설정 및 해제 절차를 가지지 않는다. 연결을 설정하고 해제하는 절차가 없으므로 데이터를 빠르게 전송할 수 있다

2. 신뢰성 없는 전송(Unrelable Transmission)

: 데이터 전송 시 신뢰성을 제공하지 않으며 데이터의 순서나 손실 여부와 상관없이 그대로 데이터를 전송한다

3. 패킷 교환 방식

: 데이터를 데이터그램(단일 패킷) 단위로 전송한다. 서로 독립적으로 처리된다

4. 낮은 오버헤더(Low Overhead)

: UDP는 TCP보다 더 적은 프로토콜 오버헤드를 가지므로 데이터를 빠르게 전송하는 데 유용한다

 

>TCP UDP 차이

: TCP는 연결형 서비스이고  UDP는 비연결형 서비스로, 순서와 수신 여부를 확인하지 않는 UDP가 TCP보다 빠르며 부하가 적다는 장점이 있으나 안정적인 데이터 전송을 보장하지 않는다. TCP는 신뢰성이 중요한 서비스에 사용되고 UDP는 연속성이 중요한 음성 통화나 실시간 스트리밍 서비스 등에 적합하다

 

 

728x90
Posted by 바르마스
,