Resolving virtual network names
First Claim
Patent Images
1. A name router storing a computer programmed with computer-executable instructions that perform the steps of:
- (1) receiving a request to route a message to a communication endpoint identified by a virtual name, the name comprising a plurality of individually resolvable discrete name components including a specified host name and at least one other name component;
(2) resolving a portion of the virtual name into an address using a virtual name table that maps virtual name components to addresses, wherein each discrete name component is individually and independently resolvable such that communication endpoint names with the same specified host name and at least one differing name component are resolved to different physical host servers; and
(3) forwarding the message to the resolved address, wherein the resolved address corresponds to another name router.
2 Assignments
0 Petitions
Accused Products
Abstract
An apparatus and method is provided for resolving virtual network names using one or more name routers. A conventional Uniform Resource Locator (URL) naming scheme is extended by allowing any component to be mapped to an address. The resolution process occurs recursively through a plurality of name routers. Resolution can be contextual, such that the same virtual network name may be resolved differently depending on the identity of the client or other parameters.
178 Citations
36 Claims
-
1. A name router storing a computer programmed with computer-executable instructions that perform the steps of:
-
(1) receiving a request to route a message to a communication endpoint identified by a virtual name, the name comprising a plurality of individually resolvable discrete name components including a specified host name and at least one other name component; (2) resolving a portion of the virtual name into an address using a virtual name table that maps virtual name components to addresses, wherein each discrete name component is individually and independently resolvable such that communication endpoint names with the same specified host name and at least one differing name component are resolved to different physical host servers; and (3) forwarding the message to the resolved address, wherein the resolved address corresponds to another name router. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method of resolving a name of a communication endpoint, wherein the name comprises a plurality of discrete name components, the method comprising the steps of:
-
transmitting a first communication endpoint name having a plurality of individually resolvable discrete name components including a specified host name and at least one other name component to a first name server; transmitting a second communication endpoint name having a plurality of individually resolvable discrete name components including the same specified host name and at least one differing name component to the first name server; receiving from the first name server a first address corresponding to resolution of the specified host name and the at least one other name component of the first communication endpoint name; and receiving from the first name server a second, different address corresponding to resolution of the same specified host name and the at least one other differing name component of the second communication endpoint name, wherein each discrete name component is individually and independently resolvable such that the first communication endpoint name and the second communication endpoint name are resolved to different physical host servers. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. A computer-readable medium storing computer-executable instructions that, when executed by a computer, resolve a name of a communication endpoint, wherein the name comprises a plurality of discrete name components, the instructions performing the steps of:
-
transmitting both a first communication endpoint t-he name having a plurality of individually resolvable discrete name components including a specified host name and at least one other name component to a first name server and context information including one or more portions of information identifying the client transmitting the first communication endpoint name and the context information; transmitting both a second communication endpoint name having a plurality of individually resolvable discrete name components including the same specified host name and at least one differing name component to the first name server and context information including one or more portions of information identifying the client transmitting the first communication endpoint name and the context information; receiving from the first name server a first address corresponding to resolution of a the specified host name and the at least one other name component of the first communication endpoint name, wherein the received context information is used in the resolving process, such that the resolving is affected by at least one of the client'"'"'s identity and the client'"'"'s network location; and receiving from the first name server a second, different address corresponding to resolution of the same specified host name and the at least one other differing name component of the second communication endpoint name, wherein each discrete name component is individually and independently resolvable such that the first communication endpoint name and the second communication endpoint name are resolved to different physical host servers and wherein the received context information is used in the resolving process, such that the resolving is affected by at least one of the client'"'"'s identity and the client'"'"'s network location. - View Dependent Claims (18, 19)
-
-
20. A method of resolving names in a computer network, comprising the steps of:
-
transmitting to a first virtual name router a message intended for delivery to a communication endpoint identified by a first communication endpoint name, the name including a plurality of individually resolvable discrete name components including a specified host name and at least one other name component; the first virtual name router resolving the name into a first address, wherein each discrete name component is individually and independently resolvable such that communication endpoint names with the same specified host name and at least one differing name component are resolved to different physical host servers; transmitting the message to a second virtual name router corresponding to the first address; the second virtual name router resolving the first communication endpoint name into a second address; and transmitting the message to the communication endpoint corresponding to the second address. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27)
-
-
28. A method of routing a message to a communication endpoint identified by a name comprising a plurality of discrete components, the method comprising the steps of:
-
receiving the message identified by a first communication endpoint name comprising a plurality of discrete components at a first name router, the name including a plurality of individually resolvable discrete name components including a specified host name and at least one other name component; in the first name router, resolving a first portion of the name into a first address, wherein each discrete name component is individually and independently resolvable such that communication endpoint names with the same specified host name and at least one differing name component are resolved to different physical host servers; transmitting the message from the first name router to the first resolved address; receiving the message at a second name router corresponding to the resolved address; at the second name router, resolving a second portion of the name into a second address, wherein each discrete name component is individually and independently resolvable such that communication endpoint names with the same specified host name and at least one differing name component are resolved to different physical host servers; and transmitting the message to a computer corresponding to the second address. - View Dependent Claims (29, 30, 31, 32, 33, 34)
-
-
35. A method of routing a message to a communication endpoint in a network through a plurality of virtual name routers, wherein the communication endpoint is identified using a name of the form A/B/C, wherein each of A, B, and C comprises a discrete name component, the method comprising the steps of:
-
(1) transmitting the name to a domain-name server, the name including a plurality of individually resolvable discrete name components including a specified host name and at least one other name component; (2) receiving from the domain-name server an Internet Protocol address corresponding to the A component of the name; (3) transmitting the message and the name to a first virtual name router corresponding to the Internet Protocol address; and (4) at the first virtual name router, resolving the B component of the name into an address of a second virtual name router and forwarding the message and the name to the address of the second virtual name router, wherein each discrete name component is individually and independently resolvable such that communication endpoint names with the same specified host name and at least one differing name component are resolved to different physical host servers; (5) at the second virtual name router, resolving the C component of the name into an address of the communication endpoint and forwarding the message to the address of the communication endpoint. - View Dependent Claims (36)
-
Specification