Disclosure of Invention
The present invention aims to solve at least one of the technical problems existing in the prior art. Therefore, the invention provides a self-adaptive time synchronization method of multi-cluster ad hoc network, which can solve the problem of time difference of different clusters and ensure the stability of networking of each cluster while completing time synchronization of the whole network.
The invention also provides a multi-cluster ad hoc network, a control device for executing the self-adaptive time synchronization method of the multi-cluster ad hoc network and a computer readable storage medium.
According to an embodiment of the first aspect of the present invention, an adaptive time synchronization method for a multi-cluster ad hoc network, the multi-cluster ad hoc network including a plurality of groups of intra-cluster networks and a group of inter-cluster networks, each group of intra-cluster networks including an intra-cluster head node, the inter-cluster network including an inter-cluster head node, the inter-cluster head node being one of all the intra-cluster head nodes, the inter-cluster head node being a time reference station, the method comprising:
initializing a time slot structure of each node in a multi-cluster ad hoc network, wherein the cluster head node among clusters adopts a first time slot sequence, each cluster head node in the clusters adopts a second time slot sequence, common nodes which are not connected with the network in each cluster adopt a third time slot sequence, each of the first time slot sequence and the second time slot sequence comprises inter-cluster time slots and intra-cluster time slots which are alternately arranged in equal-length periods, the periods of the inter-cluster time slots and the intra-cluster time slots in the second time slot sequence are at least twice the periods of the inter-cluster time slots and the intra-cluster time slots in the first time slot sequence, and the third time slot sequence comprises intra-cluster time slots;
The common node of the intra-cluster network where the inter-cluster head node is located performs time synchronization to the inter-cluster head node, and adjusts a time slot structure to be the first time slot sequence after synchronization is completed;
The common nodes of the rest of the intra-cluster networks perform time synchronization to the corresponding intra-cluster head nodes, and adjust the time slot structure to be the second time slot sequence after the synchronization is completed;
The cluster head node in the cluster after the time synchronization in the cluster is completed determines the total number of the nodes of the network in the cluster, the first local time and the first synchronization time difference with the cluster head node among the clusters to generate a whole network time synchronization signaling message and send the whole network time synchronization signaling message to each common node of the network in the cluster, so that all the nodes of the network in the cluster perform time synchronization to the cluster head node among the clusters at the same time, and the time slot structure is adjusted to be the first time slot sequence after the synchronization is completed.
The self-adaptive time synchronization method of the multi-cluster ad hoc network has at least the following beneficial effects:
In order to avoid that time synchronization cannot be completed due to the fact that communication time slots among clusters of different nodes are completely staggered, the embodiment of the invention firstly initializes a time slot structure of each node in the multi-cluster ad hoc network, enables the cluster head node among the clusters to adopt a first time slot sequence, enables the cluster head node among the clusters to adopt a second time slot sequence, enables common nodes which are not connected to the network in each cluster to adopt a third time slot sequence, enables the network among the clusters to complete time synchronization, and after the synchronization is completed, self-adaptively adjusts the time slot structure to be identical with the cluster head node among the clusters, enables the cluster head node among the clusters to generate a full-network time synchronization signaling message and send the full-network time synchronization signaling message to each common node of the corresponding cluster network, so that all nodes of the cluster network can perform time synchronization to the cluster head node among the clusters at the same moment, the time difference problem of different clusters can be solved, and the stability of the cluster networking of each cluster can be ensured while the full-network time synchronization is completed.
According to some embodiments of the present invention, in the process of initializing the time slot structure of each node in the multi-cluster ad hoc network, the intra-cluster head node that does not need intra-cluster networking adopts a fourth time slot sequence, where the fourth time slot sequence includes inter-cluster time slots;
the method further comprises the steps of:
and the cluster head node in the cluster does not need to perform time synchronization to the cluster head node between clusters, and adjusts a time slot structure to be the first time slot sequence after synchronization is completed.
According to some embodiments of the invention, the whole network time synchronization signaling message is obtained by:
Determining a synchronization initiation time according to the total number of nodes and the first local time;
and generating the whole network time synchronization signaling message according to the synchronization initiation time and the first synchronization time difference.
According to some embodiments of the invention, the first synchronization time difference is obtained by:
acquiring the first local time and the reference time of the inter-cluster head node;
And determining the first synchronization time difference according to the first local time and the reference time.
According to some embodiments of the present invention, time synchronization is performed to the inter-cluster head node by a common node of an intra-cluster network where the inter-cluster head node is located, including:
Acquiring a first reference networking initiation time of the inter-cluster head node, and a first common networking initiation time and a second local time of each common node of the intra-cluster network where the inter-cluster head node is located;
determining a second synchronous time difference between each common node and the inter-cluster head node according to each first common networking initiation time and the first reference networking initiation time;
And adjusting the second local time of each common node based on each second synchronous time difference so as to synchronize to the inter-cluster head node.
According to some embodiments of the present invention, time synchronization is performed by the other common nodes of each intra-cluster network to the corresponding intra-cluster head node, including:
acquiring second reference networking initiation moments of all the cluster head nodes in the other clusters of the intra-cluster networks, and second common networking initiation moments and third local time of all the common nodes of the corresponding clusters of the intra-cluster networks;
determining a third synchronous time difference between each common node and the corresponding cluster head node in the cluster according to each second common networking initiation time and the second reference networking initiation time;
and adjusting the third local time of each common node based on each third synchronous time difference so as to synchronize to the corresponding cluster head node in the cluster.
According to some embodiments of the present invention, the time synchronization of the intra-cluster head node to the inter-cluster head node without intra-cluster networking includes:
acquiring a first reference networking initiation time of the inter-cluster head node, a third reference networking initiation time and a fourth local time of the intra-cluster head node which does not need intra-cluster networking;
Determining a fourth synchronous time difference between the cluster head node in the cluster and the cluster head node between clusters which do not need intra-cluster networking according to the first reference networking initiation time and the third reference networking initiation time;
and adjusting the fourth local time of the cluster head node in the cluster which does not need intra-cluster networking based on the fourth synchronous time difference so as to synchronize to the cluster head node between clusters.
According to some embodiments of the invention, the initializing a time slot structure of each node in the multi-cluster ad hoc network includes:
determining the node state of each initial node in the multi-cluster ad hoc network;
if the node state indicates that the initial node is the inter-cluster head node, the time slot structure of the inter-cluster head node is adjusted to be the first time slot sequence;
if the node state indicates that the initial node is the cluster head node in the cluster, the time slot structure of the cluster head node in the cluster is adjusted to be the second time slot sequence;
and if the node state indicates that the initial node is a common node which is not connected with the network, adjusting the time slot structure of the common node to be the third time slot sequence.
According to some embodiments of the invention, after determining the node status of each initial node in the multi-cluster ad hoc network, the method further includes:
and if the node state indicates that the initial node is the cluster head node in the cluster which does not need intra-cluster networking, adjusting the time slot structure of the cluster head node in the cluster which does not need intra-cluster networking to be a fourth time slot sequence, wherein the fourth time slot sequence comprises inter-cluster time slots.
According to a second aspect of the present invention, the multi-cluster ad hoc network is configured to implement the adaptive time synchronization method of the multi-cluster ad hoc network according to the first aspect of the present invention. The multi-cluster ad hoc network adopts all the technical schemes of the self-adaptive time synchronization method of the multi-cluster ad hoc network in the embodiment, so that the multi-cluster ad hoc network has at least all the beneficial effects brought by the technical schemes in the embodiment.
An embodiment of the control device according to the third aspect of the present invention includes a memory, a processor and a computer program stored on the memory and executable on the processor, where the processor executes the computer program to implement part of the steps in the adaptive time synchronization method of the multi-cluster ad hoc network according to the embodiment of the first aspect. The control device adopts all the technical schemes of the self-adaptive time synchronization method of the multi-cluster ad hoc network in the embodiment, so that the control device has at least all the beneficial effects brought by the technical schemes in the embodiment.
A computer readable storage medium according to an embodiment of a fourth aspect of the present invention stores computer executable instructions for performing part of the steps in the adaptive time synchronization method of a multi-cluster ad hoc network as described in the above embodiment of the first aspect. The computer readable storage medium adopts all the technical schemes of the adaptive time synchronization method of the multi-cluster ad hoc network in the above embodiment, so that the method has at least all the beneficial effects brought by the technical schemes in the above embodiment.
Additional features and advantages of the invention will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention.
Detailed Description
Embodiments of the present invention are described in detail below, examples of which are illustrated in the accompanying drawings, wherein like or similar reference numerals refer to like or similar elements or elements having like or similar functions throughout. The embodiments described below by referring to the drawings are illustrative only and are not to be construed as limiting the invention.
In the description of the present invention, the description of first, second, etc. is for the purpose of distinguishing between technical features only and should not be construed as indicating or implying a relative importance or implicitly indicating the number of technical features indicated or implicitly indicating the precedence of the technical features indicated.
In the description of the present invention, it should be understood that the direction or positional relationship indicated with respect to the description of the orientation, such as up, down, etc., is based on the direction or positional relationship shown in the drawings, is merely for convenience of describing the present invention and simplifying the description, and does not indicate or imply that the apparatus or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and thus should not be construed as limiting the present invention.
In the description of the present invention, unless explicitly defined otherwise, terms such as arrangement, installation, connection, etc. should be construed broadly and the specific meaning of the terms in the present invention can be determined reasonably by a person skilled in the art in combination with the specific content of the technical solution.
The adaptive time synchronization method of the multi-cluster ad hoc network according to the embodiments of the present invention will be clearly and completely described below with reference to fig. 1 to 3, and it is apparent that the embodiments described below are some, but not all, embodiments of the present invention.
Referring to fig. 1 to 3, fig. 1 is a schematic diagram of a multi-cluster ad hoc network according to an embodiment of the present invention, fig. 2 is a schematic diagram of a time slot structure according to an embodiment of the present invention, and fig. 3 is a flowchart of an adaptive time synchronization method of a multi-cluster ad hoc network according to an embodiment of the present invention.
According to an embodiment of the present invention, a method for adaptive time synchronization of a multi-cluster ad hoc network, the multi-cluster ad hoc network includes a plurality of groups of intra-cluster networks and a group of inter-cluster networks, each group of intra-cluster networks includes an intra-cluster head node, the inter-cluster network includes an inter-cluster head node, the inter-cluster head node is one of all intra-cluster head nodes, and the inter-cluster head node is a time reference station, the method includes:
Initializing a time slot structure of each node in the multi-cluster ad hoc network, wherein a first time slot sequence is adopted by cluster head nodes among clusters, a second time slot sequence is adopted by cluster head nodes in each cluster, and a third time slot sequence is adopted by common nodes which are not connected in the network in each cluster;
the common node of the intra-cluster network where the inter-cluster head node is located performs time synchronization to the inter-cluster head node, and adjusts the time slot structure to be a first time slot sequence after synchronization is completed;
The common nodes of the rest of the intra-cluster networks perform time synchronization to the corresponding intra-cluster head nodes, and adjust the time slot structure to be a second time slot sequence after the synchronization is completed;
The cluster head node in the cluster after the time synchronization in the cluster is completed determines the total number of the nodes of the network in the cluster, the first local time and the first synchronization time difference with the cluster head node among the clusters to generate a whole network time synchronization signaling message and send the whole network time synchronization signaling message to each common node of the network in the cluster, so that all the nodes of the network in the cluster perform time synchronization to the cluster head node among the clusters at the same time, and the time slot structure is adjusted to be a first time slot sequence after the synchronization is completed.
In some embodiments of the present invention, in initializing a time slot structure of each node in the multi-cluster ad hoc network, an intra-cluster head node that does not need intra-cluster networking adopts a fourth time slot sequence, where the fourth time slot sequence includes inter-cluster time slots;
The method further comprises the steps of:
the method comprises the steps that time synchronization is carried out on cluster head nodes in clusters without intra-cluster networking, and a time slot structure is adjusted to be a first time slot sequence after synchronization is completed.
In some embodiments of the present invention, initializing a slot structure of each node in a multi-cluster ad hoc network includes:
Determining the node state of each initial node in the multi-cluster ad hoc network;
If the node state indicates that the initial node is an inter-cluster head node, the time slot structure of the inter-cluster head node is adjusted to be a first time slot sequence;
if the node state indicates that the initial node is the cluster head node in the cluster, the time slot structure of the cluster head node in the cluster is adjusted to be a second time slot sequence;
if the node state indicates that the initial node is a common node which is not connected with the network, the time slot structure of the common node is adjusted to be a third time slot sequence;
If the node state indicates that the initial node is an intra-cluster head node which does not need intra-cluster networking, the time slot structure of the intra-cluster head node which does not need intra-cluster networking is adjusted to be a fourth time slot sequence.
In order to avoid that time synchronization cannot be completed due to complete staggering of communication time slots among clusters of different nodes, the invention implements different time slot sequences for the network-accessed nodes and the network-not-accessed nodes, as shown in fig. 2, and the specific time slot structure design principle is as follows:
(1) The sequence 1 (namely a first time slot sequence) is formed by alternately carrying out inter-cluster time slots and intra-cluster time slots with equal length periods, so that the normal operation of the inter-cluster network and the intra-cluster network is ensured, and the method is applicable to nodes communicating with each other in the clusters at the same time, therefore, the inter-cluster head node uses the sequence 1, and other nodes also use the sequence 1 after time synchronization with the inter-cluster head node, so that the consistency of a time slot structure is ensured;
(2) Sequence 2 (i.e., a second sequence of time slots) is formed by alternating inter-cluster time slots of equal length period with intra-cluster time slots, and the period length is at least twice that of sequence one, so that the method is suitable for the intra-cluster head node. By prolonging the time slot period, the time synchronization device ensures that the time synchronization device has the capability of receiving the time synchronization signals in/among clusters in any cluster or among clusters in the sequence 2, thereby completing the time synchronization. After synchronization, communication is not needed through a longer time slot period, so that the sequence 1 can be used;
(3) The sequence 3 (namely the fourth time slot sequence) is formed by time slots among clusters, is suitable for the nodes which communicate only among clusters, and always receives time synchronization signals among clusters so as to complete time synchronization among clusters, and can stop communication when the cluster head node among clusters is in a cluster communication frequency point in order to save resources after synchronization, so that unnecessary communication time slots are reduced, and the sequence 1 is used;
(4) The sequence 4 (i.e. the third time slot sequence) is composed of all time slots in the cluster, and is suitable for the nodes communicating only in the cluster, and the nodes always receive the time synchronization signals in the cluster, so that the time synchronization in the cluster is finished, the communication can be stopped when the cluster head node in the cluster is in the inter-cluster communication frequency point, the sequence 2 is used, and finally the time synchronization between the clusters is finished (the reason is the same as that of the sequence 2 to the sequence 1).
All nodes use the sequence 1 after finally completing time synchronization, and the purpose of the method is to ensure that all configurations such as full-network communication transceiving, frequency points, speed rates and the like are aligned consistently, reduce unnecessary time slot configuration, reasonably allocate time slot resources and ensure the stability of full-network communication.
Referring to the multi-cluster ad hoc network of fig. 1, there are three groups of intra-cluster networks and one group of inter-cluster networks. The networks within the three clusters are respectively represented as setsAggregation ofAggregation ofThe inter-cluster network is represented as a collectionWherein, the node、、Are all cluster head nodes in the cluster, and are nodes at the same timeThe node is an inter-cluster head node, the rest nodes are common nodes, and meanwhile, the nodeIs an intra-cluster head node which does not need intra-cluster networking. The time reference station of the whole network is an inter-cluster head nodeFinally, all nodes need to be connected to the cluster head node among clustersIs synchronized with the time of (a).
In the initial stage of multi-cluster ad hoc network construction, the network in each cluster firstly performs time synchronization to the cluster head node in the cluster, namely the nodeDirectional nodeTime synchronization and nodeDirectional nodeTime synchronization and nodeBecause no other nodes exist in the intra-cluster network, an intra-cluster synchronization flow is not needed, and the intra-cluster network synchronization is considered to be completed.
In some embodiments of the present invention, time synchronization is performed to an inter-cluster head node by a common node of an intra-cluster network in which the inter-cluster head node is located, including:
Acquiring a first reference networking initiation time of an inter-cluster head node, and a first common networking initiation time and a second local time of each common node of an intra-cluster network where the inter-cluster head node is located;
determining a second synchronous time difference between each common node and the cluster head node between clusters according to each first common networking initiation time and a first reference networking initiation time;
And adjusting the second local time of each common node based on each second synchronous time difference so as to synchronize to the cluster head node among clusters.
At the collectionIn the initial network construction stage, cluster head nodes in a clusterConsidered as complete full network time synchronization, sequence 1 is used, common nodeSequence 4 was used without access to the network. The lengths of the single inter-cluster time slot and the intra-cluster time slot are T, the intra-cluster operation period in the sequence 1 is 2T, the length is T, the intra-cluster operation period in the sequence 4 is T, the length is T, and the node is assumedThe network establishment initiation moments are respectivelyNodeAnd nodeIs of the synchronous time difference of (1)、The time slot sequence of each node can be known when the nodeWhen in intra-cluster networking time slot, time of dayTo the point of+T must contain nodesIntra-cluster networking time slots of (1), thus nodesAdjustable local time、Synchronizing to a node. After time synchronization is completed, nodeThe procedure was changed to sequence 1.
In some embodiments of the present invention, time synchronization is performed by the other common nodes of each intra-cluster network to the corresponding intra-cluster head node, including:
acquiring second reference networking initiation time of each cluster head node of other each cluster network, second common networking initiation time and third local time of each common node of the corresponding cluster network;
Determining a third synchronous time difference between each common node and a corresponding cluster head node in the cluster according to each second common networking initiation time and a second reference networking initiation time;
And adjusting the third local time of each common node based on each third synchronous time difference so as to synchronize to the corresponding cluster head node in the cluster.
At the collectionIn the initial network construction stage, cluster head nodes in a clusterRegarded as network-entered, using sequence 2, common nodeSequence 4 was used without access to the network. The lengths of the single inter-cluster time slot and the intra-cluster time slot are T, the intra-cluster operation period in the sequence 2 is 4T, the length is 2T, and the node is assumed、The network establishment initiation moments are respectively、NodeAnd nodeIs of the synchronous time difference of (1)When the nodeWhen in intra-cluster networking time slot, time of dayTo the point of+2T must contain nodesIntra-cluster networking time slots of (1), thus nodesAdjustable local timeSynchronizing to a node. After time synchronization is completed, nodeThe procedure was changed to sequence 2.
In some embodiments of the present invention, time synchronization of an intra-cluster head node, which does not require intra-cluster networking, to an inter-cluster head node includes:
acquiring a first reference networking initiation moment of an inter-cluster head node, a third reference networking initiation moment of an intra-cluster head node which does not need intra-cluster networking, and a fourth local time;
Determining a fourth synchronous time difference between the cluster head node in the cluster and the cluster head node among the clusters without intra-cluster networking according to the first reference networking initiation time and the third reference networking initiation time;
And adjusting the fourth local time of the cluster head node in the cluster which does not need intra-cluster networking based on the fourth synchronous time difference so as to synchronize to the cluster head node between clusters.
At the collectionIn the middle nodeUsing sequence 1, nodeUsing sequence 2, nodeSequence 3 was used. Suppose a nodeThe network establishment initiation time isNodeAnd (3) withIs of the synchronous time difference of (1)NodeAnd (3) withIs of the synchronous time difference of (1). When the nodeWhen in inter-cluster networking time slot, timeTo the point of+T must contain nodesInter-cluster networking time slots of (1), and nodeMust be atTo the point ofRunning an inter-cluster networking time slot once within a +2T duration, thus a node、The synchronous time difference of the networking can be obtained、. At this time nodeDirectional nodesComplete time synchronization, transition to use sequence 1, but nodeNot directly to the nodeTime synchronization is performed, otherwise aggregation will resultIs dropped from the normal node in (a).
Aggregation、Completed time synchronization, only aggregateIt is necessary to synchronize time to a node。
In some embodiments of the present invention, the full network time synchronization signaling message is obtained by:
determining synchronization initiation time according to the total number of nodes and the first local time;
and generating the whole network time synchronization signaling message according to the synchronization initiation time and the first synchronization time difference.
In some embodiments of the invention, the first synchronization time difference is obtained by:
Acquiring a first local time and a reference time of a cluster head node among clusters;
And determining and obtaining the first synchronous time difference according to the first local time and the reference time.
In some embodiments, the node at this point、Is the local time of (a)+2T, synchronous time difference ofThe synchronization initiation time is+4T. NodeTransmitting whole network time synchronization signaling message toAt the time of synchronous initiation asTime difference of +4T time adjustmentSo that it is assembled thatEach node time is synchronous toThereby avoiding abnormal off-network of the nodes.
If there are more nodes, the same whole network time synchronization signaling message is sent to each node, and thenTime difference adjustment at time + (2+2N) TWhere N represents the number of cycles required for all nodes to receive the full network time synchronization signaling message. Thus, the whole network completes time synchronization.
According to the self-adaptive time synchronization method of the multi-cluster ad hoc network, in order to avoid that time synchronization cannot be completed due to the fact that inter-cluster communication time slots of different nodes are completely staggered, the time slot structure of each node in the multi-cluster ad hoc network is initialized, so that a first time slot sequence is adopted by each inter-cluster head node, a second time slot sequence is adopted by each intra-cluster head node, a third time slot sequence is adopted by common nodes which are not connected to the network in each cluster, then the time synchronization is completed in each cluster, the time slot structure is adaptively adjusted to be identical to that of each intra-cluster head node after the time synchronization is completed, and then all the intra-cluster head nodes generate full-network time synchronization signaling messages and send the full-network time synchronization signaling messages to each common node of the corresponding intra-cluster head node, so that all the nodes of the intra-cluster network can perform time synchronization to the inter-cluster head node at the same time, the time difference problem of different clusters can be solved, and the stability of each cluster networking can be ensured while the full-network time synchronization is completed.
According to the multi-cluster ad hoc network of the second aspect of the embodiment of the present invention, the multi-cluster ad hoc network is used for implementing the adaptive time synchronization method of the multi-cluster ad hoc network of the first aspect embodiment. The multi-cluster ad hoc network adopts all the technical schemes of the self-adaptive time synchronization method of the multi-cluster ad hoc network in the embodiment, so that the multi-cluster ad hoc network has at least all the beneficial effects brought by the technical schemes in the embodiment.
In addition, one embodiment of the present invention also provides a control device including a memory, a processor, and a computer program stored on the memory and executable on the processor. The processor and the memory may be connected by a bus or other means.
The memory, as a non-transitory computer readable storage medium, may be used to store non-transitory software programs as well as non-transitory computer executable programs. In addition, the memory may include high-speed random access memory, and may also include non-transitory memory, such as at least one magnetic disk storage device, flash memory device, or other non-transitory solid state storage device. In some embodiments, the memory optionally includes memory remotely located relative to the processor, the remote memory being connectable to the processor through a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The non-transitory software program and instructions required to implement part of the steps in the adaptive time synchronization method of a multi-cluster ad hoc network of the above embodiments are stored in a memory, and when executed by a processor, perform part of the steps in the adaptive time synchronization method of a multi-cluster ad hoc network of the above embodiments.
The above described apparatus embodiments are merely illustrative, wherein the units illustrated as separate components may or may not be physically separate, i.e. may be located in one place, or may be distributed over a plurality of network elements. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
Furthermore, an embodiment of the present invention provides a computer readable storage medium, where computer executable instructions are stored, where the computer executable instructions are executed by a processor or a controller, for example, by the processor of the above embodiment, and where the processor is caused to perform part of the steps in the adaptive time synchronization method for multi-cluster ad hoc networks in the above embodiment.
Those of ordinary skill in the art will appreciate that all or some of the steps, systems, and methods disclosed above may be implemented as software, firmware, hardware, and suitable combinations thereof. Some or all of the physical components may be implemented as software executed by a processor, such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application specific integrated circuit. Such software may be distributed on computer readable media, which may include computer storage media (or non-transitory media) and communication media (or transitory media). The term computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data, as known to those skilled in the art. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital Versatile Disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by a computer. Furthermore, as is well known to those of ordinary skill in the art, communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media.
The embodiments of the present invention have been described in detail with reference to the accompanying drawings, but the present invention is not limited to the above embodiments, and various changes can be made within the knowledge of one of ordinary skill in the art without departing from the spirit of the present invention.