Bela Ban created JGRP-1506:
------------------------------
Summary: RELAY2: hierarchical routing
Key: JGRP-1506
URL:
https://issues.jboss.org/browse/JGRP-1506
Project: JGroups
Issue Type: Feature Request
Reporter: Bela Ban
Assignee: Bela Ban
Fix For: 3.3
Currently, RELAY2 only supports routing to sites which are directly accessible from the
current site (by registering via a bridge and adding their entries to the routing table).
Hierarchical routing should support sending messages to sites which are only indirectly
connected. This could be done either via shorts for site-IDs, or via strings. Let's
look at an example for strings:
- We have sites us.nyc, us.sfo and us.lax. These site-IDs are added to every site
master's routing table
- In addition, we also define (in the US) an entry eu.* which has NYC as gateway. This
means that our routing table (e.g. on the SiteMaster in SFO) looks as follows:
- us.sfo: <local bridge>
- us.nyc: <local bridge>
- us.lax: <local bridge>
- eu.*: <forward to us.nyc>
So when we send a message to eu.south.spain in SFO, we'll match it component by
component against each entry in the routing table. Since there is no direct match,
we'll finally end up matching against the forqward route "eu.*" and thus
send it to NYC.
We could also use routing based on shorts (current solution), or even introduce inet
addresses (e.g. 1.2.3.4).
However, I currently favor strings as (1) they are always easily readable and (2)
don't require the conversion table between strings and shorts. However, the downside
is that they use more space. Not a big issue though as they're only used in relay
messages (between sites) and not *within* a site.
Hierarchical routing will require changes to the relay config XML file.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira