The present invention relates to communications systems, and more particularly to methods and systems for dynamically updating routing tables in a broadband communications system.
Routers route packets of data in and between networks, such as Transfer Control Protocol/Internet Protocol (TCP/IP) networks and the Internet. Routers use routing protocols and algorithms to map the topology of networks and then share that routing information with other routers. Routers store routing information in routing tables. If a network gets congested or a connection fails, a router uses the routing information in its routing table in an effort to find an alternate route.
Broadband communications systems present a number of unique routing challenges. Broadband subscribers are rarely sophisticated enough to manually update their own routing table. As a result, their routing tables are often outdated and ineffective. In addition, when broadband subscribers access multiple Point to Point over Ethernet (PPPoE) sessions and multiple service providers, conventional systems tend simply to promote the route that corresponds to the last active interface. This can confuse routers and cause packets to be unintentionally dropped.
One attempt to deal with the challenges discussed above is the PPPoE Active Discovery Network (PADN). PADN is an extension to PPPoE, which provides a standard method for building Ponint to Point (PPP) sessions and encapsulating PPP packets over Ethernet. PADN packets may include Internet Protocol (IP) routes that may be used by a Host, such as a Broadband Remote Access Server (BRAS) to populate it's routing table. Although PADN is an extension to PPPoE, it is not a standard and therefore many Hosts do not support PADN packets. In addition, utilization of PADN requires considerable manual oversight by a service provider, which can lead over time to unreliability.
With the foregoing in mind, methods and systems consistent with the present invention provide dynamic up-to-date routing information to broadband communications systems. Methods and systems consistent with the present invention are compatible with existing Host equipment and do not require manual oversight by a subscriber or service provider. In an exemplary embodiment, service providers and/or content providers maintain routing information in a standard HyperText Markup Language (HTML) file that is accessed by a subscriber's computer system. The subscriber's computer system parses the HTML file and extracts routing information to automatically populate it's routing table. The subscriber's computer system then periodically polls the HTML file for changes and automatically updates its routing table when new routing information is available.
These and other objects, features, and advantages in accordance with the present invention are provided in one embodiment by a method of providing routing information in a broadband communications system. The broadband communications system comprises a subscriber-data-processing system and at least one content-provider-data-processing system. The subscriber-data-processing system includes a client component of a broadband-access program. The method comprises the steps of (a) establishing at least one Point to Point over Ethernet (PPPoE) session between the subscriber-data-processing system and the at least one content-provider-data-processing system; (b) retrieving, by the client component on the subscriber-data-processing system, a file from a predetermined server containing routing information in a predetermined data format; (c) parsing, by the client component of the subscriber-data-processing system, the file to extract the routing information; and (d) populating, by the client component, a routing table on the subscriber-data-processing system based on the routing information.
In another embodiment, a system is provided for supplying routing information in a broadband communications system. The system comprises a subscriber-data-processing system including a client component of a broadband-access program; at least one content-provider-data-processing system for providing content to the subscriber-data-processing system via at least one Point to Point over Ethernet (PPPoE) session; means for providing the client component of the subscriber-data-processing system with a file from a predetermined server containing routing information in a predetermined data format; means for parsing the file to extract the routing information; and means for populating a routing table on the subscriber-data-processing system based on the routing information.
In another embodiment, a computer-readable medium is provided that contains instructions that cause a system to perform a method. The computer system includes a client program on a subscriber-computer system and a server program on a provider-computer system. The method comprises the steps of (a) establishing one or more Point to Point over Ethernet (PPPoE) sessions between the subscriber-computer system and the provider-computer system; (b) sending a file containing routing information in a predetermined data format from a predetermined server by the server program to the client program; (c) parsing, by the client program, the file to extract the routing information; (d) populating, by the client program, a routing table on the subscriber-computer system based on the routing information.
In yet another embodiment, a computer-readable memory device is provided that is encoded with a data structure for transferring data between a client program and a server program during a broadband communications session. The data structure has entries comprising routing information in a predetermined format, maintained by the server program and for use by the client program, for managing and updating a routing table.
The invention is explained in more detail by way of example with reference to the following drawings:
Methods consistent with the present invention are implemented by a client component of broadband-access software (the “client component”) residing on the subscriber's data-processing system 10 and by a server-component of broadband-access software (the “server component”) on the service provider's data-processing system 37 and/or on one ore more content providers' data-processing systems 42, 47. The client component and the server component work together to establish and manage a subscriber's broadband connection.
The file sent to the subscriber is set up and maintained by the content provider or the service provider. The file is stored by the content provider or service provider on a predetermined server in a predetermined format for access and use by a subscriber. One of skill in the art will appreciate that the predetermined format may be any data format suitable for conveying routing information to a subscriber. Examples include, but are not limited to, markup languages such as HyperText Markup Language (HTML), Extensible Markup Language (XML), and Standard Generalized Markup Language (SGML).
When the client component on the subscriber's data-processing-system receives the file containing routing information in a predetermined data format, the client component parses the content of the file to extract the routing information (step 225) and then updates the subscriber's routing table based on that routing information (step 230). The client component then periodically polls the file to determine if its contents have changed and, if they have, the client component updates the subscriber's routing table accordingly (step 235).
The present invention has been described with reference to the accompanying drawings that illustrate preferred embodiments of the invention. The invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Thus, the scope of the invention should be determined based upon the appended claims and their legal equivalents, rather than the specific embodiments described above.
This application is entitled to the benefit of Provisional Patent Application Ser. No. 60/404,458, filed on Aug. 19, 2002.
Number | Name | Date | Kind |
---|---|---|---|
6341516 | Narushima et al. | Jan 2002 | B1 |
6532217 | Alkhatib et al. | Mar 2003 | B1 |
6850531 | Rao et al. | Feb 2005 | B1 |
7054910 | Nordin et al. | May 2006 | B1 |
20020004935 | Huotari et al. | Jan 2002 | A1 |
20020044567 | Voit et al. | Apr 2002 | A1 |
20030110249 | Buus et al. | Jun 2003 | A1 |
20030172143 | Wakayama | Sep 2003 | A1 |
20040052257 | Abdo et al. | Mar 2004 | A1 |
Number | Date | Country |
---|---|---|
10093630 | Oct 1998 | JP |
2002185521 | Jun 2002 | JP |
Number | Date | Country | |
---|---|---|---|
20040034716 A1 | Feb 2004 | US |
Number | Date | Country | |
---|---|---|---|
60404458 | Aug 2002 | US |