728x90
반응형
UDP(User Datagram Protocol, 사용자 데이터그램 프로토콜)
- 비연결형 프로토콜
- 신뢰성이 없는 전송 프로토콜
- IP 데이터그램을 캡슐화하여 보내는 방법과 연결 설정을 하지 않고 보내는 방법을 제공
- 흐름제어, 오류제어 또는 손상된 세그먼트의 수신에 대한 재전송을 하지 않으며, 이 모두가 사용자 프로세스의 몫임
- UDP가 행하는 것은 포트들을 사용하여 IP 프로토콜에 인터페이스를 제공하는 것
- 코드가 간단할 뿐만 아니라 TCP 처럼 초기설정(initial setup)에서 요구되는 프로토콜보다 적은 메시지가 요구됨
- 흐름제어를 하지 않기 때문에 전송 속도를 최대한 빠르게 할 수 있음
- 수신자와 송신자 간의 handshaking이 없는 connectionless 성질을 가짐
- 예를 들어, 유튜브 동영상 같은 스트리밍 어플리케이션은 신뢰성보다 속도가 중요하므로 UDP를 사용하고, 또한 DNS나 SNMP도 UDP를 사용함
- DNS
- 어떤 호스트 네임의 IP 주소를 찾을 필요가 있는 프로그램은 DNS 서버로 호스트 네임을 포함한 UDP 패킷을 보냄
- 이 서버는 호스트의 IP 주소를 포함한 UDP 패킷으로 응답함
- 사전에 설정이 필요하지 않으며 그 후에 해제가 필요하지 않음
- DNS
TCP(Transmission Control Protocol, 전송제어 프로토콜)
- 애플리케이션에서 보낸 데이터를 신뢰성 있게 수신 측에 전송을 보장하는 프로토콜
- point-to-point : 하나의 송신 측과 하나의 수신 측이 통신하는 1:1 통신
- reliable : 신뢰성 있는 데이터 전송을 보장
- pipelined : TCP 흐름 제어와 혼잡 제어가 window size를 설정
- full duplex(전이중 통신) : 쌍방향 통신이 가능
- connection-oriented : 연결 지향적임
- flow control : 흐름 제어함
- congestion control : 혼잡 제어함
- 신뢰성이 없는 인터넷을 통해 종단간에 신뢰성 있는 바이트 스트림을 전송 하도록 특별히 설계되었음
- TCP 서비스는 송신자와 수신자 모두가 소켓이라고 부르는 종단점을 생성함으로써 이루어짐
- 멀티캐스팅이나 브로드캐스팅을 지원하지 않음
728x90
반응형
'Computer Science > Computer Science' 카테고리의 다른 글
프로세스, 스레드, 멀티태스킹, 멀티스레딩, 멀티프로세싱, 멀티프로그래밍 (1) | 2023.11.27 |
---|---|
로드 밸런서(Load Balancer)? (1) | 2023.01.26 |
HTTP vs HTTPS 비교 (0) | 2023.01.25 |
Object Oriented Programming(OOP) 객체 지향 프로그램 (1) | 2023.01.25 |
댓글