1. Field of the Invention
The invention is related to the field of packet networks and, in particular, to assigning a tag, such as a short meaningful name, to a network address of a web page so that the web page can be more easily retrieved at a later time.
2. Statement of the Problem
A web browser is a software application that enables a user to display and interact with text, images, and other information typically located on a web page at a website on the Internet or a local area network (e.g., an enterprise network). The web browser is adapted to access the web pages through Universal Resource Locators (URL) that are assigned to the web pages. A URL is an alphanumeric string that is associated with an actual EP address for a web page. For instance, a web page for Company A may have a URL of “www.CompanyA.com”, which is associated with the IP address for the web page for Company A. A Domain Name Server (DNS) is typically used to translate the URL to the actual IP address. A user may enter this URL for Company A into the web browser, responsive to which the web browser issues the proper HTTP request to retrieve the web page, and displays its contents to the user.
One problem with accessing web pages and navigating the Internet is that URLs may be lengthy (e.g., 50-100 characters), may include words or terms that are difficult to spell or to understand, may include special characters, or may otherwise be complex. For instance, another URL associated with a web page for advertising jobs for Company A may be “www.CompanyA.com/portal/!ut/p/kcxml/04_Sj95Pykssy0xPLMn”. URLs such as this may be difficult for a user to remember and may be difficult for a user to enter into his/her web browser to retrieve the web page. Further, conveying lengthy and complex URLs such as this to other users may be difficult and prone to errors. For instance, assume User A wants to convey the above URL for Company A to User B. One way of conveying the URL is for User A to speak each character of the URL to User B. This process is prone to errors both in the reading of the URL by User A and in the entering of the URL by User B into his/her web browser. Another way of conveying the URL is for User A to send the URL through some electronic means, such as email, text message, etc. Unfortunately, User B may still have to enter the URL manually into his/her web browser or perform a cut and paste operation to enter the URL into the web browser. These ways of entering a lengthy and complex URL into a web browser are particularly a problem for mobile devices, where the user interfaces are generally small and slow to use, and where cut and paste type operations are not supported.
Similar problems exist for other network addresses, such as an IP address, that are lengthy, complex, or difficult to remember.
Embodiments of the invention solve the above and other related problems by assigning tags to network addresses, such as URLs, where the tags are alphanumeric strings that are easier for users to remember. For instance, a user may assign the tag “JOBS” to the URL for the job advertising web page for Company A. This tag is much easier to remember, enter into a web browser, and convey to other users than the lengthy and complex URL illustrated above for the web page.
According to the embodiments described herein, a user of a browser application may enter a tag which the browser application associates with a network address of a web page. The tag is a short name or phrase that is typically easier to remember than the actual network address. The browser application then generates a tag assignment message that includes the network address and the tag assigned to the network address, and transmits the tag assignment message to a tag server.
The tag server receives the tag assignment message, and processes the tag assignment message to determine if the tag assigned to the network address by the user is assigned to another network address. If the tag is not assigned to another network address, then the tag server stores the tag assigned to the network address in the memory.
At a subsequent time, a user of the same browser application or a different browser application receives input requesting a network address that was assigned to a tag. The browser application then generates a tag retrieval message that includes the tag, and transmits the tag retrieval message to the tag server to retrieve the network address from the tag server that was assigned to the tag. The tag server receives the tag retrieval message, and identifies the network address in the memory that is assigned to the tag. The tag server then generates a tag response message that includes the network address assigned to the tag, and transmits the tag response message to the browser application for display of the web page associated with the network address.
By assigning a tag to a network address of a web page, a user is able to create an easy to remember name for the network address. The user may then enter the tag at a later time into a browser application to retrieve the web page, and the user does not have to remember a lengthy and complex URL or bother with entering a lengthy URL into the browser application. Further, if the user wants to refer other users to the web page, the user merely has to convey the tag to the other users, and the other users will be able to retrieve the web page simply by knowing the tag that was assigned to the network address of the web page. The assignment of tags greatly simplifies the process of accessing web pages and navigating the Internet.
The invention may include other exemplary embodiments described below.
The same reference number represents the same element or same type of element on all drawings.
In this embodiment, communication network 100 further includes a tag server 130 connected to transport network 140, where tag server 130 includes a processing system 132 and a memory 134. Tag server 130 comprises any server, application, database, or system adapted to store, manage, or handle tags that are assigned to network addresses in communication network 100. A tag comprises any alphanumeric string that a user may assign to a network address through his/her browser application. A tag is generally a short name or phrase (e.g., 3 to 10 characters) that is easy for a user to remember and to convey to other users. A network address comprises a network identifier indicating the location of a web page or content page. One example of a network address is an IP address which is a unique 32-bit number indicating the location of a web page. Another example of a network address is a URL.
Through tag server 130, a service provider operating communication network 100 is able to provide a tag assignment service that allows users to subscribe to the service and to assign a tag to a network address. The tag assignment service may be a no-charge service or may be a paid service. In this embodiment, user 110 and user 120 have subscribed to the service.
Assume that user 110 is operating browser application 114. When operating browser application 114, user 110 identifies a network address for a web page that he/she would like to quickly reference at a later time or would like to convey to another user. One problem is that the network address is lengthy, complex, or is otherwise difficult to reproduce or to convey. According to this embodiment, browser application 114 may provide an interface that allows user 110 to assign a tag to this network address so that the network address is easier to retrieve at a later time. Browser application 114 then operates as follows to assign the tag to the network address.
In step 202 of method 200, browser application 114 receives input from user 110 assigning the tag to the network address for the web page. To receive the input, browser application 114 may display a tag assignment dialog box to allow user 110 to input the tag to assign to the network address. In step 204, browser application 114 generates a tag assignment message that includes the network address and the tag assigned to the network address. The tag assignment message may comprise an HTTP message or a message of another protocol. In step 206, browser application 114 transmits the tag assignment message to tag server 130 for storage of the tag as assigned to the network address. Browser application 114 transmits the tag assignment message over some type of network connection established between browser application 114 and tag server 130.
In step 302 of method 300, processing system 132 receives the tag assignment message from browser application 114 over a network connection. In step 304, processing system 132 processes the tag assignment message to determine if the tag assigned to the network address is already assigned to another network address. Processing system 132 may have already stored one or more tags in memory 134 that are assigned to network addresses. The tags that are already stored in memory 134 may have been assigned by user 110, user 120, or other users not shown in
If the tag received in the tag assignment message is not already assigned to another network address, then processing system 132 accepts the tag and stores the tag assigned to the network address in memory 134 in step 306. Processing system 132 may also transmit an indication to browser application 114 that the tag was accepted.
Processing system 132 may have pre-defined parameters indicating how long the tag is stored in memory 134. For instance, processing system 132 may store the tag for a default time period, such as one hour, two hours, etc. The time period for storage may depend on a level of service to which user 110 subscribes. If user 110 subscribers to a higher level of service, possibly at a higher charging rate, then the time period may be longer, such as a day, a week, etc. If user 110 subscribers to a lower level of service, possibly at a lower charging rate, then the time period may be shorter, such as one hour, two hours, etc. The tag may also be permanently stored in memory 134. Processing system 132 thus continually monitors the stored tags to identify which tags should remain in storage and which tags should be deleted.
If the tag received in the tag assignment message is already assigned to another network address, then processing system 132 may operate in a variety of ways. In one embodiment, if the tag received in the tag assignment message is already assigned to another network address, then processing system 132 rejects the tag in step 308. If the tag is rejected, then processing system 132 generates a tag rejection message indicating that the tag assigned by user 110 is already assigned to another network address in step 310. In step 312, processing system 132 transmits the tag rejection message to browser application 114 responsive to which the browser application 114 indicates to user 110 that the tag is already assigned. User 110 may then enter a new tag and repeat the processes illustrated in
In another embodiment, if the tag received in the tag assignment message is already assigned to another network address, then processing system 132 identifies one or more alternative tags that are not already assigned to another network address in step 314. The alternative tags identified by processing system 132 may resemble the tag assigned by user 110. For example, if the tag assigned by user 110 is “JOBS” and that tag is already assigned to another network address, then processing system 132 may identify the alternative tags of “JOBS1”, “JOBS2”, etc. In step 316, processing system 132 generates a tag suggestion message that includes the alternative tags identified by processing system 132. In step 318, processing system 132 transmits the tag suggestion message to browser application 114 for display of the alternative tags to user 110. User 110 may then select one of the alternate tags as suggested by tag server 130, or may enter a new tag and repeat the processes illustrated in
When a tag is assigned to the network address by user 110 and stored in tag server 130, the network address may be subsequently retrieved by user 110, by user 120, or by another user not shown in
In step 402 of method 400, browser application 124 receives input from user 120 defining a tag that is assigned to the network address which user 120 desires to retrieve. To receive the input, browser application 124 may display a tag retrieval dialog box to allow user 120 to input the tag for the network address to be retrieved. In step 404, browser application 124 generates a tag retrieval message that includes the tag as entered by user 120. The tag retrieval message may comprise an HTTP message or a message of another protocol. In step 406, browser application 124 transmits the tag retrieval message to tag server 130.
In step 502 of method 500, processing system 132 receives the tag retrieval message from browser application 124. In step 504, processing system 132 processes the tag retrieval message to identify the tag included in the tag retrieval message. In step 506, processing system 132 identifies the network address in memory 134 that is assigned to the tag. In step 508, processing system 132 generates a tag response message that includes the network address assigned to the tag. In step 510, processing system 132 transmits the tag response message to browser application 124.
Referring again to method 400 illustrated in
The above methods advantageously allow user 110 to assign a short, easy to remember tag to a lengthy and complex network address. The tag assigned by user 110 is stored in tag server 130 so that the network address may be subsequently retrieved. At some later time, user 110 may retrieve the network address from tag server 130 by simply entering the tag into a browser application. Also, user 110 may convey the tag to user 120 so that user 120 may also retrieve the network address from tag server 130 by simply entering the tag into his/her browser application. The assignment of tags greatly simplifies the process of accessing web pages and navigating the Internet.
The following illustrates an example of assigning a tag to a network address of a web page.
User 110 is presently viewing a web page for Company A in
Browser application 114 then generates a tag assignment message that includes the URL for Company A and the tag assigned to the URL, and transmits the tag assignment message to tag server 130 (see
Assume for example that user 110 wants to refer user 120 to the web page for Company A that is advertising jobs. Instead of trying to convey the lengthy and complex URL for the web page, user 110 merely gives user 120 the tag “JOBS”. User 120 may then enter this tag into his/her browser application 124 to retrieve this web page as is illustrated in
To retrieve the job advertising web page for Company A, user 120 enters the tag “JOBS” into dialog box 708 provided by browser application 124. User 120 then selects the “GO TAG” button 704. Responsive to the selection of the “GO TAG” button 704, browser application 124 generates a tag retrieval message that includes the tag as entered by user 120, and transmits the tag retrieval message to tag server 130 to retrieve the URL assigned to the tag. Responsive to the tag retrieval message, browser application 124 receives a tag response message from tag server 130 that includes the URL for the web page of Company A. Browser application 124 processes the URL in the tag response message to retrieve and display the web page for Company A.
As is illustrated in this example, user 120 merely had to enter the tag of “JOBS” as provided by user 110 to retrieve the web page for Company A. The assignment of the tag to the URL for the web page makes navigating to the web page easier and more convenient for user 120.
Although specific embodiments were described herein, the scope of the invention is not limited to those specific embodiments. The scope of the invention is defined by the following claims and any equivalents thereof.