Like a biological tissue, the computing tissue should have one DNA (Deoxyribonucleic acid is a nucleic acid containing the genetic instructions used in the development and functioning of all known living organisms), it rules the behavior of tissue components, this DNA can be divided in two main areas, the DNA of the tissue rules each member behaviors, to be part of the tissue should follow the DNA directives, cell that does not follow the DNA for one tissue can be considered anomaly and killed.
Is expected the interaction between different versions of DNA, this is important for tissues version upgrade and downgrade.
The two parts of the DNA are:
- Static DNA part
This part of DNA is defined by the version of the tissue DNA, if one tissue is compliant with one or more versions of DNA it should understand a those versions of DNA messages and should have DNA compatible behavior, as an evolutionary system each new version of a tissue should inherit previous DNA and enhance it. It cannot be changed without killing the cell.
- Dynamic DNA part
This part of DNA is defined by the environment, changes in the environment causes changes on tissue DNA, other tissue premises, like response time for one service can change the tissue DNA (to guarantee those premises), the dynamic DNA part rules the externalized tissue services, any change in the dynamic part of the DNA should work without killing the cell or interrupting any service.
Some DNA configurations can be pushed from tissue to member cells or from member cell to the tissue, in this environment one cell can join a tissue without being created by the tissue, in this case the cell should present himself and proof that it is trusted by the tissue, int those cases some DNA content is forwarded from cells to the tissue (respecting the tissue version).
The DNA can be defined with different scopes, it can have a scope of cell, service or tissue, and one with more precedence over others.
Medium level - cell:
Defines cell level information communication and storage, defines the cell behavior
Lower level - service
Defines service level information communication and storage, defines de service behavior
DNA in this system does not represent code, but how any implementation for one tissue should behave. The tissue should hold all the DNA information with all details, this allows the tissue to replicates lost cells or clone cells for growing. The DNA should open to permit many vendors interact in the same tissue providing complementary services.
Is expected the interaction between different versions of DNA, this is important for tissues version upgrade and downgrade.
The two parts of the DNA are:
- Static DNA part
This part of DNA is defined by the version of the tissue DNA, if one tissue is compliant with one or more versions of DNA it should understand a those versions of DNA messages and should have DNA compatible behavior, as an evolutionary system each new version of a tissue should inherit previous DNA and enhance it. It cannot be changed without killing the cell.
- Dynamic DNA part
This part of DNA is defined by the environment, changes in the environment causes changes on tissue DNA, other tissue premises, like response time for one service can change the tissue DNA (to guarantee those premises), the dynamic DNA part rules the externalized tissue services, any change in the dynamic part of the DNA should work without killing the cell or interrupting any service.
Some DNA configurations can be pushed from tissue to member cells or from member cell to the tissue, in this environment one cell can join a tissue without being created by the tissue, in this case the cell should present himself and proof that it is trusted by the tissue, int those cases some DNA content is forwarded from cells to the tissue (respecting the tissue version).
The DNA can be defined with different scopes, it can have a scope of cell, service or tissue, and one with more precedence over others.
Higher level - tissue:
Defines tissue level information communication and storage, defines the tissue services behavior- defines the data structure for the tissue
- defines the services provided to member cells interfaces
- minimal number of services instances (availability of tissue services)
- cell reliability policies.
- expected availability for tissue services
- tissue history interpretation algorithms
Medium level - cell:
Defines cell level information communication and storage, defines the cell behavior
- maximum of host resources usage
- maximum of cell resources usage
- notification frequencies
- service acceptance policies (if a cell can receive a service or not)
- local cell configurations
- installation and work directories
- cell configuration files location
- tissue catalog service location
Lower level - service
Defines service level information communication and storage, defines de service behavior
- expected availability of the service
- ports and load balancing algorithms
- specific service configurations
DNA in this system does not represent code, but how any implementation for one tissue should behave. The tissue should hold all the DNA information with all details, this allows the tissue to replicates lost cells or clone cells for growing. The DNA should open to permit many vendors interact in the same tissue providing complementary services.