The trader implements a service that provides location transparency to clients of the flight reservation system. Before a client contacts a server it has to ask the trader for the location of the service the client wants to use. This mapping is provided based either on the service name or on the properties of a service. The trader handles one request per connection. After processing the request, the connection is shut down.
Servers register with the trader on startup and unregister when shut down.
The internal structure of the trader is a multi-threaded task that provides one listener for service requests. When a request is received a worker thread is spawned. This worker then performs the required activities and sends a reply back to the user. After the reply the worker is terminated. It expects http requests to be sent to trader.dslab.tuwien.ac.at on port 10001 .