This application claims priority based on Japanese Patent Application, No. 2003-148492 filed on May 27, 2003, the entire contents of which are incorporated herein by reference.
This invention relates to a method for providing position information about nodes connected to a wireless communications network.
Advances in wireless communications technology have entailed a concomitant trend: widespread use of wireless communications environments in corporate offices and extensive distribution of wireless communications services in public places. Such wireless communications environments and services are typically implemented by wireless LAN access points through which existing networks are accessed for communications. Apart from that trend-, discussions about so-called ad hoc networks are being held by standardization-promoting bodies. The ad hoc network is a network made up of nodes communicating with one anther without the need for established communications infrastructure such as access points.
Generally, an ad hoc network is configured as a set of diverse nodes with wireless communications capabilities, such as PDAs (personal digital assistants), mobile phones, and laptop computers. The nodes can communicate with each other when they are located within a wireless communication distance of each other, i.e., where packet-carrying radio waves can propagate from one node to another. The nodes can also communicate with each another even if positioned so far apart that their radio waves fail to propagate directly between them. In such a case, each node need only repeat packets destined for another node.
Routing information needs to be exchanged on the other ad hoc network to repeat packets. Assume that three nodes, A, B and C, make up an ad hoc network; that nodes A and B can communicate directly with each other using their wireless communication functions; that nodes B and C can likewise communicate with each other by use of their wireless communication functions; and that nodes A and C are located beyond the range of direct wireless communication with each other by radio waves. In that case, if nodes A and C are to communicate with one another, they must be notified that node B is ready to repeat the radio waves. The notification is accomplished by node B informing nodes A and C that it can communicate with both of them, either periodically or on request by one of the two nodes. In this manner, routing information is exchanged over the ad hoc network, whereby the nodes beyond the range of direct radio communication with each other can still communicate.
An ad hoc network where routing information is periodically exchanged is called a proactive ad hoc network, whereas an ad hoc network where routing information is exchanged at the start of a data communication is called a reactive ad hoc network. On the proactive ad hoc network, each of the component nodes retains routing information, received in advance, designating the routes to each of the others preparatory to periodically exchanging routing information.
On the ad hoc network, it is possible to acquire routing information about the nodes communicating with each another, but not their physical positions. Still, the physical positions of the nodes need to be obtained in order to manage the network configuration and communication status. Once the physical positions of the nodes are known, any faulty node triggering a defective communication over the network can be isolated and repaired, so that the normal state of communication over the network can be restored.
A related position-information managing method is disclosed illustratively in Japanese Laid Open Patent Publication No. 2002-109679 proposing a position-information providing system. The proposed system involves configuring a routing network with physical means installed along routes. Nodes and terminal points constituting the routing network are each furnished with a communications unit permitting wireless communications access whereby tourists are offered information. More specifically, a plurality of wireless communication units are set up in a given area to detect the positions of tourists. The wireless communications units thus established transmit radio waves and receive responses from a data communications terminal owned by each tourist. The response from the tourist's terminal is detected and the position of that terminal is accordingly determined.
The system outlined above requires establishing a plurality of immutable wireless communications units for transmitting radio waves. The range in which the positions of the tourists' terminals can be detected is limited to the vicinities of the immutably located wireless communications units. The wider the range where position information is to be acquired, the larger the number of immutable wireless communications units that need to be set up. A major disadvantage of such a system is its increasing cost as its service area expands.
The present invention provides a position-information managing method for offering position information about nodes constituting an ad hoc network without recourse to immutably established wireless communications units. According to one aspect of the invention, a position-information managing method is provided for graphically displaying positions of a plurality of nodes connected to an ad hoc network. The method permits graphic display of the positions of at least a node having a position-information detection device such as a GPS (Global Positioning System) receiving device, a node with its position previously determined, and a node having no device for detecting its own-position information using the predetermined node-position information and/or position information obtained by the detection devices in use.
According to another aspect of the invention, a position-information managing method is provided for graphically displaying the position of any node having no device for detecting its own-position information, using routing information exchanged by the nodes connected to an ad hoc network. The routing information includes values called metrics representing logical distances between any two nodes. The metrics are typically generated by the number of hops. It is expected that the number of hops between a given node and a nearby node is small, while the hop count is proportionately larger between the node of interest and a distant node. By counting the number of hops, it is possible to estimate how far away a node having no position-information detection device is from another node equipped with a position-information detection device. The hop count thus obtained is used to graphically display the approximate position of any node with no position-information detection device.
As described, the inventive method for displaying the positions of nodes connected to a network permits graphic display, based on network routing information, of the configured nodes incapable of detecting their own device positions.
These and other benefits are described throughout the present specification. A further understanding of the nature and advantages of the invention may be realized by reference to the remaining portions of the specification and the attached drawings.
Preferred embodiments of this invention are now described with reference to the accompanying drawings.
In
In the configuration above, PDA1 (201) can communicate directly with PDA2 (202) using wireless LAN device 201w. Similarly, direct wireless communication can be effected between PDA1 (201) and PDA4 (204), between PDA1 (201) and position-information display server 210, between PDA2 (202) and PDA3 (203), between PDA2 (202) and position-information display server 210, and between PDA3 (203) and position-information display server 210 by use of their respective wireless LAN devices. Direct wireless communication is also executed between PDA3 (203) and PDA5 (205) using their short-distance wireless communications devices. GPS receiving devices 202g, 204g, 205g, and 210g are capable of receiving GPS signals for determining geographical positions from a plurality of GPS satellites 220.
In the description that follows, the processes performed by the configured devices are, in fact, carried out by the CPU of each device using programs held in the memory of the device in question. The programs may be either pre-stored in the memories or loaded into the memories, as needed, by use of a detachable, device-compatible storage medium or by data transfers over a network.
In
From routing table 400 in
How position-information is graphically displayed on the basis of information coming directly from communicable nodes is described below with reference to routing table 400.
After starting the process (in step 501), the node waits for the reception of a request to transmit routing information (in step 502). Upon receipt of the transmission request, the node reads the routing information to be retained by this node (in step 503). The routing information 510 to be read at this point is made up of the data in routing table 400. Alternatively, some other routing information generated by an ad hoc routing process may be used.
After routing table 400 is read, outgoing information is selected (in step 504). At this point, position-information display server 210 is used to select the information needed to display position information graphically. For graphic position display, this embodiment utilizes information from the directly communicable nodes (with a hop count of 1 each). Specifically, a search is made through routing table 400 for the routing entries with no records of gateway 402, i.e., for routing entries 410, 420 and 440 corresponding to the nodes directly communicable with this node.
Alternatively, the nodes with a hop count of 1 each may be supplemented by the nodes with a hop count of 2 or more each for graphic position display. In this case, routing entries 430 and 450 are additionally selected.
The selected routing entries are transmitted to position-information display server 210 (in step 505). The information transmitted at this point is schematically shown in
After transmitting the routing information (in step 505), the node waits for the reception of another transmission request that may come from position-information display server 210 (in step 502). On receipt of the transmission request from server 210, the node reaches step 503 again to read the routing information, and repeats the subsequent steps.
In the process for receiving routing information from the nodes, the program first sends a routing information transmission request to each node (in step 706). The nodes to which to send the transmission request are all nodes that are found to take part in an ad hoc network by a search through routing table 400 of server 210. The search through routing table 400 picks up all nodes that constitute the ad hoc network, so that the nodes may be notified of the request to transmit their routing information.
After sending the transmission request (in step 706), position-information display server 210 waits for the reception of a packet 600 from each node (in step 707). After receiving packet 600 from the nodes, position-information display server 210 writes information based on the routing entries (i.e., link information) from each node to a link information table 1000 shown in
Shared memory 710 is formed by an area in memory 302 to and from which routing information can be written and read, respectively, by the routing information receiving process and the position-information displaying process. After the link information is written, the routing information receiving process remains in a sleep state for a predetermined time period (in step 709). The sleep time is established and handed over as an argument to this program upon program activation. At the end of the predetermined sleep time period, the process returns to step 706 and repeats the subsequent steps.
The position-information displaying process is carried out in parallel with process of steps 706 through 709 above.
In the position-information displaying process, link information and position information are first read from shared memory 710 (in step 703). The read operation provides the routing information from the nodes capable of detecting their own positions and the information from the nodes with which the node in question can communicate directly. For example, in the network configuration of
The above pieces of information are used as the basis for calculating plotting positions. First of all, the plotting positions of the nodes that have transmitted their position information are determined.
In step 704, plotting positions are calculated using a maximum (Mx) and a minimum (mx) value of the X-axis coordinates as well as a maximum (My) and a minimum (my) value of the Y-axis coordinates. For example, suppose that all nodes, each with its position information written in the position-information table, are plotted with lengthwise and crosswise margins of 20 percent regarding a screen size (Sx, Sy). In that case, the plotting position (Px, Py) of the position information (Gx, Gy) is calculated using the following expressions:
Px=[0.2+(1-0.2×2){(Gxmx)/(Mxmx)}]×Sx
Py=[0.2+(1-0.2×2){(Gymy)/(Mymy)}]×Sy
Then, based on the link information, the plotting position of any node that has not sent its position information is determined. As can be seen in
Suppose now that the plotting position of PDA1 (201) is calculated. It is assumed that the current plotting position of PDA1 (201) is (Px1, Py1) and that of PDA2 (202) is (Px2, Py2). The amount of plotting position shift by repulsion (dxr, dyr) and the amount of plotting position shift by attraction (dxa, dya) are calculated using the following expressions:
dxr=R(Px1−Px2)/L×L
dyr=R(Py1−Py2)/L×L
where, R denotes a given positive number and L represents the distance between the plotting positions of PDA1 and PDA2. The amount of plotting position shift by repulsion regarding each of the other nodes, i.e., PDA3 (203), PDA4 (204), PDA5 (205), and position-information display server 210, is likewise calculated.
Where the force of attraction is to be calculated, the directly communicable nodes are determined by referencing the link information table 1000 of
dxa=A(Px2−Px1)
dya=A(Py2−Py1)
where A stands for a given positive number. The amount of shift by attraction with regard to the other directly communicable nodes, i.e., PDA4 and position-information display server 210, is similarly calculated. In calculating the amount of shift by attraction, more accurate plotting is accomplished by varying coefficient A depending on interface information 404 in routing table 400. For example, if the interface is a short-distance wireless communications device, the directly communicable node is expected to be very close to this node because short-distance wireless communications generally take place over distances much shorter than those with wireless LAN devices. Coefficient A is thus increased regarding the interface of short-distance wireless communication and decreased for the interface of longer wireless communication distances. The result is plotting much closer to reality than before, carried out by position-information display server 210.
In calculating the amount of shift by attraction, information between the nodes with a hop count of 2 or more each may be used as mentioned earlier. In that case, coefficient A is varied depending on the hop count so that the forces of attraction between the nodes may be added up in calculating the amount of plotting position shift regarding each node.
The amount of plotting-position shift for PDA1 (201) is calculated by adding up the amounts of shift by repulsion and the amounts of shift by attraction involved. If the sum total of the amounts of plotting-position shift is represented by (dxsum, dysum), then the new plotting position (Px1new, Px2new) of PDA1 (201) is calculated using the following expression:
Px1new=Px+dxsum
Py1new=Py+dysum
The calculations above are performed on each of the other nodes not in possession of their position information.
Finally, re-plotting is carried out (in step 705) based on the newly obtained plotting positions, and a sleep state is entered and maintained for a predetermined time (in step 711). Thereafter, this process returns to the step of reading link information and position information (step 703), and repeats the subsequent steps.
Given the results of the process above, video card 1205 of position information display server 210 displays the positions of the nodes involved on display 1206.
Through the use of the inventive position-information managing method, each node having a position-information detecting device such as a GPS (Global Position System) receiver, i.e., PDA2 (202), PDA4 (204), PDA5(205), and position information-display server 210, have their positions displayed in screen image 1100 on the basis of the position information shown as devices 1102, 1104, 1105 and 1110 representing the nodes. Nodes PDA1 (201) and PDA3 (203) incapable of detecting their own positions may also have their positions plotted as devices 1101 and 1103 representing the nodes by use of the routing information from the ad hoc network.
It should be noted that this invention applies not only to the proactive ad hoc network discussed above but also to reactive ad hoc networks.
The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense. It will, however, be evident to those skilled in the art that various modifications and changes may be made thereto without departing from the spirit and scope of the invention as set forth in the claims.
Number | Date | Country | Kind |
---|---|---|---|
2003-148492 | May 2003 | JP | national |