WO2015004859A1 - 通信端末 - Google Patents

通信端末 Download PDF

Info

Publication number
WO2015004859A1
WO2015004859A1 PCT/JP2014/003318 JP2014003318W WO2015004859A1 WO 2015004859 A1 WO2015004859 A1 WO 2015004859A1 JP 2014003318 W JP2014003318 W JP 2014003318W WO 2015004859 A1 WO2015004859 A1 WO 2015004859A1
Authority
WO
WIPO (PCT)
Prior art keywords
communication
communication terminal
state
network
terminals
Prior art date
Application number
PCT/JP2014/003318
Other languages
English (en)
French (fr)
Inventor
真人 安田
藤田 範人
Original Assignee
日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 日本電気株式会社 filed Critical 日本電気株式会社
Priority to JP2015526147A priority Critical patent/JP6515804B2/ja
Priority to US14/903,090 priority patent/US10314084B2/en
Publication of WO2015004859A1 publication Critical patent/WO2015004859A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • H04W84/20Master-slave selection or change arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/005Discovery of network devices, e.g. terminals

Definitions

  • the present invention relates to a communication terminal, a network configuration method, and a program.
  • One type of short-range communication network is a communication network that conforms to the Wi-Fi Direct specification (see Non-Patent Document 1, for example).
  • a communication network conforming to the Wi-Fi Direct specification one communication terminal among a plurality of communication terminals participating in a certain network functions as a parent having an access point function, and the remaining communication terminals are connected to the parent. Acts as a child.
  • Wi-Fi Ad-hoc networks communication networks that comply with the Wi-Fi Direct specification allow one-to-multiple connections, and communication between children via the parent There are features such as being capable of security and relatively high security. For this reason, communication networks conforming to the Wi-Fi Direct specification have recently been used for various purposes such as data sharing.
  • the present invention relates to a method for configuring a communication network that complies with such Wi-Fi Direct specifications.
  • application of the present invention is not limited only to a communication network conforming to the Wi-Fi Direct specification.
  • Patent Document 1 An example of a method for configuring a communication network compliant with the Wi-Fi Direct specification is described in Patent Document 1.
  • each communication terminal exchanges information with other communication terminals without user intervention in order to exchange P2P (Peer to Peer) capability information, and requests establishment of a P2P connection.
  • P2P Packet to Peer
  • parameter information indicating a connection type Wi-Fi Direct, etc.
  • a protocol, a corresponding authentication, or a security method is exchanged.
  • Each communication terminal determines whether to establish a P2P connection with another communication terminal based on the discovered P2P type or the like. For example, a communication terminal requests to connect to another communication terminal via the Wi-Fi Direct network connection type in order to use the VoIP service. In that case, a case where a P2P connection of only two communication terminals is established and a case where a P2P connection is established between two or more communication terminals are illustrated.
  • Wi-Fi Alliance Technical Committe P2P Task Group Wi-Fi Peer-to-Peer (P2P) Technical Specification Version 1.1
  • Non-Patent Document 1 stipulates a procedure for searching for surrounding communication terminals by a communication terminal not connected to the communication network exchanging communication messages related to search with other communication terminals. ing. However, Non-Patent Document 1 and Patent Document 1 do not describe a method of determining a connection partner when one or more other communication terminals are found in the search. Automatic connection is difficult in a method in which information regarding one or more other communication terminals that have been discovered is presented to the user of the communication terminal and the user selects one communication terminal.
  • An object of the present invention is to provide a network configuration method that solves the above-described problem, that is, it is difficult to automatically connect a communication terminal that is not connected to a communication network to another communication terminal. It is in.
  • a network configuration method includes: A method of configuring a communication network in which one of the plurality of communication terminals functions as a parent having a function of an access point, and the remaining communication terminals function as children to the parent, A first communication terminal not connected to the communication network searches for a second communication terminal existing around the communication terminal, Based on information included in a communication message received from the one or more second communication terminals discovered by the search by the first communication terminal, a connection partner is selected from the one or more second communication terminals. The second communication terminal is determined, and the communication network is configured with the determined connection partner.
  • a communication terminal provides: The communication terminal that constitutes a communication network in which one of the plurality of communication terminals functions as a parent having a function of an access point, and the remaining communication terminals function as children to the parent, A wireless communication unit that exchanges communication messages with other communication terminals; A control unit connected to the wireless communication unit, The control unit Search for other communication terminals around the communication terminal, Based on the information included in the communication message received from the one or more other communication terminals discovered by the search, the one other communication terminal to be connected to among the one or more other communication terminals is selected. Decide The network is configured with the determined connection partner.
  • a network configuration method includes: Network configuration executed by the communication terminal constituting a communication network in which one of the plurality of communication terminals functions as a parent having an access point function, and the remaining communication terminals function as children to the parent A method, Search for other communication terminals around the communication terminal, Based on the information included in the communication message received from the one or more other communication terminals discovered by the search, the one other communication terminal to be connected to among the one or more other communication terminals is selected. Decide The network is configured with the determined connection partner.
  • the program according to the fourth aspect of the present invention is: A computer included in the communication terminal constituting a communication network in which one of the plurality of communication terminals functions as a parent having the function of an access point, and the remaining communication terminals function as children to the parent; A wireless communication unit that exchanges communication messages with other communication terminals; Function as a control unit connected to the wireless communication unit, The control unit Search for other communication terminals around the communication terminal, Based on the information included in the communication message received from the one or more other communication terminals discovered by the search, the one other communication terminal to be connected to among the one or more other communication terminals is selected. Decide The network is configured with the determined connection partner.
  • a communication terminal that is not connected to a communication network can be automatically connected to another communication terminal.
  • a communication terminal 110 is a wireless communication terminal that forms a communication network compliant with the Wi-Fi Direct specification.
  • the communication terminal 110 includes a wireless communication unit 111, a control unit 112, an application unit 113, a storage unit 114, and an antenna 115.
  • the wireless communication unit 111 has a function of transmitting and receiving communication messages wirelessly with other communication terminals.
  • the wireless communication unit 111 creates a packet of a communication message in response to a request from the control unit 112, performs processing such as adding a header and an error detection code to the created packet, and uses the processed data from A modulation signal in the frequency band of the carrier wave is generated and transmitted from the antenna 115 as a radio signal.
  • the wireless communication unit 111 demodulates the wireless signal received by the antenna 115 to decode the communication message packet, and sends a communication message that has been confirmed to have no error based on the error detection code to the control unit 112. Notice.
  • the control unit 112 has a function of controlling the entire communication terminal 110 such as determination of a use frequency in the wireless communication unit 111, creation and transmission instructions of various communication messages, interpretation of various received communication messages, control of connection processing, and the like.
  • the control unit 112 transmits / receives a communication message related to the search through the wireless communication unit 111 to / from other communication terminals around the own communication terminal. It has a function of searching for other communication terminals existing around the communication terminal. This search for surrounding communication terminals is performed in accordance with, for example, a device discovery procedure (Device Discovery Procedure) of the Wi-Fi Direct specification.
  • a device discovery procedure Device Discovery Procedure
  • control unit 112 transmits a probe request to the surroundings, and waits for reception of a probe response (Prove Response). And the control part 112 recognizes that another communication terminal exists in the circumference
  • communication addresses for example, MAC addresses
  • the probe response includes the MAC address of the communication terminal that has transmitted the probe response.
  • the probe response has attributes such as P2P Capability, P2P Device Info, and P2P Group Info.
  • P2P Capability has fields such as Group Capability Bitmap.
  • Group Capability Bitmap has bits such as P2P Group Owner, Persistent P2P Group, and Persistent Reconnect. If the other communication terminal is GO, the P2P Group Owner bit is set to 1.
  • the other communication terminal hosts or can host a persistent group (Persistent P2P Group) (hereinafter referred to as a state in which a persistent group can be hosted).
  • the Persistent P2P Group bit and Persistent Reconnect bit are set to 1.
  • the permanent group is a group that stores credentials used at the time of group construction so that they can be reused at the time of later group construction. Details are described in Non-Patent Document 1.
  • P2P Device Info has fields such as P2P Device Address and Config Methods.
  • P2P Device Address is an identifier that uniquely identifies the other communication terminal.
  • Config Methods describes information about WSC (Wi-Fi Simple Configuration) Methods (for example, authentication methods such as PIN and PBC) supported by the other communication terminals.
  • P2P Group Info is included only in the probe response returned from GO, and has fields such as P2P Client Info Descriptor.
  • P2P Client Info Descriptor includes information about clients belonging to the GO group.
  • control unit 112 determines, based on information included in the communication message received from the one or more other communication terminals discovered by the search, one other communication terminal as the connection partner from the one or more other communication terminals. It has a function of determining a communication terminal and configuring a communication network with the determined connection partner. An example of a method in which the control unit 112 determines a connection partner based on information included in a communication message received from another communication terminal is shown below.
  • connection partner determination method 1 The communication terminal 110 stores a list of communication addresses (for example, MAC addresses) of the communication terminal in the storage unit 114.
  • the control unit 112 acquires the communication address of the other communication terminal from the communication message received from the other communication terminal discovered by the search. Next, the control unit 112 collates the acquired communication address with the communication address in the list, and determines whether or not the received communication address is listed in the list.
  • the control unit 112 determines one other communication terminal whose communication address is listed in the list among the one or more other communication terminals found as the connection partner. According to this determination method, a communication terminal that is not connected to a communication network can be automatically connected to another communication terminal listed in advance.
  • the communication terminal 110 stores the plurality of states of the communication terminal and the priority order between the states in the storage unit 114.
  • the state of the communication terminal means a state indicating whether or not it is connected to the network, a state indicating whether or not it is functioning as a parent, a state where a permanent group can be hosted, and the like.
  • the control unit 112 acquires the state of the other communication terminal from the communication message received from the other communication terminal discovered by the search. For example, when the P2P Group Info attribute does not exist in the received Probe Response, the control unit 112 determines that the other communication terminal that has transmitted the Probe Response is in an unconnected state.
  • control unit 112 acquires the state of whether or not the other communication terminal is GO from the P2P Group Owner bit in the Group Capability Bitmap field in the P2P Capability attribute. In addition, the control unit 112 acquires, for example, whether or not the other communication terminal is capable of hosting the permanent group from the persistent P2P group bit and the persistent reconnect bit in the group capability bitmap field in the P2P capability attribute.
  • control unit 112 determines one other communication terminal having a higher priority state as a connection partner.
  • communication that is not connected to the communication network can be established by setting a higher priority for the state that is connected to the network and that is functioning as a parent than the state that is not connected to the network.
  • the terminal can be automatically connected to another communication terminal connected to the network and functioning as a parent.
  • communication terminals that are not connected to the communication network are connected to the communication network. Can automatically connect to other communication terminals that are not. Further, by setting the priority of the state in which the persistent group can be hosted higher than the state in which the persistent group cannot be hosted, a high-speed connection becomes possible.
  • the method of determining the connection partner based on the information included in the communication message is not limited to the determination method 1 and the determination method 2 described above, and may be a method combining the determination method 1 and the determination method 2 or other methods. May be.
  • the application unit 113 has a function of executing an application program.
  • the type and number of application programs are arbitrary.
  • the application unit 113 can execute an application for making a voice call, an application for transferring a file, an application for exchanging content data, and the like with another communication terminal connected to the communication network.
  • the storage unit 114 includes a storage device such as a ROM (Read Only Memory), a RAM (Random Access Memory), and a hard disk, and stores programs and various data.
  • Data to be stored includes control data and application data.
  • the control data includes, for example, own communication terminal status information indicating whether the own communication terminal 110 is connected to the communication network, parent information when the own communication terminal 110 is connected to the communication network, searched other Information received from the communication terminal (communication address of the communication terminal, terminal name, status information (indicating whether or not the unconnected terminal not connected to the communication network, the connected parent terminal, and the permanent group can be hosted) Other communication terminal status information) etc.
  • the application data includes content data shared by the application unit 113 with other communication terminals, etc.
  • the stored program includes an application program executed by the application unit 113.
  • control unit 112 of the communication terminal 110 When the control unit 112 of the communication terminal 110 is activated, it starts executing the processing shown in FIG. First, the control unit 112 searches for surrounding communication terminals by exchanging communication messages related to the search through the wireless communication unit 111 with other communication terminals existing around the communication terminal (step S101). . This search for surrounding communication terminals is performed in accordance with, for example, a device discovery procedure of the Wi-Fi Direct specification. When the control unit 112 finds one or more communication terminals, the control unit 112 proceeds to the process of step S102. On the other hand, when no communication terminal can be found, the control unit 112 remains in step S101 and continues the process of searching for surrounding communication terminals.
  • step S102 the control unit 112 of the communication terminal 110 determines a connection partner from one or more communication terminals discovered by the search. Specifically, the control unit 112 selects a connection partner from the one or more other communication terminals based on information included in a communication message received from one or more other communication terminals discovered by the search. One other communication terminal is determined. If one other communication terminal to be connected is determined (YES in step S103), the control unit 112 proceeds to the process in step S104. If one other communication terminal to be connected is not determined (NO in step S103), the control unit 112 returns to step S101 and continues the process of searching for surrounding communication terminals.
  • step S104 the control unit 112 of the communication terminal 110 exchanges a communication message with the other communication terminal determined as a connection partner through the wireless communication unit 111 to configure a communication network. Thereafter, the communication terminal 110 starts transmission / reception of application data to / from other communication terminals connected to the communication network by the application unit 113.
  • the communication terminal 110 that is not connected to the communication network can be automatically connected to another communication terminal.
  • the reason is that the communication terminal 110 selects one of the one or more other communication terminals as a connection partner based on information included in the communication message received from the one or more other communication terminals discovered by the search. This is for determining another communication terminal and configuring the network with the determined connection partner.
  • a communication terminal (node) 210 includes a Wi-Fi device 211, a WFD connection processing unit 212, and a user control unit 213.
  • the Wi-Fi device 211 corresponds to the wireless communication unit 111
  • the WFD connection processing unit 212 and the user control unit 213 correspond to the control unit 112 and the storage unit 114.
  • the Wi-Fi device 211 is installed on wireless LAN hardware (not shown).
  • the WFD connection processing unit 212 and the user control unit 213 are installed in an MPU (not shown).
  • the Wi-Fi device 211 is a wireless LAN device driver.
  • the WFD connection processing unit 212 is a block that generates and receives a Wi-Fi Direct packet.
  • the WFD connection processing unit 212 performs Wi-Fi device control for Wi-Fi Direct connection.
  • the control is executed in units of “Device Discovery”, “Group Formation”, “WPS (Wi-Fi Protected Setup) Provisioning Phase 1”, and “WPS Provisioning Phase 2”.
  • An event is received from the user control unit 213, control is started, and the result is notified to the user control unit 213 as an event.
  • the User control unit 213 is a block that realizes automatic connection by Wi-Fi Direct.
  • the user control unit 213 is connected to the WFD connection processing unit 212 to transmit / receive information, an event transmission unit 214 and an event reception unit 215, a local node state storage unit 216 that stores the state of the local node, and a MAC address of another node And another node state holding unit 217 that holds a list of states, and an internal state control unit 218.
  • the own node state holding unit 216 includes IDLE (no connection), DISC (node discovery), CONN (connected), CLI (connected as a client), GO (connected as a group owner) as the state of the own node.
  • IDLE no connection
  • DISC node discovery
  • CONN connected
  • CLI connected as a client
  • GO connected as a group owner
  • P_GRP information indicating a state in which a persistent group can be hosted
  • Information indicating a state in which the persistent group can be hosted includes 1 or 0 and an identifier for uniquely identifying the persistent group.
  • 1 indicates a state where the persistent group can be hosted
  • 0 indicates a state where it cannot.
  • the other node state holding unit 217 As a state of the other node, one of LOST (not connected), FOUND (connected as a client), GROUP (connected as a group owner), and P_GRP (permanent group can be hosted) Information indicating the state) is stored.
  • the internal state control unit 218 stores the event type received from the WFD connection processing unit 212 through the event reception unit 215, the state of the local node stored in the local node state storage unit 216, and the other node state storage unit 217. By selecting and generating an appropriate command based on the state of the other node, a group is formed between adjacent Wi-Fi Direct compatible nodes.
  • FIG. 4 shows an outline of a procedure for the communication terminal 210 to connect to another communication terminal.
  • the communication terminal 210 searches for another node by “Device Discovery” and determines a connection partner.
  • the subsequent procedure differs depending on the communication terminal 210 and the determined state of the connection partner.
  • the other node of the connection partner is an unconnected node like the own node and does not belong to the same permanent group as the own communication terminal 210, or even if it belongs, the own communication terminal 210 or another node If the node cannot be hosted, “GO Negotiation”, “WPS Provisioning Phase 1”, and “WPS Provisioning Phase 2” are executed in this order (Case 1 in FIG. 4).
  • the other node determined as the connection partner is GO and does not belong to the same permanent group as the own communication terminal 210, or even if it belongs, the own communication terminal 210 or another node cannot host the permanent group
  • “Provisioning Discovery”, “WPS Provisioning Phase 1”, and “WPS Provisioning Phase 2” are executed in this order (Case 2 in FIG. 4).
  • FIG. 5 is a flowchart showing details of the procedure of Device Discovery.
  • the user control unit 213 of the communication terminal 210 issues a search request to the WFD connection processing unit 212 (step S201).
  • the WDF connection processing unit 212 executes Device Discovery processing (step S202).
  • FIG. 6 shows an outline of the Device Discovery process.
  • the WDF connection processing unit 212 of the communication terminal 210 receives a search request from the user control unit 213 and searches for an adjacent node.
  • the Search state and the Listen state are alternately switched.
  • the channels are switched to 1, 6, and 11 in order, a Probe Request is sent, and it waits for a Probe Response to return from the adjacent node.
  • the Listen state it waits for a Probe Request from another node, receives the Probe Request, and returns a Probe Response.
  • FIG. 7 shows an outline of the Device Discovery process for the constructed group.
  • the GO of the constructed group returns a Probe Response to the Probe Request sent by the communication terminal 210.
  • the Probe Response returned by the GO has a P2P GROUP Info attribute, which contains a list of clients belonging to the group.
  • the Probe Request includes WSC Config Methods that describe information related to the authentication method that can be supported by the adjacent node.
  • PIN Personal Identification Number
  • PBC Push Button Control
  • the communication terminal 210 that has executed Device Discovery selects and connects the authentication method to be used from the list of authentication information notified from the adjacent node by the Probe Response.
  • PIN Personal Identification Number
  • PBC Push Button Control
  • the communication terminal 210 that has executed Device Discovery selects and connects the authentication method to be used from the list of authentication information notified from the adjacent node by the Probe Response.
  • automation is realized by using a PIN number determined in advance by a user.
  • the user control unit 213 of the communication terminal 210 analyzes the search result and determines whether another node has been found (step S204). . If no other node is found, the user control unit 213 issues a search request to the WFD connection control unit 212 again (step S201). The loop of steps S201 to S204 is repeated until another node is found.
  • Step S205 the user control unit 213 of the communication terminal 210 finds another node
  • the user control unit 213 analyzes information on adjacent nodes included in the search result and determines whether or not a GO capable of hosting the persistent group has been found.
  • a GO that can host a persistent group is another communication terminal that belongs to the same persistent group as its own communication terminal and can host the persistent group, and is connected to the communication network and functions as a parent. Means a communication terminal. If found, the user control unit 213 proceeds to a process of connecting the found persistent group to a hostable GO.
  • a GO that cannot host a persistent group determines whether a GO that cannot host a persistent group has been found (step S206).
  • a GO that cannot host a persistent group is a communication terminal that does not belong to the same persistent group as its own communication terminal or that cannot belong to the persistent group even though it belongs. Means a communication terminal connected to a communication network and functioning as a parent.
  • the User control unit 213 proceeds to a process of connecting the found persistent group to a GO that cannot be hosted.
  • the User control unit 213 issues a search request. It is determined whether or not a certain time has passed since step S207 (step S207). If the predetermined time has not elapsed, the user control unit 213 may return a search result indicating that another node has been found from the WFD connection processing unit 212, so the process returns to step S203 to return the search result. Wait for reception. On the other hand, if a certain time has passed since the search request issuance, the process proceeds to a process of connecting to another node of the discovered unconnected state. Among the discovered unconnected nodes, a node with a bit capable of hosting the Persistent Group, that is, a terminal belonging to the same persistent group as the self-communication terminal and capable of hosting the persistent group is given priority. Connecting.
  • FIG. 9 shows an outline of processing until the communication terminal 210 forms a group with another node that has been found unconnected.
  • the communication terminal 210 and the other node of the connection partner do not belong to the same permanent group, or even if they belong, the communication terminal 210 or another node is not in a state capable of hosting the permanent group.
  • the user control unit 213 of the communication terminal 210 issues a connection request to the WFD connection processing unit 212 using the connection type: GO Negotiation and the authentication type: PIN or PBC as parameters (step S211).
  • the WFD connection processing unit 212 of the communication terminal 210 Upon receiving this connection request, the WFD connection processing unit 212 of the communication terminal 210 performs GO Negotiation processing (step S212), WPS Provisioning Phase1 processing (step S213), and WPS Provisioning Phase2 processing (step S214). Are executed in order. Then, after completion of the above series of processing, the WFD connection processing unit 212 notifies the user control unit 213 of connection completion (step S215), and the group formation processing between terminals ends.
  • step S212 In the GO Negotiation process in step S212, as shown in FIG. 10, either GO Negotiation Request, GO Negotiation Response, or GO Negotiation Configuration is exchanged between the communication terminal 210 and another node of the connection partner.
  • the node is determined as GO.
  • the other node In FIG. 10, the other node is determined as GO, and the communication terminal 210 operates as a client.
  • the node that becomes the GO periodically transmits the Beacon.
  • step S214 In the WPS Provisioning Phase 2 process of step S214, as shown in FIG. 12, between the communication terminal 210 and the other node of the connection partner, Deauthenticate, Deauthenticate, Auth. Request, Auth. Response, Re-assoc. Request, Re- assoc.Response, keys 1 to 4 are exchanged. Then, the WFD connection processing unit 212 notifies the user control unit 213 of the connection completion.
  • FIG. 13 shows an outline of processing until the communication terminal 210 connects to an existing GO.
  • the communication terminal 210 and the other node of the connection partner do not belong to the same permanent group, or even if they belong, the other node cannot host the permanent group.
  • the user control unit 213 of the communication terminal 210 issues a connection request to the WFD connection processing unit 212 using the connection type: provisioning discovery and the authentication type: PIN or PBC as parameters (step S221).
  • the WFD connection processing unit 212 of the communication terminal 210 performs provisioning discovery processing (step S222), WPS provisioning phase 1 processing (step S223), and WPS provisioning with the other node (GO) of the connection partner.
  • the Phase 2 process (step S224) is executed in order.
  • the WFD connection processing unit 212 notifies the user control unit 213 of connection completion (step S225), and the processing for connection to the existing GO is completed.
  • step S222 a provision discovery request and a provision discovery response are exchanged between the communication terminal 210 and the existing GO of the connection partner.
  • FIG. 15 shows an outline of processing until the communication terminal 210 connects to a hostable node belonging to the same permanent group as the own communication terminal.
  • the user control unit 213 of the communication terminal 210 issues a connection request to the WFD connection processing unit 212 using the connection type: invitation and the authentication type: PIN or PBC as parameters (step S221).
  • the WFD connection processing unit 212 of the communication terminal 210 sequentially executes an invitation process (step S232) and a WPS Provisioning Phase2 process (step S233) with another node of the connection partner.
  • the WFD connection processing unit 212 notifies the user control unit 213 of connection completion (step S225), and the processing of connection to the node capable of hosting the permanent group is finished. .
  • the connection partner is a node capable of hosting a persistent group
  • WPS Provisioning Phase 1 processing is unnecessary, and the time required to complete the connection is shortened. be able to.
  • an invitation request and an invitation response are exchanged between the communication terminal 210 and a node capable of hosting the permanent group of the connection partner.
  • the communication terminal 210 that is not connected to the communication network can be automatically connected to another communication terminal.
  • the reason is that the communication terminal 210 selects one of the one or more other communication terminals as a connection partner based on information included in the communication message received from one or more other communication terminals discovered by the search. This is for determining another communication terminal and configuring the network with the determined connection partner.
  • the communication terminal 210 it is possible to prevent the communication terminal 210 intended for quick connection to another communication terminal from failing to do so.
  • the reason for this is that the communication terminal 210 belongs to the same permanent group as the self-communication terminal among the one or more other communication terminals that have been discovered, and there is a communication terminal that can host the permanent group.
  • a communication terminal capable of hosting the permanent group is determined as a connection partner.
  • the communication apparatus 210 it is possible to prevent the communication apparatus 210 intended to form a network having a larger number of communication terminals from failing to do so.
  • the reason is that the communication terminal 210 determines the GO as a connection partner if the GO is present in one or more other communication terminals that have been discovered.
  • automatic connection can be performed by any of two types of authentication mechanisms, PIN and PBC.
  • PIN and PBC The reason is that the communication terminal 210 operates to select an authentication mechanism required by the connection partner from two types of authentication mechanisms, PIN and PBC, and the PIN number is determined in advance among a plurality of communication terminals. This is because the value is used.
  • a communication terminal (node) 310 includes a Wi-Fi device 311, a WFD connection processing unit 312, and a user control unit 313.
  • the Wi-Fi device 311 and the WFD connection processing unit 312 are the same as the Wi-Fi device 211 and the WFD connection processing unit 212 of the communication terminal 210 according to the second embodiment illustrated in FIG.
  • the user control unit 313 includes an event transmission unit 314, an event reception unit 315, a local node state holding unit 316, another node state holding unit 317, an internal state control unit 318, and a connection node list 319.
  • the event transmission unit 214 event transmission unit 214, event reception unit 215, own node state holding unit 216, other node state holding unit 217, internal state control of the communication terminal 210 according to the second embodiment shown in FIG. This is the same as the part 218.
  • the connection node list 319 is a list of communication addresses (for example, MAC addresses) of communication terminals that are permitted to be connected. If the communication address of the other communication terminal that has been found is not described in the connection node list 319, the communication terminal 310 is not connected to the other communication terminal.
  • the connection node list 319 may have the same content for all communication terminals that permit connection to each other. That is, in the connection node list 319 stored in the communication terminal 310, the communication address of another communication terminal that permits connection and the communication address of the communication terminal 310 itself may be described. Further, the order of the communication addresses described in the connection node list 319 stored in all the communication terminals or the indexes attached thereto may be the same.
  • the operation of the communication terminal 310 according to the present embodiment is the same as the operation of the communication terminal 210 according to the second embodiment shown in FIG. 3 except for Device Discovery.
  • FIG. 18 is a flowchart showing the details of the Device Discovery procedure in the present embodiment.
  • the User control unit 313 of the communication terminal 310 issues a search request to the WFD connection processing unit 312 (Step S301), and the WDF connection processing unit 312 executes Device Discovery processing (Step S302). Then, when receiving the search result from the WFD connection processing unit 312 (step S303), the user control unit 313 of the communication terminal 310 analyzes the search result and determines whether another node has been found (step S304). If no other node is found, the user control unit 313 issues a search request to the WFD connection control unit 312 again (step S301). The loop of steps S301 to S304 is repeated until another node is found. The processing so far is the same as the processing in steps S201 to S204 in the second embodiment shown in FIG.
  • Step S305 the user control unit 313 determines whether or not the MAC address of the other node included in the probe response received from the discovered other node is described in the connection node list 319 ( Step S305). If the discovered MAC address of the other node is not described in the connection node list 319, the user control unit 313 issues a search request to the WFD connection control unit 312 again (step S301). The loop of steps S301 to S305 is repeated until another node whose MAC address is described in the connection node list 319 is found.
  • the user control unit 313 of the communication terminal 310 finds another node whose MAC address is described in the connection node list 319, the node information included in the probe response received from the found other node is analyzed, It is determined whether a GO capable of hosting the group has been found (step S306). If found, the user control unit 313 proceeds to a process of connecting the found persistent group to a hostable GO. If no GO that can host a persistent group has been found, the User control unit 313 determines whether a GO that cannot host a persistent group has been found (step S307).
  • the User control unit 313 issues a search request. It is determined whether or not a certain period of time has elapsed (step S308). If the certain period of time has not elapsed, the process returns to step S303 to wait for the reception of the search result, and if the certain period of time has elapsed since the search request was issued. Then, the process proceeds to a process of connecting to another node of the discovered unconnected state. Among the discovered unconnected nodes, the node having the bit capable of hosting the Persistent Group, that is, the persistent group is preferentially connected to the node capable of hosting.
  • the communication device 310 intended to connect to a predetermined communication terminal it is possible to prevent the communication device 310 intended to connect to a predetermined communication terminal from failing to do so.
  • the reason is that if the communication terminal 310 does not include a communication terminal whose communication address is listed in the connection node list among the one or more other communication terminals that have been discovered, Is not determined as the connection partner.
  • the connection node list 319 may be used for determining a group owner when a plurality of unconnected communication terminals form a group adjacent to each other, in addition to using the connection node list 319 for selecting a connection partner. Specifically, in the GO Negotiation process shown in FIG. 10, a communication terminal whose MAC address description order in the connection node list 319 is closer to the head or whose index is smaller may be determined as the group owner.
  • the communication terminal 410 includes a Wi-Fi device 411, a WFD connection processing unit 412, a user control unit 413, an intermediate file 414, an application unit 415, Have
  • the Wi-Fi device 411 and the WFD connection processing unit 412 have the same functions as the Wi-Fi device 211 and the WFD connection processing unit 212 of the communication terminal 210 according to the second embodiment shown in FIG.
  • the user control unit 413 includes a user control unit 213 of the communication terminal 210 according to the second embodiment shown in FIG. 3 or a user control unit 313 of the communication terminal 310 according to the third embodiment shown in FIG. It has the same function.
  • the intermediate file 414 is used for communication between the WFD connection processing unit 412 and the application unit 415. That is, the WFD connection processing unit 412 is connected to the application unit 415 via the intermediate file 414.
  • the application unit 415 includes a Wi-Fi Direct connection APP (Application Software) (GUI), a Wi-Fi class, a JNI (Java Native Interface) library, and a WiFi library.
  • the application unit 415 notifies the command input from the user through an input device (not shown) to the WFD connection processing unit 412 through the intermediate file 414, receives the command execution result from the WFD connection processing unit 412 through the intermediate file 414, and Not displayed on the display screen. Thereby, the application part 415 implement
  • the user control unit 413 intercepts communication from the WFD connection processing unit 412 to the application unit 415 using the intermediate file 414. Also, the user control unit 413 impersonates the application unit 415 and transmits a command to the WFD connection processing unit 412 through the intermediate file 414. Thereby, the User control unit 413 realizes automatic connection of the communication terminal 410.
  • the Wi-Fi device 411 is, for example, wlan0
  • the Wi-Fi connection processing unit 412 is wpa_supplicant
  • the intermediate file 414 is a UNIX Domain Socket (for example, / var / run / wpa_spap_supp). / Wlan0).
  • the user control unit 413 has a configuration in which the intermediate file 414 used for communication between the Wi-Fi connection processing unit 412 and the application unit 415 is intercepted and a command is interrupted. Wi-Fi Direct automatic connection can be realized without this.
  • FIG. 20 shows an example of a hardware configuration when the communication terminal in each of the above-described embodiments is configured by an electronic information processing apparatus such as a computer.
  • the communication terminal 510 in this example includes a CPU (Central Processing Unit) peripheral part, an input / output part, and a legacy input / output part.
  • the CPU peripheral section includes a CPU 902, a RAM 903, a graphic controller 904, and a display device 905 that are connected to each other by a host controller 901.
  • the input / output unit includes a communication interface (I / F) 907, a hard disk drive 908, and a CD-ROM (Compact Disk Read Only Memory) drive 909 connected to the host controller 901 by an input / output (I / O) controller 906.
  • the legacy input / output unit includes a ROM (Read Only Memory) 910, a flexible disk (FD) drive 911, and an input / output (I / O) chip 912 connected to the input / output controller 906.
  • the host controller 901 connects the RAM 903, the CPU 902 that accesses the RAM 903 at a high transfer rate, and the graphic controller 904.
  • the CPU 902 operates based on programs stored in the ROM 910 and the RAM 903 to control each unit.
  • the graphic controller 904 acquires image data generated by the CPU 902 or the like on a frame buffer provided in the RAM 903 and displays the image data on the display device 905.
  • the graphic controller 904 may include a frame buffer for storing image data generated by the CPU 902 or the like.
  • the input / output controller 906 connects the host controller 901 to the hard disk drive 908, the communication interface 907, and the CD-ROM drive 909, which are relatively high-speed input / output devices.
  • the hard disk drive 908 stores programs and data used by the CPU 902.
  • the communication interface 907 transmits / receives a program or data by connecting to another communication terminal.
  • the CD-ROM drive 909 reads a program or data from the CD-ROM 992 and provides it to the hard disk drive 908 and the communication interface 907 via the RAM 903.
  • the input / output controller 906 is connected to a ROM 910, a flexible disk drive 911, and a relatively low-speed input / output device such as an input / output chip 912.
  • the ROM 910 stores a boot program executed when the communication terminal 510 is started up, a program depending on the hardware of the communication terminal 510, and the like.
  • the flexible disk drive 911 reads a program or data from the flexible disk 993 and provides it to the hard disk drive 908 and the communication interface 907 via the RAM 903.
  • the input / output chip 912 connects various input / output devices via the flexible disk drive 911 or a parallel port, a serial port, a keyboard port, a mouse port, and the like.
  • the program executed by the CPU 902 is stored in a recording medium such as the flexible disk 993, the CD-ROM 992, or an IC (Integrated Circuit) card and provided by the user.
  • the program stored in the recording medium may be compressed or uncompressed.
  • the program is installed in the hard disk drive 908 from the recording medium, read into the RAM 903, and executed by the CPU 902.
  • the program executed by the CPU 902 causes the communication terminal 510 to function as a wireless communication unit, a control unit, a storage unit, an application unit, and the like in each of the above-described embodiments.
  • the programs shown above may be stored in an external storage medium.
  • storage media in addition to the flexible disk 993 and CD-ROM 992, optical recording media such as DVD (Digital Versatile Disk) or PD (Phase Disk), magneto-optical recording media such as MD (MiniDisk), tape media, IC cards
  • DVD Digital Versatile Disk
  • PD Phase Disk
  • MD Magneto-optical recording media
  • tape media IC cards
  • an information sharing system may be provided as a program via a network by using a storage medium such as a hard disk or a RAM provided in a server system connected to a dedicated communication network or the Internet as a recording medium.
  • connection rule is stored in the storage unit of the communication terminal, and the control unit of the unconnected communication terminal determines one other communication terminal as a connection partner according to the connection rule when the other communication terminal is found.
  • the connection rule may be, for example, a rule that a connection is preferentially made to an unconnected terminal over a GO.
  • the connection rule may be a rule for connecting to a client instead of a GO even when a GO is found when connecting to a configured group.
  • the method for the control unit of the communication terminal in an unconnected state to find another communication terminal capable of hosting a permanent group with its own communication terminal is not limited to the method of checking the Persistent P2P Group bit or the Persistent Reconnect bit.
  • a list of communication addresses (for example, MAC addresses) of other communication terminals capable of hosting the own communication terminal and the permanent group is stored in the storage unit of the own communication terminal, and the communication addresses of the other communication terminals found are listed above. You may use the method of investigating whether it is described. Note that the present invention enjoys the benefit of the priority claim based on the patent application of Japanese Patent Application No. 2013-143765 filed on July 09, 2013 in Japan, and is described in the patent application. The contents are all included in this specification.
  • the present invention automatically configures a communication network, particularly a communication network in which one communication terminal of a plurality of communication terminals functions as a parent having the function of an access point, and the remaining communication terminals function as children for the parent. It can be applied to the method.
  • Communication terminal 111 Communication terminal 111 ... Wireless communication unit 112 ... Control unit 113 ... Application unit 114 ... Storage unit 115 ... Antenna

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Databases & Information Systems (AREA)

Abstract

通信ネットワークに接続されていない第1の通信端末は、自通信端末の周囲に存在する第2の通信端末を探索する。上記通信ネットワークは、複数の通信端末のうちの一の通信端末がアクセスポイントの機能を有する親として機能し、残りの通信端末が上記親に対する子として機能する。第1の通信端末は、上記探索によって発見した1以上の第2の通信端末から受信した通信メッセージに含まれる情報に基づいて、1以上の第2の通信端末の中から接続相手とする一の第2の通信端末を決定し、この決定した接続相手と通信ネットワークを構成する。

Description

通信端末
 本発明は、通信端末、ネットワーク構成方法、およびプログラムに関する。
 短距離通信ネットワークの一種に、Wi-Fi Direct仕様に準拠する通信ネットワークがある(例えば非特許文献1参照)。Wi-Fi Direct仕様に準拠する通信ネットワークでは、或る1つのネットワークに参加する複数の通信端末の内の一の通信端末がアクセスポイント機能を有する親として機能し、残りの通信端末が上記親に対する子として機能する。Wi-Fi Direct仕様に準拠する通信ネットワークは、1対1の接続しか行えないWi-Fi Ad-hocネットワークと比較して、1対複数の接続が可能であること、親経由で子どうしの通信が可能であること、セキュリティが比較的強度であること等の特徴がある。このため、Wi-Fi Direct仕様に準拠する通信ネットワークは、近年、データ共有等の各種の用途に利用されるようになっている。本発明は、このようなWi-Fi Direct仕様に準拠する通信ネットワークを構成する方法に関する。但し、本発明は、Wi-Fi Direct仕様に準拠する通信ネットワークのみに適用が限定されるものではない。
 Wi-Fi Direct仕様に準拠する通信ネットワークを構成する方法の一例が特許文献1に記載されている。特許文献1では、各通信端末は、P2P(Peer to Peer)能力情報を交換するために、ユーザの介入を伴わずに、他の通信端末と情報を交換して、P2P接続の確立を求めることが可能である。上記P2P能力情報の交換では、接続タイプ(Wi-Fi Direct等)、プロトコル、対応する認証、またはセキュリティメソッド等を示すパラメータ情報を交換する。そして、各通信端末は、発見されたP2Pタイプ等に基づいて、他の通信端末とのP2P接続を確立するか否かを決定する。例えば、通信端末が、VoIPサービスを使用するために、Wi-Fi Directのネットワーク接続タイプを介して、別の通信端末と接続するように要求する。その際、2つの通信端末だけのP2P接続を確立するケースと、2つ以上の通信端末間でP2P接続を確立するケースとが例示されている。
特表2013-507029号公報
Wi-Fi Alliance Technical Committee P2P Task Group Wi-Fi Peer-to-Peer(P2P)Technical Specification Version1.1
 ところで、非特許文献1には、通信ネットワークに接続していない通信端末が、他の通信端末との間で探索に係る通信メッセージを授受することによって、周囲の通信端末を探索する手続きが規定されている。しかしながら、上記探索において1以上の他の通信端末が発見された際に接続相手を決定する方法については、非特許文献1および特許文献1に記載がない。通信端末の利用者に対して、発見された1以上の他の通信端末に関する情報を提示し、利用者によって一の通信端末を選択させる方法では、自動的な接続は困難である。
 本発明の目的は、上述した課題、即ち、通信ネットワークに接続していない通信端末を他の通信端末に自動的に接続するのは困難である、という課題を解決するネットワーク構成方法を提供することにある。
 本発明の第1の観点に係るネットワーク構成方法は、
 複数の通信端末のうちの一の上記通信端末がアクセスポイントの機能を有する親として機能し、残りの上記通信端末が上記親に対する子として機能する通信ネットワークを構成する方法であって、
 上記通信ネットワークに接続されていない第1の通信端末が、自通信端末の周囲に存在する第2の通信端末を探索し、
 上記第1の通信端末が、上記探索によって発見した1以上の上記第2の通信端末から受信した通信メッセージに含まれる情報に基づいて、上記1以上の上記第2の通信端末の中から接続相手とする一の上記第2の通信端末を決定し、該決定した接続相手と上記通信ネットワークを構成する。
 本発明の第2の観点に係る通信端末は、
 複数の通信端末のうちの一の上記通信端末がアクセスポイントの機能を有する親として機能し、残りの上記通信端末が上記親に対する子として機能する通信ネットワークを構成する上記通信端末であって、
 他の通信端末との間で通信メッセージを授受する無線通信部と、
 上記無線通信部に接続された制御部と
を有し、
 上記制御部は、
 自通信端末の周囲に存在する他の通信端末を探索し、
 上記探索によって発見した1以上の上記他の通信端末から受信した通信メッセージに含まれる情報に基づいて、上記1以上の上記他の通信端末の中から接続相手とする一の上記他の通信端末を決定し、
 上記決定した接続相手と上記ネットワークを構成する。
 本発明の第3の観点にかかるネットワーク構成方法は、
 複数の通信端末のうちの一の上記通信端末がアクセスポイントの機能を有する親として機能し、残りの上記通信端末が上記親に対する子として機能する通信ネットワークを構成する上記通信端末が実行するネットワーク構成方法であって、
 自通信端末の周囲に存在する他の通信端末を探索し、
 上記探索によって発見した1以上の上記他の通信端末から受信した通信メッセージに含まれる情報に基づいて、上記1以上の上記他の通信端末の中から接続相手とする一の上記他の通信端末を決定し、
 上記決定した接続相手と上記ネットワークを構成する。
 本発明の第4の観点に係るプログラムは、
 複数の通信端末のうちの一の上記通信端末がアクセスポイントの機能を有する親として機能し、残りの上記通信端末が上記親に対する子として機能する通信ネットワークを構成する上記通信端末が有するコンピュータを、
 他の通信端末との間で通信メッセージを授受する無線通信部と、
 上記無線通信部に接続された制御部と
して機能させ、
 上記制御部は、
 自通信端末の周囲に存在する他の通信端末を探索し、
 上記探索によって発見した1以上の上記他の通信端末から受信した通信メッセージに含まれる情報に基づいて、上記1以上の上記他の通信端末の中から接続相手とする一の上記他の通信端末を決定し、
 上記決定した接続相手と上記ネットワークを構成する。
 本発明は上述した構成を有するため、通信ネットワークに接続していない通信端末を他の通信端末に自動的に接続することができる。
本発明の第1の実施形態に係る通信端末のブロック図である。 本発明の第1の実施形態に係る通信端末の動作を示すフローチャートである。 本発明の第2の実施形態に係る通信端末のブロック図である。 本発明の第2の実施形態に係る通信端末が他の通信端末に接続する手順の概要を示すフローチャートである。 本発明の第2の実施形態における通信端末が実施するDevice Discoveryの詳細を示すフローチャートである。 本発明の第2の実施形態に係る通信端末が他の通信端末との間で実施するDevice Discovery動作の概要を示す図である。 本発明の第2の実施形態に係る通信端末がグループ構築済みの他の通信端末との間で実施するDevice Discovery動作の概要を示す図である。 本発明の第2の実施形態に係る通信端末が他の通信端末から受信するProbe Responseから当該他の通信端末が対応可能な認証方式を取得する概念図である。 本発明の第2の実施形態に係る通信端末が他の通信端末に接続する手順の一例を示すフローチャートである。 本発明の第2の実施形態に係る通信端末が他の通信端末と実施するGO Negotiationの概要を示す図である。 本発明の第2の実施形態に係る通信端末が他の通信端末と実施するWPSProvisioning Phase1の概要を示す図である。 本発明の第2の実施形態に係る通信端末が他の通信端末と実施するWPSProvisioning Phase2の概要を示す図である。 本発明の第2の実施形態に係る通信端末が他の通信端末に接続する手順の別の一例を示すフローチャートである。 本発明の第2の実施形態に係る通信端末が他の通信端末と実施するProvision Discoveryの概要を示す図である。 本発明の第2の実施形態に係る通信端末が他の通信端末に接続する手順の更に別の一例を示すフローチャートである。 本発明の第2の実施形態に係る通信端末が他の通信端末と実施するInvitationの概要を示す図である。 本発明の第3の実施形態に係る通信端末のブロック図である。 本発明の第3の実施形態における通信端末が実施するDevice Discoveryの詳細を示すフローチャートである。 本発明の第4の実施形態に係る通信端末のブロック図である。 本発明の第5の実施形態に係る通信端末のブロック図である。
 次に本発明の実施の形態について図面を参照して詳細に説明する。
[第1の実施形態]
 図1を参照すると、本発明の第1の実施形態にかかる通信端末110は、Wi-Fi Direct仕様に準拠する通信ネットワークを形成する無線通信端末である。通信端末110は、無線通信部111と制御部112とアプリケーション部113と記憶部114とアンテナ115とを有する。
 無線通信部111は、他の通信端末との間で無線によって通信メッセージを授受する機能を有する。無線通信部111は、送信時には、制御部112からの要求に応じて通信メッセージのパケットを作成し、作成したパケットに対してヘッダや誤り検出符号の付加などの処理を行い、処理後のデータから搬送波の周波数帯の変調信号を生成し、アンテナ115から無線信号として送信する。また、無線通信部111は、受信時には、アンテナ115により受信した無線信号を復調して通信メッセージのパケットを復号し、誤り検出符号に基づいて誤りがないことを確認した通信メッセージを制御部112に通知する。
 制御部112は、無線通信部111における利用周波数の決定、各種通信メッセージの作成と送信指示、受信した各種通信メッセージの解釈、接続処理の制御など、通信端末110全体の制御を司る機能を有する。
 例えば、制御部112は、自通信端末が通信ネットワークに接続されていない場合、自通信端末の周囲に存在する他の通信端末と無線通信部111を通じて探索に係る通信メッセージを授受することによって、自通信端末の周囲に存在する他の通信端末を探索する機能を有する。この周囲の通信端末の探索は、例えば、Wi-Fi Direct仕様のデバイス・ディスカバリ・プロシージャ(Device Discovery Procedure)に準拠して行われる。
 具体的には、制御部112は、プローブ要求(Prove Request)を周囲に送信し、プローブ応答(Prove Response)の受信を待つ。そして、制御部112は、プローブ応答を受信することで、自通信端末の周囲に他の通信端末が存在することを認識する。また制御部112は、受信したプローブ応答を解析することで、周囲に存在する他の通信端末の通信アドレス(例えばMACアドレス)、ネットワークへの接続状態、親の可否などを認識する。
 Wi-Fi Direct仕様によれば、プローブ応答には、当該プローブ応答を送信した通信端末のMACアドレスが含まれている。またWi-Fi Direct仕様によれば、プローブ応答は、P2P Capability、P2P Device Info、P2P Group Info等の属性を有する。P2P Capabilityは、Group Capability Bitmap等のフィールドを有する。Group Capability Bitmapは、P2P Group Owner、Persistent P2P Group、Persistent Reconnect等のビットを有する。そして、当該他の通信端末がGOであれば、P2P Group Ownerビットは1にセットされる。また、当該他の通信端末が永続的グループ(Persistent P2P Group)を主催(host)している、もしくはホストすることが可能な状態(以下、このような状態を永続的グループをホスト可能な状態と記す)である場合、Persistent P2P Groupビットや、Persistent Reconnectビットは1にセットされる。ここで、永続的グループとは、グループ構築時に使用したクレデンシャル(Credentials)を後のグループ構築時に再利用可能に記憶しているグループであり、詳細は非特許文献1に記載されている。
 また、P2P Device Infoは、P2P Device Address、Config Methods等のフィールドを有する。P2P Device Addressは、当該他の通信端末を一意に識別する識別子である。Config Methodsには、当該他の通信端末がサポートするWSC(Wi-Fi Simple Configuration)Methodsに関する情報(例えば、PINやPBC等の認証方式)が記述されている。他方、P2P Group Infoは、GOから返されるプローブ応答のみに含まれ、P2P Client Info Descriptor等のフィールドを有する。P2P Client Info Descriptorは、当該GOのグループに属するクライアントに関する情報が含まれている。
 また制御部112は、上記探索によって発見した1以上の他の通信端末から受信した通信メッセージに含まれる情報に基づいて、上記1以上の他の通信端末の中から接続相手とする一の他の通信端末を決定し、この決定した接続相手と通信ネットワークを構成する機能を有する。制御部112が、他の通信端末から受信した通信メッセージに含まれる情報に基づいて接続相手を決定する方法の例を以下に示す。
(1)接続相手の決定方法1
 通信端末110は、通信端末の通信アドレス(例えばMACアドレス)のリストを記憶部114に記憶する。制御部112は、探索によって発見した他の通信端末から受信した通信メッセージから当該他の通信端末の通信アドレスを取得する。次に、制御部112は、取得した通信アドレスを上記リスト中の通信アドレスと照合し、受信した通信アドレスが、上記リストに記載されているか否かを判定する。制御部112は、発見した1以上の他の通信端末のうち、その通信アドレスが上記リストに記載されている一の他の通信端末を接続相手に決定する。この決定方法によれば、通信ネットワークに接続していない通信端末を、予めリストアップした他の通信端末に自動的に接続することができる。
(2)接続相手の決定方法2
 通信端末110は、通信端末の複数の状態と状態間の優先順位とを記憶部114に記憶する。ここで、通信端末の状態とは、ネットワークに接続しているか否かを示す状態、親として機能しているか否かを示す状態、永続的グループをホスト可能な状態などを意味する。制御部112は、探索によって発見した他の通信端末から受信した通信メッセージから当該他の通信端末の状態を取得する。制御部112は、例えば、受信したProbe Response中にP2P Group Info属性が存在しない場合、当該Probe Responseを送信した他の通信端末は、未接続状態であると判定する。また制御部112は、例えば、P2P Capability属性中のGroup Capability BitmapフィールドにおけるP2P Group Ownerビットから、当該他の通信端末がGOか否かの状態を取得する。また制御部112は、例えば、P2P Capability属性中のGroup Capability BitmapフィールドにおけるPersistent P2P GroupビットやPersistent Reconnectビットから、当該他の通信端末が永続的グループをホスト可能な状態か否かを取得する。
 そして制御部112は、優先順位のより高い状態を有する一の他の通信端末を接続相手に決定する。
 この決定方法によれば、ネットワークに接続していない状態に比べて、ネットワークに接続済みかつ親として機能している状態の優先順位を高く設定しておくことにより、通信ネットワークに接続していない通信端末を、ネットワークに接続しており且つ親として機能している他の通信端末に自動的に接続することができる。反対に、親として機能している状態に比べて、ネットワークに接続していない状態の優先順位を高く設定しておくことにより、通信ネットワークに接続していない通信端末を、通信ネットワークに接続していない他の通信端末に自動的に接続することができる。さらに、永続的グループをホスト可能な状態の優先順位を、永続的グループをホスト不可能な状態に比べて高く設定しておくことにより、高速な接続が可能になる。
 通信メッセージに含まれる情報に基づいて接続相手を決定する方法は、上記の決定方法1と決定方法2とに限定されず、決定方法1と決定方法2とを組み合わせる方法や、他の方法であってもよい。
 アプリケーション部113は、アプリケーションプログラムを実行する機能を有する。アプリケーションプログラムの種類と個数は任意である。例えば、アプリケーション部113では、通信ネットワークに接続される他の通信端末との間で、音声通話を行うアプリケーション、ファイル転送を行うアプリケーション、コンテンツデータを交換するアプリケーション等を実行することが可能である。
 記憶部114は、ROM(Read Only Memory)やRAM(Random Access Memory)やハードディスクなどの記憶装置で構成され、プログラムおよび各種のデータを記憶する。記憶するデータには、制御データとアプリケーションデータとがある。制御データには、例えば、自通信端末110が通信ネットワークに接続されているか否かを表す自通信端末ステータス情報、自通信端末110が通信ネットワークに接続されている場合の親の情報、探索した他の通信端末から受信した情報(当該通信端末の通信アドレス、端末名、ステータス情報(通信ネットワークに接続されていない未接続端末、接続済み親端末、永続的グループをホスト可能な状態か否かを表す他通信端末ステータス情報)などがある。アプリケーションデータには、アプリケーション部113が他の通信端末と共有するコンテンツデータなどがある。記憶するプログラムには、アプリケーション部113で実行するアプリケーションプログラムなどがある。
 次に、本実施形態に係る通信端末110の動作を説明する。
 通信端末110の制御部112は起動されると、図2に示す処理の実行を開始する。まず、制御部112は、自通信端末の周囲に存在する他の通信端末との間で無線通信部111を通じて探索に係る通信メッセージを授受することによって、周囲の通信端末を探索する(ステップS101)。この周囲の通信端末の探索は、例えば、Wi-Fi Direct仕様のデバイス・ディスカバリ・プロシージャに準拠して行われる。制御部112は、1以上の通信端末を発見すると、ステップS102の処理へと進む。他方、通信端末を一つも発見できない場合、制御部112は、ステップS101に留まり、周囲の通信端末を探索する処理を継続する。
 次に通信端末110の制御部112は、ステップS102において、上記探索によって発見した1以上の通信端末の中から接続相手を決定する。具体的には、制御部112は、上記探索によって発見した1以上の他の通信端末から受信した通信メッセージに含まれる情報に基づいて、上記1以上の他の通信端末の中から接続相手とする一の他の通信端末を決定する。そして、接続相手とする一の他の通信端末を決定した場合(ステップS103でYES)、制御部112はステップS104の処理へと進む。また、接続相手とする一の他の通信端末が決定されなかった場合(ステップS103でNO)、制御部112は、ステップS101に戻り、周囲の通信端末を探索する処理を継続する。
 次に通信端末110の制御部112は、ステップS104において、接続相手に決定した他の通信端末との間で無線通信部111を通じて通信メッセージを授受して、通信ネットワークを構成する。その後、通信端末110は、アプリケーション部113により、通信ネットワークに接続される他の通信端末との間でアプリケーションデータの送受信を開始する。
 このように本実施形態によれば、通信ネットワークに接続していない通信端末110を他の通信端末に自動的に接続することができる。その理由は、通信端末110は、探索によって発見した1以上の他の通信端末から受信した通信メッセージに含まれる情報に基づいて、当該1以上の他の通信端末の中から接続相手とする一の他の通信端末を決定し、この決定した接続相手とネットワークを構成するためである。
[第2の実施形態]
 本実施形態では、主に本発明に係る通信端末のソフトウェア構造の詳細について説明する。図3を参照すると、本発明の第2の実施形態にかかる通信端末(ノード)210は、Wi-Fiデバイス211と、WFD接続処理部212と、User制御部213とを有する。図1との対比では、Wi-Fiデバイス211は無線通信部111に相当し、WFD接続処理部212とUser制御部213とは、制御部112と記憶部114とに相当する。なお、Wi-Fiデバイス211は、図示しない無線LANのハードウェアにインストールされている。また、WFD接続処理部212とUser制御部213とは、図示しないMPUにインストールされている。
 Wi-Fiデバイス211は、無線LANのデバイスドライバである。
 WFD接続処理部212は、Wi-Fi Directのパケットを生成受信するブロックである。WFD接続処理部212は、Wi-Fi Direct接続のためのWi-Fiデバイス制御を行う。制御は、“Device Discovery”、“Group Formation”、“WPS(Wi-Fi Protected Setup)Provisioning Phase1”、“WPS Provisioning Phase2”といった単位で実行される。User制御部213からイベントを受信して制御を開始し、その結果をイベントとしてUser制御部213に通知する。
 User制御部213は、Wi-Fi Directによる自動接続を実現するブロックである。User制御部213は、WFD接続処理部212に接続して情報を送受信するイベント送信部214およびイベント受信部215と、自ノードのステートを保持する自ノードステート保持部216と、他ノードのMACアドレスとステートのリストを保持する他ノードステート保持部217と、内部ステート制御部218とを有する。
 自ノードステート保持部216には、自ノードのステートとして、IDLE(接続無し)、DISC(ノード発見)、CONN(接続中)、CLI(クライアントとして接続中)、GO(グループオーナーとして接続中)の何れかと、P_GRP(永続的グループをホスト可能な状態を示す情報)が記憶される。永続的グループをホスト可能な状態を示す情報は、1or0と、永続的グループを一意に識別する識別子とを有する。ここで、1は永続的グループをホスト可能な状態を示し、0はそれが不可能な状態を示す。
 他ノードステート保持部217には、他ノードのステートとして、LOST(未接続)、FOUND(クライアントとして接続中)、GROUP(グループオーナーとして接続中)の何れかと、P_GRP(永続的グループをホスト可能な状態を示す情報)が記憶される。
 内部ステート制御部218は、イベント受信部215を通じてWFD接続処理部212から受信したイベント種別と、自ノードステート保持部216に記憶されている自ノードのステートと、他ノードステート保持部217に記憶されている他ノードのステートとに基づいて、適切なコマンドを選択、生成することで、隣接したWi-Fi Direct対応ノード間でグループを構成する。
 図4は、通信端末210が他の通信端末に接続する手順の概要を示す。通信端末210は、先ず、“Device Discovery”により、他ノードを探索し、接続相手を決定する。以降の手順は、通信端末210および決定した接続相手のステートの種類に応じて相違する。
 接続相手の他ノードが自ノードと同じく未接続ノードであり、且つ自通信端末210と同一の永続的グループに属していないか、或いは属していても自通信端末210または他ノードが永続的グループをホスト不可能なノードである場合、“GO Negotiation”、“WPS Provisioning Phase1”、“WPS Provisioning Phase2”がその順に実行される(図4のCase1)。
 また接続相手に決定した他ノードがGOであり、且つ自通信端末210と同一の永続的グループに属していないか、或いは属していても自通信端末210または他ノードが永続的グループをホスト不可能である場合、“Provisioning Discovery”、“WPS Provisioning Phase1”、“WPS Provisioning Phase2”がその順に実行される(図4のCase2)。
 また接続相手に決定した他ノードが通信端末210と同一の永続的グループに属し、且つ自通信端末210または他ノードが永続的グループをホスト可能である場合、“Invitation”、“WPS Provisioning Phase2”がその順に実行される(図4のCase3)。
 図5は、Device Discoveryの手順の詳細を示すフローチャートである。まず通信端末210のUser制御部213は、検索要求をWFD接続処理部212に対して発行する(ステップS201)。WDF接続処理部212は、この検索要求に従い、Device Discovery処理を実行する(ステップS202)。
 図6は、Device Discovery処理の概要を示す。通信端末210のWDF接続処理部212は、User制御部213からの検索要求を受け、隣接ノードを検索する。Discovery中は、Searchステート、Listenステートが交互に切り替わる。Searchステートでは、チャネルを1、6、11に順番に切り替え、Probe Requestを送出し、隣接ノードからProbe Responseが返るのを待つ。Listenステートでは、他ノードからのProbe Requestを待ち、Probe Requestを受けてProbe Responseを返す。隣接ノードからのProbe Responseを受け、検索結果としてProbe Responseに含まれる当該隣接ノードの情報を返す。一定時間(例えば30秒)経過しても隣接ノードからのProbe Responseを受信できない場合、隣接ノードが発見されなかった旨の検索結果を返す。
 図7は、構築済みグループに対するDevice Discovery処理の概要を示す。通信端末210の周囲に構築済みグループが存在する場合、通信端末210が送出したProbe Requestに対して、構築済みグループのGOがProbe Responseを返す。GOが返すProbe Responseには、P2P GROUP Info属性が存在し、その中にグループに属するクライアントのリストが入っている。
 また、図8に示されるように、Probe Requestには、当該隣接ノードが対応可能は認証方式に関する情報を記述したWSC Config Methodsが存在する。認証方式には、PIN(Personal Identification Number)とPBC(Push Button Control)の2種類が存在する。Device Discoveryを実施した通信端末210は、隣接ノードからProbe Responseにより通知された認証情報のリストから、使用する認証方式を選択して接続する。PINを選択する場合、本実施形態では、予め利用者によって決められたPIN番号を使用することで自動化を実現する。
 通信端末210のUser制御部213は、WFD接続処理部212から検索結果を受信すると(図5のステップS203)、検索結果を解析して他ノードを発見したか否かを判定する(ステップS204)。他ノードを発見しなかった場合、User制御部213は、WFD接続制御部212に対して再び検索要求を発行する(ステップS201)。ステップS201~S204のループは、他ノードが発見されるまで繰り返される。
 他方、通信端末210のUser制御部213は、他ノードを発見すると、検索結果に含まれる隣接ノードの情報を解析して、永続的グループをホスト可能なGOを発見したか否かを判定する(ステップS205)。ここで、永続的グループをホスト可能なGOとは、自通信端末と同一の永続的グループに属し当該永続的グループをホスト可能な他の通信端末であって、通信ネットワークに接続済みで親として機能している通信端末を意味する。そして、発見した場合、User制御部213は、その発見した永続的グループをホスト可能なGOに接続する処理へと進む。また、永続的グループをホスト可能なGOを発見していない場合、User制御部213は、永続的グループをホスト不可能なGOを発見したか否かを判定する(ステップS206)。ここで、永続的グループをホスト不可能なGOとは、自通信端末と同一の永続的グループに属していないか、或いは属していても当該永続的グループをホスト不可能な他の通信端末であって、通信ネットワークに接続済みで親として機能している通信端末を意味する。そして、永続的グループをホスト不可能なGOを発見した場合、User制御部213は、その発見した永続的グループをホスト不可能なGOに接続する処理へと進む。さらに、永続的グループをホスト可能なGOおよび永続的グループをホスト不可能なGOを発見しておらず、未接続のノードを発見している場合、User制御部213は、検索要求を発行してから一定時間が経過したか否かを判定する(ステップS207)。そして、一定時間が経過していなければ、User制御部213は、WFD接続処理部212から別のノードを発見した旨の検索結果が出される可能性があるので、ステップS203に戻って検索結果の受信を待ち合わせる。一方、検索要求発行から一定時間が経過していれば、発見された当該未接続状態の他ノードに接続する処理へと進む。発見した未接続ノードのうち、Persistent Groupをホスト可能なビットが立っているノード、即ち自通信端末と同一の永続的グループに属し、且つ当該永続的グループをホスト可能な状態の端末に優先的に接続する。
 図9は、通信端末210が、発見した未接続状態の他のノードとグループを形成するまでの処理の概要を示す。ここで、通信端末210と接続相手の他のノードとは同一の永続的グループに属していないか、或いは属していても通信端末210または他ノードは永続的グループをホスト可能な状態でない。まず、通信端末210のUser制御部213は、接続種別:GO Negotiation、認証種別:PIN or PBCをパラメータとして、WFD接続処理部212に対して接続要求を発行する(ステップS211)。通信端末210のWFD接続処理部212は、この接続要求を受けると、他のノードとの間でGO Negotiation処理(ステップS212)、WPS Provisioning Phase1処理(ステップS213)、WPS Provisioning Phase2処理(ステップS214)を順に実行する。そして、上記一連の処理の完了後、WFD接続処理部212からUser制御部213に対して接続完了の通知が出され(ステップS215)、端末間のグループ形成の処理を終える。
 ステップS212のGO Negotiation処理では、図10に示すように、通信端末210と接続相手の他ノードとの間で、GO Negotiation Request、GO Negotiation Response、GO Negotiation Confirmationを授受することにより、何れか一方のノードがGOに決定される。図10は、他のノードがGOに決定され、通信端末210がクライアントとして動作している。GOとなったノードは、Beaconを定期的に送信するようになる。
 ステップS213のWPS Provisioning Phase1処理では、図11に示すように、通信端末210と接続相手の他ノードとの間で、Auth.Request、Auth.Response、Assoc.Request、Assoc.Response、EAP RequestID、EAP ResponseID、WSC Start、M1~M8、WSC Done、EAP Failが授受される。
 ステップS214のWPS Provisioning Phase2処理では、図12に示すように、通信端末210と接続相手の他ノードとの間で、Deauthenticate、Deauthenticate、Auth.Request、Auth.Response、Re-assoc.Request、Re-assoc.Response、key1~key4が授受される。そして、WFD接続処理部212からUser制御部213に接続完了が通知される。
 図13は、通信端末210が既存のGOに接続するまでの処理の概要を示す。ここで、通信端末210と接続相手の他のノードとは同一の永続的グループに属していないか、或いは属していても他ノードは永続的グループをホスト可能な状態でない。まず、通信端末210のUser制御部213は、接続種別:Provisioning Discovery、認証種別:PIN or PBCをパラメータとして、WFD接続処理部212に対して接続要求を発行する(ステップS221)。通信端末210のWFD接続処理部212は、この接続要求を受けると、接続相手の他のノード(GO)との間でProvisioning Discovery処理(ステップS222)、WPS Provisioning Phase1処理(ステップS223)、WPS Provisioning Phase2処理(ステップS224)を順に実行する。そして、上記一連の処理の完了後、WFD接続処理部212からUser制御部213に対して接続完了の通知が出され(ステップS225)、既存のGOへの接続の処理を終える。
 ステップS222のProvisioning Discovery処理では、図14に示すように、通信端末210と接続相手の既存のGOとの間で、Provision Discovery Request、Provision Discovery Responseが授受される。
 図15は、通信端末210が、自通信端末と同一の永続的グループに属するホスト可能なノードに接続するまでの処理の概要を示す。まず、通信端末210のUser制御部213は、接続種別:Invitation、認証種別:PIN or PBCをパラメータとして、WFD接続処理部212に対して接続要求を発行する(ステップS221)。通信端末210のWFD接続処理部212は、この接続要求を受けると、接続相手の他のノードとの間でInvitation処理(ステップS232)、WPS Provisioning Phase2処理(ステップS233)を順に実行する。そして、上記一連の処理の完了後、WFD接続処理部212からUser制御部213に対して接続完了の通知が出され(ステップS225)、永続的グループをホスト可能なノードへの接続の処理を終える。図15と図9および図13と比較すると明らかなように、接続相手が永続的グループをホスト可能なノードの場合には、WPS Provisioning Phase1処理は不要であり、接続完了までに要する時間を短縮することができる。
 ステップS232のInvitation処理では、図16に示すように、通信端末210と接続相手の永続的グループをホスト可能なノードとの間で、Invitation Request、Invitation Responseが授受される。
 本実施形態によれば、通信ネットワークに接続していない通信端末210を他の通信端末に自動的に接続することができる。その理由は、通信端末210は、探索によって発見した1以上の他の通信端末から受信した通信メッセージに含まれる情報に基づいて、当該1以上の他の通信端末の中から接続相手とする一の他の通信端末を決定し、この決定した接続相手とネットワークを構成するためである。
 また本実施形態によれば、他の通信端末への迅速な接続を意図した通信端末210がそのことに失敗するのを防止することができる。その理由は、通信端末210は、発見された1以上の他の通信端末の中に自通信端末と同一の永続的グループに属し、且つ当該永続的グループをホスト可能な通信端末が存在していれば、当該永続的グループをホスト可能な通信端末を接続相手に決定するためである。
 また本実施形態によれば、通信端末数のより多いネットワークを形成することを意図した通信装置210がそのことに失敗するのを防止することができる。その理由は、通信端末210は、発見された1以上の他の通信端末の中にGOが存在していれば、GOを接続相手に決定するためである。
 また本実施形態によれば、PINおよびPBCの2種類の認証機構の何れでも自動接続が行える。その理由は、通信端末210は、PINおよびPBCの2種類の認証機構のうち接続相手から要求される認証機構を選択するように動作し、且つ、PIN番号は予め複数の通信端末間で決められた値を使用するためである。
[第3の実施形態]
 図17を参照すると、本発明の第3の実施形態にかかる通信端末(ノード)310は、Wi-Fiデバイス311と、WFD接続処理部312と、User制御部313とを有する。Wi-Fiデバイス311とWFD接続処理部312とは、図3に示した第2の実施形態にかかる通信端末210のWi-Fiデバイス211とWFD接続処理部212と同じである。User制御部313は、イベント送信部314、イベント受信部315、自ノードステート保持部316、他ノードステート保持部317、内部ステート制御部318、および接続ノードリスト319を有する。接続ノードリスト319以外は、図3に示した第2の実施形態にかかる通信端末210のイベント送信部214、イベント受信部215、自ノードステート保持部216、他ノードステート保持部217、内部ステート制御部218と同じである。
 接続ノードリスト319は、接続を許可する通信端末の通信アドレス(例えばMACアドレス)の一覧である。通信端末310は、発見した他の通信端末の通信アドレスが接続ノードリスト319に記載されていなければ、当該他の通信端末には接続しない。接続ノードリスト319は、お互いに接続を許可する全ての通信端末で同じ内容としてよい。即ち、通信端末310が記憶する接続ノードリスト319には、接続を許可する他の通信端末の通信アドレスと、通信端末310自身の通信アドレスとが記載されていてよい。また、全ての通信端末が記憶する接続ノードリスト319に記載される通信アドレスの順序あるいはそれらに付されたインデックスは、同一であってよい。
 本実施形態にかかる通信端末310の動作は、Device Discovery以外、図3に示した第2の実施形態にかかる通信端末210の動作と同じである。
 図18は、本実施形態におけるDevice Discoveryの手順の詳細を示すフローチャートである。通信端末310のUser制御部313は、検索要求をWFD接続処理部312に対して発行し(ステップS301)、WDF接続処理部312は、Device Discovery処理を実行する(ステップS302)。そして、通信端末310のUser制御部313は、WFD接続処理部312から検索結果を受信すると(ステップS303)、検索結果を解析して他ノードを発見したか否かを判定する(ステップS304)。他ノードを発見しなかった場合、User制御部313は、WFD接続制御部312に対して再び検索要求を発行する(ステップS301)。ステップS301~S304のループは、他ノードが発見されるまで繰り返される。ここまでの処理は、図5に示した第2の実施形態におけるステップS201~S204の処理と同じである。
 通信端末310のUser制御部313は、他ノードを発見すると、発見した他ノードから受信したプローブ応答に含まれる当該他ノードのMACアドレスが接続ノードリスト319に記載されているか否かを判定する(ステップS305)。発見した他ノードのMACアドレスが接続ノードリスト319に記載されていなければ、User制御部313は、WFD接続制御部312に対して再び検索要求を発行する(ステップS301)。ステップS301~S305のループは、接続ノードリスト319にそのMACアドレスが記載されている他ノードが発見されるまで繰り返される。
 通信端末310のUser制御部313、接続ノードリスト319にMACアドレスが記載された他ノードを発見すると、当該発見した他ノードから受信したプローブ応答に含まれる当該ノードの情報を解析して、永続的グループをホスト可能なGOを発見したか否かを判定する(ステップS306)。そして、発見した場合、User制御部313は、その発見した永続的グループをホスト可能なGOに接続する処理へと進む。また、永続的グループをホスト可能なGOを発見していない場合、User制御部313は、永続的グループをホスト不可能なGOを発見したか否かを判定する(ステップS307)。さらに、永続的グループをホスト可能なGOおよび永続的グループをホスト不可能なGOを発見しておらず、未接続のノードを発見している場合、User制御部313は、検索要求を発行してから一定時間が経過したか否かを判定し(ステップS308)、一定時間が経過していなければ、ステップS303に戻って検索結果の受信を待ち合わせ、検索要求発行から一定時間が経過していれば、発見された当該未接続状態の他ノードに接続する処理へと進む。発見した未接続ノードのうち、Persistent Groupをホスト可能なビットが立っているノード、すなわち永続的グループをホスト可能なノードに優先的に接続する。
 このように本実施形態によれば、所定の通信端末に接続することを意図した通信装置310がそのことに失敗するのを防止することができる。その理由は、通信端末310は、発見された1以上の他の通信端末の中に、その通信アドレスが接続ノードリストに記載されている通信端末が存在しなければ、発見された他の通信端末を接続相手に決定しないためである。
 なお、接続ノードリスト319は、接続相手を選択するために利用する以外に、未接続状態の複数の通信端末が隣接してグループを形成する際のグループオーナーの決定に利用してよい。具体的には、図10に示したGO Negotiation処理において、接続ノードリスト319におけるMACアドレスの記載順序がより先頭に近い、或いはインデックスがより小さい通信端末をグループオーナーに決定するようにしてもよい。
[第4の実施形態]
 図19を参照すると、本発明の第4の実施形態にかかる通信端末410は、Wi-Fiデバイス411と、WFD接続処理部412と、User制御部413と、中間ファイル414と、アプリケーション部415とを有する。
 Wi-Fiデバイス411およびWFD接続処理部412は、図3に示した第2の実施形態にかかる通信端末210のWi-Fiデバイス211およびWFD接続処理部212と同様の機能を有する。また、User制御部413は、図3に示した第2の実施形態にかかる通信端末210のUser制御部213あるいは図17に示した第3の実施形態にかかる通信端末310のUser制御部313と同様の機能を有する。
 中間ファイル414は、WFD接続処理部412とアプリケーション部415との間の通信に使用される。即ち、WFD接続処理部412は、中間ファイル414を介してアプリケーション部415に接続される。
 アプリケーション部415は、Wi-Fi Direct接続APP(Application Software)(GUI)、Wi-Fiクラス、JNI(Java Native Interface)ライブラリ、WiFiライブラリを有する。アプリケーション部415は、図示しない入力装置を通じて利用者から入力されたコマンドを中間ファイル414を通じてWFD接続処理部412へ通知し、WFD接続処理部412からコマンドの実行結果を中間ファイル414を通じて受信し、図示しない表示画面に表示する。これにより、アプリケーション部415は、利用者による通信端末410の手動操作を実現する。
 User制御部413は、WFD接続処理部412からアプリケーション部415への通信を中間ファイル414にて傍受する。また、User制御部413は、アプリケーション部415になりすまして、中間ファイル414を通じてWFD接続処理部412へコマンドを送信する。これにより、User制御部413は、通信端末410の自動接続を実現する。
 通信端末410が、Linux/Androidに準拠する場合、Wi-Fiデバイス411は、例えばwlan0、Wi-Fi接続処理部412は、wpa_supplicant、中間ファイル414は、UNIX Domain Socket(例えば/var/run/wpa_supplicant/wlan0)で実現してよい。
 本実施形態によれば、User制御部413が、Wi-Fi接続処理部412とアプリケーション部415の通信に使われる中間ファイル414を傍受し、コマンドを割り込ませる構成を有するため、既存のアプリを改変せずにWi-Fi Directの自動接続を実現することができる。
[第5の実施形態]
 図20は、上述した各実施形態における通信端末をコンピュータ等の電子情報処理装置で構成した場合のハードウェア構成の一例を示す。この例の通信端末510は、CPU(Central Processing Unit)周辺部と、入出力部と、レガシー入出力部とを備える。CPU周辺部は、ホスト・コントローラ901により相互に接続されるCPU902、RAM903、グラフィック・コントローラ904、及び表示装置905を有する。入出力部は、入出力(I/O)コントローラ906によりホスト・コントローラ901に接続される通信インターフェイス(I/F)907、ハードディスクドライブ908、及びCD-ROM(Compact Disk Read Only Memory)ドライブ909を有する。レガシー入出力部は、入出力コントローラ906に接続されるROM(Read Only Memory)910、フレキシブルディスク(FD)ドライブ911、及び入出力(I/O)チップ912を有する。
 ホスト・コントローラ901は、RAM903と、高い転送レートでRAM903をアクセスするCPU902、及びグラフィック・コントローラ904とを接続する。CPU902は、ROM910、及びRAM903に格納されたプログラムに基づいて動作して、各部の制御をする。グラフィック・コントローラ904は、CPU902等がRAM903内に設けたフレーム・バッファ上に生成する画像データを取得して、表示装置905上に表示させる。これに代えて、グラフィック・コントローラ904は、CPU902等が生成する画像データを格納するフレーム・バッファを、内部に含んでもよい。
 入出力コントローラ906は、ホスト・コントローラ901と、比較的高速な入出力装置であるハードディスクドライブ908、通信インターフェイス907、CD-ROMドライブ909を接続する。ハードディスクドライブ908は、CPU902が使用するプログラム、及びデータを格納する。通信インターフェイス907は、他の通信端末に接続してプログラム又はデータを送受信する。CD-ROMドライブ909は、CD-ROM992からプログラム又はデータを読み取り、RAM903を介してハードディスクドライブ908、及び通信インターフェイス907に提供する。
 入出力コントローラ906には、ROM910と、フレキシブルディスク・ドライブ911、及び入出力チップ912の比較的低速な入出力装置とが接続される。ROM910は、通信端末510が起動時に実行するブート・プログラム、あるいは通信端末510のハードウェアに依存するプログラム等を格納する。フレキシブルディスク・ドライブ911は、フレキシブルディスク993からプログラム又はデータを読み取り、RAM903を介してハードディスクドライブ908、及び通信インターフェイス907に提供する。入出力チップ912は、フレキシブルディスク・ドライブ911、あるいはパラレル・ポート、シリアル・ポート、キーボード・ポート、マウス・ポート等を介して各種の入出力装置を接続する。
 CPU902が実行するプログラムは、フレキシブルディスク993、CD-ROM992、又はIC(Integrated Circuit)カード等の記録媒体に格納されて利用者によって提供される。記録媒体に格納されたプログラムは圧縮されていても非圧縮であってもよい。プログラムは、記録媒体からハードディスクドライブ908にインストールされ、RAM903に読み出されてCPU902により実行される。CPU902により実行されるプログラムは、通信端末510を、前述した各実施形態における無線通信部、制御部、記憶部、アプリケーション部等として機能させる。
 以上に示したプログラムは、外部の記憶媒体に格納されてもよい。記憶媒体としては、フレキシブルディスク993、CD-ROM992の他に、DVD(Digital Versatile Disk)又はPD(Phase Disk)等の光学記録媒体、MD(MiniDisk)等の光磁気記録媒体、テープ媒体、ICカード等の半導体メモリ等を用いることができる。また、専用通信ネットワークあるいはインターネットに接続されたサーバシステムに設けたハードディスク又はRAM等の記憶媒体を記録媒体として使用して、ネットワークを介したプログラムとして情報共有システムを提供してもよい。
[その他の実施形態]
 以上、本発明を幾つかの実施形態を挙げて説明したが、本発明は以上の実施形態にのみ限定されず、その他各種の付加変更が可能である。例えば、以下のような実施形態も本発明に含まれる。
 通信端末の記憶部に接続ルールを記憶し、未接続状態の通信端末の制御部は、他の通信端末を発見した場合、上記接続ルールに従って、接続相手とする一の他の通信端末を決定する。上記接続ルールは、例えば、GOよりも未接続端末に優先的に接続するというルールであってよい。或いは上記接続ルールは、構築済みのグループに接続する際には、GOが発見された場合であってもGOでなく、クライアントに接続するというルールであってよい。
 未接続状態の通信端末の制御部が、自通信端末との間で永続的グループをホスト可能な他の通信端末を発見する方法は、Persistent P2P Groupビットや、Persistent Reconnectビットを確認する方法以外に、自通信端末と永続的グループをホスト可能な他の通信端末の通信アドレス(例えばMACアドレス)のリストを自通信端末の記憶部に記憶し、発見した他の通信端末の通信アドレスが上記リストに記載されているか否かを調査する方法を使用してもよい。
 なお、本発明は、日本国にて2013年07月09日に特許出願された特願2013-143765の特許出願に基づく優先権主張の利益を享受するものであり、当該特許出願に記載された内容は、全て本明細書に含まれるものとする。
 本発明は、通信ネットワーク、特に、複数の通信端末のうちの一の通信端末がアクセスポイントの機能を有する親として機能し、残りの通信端末が親に対する子として機能する通信ネットワークを自動的に構成する方法に適用することができる。
110…通信端末
111…無線通信部
112…制御部
113…アプリケーション部
114…記憶部
115…アンテナ

Claims (15)

  1.  複数の通信端末のうちの一の前記通信端末がアクセスポイントの機能を有する親として機能し、残りの前記通信端末が前記親に対する子として機能する通信ネットワークを構成する方法であって、
     前記通信ネットワークに接続されていない第1の通信端末が、自通信端末の周囲に存在する第2の通信端末を探索し、
     前記第1の通信端末が、前記探索によって発見した1以上の前記第2の通信端末から受信した通信メッセージに含まれる情報に基づいて、前記1以上の前記第2の通信端末の中から接続相手とする一の前記第2の通信端末を決定し、該決定した接続相手と前記通信ネットワークを構成する
    ネットワーク構成方法。
  2.  前記第1の通信端末は、前記通信端末の通信アドレスのリストを記憶する記憶部を有し、前記探索によって発見した1以上の前記第2の通信端末から受信した通信メッセージに含まれる当該第2の通信端末の通信アドレスと前記リスト中の前記通信アドレスとを照合して、前記1以上の前記第2の通信端末の中から接続相手とする一の前記第2の通信端末を決定する
    請求項1に記載のネットワーク構成方法。
  3.  前記第1の通信端末は、前記通信端末の複数の状態と該状態間の優先順位とを記憶する記憶部を有し、前記探索によって発見した1以上の前記第2の通信端末から受信した通信メッセージに含まれる情報に基づいて当該第2の通信端末の状態を決定し、該決定した1以上の前記第2の通信端末の状態のうち前記優先順位のより高い状態を有する一の前記第2の通信端末を、前記接続相手とする一の前記第2の通信端末に決定する
    請求項1または2に記載のネットワーク構成方法。
  4.  前記記憶部は、前記通信端末の複数の状態として、前記通信ネットワークに接続していない第1の状態と前記通信ネットワークに接続済み且つ前記親として機能している第2の状態とを有し、前記状態間の優先順位では、前記第2の状態の方が前記第1の状態に比べて優先順位が高くなっている
    請求項3に記載のネットワーク構成方法。
  5.  前記記憶部は、前記通信端末の複数の状態として、前記通信ネットワークに未接続かつ永続的グループをホスト不可能な第1の状態と、前記通信ネットワークに未接続かつ永続的グループをホスト可能な第2の状態と、前記通信ネットワークに前記親として接続済かつ永続的グループをホスト不可能な第3の状態と、前記通信ネットワークに前記親として接続済かつ永続的グループをホスト可能な第4の状態とを有し、前記第4の状態、前記第3の状態、前記第2の状態、前記第1の状態の順に優先順位が高い
    請求項3に記載のネットワーク構成方法。
  6.  前記第1の通信端末は、前記ネットワークの構成では、接続相手に決定した一の前記第2の通信端末の状態に応じた接続手順を実行する
    請求項1乃至5の何れかに記載のネットワーク構成方法。
  7.  複数の通信端末のうちの一の前記通信端末がアクセスポイントの機能を有する親として機能し、残りの前記通信端末が前記親に対する子として機能する通信ネットワークを構成する前記通信端末であって、
     他の通信端末との間で通信メッセージを授受する無線通信部と、
     前記無線通信部に接続された制御部と
    を有し、
     前記制御部は、
     自通信端末の周囲に存在する他の通信端末を探索し、
     前記探索によって発見した1以上の前記他の通信端末から受信した通信メッセージに含まれる情報に基づいて、前記1以上の前記他の通信端末の中から接続相手とする一の前記他の通信端末を決定し、
     前記決定した接続相手と前記ネットワークを構成する
    通信端末。
  8.  前記通信端末の通信アドレスのリストを記憶する記憶部を有し、
     前記制御部は、前記探索によって発見した1以上の前記他の通信端末から受信した通信メッセージに含まれる当該他の通信端末の通信アドレスと前記リスト中の前記通信アドレスとを照合して、前記1以上の前記他の通信端末の中から接続相手とする一の前記他の通信端末を決定する
    請求項7に記載の通信端末。
  9.  前記通信端末の複数の状態と該状態間の優先順位とを記憶する記憶部を有し、
     前記制御部は、前記探索によって発見した1以上の前記他の通信端末から受信した通信メッセージに含まれる情報に基づいて当該他の通信端末の状態を決定し、該決定した1以上の前記他の通信端末の状態のうち前記優先順位のより高い状態を有する一の前記他の通信端末を、前記接続相手とする一の前記他の通信端末に決定する
    請求項7または8に記載の通信端末。
  10.  前記記憶部は、前記通信端末の複数の状態として、前記通信ネットワークに接続していない第1の状態と前記通信ネットワークに接続済み且つ前記親として機能している第2の状態とを有し、前記状態間の優先順位では、前記第2の状態の方が前記第1の状態に比べて優先順位が高くなっている
    請求項9に記載の通信端末。
  11.  前記記憶部は、前記通信端末の複数の状態として、前記通信ネットワークに未接続かつ永続的グループをホスト不可能な第1の状態と、前記通信ネットワークに未接続かつ永続的グループをホスト可能な第2の状態と、前記通信ネットワークに前記親として接続済かつ永続的グループをホスト不可能な第3の状態と、前記通信ネットワークに前記親として接続済かつ自通信端末の永続的グループである第4の状態とを有し、前記第4の状態、前記第3の状態、前記第2の状態、前記第1の状態の順に優先順位が高い
    請求項9に記載の通信端末。
  12.  前記制御部は、
     前記ネットワークの構成では、
     接続相手に決定した一の前記他の通信端末の状態に応じた接続手順を実行する
    請求項7乃至11の何れかに記載の通信端末。
  13.  前記無線通信部は、デバイスドライバを有し、
     前記制御部は、
     前記デバイスドライバに接続する接続制御部と、
     グラフィカルユーザインターフェイスを制御するアプリケーション部と前記接続制御部との間の通信に使用するUNIXドメインソケットの中間ファイルに接続し、前記中間フィルを通じて前記接続制御部から前記アプリケーション部への通信を傍受し、前記アプリケーション部になりすまして、前記中間ファイルを通じて前記接続処理部へコマンドを送信するユーザ制御部と
    を有する
    請求項7乃至12の何れかに記載の通信端末。
  14.  複数の通信端末のうちの一の前記通信端末がアクセスポイントの機能を有する親として機能し、残りの前記通信端末が前記親に対する子として機能する通信ネットワークを構成する前記通信端末が実行するネットワーク構成方法であって、
     自通信端末の周囲に存在する他の通信端末を探索し、
     前記探索によって発見した1以上の前記他の通信端末から受信した通信メッセージに含まれる情報に基づいて、前記1以上の前記他の通信端末の中から接続相手とする一の前記他の通信端末を決定し、
     前記決定した接続相手と前記ネットワークを構成する
    ネットワーク構成方法。
  15.  複数の通信端末のうちの一の前記通信端末がアクセスポイントの機能を有する親として機能し、残りの前記通信端末が前記親に対する子として機能する通信ネットワークを構成する前記通信端末が有するコンピュータを、
     他の通信端末との間で通信メッセージを授受する無線通信部と、
     前記無線通信部に接続された制御部と
    して機能させ、
     前記制御部は、
     自通信端末の周囲に存在する他の通信端末を探索し、
     前記探索によって発見した1以上の前記他の通信端末から受信した通信メッセージに含まれる情報に基づいて、前記1以上の前記他の通信端末の中から接続相手とする一の前記他の通信端末を決定し、
     前記決定した接続相手と前記ネットワークを構成する
    プログラム。
PCT/JP2014/003318 2013-07-09 2014-06-20 通信端末 WO2015004859A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2015526147A JP6515804B2 (ja) 2013-07-09 2014-06-20 通信端末
US14/903,090 US10314084B2 (en) 2013-07-09 2014-06-20 Communication terminal

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013-143765 2013-07-09
JP2013143765 2013-07-09

Publications (1)

Publication Number Publication Date
WO2015004859A1 true WO2015004859A1 (ja) 2015-01-15

Family

ID=52279569

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2014/003318 WO2015004859A1 (ja) 2013-07-09 2014-06-20 通信端末

Country Status (3)

Country Link
US (1) US10314084B2 (ja)
JP (1) JP6515804B2 (ja)
WO (1) WO2015004859A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016201618A (ja) * 2015-04-08 2016-12-01 三菱電機株式会社 探索通信装置および被探索通信装置
JP2018148312A (ja) * 2017-03-02 2018-09-20 ブラザー工業株式会社 通信装置のためのコンピュータプログラム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106604347B (zh) * 2016-11-03 2020-12-01 中冶华天南京工程技术有限公司 基于wi-fi自组网络定向传输数据的系统及其方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004104774A (ja) * 2002-08-23 2004-04-02 Matsushita Electric Ind Co Ltd 無線通信システム
JP2013038724A (ja) * 2011-08-10 2013-02-21 Ricoh Co Ltd 無線通信装置、無線通信プログラム及び無線通信方法
JP2013074579A (ja) * 2011-09-29 2013-04-22 Brother Ind Ltd 無線通信装置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004019566A2 (en) 2002-08-23 2004-03-04 Matsushita Electric Industrial Co., Ltd. Wireless communication system
US20110082939A1 (en) 2009-10-02 2011-04-07 Michael Peter Montemurro Methods and apparatus to proxy discovery and negotiations between network entities to establish peer-to-peer communications
KR101651131B1 (ko) * 2010-02-17 2016-08-25 엘지전자 주식회사 이동 단말기 및 이것의 통신 서비스 제어 방법
KR101735334B1 (ko) 2010-11-25 2017-05-15 삼성전자 주식회사 와이파이 P2P 디바이스(Wi-Fi Peer to Peer Device)의 디스커버리(Discovery) 방법 및 장치
WO2013112412A1 (en) * 2012-01-24 2013-08-01 Secure Couture, Llc System for initiating an emergency communications using a wireless peripheral of a mobile computing device
JP5994261B2 (ja) * 2012-01-31 2016-09-21 ブラザー工業株式会社 通信装置
KR20130096868A (ko) * 2012-02-23 2013-09-02 삼성전자주식회사 스트림 전송 방법 및 그 방법을 처리하는 전자 장치
KR101842047B1 (ko) * 2012-03-15 2018-03-26 삼성전자주식회사 와이 파이 다이렉트 통신 시스템에서 그룹 프로파일 관리를 위한 방법 및 장치
WO2013169043A1 (ko) * 2012-05-10 2013-11-14 엘지전자 주식회사 Nfc를 이용한 콘텐트 다운로드 방법 및 장치
EP2865146A4 (en) * 2012-06-21 2016-03-16 Eye Solutions Oy METHOD, SYSTEM, APPARATUS AND COMPUTER PROGRAM PRODUCT FOR COMMUNICATIONS MANAGEMENT
US9288754B2 (en) * 2012-09-07 2016-03-15 Qualcomm Incorporated Apparatus and methods of power save for wireless access points and multi-hop relays
JP5907033B2 (ja) * 2012-09-28 2016-04-20 ブラザー工業株式会社 通信装置
US10785630B2 (en) * 2012-12-10 2020-09-22 Nokia Technologies Oy Method and apparatus for low energy discovery
WO2014107091A1 (ko) * 2013-01-07 2014-07-10 엘지전자 주식회사 무선 통신 시스템에서 장치 대 장치 통신 수행 방법 및 장치
US9684633B2 (en) * 2013-01-24 2017-06-20 Samsung Electronics Co., Ltd. Adaptive service controller, system on chip and method of controlling the same
KR101710817B1 (ko) * 2013-02-22 2017-02-27 인텔 아이피 코포레이션 액세스 네트워크 선택 및 트래픽 라우팅을 위한 시스템 및 방법
JP6260091B2 (ja) * 2013-03-18 2018-01-17 ブラザー工業株式会社 無線通信システム及び無線通信機器
JP6216149B2 (ja) * 2013-04-26 2017-10-18 キヤノン株式会社 通信装置、通信方法およびプログラム
JP6212280B2 (ja) * 2013-04-26 2017-10-11 キヤノン株式会社 通信装置、通信方法およびプログラム
EP3105990B1 (en) * 2014-02-10 2020-11-04 Intel Corporation Wi-fi direct services mechanisms for wireless gigabit display extension
US10075992B2 (en) * 2014-02-27 2018-09-11 Intel IP Corporation Techniques to enable Wi-Fi direct services application service platform capability negotiation
US9883538B2 (en) * 2014-08-27 2018-01-30 Qualcomm Incorporated Avoiding P2P connection failure due to push button configuration overlap

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004104774A (ja) * 2002-08-23 2004-04-02 Matsushita Electric Ind Co Ltd 無線通信システム
JP2013038724A (ja) * 2011-08-10 2013-02-21 Ricoh Co Ltd 無線通信装置、無線通信プログラム及び無線通信方法
JP2013074579A (ja) * 2011-09-29 2013-04-22 Brother Ind Ltd 無線通信装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016201618A (ja) * 2015-04-08 2016-12-01 三菱電機株式会社 探索通信装置および被探索通信装置
JP2018148312A (ja) * 2017-03-02 2018-09-20 ブラザー工業株式会社 通信装置のためのコンピュータプログラム

Also Published As

Publication number Publication date
US10314084B2 (en) 2019-06-04
JP6515804B2 (ja) 2019-05-22
US20160192421A1 (en) 2016-06-30
JPWO2015004859A1 (ja) 2017-03-02

Similar Documents

Publication Publication Date Title
US11012149B2 (en) Communication device and terminal device
US20230300585A1 (en) Function Execution Device and Communication Terminal
US10959287B2 (en) Roaming groups in a Peer-to-Peer Network
US8634771B2 (en) Simple peer-to-peer network formation
AU2011343700B2 (en) Wireless network interface with infrastructure and direct modes
US8806023B2 (en) Auto-connect in a peer-to-peer network
US9565708B2 (en) Auto-connect in a peer-to-peer network
JP6293874B2 (ja) ワイヤレスドッキングアーキテクチャ
US20120233266A1 (en) Peer-to-peer group with renegotiation of group owner
JP6281223B2 (ja) 通信機器
EP2713672B1 (en) Wireless slave devices configuration and communication therewith
WO2015004859A1 (ja) 通信端末
JP6524912B2 (ja) 通信端末の接続制御方法
JP2015159514A (ja) 無線通信装置、無線通信方法、及び無線通信プログラム
JP6849961B2 (ja) ネットワーク構成方法
JP6365531B2 (ja) アクセスポイント決定方法
JP6544468B2 (ja) 無線通信装置
JP2019075833A (ja) 通信装置及び携帯端末

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14822609

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2015526147

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 14903090

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14822609

Country of ref document: EP

Kind code of ref document: A1