Difference between revisions of "Identity"
m (linking to cat) |
(Identity plays the role of generic organisation) |
||
Line 3: | Line 3: | ||
The nodes composing the network each have a [http://en.wikipedia.org/wiki/Universally_Unique_Identifier unique identifer] sometimes called a ''GUID'' (globally unique identifier) or ''UUID'' (universally unique identifier). Since the physical nodes are all separated and often have transient availability, the method of ensuring the uniquness of a newly created nodes identifier must not rely on communications between physical-nodes. | The nodes composing the network each have a [http://en.wikipedia.org/wiki/Universally_Unique_Identifier unique identifer] sometimes called a ''GUID'' (globally unique identifier) or ''UUID'' (universally unique identifier). Since the physical nodes are all separated and often have transient availability, the method of ensuring the uniquness of a newly created nodes identifier must not rely on communications between physical-nodes. | ||
− | Most P2P networks are built upon a ''[http://en.wikipedia.org/wiki/DHT distributed hash table]'' where node identifiers are a hash of their content. This is an excellent solution for file-based networks because files are distinguished from each other by their content. | + | ''Identity'' is the name of the [[:Category:Nodal Organisations|nodal organisation]] which handles the creation, allocation and statistics of all the GUID's in the entire nodal network. |
+ | |||
+ | |||
+ | ;GUID creation | ||
+ | All GUID's no matter how they're made are all distinct binary sequences, the difference between GUID methodologies comes down to how a given node in the network gets issued with its unique bit sequence - ie how a given ''value'' gets its corresponding ''key''. Most P2P networks are built upon a ''[http://en.wikipedia.org/wiki/DHT distributed hash table]'' where node identifiers are a hash of their content. This is an excellent solution for file-based networks because files are distinguished from each other by their content. | ||
In object-oriented environments, identifers cannot be a function of content because an objects' reference should remain constant even though its state may be very dynamic. In this kind of environment, unique identifers are usually created from a combination of host information, local time and a random number (this could then be hashed so the identifers are of the same form as the content-hashes). | In object-oriented environments, identifers cannot be a function of content because an objects' reference should remain constant even though its state may be very dynamic. In this kind of environment, unique identifers are usually created from a combination of host information, local time and a random number (this could then be hashed so the identifers are of the same form as the content-hashes). | ||
− | + | ||
+ | ;Why not the usual way? | ||
Usually content is referred to by content-hashes, and dynamic objects by a hash of a unique string composed of randomness, local environment and time. | Usually content is referred to by content-hashes, and dynamic objects by a hash of a unique string composed of randomness, local environment and time. | ||
Line 13: | Line 18: | ||
*[[Wikipedia:Distributed_hash_table|Distributed Hash Tables]] | *[[Wikipedia:Distributed_hash_table|Distributed Hash Tables]] | ||
− | + | ||
+ | ;The nodal GUID factory | ||
The nodal model does '''not''' use ''hashes'', ''randomness'' or ''localtime'' as these are not based on fundamental principles and they do not scale perfectly, so they are not in accord with the foundation [[:Category:Philosophy|philosophies]] of the project. In an ''organised'' network, there is another solution to this unique-identifer problem. The problem was that nodes could not communicate together to reserve names in real-time due to node transiency and separation. But in an organisaed network, names can be treated like any other resource and be booked, reserved, merged and managed with the same processes that schedule and storage already use. | The nodal model does '''not''' use ''hashes'', ''randomness'' or ''localtime'' as these are not based on fundamental principles and they do not scale perfectly, so they are not in accord with the foundation [[:Category:Philosophy|philosophies]] of the project. In an ''organised'' network, there is another solution to this unique-identifer problem. The problem was that nodes could not communicate together to reserve names in real-time due to node transiency and separation. But in an organisaed network, names can be treated like any other resource and be booked, reserved, merged and managed with the same processes that schedule and storage already use. | ||
Identifiers are all binary sequences, they are created in response to demand as local ''id-stock'' falls too low. Ranges of unused id's are passed down the ''physical axis'' (explained below) on request because they are a network resource. The size of a requested id-range is based on the expected demand between the time of request and the next ''id meeting''. The size of id-ranges is always a power of two such that all id's in the range differ only in the least-significant-bits. | Identifiers are all binary sequences, they are created in response to demand as local ''id-stock'' falls too low. Ranges of unused id's are passed down the ''physical axis'' (explained below) on request because they are a network resource. The size of a requested id-range is based on the expected demand between the time of request and the next ''id meeting''. The size of id-ranges is always a power of two such that all id's in the range differ only in the least-significant-bits. | ||
+ | *A node does not need an identifier until it forms a relationship with a node outside the local peer-node. At runtime, direct memory references are used, universal identifiers are only needed for inter-peer communications. Later id-expiry and re-use will be implimented to reduce the growth rate of id-size. | ||
+ | *The distributed application handling the GUID's (global unique identifers) does not need to be very dynamic since the size of the ranges being booked can increase to account for the period involved. Since dynamic bandwidth is more expensive in terms of energy, a slower cycle is perferred so it is set to 24 hourly. | ||
− | |||
− | |||
− | |||
− | + | ;Generic Organisation | |
+ | The Identity organisation is the most commonly used organisation of all, and the kinds of problems it needs to have solved to operate efficiently are the same generic problems required of all other more specific organisations. Identity plays the role of generic organisation in the network, a template from which all other organisations are refined. | ||
+ | *Range booking requests | ||
+ | *Statistics and information requests | ||
+ | *Booking process | ||
+ | *Stock and budgetting | ||
+ | *Storage and distribution of information and GUID stock | ||
− | |||
;See also | ;See also | ||
*[[Storage and Distribution]] | *[[Storage and Distribution]] | ||
*[[Nodal Reduction]] | *[[Nodal Reduction]] |
Revision as of 10:45, 22 October 2006
The nodes composing the network each have a unique identifer sometimes called a GUID (globally unique identifier) or UUID (universally unique identifier). Since the physical nodes are all separated and often have transient availability, the method of ensuring the uniquness of a newly created nodes identifier must not rely on communications between physical-nodes.
Identity is the name of the nodal organisation which handles the creation, allocation and statistics of all the GUID's in the entire nodal network.
- GUID creation
All GUID's no matter how they're made are all distinct binary sequences, the difference between GUID methodologies comes down to how a given node in the network gets issued with its unique bit sequence - ie how a given value gets its corresponding key. Most P2P networks are built upon a distributed hash table where node identifiers are a hash of their content. This is an excellent solution for file-based networks because files are distinguished from each other by their content.
In object-oriented environments, identifers cannot be a function of content because an objects' reference should remain constant even though its state may be very dynamic. In this kind of environment, unique identifers are usually created from a combination of host information, local time and a random number (this could then be hashed so the identifers are of the same form as the content-hashes).
- Why not the usual way?
Usually content is referred to by content-hashes, and dynamic objects by a hash of a unique string composed of randomness, local environment and time.
The entire possible hash-space is given a geometry and then divided amongst the peers in a deterministic way (meaning they don't need to communicate with one another to be able to determine whether a hash-key is within their domain). The geometry allows shortest-path routes from one peer to another to be calculated.
- The nodal GUID factory
The nodal model does not use hashes, randomness or localtime as these are not based on fundamental principles and they do not scale perfectly, so they are not in accord with the foundation philosophies of the project. In an organised network, there is another solution to this unique-identifer problem. The problem was that nodes could not communicate together to reserve names in real-time due to node transiency and separation. But in an organisaed network, names can be treated like any other resource and be booked, reserved, merged and managed with the same processes that schedule and storage already use.
Identifiers are all binary sequences, they are created in response to demand as local id-stock falls too low. Ranges of unused id's are passed down the physical axis (explained below) on request because they are a network resource. The size of a requested id-range is based on the expected demand between the time of request and the next id meeting. The size of id-ranges is always a power of two such that all id's in the range differ only in the least-significant-bits.
- A node does not need an identifier until it forms a relationship with a node outside the local peer-node. At runtime, direct memory references are used, universal identifiers are only needed for inter-peer communications. Later id-expiry and re-use will be implimented to reduce the growth rate of id-size.
- The distributed application handling the GUID's (global unique identifers) does not need to be very dynamic since the size of the ranges being booked can increase to account for the period involved. Since dynamic bandwidth is more expensive in terms of energy, a slower cycle is perferred so it is set to 24 hourly.
- Generic Organisation
The Identity organisation is the most commonly used organisation of all, and the kinds of problems it needs to have solved to operate efficiently are the same generic problems required of all other more specific organisations. Identity plays the role of generic organisation in the network, a template from which all other organisations are refined.
- Range booking requests
- Statistics and information requests
- Booking process
- Stock and budgetting
- Storage and distribution of information and GUID stock
- See also