As more and different services appear over the Internet, there is a need to have a brokerage architecture that abstracts complexity from the user and is scalable enough to be internet-wide deployed.
We present an architecture for the deployment of service brokers over the Internet. We have done this by merging SLP and AS1 and adding our own design elements. The design considerations for the work presented were (1) high variability of usage, (2) high diversity of services and resources, (3) no single point of failure, and (4) network awareness. In addition, we decoupled the notion of agent, service, and resource in three separate logical components and we illustrate how SLP and AS1 behave fundamentally different in their perception of them.
In the proposed architecture, a service broker optimizes resource consumption by deciding to reproduce or aggregate based on the demand of their services and the consequent load they experience. A service broker can also “reincarnate” the functionality of another service broker who ceased to function.
We implemented Joxer, a proof of concept prototype. To measure its effectiveness, we defined a benefit/cost metric called Effective Resource Usage Metric (ERUM). We defined ERUM as the inverse of bandwidth utilization times average CPU load consumed by active Service Brokers.