Sunday, June 08, 2003

WS-EndpointResolution

In the telecom world, people refer to the difficulties of getting high capacity lines (like fiber) to the home or neighborhood as the "Last Mile" problem.

In software messaging there is a similar problem. Often, there will be a need to send some message to a specific computer. This isn't a problem unless the address of that computer changes (due to DHCP, NAT, etc.) In this case, the address of the computer must be resolved at "received time" rather than at "delivery time". This is an old problem that peer-to-peer systems have had to overcome. However, the problem doesn't end there. In many cases, some application (X) will want to send a message to another application (Y) running on another computer. Using delayed addressed translation, we are able to make sure that the message gets to the right computer. But now, the message must be delived to the right application (MS Word, Excel, etc.) Further complicating the situation, I might have two instances of the same program running (e.g., Excel) - now I need to know which instance of the application the message was intended for.

This is one scenario that WS-EndpointResolution along with WS-Addressing hopes to remedy.
1. Getting the message to the right computer (The Last Meter)
2. Getting the message to the right application (The Last Centimeter)
3. Getting the message to the right instance of the application (The Last Millimeter)

The second scenario is the more general server-side scenario where you are using a dynamic addressing scheme to reroute messages for the purpose of scalability or security. This scenario is mostly handled under the WS-Addressing scheme. Together, WS-Addressing and WS-EndpointResolution will work together to move your SOAP messages to your intended receiver.

No comments: