UDP 가 DNS를 이용하는 이유

송예인·2021년 5월 18일
0

네트워크 궁금증

목록 보기
6/7

TCP 와 UDP는 신뢰성 vs 신속성 의 특징을 놓고 tcp와 udp를 이용하는 서비스 들이 갈린다.

TCP는 - HTTP, Email, FIle transfer
UDP는 - DNS, Broadcasting

도메인 이름과 IP주소를 서로 변환하는 역할을 하는 DNS는 왜 UDP에 속해 있을까?

UDP의 특징
UDP는 트랜스포트 계층 프로토콜이 할 수 있는 최소 기능으로 동작
즉, 다중화/역다중화 기능과 간단한 오류 검사 기능을 제외하면 IP에 아무것도 추가하지 않는다.

그래서 애플리케이션 개발자가 TCP대신에 UDP를 선택한다면 애플리케이션은 거의 IP와 직접 통신하는 것

tcp에 비해 다음과 같은 특징을 갖고 있기에 DNS서비스가 사용하기 적합하다.

  • 연결의 시작 과 끝 설정이 없다는 점

    tcp 는 데이터 전송을 시작하기 전에 3-way-handshake를 사용하는 반면에 udp는 형식적인 예비동작이 없다. 따라서 연결 설정에 드는 비용이 없다.

    만약 dns가 tcp위에서 동작한다면 많이 느려질 것.
    반면 http문서로 된 웹페이지는 신뢰성이 중요하기 때문에 udp보다 tcp를 사용한다.

    dns: 신뢰성<속도
    웹페이지: 신뢰성>속도

  • 연결 상태를 유지 할 필요가 없다.

    tpc는 end point에서 연결 상태를 유지하며 다음과 같은 파라미터들이 포함된다. ->(수신버퍼, 송신버퍼, congestion control 파라미터, sequence number, ACK number)

    반면 udp는 어떠한 정보도 기록하지 않고 유지할 필요가 없다.

    따라서 특정 애플리케이션에 할당된 서버는 애플리케이션이 tcp보다 udp에서 동작할 때 더 많은 클라이언트를 수용할 수 있다.

    도메인네임을 ip로 변경함으로 항상 많은 클라이언트를 수용하는 dns 서버에게는 연결상태를 유지 하지 않아 정보 기록을 최소화 하는 udp가 알맞다.

1개의 댓글

comment-user-thumbnail
2021년 9월 26일

제목이 뭔가 이상하네요

답글 달기