uso di UDP in DNS

-1

UDP fornisce nessuna garanzia di consegna e nessuna protezione dalla duplicazione ed è un protocollo senza connessione ma perché allora il DNS utilizza il protocollo UDP. Per favore, fammi chiarire.

A quali condizioni dovremmo preferire il protocollo UDP su TCP?

    
posta nischalinn 24.06.2016 - 15:30
fonte

1 risposta

6

UDP provides no guarantee for delivery and no protection from duplication and is connection-less protocol but why then DNS uses UDP protocol.

Perché, nonostante non abbia garanzie di consegna, UDP è adatto per ciò che il protocollo DNS richiede 1 . In particolare:

  • DNS deve essere molto veloce. L'impostazione di una connessione TCP richiede uno scambio di pacchetti aggiuntivo. Idem per lo spegnimento di una connessione TCP.
  • Una tipica richiesta DNS si inserisce in un singolo pacchetto di rete
  • Una risposta DNS tipica si inserisce in un singolo pacchetto di rete
  • Dato che il DNS è un protocollo stateless, il reinvio di una richiesta dopo un timeout non è problematico.

At what conditions we should prefer UDP over TCP protocol?

Quando il protocollo application / application-level non richiede le varie proprietà (ma relativamente costose) fornite da un layer di trasporto TCP.

È teoricamente possibile 2 implementare tutte le caratteristiche desiderabili di TCP usando un protocollo a livello di applicazione usando UDP. Ma le persone sensibili non lo fanno ... perché sarebbe uno sforzo inutile.

1 - In effetti il DNS può utilizzare sia TCP che UDP: fonte .

2 - In pratica, è probabile che ci siano problemi dovuti alle differenze nel modo in cui UDP & Il TCP è gestito da reti e kernel OS, kernel vs overhead dello spazio utente e così via. Affrontare questi problemi è ... complesso.

    
risposta data 24.06.2016 - 15:55
fonte

Leggi altre domande sui tag