`Scott et al.
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 6,816,464 B1
`Nov. 9, 2004
`
`USOO6816464B1
`
`(54) METHOD, SYSTEM, AND COMPUTER
`PROGRAM PRODUCT FOR ROUTE
`QUALITY CHECKING AND MANAGEMENT
`(75) Inventors: Mark D. Scott, Ashburn, VA (US);
`Anita T. Cheng, Ashburn, VA (US)
`(73) Assignee: Array Telecom Corporation, Herndon,
`VA (US)
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 735 days.
`
`(*) Notice:
`
`(21) Appl. No.: 09/660,920
`(22) Filed:
`Sep. 13, 2000
`(51) Int. Cl." ............................ H04L 12/26; HO4J 1/16;
`G08C 13/00; G06F 11/00; GO1R 31/08
`(52) U.S. Cl. ....................... 370/252; 370/238; 370/351;
`370/401
`(58) Field of Search ................................. 370/238, 252,
`370/352, 353,356, 401, 355, 468; 709/238,
`241, 245, 218, 227
`
`(56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`5,452.294. A * 9/1995 Natarajan ................... 370/351
`5,621,727 A 4/1997 Vaudreuil .................... 370/60
`(List continued on next page.)
`FOREIGN PATENT DOCUMENTS
`
`WO
`WO
`WO
`WO
`
`WO 97/14238 A1
`WO 97/23078 A1
`WO 97/27692 A1
`WO 97/28628 A1
`
`4/1997 ........... HO4L/12/46
`6/1997
`... HO4L/12/56
`7/1997
`... HO4L/12/56
`8/1997 ........... HO4L/12/56
`
`OTHER PUBLICATIONS
`Anquetil, L-P et al., “Media Gateway Control Protocol And
`Voice Over IP Gateways,” Alcatel Telecommunications
`Review, pp. 151-157 (Apr.-Jun. 1999).
`
`OO y
`
`Array Series 3000 Users Manual, Array Telecom Corp,
`Entire Manual (Aug. 27, 1999).
`civoice IP Telephony, Product Brochure, Comdial, 6 pages
`(Copy obtained Aug. 1999).
`civoice System User's Manual, Comdial, Entire Manual
`(Jun. 1998).
`Held, G., Voice Over Data Networks, McGraw-Hill, Entire
`Book (1998).
`McConnell, B., How to Build an Internet PBXAhmed Borg,
`at http://www.google.com . . . , 13 pages, (Apr. 1997).
`Prosise, J., “Programming Windows 95 with MFC, Part VII:
`The Document/View Architecture,” Microsoft Systems Jour
`nal, Miller Freeman, 35 pages (Feb. 1996).
`Sheldon, T, Encyclopedia of Networking, Electronic Edi
`tion, McGraw-Hill, pp. 1043–1050 (1998).
`Yang, C., INETPhone. Telephone Services and Servers On
`Internet, at http://www.ds.internic.net/rfc/rfc1789.txt, 6
`pages, (Apr. 1995).
`
`Primary Examiner Man Phan
`(74) Attorney, Agent, or Firm-Sterne, Kessler, Goldstein
`& Fox PL.L.C.
`
`ABSTRACT
`(57)
`A method, System and computer program product for route
`checking and management is described herein. In a voice
`over internet protocol environment, the invention allows for
`the testing of routes among various gateways. In one
`embodiment, gateways include routing managers for check
`ing and Storing route information. The method of the inven
`tion includes checking candidate routes for the level of
`quality, location and cost levels. Further, users can prioritize
`routes based on these criteria.
`
`23 Claims, 8 Drawing Sheets
`
`Network
`
`14
`
`Os
`
`108
`
`Gateway
`
`Gateway
`
`Gateway
`
`10
`
`SN
`
`Local
`Exchange
`
`16
`
`37.
`
`12
`
`4
`
`PSTN
`---2-
`
`
`
`Ocai
`exchange
`
`cal
`o
`Exchange
`
`118
`
`7.
`
`Hewlett Packard Enterprise Co. Ex. 1001, Page 1 of 19
`Hewlett Packard Enterprise Co. v. Intellectual Ventures II LLC
`IPR2021-01378
`
`
`
`US 6,816.464 B1
`Page 2
`
`U.S. PATENT DOCUMENTS
`
`4/1998 Baratz et al. ............... 370/356
`5,742,596. A
`576. A s
`awa et al. .......... 53
`2 -- Y-2
`f
`ugar ............
`370/
`5,790,543 A 8/1998 Cloutier ...................... 370/395
`5,805,602 A 9/1998 Cloutier et al. ............. 370/516
`5,812,840 A 9/1998 Shwartz .........
`... 395/604
`5,870.464 A 2/1999 Brewster et al. ............ 379/219
`5,892.822. A 4/1999 Gottlieb et al. ............. 379/220
`5,897,613 A 4/1999 Chan .............
`704/210
`5,900,000 A 5/1999 Korenshtein ................ 707/200
`5,940,479 A
`8/1999 Guy et al. ............... 379/93.01
`5,940,827 A 8/1999 Hapner et al. ................. 707/8
`5,940,829. A
`8/1999 Tsuiki et al. .................. 707/10
`5,940,832 A 8/1999 Hamada et al. ............. 707/100
`5,953,405 A 9/1999 Miloslavsky ................ 379/265
`
`6,356,545 B1 * 3/2002 Vargo et al. ................ 370/355
`6,363,065 B1 * 3/2002 Thornton et al. ........... 370/352
`6,363,319 B1
`3/2002 Hsu ........................... 701/202
`6,366,560 B1 * 4/2002 Ohiwane et al. ............ 370/238
`6,385,193 B1 * 5/2002 Civanlar et al. ............ 370/352
`6,404,746 B1
`6/2002 Cave et al.
`... 370/262
`2 - - -2
`6,426.955 B1
`7/2002 Dalton, Jr. et al. ......... 370/401
`2 : 1/y/2
`2
`6,483,808 B1 * 11/2002 Rochberger et al. ........ 370/238
`2 : a-2
`6,487,172 B1
`11/2002 Zonoun .........
`370/238
`2 : a
`6,529,499 B1
`3/2003 Doshi et al. ................ 370/352
`2- 1 - 2
`6,584.110 B1
`6/2003 Mizuta et al. .............. 370/401
`2- Y -
`2
`6,597.684 B1
`7/2003 Gulati et al. ....
`370/351
`2- --
`6,600,738 B1 * 7/2003 Alperovich et al. ........ 370/352
`6614,765 B1 * 9/2003 B
`tal
`370/255
`2Y- - -2
`f
`IllC C al. . . . . . . . . . . . . . . . .
`f
`
`
`
`* cited by examiner
`
`Hewlett Packard Enterprise Co. Ex. 1001, Page 2 of 19
`Hewlett Packard Enterprise Co. v. Intellectual Ventures II LLC
`IPR2021-01378
`
`
`
`U.S. Patent
`
`Nov. 9, 2004
`
`Sheet 1 of 8
`
`US 6,816,464 B1
`
`100 y
`
`102
`
`NetWork
`
`104
`
`Gateway
`
`1 O6
`
`Gateway
`
`1 O8
`
`Gateway
`
`11 O
`
`112
`
`14
`
`
`
`
`
`PSTN
`LOCal -Z-
`Exchange
`
`
`
`
`
`
`
`PSTN
`LOCa -Z - Local
`Exchange
`Exchange
`
`
`
`118
`
`12O
`
`FIG. 1
`
`Hewlett Packard Enterprise Co. Ex. 1001, Page 3 of 19
`Hewlett Packard Enterprise Co. v. Intellectual Ventures II LLC
`IPR2021-01378
`
`
`
`U.S. Patent
`
`Nov. 9, 2004
`
`Sheet 2 of 8
`
`US 6,816,464 B1
`
`200 Y
`
`2O2
`
`
`
`
`
`
`
`Gateway
`
`
`
`
`
`Local Exchange
`
`Gateway
`
`Local
`Exchange
`
`FIG. 2
`
`Hewlett Packard Enterprise Co. Ex. 1001, Page 4 of 19
`Hewlett Packard Enterprise Co. v. Intellectual Ventures II LLC
`IPR2021-01378
`
`
`
`U.S. Patent
`
`Nov. 9, 2004
`
`Sheet 3 of 8
`
`US 6,816,464 B1
`
`300 Y
`
`
`
`
`
`
`
`
`
`Routing Manager
`
`Database
`
`31 O
`
`Network
`
`Gateway
`
`FIG. 3
`
`Control Logic
`
`Hewlett Packard Enterprise Co. Ex. 1001, Page 5 of 19
`Hewlett Packard Enterprise Co. v. Intellectual Ventures II LLC
`IPR2021-01378
`
`
`
`U.S. Patent
`
`Nov. 9, 2004
`
`Sheet 4 of 8
`
`US 6,816,464 B1
`
`Routine for determining N--00
`route duality
`
`Determine gateways
`
`Determine candidate
`route(s) to gateways
`
`402
`
`404
`
`Test candidate route(s) to
`gatewayS
`
`4O6
`
`Determine candidate route
`Statistics
`
`408
`
`SCOre Candidate route
`
`41 O
`
`
`
`Prioritize Candidate routes
`based
`O. SCOre
`
`412
`
`Store priority and score
`information
`
`414
`
`FIG. 4
`
`Hewlett Packard Enterprise Co. Ex. 1001, Page 6 of 19
`Hewlett Packard Enterprise Co. v. Intellectual Ventures II LLC
`IPR2021-01378
`
`
`
`U.S. Patent
`
`Nov. 9, 2004
`
`Sheet 5 of 8
`
`US 6,816,464 B1
`
`
`
`Routine for testing
`candidate routes
`
`-406
`
`Configure packet
`parameter(s)
`
`Configure scoring table
`
`5O2
`
`504
`
`Configure route ordering
`
`5O6
`
`Send test packet(s)
`
`Receive returned
`packet(s)
`
`508
`
`51O
`
`FIG. 5
`
`Hewlett Packard Enterprise Co. Ex. 1001, Page 7 of 19
`Hewlett Packard Enterprise Co. v. Intellectual Ventures II LLC
`IPR2021-01378
`
`
`
`U.S. Patent
`
`Nov. 9, 2004
`
`Sheet 6 of 8
`
`US 6,816,464 B1
`
`SOO
`
`
`
`FIG. 6
`
`Hewlett Packard Enterprise Co. Ex. 1001, Page 8 of 19
`Hewlett Packard Enterprise Co. v. Intellectual Ventures II LLC
`IPR2021-01378
`
`
`
`U.S. Patent
`
`Nov. 9, 2004
`
`Sheet 7 of 8
`
`US 6,816,464 B1
`
`O y
`
`
`
`714.
`
`6.
`
`FIG. 7
`
`Hewlett Packard Enterprise Co. Ex. 1001, Page 9 of 19
`Hewlett Packard Enterprise Co. v. Intellectual Ventures II LLC
`IPR2021-01378
`
`
`
`U.S. Patent
`
`Nov. 9, 2004
`
`Sheet 8 of 8
`
`US 6,816,464 B1
`
`
`
`842
`
`(
`
`)
`
`840
`1.
`
`844
`
`Main Memory
`
`(
`
`802
`Display Interface
`
`)
`
`u-880
`Display
`
`
`
`
`
`860
`
`848
`
`
`
`850
`
`Hard Disk Drive
`
`852
`854
`Removable 11 Removable
`
`
`
`Interfac e
`
`Removable
`Storage Unit
`
`866
`
`862
`
`868
`
`
`
`Communication interface
`
`864
`
`FG. 8
`
`Hewlett Packard Enterprise Co. Ex. 1001, Page 10 of 19
`Hewlett Packard Enterprise Co. v. Intellectual Ventures II LLC
`IPR2021-01378
`
`
`
`US 6,816,464 B1
`
`1
`METHOD, SYSTEM, AND COMPUTER
`PROGRAM PRODUCT FOR ROUTE
`QUALITY CHECKING AND MANAGEMENT
`
`BACKGROUND OF THE INVENTION
`
`15
`
`1. Field of the Invention
`The invention relates generally to the field of voice over
`Internet protocol technology. More particularly, the inven
`tion relates to route testing and Selection over packet
`Switched networks.
`2. Related Art
`Voice over Internet protocol (VoIP) communications ser
`vices provide telephony Services over packet-Switched
`networks, like the Internet. In order to maintain call quality.
`VoIP services are concerned with route quality. High route
`quality makes for more reliable and clearer conversations.
`Route checking and Selection over the packet Switched
`network (like the Internet) is necessary to ensure quality of
`Service.
`Unlike typical data, Voice data is extremely time depen
`dent. Transmission delays and variations in the transmission
`rate alter the Voice data received by the destination.
`In a packet-Switched network, latency and jitter are mea
`25
`Surable qualities of network performance. Latency is the
`amount of time it takes a packet to reach its destination. Jitter
`is the variation in latency. The route is the path in the
`network from the origin of a packet or packets to their
`destination. A route can be a direct end-to-end connection
`path, or it can consist of a path linked by any number of
`routers, Switches, gateways, gatekeepers, etc.
`Latency and jitter can degrade the communication path
`between any two points on a packet-Switched network, like
`the Internet. In a VoIP environment, latency will be per
`ceived by the end users as a delay in the response of the
`remote site (or other user). Furthermore, jitter is the varia
`tion in latency from one packet to another which can be
`perceived as a Stammering in the conversation.
`Latency and jitter each impact communication differently.
`For example, if packets always arrived 50 milliseconds (ms)
`after being transmitted, then there would be a 50 ms latency
`and no jitter. In another example, however, if packet #1
`arrived 100 ms after transmission, packet #2 arrived 50 ms
`after transmission, and packet #3 arrived 150 ms after
`transmission, there would be an average jitter of +/-33 ms.
`In VoIP applications, jitter is often more critical than latency.
`Jitter can cause a packet to arrive too late to be useful. The
`effect is that the packet may be delayed enough that the end
`user will hear a pause in the Voice that is talking to them,
`which is very unnatural if it occurs during the middle of a
`word or Sentence.
`Jitter typically occurs when the network utilization is too
`high, and packets are being queued by gateways, Switches,
`routers or other Similar devices, causing delivery times to
`become unpredictable. The Internet, because of its complex
`Structure, is often Subject to varying degrees of jitter. Jitter
`variation can occur at different locations and at different
`times depending upon network traffic and other conditions.
`Conventional techniques can calculate the jitter and
`latency present in a route. Some VoIP systems can Select
`routes based on the lowest jitter and/or latency. Other
`Systems can include management of the route Selection
`proceSS in response to network conditions.
`However, these techniques are not conducive to rapidly
`changing network conditions and do not provide real-time
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`route checking and Selection. Additionally, these techniques
`do not take into account the costs of Switching from the
`packet Switched network to the public Switched telephone
`network (PSTN) in order to maintain quality of service.
`Furthermore, conventional Systems do not allow calling
`parties to make route Selections on a per call basis.
`Still further, conventional systems do not allow users to
`Supply their own criteria used in the checking and Selection
`of routes.
`Therefore, in view of the above, what is needed is a
`System, method and computer program product for route
`quality checking and management. Further, what is needed
`is a System, method and computer program product that can
`test and Score routes on a network based on criteria provided
`by a user. Such a System would provide the optimal route for
`a call based on the provided criteria. Furthermore, what is
`needed is a System, method and computer program product
`that enables users to access the route quality checking and
`management System and provide individual or group routing
`preferences and/or other route information So that the System
`can Select the proper route for that individual or group.
`
`SUMMARY OF THE INVENTION
`The invention is directed to a System, method and com
`puter program product for a route quality checking and
`management System that Satisfies the above-Stated needs.
`The method of the present invention involves a routing
`manager or a route management module implemented at a
`gateway for determining which other gateways are available
`to it. A gateway can be any Server enabled for routing voice
`data packets. The method involves the gateway determining
`the candidate routes to the other gateways, testing those
`candidate routes, determining candidate route Statistics,
`Scoring each candidate route tested, prioritizing each Scored
`route and Storing this priority and Score information. In one
`embodiment, a routing manager on a gateway tests the
`routes to other gateways So that it can use the proper routes
`based on the preferences of users.
`The method of the invention for checking a network route
`includes a routing manager determining a gateway available
`for routing, where the gateway is capable of responding to
`a request on the communications network. The routing
`manager determines a candidate route to the gateway, where
`the candidate route is within the communications network.
`Routing manager tests the candidate route to a gateway
`using quality measurement packets, where the quality mea
`Surement packets include route information. From the route
`information, the routing manager determines route Statistics,
`where the route Statistics are based on routing information
`contained within Said quality measurement packets. The
`routing manager Score the candidate route based on the route
`Statistics.
`In an embodiment, the method of the invention is imple
`mented in a communications network that includes a packet
`Switched network, Such as frame relay or the Internet.
`Furthermore, in other embodiments, the method of the
`invention is implemented in a communications network that
`includes a public Switched telephone network (PSTN) or a
`combination of a PSTN and a packet-switched network.
`The route information utilized by the invention includes
`the latency, time jitter, and lost packet information.
`In an embodiment, the method of the invention includes
`functionality for the routing manager to prioritize the can
`didate route among other tested routes based on the Score
`obtained for that candidate route. In other embodiments, the
`
`Hewlett Packard Enterprise Co. Ex. 1001, Page 11 of 19
`Hewlett Packard Enterprise Co. v. Intellectual Ventures II LLC
`IPR2021-01378
`
`
`
`US 6,816,464 B1
`
`15
`
`25
`
`35
`
`40
`
`3
`routing manager has access to a database for Storing Score
`information related to the candidate route(s) for use in route
`Selection.
`In one embodiment, the testing functions of the method of
`the invention include configuring the parameters for quality
`measurement packets to be sent to a gateway where the
`parameters include the packet interval, packet length, num
`ber of packets, and time limit. The routing manager includes
`a graphical user interface (GUI) for configuring these
`parameterS.
`Additionally, the routing manager includes a GUI for
`configuring the Scoring table of the invention. Thus, the
`routing manager configures the Scoring table for use in
`Scoring candidate routes where the table includes a quality
`Score, packet loss, average delay, and average jitter. In other
`embodiments, the routing manager includes a GUI for
`configuring the route ordering applied for a gateway, where
`the route ordering includes file logging information, quality
`of Service threshold, and timeout amount.
`According to embodiments of the invention, the routing
`manager forwards quality measurement packets to a
`gateway, where the quality measurement packets include
`routing information; and the routing manager receives
`returned quality measurement packets from a gateway,
`where the returned quality measurement packets include
`routing information.
`The method of the invention for checking a network route
`includes a routing manager that determines an available
`gateway for routing, where the gateway is capable of
`responding to a request on the communications network.
`The routing manager determines a candidate route to the
`gateway, where the candidate route is within the communi
`cations network.
`The routing manager tests the candidate route to a gate
`way using quality measurement packets, where the quality
`measurement packets include route information. From the
`route information, the routing manager determines route
`Statistics, where the route Statistics are based on routing
`information contained within Said quality measurement
`packets. The routing manager Score the candidate route
`based on the route Statistics.
`In an embodiment, the method of the invention is imple
`mented in a communications network that includes a packet
`Switched network, Such as frame relay or the Internet.
`Furthermore, in other embodiments, the method of the
`invention is implemented in a communications network that
`includes a public Switched telephone network (PSTN) or a
`combination of a PSTN and a packet Switched network.
`The route information utilized by the invention includes
`the latency, time jitter, and lost packet information.
`In an embodiment, the method of the invention includes
`functionality for the routing manager to prioritize the can
`didate route among other tested routes based on the Score
`obtained for that candidate route. In other embodiments, the
`routing manager has access to a database for Storing Score
`information related to the candidate route(s) for use in route
`Selection.
`In one embodiment, the testing functions of the method of
`the invention include configuring the parameters for quality
`measurement packets to be sent to a gateway where the
`parameters include the packet interval, packet length, num
`ber of packets, and time limit. The routing manager includes
`a graphical user interface (GUI) for configuring these
`parameterS.
`Additionally, the routing manager includes a GUI for
`configuring the Scoring table of the invention. Thus, the
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`routing manager configures the Scoring table for use in
`Scoring candidate routes where the table includes a quality
`Score, packet loss, average delay, and average jitter. In other
`embodiments, the routing manager includes a GUI for
`configuring the route ordering applied for a gateway, where
`the route ordering includes file logging information, quality
`of Service threshold, and timeout amount.
`According to embodiments of the invention, the routing
`manager forwards quality measurement packets to a
`gateway, where the quality measurement packets include
`routing information; and the routing manager receives
`returned quality measurement packets from a gateway,
`where the returned quality measurement packets include
`routing information.
`The System and computer program product of the present
`invention includes a routing manager within a gateway
`coupled to both a network, Such as the Internet, and the
`PSTN, via a local eXchange, through which users can access
`the gateway either over the network or from a device
`connected to the local eXchange. In one embodiment, the
`System contains numerous modules operating either in a
`redundant or distributed manner, as well as in a Serial or
`parallel manner. In another embodiment, the gateway
`includes a database to Store information collected by the
`routing manager.
`In one embodiment of the invention, a gateway is located
`in a different local eXchange from other gateways to provide
`access to Specific geographical locations from the network.
`In another embodiment, more than one gateway can be
`connected to any given local eXchange. In this embodiment,
`other gateways can prioritize route Selection based on the
`utilization of any one of the gateways located in a given
`local eXchange.
`The computer program product of the present invention
`further includes a graphical user interface (GUI) for entering
`the Specific criteria used by the method of the present
`invention for checking and Selecting routes.
`The method of the present invention includes a route
`testing routine. In one embodiment, the testing routine
`configures packet parameter(s), configures a scoring table,
`and configures a route order. The method of the present
`invention includes a testing routine where test packet(s) are
`Sent and received for Scoring and determination of route
`quality.
`The route checking and management System Supplies
`route information that describes the route. Furthermore, the
`route checking and management System includes the
`functionality, in hardware or Software or a combination of
`hardware and Software, for performing the methods
`described herein.
`While the invention is described in terms of the above
`embodiments, this is for convenience only and is not
`intended to limit its application. In fact, after reading the
`following description, it will be apparent to one skilled in the
`relevant art(s), based on the teachings herein, how to imple
`ment the invention in alternative embodiments (e.g., using
`gateways in neighboring local eXchanges, and/or Stacking
`gateways in a single local exchange).
`Furthermore, while the following description refers to the
`global Internet, it is not intended to limit the application of
`the invention. It will be apparent to one skilled in the
`relevant art how to implement the following invention, in
`any computer network, combination of networks or other
`alternative embodiments. For example, other Voice over
`Packet (VoP) networks include frame relay and asynchro
`nous transfer mode (ATM) enabled networks.
`
`Hewlett Packard Enterprise Co. Ex. 1001, Page 12 of 19
`Hewlett Packard Enterprise Co. v. Intellectual Ventures II LLC
`IPR2021-01378
`
`
`
`US 6,816,464 B1
`
`S
`One advantage of the invention is that a user can Select the
`routes to other gateways to be tested.
`Another advantage of the invention is that a user can
`Select the criteria applied to candidate routes So that the
`proper route is Selected.
`Yet another advantage of the invention is that the System
`can test routes as the call is being placed and Select the best
`route for that particular call. Furthermore, a user attempting
`to place a call where the level of quality is below a
`determined level can have the call routed to the nearest
`gateway with an acceptable level of quality.
`Further features and advantages of the invention as well
`as the Structure and operation of various embodiments of the
`invention are described in detail below with reference to the
`accompanying drawings.
`
`BRIEF DESCRIPTION OF THE FIGURES
`The accompanying drawings, which are incorporated
`herein and form a part of the Specification, illustrate the
`invention and, together with the description, further Serve to
`explain the principles of the invention and to enable a perSon
`skilled in the pertinent art to make and use the invention. In
`the drawings:
`FIG. 1 is a block diagram showing an example System
`architecture, according to an embodiment of the invention,
`showing network connectivity among various components,
`FIG. 2 is a block diagram showing an alternative example
`System architecture, according to an embodiment of the
`invention, showing network connectivity among the various
`components,
`FIG.3 is a block diagram showing a gateway that includes
`a routing manager, according to an embodiment of the
`invention;
`FIG. 4 is a flowchart illustrating a routine for determining
`route quality according to an embodiment of the invention;
`FIG. 5 is a flowchart illustrating a routine for candidate
`route testing according to an embodiment of the invention;
`FIG. 6 is an exemplary route testing configuration Screen
`according to an embodiment of the invention;
`FIG. 7 is an exemplary route Scoring configuration Screen
`according to an embodiment of the invention; and
`FIG. 8 is an example computer System in one example
`implementation of the present invention.
`The invention will now be described with reference to the
`accompanying drawings. In the drawings, like reference
`numbers indicate identical or functionally Similar elements.
`Additionally, the left-most digit(s) of a reference number
`identifies the drawing in which the reference number first
`appearS.
`
`DETAILED DESCRIPTION OF THE
`PREFERRED EMBODIMENTS
`In Summary, the routing manager of the invention con
`nects to other modules of the gateway to access information
`about other gateways and candidate routes to those gate
`ways. In an alternative embodiment, the routing manager is
`able to perform tracing operations to determine the candi
`date routes to gateways. Once candidate routes are obtained,
`the routing manager tests the routes to determine their
`quality of Service.
`Candidate routes are assigned Scores (also known as a
`level). The routing manager can be pre-set with various
`levels. Additionally, the routing manager can be pre-Set with
`route ordering levels which prioritize the various aspects of
`
`6
`a route. These aspects can include the level assigned to a
`tested route, but this is optional. In other embodiments,
`aspects include the address of the destination gateway, the
`cost involved to route to that gateway, etc.
`In an embodiment, the routing manager provides the
`ordered routes before a user places a call. In another
`embodiment, the routing manager is configured to test
`candidate routes to a designation gateway whenever a user
`requests a connection to a call that may utilize that desti
`nation gateway.
`In brief, a user of the invention is a caller known to the
`VoIP system. When the system receives a call request from
`the user, the System accesses userspecific information (route
`ordering) and the destination address (i.e., the number being
`called/requested) to determine the candidate routes to use in
`connecting the call. The System tests the candidate routes to
`ensure call quality. The System may use route quality
`Statistics, along with user Specific information, to determine
`the proper route. These and additional embodiments and
`examples of the invention are now discussed in greater
`detail.
`FIG. 1 is a block diagram showing an example VoIP
`system 100, according to an embodiment of the invention,
`showing the network connectivity among the various com
`ponents. It should be understood that the particular example
`VoIP system 100 in FIG. 1 is shown for illustrative purposes
`only and does not limit the invention.
`The VoIP system 100 includes a network 102 which
`connects gateways 104, 106, and 108. Network 102 is a
`packet-Switched network capable of Serving as an intranet,
`internet, and/or connecting to the global Internet. Gateways
`104,106, and 108 can be physically located anywhere that
`allows connectivity with network 102.
`Each of gateways 104, 106, and 108 are connected to a
`local eXchange. AS Shown in FIG. 1, gateway 102 is con
`nected to local exchange 110; gateway 106 is connected to
`local eXchange 112, gateway 108 is connected to local
`eXchange 114.
`Local eXchanges 110, 112, and 114 are each connected to
`the PSTN.
`Telephones 116, 118, and 120 are each connected to a
`local eXchange. Telephone 116 is connected to local
`exchange 110. Telephone 118 is connected to local exchange
`112. Telephone 120 is connected to local exchange 114.
`Telephones 116, 118, and 120 are representative of any
`number of telephones connected to a given local eXchange.
`Typically, calls within a local eXchange are toll-free or
`“local” calls. Calls from a telephone in one local eXchange
`to a telephone in another local eXchange are typically
`considered toll calls or long distance calls.
`FIG. 2 is a block diagram showing an example VoIP
`system 200, according to an alternative embodiment of the
`invention, showing the network connectivity among the
`various components. It should be understood that the par
`ticular example VoIP system 200 in FIG. 2 is shown for
`illustrative purposes only and does not limit the invention.
`VoIP system 200 has substantially similar components to
`VoIP system 100. VoIP system 200 differs from VoIP system
`100 in that gateways 204 and 206 are connected to the same
`local eXchange, local eXchange 210. The purpose of illus
`trating this difference is to illustrate a feature of embodi
`ments of the invention. It is a feature of the invention that
`routing decisions can take into account the physical loca
`tions of local eXchanges when determining the route to use
`when placing a call over the VoIP systems of the invention.
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`Hewlett Packard Enterprise Co. Ex. 1001, Page 13 of 19
`Hewlett Packard Enterprise Co. v. Intellectual Ventures II LLC
`IPR2021-01378
`
`
`
`7
`Referring to FIG. 3, a block diagram 300, according to an
`embodiment of the invention, is shown.
`Block diagram 300 shows a network 302 connected to
`gateway 304. Gateway 304 contains routing manager 306,
`control logic 308, and database 310. Routing manager 306
`provides route checking and Selection routines as described
`herein. Routing manager 306 can be implemented in hard
`ware or Software or Some combination of hardware and
`Software. Control logic 308 provides additional functionality
`for voice coding and decoding, user logging, and other VoIP
`features. Database 310 Stores, among other things, the
`results of route tests, route checking parameters, and route
`information as described herein. Database 310 can store
`additional instructions for routing manager 306 to perform.
`Referring to FIG. 4, a flowchart 400 of routine for
`determining route quality, according to an embodiment of
`the invention, is shown.
`In step 402, the routing manager 306 determines which
`other gateways are available to route calls. In one
`embodiment, routing manager 306 can obtain this informa
`tion from database 310. In another embodiment, a separate
`routing Server (not shown) can provide information about
`available gateways. The database 310 and routing server are
`described in detail in a commonly-owned U.S. patent appli
`cation Ser. No. 09/527,920, entitled “Method, System, and
`Computer Program Product for Managing Routing Servers
`and Services, incorporated herein by reference in its
`entirety.
`In step 404, the routing manager 306 determines the
`candidate route(s) to the gateways that were determined in
`step 402. In one embodiment, candidate route(s) are deter
`mined by a tracing operation which determines the physical
`network route to a gateway. In another embodiment, data
`base 310 provides one or more candidate route(s) for each
`gateway from each other gateway. Candidate routes can
`include transitions from network 102 to the PSTN via a local
`eXchange, Such as local eXchange 112. In one embodiment,
`routing manager 306 determines the availability of candidate
`routes to each of gateways 204, 206, and 208.
`In step 406, the routing manager 306 tests the candidate
`route(s) to the gateways. An embodiment of step 406 is
`discussed further detail in FIG. 5. In an embodiment, routing
`manager 306 is able to determine information about each
`gateway tested, Such as, but not limited to, the local
`eXchange of each gateway, and Services Supported by each
`gateWay.
`In step 408, the routing manager 306 determines the
`candidate route Statistics based on the information returned
`in testing step 406. For example, routing manager 306
`determines the latency between its gateway and the other
`tested gateways. Additional details and embodiments are
`discussed with respect to FIG. 5.
`In step 410, the routing manager 306 scores the candidate
`route(s) based on the statistics determined in step 408. In one
`embodiment, the routing manager 306 Scores candidate
`route(s) based on both the statistics determined in step 408
`and Stored information from previous tests. In another
`embodiment, routing manager 306 Scores routes based on a