On Fri, 2016-02-26 at 14:25 -0500, Ted Ross wrote:
> Here's the updated json based on our discussion.  The route entity 
> starts on line 831:
> 
> http://git-wip-us.apache.org/repos/asf/qpid-
> dispatch/blob/27cc4020/python/qpid_dispatch/management/qdrouter.json

I like this a lot. A few comments:

For "treatment" I like Justin's "distribution" or the verb
"distribute":

    distribute: multicast
    distribute: closest
    distribute: balanced


There's confusion between route "containers" and the "container" entity
with server settings. I'd rename "container" to "server" or merge it
with "router".


Need an "allowContainer" attribute on "listener" to indicate if we
trust container-ids from that listener or not so a router can have
secure/insecure listeners but only trust container IDs from trusted
listeners.

I want to separate the direction of a half-route from the path type. No
change for simple cases, but future new path types may also need to be
split into half routes. Example: someday I want to add an "internal"
waypoint-like path type, at which point even direct routes can be half
routes.

 path=direct|waypoint|internal
 direction=in|out|both (default both) 

Example: "tap" a multicast address "A" and forward a copy of each
message to "B" as well.

     route { # Incoming half of address "A"
         address: "A"
         path: internal
         direction: in   # only allow senders to this half of "A"
         treatment: multicast # "Tee" messages internally "A" and "B"
         internal: ["A", "B"]  # Forward to "out" half of "A", "B" 
     }

     route { # Outgoing tap to "B" subscribers
         address: "B"
         path: direct
         direction: out  # only allow subscribers to B.
         treatment: balanced
     }

     route { # Outgoing half of "A"
         address: "A"
         path: direct
         direction: out  # Only allow subscribers to this half of "A"
         treatment: multicast
     }

To clients this looks identical to a simpele direct multicast address
"A".

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to