Claims
- 1. A method of generating a routing table for a selected peer, comprising:
comparing a zone of said selected peer with a target zone; and creating a current entry associated with said zone of said selected peer in said routing table of said selected peer in response to said zone of said selected peer being one of smaller than and equal to said target zone.
- 2. The method according to claim 1, further comprising:
maintaining a plurality of entries of said selected peer, each entry comprising:
a zone; a routing level of said zone; a plurality of neighboring zones; and one or more addresses of residents in each neighboring zone of said plurality of zones.
- 3. The method according to claim 1, further comprising:
moving a previous current entry to said routing table; incrementing a routing level; and associating said incremented routing level with said current entry.
- 4. The method according to claim 3, further comprising:
determining dimensions of said zone for said selected peer; and associating said dimensions as said zone for said current entry.
- 5. The method according to claim 4, further comprising:
determining a plurality of neighboring zones of said zone; and determining one or more residents in said plurality of neighboring zones.
- 6. The method according to claim 5, further comprising:
associating said plurality of neighboring zones and said one or more residents with said current entry.
- 7. The method according to claim 5, wherein said determination of said one or more residents further comprises:
determining respective addresses of said one or more residents.
- 8. An apparatus for generating a routing table for a selected peer in a peer-to-peer network, comprising:
means for a new node joining said peer-to-peer network; means for comparing a zone of said selected peer with a target zone in response to a new node joining said peer-to-peer network; and means for adding an entry to said routing table in response to said zone of said selected peer being one of smaller than and equal to said target zone.
- 9. The apparatus according to claim 8, further comprising:
means for maintaining a plurality of entries of said selected peer, each entry comprising:
a zone; a routing level of said zone; a plurality of neighboring zones; and one or more addresses of residents in each neighboring zone of said plurality of neighboring zones.
- 10. The apparatus according to claim 8, further comprising:
means for incrementing a routing level for said routing table of said selected peer; and means for associating said incremented routing level with said entry.
- 11. The apparatus according to claim 10, further comprising:
means for determining dimensions of a zone for said selected peer; and means for associating said new zone with said entry.
- 12. The apparatus according to claim 7, further comprising:
means for determining a plurality of neighboring zones of said new zone; and means for determining one or more residents in said plurality of neighboring zones.
- 13. The apparatus according to claim 12, further comprising:
means for associating said new zone, said plurality of neighboring zones and said one or more residents with said entry.
- 14. The apparatus according to claim 12, wherein said determination of said one or more residents further comprises:
means for determining respective addresses of said one or more residents.
- 15. A method of adding entries to routing tables, comprising:
joining a peer-to-peer network in a host zone of a host peer; receiving at least one entry associated with a host routing table of said host peer; comparing a zone with a target zone; and creating an entry in a routing table in response to said zone being smaller or equal to said target zone.
- 16. The method according to claim 15, further comprising:
incorporating said zone, neighboring zones to said zone and at least one entry of said host routing table into said routing table.
- 17. The method according to claim 15, wherein said target zone is a zone associated with a previous entry to a current table entry divided by a span.
- 18. The method according to claim 15, further comprising:
entering an idle state in response to said zone being greater than said target zone.
- 19. The method according to claim 15, further comprising:
incrementing a routing level; and associating said entry with said incremented routing level.
- 20. The method according to claim 19, further comprising:
determining dimensions of a new zone for said entry; and associating said new zone with said entry.
- 21. The method according to claim 18, further comprising:
determining a plurality of neighboring zones of said zone; determining one or more residents in said plurality of neighboring zones; and associating said plurality of neighboring zones and said one or more residents with said entry.
- 22. A computer readable storage medium on which is embedded one or more computer programs, said one or more computer programs implementing a method of adding to a routing table, said one or more computer programs comprising a set of instructions for:
joining a peer-to-peer network in a zone of a host peer; receiving at least one entry associated with a host routing table of said host peer; comparing a zone with a target zone; and creating an entry in a routing table in response to said zone being smaller or equal to said target zone.
- 23. The computer readable storage medium in according to claim 22, said set of instructions further comprises:
incorporating said zone, neighboring zones to said zone and at least one entry of said host routing table into said routing table.
- 24. The computer readable storage medium in according to claim 22, wherein said target zone being a zone associated with a previous entry to a current table entry divided by a span.
- 25. The computer readable storage medium in according to claim 22, said set of instructions further comprises:
entering an idle state in response to said zone being greater than said target zone.
- 26. The computer readable storage medium in according to claim 22, said set of instructions further comprises:
incrementing a routing level; associating said entry with said incremented routing level.
- 27. The computer readable storage medium in according to claim 26, said set of instructions further comprises:
determining dimensions of a new zone for said entry; and associating said new zone with said entry.
- 28. The computer readable storage medium in according to claim 27, said set of instructions further comprises:
determining a plurality of neighboring zones of said new zone; determining one or more residents in said plurality of neighboring zones; and associating said plurality of neighboring zones and said one or more residents with said entry.
- 29. A system, comprising:
a plurality of peers configured to operate as a peer-to-peer network; and a plurality of routing modules, each routing module associated with a respective peer of said plurality of peers and configured to implement an expressway overlay network over said peer-to-peer network; and a plurality of routing tables, each routing table associated with a respective routing module, wherein each routing module is configured to:
forward a routing table of said respective peer excluding a current entry in response to a new peer being added to a zone of said respective peer; compare a zone associated with a current table entry of said respective peer with a target zone in response to said new peer being added; and create an entry in said routing table of said respective peer in response to said zone being smaller or equal to said target zone.
- 30. A system for generating routing tables in a peer in a peer-to-peer network, comprising:
at least one processor; a memory coupled to said at least one processor; a routing table stored in said memory; and a routing module associated with said routing table and configured to be executed by said at least one processor, wherein said routing module is configured to compare a zone of said peer with a target zone in response to a new peer being added to said peer-to-peer network and to create an entry in said routing table in response to said zone of said peer being one of smaller than and equal to said target zone.
- 31. The system according to claim 30, wherein said routing module is further configured to remove data associated with said current table entry, increment a routing level, said routing level configured to indicate a number of entries in said routing table of said respective peer, and to associate said entry with said incremented routing level.
- 32. The system according to claim 31, wherein said routing module is further configured to determine dimensions of a new zone for said peer and to associate said new zone with said entry.
- 33. The system according to claim 32, wherein said routing module is further configured to determine a plurality of neighboring zones of said new zone, to determine one or more residents in said plurality of neighboring zones, and to determine respective addresses of said one or more residents.
- 34. The system according to claim 33, wherein said routing module is further configured to associate said plurality of neighboring zones, said one or more residents, and said respective addresses of said one or more residents with said entry.
CROSS-REFERENCES
[0001] The present application is related to pending:
[0002] U.S. application Ser. No. 09/______, (Attorney Docket No.100202082-1) filed on Aug. 29, 2002, and entitled “EXPRESSWAY ROUTING AMONG PEERS” , by Xu et al.; and
[0003] U.S. application Ser. No. 09/______, (Attorney Docket No.100202090-1) filed on Sep. 10, 2002, and entitled “CREATING EXPRESSWAYS FOR OVERLAY ROUTING” BY Zheng et al., which are assigned to the assignee and are incorporated by reference herein in their entirety.