IP Library Granted Patent US 6,907,032
Granted Patent B2
US 6,907,032 · App. 09/799,471 · Granted Jun 14, 2005

Method for selecting terminating gateways for an internet telephone call using a tree search

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,907,032
App. No.
09/799,471
Granted
Jun 14, 2005
Kind
B2
Abstract

A tree search method for selecting one or more servers for terminating an Internet telephone call. The tree comprises a plurality of nodes, each having a digit field, an object field, and a children array field. If the object of the current node is not null, it is added to a list of suitable equipment. A prefix parameter is formed from part of a destination telephone number and used to index into a children array to find a sub-tree node. If that array element is not null, the search is recursively applied to that node by passing the stripped prefix parameter and the result list. The search walks down the tree consuming the available digits in the prefix parameter and accumulating entries in the list of servers that can terminate the call.

Claims (26)

1. A method for selecting servers for terminating an Internet telephone call, comprising the steps of:

a. assembling at least part of a destination telephone number as a PstnPrefix parameter for use in a tree search, the PstnPrefix parameter comprising a continuous sequence of digits from at least part of the destination telephone number;

b. inputting a first digit of the PstnPrefix parameter into a children array field of a first node in a tree, the first digit comprising the first numeral in the PstnPrefix parameter, the tree comprising a plurality of nodes each having a digit field, an object field and a children array field, the digit field either being null or comprising a numeral that corresponds to one of the digits in the PstnPrefix parameter or being null, the object field either being null or comprising an object which identifies servers which can terminate certain Internet telephone calls, and the children array field comprising an array of ten child entries, with each child entry either leading to another node or being null;

c. if a child entry in the first node corresponding to the first digit is not null, moving to a second node, the second node containing the first digit in the digit field;

d. if the second node includes an object that is not null, adding the object to an equipment list, the object identifying one or more one-digit servers that can terminate Internet telephone calls for destination telephone numbers beginning with the first digit;

e. inputting the second digit of the PstnPrefix parameter into the child array of the second node;

f. if a child entry in the second node corresponding to the second digit is not null, moving to a third node, the third node containing the second digit in the digit field;

g. if the third node includes an object that is not null, adding the object to the equipment list, the object identifying one or more two-digit servers that can only terminate Internet telephone calls for destination telephone numbers beginning with the first digit and the second digit; and

h. continuing to move to additional nodes until all of the digits in the PstnPrefix parameter have been used, and continuing to add additional objects to the equipment list if the additional objects are not null, the additional objects identifying additional servers that can only terminate Internet telephone calls for destination telephone numbers beginning with the first digit, the second digit, and at least one additional digit.

2. The method of claim 1 further comprising the step of:

i. ranking the servers in the equipment list so that the additional server is given a higher preference for use than the two-digit server, and so that the two-digit server is given a higher preference for use than the one-digit server.

3. The method of claim 1 further comprising the steps of:

i. ranking the servers in the list according to a route policy consideration, the route policy consideration including a quality of service component; and

j. transmitting server identification information for one or more of the servers, from a route termination server back to a call originating server after the servers have been ranked, the server identification information including information that is used by the call originating server to establish an Internet connection with the call terminating server so that an Internet telephone call between the call originating server and the call terminating server can be completed.

4. The method of claim 3 wherein the quality of service component comprises a penalty assigned to an Internet link that has a poor performance history.

5. The method of claim 3 wherein the quality of service component comprises a penalty assigned to a PSTN link that has a poor performance history.

6. The method of claim 1 wherein the child entries correspond to one of the numerals zero through nine.

7. A method for selecting servers for terminating an Internet telephone call, comprising the steps of:

selecting a prefix parameter including a sequence of digits of at least a part of a destination telephone number for the Internet telephone call;

obtaining identification of the servers that can terminate the Internet telephone call from routing information arranged in a tree data structure including a plurality of nodes, each of the nodes including a digit field, an object field, and a children field, the digit field including one or more digits corresponding to said each of the nodes, the object field including an object identifying the server corresponding to said each of the nodes, and the children field pointing to a sub-tree of said each of the nodes, wherein the step of obtaining identification of the servers comprises:

obtaining a first object from a first object field of a first node corresponding to a first portion of the prefix parameter; and

obtaining a second object from a second object field of a second node corresponding to a second portion of the prefix parameter other than the first portion of the prefix parameter, the second node being included in the sub-tree pointed to by the children field of the first node, and the first object and the second object identifying the servers that can terminate the Internet telephone call.

8. The method of claim 7 , further comprising the step of:

ranking the servers identified by the first object and the second object according to a preference of use, the preference of use being based on a quality of service component.

9. The method of claim 8 , wherein the quality of service component comprises a penalty assigned to an Internet link that has a poor performance history.

10. The method of claim 8 , wherein the quality of service component comprises a penalty assigned to a PSTN (Public Switched Telephone Network) link that has a poor performance history.

Assignments (11)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2023
From: CHANNEL VENTURES GROUP, LLC
To: CHANNEL IP B.V.
Reel/Frame 064180/0440 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 13, 2023
From: PARETEUM CORPORATION; PARETEUM NORTH AMERICA CORPORATION; DEVICESCAPE HOLDINGS, INC.; IPASS, INC.; IPASS IP LLC; PARETEUM EUROPE B.V.; ARTILIUM GROUP LTD.; PARETEUM N.V.; PARETEUM ASIA PTE. LTD.
To: CHANNEL VENTURES GROUP, LLC
Reel/Frame 063988/0501 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jun 9, 2020
From: IPASS IP LLC
To: HIGH TRAIL INVESTMENTS SA LLC, AS COLLATERAL AGENT
Reel/Frame 052888/0728 →
RELEASE OF SECURITY INTEREST Recorded May 4, 2020
From: FIP UST LP; DBD CREDIT FUNDING, LLC
To: IPASS INC.; IPASS IP LLC
Reel/Frame 052564/0488 →
RELEASE OF SECURITY INTEREST Recorded Apr 29, 2020
From: POST ROAD ADMINISTRATIVE LLC
To: IPASS IP LLC
Reel/Frame 052525/0357 →
RELEASE OF SECURITY INTEREST Recorded Mar 5, 2019
From: FORTRESS CREDIT CORP.
To: IPASS INC.
Reel/Frame 048503/0518 →
SECURITY INTEREST Recorded Feb 28, 2019
From: IPASS IP LLC
To: POST ROAD ADMINISTRATIVE LLC
Reel/Frame 048462/0641 →
SECURITY INTEREST Recorded Jun 21, 2018
From: IPASS INC.; IPASS IP LLC
To: FORTRESS CREDIT CORP.; FIP UST LP; DBD CREDIT FUNDING LLC
Reel/Frame 046170/0457 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 20, 2018
From: IPASS INC.
To: IPASS IP LLC
Reel/Frame 046148/0555 →
SECURITY INTEREST Recorded Jun 14, 2018
From: IPASS INC.
To: FORTRESS CREDIT CORP.
Reel/Frame 046094/0323 →
MERGER Recorded Jul 23, 2012
From: GOREMOTE INTERNET COMMUNICATIONS, INC.
To: IPASS INC.
Reel/Frame 028612/0163 →