The present invention relates generally to mediating the delivery of an Internet service, and more specifically, but not by way of limitation, to systems and methods that selectively apply an intermediation policy to the Internet service and modify at least a portion of targeted Internet content before delivery of the targeted Internet content via the Internet service.
According to exemplary embodiments, the present invention provides methods for mediating the delivery of Internet service including executing instructions stored in a memory by a processor to selectively apply an intermediation policy to the Internet service, the intermediation policy including information indicative of targeted Internet content, and modify at least a portion of targeted Internet content before delivery of the targeted Internet content via the Internet service.
According to other exemplary embodiments, the present invention is directed to systems for intermediation an Internet service delivered, the systems including a memory for storing an intermediation policy application and a processor for executing instructions to selectively apply an intermediation policy to the Internet service, the intermediation policy including information indicative of targeted Internet content, and modify at least a portion of targeted Internet content before delivery of the targeted Internet content via the Internet service.
According to additional exemplary embodiments, the present invention is directed to a computer readable storage medium having a program embodied thereon, the program executable by a processor in a computing system to perform a method for mediating the delivery of Internet service, the method including executing instructions stored in a memory by a processor to selectively apply an intermediation policy to the Internet service, the intermediation policy including information indicative of targeted Internet content, and modify at least a portion of targeted Internet content before delivery of the targeted Internet content via the Internet service.
While this invention is susceptible of embodiment in many different forms, there is shown in the drawings and will herein be described in detail several specific embodiments with the understanding that the present disclosure is to be considered as an exemplification of the principles of the invention and is not intended to limit the invention to the embodiments illustrated. According to exemplary embodiments, the present technology is directed to systems and methods for intervening the delivery of an Internet service to one or more computing systems operatively coupled to a common network or location, such as a home, business or campus using the Internet service. More specifically, the systems and methods selectively apply an intermediation policy to the Internet service to mediate the delivery of the Internet service by modifying at least a portion of targeted Internet content. It will be understood that the intermediation policy may include information indicative of targeted Internet content.
Rather than preventing access to targeted Internet content by way of blocking or redirecting users away from targeted content, the methods and systems of the present invention may translate at least a portion of the targeted Internet content from a first language to a second language. The systems and methods may then deliver the modified Internet content to the one or more computing systems. The systems and methods create a humorous or whimsical effect, rather than a more blunt or direct effect created by blocking the targeted Internet content.
Generally speaking, an administrator may create and enforce intermediation polices for one or more end users that utilize computing systems coupled to an Internet service via the Internet connection delivered to a particular location, such as a residence or place of business. The term “administrator” may include not only individuals, such as parents, but also any individual who desires to create and enforce intermediation policies regarding the Internet service. It will be understood that an administrator may also be an end user, although end users who are not also administrators may create or apply intermediation policies only if they have appropriate permissions from the administrator.
It will be further understood that because of the diversity of computing systems that may connect to the Internet service, the intermediation policy may be applied to the Internet service, rather than requiring the intermediation policy to affect each computing system individually, such as an intermediation policy application resident on each computing system, although, in various exemplary embodiments an intermediation policy may also reside on one or more of the computing systems or user devices.
Exemplary user devices for use with the disclosed systems may have an app. As used herein, an app shall be defined as a module including a user interface to an Internet service. The app may further include one or modules included in the Internet service. An app may be downloaded and installed on a user's computing device, including mobile devices. Users may define mediation policy via a user device, such as through the user interface. Some embodiments of the present invention do not require software to be downloaded or installed locally to the user device and, accordingly, do not require the user to execute a de-install application to cease use of the system.
Referring now to
The computing system 700 may access Internet content 110 via network 115 (by way of the Internet connection) utilizing user interfaces generated by the user interface module 120. Generally speaking, the intermediation policy application 105 allows an administrator to create and apply a customized intermediation policy that includes information indicative of targeted Internet content that the administrator desires to prevent end users from accessing.
It is important to note that the intermediation policy application 105 does not simply provide blocking mechanisms by masking or enabling network controls, but rather mediates an Internet service. As used herein, mediating the Internet service may include any of modifying, blocking, constraining, enabling, redirecting, promoting, demoting, substituting, obscuring, limiting, interrupting, and restricting all or a portion of the Internet service, particularly targeted Internet content 110.
According to exemplary embodiments, the intermediation policy application 105 allows for the creation of intermediation polices via a user interface 610 such as a web page. A user interface module 120 may generate the user interface 610 (see
According to exemplary embodiments, the intermediation policy application 105 may include a policy management module 125, a policy application module 130, and a content modification module 135. It is noteworthy that the intermediation policy application 105 may include more or fewer modules and engines (or combinations of the same) and still fall within the scope of the present technology.
In general, the intermediation policy application 105 allows administrators to create intermediation policies via the policy management module 125. The intermediation policies are applied to the Internet service by the policy application module 130 and enforced by execution of the content modification module 130. It will be understood that the content modification module 135 may modify at least a portion of targeted Internet content 110 upon an attempt by an end user to access targeted Internet content 110.
To create an intermediation policy, the policy management module 125 may execute the user interface module 120 to create a web page 400 that is adapted to receiving information indicative of targeted Internet content 110 that the administrator desires to prevent end users from accessing (
By way of non-limiting example, the administrator may desire to intervene when end users attempt to access particular domains that contain objectionable material. As such, the administrator may input the domain name (e.g., “www.targetedsite.com”) of a domain, if known. Additionally, the administrator may enter only the name of the domain (e.g., “Targeted Site” or “The Targeted Site”) or a topic identifier. If the administrator enters a name of a domain, the policy management module 125 may evaluate the name to determine if there are one or more domains that correspond to the name. If there is only one domain that corresponds to the name, the policy management module 125 may automatically include information indicative of the evaluated domain in the intermediation policy. In contrast, if the administrator inputs a topic identifier (e.g., “Online gambling”), the policy management module 125 is adapted to locate Internet content 110 corresponding to the topic identifier. Information indicative of the located Internet content 110 is then included in the intermediation policy. According to some embodiments, the policy management module 125 may be adapted to cause the user interface module 120 to display identifying information (e.g., domain name, application name, etc.) corresponding to the located Internet content 110. The administrator may review the identifying information to ensure that the located Internet content 110 corresponds to the topic identifier input by the administrator.
The intermediation policy may be stored in the form of a user record that resides on one or more servers located within Internet cloud 650. The administrator may modify the intermediation policy at any time by inputting additional information indicative of targeted Internet content via the web page 400. Once established, access to the configuration of the intermediation policy may be password protected to prevent end users from modifying or preventing application of the intermediation policy to the Internet service.
The intermediation policy may be applied to the Internet service via execution of the policy application module 130. It will be understood that one or more intermediation policies may be applied by the policy application module 130 to the Internet service in a granular or end user-specific manner, rather than universal manner that applies to all end users.
Application and enforcement of the intermediation policy includes the policy application module 130 applying the intermediation policy to the Internet service. A dynamic enforcement engine 520 (
According to exemplary embodiments, the content modification module 135 is adapted to translate at least a portion of the text of a domain from a first language to a second language. It will be understood that the content modification module 135 may include commonly utilized machine translation or statistical machine translation programs that would be known to one or ordinary skill in the art with the present disclosure before them.
More specifically, the content modification module 135 may be adapted to extract at least a portion of the textual content from the targeted Internet content 110. Once extracted, the content modification module 135 may determine a first language of the extracted textual content. The content modification module 135 may translate the extracted textual content from the first language to a second language and generate modified Internet content having the translated textual content. It will be understood that if the targeted Internet content 110 includes textual content of more than one language, each group (e.g., block, paragraph, etc.) of textual content may be translated into another language.
In some implementations (such as with web pages), the content modification module 135 may be adapted to preserve the format of the targeted Internet content 110, such that the translated textual content is placed into the modified Internet content 110 in such a way that the modified Internet content appears structurally identical to the targeted Internet content 110. For example, the targeted Internet content 110 may include structural features such as frames, text, images, links, menus, and the like. Each of these structural features may be identified by one or more vertical and horizontal coordinates relative to the web page. Utilizing these coordinates, the content modification module 135 may extract textual content from the original web page and replace the original textual content with the translated textual content in approximately the same location. Therefore, the content modification module 135 is capable of generating modified Internet content that appears to be substantially aesthetically identical to the targeted Internet content 110 but includes the translated textual content.
While it has been disclosed that the content modification module 135 is adapted to translate at least a portion of the textual content of a domain from a first language to a second language, it will be understood that the content modification module 135 may be adapted to modify the targeted Internet content 110 in a variety of other ways such as changing text to symbols, changing text to images, transposing individual letters within words, adding and/or deleting text, or transposing words within sentences, and the like.
It will be understood that the content modification module 135 may be resident and executable on a DNS server 510 (
The administrator, via utilization of the user interface 610, may terminate application of the intermediation policy to the Internet service at any time. The user interface 610 may include a button (such as an enable/disable button 420 of exemplary
According to other embodiments, a database may be used by the policy management module 125 to record and to notify administrators of various data relative to Internet access. The data collected from and provided to the administrators may include records of specific instances when targeted Internet content 110 was modified by the content modification module 135. Additionally, the policy management module 125 may record an aggregate number of times targeted Internet content 110 was modified within a predetermined amount of time. The data collected may be organized into logs that can be stored in a user record and accessed by the user interface module 120. More specifically, the user interface module 120 may generate a report (not shown), including log data indicative of the date and time resolutions of Internet content 110 were modified along with information indicative of the targeted Internet content 110.
Referring now to
Input received by the user interface may be utilized by the policy management module to create an intermediation policy for one or more end users. For example, the administrator may input one or more domain names corresponding to domains that the administrator desires to prevent end users from accessing.
A subsequent step 210 includes the policy management module locating Internet content associated with the input received from the administrator. The policy management module then adds information indicative of the located Internet content to the intermediation policy.
In an additional step 215, the administrator may enable/disable selective application of the intermediation policy to the Internet service. The administrator may enable/disable the selective application of the intermediation policy via a button located on a user interface (such as the enable/disable button 420 of exemplary
The method 200 also includes the step 220 of evaluating requests to access (e.g., resolve) Internet content. More specifically, each application of an intermediation policy begins with an end user inputting a request to access Internet content. The end user may input this request via a browser operating on the user device. In various embodiments, a request includes clicking a hyperlink located on a web page.
If the request corresponds to information indicative of targeted Internet content included in the intermediation policy, the dynamic enforcement engine causes the content modification module to modify at least a portion of the targeted Internet content in step 225. More specifically, the content modification module extracts at least a portion of textual content from the targeted Internet content and determines a first language of the extracted textual content. The content modification module may then translate the extracted textual content from the first language to a second language and generate modified Internet content having the textual content that was translated into the second language by the content modification module.
The modified Internet content is then provided to the end user via the user device. It will be understood that the method terminates after resolution of the Internet content.
In contrast, if the policy application module determines that the request does not correspond to information indicative of targeted Internet content included in the intermediation policy, the dynamic enforcement engine permits resolution of the Internet content. The Internet content is then provided by the Internet service to the end user via the user device. It will be understood that the method terminates after resolution of the Internet content.
An enable/disable button(s) 420 is included, allowing an administrator to selectively control application of the intermediation policy by enabling/disabling the functionality of the intermediation policy application. Once the administrator is finished inputting information of the intermediation policy, the administrator may utilize button 425 to close the web page 400.
The systems and methods described above may typically be resident in an Internet service or a DNS network. The systems and methods described may also be implemented in plug-in utilities, gateway devices, cable modems, proxy servers, set top boxes, and network interface devices.
The dynamic enforcement engine 520 may generate its policy engine on instructions received from one or more policy modules 530. Each policy module 530 may be constructed to provide various types and levels of services to the DNS network 540. In various embodiments, a policy module 530 may be configured to handle queries directed to subjects including, but not limited to, malicious domain redirection, user access redirection, non-existent domain redirection, and data collection or analysis.
It will be recognized by those skilled in the art that the elements of DNS service 570 may be hosted either locally or remotely. In addition to residing in the DNS service 570, one or more of the DNS network 540, the dynamic enforcement engine 520, and the policy modules 530, and any combination thereof, may be resident on one or more user devices 550.
The system 600 utilizes a user interface 610. The user interface 610 may be implemented in many embodiments. One specific implementation of the user interface 610 is as a web page.
The user interface 610 may be accessed by one or more user devices 550 operated by the users 560. The user interface 610 may be accessed though a gateway user device 550 available to the users 560. Suitable user devices 550 include but are not limited to desktops, PCs, laptops, notebooks, gaming devices, IPods, Smartphones, automobile computer systems, and Internet enabled TVs. The system 600 may also be accessed and controlled through remote control user devices 550, such as a Smartphone. A Smartphone may be defined as a phone with computing capability. A Smartphone may provide the user 560 with Internet access.
The user interface 610 provides a mechanism for one or more authorized users 560 to establish content policy for the Internet service. The user interface 610 operates between the user devices 550 present in the system 600 and the DNS network 540. Instructions resident on the user interface 610 therefore operate on the Internet service, by controlling at least a portion of DNS resolutions via a dynamic policy engine 630, before the service reaches the displays of the user devices 550.
The user interface 610 provides the users 560 with access to one or more policy applications 620. The user interface 610 may provide access to a selection list to at least one authorized user 560. The authorized user 560 uses the selection list or some other menu mechanism to select those policy applications 620 that the user 560 chooses to apply to the system 600. The authorized user 560 may select any number of the available policy applications for use on the system 600 at any given time. In implementations utilizing smartphones as the user device 550, the policy applications 620 are downloaded to the device 550. The device 550 then serves as the user interface 610 to communicate directly with the dynamic policy engine 630.
The policy applications 620 may prohibit access to specific sites. The policy applications 620 may also limit the time of day when users or selected users 560 may access certain sites. The policy applications 620 may also manage and analyze duration of access to various sites. It is important to note that the policy applications 620 do not simply provide blocking mechanisms by masking or enabling network controls, but rather mediate an Internet service received by the end user. As used herein, mediating the service may include any of blocking, constraining, enabling, redirecting, promoting, demoting, substituting, obscuring, limiting, interrupting, and restricting all or a portion of the Internet service. The policy applications 620 may provide notifications or alerts to one or more users 560 when sites are accessed. The policy applications 620 may also provide notification of frequency and duration of access of designated sites. The policy applications 620 may also be used to observe, substitute, enable, redirect users, to reward behavior desired from the users by a system administrator, etc. The policy applications 620 may redirect users from a non-favored site to another site. The policy applications 620 may also collect and transmit data characteristic of Internet use.
Access policies supplied by the policy applications 620 may apply to all users 560 of the system 600, or the access policies may be specific to individual users or groups of users 560. The policy applications 620 may be discrete, single purpose applications. The exemplary system may be a stand-alone application or be provided as part of a system of one or more policy applications (including but not limited to a notification policy application) that allow administrator to selectively determine the specific portion of the Internet received or accessed by an end user, including any end user within a network, with all end users being monitored by the system. The policy applications may be discrete applications and may be single purpose applications. The applications may be configured to meet the needs, rules and behaviours desired by the administrator user. The administrator user may select one or more policy applications from a selection menu to provide an individualized Internet experience for the end user or his household.
The policy applications 620 provide the users 550 with a mechanism to take various actions relative to their Internet service feed. The policy applications 620 also allow the users 550 to establish a dynamic policy engine 630 that includes a user database. The policy engine 630 is used to enforce rules associated with each policy application associated with individual end users, not simply block various inappropriate sites from the Internet feed. Rather, the dynamic policy engine 630, controlled by the user interface 610 through user device(s) 550, is used to manage all aspects of the Internet experience for the users 560. In sum, the policy applications 620 may be used to configure the dynamic policy engine 630 to provide the users 560 with a mechanism to personalize the Internet experience. The policy applications 620 may be configured in combinations, and may each be separately configured.
The database in the policy engine 630 may be used to record and to notify users 560 of various data relative to Internet access. The data collected from and provided to the users 560 may include records of access of specific sites, time spent on specific sites, time of day of access, data specific to individual users, etc.
It should also be noted that following an initial setup through the user interface 610 of the policy engine 630, a direct access 640 enforcement loop may be established between the policy engine 630 and the user devices 550. Subsequent accessing of the DNS network 540 utilizing the direct access 640 decreases response time in the system 600, thereby further enhancing the Internet experience of the users 560. Configurations of policy applications 620 that are selected by one or more users 560 designated as system administrators may remain in the user database of the policy engine 630 until such time as it may be modified by the system administrators. The system administrators may define multiple policy configurations, with a combination of policy applications 620, applicable to one or more end users 560 of the system 600. Each policy application 620 may be separately configurable as well. Policy configurations may vary based upon designated times, conditional triggers, or specific requests from the users 560 with administrative authority.
As indicated above, two discrete data flow paths may be established for the system 600. A first data path establishes a set of enforcement policies for the system 600. The first data path flows from at least one user device 550 through the user interface 610, to the policy enforcement engine 630. A second data path 640 may be utilized following the establishment of a set of policies for the system 600. The second data path 640 flows directly between the user device(s) 550 and the policy engine 630. Multiple sets of enforcement policies may be established and saved within the system 600 and implemented selectively by the users 560.
The components shown in
Mass storage device 730, which may be implemented with a magnetic disk drive or an optical disk drive, is a non-volatile storage device for storing data and instructions for use by processor unit 710. Mass storage device 730 can store the system software for implementing embodiments of the present invention for purposes of loading that software into main memory 710.
Portable storage device 740 operates in conjunction with a portable non-volatile storage medium, such as a floppy disk, compact disk or Digital video disc, to input and output data and code to and from the computer system 700 of
Input devices 760 provide a portion of a user interface. Input devices 760 may include an alphanumeric keypad, such as a keyboard, for inputting alphanumeric and other information, or a pointing device, such as a mouse, a trackball, stylus, or cursor direction keys. Additionally, the system 700 as shown in
Display system 770 may include a liquid crystal display (LCD) or other suitable display device. Display system 770 receives textual and graphical information, and processes the information for output to the display device.
Peripherals 780 may include any type of computer support device to add additional functionality to the computer system. Peripheral device(s) 780 may include a modem or a router.
The components contained in the computer system 700 of
Some of the above-described functions may comprise instructions that are stored on storage media (e.g., computer-readable medium). The instructions may be retrieved and executed by the processor. Some examples of storage media are memory devices, tapes, disks, and the like. The instructions are operational when executed by the processor to direct the processor to operate in accord with the invention. Those skilled in the art are familiar with instructions, processor(s), and storage media.
Any hardware platform suitable for performing the processing described herein is suitable for use with the invention. The terms “computer-readable storage medium” and “computer-readable storage media” as used herein refer to any medium or media that participate in providing instructions to a CPU for execution. Such media may take many forms, including, but not limited to, non-volatile media, volatile media and transmission media. Non-volatile media include, for example, optical or magnetic disks, such as a fixed disk. Volatile media include dynamic memory, such as system RAM. Transmission media include coaxial cables, copper wire and fiber optics, among others, including the wires that comprise one embodiment of a bus. Transmission media may also take the form of acoustic or light waves, such as those generated during radio frequency (RF) and infrared (IR) data communications. Common forms of computer-readable media include, for example, a floppy disk, a flexible disk, a hard disk, magnetic tape, any other magnetic medium, a CD-ROM disk, digital video disk (DVD), any other optical medium, any other physical medium with patterns of marks or holes, a RAM, a PROM, an EPROM, an EEPROM, a FLASHEPROM, any other memory chip or cartridge, a carrier wave, or any other medium from which a computer may read.
The systems and methods described above may typically be resident in an Internet service or a DNS network. For instance, although this description describes the technology in the context of a DNS server, it will be appreciated by those skilled in the art that an Internet service provider may be utilized with this invention instead or in conjunction with a DNS server. Functionalities and method steps that are performed by a DNS server may be performed by an Internet service provider. Furthermore, one skilled in the art will appreciate that the term “Internet content” encompasses any content that may be accessed by an Internet access user device which include domains, web pages, web addresses, one or more hyperlinks, URLs, any text, pictures, and/or media (such as video, audio, and any combination of audio and video) provided or displayed on a web page, and any combination thereof.
The systems and methods described may also be implemented in plug-in utilities, gateway devices, cable modems, proxy servers, set top boxes, and network interface devices. Further, as will be appreciated by those of ordinary skill in the art, the embodiments presented herein may be implemented on any form of Internet service, including, but not limited to, Broadband wireless access, including Mobile Communications (GSM) and Code Division Multiple Access (CDMA) systems, Cable Internet, Dial-up, ISDN, Modem, DSL, FTTH, Wi-Fi, DSL, Ethernet technologies, and SHDSL services, as well as others.
The above description is illustrative and not restrictive. Many variations of the invention will become apparent to those of skill in the art upon review of this disclosure. The scope of the invention should, therefore, be determined not with reference to the above description, but instead should be determined with reference to the appended claims along with their full scope of equivalents. While the present invention has been described in connection with a series of embodiments, these descriptions are not intended to limit the scope of the invention to the particular forms set forth herein. It will be further understood that the methods of the invention are not necessarily limited to the discrete steps or the order of the steps described. To the contrary, the present descriptions are intended to cover such alternatives, modifications, and equivalents as may be included within the spirit and scope of the invention as defined by the appended claims and otherwise appreciated by one of ordinary skill in the art. For example, this description describes the technology in the context of an Internet service in conjunction with a DNS server. It will be appreciated by those skilled in the art that functionalities and method steps that are performed by a DNS server may be performed by an Internet service.
One skilled in the art will recognize that the Internet service may be configured to provide Internet access to one or more computing devices that are coupled to the Internet service, and that the computing devices may include one or more processors, buses, memory devices, display devices, input/output devices, and the like. Furthermore, those skilled in the art may appreciate that the Internet service may be coupled to one or more databases, repositories, servers, and the like, which may be utilized in order to implement any of the embodiments of the invention as described herein.
One skilled in the art will further appreciate that the term “Internet content” comprises one or more of web sites, domains, web pages, web addresses, hyperlinks, URLs, any text, pictures, and/or media (such as video, audio, and any combination of audio and video) provided or displayed on a web page, and any combination thereof.
While specific embodiments of, and examples for, the system are described above for illustrative purposes, various equivalent modifications are possible within the scope of the system, as those skilled in the relevant art will recognize. For example, while processes or steps are presented in a given order, alternative embodiments may perform routines having steps in a different order, and some processes or steps may be deleted, moved, added, subdivided, combined, and/or modified to provide alternative or subcombinations. Each of these processes or steps may be implemented in a variety of different ways. Also, while processes or steps are at times shown as being performed in series, these processes or steps may instead be performed in parallel, or may be performed at different times.
From the foregoing, it will be appreciated that specific embodiments of the system have been described herein for purposes of illustration, but that various modifications may be made without deviating from the spirit and scope of the system. Accordingly, the disclosure is not limited except as by the appended claims.
This nonprovisional patent application is a continuation-in-part application that claims the priority benefit of U.S. patent application Ser. No. 12/727,001 filed on Mar. 18, 2010, titled “Internet Mediation,” and provisional U.S. Patent Application Ser. No. 61/370,556, filed on Aug. 4, 2010, titled “Internet Mediation Applications,” which are hereby incorporated by reference in their entirety.
Number | Date | Country | |
---|---|---|---|
61370556 | Aug 2010 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 12727001 | Mar 2010 | US |
Child | 12896819 | US |