Subject: [BXXPwg] Multichannel Protocol Design

From: Ward Harold <[email-masked]>
Date: Mon, 15 Jan 2001 11:18:56 -0600

If I'm designing a protocol with command and data channels, e.g.,
commands flow from the initiating peer to the listener and data flows
back from the listener over one or more data channels, I assume the
obvious approach would be to create command and data profiles for the
respective channels. Having done that what is the obvious approach to
coordinating channel creation and interaction, i.e., making sure that
data channels get created as necessary, that the data requested gets
delivered, etc.? Is it correct to say that beyond the channel management
mechanism BEEP doesn't provide any explicit support for this aspect of
protocol design?

... WkH

_______________________________________________
BXXPwg mailing list
[email-masked]
http://lists.invisible.net/mailman/listinfo/bxxpwg

---

From: "Marshall T. Rose" <[email-masked]>
Date: Mon, 15 Jan 2001 14:58:48 -0800

> mechanism BEEP doesn't provide any explicit support for this aspect of

hi. from your description, it sounds like you're organizing your application
around 1+N channels, where the first channel is orchestrating the behavior
of the other N channels. if this is not the case, ignore the rest of the
message and explain what you're trying to do.

if this is the case, then you're right: the channel management mechanism
doesn't provide any way for you to coordinate the behavior of the channels
you create. you can define your own profile to do what you want.

for example, i know of a family of profiles that do queries against a
datastore and return document names. each profile has its own custom query
language. there is another profile that does only logical operations on
result sets, each "term" in it's query language consists of an arbitrary
string and a channel number. the semantics are pretty simple: give that
existing channel this string, take the results as the thing to work on next.

this is one of many possible ways of structuring an application. your job is
to decide what makes the most sense for your application.

/mtr

---

From: Ward Harold <[email-masked]>
Date: Mon, 15 Jan 2001 17:39:23 -0600

> message and explain what you're trying to do.

A 1+N organization is exactly what I'm thinking about. I am envisioning the peer
in the Initiator role creating the "command" channel and the Listening peer
creating n, where n <= N, "data" channels depending on the command issued, the
object(s) requested, etc. I hadn't thought of using a profile to coordinate the
behavior of the channels.

... WkH