[BXXPwg] Updated strawman for BEEP protocol URIs

Dan Kohn dan@dankohn.com
Tue, 19 Jun 2001 09:28:03 -0700

The Elvin scheme breaks all of the relative URL parsing code that is in
wide use today (see RFC 2396 sections 5.2 & Appendices B & C) but gives
no advantages.  It does not seem like a model.

		- dan
Dan Kohn <mailto:dan@dankohn.com>
<http://www.dankohn.com/>  <tel:+1-650-327-2600>

-----Original Message-----
From: bxxpwg-admin@lists.invisibleworlds.com
[mailto:bxxpwg-admin@lists.invisibleworlds.com] On Behalf Of Bob Wyman
Sent: Tuesday, June 19, 2001 08:18
To: bxxpwg@lists.invisibleworlds.com
Subject: RE: [BXXPwg] Updated strawman for BEEP protocol URIs

I thought it might be useful to provide an example of how another system
(Elvin) has addressed the issues being discussed here. Elvin produces
URL's that follow the pattern:
An example Elvin URL might look like:
The "protocol" element distinguishs between transport, security and
marshalling bindings.

Note: I'm providing this for information. I don't explicitly endorse
what they are doing...

The following more detailed discussion of the Elvin URL scheme is taken

The Elvin router (@command{elvind}) accepts connections from client
programs using one or more offered protocol stacks. A protocol stack is
constructed from the available network transport, security and data
marshalling modules, and exported by the @command{elvind} process. 

Elvin clients identify the server and protocol with which they connect
using a uniform resource locator (URL). The URLs contain the information
needs by the client libraries to contact the @command{elvind} process. 

An example of such an URL follows: 


Breaking that example URL into its components, we have 


The elvin is the scheme name, which distinguishes Elvin URLs from those
of other schemes, like http, for example. 

Next is the protocol, which describes the protocol stack to be used. In
the example, we are using a TCP transport, no security, and an XDR
(External Data Representation) marshalling layer. The protocol field may
be empty which implies the default elvin protocol of tcp,none,xdr. 

Next is the endpoint specification, which provides protocol-level
connection information. This field is specific to the protocol stack. In
this example, the server.example.com identifies a particular host
machine, and the 2917 specifies a TCP port number. 

When used in the server configuration file, the special host field can be used in an endpoint specification to mean all interfaces
on the machine. 

Note that this is the standard Elvin protocol and uses Elvin's IANA
allocated port for Elvin client to server communication. 

An example using a different protocol is: 


Here the protocol used is unix, for Unix domain sockets which are useful
for clients connected on the same machine. The endpoint specification
specifies the machine and the path of the Unix domain socket,

BXXPwg mailing list