Re: hangs/multiple servers
Tim Berners-Lee <timbl@www3.cern.ch>
Date: Thu, 19 Nov 92 18:29:03 +0100
From: Tim Berners-Lee <timbl@www3.cern.ch>
Message-id: <9211191729.AA00355@www3.cern.ch>
To: K.Hoadley@directory.rl.ac.uk
Subject: Re: hangs/multiple servers
Cc: www-talk@nxoc01.cern.ch
Reply-To: timbl@nxoc01.cern.ch
> Date: Thu, 19 Nov 1992 09:38:35 +0000 (GMT)
> From: Kevin Hoadley <K.Hoadley@directory.rl.ac.uk>
> The simple way to provide multiple servers would be to
> register the server name in the DNS with multiple A
> (address) records pointing to different machines. Then
> the clients could be mod'ed could try the second or third
> ... addresses if they couldn't get through to the first.
Ok, This seems a bery good idea, if that is the functionality which DNS
supports.
<practical>
Let's try it.... Anyone care to mod HTTP.c? It's not obvious from
the gethostbyname that one is allowed to refer to different
machines:
struct hostent {
char *h_name; /* official name of host */
char **h_aliases; /* alias list */
int h_addrtype; /* host address type */
int h_length; /* length of address */
char **h_addr_list; /* list of addresses from name server */
};
That look like a list of aliases for one machine, rather than a
list of machines for one alias! But maybe the reverse will work.
So all machines support char **h_addr_list rather than the older
h_addr? We can probably differentiate using #ifdef h_addr
which is set to a macro if there IS a list. I assume you need then
separate entries for the virtual duplicate node and the actual
real nodes, so that you can speak to them sepately. Is this normal
and OK?
</practical>
> How you keep info upto date accross multiple servers is
> a different matter, need some form of replication a la
> DNS zone transfers (or Quipu's extensions to X.500 ) ...
> Mind you, replication within www is a harder issue: a
> server might be sitting in front of datasets too large
> to sensibly duplicate.
>
> Kevin Hoadley, Rutherford Appleton Laboratory
>