TCP/UDP for queries in BIND

Simon Waters Simon at wretched.demon.co.uk
Thu Aug 9 17:21:53 UTC 2001


Vaishali Paithankar Sadaphal wrote:
> 
> Doesn't it need reliability of TCP?

TCP is a reliable protocol in that once a handshake takes place,
both ends can track the conversation and spot when a packet is
missing, and request it be sent again.

When using UDP the application must handle the case of a lost
packet, rather than the underlying networking protocols.

BIND does this by rerequesting (usually via another servers) any
queries it hasn't got answers to quickly enough. Since BIND (and
other DNS servers) is typically trying another server this
results in better reliability.

TCP has one other advantage over UDP, in that it is more
resilient to certain types of spoofing attack. BIND attempts to
compensate for this deficiency as well.

The mistake is to assume that an application using an
"unreliable" protocol is unreliable. In this sense "unreliable"
is a technical description of a feature of the protocol, and for
as long as the application is designed to work correctly with an
unreliable protocol there isn't a problem.

-- 
Are you using the Internet to best effect ? www.eighth-layer.com
Tel: +44(0)1395 232769      ICQ: 116952768
Moderated discussion of teleworking at news:uk.business.telework


More information about the bind-users mailing list