Patent ID: 7613793
Filing Date: 2009-11-03
Classification: H04L

Abstract:
1. A method for providing a service by a plurality of domains through a single IF′ address, the method comprising: a) For each of the plurality of domains, allocating a server having a unique domain name and the IF′ address, for providing the service, wherein the allocated server is an original, unmodified server; b) Providing a wrapper, the wrapper being a software module for intermediating between a client of the service and the server providing the service via a standard communication protocol for communicating with the server providing the service; c) Upon receiving a request for connecting a client to the server in order to provide the service: (i) Identifying the target domain name of the request by interacting between the client and the wrapper via the standard communication protocol, wherein the target domain name and the user name are embedded in a single command, separated by a symbol that is permitted by the standard communication protocol, wherein the symbol is at least one character that does not conform with the standard characters allowed in a username in the standard communication protocol, wherein the username phrase is one of “user%domain” and “domain%user”, in which “user” is the username, “domain” is the domain name, and “%” is any symbol that does not conform to the standard communication protocol; (ii) Mediating the interaction between the wrapper and the server providing the service which is associated with using the target domain name by the standard communication protocol; (iii) Establishing a communication channel between the server and the client through the wrapper, such that the wrapper receives commands from the client using a modified protocol, and the server utilizes the standard communication protocol to receive the client requests; (iv) keeping the wrapper active only until the requested server is identified, and the communication is handed to the requested server, and then terminating the wrapper; (v) Starting a data connection between the client and the original, unmodified server to receive and respond to the client requests directly using the standard communication protocol; and (vi) Allowing the original, unmodified server to provide the service to the client; (vii) Providing a buffer to each socket, for retaining temporarily the information received from the client, and reading the data from the buffer if it is not empty, or from the socket if the buffer is empty; and (viii) Ignoring any write command until the buffer is empty.