← Back to Patent Explorer
US6956827B2 Expired / Lapsed US ⏱️ 0.0 years remaining

Distribution of identifiers in serverless networks

Assignee: Callahan Cellular LLC
•
Filing: 2004-03-15
•
Granted: 2005-10-18
•
Expires: 2024-03-15
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method for assigning identifiers in a distributed system involves establishing a circle as a locus of all identifiers, with the value of any point on the circle being the portion of one complete revolution in a first direction around the circle to the point, measured from a first zero point, and selecting values to be assigned as identifiers as needed by rounds of assignment, wherein the beginning and end of any round of assignment has identifiers assigned with point values that divide the circle into equal-length sectors. The method is useful in and applied to serverless telephony systems.

Inventors

  • 👤 Julius Goryavsky

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-29 08:20
CPC Classifications
H; H04; H04L; H04L12/00; H04L12/28; H04L12/42; H04L61/00; H04L2101/00; H04L2101/60; H04L2101/604

Claims Analysis

Total Claims: 22
Claim 1
Independent Claim 160 words
A method for assigning identifiers in a distributed system, comprising: (a) establishing a circle as a locus of all identifiers, with the value of any point on the circle being the portion of one complete revolution in a first direction around the circle to the point, measured from a first zero point; and (b) selecting values to be assigned as identifiers as needed by rounds of assignment, wherein, in any round of assignment, beginning with n equal-length sectors, termed long sectors, only the value of midpoints of long sectors are selected as new identifiers to be assigned in the system, each new assignment creating two new short sectors, the round continuing until all long sectors are divided, making the number of sectors at the end of the round, and the beginning of the next round 2n, and wherein the beginning and end of any round of assignment has identifiers assigned with point values that divide the circle into equal-length sectors.
Claim 2
Independent Claim 160 words
A method for assigning identifiers in a distributed system, comprising: (a) establishing a circle as a locus of all identifiers, with the value of any point on the circle being the portion of one complete revolution in a first direction around the circle to the point, measured from a first zero point; and (b) selecting values to be assigned as identifiers as needed by rounds of assignment, wherein, in any round of assignment, beginning with n equal-length sectors, termed long sectors, only the value of midpoints of long sectors are selected as new identifiers to be assigned in the system, each new assignment creating two new short sectors, the round continuing until all long sectors are divided, making the number of sectors at the end of the round, and the beginning of the next round 2n, and wherein the beginning and end of any round of assignment has identifiers assigned with point values that divide the circle into equal-length sectors.
Claim 3
Dependent Claim 49 words
The method of claim 1 wherein in every ascending new round of execution the short sectors at the end of the previous round are considered to be long sectors at the beginning of the next round, the number of sectors increasing in each round by a factor of two.
Claim 4
Dependent Claim 64 words
The method of claim 1 wherein identifiers may be withdrawn arbitrarily in any round as well as assigned, and if an identifier withdrawn is an endpoint of an undivided long sector, an already-assigned identifier in that round having a value of a midpoint of a long sector is reassigned using the value of the withdrawn identifier, freeing the previous midpoint value to be reused.
Claim 5
Dependent Claim 52 words
The method of claim 3 wherein if in any instant round withdrawal of an identifier will reduce the number of sectors below the beginning number of sectors for the round, a new descending round is entered wherein the long sectors of the instant round are considered short sectors of the descending round.
Claim 6
Dependent Claim 55 words
The method of claim 4 wherein a bitmap is used in any round for identifying, at any point in time, which long sectors are divided into short sectors by assignment of identifiers, and which are not yet divided, the number of bits in the bitmap equal to the number of long sectors in the round.
Claim 7
Dependent Claim 24 words
The method of claim 5 wherein the bitmap is divided into equal-length fragments, each fragment representing a group of adjacent sectors of the circle.
Claim 8
Dependent Claim 14 words
The method of claim 6 wherein the fragment length is a power of two.
Claim 9
Dependent Claim 63 words
The method of claim 6 wherein a hierarchy of bitmap fragments is established over the main bitmap, one bit in each upper-level bitmap representing a bitmap fragment in the next lower-level bitmap, wherein a one in a bit of an upper-level bit indicates either presence of at least one undivided sector or at least one divided sector represented in the associated lower-level fragment.
Claim 10
Dependent Claim 30 words
The method of claim 8 wherein the hierarchy of bitmaps is used to select sectors to divide to provide values for assignment as identifiers or assigned values to be re-assigned.
Claim 11
Dependent Claim 18 words
The method of claim 5 wherein the bitmap is consulted in selecting sectors for assigning and reassigning identifiers.
Claim 12
Dependent Claim 199 words
A distributed, serverless system comprising: a plurality of computerized appliances as active and inactive nodes in the serverless system; a communication facility interconnecting individual ones of the plurality of computerized appliances; and an assignment system for assigning and re-assigning identifiers to nodes of the serverless system; wherein the assignment system establishes a circle as a locus of all identifiers, with the value of any point on the circle being the portion of one complete revolution in a first direction around the circle to the point, measured from a first zero point, and selects values to be assigned as identifiers as needed by successive rounds of assignment, wherein, in any round of assignment, beginning with n equal-length sectors, termed long sectors, only the value of midpoints of long sectors are selected as new identifiers to be assigned in the system, each new assignment creating two new short sectors, the round continuing until all long sectors are divided, making the number of sectors at the end of the round, and the beginning of the next round 2n, and wherein the beginning and end of any round of assignment has identifiers assigned with point values that divide the circle into equal-length sectors.
Claim 13
Dependent Claim 199 words
A distributed, serverless system comprising: a plurality of computerized appliances as active and inactive nodes in the serverless system; a communication facility interconnecting individual ones of the plurality of computerized appliances; and an assignment system for assigning and re-assigning identifiers to nodes of the serverless system; wherein the assignment system establishes a circle as a locus of all identifiers, with the value of any point on the circle being the portion of one complete revolution in a first direction around the circle to the point, measured from a first zero point, and selects values to be assigned as identifiers as needed by successive rounds of assignment, wherein, in any round of assignment, beginning with n equal-length sectors, termed long sectors, only the value of midpoints of long sectors are selected as new identifiers to be assigned in the system, each new assignment creating two new short sectors, the round continuing until all long sectors are divided, making the number of sectors at the end of the round, and the beginning of the next round 2n, and wherein the beginning and end of any round of assignment has identifiers assigned with point values that divide the circle into equal-length sectors.
Claim 14
Dependent Claim 50 words
The distributed system of claim 11 wherein in every ascending new round of execution the short sectors at the end of the previous round are considered to be long sectors at the beginning of the next round, the number of sectors increasing in each round by a factor of two.
Claim 15
Dependent Claim 65 words
The distributed system of claim 11 wherein identifiers may be withdrawn arbitrarily in any round as well as assigned, and if an identifier withdrawn is an endpoint of an undivided long sector, an already-assigned identifier in that round having a value of a midpoint of a long sector is reassigned using the value of the withdrawn identifier, freeing the previous midpoint value to be reused.
Claim 16
Dependent Claim 53 words
The distributed system of claim 13 wherein if in any instant round withdrawal of an identifier will reduce the number of sectors below the beginning number of sectors for the round, a new descending round is entered wherein the long sectors of the instant round are considered short sectors of the descending round.
Claim 17
Dependent Claim 54 words
The distributed system of claim 14 wherein a bitmap is used in any round for identifying, at any point in time, which long sectors are divided into short sectors by assignment of identifiers, and which are not, the number of bits in the bitmap equal to the number of long sectors in the round.
Claim 18
Dependent Claim 25 words
The distributed system of claim 15 wherein the bitmap is divided into equal-length fragments, each fragment representing a group of adjacent sectors of the circle.
Claim 19
Dependent Claim 15 words
The distributed system of claim 16 wherein the fragment length is a power of two.
Claim 20
Dependent Claim 63 words
The method of claim 16 wherein a hierarchy of bitmap fragments is established over the main bitmap, one bit in each upper-level bitmap representing a bitmap fragment in the next lower-level bitmap, wherein a one in a bit of an upper-level bit indicates either presence of at least one undivided sector or at least one divided sector represented in the associated lower-level fragment.
Claim 21
Dependent Claim 30 words
The method of claim 18 wherein the hierarchy of bitmaps is used to select sectors to divide to provide values for assignment as identifiers or assigned values to be re-assigned.
Claim 22
Dependent Claim 19 words
The distributed system of claim 15 wherein the bitmap is consulted in selecting sectors for assigning and reassigning identifiers.

References Cited (Backward Citations)

US20020188657A1 Cited
US20030061376A1 Cited
US20030088673A1 Cited
US20040054807A1 Cited
US20040156485A1 Cited
US20040249970A1 Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2008-10-17 2009-04-18 2009-10-18 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2012-10-17 2013-04-18 2013-10-18 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2016-10-17 2017-04-18 2017-10-18 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag