U.S. patent application number 11/965547 was filed with the patent office on 2008-07-10 for systems and methods for site access.
This patent application is currently assigned to NETSELECTOR, INC.. Invention is credited to Jonathan Woods, Ed Wynne.
Application Number | 20080168535 11/965547 |
Document ID | / |
Family ID | 25528974 |
Filed Date | 2008-07-10 |
United States Patent
Application |
20080168535 |
Kind Code |
A1 |
Woods; Jonathan ; et
al. |
July 10, 2008 |
SYSTEMS AND METHODS FOR SITE ACCESS
Abstract
Monitoring site access via an intervening control layer within a
client is disclosed. In one embodiment of the invention, a
computerized system includes a plurality of sites, a monitoring
server, and a client. Each site has content referenced be
addresses. The monitoring server maintains a database of
permissible content on at least one of the plurality of sites,
where the permissible content is also referenced by addresses. The
client has an intervening control layer within an otherwise
standard mechanism by which programs running on the client access
the content on the plurality of sites. The intervening control
layer polls the monitoring server to determine whether a program
attempting to access content on one of the sites as referenced by
an address should be permitted to do so.
Inventors: |
Woods; Jonathan;
(Minneapolis, MN) ; Wynne; Ed; (Plymouth,
MN) |
Correspondence
Address: |
Schwegman, Lundberg, Woessner & Kluth, P.A.
P.O. Box 2938
Minneapolis
MN
55402
US
|
Assignee: |
NETSELECTOR, INC.
|
Family ID: |
25528974 |
Appl. No.: |
11/965547 |
Filed: |
December 27, 2007 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
10099196 |
Mar 13, 2002 |
7334037 |
|
|
11965547 |
|
|
|
|
08982240 |
Dec 1, 1997 |
6446128 |
|
|
10099196 |
|
|
|
|
Current U.S.
Class: |
726/3 ;
707/E17.109 |
Current CPC
Class: |
G06F 16/9535 20190101;
H04L 29/06 20130101; H04L 63/10 20130101; H04L 67/02 20130101; H04L
69/32 20130101; H04L 67/20 20130101; H04L 69/329 20130101; H04L
63/1408 20130101 |
Class at
Publication: |
726/3 |
International
Class: |
G06F 21/00 20060101
G06F021/00 |
Claims
1.-37. (canceled)
38. A system comprising: a computer that has access to one or more
destination sites, the one or more destination sites being hosted
on one or more servers and having content referenced by one or more
addresses; and a monitoring server that is distinct from the one or
more servers, the monitoring server having one or more rules that
govern access to the one or more destination sites, and wherein the
computer is denied access to one of the destination sites if the
one or more rules disallow such access.
39. The system of claim 38, wherein the computer comprises: a
processor; a random-access memory; a read-only memory; and one or
more storage devices.
40. The system of claim 39, wherein the one or more storage devices
are selected from a group consisting of a hard disk drive, a floppy
disk drive, an optical disk drive, and a tape cartridge drive.
41-48. (canceled)
Description
CROSS-REFERENCE TO RELATED APPLICATION
[0001] This is a continuation under 37 C.F.R. 1.53(b) of U.S.
patent application Ser. No. 08/982,240, filed Dec. 1, 1997, which
application is incorporated herein by reference.
FIELD OF THE INVENTION
[0002] This invention relates generally to monitoring access by a
client to a plurality of sites, and more particularly to such
monitoring via an intervening control layer within the client.
BACKGROUND OF THE INVENTION
[0003] With the advent of the Internet, monitoring access to
world-wide web sites has reached paramount importance. For example,
a school or parent may desire that children only be able to access
a limited number of sites that are known not to contain material
believed not suitable for children. As another example, an employer
may only want its employees to access information from sites that
are believed to be relevant to the employees' jobs, and not the
entire Internet.
[0004] Prior art solutions aimed at monitoring access to world-wide
web sites are not fool proof, however. One approach is to
incorporate within the program by which Internet access is
accomplished safeguards to prevent access to unauthorized sites.
For example, versions of Netscape Navigator or Microsoft Internet
Explorer may be modified such that Internet access is monitored
(viz., access to certain site prohibited). However, this approach
is easily circumvented by merely installing an unadulterated
version of Netscape Navigator or Microsoft Internet on the
computer.
[0005] Another approach is to limit access to objectionable sites
on the Internet at the Internet Service Provider (ISP) level. To
connect to the Internet, a user must have an account with an ISP,
through which the user accesses content on the Internet. The ISP
thus can limit the content to which the user has access. This
approach is also easily circumvented, however. The user may merely
connect to the Internet using an account with a different ISP,
which allows complete access to the entire Internet, including
objectionable content.
[0006] Therefore, there is a need for better monitoring of Internet
access that is not as easily circumvented as solutions found in the
prior art are.
SUMMARY OF THE INVENTION
[0007] The above-identified shortcomings as well as other
shortcomings and problems are addressed by the present invention,
which will be understood by reading and studying the following
specification. In one embodiment, a computerized system includes a
plurality of sites, a monitoring server, and a client. Each site
has content referenced be addresses. The monitoring server
maintains a database of permissible content on at least one of the
plurality of sites, where the permissible content is also
referenced by addresses. The client has an intervening control
layer within an otherwise standard mechanism by which programs
running on the client access the content on the plurality of sites.
The intervening control layer polls the monitoring server to
determine whether a program attempting to access content on one of
the sites as referenced by an address should be permitted to do
so.
[0008] More specifically, in one particular embodiment of the
invention, the plurality of sites are Internet world-wide-web
sites, and the monitoring server and the client are also
communicatively coupled via the Internet. In this particular
embodiment, content is referenced via a Universal Resource Locator
(URL), and the otherwise standard mechanism of the client includes
a socket services program and a TCP/IP handler program, such that
the intervening control layer resides between the two. Thus, any
sort of program accessing the Internet must go through the socket
services program and the TCP/IP handler program, and also the
intervening control layer.
[0009] The invention thus provides for advantages not found in the
prior art. With respect to the specific embodiment described above,
monitoring access to the Internet is not contingent on the browser
program being run on the client. Any browser program--Microsoft
Internet Explorer, Netscape Navigator, or a different browser
program--must go through the socket services program (e.g.,
WinSock), and the TCP/IP handler program (e.g., the TCP/IP stack),
such that the intervening control layer may intercept URL
addresses, and via a call to the monitoring server, determine
whether they access should be permitted thereto.
[0010] Furthermore, also with respect to the specific embodiment
described above, monitoring access to the Internet is also not
contingent on the Internet Service Provider (ISP) through which the
Internet is accessed. Regardless of the ISP used, access at the
client must go through the socket services program, the TCP/IP
handler program, and thus the intervening control layer, so that
URL address may be intercepted, and via a call to the monitoring
server, deemed to be permissible or not.
[0011] In different embodiments of the invention, computerized
methods, computerized systems, computers, servers and
computer-readable media of varying scope are described. Still other
and further embodiments, aspects and advantages of the invention
will become apparent by reference to the drawings and by reading
the following detailed description.
BRIEF DESCRIPTION OF THE DRAWINGS
[0012] FIG. 1 is a diagram of a computer in conjunction with which
embodiments of the invention may be implemented;
[0013] FIG. 2(a) is a diagram of a computerized system in
accordance with one embodiment of the invention;
[0014] FIG. 2(b) is a diagram of a computerized system in
accordance with another embodiment of the invention; and,
[0015] FIG. 3 is a diagram of a computerized method in accordance
with one embodiment of the invention.
DETAILED DESCRIPTION OF THE INVENTION
[0016] In the following detailed description of the preferred
embodiments, reference is made to the accompanying drawings which
form a part hereof, and in which is shown by way of illustration
specific preferred embodiments in which the inventions may be
practiced. These embodiments are described in sufficient detail to
enable those skilled in the art to practice the invention, and it
is to be understood that other embodiments may be utilized and that
logical, mechanical and electrical changes may be made without
departing from the spirit and scope of the present invention. The
following detailed description is, therefore, not to be taken in a
limiting sense, and the scope of the present invention is defined
only by the appended claims.
[0017] Referring first to FIG. 1, a diagram of a computer in
conjunction with which embodiments of the invention may be
implemented is shown. Computer 110 is operatively coupled to
display device 112, pointing device 114, and keyboard 116. Computer
110 includes a processor (preferably, an Intel Pentium processor),
random-access memory (RAM) (preferably, at least thirty-two
megabytes), read-only memory (ROM), and one or more storage
devices, such as a hard disk drive, a floppy disk drive (into which
a floppy disk can be inserted), an optical disk drive, and a tape
cartridge drive. The memory, hard drives, floppy disks, etc., are
types of computer-readable media. The hard drives and floppy disks
are also types of non-volatile storage media. The invention is not
particularly limited to any type of computer 110. Computer 110
preferably is a PC-compatible computer or a MacOS-compatible
computer. The construction and operation of such computers are well
known within the art.
[0018] Furthermore, computer 110 may be communicatively connected
to the Internet via a communication device, any particular manner
by which the invention is not limited to, and which is not shown in
FIG. 1. Internet connectivity is well known within the art. In one
embodiment, the computer includes a communication device that is a
modem and corresponding communication drivers to connect to the
Internet via what is known in the art as a "dial-up connection." In
another embodiment, the computer includes a communication device
that is an Ethernet or similar hardware (network) card to connect
to a local-area network (LAN) that itself is connected to the
Internet via what is know in the art as a "direct connection"
(e.g., T1 line, etc.).
[0019] Computer 110 also has at least one operating environment
running thereon, each desirably providing a graphical user
interface including a user-controllable pointer. Such operating
environments include operating systems such as versions of the
Microsoft Windows and Apple MacOS operating systems known in the
art. The invention is not limited to any particular operating
environment, however, and the construction and use of such
operating environments are well known within the art. Computer 110
also desirably has at least one web browser application program
running with the at least one operating environment, to permit
users of computer 110 to access Internet world-wide-web pages as
addressed by Universal Resource Locator (URL) addresses. Such
browser application programs include Netscape Navigator and
Microsoft Internet Explorer. It is noted, however, that the
invention is amenable for implementation on any type of
computer--e.g., a computer running Microsoft Windows, a computer
running Apple MacOS, etc. The embodiments described herein largely
pertain to a computer running Microsoft Windows; this should not be
taken as a limitation as to the invention only pertaining to
Microsoft Windows. For example, where WinSock is specific to
Microsoft Windows, Open Transport would be the corresponding
mechanism utilized in Apple MacOS.
[0020] Display device 112 permits the display of information,
including computer, video and other information, for viewing by a
user of the computer. The invention is not limited to any
particular display device 112. Such display devices include cathode
ray tube (CRT) displays (monitors), as well as flat panel displays
such as liquid crystal displays MCD's). Pointing device 114 permits
the control of the screen pointer provided by the graphical user
interface of operating systems such as versions of Microsoft
Windows. The invention is not limited to any particular pointing
device 114. Such pointing devices include mouses, touch pads,
trackballs, remote controls and point sticks. Finally, keyboard 116
permits entry of textual information into computer 110, as known
within the art, and the invention is not limited to any particular
type of keyboard.
[0021] Referring next to FIG. 2(a), a diagram of a computerized
system in accordance with one embodiment of the invention is shown.
Client computer 200 is able to access sites 202 as permitted by
monitoring server 204. Each of client computer 200, sites 202, and
monitoring server 204 is communicatively coupled to one another via
the Internet 206. Furthermore, each of client computer 200 and
monitoring server 204 may be a computer such as that shown in and
described in conjunction with FIG. 1, although the invention is not
so limited. Thus, each of client computer 200, and monitoring
server 204 has a processor, a computer-readable medium from which
computer programs are executed by the processor, and desirably a
communications device, such as a network card, or a modem. The
communications device provides an Internet connection for the
computer.
[0022] Monitoring server 204 and each of sites 202 desirably is or
includes an Internet world-wide-web server, as known in the art,
such that it has assigned thereto a Universal Resource Locator
(URL) address to permit client computer 200, as well as other
computers, to access the web server. The invention is not
particularly limited to a given type of web server. Typical
examples include those running software available from Netscape,
Microsoft, Apache, NCSA, and others. Each web server is also not
limited to running on a particular operating system (OS); common
operating systems including Microsoft Windows 95, Microsoft Windows
NT, Apple MacOS and UNIX. Furthermore, each of sites 202 includes
content referenced by URL addresses, such as multimedia content,
web pages, images that are part of web pages, etc. More
specifically, the content as referenced by URL address includes a
plurality of hypertext-markup-language (HTML) pages located at a
site; the content may be in a particular directory on a storage
device located at the site, or in one or more directories within
the storage device.
[0023] Client 200 includes a standard mechanism by which programs
running on the client access the sites 202 through the Internet.
The standard mechanism as shown in FIG. 2(a) includes a socket
services program 208, such as WinSock, and a TCP/IP handler program
210, that provides a TCP/IP stack. Thus, when a computer program
running on client 200 attempts to access a site 202 via a URL
address, it passes this information to socket services program 208,
which passes the request to TCP/IP program 210, which then accesses
the site through the Internet as known within the art.
[0024] However, the invention adds an intervening control layer 212
between the socket services program 208 and the TCP/IP program 210.
Intervening control layer 212 monitors information passed between
socket services program 208 and TCP/IP program 210; when a URL
address passes through, layer 212 intercepts the URL address to
determine whether content at the address is permissible to be
accessed. Layer 212 accomplishes this in a two-fold manner. First,
layer 212 checks cache 214 to determine whether the address is
listed therein. Cache 214 is a cache of addresses that were
previously determined to refer to permissible content. If the
address is not in cache 214, layer 212 polls monitoring server 204,
asking monitoring server 204 if the content at the requested URL
address is permissible. Layer 212 is desirably software (e.g., a
computer program) running on client computer 200. Note that layer
212 desirably does not make direct calls to TCP/IP program 210.
[0025] Server 204 maintains a database of permissible content
(referenced by URL addresses), such as a SQL database of such
content. When it receives a request from client 200 as to whether
content at a given URL address is permitted to be accessed, server
204 determines whether the address is in the database, indicating
that the content at this address is permissible. Server 204
desirably accomplishes this by running a computer program having
this functionality. If the content is deemed permissible, layer 212
permits the requested URL address to pass through to TCP/IP program
210, and further adds the address to cache 214, so that subsequent
permission to programs running on the client to access the content
at this URL address can be given without repeated polling of server
204. If the address is not in the database, layer 212 does not
permit the requested URL address to pass through to TCP/IP program
210, effectively denying access to the content at this URL address
by the requesting program running on client 200.
[0026] The manner by which the database is maintained by the server
is not limited under the invention. The database may be maintained
by a separate database server that is a part of monitoring server
204 (where monitoring server 204 also includes a web server).
Furthermore, in one embodiment, permissible content is divided into
two types: type 1 and type 2. Type 1 permissible content is any
file at a given URL address. For example, if a permitted URL
address is "http://www.permissible.com," any file within any
subdirectory at this URL address is
permitted--"http://www.permissible.com/file.htm,
http://www.permissible.com/directory1/directory2/file3.htm," etc.
Type 2 permissible content is any file within any subdirectory
within a given directory or subdirectory at a given URL address.
For example, if a permitted directory at a URL address is
"http://www.permissible.com/permissible," any file within any
subdirectory within the directory "permissible" would be
permissible. That is,
"http://www.permissible.com/permissible/file.htm," and
"http://www.permissible.com/permissible/directory/file2.htm" would
be permissible, but
"http://www.permissible.com/notpermissible/file5.htm" would not
be.
[0027] Furthermore, type 2 permissible content includes image
files, as denoted by .JPG or .GIF suffixes, so long as they reside
at the same URL address, regardless of which directory or
subdirectory within the URL address they reside. This exception is
made because frequently all images at a web site are stored at a
location separate from the web pages using those images. Inasmuch
as the web pages using those images have been deemed to be
permissible, it is assumed that those images are permissible as
well. Thus, the database maintained by the server includes
permissible content, such that at least some of the content
includes all HTML pages located at a web site (type 1), or an
incomplete portion of all the HTML pages located at the site (type
2).
[0028] Referring next to FIG. 2(b), a diagram of a computerized
system in accordance with another embodiment of the invention is
shown. Client computer 400 is able to access sites 402 as permitted
by monitoring server 404. Each of client computer 400, sites 402,
and monitoring server 404 is communicatively coupled to one another
via the Internet 406. Furthermore, each of client computer 400 and
monitoring server 404 may be a computer such as that shown in and
described in conjunction with FIG. 1, although the invention is not
so limited. Thus, each of client computer 400, and monitoring
server 404 has a processor, a computer-readable medium from which
computer programs are executed by the processor, and desirably a
communications device, such as a network card, or a modem. The
communications device provides an Internet connection for the
computer.
[0029] Monitoring server 404 and each of sites 402 desirably is or
includes an Internet world-wide-web server, as known in the art,
such that it has assigned thereto a Universal Resource Locator
(URL) address to permit client computer 400, as well as other
computers, to access the web server. The invention is not
particularly limited to a given type of web server. Typical
examples include those running software available from Netscape,
Microsoft, Apple, Apache, NCSA, and others. Each web server is also
not limited to running on a particular operating system (OS);
common operating systems including Microsoft Windows 95, Microsoft
Windows NT, Apple MacOS and UNIX. Furthermore, each of sites 402
includes content referenced by URL addresses, such as multimedia
content, web pages, images that are part of web pages, etc. More
specifically, the content as referenced by URL address includes a
plurality of hypertext-markup-language (HTML) pages located at a
site; the content may be in a particular directory on a storage
device located at the site, or in one or more directories within
the storage device.
[0030] Client 400 includes a standard mechanism by which programs
running on the client access the sites 402 through the Internet.
The standard mechanism as shown in FIG. 2(a) includes a socket
services program 408, such as WinSock or Open Transport, that
provides a service layer, and a TCP/IP handler program 410, that
provides a TCP/IP transport layer. Thus, when a computer program
running on client 400 attempts to access a site 402 via a URL
address, it passes this information to socket services program 408,
which passes the request to TCP/IP program 410, which then accesses
the site through the Internet as known within the art (i.e.,
through network layer 411 and physical layer 413, as known within
the art). The network layer 411, the transport layer provided by
the TCP/IP program 410, and the service layer provided by the
program 408 (e.g., WinSock or Open Transport) are all known parts
of the Open Systems Interconnection (OSI) model known to those of
ordinary skill in the art.
[0031] However, the invention adds an intervening control layer 412
between the socket services program 408 and the TCP/IP program 410,
via a hook 413 within a memory address 415 of program 408.
Intervening control layer 412 monitors information passed between
socket services program 408 and TCP/IP program 410; when a URL
address passes through, layer 412 intercepts the URL address to
determine whether content at the address is permissible to be
accessed. Layer 412 accomplishes this in a two-fold manner. First,
layer 412 checks cache 414 to determine whether the address is
listed therein. Cache 414 is a cache of addresses that were
previously determined to refer to permissible content. If the
address is not in cache 414, layer 412 polls monitoring server 404,
asking monitoring server 404 if the content at the requested URL
address is permissible, as represented by block 416. Layer 412 is
desirably software (e.g., a computer program) running on client
computer 400. Note that layer 412 desirably does not make direct
calls to TCP/IP program 410.
[0032] Server 404 maintains a database of permissible content
(referenced by URL addresses), such as a SQL database of such
content. When it receives a request from client 400 as to whether
content at a given URL address is permitted to be accessed, server
404 determines whether the address is in the database, indicating
that the content at this address is permissible. Server 404
desirably accomplishes this by running a computer program having
this functionality. If the content is deemed permissible, layer 412
permits the requested URL address to pass through to TCP/IP program
410--i.e., as represented by call 417, such that hook 413 is
bypassed--and further adds the address to cache 414, so that
subsequent permission to programs running on the client to access
the content at this URL address can be given without repeated
polling of server 404. If the address is not in the database, layer
412 does not permit the requested URL address to pass through to
TCP/IP program 410, effectively denying access to the content at
this URL address by the requesting program running on client
400.
[0033] The manner by which the database is maintained by the server
is not limited under the invention. The database may be maintained
by a separate database server that is a part of monitoring server
404 (where monitoring server 404 also includes a web server).
Furthermore, in one embodiment, permissible content is divided into
two types: type 1 and type 2. Type 1 permissible content is any
file at a given URL address. For example, if a permitted URL
address is "http://www.permissible.com," any file within any
subdirectory at this URL address is
permitted--"http://www.permissible.com/file.htm,
http://www.permissible.com/directory1/directory2/file3.htm," etc.
Type 2 permissible content is any file within any subdirectory
within a given directory or subdirectory at a given URL address.
For example, if a permitted directory at a URL address is
"http://www.permissible.com/permissible," any file within any
subdirectory within the directory "permissible" would be
permissible. That is,
"http://www.permissible.com/permissible/file.htm," and
"http://www.permissible.com/permissible/directory/file2.htm" would
be permissible, but
"http://www.permissible.com/notpermissiblelfile5.htm" would not
be.
[0034] Furthermore, type 2 permissible content includes image
files, as denoted by .JPG or GIF suffixes, so long as they reside
at the same URL address, regardless of which directory or
subdirectory within the URL address they reside. This exception is
made because frequently all images at a web site are stored at a
location separate from the web pages using those images. Inasmuch
as the web pages using those images have been deemed to be
permissible, it is assumed that those images are permissible as
well. Thus, the database maintained by the server includes
permissible content, such that at least some of the content
includes all HTML pages located at a web site (type 1), or an
incomplete portion of all the HTML pages located at the site (type
2).
[0035] The computerized system according to one embodiment of the
invention shown in FIG. 2(b) may be also described in another
manner, via a min-proxy server conceptualization. In the embodiment
of FIG. 2(b), hooking, as known in the art, into memory address 415
of the service layer provided by program 408 (as represented by
arrow 413) is accomplished. When an application makes a call to the
service layer--i.e., for specific content at a given site as
referenced by an address--this call is then remapped to the
intervening control layer 412. The call is then processed. First,
cache 414 is checked, and desirably includes configuration
information. If the call is not within the cache, then the an
internal process is called, as represented by block 416. This
internal process calls the service layer provided by program 408
itself, except that it bypasses the hook and goes to the monitoring
server 404. The server performs the check, returning the results to
the service layer, which returns it to the process as represented
by block 416. The process then decides whether to allow the
original call (more specifically, making the original call), or
return it as "access denied". If it makes the original call, it
remaps the call to the original and bypasses the hook.
[0036] Desirably, embodiments of the invention do not depend on URL
address only. That is, the embodiments of the invention check the
actual IP (Internet Protocol) address that is being called, and not
the URL address. This assists in the invention catching
circumvention attempts that use a HOSTS file that remaps any URL
address to an IP address, as is known in the art. This is an
advantage of the invention. Thus, as used generally herein, the
term address may correspond to IP address and/or URL address.
(E.g., the phrase "each site having content referenced by
addresses" includes either IP addresses and/or URL addresses.)
[0037] Referring next to FIG. 3, a flowchart of a computerized
method according to an embodiment of the invention is shown. This
method is inclusive of the steps or acts required to be taken by a
client computer and a server computer to monitor Internet access by
programs running on the client computer, in accordance with one
embodiment of the invention. These steps or acts are performed in
accordance with one or more computer programs, such as the
intervening control layer and the server program that accesses the
database stored on the server, as have been described in
conjunction with FIG. 2(a) and FIG. 2(b). The embodiment of the
invention described in conjunction with FIG. 3 refers to the
situation where the client, the server and a plurality of sites are
communicatively coupled to one another through the Internet, where
the client is running a web browser program, the server is or
includes a web server, and the sites are Internet world-wide-web
sites maintained by web servers; however, the invention is not so
limited.
[0038] In step 300, a web browser or other program running on the
client requests content at a server, as referenced by a URL
address. In step 302, this URL request is received at a standard
mechanism on the client by which programs running on the client
access content on the plurality of sites. Such a standard mechanism
may include a socket services program and a TCP/IP handler program,
as has been described. Further in step 302, the URL request is
intercepted by an intervening layer within the standard mechanism.
The intervening layer then checks a cache to determine whether the
URL address is listed therein.
[0039] If the URL address is not in the cache, control proceeds
from step 304 to step 306. In step 306, the intervening control
layer contacts the monitoring server. The monitoring server in step
306 contacts database 308, to determine whether the URL address
(viz., content addressed thereby) is in the database. If the
content is not type 1 or type 2 permissible content, as has been
previously described, then control proceeds from step 310 to step
312, and the method ends with the intervening control layer denying
the web browser or other program access to the content at this URL
in step 312. However, if the content is type 1 or type 2
permissible content, then control proceeds instead to step 314, at
which step the intervening control layer places the URL address in
the cache.
[0040] Finally, if in step 304 the requested URL address has been
found in the cache, or after step 314, once a permitted URL address
(viz., content addressed thereby) has been placed in the cache,
then control proceeds to step 316. In step 316, the intervening
control layer of the client permits the program running on the
client that had accessed the URL address deemed to be permissible
to access the content at this URL address.
[0041] Site access via an intervening control layer has been
described. Although specific embodiments have been illustrated and
described herein, it will be appreciated by those of ordinary skill
in the art that any arrangement which is calculated to achieve the
same purpose may be substituted for the specific embodiments shown.
This application is intended to cover any adaptations or variations
of the present invention. For example, the invention is fully
intended to cover databases as well as dynamic directories, such
that the term directory may be interpreted to encompass any
database amenable to the invention in such an embodiment of the
invention. Therefore, it is manifestly intended that this invention
be limited only by the following claims and equivalents
thereof.
* * * * *
References