[ntp:questions] Source address in response always the same as target address in request?

Brian Utterback brian.utterback at sun.com
Fri Dec 14 21:27:31 UTC 2007


David L. Mills wrote:
> Brian,
> 
> Are we having a disconnect here or are we talking right past each other? 

Probably both. 8-)

> NTP has evolved from very many protocols of the late 1970s and early 
> 1980s, including ICMP, GGP, EGP, UDP/TIME, UTP/DAYTIME, UDP/QOD, SNMP 
> and countless others. These protocols multiplex among possibly many 
> servers and clients using the IP addresses and ports (UDP). A client 
> sending a request to a server must know the source address of the reply 
> in ordet to match the request to the reply data structures.

Well, ICMP packets rarely have a source address that matches the 
original packets destination address. Many UDP protocols that deal with
routing and network management need to have knowledge the interface
used, so they do indeed follow the same model of binding all the
interfaces; I certainly do not claim that NTP is alone in that regard.

> 
> This was the intent of the original design and as evolved in the Gateway 
> Architecture and Data Structures (GADS) task force and its successor the 
> Internet Architecture (INARC) task force, both of which I happened to 
> chair.
> 
> This engineering design might today be considered archaic and maybe even 
> a collossal mistakce. However, you need to make the case. Furthermore, 
> this has absolutely nothing to do with sockets or Unix programming 
> style. I made this abundantly clear to Mike Karels of UCB at the time in 
> a meeting with DARPA principals concerned that UCB was a loose cannon 
> and uncooperative with Internet design principles.

I do not think that the requirement that the addresses match to be 
mistake in the UDP protocol. I think that it would have been a good
idea. What I am saying is that the requirement is not in the protocol
at all, so the need for NTP to have it be so is a NTP decision. The
fact that it was unnecessary and to have resulted in the bind all
interfaces ugliness is the reason I think it was ill-advised. If the
UDP protocol had had this requirement all along, then the sockets API
would have had a way to do it easily and then I would not object at all.

> 
> Hyde Park in London on Sunday Morning...

If you are saying that you are going, then have a good trip.

Brian Utterback




More information about the questions mailing list