"Noroshi" is a schedule coordination system based on P2P architecture in wireless ad-hoc networking. This system coordinates collaboration activities like a conference with no central management server. Each node exchanges its information with others and finds out if requested time is available by using XML message. As a solution for foreseeable problem in ad-hoc network environment, we developed two mechanisms, One-Writing method and the "policy" mechanism sent within request messages. One-Writing method is a message delivering protocol to handle efficient schedule coordination. A message sent under One-Writing method is delivered to every participant node twice: on forward and backward path. Each single message has two functions of both collecting nodes' available time and announcing fixed schedule to every node. The "policy" enables participant nodes to fix schedule autonomically. We have implemented this system on MS PocketPC and IEEE 802.11b.
P2P, ad-hoc network, message delivery method, autonomic decision
We have devised architecture for distributed schedule management systems using P2P wireless, ad-hoc networking . We have also implemented a prototype system which based on the architecture that does not have a central schedule control server, and is running under Wireless P2P communication environment.
Noroshi, a Japanese word meaning smoking signals(shown as Fig.1) used by the ancient Japanese samurais to communicate with a comrade sited at a distant place where any other communication means like voice could not reach, is a good metaphor to tackle managing a schedule of the groups or communities whose members are frequently moving. In a case we can not send a message directly to a remote node, if we send the message to a nearby node and the message could be forwarded, we could send the message to the destination node.
Noroshi, as a scheduler engine can also;
The basic architecture of Noroshi consists of two layers. The lower layer is a message delivery layer providing a One-Writing method. This method is a protocol devised to enable message delivery even if link is not always established to every node in a mobile, ad-hoc wireless network. This protocol manages message delivery status and routing information in XML.
The upper layer handles schedule coordination with the One-Writing method and "policy". Policy is a set of conditions to process a schedule coordination automatically. When a policy attached within coordination request messages is satisfied, a target schedule is fixed.
The One-Writing method offers the three types of services suitable to different usage.
Every node reads messages two times forward and backward. This service is used when multiple nodes negotiate about schedule coordination. This Two-time communications, schedule information gathering and coordination result notice can be done with one ROUND_TRIP message. (Fig.2)
All specified nodes read message only once and the message is returned to the sender. This service is mainly used for gathering each nodes' information. (Fig.3)
All specified nodes read message only once. This service is used mainly for delivering information. (Fig.4)
On schedule coordination, a request message is delivered as a ROUND_TRIP message. A policy is attached to the message by means of which each node can determine autonomically whether the requested scheduling condition is satisfied. At the time each participant node receives the message, the node reads the policy and decide if the schedule can be fixed.
By adding policy mechanism, we achieve reduction of unnecessary message delivery. When the schedule is fixed in the way of ROUND_TRIP, the role of the original message change into a notification role to inform the schedule is fixed to remaining nodes. On the other hand, if a node finds the schedule can not be fixed, the message delivery is interrupted immediately and the on-going process is rolled back.
Noroshi currently provides three policies;
Here are some examples of policy application. Figure 5 shows typical coordination of schedules. The policy is specified as "At least 3 persons MUST participate." In the situation that C does not have free time for requested meeting, the ROUND_TRIP message(with PREPARE state) for arrangement of a meeting is passed to participant nodes in order A,B,C and D. On receiving the message every node checks its free time for the meeting and reads attached policy.
In the way of ROUND_TRIP, each node behaves as following;
Another case shown in the figure 6 is the policy "C MUST participate." in the same situation as the former case. A and B pass the request message. At the time C receive the message, it becomes clear that the coordination results in failure. So C turns back the message immediately with ROLLBACK state. Then A and B free its temporarily reserved time.
Our system consists of two modules. One is the Noroshi library dealing with the One-Writing Method and wireless P2P communications. This corresponds to the above-mentioned message delivery layer. The other is the Noroshi scheduler running over the Noroshi library, corresponding to the schedule coordination layer. The Noroshi library has been developed as a COM-library for the reuse in other applications. The details of the two modules are presented in the following figures (Fig.7). The Noroshi library also provides wireless multihop message delivery and member discovery mechanism for unstable ad-hoc networking.
This time we have implemented Noroshi, consisting of Microsoft's Pocket PC and IEEE802.11b stacks. (Fig.8)
This work was done under the contract (130-25) with Telecommunications Advancement Organization of Japan (TAO)