The present invention relates to a wireless terminal (P2P terminal) that is mutually wireless-connectable by Peer-to-Peer (hereinafter, referred to as “P2P”), a communication control method therefor, a communication method, and a communication system.
Over recent years, from the viewpoint of band widening, security enhancement, and the like, attention has been focused on Wi-Fi Direct as an inter-terminal communication method. A previous Wi-Fi network has been operated in an infrastructure mode in which a specific device is used as an access point (AP). On the other hand, a network conforming to Wi-Fi Direct allows any P2P terminal to become a Group Owner instead of a specific device, and thereby makes it possible to communicate in a group thereof (see, for example, NPL 1). The Group Owner is a P2P terminal operating as an access point of a group, and is capable of forming, as a parent of the group, a group including another P2P terminal as a child (client).
In the P2P group formed in this manner, it is possible to share data among terminals without connecting to the Internet or the like, and to transfer data at high speed. In particular, in Wi-Fi Direct, a robust security protocol is supported and therefore higher security can be achieved compared to the security in a conventional ad hoc mode (IBSS: Independent Basic Service Set or the like).
NPL 1: Wi-Fi Alliance Technical Committee PSP Task Group, Wi-Fi Peer-to-Peer (P2P) Technical Specification Version 1.1
However, in the above-described wireless P2P network, each group is independently formed and operated, and therefore data sharing is limited within the group. Further, in general, a maximum number of terminals of one group has a physical upper limit. When, for example, above-described Wi-Fi Direct is built using an inexpensive wireless LAN device, the number of units of the group is limited to an upper limit of approximately 5 to 10 units supported by the device. Such limitation to a group size limits sharing of messages to only terminals in one group and inhibits information sharing in a larger network including a plurality of groups. In the above-described wireless P2P network, it is difficult to report disaster information, traffic information, and SOS signals with emergency, or voice signals and the like beyond a local group.
An object of the present invention is to provide a communication method, a communication system, a wireless terminal, a communication control method therefor, and a program that solve the above-described problem, i.e., a problem in which information transmission between groups is difficult in a wireless P2P network.
A communication method according to one example embodiment of the present invention is
A communication system according to another example embodiment of the present invention is
A wireless terminal according to another example embodiment of the present invention is
A wireless terminal according to another example embodiment of the present invention is
A communication control method of a wireless terminal according to another example embodiment of the present invention is
A communication control method of a wireless terminal according to another example embodiment of the present invention is
A program according to another example embodiment of the present invention causes
A program according to another example embodiment of the present invention causes
The present invention includes the above-described configuration and therefore is capable of transmitting information between a first and a second Peer-to-Peer group via a delivery node.
Further, a second owner node can receive a predetermined message before a delivery node is connected. Therefore, for example, it is possible to make preparations for delivery node connection in such a way as to previously disconnecting an existing client to enable connection with a delivery node, when the number of the member of a second Peer-to-Peer group reaches an upper limit.
Next, example embodiments of the present invention will be described in detail with reference to the drawings.
Referring to
In
Here, a maximum number of client nodes connectable to one group owner (hereinafter, referred to as a GO) is assumed to be five for description convenience. Under such limitation, five client nodes N17 to N21 are already connected to the GO node N16 of the group G2, and therefore it is difficult for the GO node N16 to have a new node other than these to be connected thereto.
In a state where groups G1 and G2 are formed, upon discovery of the GO node N16 of a neighboring group G2, the GO node N11 of the group G1 transmits a message MSG for requesting delivery node connection preparations to the GO node N16 using wireless communication by a second communication method (step S1).
Upon receipt of the message MSG from a neighboring group G1, the GO node N16 of the group G2 temporarily disconnects, from the group G2, one or a plurality of client nodes already connected to the group G2 and decreases the number of the connection clients in such a way that a delivery node to be described later can make a new connection (step S2). In the example of
Subsequently, the GO node N11 of the group G1 selects one or a plurality of client nodes as a delivery node, instructs the delivery node to be connected to the group G2, and disconnects the delivery node from the group G1 (step S3). In example of
Thereafter, the delivery node N15 is disconnected from the group G2 and is reconnected to the GO node N11 of the group G1, and thereby the delivery node N15 transfers information between the delivery node N15 and the GO node N11 (step S5). Specifically, the delivery node N15 transmits data D2 to the GO node N11. Thereby, the GO node N11 of the group G1 can acquire the data D2 being shared in the group G2. Moreover, the data D2 is further transferred from the GO node N11 to the client nodes N12 to N14, and thereby the client nodes N12 to N14 can acquire the data D2 being shared in the group G2.
On the other hand, the client node N21 being temporarily disconnected from the group G2 is reconnected to the GO node N16 of the group G2 when the delivery node N15 is disconnected from the group G2 (step S6). Further, the data D1 is transferred from the GO node N16 to the client node N21, and thereby the client node N21 acquires the data D1 being shared in the group G1.
In this manner, shared information can be transmitted between the group G1 and the group G2 via the delivery node N15.
Further, before being connected to the delivery node N15, the GO node N16 of the group G2 can receive a predetermined message MSG from the GO node N11 of the group G1. Therefore, the GO node N16 can make preparations for delivery node connection in such a way as to previously disconnecting one or a plurality of client nodes from the group G2 having the number of the clients reaching an upper limit, to enable connection with the delivery node N15.
Hereinafter, a configuration and operation of the communication system according to the present example embodiment will be described in more detail.
The wireless communication I/F units 10 and 20, each configured by a dedicated wireless communication circuit, include a function of performing wireless communication with various types of devices such as other wireless terminals connected via a wireless communication line. The wireless communication I/F unit 10 is a wireless LAN interface compatible with Wi-Fi Direct, and the wireless communication I/F unit 20 is a wireless interface compatible with cellular communication such as 3G and LTE.
The operation input unit 30 includes an operation input device such as a keyboard or a mouse, and includes a function of detecting an operation of an operator and outputting the detected operation to the processing unit 60.
The screen display unit 40 includes a screen display device such as an LCD (liquid crystal display) or a PDP (plasma display panel), and includes a function of displaying various types of information such as an operation menu in accordance with an instruction from the processing unit 60.
The storage unit 50 includes a storage device such as a hard disk or a memory, and includes a function of storing processing information and a program 50P necessary for various types of processing in the processing unit 60. The program 50P is a program for making various types of processing units by being read onto the processing unit 60 to be executed. The program 50P is previously read from an external device (not illustrated) or a storage medium (not illustrated) via a data input/output function such as the communication I/F units 10 and 20, or the operation input unit 30, and stored on the storage unit 50. As main processing information stored on the storage unit 50, there are shared information 50A, a connection node list 50B, and group information 50C.
The shared information 50A is data mutually shared with another node and is, for example, disaster information, traffic information, and the like.
The connection node list 50B is a list of communication addresses of a node permitted for connection. There are two types of communication addresses: one is a communication address of Wi-Fi Direct (e.g., a MAC address); and the other is a communication address of cellular communication (e.g., a phone number or an IP address).
The group information 50C is information relating to a group (P2P group) to which an own terminal belongs. In a case of joining in any group, information for identifying a group owner thereof and information for identifying a client node thereof are registered in the group information 50C. Further, in a case of not joining in any group, the fact of not joining in any group is registered. The node N manages whether the node N is a group owner or a client by the group information 50C and executes processing in accordance with the group owner or processing in accordance with the client.
The processing unit 60 includes a microprocessor such as an MPU, and a peripheral circuit thereof. The processing unit 60 includes a function of reading the program 50P from the storage unit 50 to execute the program, and thereby making various types of processing units by the cooperation of the above hardware and program 50P. Main processing units made by the processing unit 60 include a Wi-Fi connection control unit 60A, a cellular communication control unit 60B, and an automatic connection control unit 60C.
The Wi-Fi connection control unit 60A is a block that generates a packet of Wi-Fi Direct, transmits the generated packet through the wireless communication I/F unit 10, and receives a packet of Wi-Fi Direct also through the wireless communication I/F unit 10. The Wi-Fi connection control unit 60A performs control in units such as “Device Discovery”, “Group Formation”, “WPS (Wi-Fi Protected Setup) Provisioning Phase 1”, and “WPS Provisioning Phase 2”. Further, the Wi-Fi connection control unit 60A receives an event (command) from the automatic connection control unit 60C to start control, and reports the result to the automatic connection control unit 60C as an event (response).
The cellular communication control unit 60B is a block that generates a packet of cellular communication, transmits the generated packet through the wireless communication I/F unit 20, and also receives a packet of cellular communication through the wireless communication I/F unit 20. When receiving an event (command) from the automatic connection control unit 60C, the cellular communication control unit 60B performs control in accordance with the event and reports the result to the automatic connection control unit 60C as an event (response).
The automatic connection control unit 60C is a control unit located in an upper layer of the Wi-Fi connection control unit 60A and the cellular communication control unit 60B. The automatic connection control unit 60C controls the cellular communication control unit 60B and thereby performs transmission/reception of a message across P2P groups of Wi-Fi Direct. Further, the automatic connection control unit 60C controls the Wi-Fi connection control unit 60A and thereby performs automatic connection by Wi-Fi Direct. Specifically, when nodes come close to each other, for example, one group is automatically constructed and inter-node communication is carried out in the group. Further, when a new node comes close to an already-constructed group, the node automatically joins the already-constructed group. Still further, a node is automatically disconnected from the already-constructed group. The automatic connection control unit 60C performs the information sharing method described with reference to
Hereinafter, functions of the automatic connection control unit 60C will be described in more detail. First, a function of connection and disconnection of Wi-Fi Direct will be described, and then a control function relating to the information sharing described with reference to
As illustrated in
In a case where connection is made to an existing GO (CASE 2), first, a neighboring P2P node is searched by Device Discovery processing. When the discovered P2P node is a GO, connection to the GO is made by Provisional Discovery processing. Next, WPS Provision Phase-1 (authentication phase) and Phase-2 (encryption phase) are sequentially executed.
In a case where connection is made to a Persistent GO (CASE 3), first, a neighboring P2P node is searched by Device Discovery processing. When the discovered P2P node is a Persistent GO, connection to the Persistent GO is made by Invitation processing. Next, WPS Provision Phase-2 (encryption phase) is sequentially executed.
As exemplarily illustrated in
As exemplarily illustrated in
As exemplarily illustrated in
As exemplarily illustrated in
As exemplarily illustrated in
As illustrated in
In a state where the groups G1 and G2 are formed as illustrated in
When discovering the GO node N16 of an adjacent group G2, the automatic connection control unit of the GO node N11 of the group G1 analyzes the adjacent group (S13). In this analysis, it is determined whether the adjacent group is a partner for data sharing, and further determined whether the number of the connection clients of the adjacent group reaches an upper limit.
In determining whether the adjacent group is a partner for data sharing, the automatic connection control unit of the GO node N11 makes the determination by researching whether a MAC address included in a probe request or a probe response, transmitted from the GO node N16 of the group G2, and being information for identifying the GO node N16 is matched with any one of MAC addresses listed on the connection node list 50B, for example. When the MAC address of the GO node N16 is written on the connection node list 50B, it is determined that the group G2 formed by the GO node N16 is a partner for data sharing, and otherwise, it is determined that the group G2 is not a partner for data sharing. Although a MAC address is used herein, it is possible to determine whether to be a partner for data sharing by matching information other than the MAC address, as long as using information capable of uniquely identifying a node. When determining that the GO node N16 of the group G2 is not a partner for data sharing, the automatic connection control unit of the GO node N11 does not execute any operations relating to data sharing with the group G2 such as transmission of a predetermined message MSG to be described later and designation/disconnection of a delivery node.
Further, in the determination whether the number of the connection clients of an adjacent group reaches an upper limit, the automatic connection control unit of the GO node N11 determines whether the number of the connection clients of the group G2 reaches an upper limit based on a P2P Group Limit bit value included in a probe request or a probe response transmitted from the GO node N16 of the group G2. When the number of the connection clients of the group G2 reaches the upper limit, the automatic connection control unit of the GO node N11 transmits a predetermined message to be described later. On the other hand, when the number of the connection clients of the group G2 does not reach the upper limit, the automatic connection control unit omits transmission processing for the predetermined message to be described later, and moves to the subsequent processing.
When the adjacent group G2 is a partner for data sharing and furthermore the number of the connection clients of the adjacent group reaches the upper limit, the automatic connection control unit of the GO node N11 of the group G1 transmits a predetermined message to the GO node N16 using wireless communication by the cellular communication control unit (S14). As an address of cellular communication of the GO node N16, there is used a cellular communication address recorded on the connection node list 50B of the storage unit 50 corresponding to the MAC address of the GO node N16. The message MSG may include a command for requesting delivery node connection preparations, specifically, a command for requesting disconnection of one or a plurality of client nodes, in addition to information for identifying the GO node N11 of a transmission source and information for identifying the GO node N16 of a transmission destination. The automatic connection control unit of the GO node N16 of the group G2 receives the above message MSG from the GO node N11 using wireless communication by the cellular communication control unit (S14).
When receiving the message MSG from the adjacent group G1, the automatic connection control unit of the GO node N16 of the group G2 selects one or a plurality of client nodes to be temporarily disconnected from the group G2 as a temporal disconnection node (S15). In
On the other hand, after transmitting the message MSG, the automatic connection control unit of the GO node N11 of the group G1 selects one or a plurality of delivery nodes (S18). In the delivery node selection, it is preferable to select, as a delivery node, a client that holds all pieces of shared data of the group G1. In
The delivery node N15 disconnected from the group G1 is connected to the GO node N16 of the group G2 in accordance with the delivery node designation (S21). At that time, a connection procedure is executed under control of the automatic connection control unit of the delivery node N15 and the automatic connection control unit of the GO node N16.
The delivery node N15 having become a client of the group G2 transfers shared information between the delivery node N15 and the GO node N16 (S22). Specifically, the automatic connection control unit of the delivery node N15 transmits the shared information 50A (data D1) on the storage unit to the GO node N16 using the Wi-Fi connection control unit 60A. Accordingly, the automatic connection control unit of the GO node N16 receives the shared information 50A (data D1) from the delivery node N15 using the Wi-Fi connection control unit 60A and stores the received information on the storage unit 50. Inversely, the automatic connection control unit of the GO node N16 transmits the shared information 50A (data D2) on the storage unit to the delivery node N15 using the Wi-Fi connection control unit 60A. Accordingly, the automatic connection control unit of the delivery node N15 receives the shared information 50A (data D2) from the GO node N16 using the Wi-Fi connection control unit 60A and stores the received information on the storage unit 50. Thereafter, although not illustrated in
Then, the delivery node N15 is first disconnected from the group G2 when a condition for reconnection to the group G1 is satisfied (S23). At that time, a cutting procedure is executed under control of the automatic connection control unit of the GO node N16 and the automatic connection control unit of the delivery node N15. The delivery node N15 is then reconnected to the GO node N11 of the group G1 (S24). At that time, a connection procedure is executed under control of the automatic connection control unit of the GO node N11 and the automatic connection control unit of the delivery node N15.
The delivery node N15 again having become a client of the group G1 transfers shared information between the delivery node N15 and the GO node N16 (S25). Specifically, the automatic connection control unit of the delivery node N15 transmits the shared information 50A (data D2) on the storage unit to the GO node N11 using the Wi-Fi connection control unit 60A. Accordingly, the automatic connection control unit of the GO node N11 receives the shared information 50A (data D2) from the delivery node N15 using the Wi-Fi connection control unit 60A and stores the received information on the storage unit 50. Thereafter, although not illustrated in
On the other hand, when a condition for reconnection to the group G2 is satisfied, the temporal disconnection node N21 is reconnected to the GO node N16 of the group G2 (S26). At that time, a connection procedure is executed under control of the automatic connection control unit of the GO node N16 and the automatic connection control unit of the temporal disconnection node N21. The temporal disconnection node N21 again having become a client of the group G2 transfers shared information between the temporal disconnection node N21 and the GO node N16 (S27). Specifically, the automatic connection control unit of the GO node N16 transmits the shared information 50A (data D1) on the storage unit to the node N21 using the Wi-Fi connection control unit 60A. Accordingly, the automatic connection control unit of the node N21 receives the shared information 50A (data D1) from the GO node N16 using the Wi-Fi connection control unit 60A and stores the received information on the storage unit 50.
In this manner, the present example embodiment transmits shared information between groups.
In the first example embodiment, a GO node discovers a GO node of another group present in a neighborhood in conformity with a Device Discovery procedure of the Wi-Fi Direct specification. In contrast, in the present example embodiment, a GO node exchanges position information with another node using cellular communication and compares position information of the GO node and position information of the another node to discover a GO node of another group present in a neighborhood.
Referring to
The GPS 70 includes a function of measuring a latitude x, a longitude y, and a height z indicating a current position of the node N and transmitting the measured values to a processing unit 60.
The node information 50D of the storage unit 50 is information in which position information or the like of another node is recorded.
The automatic connection control unit 60D is different from the automatic connection control unit 60C of the node N illustrated in
The automatic connection control unit 60D transmits a position-information notification message to another node by cellular communication at a constant cycle using a cellular communication control unit 60B. In the position-information notification message, a current position of the node detected by the GPS 70, a node identifier of the node N, a MAC address, an owner bit, and a group identifier are stored. A destination is all nodes in which cellular communication addresses are recorded on a connection node list 50B, respectively. However, another node connected to the same group as for the node N managed by the group information 60D may be excluded.
Further, the automatic connection control unit 60D receives, using the cellular communication control unit 60B, a position-information notification message transmitted from another node by cellular communication and records the received message in the node information 50D of the storage unit 50. Specifically, when an entry including a node identifier or a MAC address matched with a node identifier or a MAC address in the received position-information notification message does not exist in the node information 50D, the automatic connection control unit 60D stores the received position-information notification message in a new entry and adds the new entry to the node information 50D. When such entry exists, the automatic connection control unit 60D overwrites the existing entry by the received position-information notification message.
Further, every time updating the node information 50D, the automatic connection control unit 60D compares the latest position information of the node N being detected by the GPS 70 with position information of another node in the node information 50D. Accordingly, the automatic connection control unit 60D detects all other nodes in which a distance between both nodes is equal to or smaller than a threshold. The threshold herein may be set, for example, as a maximum value or an average value of a distance where two nodes can execute a connection procedure by Wi-Fi Direct. Subsequently, when there are one or more other nodes being detected, the automatic connection control unit 60D detects a GO node having an owner bit of a value 1 among these other nodes, as a GO node of another group present in a neighborhood.
In the above-described operations, the automatic connection control unit 60D directly transmits/receives a position-information notification message to/from another node. However, as illustrated in
In the first example embodiment, as illustrated in
The automatic connection control unit of the GO node N16 of the second group G2 having received the message MSG recognizes the delivery node N15 to be connected to the group G2 by being disconnected from the group G1 by the delivery node information in the message MSG. Accordingly, the unit suspends connection of another node to the own-group G2 until connection to the recognized delivery node N15 is completed. In other words, as illustrated in
While the present invention has been described by citing several example embodiments, the present invention is not limited to the above example embodiments and can be subjected to various other types of additions/modifications.
It should be noted that the present invention is based upon and claims the benefit of priority from Japanese Patent Application No. 2014-253113, filed on Dec. 15, 2014, and the contents described in the patent application are incorporated herein in its entirety by reference.
The present invention is applicable in a P2P network including a plurality of nodes (wireless terminals) capable of dynamically forming a group.
Number | Date | Country | Kind |
---|---|---|---|
2014-253113 | Dec 2014 | JP | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2015/005579 | 11/9/2015 | WO | 00 |