This application is the US national phase of international application PCT/GB02/01824 filed 19 Apr. 2002 which designated the U.S.
1. Technical Field
Since the first release of the Mosaic Web browser in 1993, use of the Internet to download Web-pages, audio files, video files, software files and the like (hereinafter content files) has grown rapidly.
2. Related Art
The attraction of using the Internet in this way would increase further if the content that was delivered to an individual depended on the identity of that individual—in other words, if the content was personalised. Indeed, content providers have begun to offer their customers personalised content. For example, since 1998, Yahoo! Inc. has offered its customers the chance to choose the content and layout of the Web-page they see when browsing my.yahoo.com.
The Internet comprises a large number of local networks (some being regional/national networks) and backbone networks. Many of the local networks only connect to other local networks, but some are connected to backbone networks which are in turn connected to remote local networks. Because the Internet cannot yet offer fast, reliable delivery of content from a remote network, local network operators often provide caches in their networks which store content files frequently requested by customers of that local network. Customers of that local network who subsequently request that content file receive the file quickly since it only need be delivered over the local network.
Personalised content files are generally not stored in caches because they differ in dependence on which user requested them. However, in late 1999, a number of companies announced that they intended to work together to provide an ‘Internet Content Adaptation Protocol’ (see http://www.i-cap.org for details). The protocol is intended to be used by a network cache in sending a content file received by (or stored at) that cache to another computer which modifies the content file and returns it to the cache for forwarding onto a user. In this way, a user is provided with some of the benefits of both caching and personalisation.
To date, no company has offered people who browse its web-site a quality of network service that differs in dependence on the identity of the individual who is browsing. However, international patent application WO 98/24208 discloses a data communication system which, in response to a request from a user for remotely stored data, reserves, in a connection-oriented wide area network between that user's access network and the remote store, an amount of bandwidth for transferring that file in accordance with a user's level of subscription to the relevant content provider and differential delivery service provider. The reservation only takes place if the amount of bandwidth is suitable for the type of data concerned and if the access network has that amount of bandwidth available to the user.
None of the prior proposals for personalised content delivery has disclosed a mechanism for personalising quality of content delivery when the content is to be delivered from a cache. Since both caching and personalisation of quality of delivery are beneficial, there is a need to provide such a mechanism.
According to one aspect of the present invention, there is provided a method of operating a communications network comprising a remote network in communication with a local network, said method comprising:
The plurality of qualities of delivery might be two or more classes of delivery service, or might be a range of bandwidths, delays, amounts of jitter etc.
In this specification ‘personalised content provision’ and equivalent expressions cover both the personalisation of a content file and the personalisation of network service when delivering a content file.
According to a first aspect of the present invention there is provided a method of operating a communications network comprising a remote network in communication with a local network, said method comprising:
By transmitting content provision policy data (which might, for example, be generated by a content provider at a remote network) to a local network, said data being analysable to find content provision adaptation parameters given at least one communication attribute, receiving a communication attribute for the provision of a content file to a recipient and then analysing said data to find said content provision adaptation parameters for said provision, a local network operator is able to provide personalised content delivery to said recipient in accordance with one or more content provision policies of, for example, said content provider. Furthermore, by carrying the analysis of the content provision policy data at the local network, the personalisation processing load on said remote network is reduced. Communication attributes might include attributes of the content file to be provided and/or recipient attributes. Recipient attributes might include attributes of the network facilities used to provide communication with the user (including the type of receiver used by the user) as well as characteristics of the user himself.
In the preferred embodiment described below the content provision adaptation parameters comprise a destination port/source port pair and a Diff-Serv marking to be applied to packets flowing between those ports. However, in a second embodiment they comprise a ‘bid’ which is convertible into Diff-Serv marking and source/destination port pair in dependence on the current price of bandwidth in the local network. The expression content provision adaptation parameters is also intended to cover any other parameters that are convertible to such a packet-marking policy.
Preferably, said communication attribute comprises one or more recipient attributes, said method further comprising the steps of operating said remote network to:
This provides a mechanism for using a database stored at the remote network to generate one or more recipient attributes corresponding to a recipient identifier (e.g. a user name). This has the advantage that the operator of that database (which might, for example, be a content provider) can cause information they hold about the recipient to be taken into account when deciding how to provide the content file over the local network to the user.
Preferably, said recipient attributes request message further comprises a recipient network address;
This has the advantage that the recipient need not provide the local network with a user identifier.
Preferably, said predetermined period of time extends for one user session with the remote network. Note that the IP address changes between user sessions with the local network. A user session with the remote network normally forms part of a user session with the local network. Such embodiments of the invention have the advantage that the personalised content provision can adapt between user sessions with the remote network.
Preferably, said content provision policy data comprises a plurality of subsets of content provision policy data, each subset relating to a predetermined class of content file;
This allows for more flexible personalisation which takes into account both the nature of the content file to be provided and the recipient attributes.
In some embodiments, each first recipient identifier comprises a user name, said recipient attributes comprise one or more user attributes, and said content file provision step comprises providing, in accordance with said user attributes, said file to a user associated with said first recipient identifier. In these cases, personalised content provision depends on the user, rather than, say, the physical characteristics of parts or the whole of the local network over which the file is to be delivered.
In some embodiments, said local network further comprises a local content file store and said method further comprises:
In this case, it is the quality of the delivery of the file by the local network that is personalised. In other cases, it is the content itself which is personalised.
By way of example only, specific embodiments of the present invention will now be described with reference to the accompanying Figures in which:
The content provider's network 100 comprises a content provider's Web server 102 and origin video server 104, an Internet router 106 and a LAN 108 interconnecting them.
The regional cable network 140 comprises a hybrid fibre/co-axial (HFC) cable network 142, a regional headend 170 which connects the regional cable network to the global Internet 120, a regional fibre network 150, a caching network 144, a Layer 4 switch 148 and a Cable Modem Termination System (CMTS) 146 which interconnects the Layer 4 switch 148 and the HFC cable network 142. The Layer 4 switch interconnects the regional fibre network 150, the caching network 144, and the CMTS 146. A suitable CMTS is the Cisco uBR 7246 which operates in accordance with a pre-standard version of the DOCSIS (Data Over Cable Service Interface Specification) standard version 1.1. The Cisco uBR 7246 also schedules IP packets which transit it in accordance with the value of the so-called Differentiated Services (DS) field in the IP packet header (see the Internet Engineering Task Force's Request For Comments (RFCs) 2474 and RFC 2475 for details of the DS field).
The HFC network 142 comprises a large number of sets of user equipment (152-156), a plurality of co-axial cable networks 157 serving around 700 homes each, a fibre ring 158, and a number of fibre nodes 160, each of which connects the fibre ring 158 to one of the co-axial cable rings 157. Each set of user equipment (152-156) comprises a Toshiba PCX 1100 cable modem 154 (a pre-standard DOCSIS 1.1-compliant cable modem), a Personal Computer (PC) 152, a cable 153 leading from the modem 154 to the PC 152, a cable 155 extending from each set of user equipment to a tap 156 on the co-axial cable ring 157.
The caching local area network 144 comprises an agent server A, a content file caching server C, a shaper/marker 164 and a Local Area Network 162 which interconnects them. The Local Area Network 162 operates in accordance with the Institute of Electrical and Electronics Engineers (IEEE) 802.3 standard at a rate of 100 Mbits−1. The 155 Mbits−1 Lucent Access Point 1000 (AP1000) supplied by Lucent Technologies Inc., 600 Mountain Avenue, Murray Hill, N.J., USA would provide a suitable shaper/marker ability.
In accordance with a first embodiment of the present invention, the CMTS 146 is configured as follows. Three diff-serv codepoints (say 111000, 110000, and 000000) are chosen to represent top-priority traffic, mid-priority traffic and best effort traffic respectively. The CMTS/IP Router is able to offer each type of traffic simple priority over traffic of the next lowest level of priority.
The IP router component of the headend 170 is configured to reset (to 000000) the DS fields of packets arriving over the Internet link 9 which have their DS field set to a value which is equated to any other priority level than best effort.
The agent server computer A is provided with a HyperText Transfer Protocol client program which is configured to use the caching server computer C as a proxy (in other words, HTTP requests from the agent server computer will be received by the caching server computer C and forwarded if the caching server computer itself cannot satisfy the request. HTTP responses to those requests will be received by the caching server computer and forwarded to the agent server computer A).
The content provider's Web server computer 102 is provided with a content classifier program, a web server program, and a quality of service (QoS) policy generation program.
The web server program controls the Web server computer 102 send web-pages requested by a user to that user and to gather information about users in order to enable personalisation of the user's service. In the present embodiment, this is achieved by asking users to fill in a HyperText Mark Up Language (HTML) form in order to register with the web-site. The form asks the user for a user name and password and various other data such as the user's age, gender, nationality and occupation category. The information from all registered users is stored as a database at the Web server computer 102, the database comprising a number of user records, each being of the form shown in
When run, the QoS policy file generation program controls the Web server computer 102 to prompt the content provider to indicate one or more conditions involving content class and user attributes, and a class of service to be provided if that condition is satisfied. As the user enters the conditions, the program controls the computer to provide the content provider with a graphical user interface similar to that shown in
In a configuration phase, the content classifier program controls the computer to prompt the user to enter rules for classifying each content file stored on the origin video server 104 into a content class given the Universal Resource Locator. For example, all Real™ video files in the directory named ‘latest’ could be placed in the content class ‘latest_release_videos’. The mapping from the URL to the content class in that case might be represented as:
The classification program is a Common Gateway Interface (CGI) script and is accessible via the URL http://www.cp.com/cgi_bin/classifier. The URL of the content file to be classified can be passed as a parameter of, for example, an HTTP GET request. On receiving such a request, the classification program returns an indication of the content class into which the content file is classified, together with the an indication of where the relevant qos policy for that content class is to be found. Those skilled in the art would easily be able to write a program to create a classifier operating in the above way.
The content provider also creates a QoS policy file for each content class at a URL having a predetermined relationship to its domain name—for example the content provider owning the domain name cp.com might store its QoS policy file for the content class ‘latest_release_videos’ at:
The content provider then includes the URLs pointing to its QoS policy files in the list of files which it wishes to be copied to caching servers such as caching server C in caching network 144. As will be understood by those skilled in the art, content distributors offer a service in which they copy specified files from an origin server to caches around the world. In the present embodiment, use of such a service results in the content files stored on origin video server computer 104 being copied to the caching server C, together with the content provider's QoS policy files.
The origin Web server O receives the POST message and the appended user name, client indication, client IP address and agent identifier. In response, it runs the associated CGI script which causes it to:
On receiving the user record message, the agent server A stores the user record along with the user's current IP address and nonce.
Once it is received, the user's PC 152 presents the HTML file as a registered user menu page on the screen of the PC 152. The registered user menu page includes one or more hyperlinks which are associated with content files stored on the caching server C.
Turning now to
On receiving the content file transfer parameters message for receiving the requested content file, the agent sends an HTTP GET request to the classifier program at the Web server 102 having the URL as a parameter (step 7). The classifier program controls the Web server 102 to respond by giving the URL of the relevant QoS policy (step 8). Since the URL of the QoS policy file is returned as an embedded object, the HTTP client at the agent is automatically re-directed to fetch the QoS policy file. The agent computer then retrieves the QoS policy file (
The agent server A then looks up the stored user record (which it received in step 3) associated with the IP address and nonce received in the content file transfer parameters message.
It should be noted that the user authentication process described above is used for controlling access to QoS delivery of the requested content, which is distinct from controlling access to the content itself. The caching server may consult the origin server to verify that access to content by a particular user is to be allowed at all.
The agent server A then processes the user record, and QoS policy file as illustrated in
In a first step the program controls the agent server A to select (step 70) the QoS policy file previously received (
Then, in step 71, the program initialises a QoS level indicator to a value that points to the first-listed QoS level (i.e. right-hand column of
In step 72, the program tests whether the user attribute conditions associated with that QoS level are satisfied. If they are not, the program changes the QoS Level Counter to indicate the next-listed QoS level (step 73) and the conditions for that quality of service level are tested. If the conditions are met then the QoS level for the current content file transfer has been found and an indication of that QoS level is stored (step 74).
Using the user attributes of
Returning now to
In the meantime, the caching server C sets up a streaming session with the user's PC 152. The caching server divides the content file into packets and starts sending (step 11) those packets to the user's PC 152 via the marker 164. Once the marker 164 has received the Diff-Serv marking message from the agent server A, it recognises packets belonging to the content file transfer (the IP address and User Datagram Protocol (UDP) port in the marking instruction will match the corresponding parameters in packets belonging to the content file transfer—note that, since it is operating as a transparent cache, the caching server operates to use the origin server's address as the source address of the packets). The marker marks packets so recognised with a Diff-Serv codepoint that corresponds to the Diff-Serv codepoint indicated in that instruction. In the present example, that Diff-Serv marking indicates that the packets of the content file transfer are to be marked as having medium priority.
The marked packets are forwarded to the CMTS 146 which will schedule the packets sent from it in accordance with the diff-serv codepoints they contain. In the present example, if any flows having a high priority diff-serv codepoint are being queued for entry onto the fibre ring 158 then those packets will be sent before packets belonging to the content file transfer to John W. Smith are sent.
It will be seen how the present embodiment reduces the processing that needs to be carried out by a content provider at the remote network in order to provide a personalised quality of delivery service.
A number of alterations can be made to the above described embodiment without departing from the scope of the present invention. Such alterations include:
Number | Date | Country | Kind |
---|---|---|---|
01303599 | Apr 2001 | EP | regional |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/GB02/01824 | 4/19/2002 | WO | 00 | 10/16/2003 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO02/087193 | 10/31/2002 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
5367523 | Chang et al. | Nov 1994 | A |
5408465 | Gusella et al. | Apr 1995 | A |
5446730 | Lee et al. | Aug 1995 | A |
5600638 | Bertin et al. | Feb 1997 | A |
5680389 | Douglas et al. | Oct 1997 | A |
5809078 | Tani et al. | Sep 1998 | A |
5875175 | Sherer et al. | Feb 1999 | A |
5917822 | Lyles et al. | Jun 1999 | A |
5991306 | Burns et al. | Nov 1999 | A |
5991810 | Shapiro et al. | Nov 1999 | A |
5995606 | Civanlar et al. | Nov 1999 | A |
6029203 | Bhatia et al. | Feb 2000 | A |
6041039 | Kikki et al. | Mar 2000 | A |
6073175 | Tavs et al. | Jun 2000 | A |
6078919 | Ginzburg et al. | Jun 2000 | A |
6104720 | Kisor | Aug 2000 | A |
6108307 | McConnell et al. | Aug 2000 | A |
6144996 | Starnes et al. | Nov 2000 | A |
6154778 | Koistinen et al. | Nov 2000 | A |
6229788 | Graves et al. | May 2001 | B1 |
6243754 | Guerin et al. | Jun 2001 | B1 |
6304544 | Pierson et al. | Oct 2001 | B1 |
6345300 | Bakshi et al. | Feb 2002 | B1 |
6374301 | Melen | Apr 2002 | B1 |
6449650 | Westfall et al. | Sep 2002 | B1 |
6483805 | Davies et al. | Nov 2002 | B1 |
6513061 | Ebata et al. | Jan 2003 | B1 |
6538989 | Carter et al. | Mar 2003 | B1 |
6539425 | Stevens et al. | Mar 2003 | B1 |
6556998 | Mukherjee et al. | Apr 2003 | B1 |
6567893 | Challenger et al. | May 2003 | B1 |
6594246 | Jorgensen | Jul 2003 | B1 |
6678793 | Doyle | Jan 2004 | B1 |
6690929 | Yeh | Feb 2004 | B1 |
6691148 | Zinky et al. | Feb 2004 | B1 |
6725265 | Challenger et al. | Apr 2004 | B1 |
6744767 | Chiu et al. | Jun 2004 | B1 |
6772214 | McClain et al. | Aug 2004 | B1 |
6775519 | Wiederman et al. | Aug 2004 | B1 |
6801501 | Knightly et al. | Oct 2004 | B1 |
6816456 | Tse-Au | Nov 2004 | B1 |
6822940 | Zavalkovsky et al. | Nov 2004 | B1 |
6834341 | Bahl et al. | Dec 2004 | B1 |
6842783 | Boivie et al. | Jan 2005 | B1 |
6859827 | Banginwar | Feb 2005 | B2 |
6944128 | Nichols | Sep 2005 | B2 |
6983139 | Dowling et al. | Jan 2006 | B2 |
6999421 | Holzworth et al. | Feb 2006 | B1 |
7085737 | Dan et al. | Aug 2006 | B2 |
7116682 | Waclawsky et al. | Oct 2006 | B1 |
7209437 | Hodgkinson et al. | Apr 2007 | B1 |
7362775 | Moskowitz | Apr 2008 | B1 |
7412514 | Shuster | Aug 2008 | B2 |
7433311 | Kalyanasundaram et al. | Oct 2008 | B1 |
20010016822 | Bessette | Aug 2001 | A1 |
20010027484 | Nishi | Oct 2001 | A1 |
20020013849 | Schweitzer et al. | Jan 2002 | A1 |
20020055906 | Katz et al. | May 2002 | A1 |
20020152305 | Jackson et al. | Oct 2002 | A1 |
20030088671 | Klinker et al. | May 2003 | A1 |
20030145100 | Marchetto et al. | Jul 2003 | A1 |
20030152039 | Roberts | Aug 2003 | A1 |
20040090914 | Briscoe et al. | May 2004 | A1 |
20040192324 | Rudkin | Sep 2004 | A1 |
20050021796 | McClain et al. | Jan 2005 | A1 |
20060149854 | Rudkin et al. | Jul 2006 | A1 |
20060178918 | Mikurak | Aug 2006 | A1 |
Number | Date | Country |
---|---|---|
0 848 560 | Jun 1998 | EP |
0 899 916 | Mar 1999 | EP |
1 113 629 | Jul 2001 | EP |
2 311 439 | Sep 1997 | GB |
WO 9414263 | Jun 1994 | WO |
WO 9824208 | Jun 1998 | WO |
WO 9913624 | Mar 1999 | WO |
9965184 | Dec 1999 | WO |
9965185 | Dec 1999 | WO |
WO 0013390 | Mar 2000 | WO |
WO 0014919 | Mar 2000 | WO |
0022795 | Apr 2000 | WO |
WO 0035130 | Jun 2000 | WO |
WO 0152475 | Jul 2001 | WO |
Number | Date | Country | |
---|---|---|---|
20040117426 A1 | Jun 2004 | US |