Subject: [p2p-sip] Fwd: Concepts draft: Bootstrap server vs. bootstrap peer

From: philip_matthews at magma.ca (Philip Matthews)
Date: Wed, 18 Oct 2006 17:51:28 -0400

Copying the list on this one too.
- Philip

Begin forwarded message:

> From: Philip Matthews <philip_matthews at magma.ca>
> Date: October 18, 2006 17:27:33  EDT (CA)
> To: Dean Willis <dean.willis at softarmor.com>, Eunsoo Shim  
> <eunsoo at research.panasonic.com>, "David A. Bryan" <bryan at ethernot.org>
> Subject: Concepts draft: Bootstrap server vs. bootstrap peer
>
> Right now, the Concepts draft lists "bootstrap peer" as an alias  
> for "bootstrap server".
>
> I think these two terms are quite distinct.
>
> As I see it, a bootstrap server is a node (usually not a peer) in  
> the Internet that allows
> a node to find peers that are already in the overlay. This is often  
> called a "Rendezvous
> Server" in the literature.
>
> By contrast, a "bootstrap peer" is a peer in the overlay that  
> registers with the bootstrap
> server. This peer serves as the initial point of contact into the  
> overlay for the new peer
> that is trying to join.
>
> In my view, the peers in the overlay elect one or more of their  
> number to act as bootstrap
> peers. These bootstrap peers register with (one or more) bootstrap  
> servers. When a new
> peer wants to join the overlay, it contacts the bootstrap servers  
> that it knows about (using
> RFC 3263 methods) to locate a bootstrap peer. Once it has contacted  
> a bootstrap peer,
> the new peer does not need the services of the bootstrap server any  
> more.
>
> I am planning to write this up as a draft shortly.
>
> In the meantime, I am proposing to:
>
> 1) Remove "bootstrap peer" as an alias for "bootstrap server", and
> 2) Introduce "bootstrap peer" as a distinct term.
>
> If people find (2) to be too controversial, then I can stick with  
> just (1)
> (until I write my draft ;-).
>
> Comments?
>
> - Philip
>

---

From: bryan at ethernot.org (David A. Bryan)
Date: Wed, 18 Oct 2006 17:58:28 -0400

logical vs. physical role. I guess my 2 cents is that anything that
serves as a bootstrap server can be one (could also happen to be a
peer). Being a bootstrap server is a logical role that can be
co-located with a peer/node.

On 10/18/06, Philip Matthews <philip_matthews at magma.ca> wrote:
> _______________________________________________
> p2p-sip mailing list
> p2p-sip at cs.columbia.edu
> https://lists.cs.columbia.edu/cucslists/listinfo/p2p-sip
>

---

From: philip_matthews at magma.ca (Philip Matthews)
Date: Wed, 18 Oct 2006 18:10:10 -0400

Sure.
A bootstrap server can be a bootstrap peer as well,
or even just a peer and not a bootstrap peer (though this one is a  
bit weird!).

However, in the typical deployment, I strongly suspect that bootstrap  
servers
will be distinct from bootstrap peers.
As I see it, there will be lots and lots of distinct overlays,
each of which elects one or more bootstrap peers to register  with a  
fairly
small number of bootstrap servers.

- Philip

---

From: huang-ming.pan at comcast.net (Peter Pan)
Date: Wed, 18 Oct 2006 15:15:59 -0700

----- Original Message -----
From: "David A. Bryan" <bryan at ethernot.org>
To: "Philip Matthews" <philip_matthews at magma.ca>
Cc: "P2P-SIP" <p2p-sip at cs.columbia.edu>
Sent: Wednesday, October 18, 2006 2:58 PM
Subject: Re: [p2p-sip] Fwd: Concepts draft: Bootstrap server vs.
bootstrappeer

> co-located with a peer/node.

Sorry. Cannot fully agree with you again. If any peer can colocate CA or
bootstrap server, no bootstrap server is needed.

Of course, if you're talking of "web of trust", it is another case.

---

From: spencer at mcsr-labs.org (Spencer Dawkins)
Date: Wed, 18 Oct 2006 17:14:27 -0500

Darn. I thought I was already agreeing with this one.

I sent mail previously expressing a desire to call the bootstrap server 
something else, and Philip says it's usually called something else in P2P 
literature.

On my planet, a bootstrap server/boot server is a BOOTP/DHCP thing, a couple 
of levels down.

I thought we liked "bootstrap peer", but see that we are talking about two 
things (with one term, usually a bad sign).

My preference is to use "rendezvous server" and "bootstrap peer" for the two 
concepts Philip describes, which I think Philip might agree with (I hope so, 
because I'm trying to agree with HIM).

I think this clearly points out that we might have a variety of ways to 
locate the bootstrap peer, which makes sense to me as well.

I hope this either helps or first does no harm :-)

And I don't think this change needs to be made before Monday.

Thanks,

Spencer

---

From: bryan at ethernot.org (David A. Bryan)
Date: Wed, 18 Oct 2006 18:32:20 -0400

Seems how this would work would likely a deployment issue for the
person building the system.

In the model you are proposing the bootstrap server is a server that
is not part of any one overlay, and keeps info for multiple overlay,
and the bootstrap peers in your model register with it? What protocol
is used for that registration? I'm a bit worried that is another
protocol (and really more of a config problem) creeping in here, but I
might just be missing your point.

In any case, based on the scenario you mention/your definition these
are clearly two different and distinct things -- not just the logical
role I was picturing in my head.

In the scenario I think you are proposing, however, I think we leave
what you are calling the bootstrap server out of the draft for now.
That would be one of many (along with using broadcast, DNS lookup for
"boot.example.com", preconfiguration etc.) ways to find a bootstrap
peer to get going, which would be deployment dependent.

--David

---

From: eunsoo at research.panasonic.com (Eunsoo Shim)
Date: Wed, 18 Oct 2006 22:19:07 -0400

I agree to the distinction Philip made.

A minor comment - saying the overlay ELECT one or more peers as
bootstrap server is not general enough. Actually I am not sure whethere
any kind of electing/election is necessary for a bootstrap server to
know peers in the overlay. There can be many ways for a bootstrap server
to know existing peers, for example, by configuration or through any
known peer.
So it should be sufficient to say that a bootstrap server provides
information about one or multiple existing peers to a joining peer if
requested.
Any peer somehow known to the bootstrap server becomes a bootstrap peer.

Thanks.

Eunsoo

---

From: bryan at ethernot.org (David A. Bryan)
Date: Wed, 18 Oct 2006 22:39:46 -0400

Definitely agree with Eunsoo here. A biz deploying something like this
might actually set up a few of these peers actively rather than
election.

David

---

From: eunsoo at research.panasonic.com (Eunsoo Shim)
Date: Wed, 18 Oct 2006 23:48:04 -0400

A correction in my message below.

'saying the overlay ELECT one or more peers as bootstrap server is not ...'
should be changed into
'saying the overlay ELECT one or more peers as bootstrap peers is not...'.

Sorry about it.

Eunsoo

---

From: philip_matthews at magma.ca (Philip Matthews)
Date: Thu, 19 Oct 2006 08:18:54 -0400

Hi Eunsoo:

You make some good points.

I agree that bootstrap servers may know about bootstrap peers via  
mechanisms
other than registration (e.g., configuration).

I also agree that bootstrap peers may be chosen by mechanisms other than
election.

- Philip

---

From: philip_matthews at magma.ca (Philip Matthews)
Date: Thu, 19 Oct 2006 09:15:57 -0400

Below is my proposed text for bootstrap server and bootstrap peer.
For now, I have kept the term "bootstrap" (rather than changing to  
"rendezvous"
as Spencer suggested)
because it seems easier to agree on definitions first, then choose  
names.

     P2PSIP Bootstrap Peer:
           A P2PSIP Peer in the P2PSIP Overlay which is willing
           to help new Peers join the Overlay or help new Clients  
find Peers to associate with.
           A node that wishes to become a Peer or Client contacts a  
P2PSIP Bootstrap Peer and,
           with the help this Bootstrap Peer, gets the information it  
requires to become a fully
           functioning Peer or Client (the details of this process is  
still TBD).
           The new Peer or Client may locate a P2PSIP Peer through  
multicast, though a P2PSIP Bootstrap
           Server, or through other means.

      P2PSIP Bootstrap Server:
          A  network node used by other nodes which are
           attempting to contact a P2PSIP Bootstrap Peer. It may  
return the address of a P2PSIP Bootstrap Peer,
           or act as a proxy to relay messages to and from the  
Bootstrap Peer, or act as a Bootstrap Peer itself,
           The P2PSIP Bootstrap Peer itself should be a fairly stable  
and well-known host.
           To be useful, there must be an easy way to other nodes to  
locate it -- one way this might
           happen is for it to have a well-known DNS entry.
           A P2PSIP Bootstrap Server may or may not also be a P2PSIP  
Peer or P2PSIP Client in one or more
           P2PSIP Overlays.

- Philip

---

From: spencer at mcsr-labs.org (Spencer Dawkins)
Date: Thu, 19 Oct 2006 08:47:29 -0500

> because it seems easier to agree on definitions first, then choose  names.

FWIW, I agree with Philip here. We're all supposed to be reading the 
definitions, at this point in the game.

Thanks,

Spencer

---

From: enrico.marocco at telecomitalia.it (Enrico Marocco)
Date: Thu, 19 Oct 2006 15:56:49 +0200

>            Server, or through other means.

The new Peer needs to locate a P2PSIP Bootstrap Peer, not a P2PSIP Peer,
no?  If so, I'd restate the last sentence like this:  "The potential new
Peer or Client may locate a P2PSIP Bootstrap Peer through multicast,
through DNS or through other means."

I'd defenitely drop the definition of "P2PSIP Bootstrap Server"; right
now we need to agree on something *simple* and it only seems to be a
matter of argument we just don't need at the moment.

-- 
Ciao,
Enrico

Ahem.. Sorry, the notice below is not my fault :-(
--------------------------------------------------------------------

CONFIDENTIALITY NOTICE

This message and its attachments are addressed solely to the persons above and may contain confidential information. If you have received the message in error, be informed that any use of the content hereof is prohibited. Please return it immediately to the sender and delete the message. Should you have any questions, please contact us by replying to webmaster at telecomitalia.it.

        Thank you

                                        www.telecomitalia.it

--------------------------------------------------------------------

---

From: philip_matthews at magma.ca (Philip Matthews)
Date: Thu, 19 Oct 2006 10:31:03 -0400

> through DNS or through other means."

Whoops!
The last sentence in the definition about should have read:
            The new Peer or Client may locate a P2PSIP Bootstrap Peer  
through
            multicast, through a P2PSIP Bootstrap Server, or through   
other means.
Thanks for pointing out the error.

> matter of argument we just don't need at the moment.

The definition of a "P2PSIP Bootstrap Server" has been in the  
document since the -00 version.
I am trying to see if I can get  consensus on adding "P2PSIP  
Bootstrap Peer"
(since the -02 draft added this term as an alias for "P2PSIP  
Bootstrap Server", which I think
was a mistake).

If I make the wording change above, does this satisfy your concerns?

- Philip

---

From: enrico.marocco at telecomitalia.it (Enrico Marocco)
Date: Thu, 19 Oct 2006 17:53:50 +0200

Philip Matthews wrote:
> The definition of a "P2PSIP Bootstrap Server" has been in the document
> since the -00 version.
> I am trying to see if I can get  consensus on adding "P2PSIP Bootstrap
> Peer"
> (since the -02 draft added this term as an alias for "P2PSIP Bootstrap
> Server", which I think
> was a mistake).
> 

It seems to me that there is enough agreement for renaming "P2PSIP
Bootstrap Peer" the old "P2PSIP Bootstrap Server" and I'm fine with it,
expecially after your rewording.  What I think would produce more costs
than benefits is the _new_ definition of "P2PSIP Bootstrap Server".

-- 
Ciao,
Enrico

CONFIDENTIALITY NOTICE

        Thank you

                                        www.telecomitalia.it

---

From: enrico.marocco at telecomitalia.it (Enrico Marocco)
Date: Thu, 19 Oct 2006 18:10:24 +0200

> than benefits is the _new_ definition of "P2PSIP Bootstrap Server".

Ops..  I've forgotten to say that I'd drop the reference to the P2PSIP
Bootstap Server form the definition of "P2PSIP Bootstrap Peer".

And I don't mean to misinterpret the agreement of the group:  please
correct me if I'm wrong ;-)

-- 
Ciao,
Enrico

CONFIDENTIALITY NOTICE

        Thank you

                                        www.telecomitalia.it

---

From: slavitch at gmail.com (Michael Slavitch)
Date: Thu, 19 Oct 2006 15:27:24 -0400

A question:

Does the defined "boostrap server" always need to communicate with
other P2PSIP entities in order to perform the bootstrap?   Some
reasons why would be to fetch a fast-changing item that is local to
the P2PSIP domain.

If the answer is "not always" then the bootstrap mechanism need not be
a server. It can be a secureid card, for example, operating from a
common seed used by the overlay.

If that is true a different name for the "bootstrap mechanism" is needed.