Discuss two possible implementations of EN(e) and SN(s). Why must the intersection of EN(e) and SN(s) be non-null for a given e that matches s (the intersection rule)? Does this apply in your possible implementations?
What will be an ideal response?
A common mechanism for implementing the two functions is to map on to an underlying Distributed Hash Table (DHT). For example, consider Scribe, a publish-subscribe system implemented over Pastry. Scribe is a topic-based publish-subscribe system. In Scribe, EN(e) and SN(s) are identical operations and are implemented by the underlying hash function applied to the topic name. This ensures that rendezvous-nodes are chosen at random from the underlying nodes in the associated overlay.
Meghdood [Cao and Singh 2005] offers a second example of how to implement rendezvous-based routing. Meghdood is a content-based publish-subscribe system and, as such, the designers were interested in determining rendezvous nodes not just from the topic or one field but from the entire content. This is a much harder problem. The solution is to map on to a Content Addressable Network (or CAN). A CAN is an overlay network representing an n-dimensional space where each node is responsible for a partition of this space. Meghdood provides a particular subscription language which effectively defines this multi-dimensional space (the space of all possible subscriptions) with the underlying CAN then providing the associated partitioning of this space. The node responsible for each partition is exactly equivalent to the rendezvous node. Please refer to the Meghdood paper for details.
It should be fairly obvious why the intersection rule is required. In all rendezvous-based routing algorithms, subscriptions are sent to one or more rendezvous nodes with the subscriptions stored at these nodes. For a publish event to be routed to all subscriptions, for any event, the calculated set of nodes offered by EN(e) must overlap with the corresponding calculation of SN(s) to find a node that will then match to the subscription and forward it accordingly.
In the first implementation, the intersection rule is trivially met as EN=SN. For the second, the argument the rule is also met. In Megdhood, an event maps to a CAN region which cover all possible subscriptions that can map to that event (known as the event region).
You might also like to view...
The ____ value for the content model in an element declaration means an element cannot store any content.
A. EMPTY B. NULL C. NONE D. mixed
____________________ management is the process of identifying potential threats, avoiding as many threats as possible, and developing steps to fix whatever went wrong.
Fill in the blank(s) with the appropriate word(s).
Critical Thinking QuestionsCase 11-1Your colleague Jason is trying to clarify the three-tier program structure to you and he thinks that providing some practical examples will make it easier to explain it to you.Jason offers you the example of a form that accepts user input in an application geared to allow a fundraising operation to track the donations it receives. Which of the following tiers contains the data-entry form for donations? a. presentationc. businessb. persistenced. record
What will be an ideal response?
The creation of an Application Guide starts on day one and never finishes until the software is fully matured and in maintenance mode.
Answer the following statement true (T) or false (F)