Method and system for providing a web service by a plurality of web domains through a single IP address
First Claim
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.
12 Assignments
0 Petitions
Accused Products
Abstract
A method and system for providing a Web service by a plurality of Web domains hosted by a computer, through a single IP address, is disclosed. A server having a unique domain name and the same IP address is allocated for each of the domains, while a software module intermediates between a client of the service and each of the servers. Upon receiving a request for connecting the client to one of the servers in order to provide the service, the target domain name of the request is identified by interacting between the client and the software module via standard communication protocol. The software module communicates with the server providing the service associated with the target domain name also by the standard protocol. A communication channel is then established between the server and the client, so that the server is allowed to provide the desired service to the client.
18 Citations
21 Claims
-
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. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 21)
- address, the method comprising;
-
12. A system for providing a service to a client by a plurality of domains, through a single IP address, the system comprising:
-
a plurality of servers, each server providing the service for a corresponding domain; and a wrapper, for intermediating between the client and the plurality of servers, using a standard communication protocol, wherein, for each request to connect the client to the server, the wrapper identifies a target domain name by interacting with the client via the standard communication protocol, interacts with the server associated with the target domain name via the standard communication protocol, and enables the server to provide the service to the client, wherein the server providing the service is a copy of an original, unmodified server out of the plurality of servers, 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, a communication channel established through the wrapper between the server and the client, such that the wrapper receives commands from the client using a modified protocol, and the original, unmodified server utilizes the standard communication protocol to receive the client requests; a data connection between the client and the original, unmodified server for receiving and responding to the client requests directly using the standard communication protocol, wherein the username phrase is one of “
user%odomain” 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;a buffer provided to each socket, for retaining temporarily the information received from the client, wherein the data is read from the buffer if the buffer is not empty, or from the socket if the buffer is empty, and wherein any write command is ignored until the buffer is empty. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20)
-
Specification