System, method and apparatus for use in monitoring or controlling internet access
First Claim
Patent Images
1. A method of categorizing Uniform Resource Locators (URLs) to control Internet access, comprising:
- receiving a URL request denoting a specified URL;
generating a request message to request categorization of the specified URL;
receiving a reply message denoting a category for the specified URL amongst a predetermined set of categories;
adding the specified URL and the category to a category cache,wherein the category cache comprises;
a hash array wherein a host portion of the specified URL is hashed to identify a corresponding index element in the hash array; and
a combined host tree and age list stored at the identified corresponding index element in the hash array associated with the host portion of the specified URL,wherein each tree node of the host tree comprises URL data representing a specified URL and a corresponding category, and each tree node further comprises a next pointer and a previous pointer which refer to a next older tree node and a previous newer tree node, respectively, to form an age list, andwherein adding the specified URL and the category to the category cache comprises;
identifying the corresponding index element in the hash array;
storing the URL data at the head of the age list; and
removing an oldest tree node from the tail of the age list when the category cache has reached a predetermined maximum size;
wherein in response to receiving a second or subsequent instance of a URL request with respect to the specified URL, the method further comprises;
determining the category of the specified URL from the category cache;
moving the URL data representing the specified URL to the head of the age list; and
processing the second or subsequent URL request based on the category of the specified URL from the category cache.
10 Assignments
0 Petitions
Accused Products
Abstract
An apparatus method and system are described for categorizing Uniform Resource Locators (URLs) when accessing the Internet from a client. A request message is generated to request categorization of a specified URL, and a category is provided in a reply message. The specified URL and the category are added to a category cache. In a second or subsequent instance of a URL request referring to the specified URL, the category is determined from the category cache. This reduces communication traffic in a network such as the Internet.
-
Citations
30 Claims
-
1. A method of categorizing Uniform Resource Locators (URLs) to control Internet access, comprising:
-
receiving a URL request denoting a specified URL; generating a request message to request categorization of the specified URL; receiving a reply message denoting a category for the specified URL amongst a predetermined set of categories; adding the specified URL and the category to a category cache, wherein the category cache comprises; a hash array wherein a host portion of the specified URL is hashed to identify a corresponding index element in the hash array; and a combined host tree and age list stored at the identified corresponding index element in the hash array associated with the host portion of the specified URL, wherein each tree node of the host tree comprises URL data representing a specified URL and a corresponding category, and each tree node further comprises a next pointer and a previous pointer which refer to a next older tree node and a previous newer tree node, respectively, to form an age list, and wherein adding the specified URL and the category to the category cache comprises; identifying the corresponding index element in the hash array; storing the URL data at the head of the age list; and removing an oldest tree node from the tail of the age list when the category cache has reached a predetermined maximum size; wherein in response to receiving a second or subsequent instance of a URL request with respect to the specified URL, the method further comprises; determining the category of the specified URL from the category cache; moving the URL data representing the specified URL to the head of the age list; and processing the second or subsequent URL request based on the category of the specified URL from the category cache. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 30)
-
-
22. A system for use in controlling or monitoring of Internet access by categorizing Uniform Resource Locators (URLs), comprising:
-
a client device arranged to monitor or control Internet access according to a category code of a specified URL, and including a categorization module to provide the category code for the specified URL from a category cache stored at the client device or else generate a request message to request categorization of the specified URL, the client device comprising a memory configured to store a category cache; and a categorization server coupled to communicate with the client device and arranged to receive the request message and to send a reply message identifying a category code for the specified URL, wherein a processor of said client device is configured to; receive a URL request denoting the specified URL; generate a request message to request categorization of the specified URL by the categorization server; receive a reply message from the categorization server denoting a category for the specified URL amongst a predetermined set of categories; and add the specified URL and the category to the category cache, wherein the category cache comprises; a hash array wherein a host portion of the specified URL is hashed to identify a corresponding index element in the hash array; and a combined host tree and age list stored at the identified corresponding index element in the hash array associated with the host portion of the specified URL, wherein each tree node of the host tree comprises URL data representing a specified URL and a corresponding category, and each tree node further comprises a next pointer and a previous pointer which refer to a next older tree node and a previous newer tree node, respectively, to form an age list, and wherein to add the specified URL and the category to the category cache, the processor of the client device is further configured to; identify the corresponding index element in the hash array; store the URL data at the head of the age list; and remove an oldest tree node from the tail of the age list when the category cache has reached a predetermined maximum size; wherein in response to receiving a second or subsequent instance of a URL request with respect to the specified URL, the client device is configured to; determine the category of the specified URL from the category cache; move the URL data representing the specified URL to the head of the age list; and process the second or subsequent URL request based on the category of the specified URL from the category cache. - View Dependent Claims (23, 24, 25, 26, 27)
-
-
28. A client device, comprising:
-
a computer readable medium having stored thereon instructions that when executed by a processor of the client device provide; an interface module arranged to present a URL categorization function, wherein the interface module receives a specified URL from a client software module executed by the processor and returns a category code of the specified URL; a category cache module storing a plurality of URLs and associated category codes, such that matching the specified URL against one of the stored URLs provides the category code; and a communication module arranged to send an outgoing request message to a categorization server when there is no match in the category cache and to receive and buffer incoming data including a corresponding reply message, wherein the request message comprises the specified URL and the reply message comprises the category code, wherein the category cache module is configured to store the specified URL and the category code to a category cache, the category cache comprising; a hash array wherein a host portion of the specified URL is hashed to identify a corresponding index element in the hash array; and a combined host tree and age list stored at the identified corresponding index element in the hash array associated with the host portion of the specified URL, wherein each tree node of the host tree comprises URL data representing a specified URL and a corresponding category, and each tree node further comprises a next pointer and a previous pointer which refer to a next older tree node and a previous newer tree node, respectively, to form an age list, and wherein to store the specified URL and the category, the category cache module is configured is to; identify the corresponding index element in the hash array; store the URL data at the head of the age list; and remove an oldest tree node from the tail of the age list when the category cache has reached a predetermined maximum size; and wherein, in response to receiving a second or subsequent instance of a URL request by the interface module with respect to the specified URL, the category cache module is configured to; determine the category of the specified URL from the category cache; and move the URL data representing the specified URL to the head of the age list. - View Dependent Claims (29)
-
Specification