A data redirection system for redirecting user's data based on a stored rule set. The redirection of data is performed by a redirection server, which receives the redirection rule sets for each user from an authentication and accounting server, and a database. Prior to using the system, users authenticate with the authentication and accounting server, and receive a network address. The authentication and accounting server retrieves the proper rule set for the user, and communicates the rule set and the user's address to the redirection server. The redirection server then implements the redirection rule set for the user's address. rule sets are removed from the redirection server either when the user disconnects, or based on some predetermined event. new role sets are added to the redirection server either when a user connects, or based on some predetermined event.
|
0. 107. A system comprising:
a redirection server programmed with a user's rule set correlated to a temporarily assigned network address;
the rule set containing at least one of a plurality of functions used to control data passing between the user and a public network;
the redirection server being configured to automatically modify at least a portion of the rule set while the rule set is correlated to the temporarily assigned network address;
the redirection server being configured to automatically modify at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location the user accesses; and
the modified rule set including at least one rule as a function of a type of IP (Internet Protocol) service.
0. 109. A system comprising:
a redirection server programmed with a user's rule set correlated to a temporarily assigned network address;
the rule set containing at least one of a plurality of functions used to control data passing between the user and a public network;
the redirection server being configured to automatically modify at least a portion of the rule set while the rule set is correlated to the temporarily assigned network address;
the redirection server being configured to automatically modify at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location the user accesses; and
the modified rule set includes at least one rule allowing access based on a request type and a destination address.
0. 111. A system comprising:
a redirection server connected between a user computer and a public network, the redirection server programmed with a users' rule set correlated to a temporarily assigned network address;
the rule set containing at least one of a plurality of functions used to control data passing between the user and a public network;
the redirection server being configured to automatically modify at least a portion of the rule set while the rule set is correlated to the temporarily assigned network address; and
the redirection server being configured to automatically modify at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location the user accesses while the rule set is correlated to the temporarily assigned network address.
0. 110. A system comprising:
a redirection server programmed with a user's rule set correlated to a temporarily assigned network address;
the rule set containing at least one of a plurality of functions used to control data passing between the user and a public network;
the redirection server being configured to automatically modify at least a portion of the rule set while the rule set is correlated to the temporarily assigned network address;
the redirection server being configured to automatically modify at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location the user accesses; and
the modified rule set includes at least one rule redirecting the data to a new destination address based on a request type and an attempted destination address.
0. 91. A system comprising:
a redirection server programmed with a user's rule set correlated to a temporarily assigned network address;
wherein the rule set contains at least one of a plurality of functions used to control data passing between the user and a public network;
wherein the redirection server is configured to automatically modify at least a portion of the rule set while the rule set is correlated to the temporarily assigned network address;
wherein the redirection server is configured to automatically modify at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location the user accesses; and
wherein the redirection server is configured to modify at least a portion of the rule set as a function of time while the rule set is correlated to the temporarily assigned network address.
0. 94. A system comprising:
a redirection server programmed with a user's rule set correlated to a temporarily assigned network address;
wherein the rule set contains at least one of a plurality of functions used to control data passing between the user and a public network;
wherein the redirection server is configured to automatically modify at least a portion of the rule set while the rule set is correlated to the temporarily assigned network address;
wherein the redirection server is configured to automatically modify at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location the user accesses; and
wherein the redirection server is configured to remove or reinstate at least a portion of the rule set as a function of time while the rule set is correlated to the temporarily assigned network address.
0. 92. A system comprising:
a redirection server programmed with a user's rule set correlated to a temporarily assigned network address;
wherein the rule set contains at least one of a plurality of functions used to control data passing between the user and a public network;
wherein the redirection server is configured to automatically modify at least a portion of the rule set while the rule set is correlated to the temporarily assigned network address;
wherein the redirection server is configured to automatically modify at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location the user accesses; and
wherein the redirection server is configured to modify at least a portion of the rule set as a function of the data transmitted to or from the user while the rule set is correlated to the temporarily assigned network address.
0. 93. A system comprising:
a redirection server programmed with a user's rule set correlated to a temporarily assigned network address;
wherein the rule set contains at least one of a plurality of functions used to control data passing between the user and a public network;
wherein the redirection server is configured to automatically modify at least a portion of the rule set while the rule set is correlated to the temporarily assigned network address;
wherein the redirection server is configured to automatically modify at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location the user accesses; and
wherein the redirection server is configured to modify at least a portion of the rule set as a function of the location or locations the user accesses while the rule set is correlated to the temporarily assigned network addresses.
0. 95. A system comprising:
a redirection server programmed with a user's rule set correlated to a temporarily assigned network address;
wherein the rule set contains at least one of a plurality of functions used to control data passing between the user and a public network;
wherein the redirection server is configured to automatically modify at least a portion of the rule set while the rule set is correlated to the temporarily assigned network address;
wherein the redirection server is configured to automatically modify at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location the user accesses; and
wherein the redirection server is configured to remove or reinstate at least a portion of the rule set as a function of the data transmitted to or from the user while the rule set is correlated to the temporarily assigned network address.
0. 96. A system comprising:
a redirection server programmed with a user's rule set correlated to a temporarily assigned network address;
wherein the rule set contains at least one of a plurality of functions used to control data passing between the user and a public network;
wherein the redirection server is configured to automatically modify at least a portion of the rule set while the rule set is correlated to the temporarily assigned network address;
wherein the redirection server is configured to automatically modify at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location the user accesses; and
wherein the redirection server is configured to remove or reinstate at least a portion of the rule set as a function of the location or locations the user accesses while the rule set is correlated to the temporarily assigned network address.
0. 108. A system comprising:
a redirection server programmed with a user's rule set correlated to a temporarily assigned network address;
the rule set containing at least one of a plurality of functions used to control data passing between the user and a public network;
the redirection server being configured to automatically modify at least a portion of the rule set while the rule set is correlated to the temporarily assigned network address;
the redirection server being configured to automatically modify at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location the user accesses; and
the modified rule set includes an initial temporary rule set and a standard rule set, and the redirection server utilizes the temporary rule set for an initial period of time and thereafter utilizes the standard rule set while the rule set is correlated to the temporarily assigned network address.
0. 97. A system comprising:
a redirection server programmed with a user's rule set correlated to a temporarily assigned network address;
wherein the rule set contains at least one of a plurality of functions used to control data passing between the user and a public network;
wherein the redirection server is configured to automatically modify at least a portion of the rule set while the rule set is correlated to the temporarily assigned network address;
wherein the redirection server is configured to automatically modify at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location the user accesses; and
wherein the redirection server is configured to remove or reinstate at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location or locations the user accesses while the rule set is correlated to the temporarily assigned network address.
0. 98. A system comprising:
a redirection server programmed with a user's rule set correlated to a temporarily assigned network address;
wherein the rule set contains at least one of a plurality of functions used to control data passing between the user and a public network;
wherein the redirection server is configured to automatically modify at least a portion of the rule set while the rule set is correlated to the temporarily assigned network address;
wherein the redirection server is configured to automatically modify at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location the user accesses; and
wherein the redirection server has a user side that is connected to a computer using the temporarily assigned network address and a network side connected to a computer network, and wherein the computer using the temporarily assigned network address is connected to the computer network through the redirection server.
0. 100. In a system comprising a redirection server containing a user's rule set correlated to a temporarily assigned network address wherein the user's rule set contains at least one of a plurality of functions used to control data passing between the user and a public network; a method comprising:
the redirection server modifying at least a portion of the user's rule set while the user's rule set remains correlated to the temporarily assigned network address in the redirection server;
connecting a user side of the redirection server to a computer using the temporarily assigned network address and a network side connected to a computer network;
connecting the computer using the temporarily assigned network address to the computer network through the redirection server;
receiving instructions by the redirection server; and
the redirection server modifying at least a portion of the user's rule set through one or more of the user side of the redirection server and the network side of the redirection server while the rule set is correlated with the temporarily assigned network address.
0. 126. In a system comprising a redirection server connected between a user computer and a public network, the redirection server containing a user's rule set correlated to a temporarily assigned network address wherein the user's rule set contains at least one of a plurality of functions used to control data passing between the user and a public network; a method comprising:
the redirection server modifying at least a portion of the user's rule set while the user's rule set remains correlated to the temporarily assigned network address in the redirection server;
wherein the redirection server has a user side that is connected to a computer using the temporarily assigned network address and a network address and a network side connected to a computer network;
wherein the computer using the temporarily assigned network address is connected to the computer network through the redirection server; and
the redirection server modifying at least a portion of the user's rule set through one or more of the user side of the redirection server and the network side of the redirection server while the rule set is correlated to the temporarily assigned network address, in response to instructions received by the redirection server.
1. A system comprising:
a database with entries correlating each of a plurality of user IDs with an individualized rule set;
a dial-up network server that receives user IDs from users' computers;
a redirection server connected to the dial-up network server and a public network, and
an authentication accounting server connected to the database, the dial-up network server and the redirection server;
wherein the dial-up network server communicates a first user ID for one of the users' computers and a temporarily assigned network address for the first user ID to the authentication accounting server;
wherein the authentication accounting server accesses the database arid communicates the individualized rule set that correlates with the first user ID and the temporarily assigned network address to the redirection server; and
wherein data directed toward the public network from the one of the users' computers are processed by the redirection server according to the individualized rule set.
2. The system of
3. The system of
4. The system of
5. The system of
6. The system of
7. The system of
8. In a system comprising a database with entries correlating each of a plurality of user IDs with an individualized rule set; a dial-up network server that receives user IDs from users' computers; a redirection server connected to the dial-up network server and a public network, and an authentication accounting server connected to the database, the dial-up network server and the redirection server, the method comprising the steps of:
communicating a first user ID for one of the users' computers and a temporarily assigned network address for the first user ID from the dial-up network server to the authentication accounting server;
communicating the individualized rule set that correlates with the first user ID and the temporarily assigned network address to the redirection server from the authentication accounting server;
and processing data directed toward the public network from the one of the users' computers according to the individualized rule set.
9. The method of
10. The method of
11. The method of
12. The method of
13. The method of
14. The method of
15. A system comprising:
a redirection server programmed with a user's rule set correlated to a temporarily assigned network address;
wherein the rule set contains at least one of a plurality of functions used to control passing between the user and a public network;
wherein the redirection server is configured to allow automated modification of at least a portion of the rule set correlated to the temporarily assigned network address; and wherein the redirection server is configured to allow modification of at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location the user access.
16. The system of
17. The system of
18. The system of
19. The system of
20. The system of
21. The system of
22. The system of
23. The system of
24. The system of
25. In a system comprising a redirection server containing a user's rule set correlated to a temporarily assigned network address wherein the user's rule set contains at least one of a plurality of functions used to control data passing between the user and a public network; the method comprising the step of:
modifying at least a portion of the user's rule set while the user's rule set remains correlated to the temporarily assigned network address in the redirection server; and wherein the redirection server has a user side that is connected to a computer using the temporarily assigned network address and a network address and a network side connected to a computer network and wherein the computer using the temporarily assigned network address is connected to the computer network through the redirection server and the method further includes the step of receiving instructions by the redirection server to modify at least a portion of the user's rule set through one or more of the user side of the redirection server and the network side of the redirection server.
26. The method of
27. The method of
28. The system of
29. The system of
30. The system of
31. The system of
32. The method of
33. The method of
34. The method of
35. The method of
36. A system comprising:
a redirection server programmed with a users rule set correlated to a temporarily assigned network address;
wherein the rule set contains at least one of a plurality of functions used to control data passing between the user and a public network;
wherein the redirection server is configured to allow automated modification of at least a portion of the rule set correlated to the temporarily assigned network address;
wherein the redirection server is configured to allow automated modification of at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location the user accesses; and
wherein the modified rule set includes at least one rule as a function of a type of IP (Internet Protocol) service.
37. A system comprising:
a redirection server programmed with a user's rule set correlated to a temporarily assigned network address;
wherein the rule set contains at least one of a plurality of functions used to control data passing between the user and a public network;
wherein the redirection server is configured to allow automated modification of at least a portion of the rule set correlated to the temporarily assigned network address;
wherein the redirection server is configured to allow automated modification of at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location the user accesses; and
wherein the modified rule set includes an initial temporary rule set and a standard rule set, and wherein the redirection server is configured to utilize the temporary rule set for an initial period of time and to thereafter utilize the standard rule set.
38. A system comprising:
a redirection server programmed with a user's rule set correlated to a temporarily assigned network address;
wherein the rule set contains at least one of a plurality of functions used to control data passing between the user and a public network;
wherein the redirection server is configured to allow automated modification of at least a portion of the rule set correlated to the temporarily assigned network address;
wherein the redirection server is configured to allow automated modification of at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location the user accesses; and
wherein the modified rule set includes at least one rule allowing access based on a request type and a destination address.
39. A system comprising:
a redirection server programmed with a user's rule set correlated to a temporarily assigned network address;
wherein the rule set contains at least one of a plurality of functions used to control data passing between the user and a public network;
wherein the redirection server is configured to allow automated modification of at least a portion of the rule set correlated to the temporarily assigned network address;
wherein the redirection server is configured to allow automated modification of at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location the user accesses; and
wherein the modified rule set includes at least one rule redirecting the data to a new destination address based on a request type and an attempted destination address.
40. The method of
41. The method of
42. The method of
43. The method of
44. A system comprising:
a database with entries correlating each of a plurality of user IDs with an individualized rule set;
a dial up network server that receives user IDs from users' computers;
a redirection server connected between the dial up network server and a public network, and
an authentication accounting server connected to the database, the dial up network server and the redirection server;
wherein the dial up network server communicates a first user ID for one of the users' computers and a temporarily assigned network address for the first user ID to the authentication accounting server; p1 wherein the authentication accounting server accesses the database and communicates the individualized rule set that correlates with the first user ID and the temporarily assigned network address to the redirection server; and
wherein data directed toward the public network from the one of the users' computers are processed by the redirection server according to the individualized rule set.
45. The system of
46. The system of
47. The system of
48. The system of
49. The system of
50. The system of
51. The system of
52. The system of
53. The system of
54. The system of
55. The system of
56. In a system comprising a database with entries correlating each of a plurality of user IDs with an individualized rule set; a dial up network server that receives user IDs from users' computers; a redirection server connected between the dial up network server and a public network, and an authentication accounting server connected to the database, the dial up network server and the redirection servers, a method comprising the steps of:
communicating a first user ID for one of the users' computers and a temporarily assigned network address for the first user ID from the dial up network server to the authentication accounting server;
communicating the individualized rule set that correlates with the first user ID and the temporarily assigned network address to the redirection server from the authentication accounting server; and
processing data directed toward the public network from the one of the users' computers according to the individualized rule set.
57. The method of
58. The method of
59. The method of
60. The method of
61. The method of
62. The method of
63. The method of
64. The method of
65. The method of
66. The method of
67. The method of
68. A system comprising:
a redirection server connected between a user computer and a public network, the redirection server programmed with a users' rule set correlated to a temporarily assigned network address;
wherein the rule set contains at least one of a plurality of functions used to control data passing between the user and a public network;
wherein the redirection server is configured to allow automated modification of at least a portion of the rule set correlated to the temporarily assigned network address; and
wherein the redirection server is configured to allow automated modification of at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location the user accesses.
69. The system of
70. The system of
71. The system of
72. The system of
73. The system of
74. The system of
75. The system of
76. The system of
77. The system of
78. The system of
79. The system of
80. The system of
81. The system of
82. The system of
83. In a system comprising a redirection server connected between a user computer and a public network, the redirection server containing a user's rule set correlated to a temporarily assigned network address wherein the user's rule set contains at least one of a plurality of functions used to control data passing between the user and a public network; a method comprising the step of:
modifying at least a portion of the user's rule set while the user's rule set remains correlated to the temporarily assigned network address in the redirection server; and
wherein the redirection server has a user side that is connected to a computer using the temporarily assigned network address and a network address and a network side connected to a computer network; and
wherein the computer using the temporarily assigned network address is connected to the computer network through the redirection server and the method further includes the step of receiving instructions by the redirection server to modify at least a portion of the user's rule set through one or more of the user side of the redirection server and the network side of the redirection server.
84. The method of
85. The method of
86. The method of
87. The method of
88. The method of
89. The method of
90. The method of
0. 99. The system of claim 98, wherein the redirection server modifies the rule set in response to instructions received by one or more of the user side of the redirection server and the network side of the redirection server.
0. 101. The method of claim 100, wherein the method further comprises modifying at least a portion of the user's rule set by the redirection server as a function of one or more of: time, data transmitted to or from the user, and location or locations the user accesses.
0. 102. The method of claim 100, wherein the method further comprises removing or reinstating at least a portion of the user's rule set by the redirection server as a function of one or more of: time, the data transmitted to or from the user and a location or locations the user accesses.
0. 103. The method of claim 100, wherein the modified rule set includes at least one rule as a function of a type of IP (Internet Protocol) service.
0. 104. The method of claim 100, wherein the modified rule set includes an initial temporary rule set and a standard rule set, and wherein the redirection server is configured to utilize the temporary rule set for an initial period of time and to thereafter utilize the standard rule set.
0. 105. The method of claim 100, wherein the modified rule set includes at least one rule allowing access based on a request type and a destination address.
0. 106. The method of claim 100, wherein the modified rule set includes at least one rule redirecting the data to a new destination address based on a request type and an attempted destination address.
0. 112. The system of claim 111, the redirection server being configured to modify at least a portion of the rule set as a function of time.
0. 113. The system of claim 111, the redirection server being configured to modify at least a portion of the rule set as a function of the data transmitted to or from the user.
0. 114. The system of claim 111, the redirection server being configured to modify at least a portion of the rule set as a function of the location or locations the user accesses.
0. 115. The system of claim 111, the redirection server being configured to remove or reinstate at least a portion of the rule set as a function of time.
0. 116. The system of claim 111, the redirection server being configured to remove or reinstate at least a portion of the rule set as a function of the data transmitted to or from the user.
0. 117. The system of claim 111, the redirection server being configured to remove or reinstate at least a portion of the rule set as a function of the location or locations the user accesses.
0. 118. The system of claim 111, the redirection server being configured to remove or reinstate at least a portion of the rule set as a function of some combination of time, data transmitted to or from the user, or location or locations the user accesses.
0. 119. The system of claim 111, wherein the redirection server has a user side that is connected to a computer using the temporarily assigned network address and a network side connected to a computer network and wherein the computer using the temporarily assigned network address is connected to the computer network through the redirection server.
0. 120. The system of claim 111, wherein the redirection server modifies the rule set received by one or more of the user side of the redirection server and the network side of the redirection server in response to instructions received by the redirection server.
0. 121. The system of claim 111, wherein the modified rule set includes at least one rule as a function of a type of IP (Internet Protocol) service.
0. 122. The system of claim 111, wherein the modified rule set includes an initial temporary rule set and a standard rule set, and wherein the redirection server is configured to utilize the temporary rule set for an initial period of time and to thereafter utilize the standard rule set.
0. 123. The system of claim 111, wherein the modified rule set includes at least one rule allowing access based on a request type and a destination address.
0. 124. The system of claim 111, wherein the modified rule set includes at least one rule redirecting the data to a new destination address based on a request type and an attempted destination address.
0. 125. The system of claim 111, the redirection server redirecting data from the users' computers by replacing a first destination address in an IP (Internet Protocol) packet header by a second destination address as a function of the modified rule set.
0. 127. The method of claim 126, wherein the modification is a function of one or more of time, data transmitted to or from the user, and location or locations the user accesses.
0. 128. The method of claim 126, wherein the modification comprises removing or reinstating at least a portion of the user's rule set as a function of one or more of time, the data transmitted to or from the user and a location or locations the user accesses.
0. 129. The method of claim 126, wherein the modified rule set includes at least one rule as a function of a type of IP (Internet Protocol) service.
0. 130. The method of claim 126, wherein the modified rule set includes an initial temporary rule set and a standard rule set, and wherein the redirection server is configured to utilize the temporary rule set for an initial period of time and to thereafter utilize the standard rule set.
0. 131. The method of claim 126, wherein the modified rule set includes at least one rule allowing access based on a request type and a destination address.
0. 132. The method of claim 126, wherein the modified rule set includes at least one rule redirecting the data to a new destination address based on a request type and an attempted destination address.
0. 133. The method of claim 126, wherein the redirection server redirects data from the users' computers by replacing a first destination address in an IP (Internet Protocol) packet header by a second destination address as a function of the individualized rule set.
|
This application claims priority of U.S. Provisional Application No. 60/084,014 filed May 4, 1998, the disclosure of which is incorporated fully herein by reference.
This invention relates to the field of Internet communications, more particularly, to a database system for use in dynamically redirecting and filtering Internet traffic.
In prior art systems as shown in
The redirection of Internet traffic is most often done with World Wide Web (WWW) traffic (more specifically, traffic using the HTTP (hypertext transfer protocol)). However, redirection is not limited to WWW traffic, and the concept is valid for all IP services. To illustrate how redirection is accomplished, consider the following example, which redirects a user's request for a WWW page (typically an html (hypertext markup language) file) to some other WWW page. First, the user instructs the WWW browser (typically software running on the user's PC) to access a page on a remote WWW server by typing in the URL (universal resource locator) or clicking on a URL link. Note that a URL provides information about the communications protocol, the location of the server (typically an Internet domain name or IP address), and the location of the page on the remote server. The browser next sends a request to the server requesting the page. In response to the user's request, the web server sends the requested page to the browser. The page, however, contains html code instructing the browser to request some other WWW page—hence the redirection of the user begins. The browser then requests the redirected WWW page according to the URL contained in the first page's html code. Alternately, redirection can also be accomplished by coding the page such that it instructs the browser to run a program, like a Java applet or the like, which then redirects the browser. One disadvantage with current redirection technology is that control of the redirection is at the remote end, or WWW server end—and not the local, or user end. That is to say that the redirection is performed by the remote server, not the user's local gateway.
Filtering packets at the Internet Protocol (IP) layer has been possible using a firewall device or other packet filtering device for several years. Although packet filtering is most often used to filter packets coming into a private network for security purposes, once properly programed, they can filter outgoing packets sent from users to a specific destination as well. Packet filtering can distinguish, and filter based on, the type of IP service contained within an IP packet. For example, the packet filter cart determine if the packet contains FTP (file transfer protocol) data, WWW data, or Telnet session data. Service identification is achieved by identifying the terminating port number contained within each IP packet header. Port numbers are standard within the industry to allow for interoperability between equipment. Packet filtering devices allow network administrators to filter packets based on the source and/or destination information, as well as on the type of service being transmitted within each IP packet. Unlike redirection technology, packet filtering technology allows control at the local end of the network connection, typically by the network administrator. However, packet filtering is very limited because it is static. Once packet filtering rule sets are programed into a firewall or other packet filter device, the rule set can only be changed by manually reprogramming the device.
Packet filter devices are often used with proxy server systems, which provide access control to the Internet and are most often used to control access to the world wide web. In a typical configuration, a firewall or other packet filtering device filters all WWW requests to the Internet from a local network, except for packets from the proxy server. That is to say that a packet filter or firewall blocks all traffic originating from within the local network which is destined for connection to a remote server on port 80 (the standard WWW port number). However, the packet filter or firewall permits such traffic to and from the proxy server. Typically, the proxy server is programed with a set of destinations that are to be blocked, and packets destined for blocked addresses are not forwarded. When the proxy server receives a packet, the destination is checked against a database for approval. If the destination is allowed, the proxy server simply forwards packets between the local user and the remote server outside the firewall. However, proxy servers are limited to either blocking or allowing specific system terminals access to remote databases.
A recent system is disclosed in U.S. Pat. No. 5,696,898. This patent discloses a system, similar to a proxy server, that allows network administrators to restrict specific IP addresses inside a firewall from accessing information from certain public or otherwise uncontrolled databases (i.e., the WWW/Internet). According to the disclosure, the system has a relational database which allows network administrators to restrict specific terminals, or groups of terminals, from accessing certain locations. Similarly limited as a proxy server, this invention can only block or allow terminals' access to remote sites. This system is also static in that rules programmed into the database need to be reprogramming in order to change which locations specific terminals may access.
The present invention allows for creating and implementing dynamically changing rules, to allow the redirection, blocking, or allowing, of specific data traffic for specific users, as a function of database entries and the user's activity. In certain embodiments according to the present invention, when the user connects to the local network, as in the prior art system, the user's ID and password are sent to the authentication accounting server. The user ID and password are checked against information in an authentication database. The database also contains personalized filtering and redirection information for the particular user ID. During the connection process, the dial-up network server provides the authentication accounting server with the IP address that is going to be temporarily assigned to the user. The authentication accounting server then sends both the user's temporary IP address and all of the particular user's filter and redirection information to a redirection server. The IP address temporarily assigned to the end user is then sent back to the end user for use in connecting to the network.
Once connected to the network, all data packets sent to, or received by, the user include the user's temporary IP address in the IP packet header. The redirection server uses the filter and redirection information supplied by the authentication accounting server, for that particular IP address, to either allow packets to pass through the redirection server unmolested, block the request all together, or modify the request according to the redirection information.
When the user terminates the connection with the network, the dial-up network server informs the authentication accounting server, which in turn, sends a message to the redirection server telling it to remove any remaining filtering and redirection information for the terminated user's temporary IP address. This then allows the dial-up network to reassign that IP address to another user. In such a case, the authentication accounting server retrieves the new user's filter and redirection information from the database and passes it, with the same IP address which is now being used by a different user, to the redirection server. This new user's filter may be different from the first user's filter.
In the following embodiments of the invention, common reference numerals are used to represent the same components. If the features of an embodiment are incorporated into a single system, these components can be shared and perform all the functions of the described embodiments.
The PC 100 first connects to the dial-up network server 102. The connection is typically created using a computer modem, however a local area network (LAN) or other communications link can be employed. The dial-up network server 102 is used to establish a communications link with the user's PC 100 using a standard communications protocol. In the preferred embodiment Point to Point Protocol (PPP) is used to establish the physical link between the PC 100 and the dial-up network server 102, and to dynamically assign the PC 100 an IP address from a list of available addresses. However, other embodiments may employ different communications protocols, and the IP address may also be permanently assigned to the PC 100. Dial-up network servers 102. PPP and dynamic IP address assignment are well known in the art.
An authentication accounting server with Auto-Navi component (hereinafter, authentication accounting server) 204 is used to authenticate user ID and permit, or deny, access to the network. The authentication accounting server 204 queries the database 206 to determine if the user ID is authorized to access the network. If the authentication accounting server 204 determines the user ID is authorized, the authentication accounting server 204 signals the dial-up network server 102 to assign the PC 100 an IP address, and the Auto-Navi component of the authentication accounting server 204 sends the redirection server 208 (1) the filter and redirection information stored in database 206 for that user ID and (2) the temporarily assigned IP address for the session. One example of an authentication accounting server is discussed in U S. Pat. No. 5,845,070, which is fully incorporated here by reference. Other types of authentication accounting servers are known in the art. However, these authentication accounting servers lack an Auto-Navi component.
The system described herein operates based on user Id's supplied to it by a computer. Thus the system does not “know” who the human being “user” is at the keyboard of the computer that supplies a user ID. However, for the purposes of this detailed description. “user” will often be used as a short hand expression for “the person supplying inputs to a computer that is supplying the system with a particular user ID.”
The database 206 is a relational database which stores the system data.
Rule sets are employed by the system and are unique for each user ID, or a group of user ID's. The rule sets specify elements or conditions about the user's session. Rule sets may contain data about a type of service which may or may not be accessed, a location which may or may not be accessed, how long to keep the rule set active, under what conditions the rule set should be removed, when and how to modify the rule set during a session, and the like. Rule sets may also have a preconfigured maximum lifetime to ensure their removal from the system.
The redirection server 208 is logically located between the user's computer 100 and the network, and controls the user's access to the network. The redirection server 208 performs all the central tasks of the system. The redirection server 208 receives information regarding newly established sessions from the authentication accounting server 204. The Auto-Navi component of the authentication accounting server 204 queries the database for the rule set to apply to each new session, and forwards the rule set and the currently assigned IP address to the redirection server 208. The redirection server 208 receives the IP address and rule set, and is programed to implement the rule set for the IP address, as well as other attendant logical decisions such as: checking data packets and blocking or allowing the packets as a function of the rule sets, performing the physical redirection of data packets based on the rule sets, and dynamically changing the rule sets based on conditions. When the redirection server 208 receives information regarding a terminated session from the authentication accounting server 204, the redirection server 208 removes any outstanding rule sets and information associated with the session. The redirection server 208 also checks for and removes expired ride sets from time to time.
In an alternate embodiment, the redirection server 208 reports all or some selection of session information to the database 206. This information may then be used for reporting, or additional rule set generation.
In the present embodiment, each specific user may be limited to, or allowed, specific IP services, such as WWW, FTP and Telnet. This allows a user, for example, WWW access, but not FTP access or Telnet access. A user's access can be dynamically changed by editing the user's database record and commanding the Auto-Navi component of the authentication accounting server 204 to transmit the user's new rule set and current IP address to the redirection server 208.
A user's access can be “locked” to only allow access to one location, or a set of locations, without affecting other users' access. Each time a locked user attempts to access another location, the redirection server 208 redirects the user to a default location. In such a case, the redirection server 208 acts either as proxy for the destination address, or in the case of WWW traffic the redirection server 208 replies to the user's request with a page containing a redirection command.
A user may also be periodically redirected to a location, based on a period of time or some other condition. For example, the user will first be redirected to a location regardless of what location the user attempts to reach, then permitted to access other locations, but every ten minutes the user is automatically redirected to the first location. The redirection server 208 accomplishes such a rule set by setting an initial temporary rule set to redirect all traffic; after the user accesses the redirected location, the redirection server then either replaces the temporary rule set with the user's standard rule set or removes the rule set altogether from the redirection server 208. After a certain or variable time period, such as ten minutes, the redirection server 208 reinstates the rule set again.
The following steps describe details of a typical user session:
The following is an example of a typical user's rule set, attendant logic and operation:
If the rule set for a particular user (i.e., user UserID-2) was such as to only allow that user to access the web site www.us.com, and permit Telnet services, and redirect all web access from any server at xyz.com to www.us.com, then the logic would be as follows:
The database 206 would contain the following record for user UserID-2:
ID
UserID-2
Password:
secret
################
### Rule Sets ###
################
#service
rule
expire
http
www.us.com
0
http
*.xyz.com=>www.us.com
0
The redirection server 208 monitors all the IP packets, checking each against the rule set. In this situation, if IP address 10.0.0.1 (the address assigned to user ID UserID-2) attempts to send a packet containing HTTP data (i.e., attempts to connect to port 80 on any machine within the xyz.com domain) the traffic is redirected by the redirection server 208 to www.us.com. Similarly, if the user attempts to connect to any service other then HTTP at www.us.com or Telnet anywhere, the packet will simply be blocked by the redirection server 208.
When the user logs out or disconnects from the system, the redirection server will remove all remaining rule sets.
The following is another example of a typical user's rule set, attendant logic and operation:
If the rule set for a particular user (i.e., user UserID-3) was to force the user to visit the web site www.widgetsell.com, first, then to have unfettered access to other web sites, then the logic would be as follows:
The database 206 would contain the following record for user UserID-3;
ID
UserID-3
Password:
top-secret
################
### Rule Sets ###
################
#service
rule
expire
http
*=>www.widgetsell.com
1x
The redirection server 208 monitors all the IP packets, checking each against the rule set. In this situation, if IP address 10.0.0.1 (the address assigned to user ID UserID-3) attempts to send a packet containing HTTP data (i.e., attempts to connect to port 80 on any machine) the traffic is redirected by the redirection server 208 to www.widgetsell.com. Once this is done, the redirection server 208 will remove the rule set and the user if free to use the web unmolested.
When the user logs out or disconnects from the system, the redirection server will remove all remaining rule sets.
In an alternate embodiment a user may be periodically redirected to a location, based on the number of other factors, such as the number of locations accessed, the time spent at a location, the types of locations accessed, and other such factors.
A user's account can also be disabled after the user has exceeded a length of time. The authentication accounting server 204 keeps track of user's time online. Prepaid use subscriptions can thus be easily managed by the authentication accounting Server 204.
In yet another embodiment, signals from the Internet 110 side of redirection server 208 can be used to modify rule sets being used by the redirection server. Preferably, encryption and/or authentication are used to verify that the server or other computer on the Internet 110 side of redirection server 208 is authorized to modify the rule set or rule sets that are being attempted to be modified. An example of this embodiment is where it is desired that a user be redirected to a particular web site until the fill out a questionnaire or satisfy some other requirement on such a web site. In this example, the redirection server redirects a user to a particular web site that includes a questionnaire. After this web site receives acceptable data in all required fields, the web site then sends an authorization to the redirection server that deletes the redirection to the questionnaire web site from the rule set for the user who successfully completed the questionnaire. Of course, the type of modification an outside server can make to a rule set on the redirection server is not limited to deleting a redirection rule, but can include any other type of modification to the rule set that is supported by the redirection server as discussed above.
It will be clear to one skilled in the art that the invention may be implemented to control (block, allow and redirect) any type of service, such as Telnet, FTP, WWW and the like. The invention is easily programmed to accommodate new services or networks and is not limited to those services and networks (e.g., the Internet) now know in the art.
It will also be clear that the invention may be implemented on a non-IP based networks which implement other addressing schemes, such as IPX, MAC addresses and the like. While the operational environment detailed in the preferred embodiment is that of an ISP connecting users to the Internet, it will be clear to one skilled in the art that the invention may be implemented in any application where control over users' access to a network or network resources is needed, such as a local area network, wide area network and the like. Accordingly, neither the environment nor the communications protocols are limited to those discussed.
Ikudome, Koichiro, Yeung, Moon Tai
Patent | Priority | Assignee | Title |
10057366, | Dec 31 2015 | U S BANK NATIONAL ASSOCIATION | Accurate caching in adaptive video streaming based on collision resistant hash applied to segment contents and ephemeral request and URL data |
10257242, | Dec 18 2001 | Perftech, Inc. | Internet provider subscriber communications system |
10601944, | Dec 31 2015 | Hughes Network Systems, LLC | Accurate caching in adaptive video streaming based on collision resistant hash applied to segment contents and ephemeral request and URL data |
10834157, | Dec 18 2001 | Perftech, Inc. | Internet provider subscriber communications system |
11336586, | Dec 18 2001 | Perftech, Inc. | Internet provider subscriber communications system |
11736543, | Dec 18 2001 | PERFTECH, INC | Internet provider subscriber communications system |
11743205, | Dec 18 2001 | Perftech, Inc. | Internet provider subscriber communications system |
Patent | Priority | Assignee | Title |
5678041, | Jun 06 1995 | Cooper Union for the Advancement of Science and Art | System and method for restricting user access rights on the internet based on rating information stored in a relational database |
5696898, | Jun 06 1995 | THE CHASE MANHATTAN BANK, AS COLLATERAL AGENT | System and method for database access control |
5708780, | Jun 07 1995 | Soverain IP, LLC | Internet server access control and monitoring systems |
5740430, | Nov 06 1995 | Open Text SA ULC | Method and apparatus for server-independent caching of dynamically-generated customized pages |
5749075, | Jun 06 1995 | TOADER, ADRIAN | Method for providing prepaid internet access and/or long distance calling including the distribution of specialized calling cards |
5774869, | Jun 06 1995 | TOADER, ADRIAN | Method for providing sponsor paid internet access and simultaneous sponsor promotion |
5781550, | Feb 02 1996 | Hewlett Packard Enterprise Development LP | Transparent and secure network gateway |
5794210, | Dec 11 1995 | MYPOINTS COM, INC | Attention brokerage |
5802320, | May 18 1995 | Sun Microsystems, Inc | System for packet filtering of data packets at a computer network interface |
5805803, | May 13 1997 | Uber Technologies, Inc | Secure web tunnel |
5806043, | Jun 06 1995 | TOADER, ADRIAN | Method for providing customer on-line support via prepaid internet access |
5812776, | Jun 07 1995 | Soverain IP, LLC | Method of providing internet pages by mapping telephone number provided by client to URL and returning the same in a redirect command by server |
5815574, | Dec 15 1994 | International Business Machines Corporation | Provision of secure access to external resources from a distributed computing environment |
5835727, | Dec 09 1996 | AMAZON COM, INC | Method and apparatus for controlling access to services within a computer network |
5845267, | Sep 06 1996 | AT&T Corp | System and method for billing for transactions conducted over the internet from within an intranet |
5848233, | Dec 09 1996 | Oracle America, Inc | Method and apparatus for dynamic packet filter assignment |
5850517, | Aug 31 1995 | Oracle International Corporation | Communication link for client-server having agent which sends plurality of requests independent of client and receives information from the server independent of the server |
5855008, | Dec 11 1995 | MYPOINTS COM, INC | Attention brokerage |
5864683, | Oct 12 1994 | McAfee, LLC | System for providing secure internetwork by connecting type enforcing secure computers to external network for limiting access to data based on user and process access rights |
5881234, | Apr 26 1996 | Method and system to provide internet access to users via non-home service providers | |
5889958, | Dec 20 1996 | ASCEND COMMUNICATIONS, INC | Network access control system and process |
5915093, | Apr 24 1997 | HANGER SOLUTIONS, LLC | Computer network debit disk used for prepayment to transfer information from a central computer |
5918018, | Feb 09 1996 | McAfee, LLC | System and method for achieving network separation |
5948061, | Oct 29 1996 | GOOGLE LLC | Method of delivery, targeting, and measuring advertising over networks |
5950195, | Sep 18 1996 | McAfee, LLC | Generalized security policy management system and method |
5956697, | Jul 11 1996 | INTERNATIONAL SCIENTIFIC CO , LTD | Timer-based fee-charging system for internet |
5960409, | Oct 11 1996 | WEB TRACKING SOLUTIONS LLC | Third-party on-line accounting system and method therefor |
5963915, | Feb 21 1996 | DISNEY ENTERPRISES, INC | Secure, convenient and efficient system and method of performing trans-internet purchase transactions |
5987430, | Aug 28 1997 | Cisco Technology, Inc | Communications network connection system and method |
5987523, | Jun 04 1997 | International Business Machines Corporation | Applet redirection for controlled access to non-orginating hosts |
5987611, | Dec 31 1996 | CHECK POINT SOFTWARE TECHNOLOGIES, INC | System and methodology for managing internet access on a per application basis for client computers connected to the internet |
6014698, | May 19 1997 | AT HOME BONDHOLDERS LIQUIDATING TRUST | System using first banner request that can not be blocked from reaching a server for accurately counting displays of banners on network terminals |
6052725, | Jul 02 1998 | Alcatel-Lucent USA Inc | Non-local dynamic internet protocol addressing system and method |
6070243, | Jun 13 1997 | Alcatel USA Sourcing, Inc | Deterministic user authentication service for communication network |
6073178, | Dec 09 1996 | Oracle America, Inc | Method and apparatus for assignment of IP addresses |
6088451, | Jun 28 1996 | Verizon Patent and Licensing Inc | Security system and method for network element access |
6098172, | Sep 12 1997 | THE CHASE MANHATTAN BANK, AS COLLATERAL AGENT | Methods and apparatus for a computer network firewall with proxy reflection |
6112239, | Jun 18 1997 | Intervu, Inc | System and method for server-side optimization of data delivery on a distributed computer network |
6119160, | Oct 13 1998 | Cisco Technology, Inc | Multiple-level internet protocol accounting |
6119162, | Sep 25 1998 | ACTIONTEC ELECTRONICS, INC | Methods and apparatus for dynamic internet server selection |
6154775, | Sep 12 1997 | PALO ALTO NETWORKS, INC | Methods and apparatus for a computer network firewall with dynamic rule processing with the ability to dynamically alter the operations of rules |
6157829, | Oct 08 1997 | MOTOROLA SOLUTIONS, INC | Method of providing temporary access of a calling unit to an anonymous unit |
6158008, | Oct 23 1997 | AT&T MOBILITY II LLC | Method and apparatus for updating address lists for a packet filter processor |
6170012, | Sep 12 1997 | THE CHASE MANHATTAN BANK, AS COLLATERAL AGENT | Methods and apparatus for a computer network firewall with cache query processing |
6182139, | Aug 05 1996 | RESONATE INC | Client-side resource-based load-balancing with delayed-resource-binding using TCP state migration to WWW server farm |
6219790, | Jun 19 1998 | ASCEND COMMUNICATIONS, INC | Centralized authentication, authorization and accounting server with support for multiple transport protocols and multiple client types |
6223209, | Sep 30 1997 | HUAWEI TECHNOLOGIES CO , LTD | Distributed world wide web servers |
6226677, | Nov 25 1998 | LodgeNet Entertainment Corporation | Controlled communications over a global computer network |
6233618, | Mar 31 1998 | CONTENT ADVISOR, INC | Access control of networked data |
6233686, | Jan 17 1997 | AT&T Corp | System and method for providing peer level access control on a network |
6247054, | Mar 24 1997 | RPX CLEARINGHOUSE LLC | Method and apparatus for redirecting packets using encapsulation |
6272115, | Jan 28 1998 | Sprint Communications Company, L.P.; SPRINT COMMUNICATIONS COMPANY, L P | Interactive toll-free telephone service automation |
6311275, | Aug 03 1998 | Cisco Technology, Inc | Method for providing single step log-on access to a differentiated computer network |
6321336, | |||
6377990, | Jun 15 1998 | GATE WORLDWIDE HOLDINGS LLC | System for providing internet access from locations different from those for which the user's software was configured |
6438125, | Jan 22 1999 | RPX CLEARINGHOUSE LLC | Method and system for redirecting web page requests on a TCP/IP network |
6460084, | Aug 28 1997 | Cisco Systems, Inc | Forced network portal |
6466976, | Dec 03 1998 | RPX CLEARINGHOUSE LLC | System and method for providing desired service policies to subscribers accessing the internet |
6636894, | Dec 08 1998 | GATE WORLDWIDE HOLDINGS LLC | Systems and methods for redirecting users having transparent computer access to a network using a gateway device having redirection capability |
6687732, | Sep 28 1998 | R2 SOLUTIONS LLC | Adaptive traffic bypassing in an intercepting network driver |
6721306, | Mar 11 1997 | Verizon Patent and Licensing Inc | Public wireless/cordless internet gateway |
6779118, | May 04 1998 | LINKSMART WIRELESS TECHNOLOGY, LLC | User specific automatic data redirection system |
20070294417, | |||
CA2226814, | |||
DE69941540, | |||
EP811939, | |||
EP854621, | |||
GB2316841, | |||
WO16529, | |||
WO9605549, | |||
WO9639668, | |||
WO9711429, | |||
WO9803927, | |||
WO9826548, | |||
WO9957660, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Apr 20 2015 | LINKSMART WIRELESS TECHNOLOGY, LLC | (assignment on the face of the patent) | / |
Date | Maintenance Fee Events |
Date | Maintenance Schedule |
Jun 27 2020 | 4 years fee payment window open |
Dec 27 2020 | 6 months grace period start (w surcharge) |
Jun 27 2021 | patent expiry (for year 4) |
Jun 27 2023 | 2 years to revive unintentionally abandoned end. (for year 4) |
Jun 27 2024 | 8 years fee payment window open |
Dec 27 2024 | 6 months grace period start (w surcharge) |
Jun 27 2025 | patent expiry (for year 8) |
Jun 27 2027 | 2 years to revive unintentionally abandoned end. (for year 8) |
Jun 27 2028 | 12 years fee payment window open |
Dec 27 2028 | 6 months grace period start (w surcharge) |
Jun 27 2029 | patent expiry (for year 12) |
Jun 27 2031 | 2 years to revive unintentionally abandoned end. (for year 12) |