Communication apparatus, control method, and computer program product

By using detection methods that employ both probe request frames and service discovery frames in parallel, and combining the establishment processes of different security methods, the problem of low detection and connection efficiency in wireless communication systems is solved, achieving more efficient detection and connection of communication devices and improving user experience.

CN121284572APending Publication Date: 2026-01-06CANON KK
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510884484.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-07-03
Filing Date
2025-06-30
Publication Date
2026-01-06

AI Technical Summary

Technical Problem

In wireless communication systems, existing technologies struggle to efficiently detect and establish connections with communication devices employing different security methods, resulting in low communication efficiency.

Method used

A detection method that uses probe request frames and service discovery frames in parallel, combined with different security methods, is employed to perform the detection and establishment process, ensuring that the communication device can detect and connect to partner devices that support different versions of Wi-Fi Direct.

Benefits of technology

It improves the efficiency of detection and connection in wireless communication systems, enhances user-friendliness, and ensures communication success rates under different security methods.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121284572A_ABST
    Figure CN121284572A_ABST
Patent Text Reader

Abstract

The invention relates to a communication apparatus, a control method, and a computer program product. A communication device that performs a wireless communication method conforming to the Wi-Fi Direct standard detects the presence of another communication device using a first detection method using a probe request frame and a second detection method using a service discovery frame; and establishing a connection with the other detected communication device using a first establishment procedure associated with the first detection method or a second establishment procedure associated with the second detection method, in which, in a case where the first establishment procedure supports the first security method and the second establishment procedure supports the second security method, the connection is established using the first establishment procedure associated with the first detection method or the second establishment procedure associated with the second detection method. A first detection method is performed based on a first security method being set in the communication apparatus, and a second detection method is performed based on a second security method being set in the communication apparatus.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to communication devices, control methods, and computer program products, and particularly to techniques for establishing communication links between multiple stations in a wireless communication system. Background Technology

[0002] In recent years, with the increase in data communication volume, the development of Wireless Local Area Network (LAN) communication technology has also progressed. The Institute of Electrical and Electronics Engineers (IEEE) 802.11 series of standards is known to be the main standard for LANs. The IEEE 802.11 series of standards includes standards such as IEEE 802.11a / b / g / n / ac / ax. For example, the latest standard, IEEE 802.11ax, is a standard that uses OFDMA to achieve a peak throughput of up to 9.6 gigabits per second (Gbps) and improve communication speed under congestion conditions. OFDMA is an abbreviation for Orthogonal Frequency-Division Multiple Access.

[0003] Furthermore, the Wi-Fi Alliance has established procedures for authenticating wireless LAN devices. For example, the WFD standard has been established, which involves exchanging communication parameters and setting up communication links between wireless LAN stations (STAs) without going through an access point (AP). WFD is an abbreviation for Wi-Fi Direct. As a new feature of the WFD standard, research is underway to use Service Discovery Frames (SDFs) used in the Wi-Fi Aware standard to reduce the time from discovering potential communication partner STAs to establishing a connection. For example, Japanese Patent Publication No. 2019-201427 describes the use of the Wi-Fi Aware standard to detect communication terminals. Summary of the Invention

[0004] This disclosure provides a technique for increasing user-friendliness when using various methods or processes in a method for detecting a partner STA in a STA and in establishing a connection with a partner STA.

[0005] According to one aspect of this disclosure, a communication apparatus is provided for performing a wireless communication method conforming to the Wi-Fi Direct standard, comprising: a detection unit configured to detect the presence of another communication device using a first detection method utilizing a probe request frame and a second detection method utilizing a service discovery frame; and an establishment unit configured to establish a connection with the other communication device detected by the detection unit using a first establishment process associated with the first detection method or a second establishment process associated with the second detection method as an establishment process for establishing a connection with the other communication device, wherein, in the case where, as a security method to be used in communication, the first establishment process supports a first security method and the second establishment process supports a second security method, the detection unit performs the first detection method based on the first security method being provided in the communication device, and performs the second detection method based on the second security method being provided in the communication device.

[0006] According to one aspect of this disclosure, a control method executed by a communication device performing a wireless communication method conforming to the Wi-Fi Direct standard is provided, comprising: detecting the presence of another communication device using a first detection method utilizing a probe request frame and a second detection method utilizing a service discovery frame; and establishing a connection with the other communication device detected in the detection using a first establishment process associated with the first detection method or a second establishment process associated with the second detection method as an establishment process for establishing a connection with the other communication device, wherein, in the case where, as a security method to be used in communication, the first establishment process supports a first security method and the second establishment process supports a second security method, in the detection, the first detection method is executed based on the first security method being provided in the communication device, and the second detection method is executed based on the second security method being provided in the communication device.

[0007] According to one aspect of this disclosure, a computer program product including instructions is provided. When executed by a computer included in a communication device performing a wireless communication method conforming to the Wi-Fi Direct standard, the instructions cause the computer to perform a method including: detecting the presence of another communication device using a first detection method utilizing a probe request frame and a second detection method utilizing a service discovery frame; and establishing a connection with the other communication device detected in the detection using a first establishment process associated with the first detection method or a second establishment process associated with the second detection method as an establishment process for establishing a connection with the other communication device, wherein, in the case where, as a security method to be used in communication, the first establishment process supports a first security method and the second establishment process supports a second security method, in the detection, the first detection method is executed based on the first security method being provided in the communication device, and the second detection method is executed based on the second security method being provided in the communication device.

[0008] The features of the invention will become clear from the following description of embodiments with reference to the accompanying drawings. The following description of embodiments will be illustrated by way of example. Attached Figure Description

[0009] The accompanying drawings, which are incorporated in and form a part of this specification, illustrate embodiments of the present disclosure and, together with this description, serve to explain the principles of the embodiments.

[0010] Figure 1 This is a diagram illustrating an example configuration of a wireless communication system.

[0011] Figure 2 This is a diagram illustrating an example of the sequence between communication devices in the first detection method.

[0012] Figure 3 This is a diagram illustrating an example of the sequence between communication devices in the second detection method.

[0013] Figure 4 This is a diagram illustrating an example of the first establishment process between communication devices.

[0014] Figure 5 This is a diagram illustrating an example of the second establishment process between communication devices.

[0015] Figure 6 This is a diagram illustrating an example of the hardware configuration of a communication device.

[0016] Figure 7 This is a diagram illustrating an example of the functional configuration of a communication device.

[0017] Figure 8 This is a diagram illustrating an example of a sequence between communication devices when a first detection method and a second detection method are used in parallel.

[0018] Figure 9 This is a diagram illustrating an example of a sequence between communication devices when only the second detection method is used.

[0019] Figure 10A This is a diagram illustrating an example of a process performed by a communication device.

[0020] Figure 10B This is a diagram illustrating an example of a process performed by a communication device.

[0021] Figure 11 This is a diagram illustrating an example of the process of establishing communication between devices.

[0022] Figure 12 This is a diagram illustrating an example of the SDF frame format.

[0023] Figure 13 This is a diagram illustrating an example of the configuration of the user interface used for security settings.

[0024] Figure 14 This is a diagram illustrating an example of the configuration of the user interface used for security settings.

[0025] Figure 15 This is a diagram illustrating an example of the configuration of the user interface used for security settings. Detailed Implementation

[0026] In the following, embodiments will be described in detail with reference to the accompanying drawings. It should be noted that the following embodiments are not intended to limit the scope of the claims. Several features are described in the embodiments, but not all such features are necessary, and multiple such features can be appropriately combined. Furthermore, in the drawings, the same or similar configurations are given the same reference numerals, and redundant descriptions thereof are omitted.

[0027] System Configuration

[0028] Figure 1An example configuration of a wireless communication system according to this embodiment is illustrated. The wireless communication system may include two or more communication devices. For example, the wireless communication system may include communication device 101 and communication device 102. In this embodiment, communication device 100 may be used to refer to both communication device 101 and communication device 102 without distinction. Communication device 100 is a communication device capable of performing wireless communication conforming to the IEEE 802.11 standard series. For example, communication device 100 may include the functionality of a station (STA) conforming to the IEEE 802.11 standard series. Furthermore, communication device 100 may also include the functionality of an access point (AP) conforming to the IEEE 802.11 standard series. IEEE is an abbreviation for the Institute of Electrical and Electronics Engineers. Communication device 101 and communication device 102 are connected via wireless link 121. The network 131 formed by communication device 101 and communication device 102 represents the range in which communication device 101 and communication device 102 can communicate. In other words, within the range of network 131, communication device 102 can receive signals transmitted by communication device 101, and communication device 101 can receive signals transmitted by communication device 102. Figure 1 In network 131, there are two communication devices 100, but there may be three or more communication devices 100. In this case, each communication device 100 may be connected to each other, or multiple other communication devices 100 may be connected to one communication device 100.

[0029] In this embodiment, the communication device 100 can be configured to perform communication methods conforming to the IEEE 802.11 standard family. For example, the communication device 100 can be configured to perform communication methods conforming to the IEEE 802.11bn standard. Note that the IEEE 802.11bn standard is the successor to the IEEE 802.11be standard, and its goal is a maximum transmission speed of 46.08 Gbps (gigabits per second). The main advantages of the IEEE 802.11bn standard are that it includes features for achieving highly reliable communication, low-latency communication, and increased throughput during traffic congestion. The IEEE 802.11bn standard can be referred to as the UHR standard. UHR is an abbreviation for Ultra High Reliability. The communication device 100 can perform communication methods conforming to the successor standard to the IEEE 802.11bn standard. Moreover, the communication device 100 can support at least one of the older standards that predate the IEEE 802.11bn standard. Older standards include, for example, IEEE 802.11a / b / g / n / ac / ax / be. Communication device 100 may support older standards or not support the IEEE 802.11bn standard. Furthermore, communication device 100 may support other communication standards, such as Bluetooth (registered trademark), NFC, UWB, ZigBee, MBOA, etc. Note that UWB is an abbreviation for Ultra Wide Band, and MBOA is an abbreviation for Multi-Band OFDM Alliance. NFC is an abbreviation for Near Field Communication. UWB includes wireless USB, wireless 1394, WiNET, etc. Moreover, communication device 100 may support wired LAN or similar communication standards. Communication device 100 may be, but is not limited to, a camera, tablet computer, smartphone, PC, mobile phone, camcorder, headset, printer, monitor, etc. Communication device 100 may be an information processing device, such as a radio chip capable of performing wireless communication supporting the IEEE 802.11bn standard.

[0030] Communication device 100 can communicate using frequency bands such as the 2.4 GHz band, 3.6 GHz band, 5 GHz band, 6 GHz band, and millimeter-wave bands (such as the 45 GHz band and 60 GHz band). The frequency bands used by communication device 100 are not limited to these, and may include, for example, bands below 1 GHz. Furthermore, communication device 100 can communicate using bandwidths of 20 MHz, 40 MHz, 80 MHz, 160 MHz, 320 MHz, 540 MHz, 640 MHz, 1080 MHz, or 2160 MHz. The bandwidth used by communication device 100 is not limited to these, and may include, for example, 240 MHz, 4 MHz, etc. Note that in the IEEE 802.11 standard series, a frequency channel with a bandwidth of 20 MHz is specified as the basic channel in the 2.4 GHz band, 5 GHz band, 6 GHz band, etc. Moreover, in this standard, multiple usable channels are defined in each frequency band, including the 2.4 GHz band, 5 GHz band, and 6 GHz band. For example, in the 2.4 GHz band, three frequency channels—1ch, 6ch, and 11ch—are designated as non-overlapping frequency channels. Furthermore, in this standard, a specific channel can be used in combination with adjacent channels. In this embodiment, using a specific channel in combination with adjacent channels can be referred to as channel bonding. Moreover, a group of channels formed by one, two, or more adjacent channels can be referred to as a communication link (link). In other words, a link formed by two channels with a bandwidth of 20 MHz uses a bandwidth of 40 MHz. A communication method that establishes multiple links between communication devices and uses these links in parallel can be referred to as multi-link communication. Communication device 100 can be a multi-link device (MLD) supporting multiple links. Figure 1 In this process, a wireless link (link 121) is established between the communication devices.

[0031] Communication device 100 may include the functionality to establish a communication link according to the Wi-Fi Direct (WFD) standard. The WFD standard specifies a process for establishing a communication link between multiple STAs without going through an AP. In other words, communication device 100 implementing the WFD standard can be a STA. For example, two or more communication devices 100 may perform a process according to the detection process specified in the WFD standard to detect each other's presence and establish a connection between the detected partner communication devices. For example, communication device 100 may detect the presence of another communication device via a first detection method using probe request frames and probe response frames. The process of detecting another communication device using the first detection method and establishing a communication link with the detected communication device may be referred to as WFD R1. WFD R1 is an abbreviation for Wi-Fi Direct Release 1. Furthermore, communication device 100 may detect the presence of another communication device via a second detection method using service discovery frames (SDF). The process of detecting another communication device using the second detection method and establishing a communication link with the detected communication device may be referred to as WFD R2. WFD R2 is an abbreviation for Wi-Fi Direct Release 2.

[0032] Figure 2An example of a sequence executed between communication devices 100 in the first detection method is illustrated. In this example, processing can begin at each communication device 100 based on input from a user, application, etc. (F201, F202). When communication device 101 receives an instruction from a user, etc., such as an instruction to detect another communication device, communication device 101 attempts to detect the other communication device by repeatedly switching between a Listen state and a Search state. In the Listen state, communication device 101 waits for a probe request frame in a specific frequency channel. In this case, when communication device 101 receives a probe request frame, communication device 101 responds with a probe response frame. In the Search state, communication device 101 sends a probe request frame and waits for a probe response frame while switching frequency channels between one or more predetermined frequency channels. For example, in the Listen state, communication device 101 selects 1ch of 2.4 GHz and waits for a probe request frame from another communication device. The Listen state period can be a time period equal to N times a predetermined time period defined as a time unit TU. In other words, the time period during which communication device 101 performs the Listen state operation can be represented by N×TU. TU is an abbreviation for time unit. For example, TU can be 100 milliseconds. N can be an integer of 1 or greater, determined by a random number. N can be a predetermined value set by parameters, or it can be a different value for each frequency channel. When communication device 101 transitions from the listening state to the searching state, it sends a probe request frame and waits for a probe response frame (F203, F204, F206) while switching between frequency channels. Communication device 101 can transition back from the searching state to the listening state. When communication device 101 transitions back from the searching state to the listening state, it can perform a detection operation using the same or a different channel as the one selected in the previous listening state. Note that in Figure 2 In the example shown, communication device 101 initially performs a listening state. However, communication device 101 may first perform a search state. Furthermore, before performing operations in these states, communication device 101 may perform a scanning operation to detect another communication device that has begun operation using each channel it can use. In the scanning operation, communication device 101 may select a frequency channel other than the frequency channel selected for the detection operation in the listening or search states.

[0033] Similar to communication device 101, when communication device 102 receives an instruction from a user, such as an instruction to detect another communication device, communication device 102 attempts to detect the other communication device by repeatedly switching between listening and searching states. For example, in listening state, communication device 102 selects 6 channels of the 2.4 GHz band and waits for probe request frames from another communication device. Figure 2 As shown, while communication device 102 waits in a listening state using 6ch, communication device 101 transitions to a search state and sends a probe request frame using 6ch. Communication device 102 sends a probe response frame (F205) in response to receiving the probe request frame. Communication device 102 can detect communication device 101 by receiving the probe request frame. Furthermore, communication device 101 can detect communication device 102 by receiving the probe response frame. Communication devices 101 and 102 can report to the user or others that communication device 102 and communication device 101 have been detected. In this way, during the detection operation via the first detection method, communication device 100 can detect another communication device using either a probe request frame or a probe response frame while repeatedly transitioning between a listening state and a search state.

[0034] Figure 3 The illustration shows an example of a sequence executed between communication devices 100 in a second detection method. In this example, each communication device 100 performs processing based on whether it is a service provider-side communication device or a service requester-side communication device, and detects the other communication device. The service provider-side communication device can be referred to as a publisher, listener, advertiser, etc. The service requester-side communication device can be referred to as a subscriber, searcher, seeker, etc. For example, the service requester-side communication device can send frames for detecting the other communication device. Furthermore, the service provider-side communication device can receive frames sent by the other communication device and respond to them. The role assigned to each communication device 100 can be determined by a higher-level layer (service layer, etc.). Figure 3 In the described example, communication device 101 operates as a communication device on the service requester side, and communication device 102 operates as a communication device on the service provider side. For example, communication device 101 intermittently performs detection operations and sends frames for detecting another communication device. Figure 3The rectangles in the diagram illustrate the detection period in which each communication device 100 performs a detection operation. For example, communication device 101 transmits an SDF (F301) using 6 channels of the 2.4 GHz band. SDF is an abbreviation for Service Discovery Frame. Furthermore, an SDF transmitted from a communication device on the service requester side can be referred to as a search frame or a subscription frame. Communication device 101 may transmit multiple SDFs (F301, F302) within a detection period. The detection period can be defined as N×TU, as in the listening state time period in the first detection method. In the initial detection period, when communication device 101 transmits SDFs (F301, F302), communication device 101 does not receive a response from communication device 102 because communication device 102 does not perform a detection operation. Therefore, communication device 101 does not detect communication device 102. In subsequent detection periods of communication device 102, since communication device 101 is not in a detection period, no SDF is transmitted from communication device 101. Therefore, communication device 102 does not detect communication device 101. Subsequently, in F303, when communication device 101 sends an SDF, communication device 102 receives the SDF. Then, communication device 102 sends an SDF as a response to the received SDF. The SDF sent from the service provider side can be referred to as a publish frame or a follow frame. Afterwards, a predetermined message exchange using the SDF is performed (F305), and the detection of communication device 102 by communication device 101 is completed. Communication device 101 detects communication device 102 by receiving the SDF sent by communication device 102. Furthermore, communication device 102 can detect communication device 101 by receiving the SDF sent by communication device 101. Communication devices 101 and 102 can report to users, etc., that they have detected communication device 102 and communication device 101, respectively. Note that communication device 102, as a communication device on the service provider side, can send a publish SDF in response to receiving a subscription SDF from communication device 101, or it can actively send a publish SDF. For example, communication device 102 can periodically send out SDFs. In this way, during the detection process via the second detection method, communication device 100 can perform processing according to its role on the service provider side or the service requester side, and can detect another communication device.

[0035] Communication device 100 can execute the establishment process specified in the WFD standard after the detection process and can establish a wireless communication link between communication devices. During the establishment process specified in the WFD standard, the communication parameters used for communication between communication devices are shared. For example, in WFDR1, which establishes a communication link with a communication device detected using the first detection method, a first establishment process including WPS and GO negotiation processing can be executed. WPS is an abbreviation for Wi-Fi Protected Setup. Figure 4 An example of the first setup process is illustrated. Figure 4The process includes a detection operation using a first detection method, which involves sending a probe request frame (F401) via communication device 101 and receiving a probe response frame (F402) via communication device 102. When communication devices 101 and 102 detect another partner communication device, a GO negotiation process (F403) is performed. In the GO negotiation process, it is determined whether one of the communication devices acts as the group owner (GO) and the other as the client (CL). Furthermore, in the GO negotiation, a frequency channel for GO operation is determined. For example, the GO performs functions corresponding to the AP and periodically sends beacon frames. For example, communication device 101 may temporarily operate as the AP. Moreover, communication devices 101 and 102 share communication parameters used when performing WPS processing and communication (F404). Note that the communication device operating as the GO can notify the communication device operating as the CL of the communication parameters by broadcasting beacons. Communication devices 101 and 102 perform link establishment and communication based on their respective roles determined via GO negotiation using the communication parameters shared via WPS processing. For example, the GO communication device begins sending a beacon frame (F405). Furthermore, the CL communication device sends frames to request a connection, such as probe request frames, authentication frames, and association request frames (F406, F408, F410). Conversely, the GO communication device responds to these frames by sending probe response frames, authentication frames, and association response frames (F407, F409, F411). Note that these frames may include multilink elements for multilink communication. Multilink elements may include communication parameters used in multilink communication as specified in the IEEE 802.11be standard. Accordingly, multiple links can be established between the communication devices via a single connection process. For example, the probe request frame and probe response frame, which include multilink elements, may be referred to as an ML probe request frame and an ML probe response frame, respectively. For example, communication device 101 may be designated GO, and communication device 102 may be designated CL. Communication device 101, corresponding to GO, may provide communication parameters to communication device 102 and establish network 131. On the other hand, the communication device 102 corresponding to CL can receive communication parameters from the communication device 101 and join the network 131. In this way, when a communication link is established between the communication device 101 and the communication device 102, data can be transmitted between the communication device 101 and the communication device 102. Note that the communication device 101 and the communication device 102 can perform a four-way handshake (4WHS) process before performing data communication.

[0036] In WFD R2, which establishes a communication link with a communication device detected using the second detection method, a second establishment process including bootstrapping and GO negotiation can be performed. Figure 5 An example of the second setup process is illustrated. Figure 5 The process can be performed after the detection operation using the second detection method, which involves the transmission and reception of SDF between communication device 101 and communication device 102. Figure 5 In, with Figure 4 Similar processes are given the same reference numerals and their descriptions are omitted. When communication devices 101 and 102 detect another partner communication device, a boot process is executed.

[0037] During the guidance process, a method for exchanging communication parameters can be determined between the communication devices, and this method can be used to exchange communication parameters. For example, when the method for exchanging communication parameters uses a QR code, one communication device displays a QR code indicating information that can be identified as communication parameters, and another communication device reads the QR code and identifies the communication parameters. In this case, one communication device presents to its partner communication device that it can display a QR code, while the other communication device presents to its partner communication device that it can read a QR code. In this way, the method for exchanging communication parameters can be determined. Note that when presenting the method for exchanging communication parameters, it can be presented whether a QR code can be displayed or read, whether it is possible to support it as an NFC tag or reader, and whether it is possible to trigger the exchange of communication parameters via a button press, etc. Moreover, when presenting the method for exchanging communication parameters, it can be presented whether a passphrase can be displayed or entered as a string, whether a passphrase can be displayed or entered as a number, whether a personal identification number or numeric password can be displayed or entered, etc. Furthermore, when presenting the method for exchanging communication parameters, it can be presented whether a method is supported for exchanging PASN parameters required using PASNs specified in standards such as WFD. PASN is an abbreviation for Preassociation Security Negotiation. For example, PASN parameters may include the public key used by each communication device. Furthermore, the method for exchanging PASN parameters may include, for example, a Bluetooth exchange method. Note that the WFD standard may or may not specify a method for exchanging PASN parameters. In other words, a method not specified in the WFD standard can be used as a method for exchanging PASN parameters. Note that when presenting exchange methods for exchanging communication parameters, it may be shown whether communication parameters can be exchanged via methods different from those described above. For example, a temporary network including an AP can be formed, and communication devices can exchange communication parameters by connecting to this network. In this case, it can be determined that a temporary network including an AP is used to exchange communication parameters between the communication devices.

[0038] Communication parameters exchanged between communication devices may include a Service Set Identifier (SSID), encryption method, encryption key, authentication method, AKM, BSSID, MAC address, and / or other similar parameters used in wireless communication. AKM is an abbreviation for Authentication and Key Management. AKM indicates the authentication protocol or key exchange algorithm used in wireless communication. For example, if AKM is "SAE", communication parameters may include a cipher for connecting to an AP or GO corresponding to Wi-Fi Protected Access (WPA) 3. If AKM is "psk", communication parameters may include a pre-shared key (PSK) / passphrase for connecting to an AP or GO corresponding to WPA 2. If AKM is "1X", communication parameters may include the ID, cipher, public key, etc., for connecting to an AP corresponding to WPA-Enterprise. Note that the cipher and PSK / passphrase are encryption keys used when performing authentication or key exchange based on WPA or IEEE 802.11.

[0039] Communication device 101 sends a guidance request frame (F501). The guidance request frame can indicate the methods for exchanging communication parameters that communication device 101 can use. For example, if communication device 101 supports the display and reading of QR codes, communication device 101 can indicate that these can be performed. Communication device 102 responds with a guidance response frame (F502). The guidance response frame can indicate the methods for exchanging communication parameters that communication device 102 can use. For example, if communication device 102 supports displaying QR codes and NFC tagging, communication device 102 can indicate that these can be performed. Note that communication device 102 can respond based on the communication parameter exchange methods reported by communication device 101. For example, if communication device 101 supports the display and reading of QR codes and communication device 102 supports displaying QR codes and NFC tagging, communication device 102 can indicate that it can display QR codes and communication device 101 can read QR codes. In this way, the communication parameter exchange method can be determined via the exchange of these frames. Communication devices 101 and 102 share communication parameters using a determined communication parameter exchange method (F503). For example, communication parameters are exchanged by communication device 102 displaying a QR code containing information that identifies the communication parameters and communication device 101 reading the QR code. Furthermore, communication devices 101 and 102 perform GO negotiation processing and determine their roles and the channels on which the GO operates (F504). Note that both communication devices 101 and 102 can authenticate their partner communication devices during the GO negotiation process. For example, communication devices 101 and 102 can perform PASN using PASN parameters exchanged via the bootstrap process. In this case, if authentication with each other via PASN is successful, subsequent processing is performed. If authentication fails, subsequent processing is canceled. Moreover, similar to the first establishment process, communication devices 101 and 102 perform connection establishment and communication based on each role determined via GO negotiation using the communication parameters shared via the bootstrap process.

[0040] As described above, communication device 100 can detect another communication device according to the WFD standard, establish a wireless communication link, and communicate with each other. However, in cases where the WFD standard specifies multiple operationally incompatible methods or procedures, a communication device that can only execute a portion of a method or procedure may be unable to detect or communicate with another communication device. For example, if communication device 101 can only execute WFD R2 and communication device 102 can only execute WFD R1, communication device 101 may be unable to detect the presence of communication device 102. In other words, if communication device 101 sends a service discovery frame, communication device 101 cannot detect communication device 102 because communication device 102 does not support WFD R2 and therefore does not respond to the frame. Furthermore, if communication device 102 sends a probe request frame, communication device 102 cannot detect communication device 101 unless communication device 101 responds to the frame. In this way, due to the differences in the detection methods specified in the WFD standard supported by each communication device 100, each communication device 100 may be unable to detect a partner communication device.

[0041] However, the communication device 100 supporting both WFD R1 and WFD R2 can execute the first detection method and the second detection method in parallel. Therefore, this communication device 100 can detect both the communication device supporting WFD R1 and the communication device supporting WFD R2. In this case, the communication device 100 supporting both WFD R1 and WFD R2 can be detected by either the communication device supporting WFD R1 or the communication device supporting WFD R2. Accordingly, using this configuration, even when different methods or processes that are incompatible in operation are specified in the WFD standard, communication devices using these methods or processes can more easily detect their partner communication devices.

[0042] Regarding this, if communication device 100 executes the first detection method and the second detection method in parallel, communication with a portion of the detected communication device may fail. For example, if communication device 101 and communication device 102 have different security methods used in communication, communication device 101 may be unable to communicate with communication device 102. For instance, if communication device 101 uses WPA3 as its security method while communication device 102 uses WPA2, communication device 101 and communication device 102 may be unable to communicate. Note that WPA is an abbreviation for Wi-Fi Protected Access. Furthermore, WPS used in WFD R1 is compatible with WPA2 but not with WPA3. Therefore, for example, when communication device 102, which supports WPA2, attempts to establish a connection with communication device 101, which supports WPA3, via the first establishment process, the connection cannot be established because communication device 101 does not support WPS. In this way, if among the detected communication devices, there is one that does not support the communication method or subsequent connection establishment process after the connection is established, then communication device 100 may not be able to perform processing efficiently until it can communicate with another communication device. For example, communication device 101 may attempt to establish a connection with communication device 102, and if that fails, it may attempt to establish a connection with another communication device. Accordingly, communication device 101 may spend time before establishing a connection with the communication device it should be connected to.

[0043] In view of such circumstances, the communication device according to this embodiment performs a detection operation based on its configured security method when the first establishment process supports a first security method and the second establishment process supports a second security method. For example, the communication device 100 performs a first detection method based on its own configured first security method and a second detection method based on its configured second security method. The communication device 100 can use a first detection method utilizing a probe request frame and a second detection method utilizing a service discovery frame to detect the presence of another communication device. Moreover, the communication device 100 can use a first establishment process associated with the first detection method or a second establishment process associated with the second detection method as an establishment process for establishing a connection with another communication device to establish a connection with the detected other communication device. With this configuration, the communication device 100 is configured to perform the first detection method and the second detection method based on the configured security method. Accordingly, the communication device 100 stops performing detection operations using a frequency channel or method through which the communication device 100 detects communication devices with which it cannot establish a connection or communicate. Therefore, the detection of another communication device can be performed efficiently.

[0044] For example, if one or more security methods provided for the communication device 100 include a second security method but do not include a first security method, the communication device 100 can execute the second detection method without executing the first detection method. For example, if one or more security methods provided for the communication device 100 include a first security method and a second security method, the communication device 100 can execute the first detection method and the second detection method in parallel. For example, if the first security method is WPA2 and the second security method is WPA3, and the communication device 100 is only equipped with WPA3, the communication device 100 can use SDF to perform a detection operation using only 6 channels of the 2.4 GHz band. In this way, since a detection operation using another frequency channel that can detect a communication device 100 that only supports WPA2 is not performed, the detection operation can be performed efficiently. On the other hand, if the communication device 100 is configured for both WPA2 and WPA3, detection operations using 1, 6, and 11 channels of the 2.4 GHz band can be performed using a probe request frame. Furthermore, the communication device 100 can use 6 channels of the 2.4 GHz band to perform a detection operation using SDF. Accordingly, the communication device 100 supports the Wi-Fi Direct standard and can widely detect communication devices that can communicate with it. The device configuration, functional configuration, and processing flow of the communication device 100 according to this embodiment will be described below.

[0045] Device configuration

[0046] Figure 6 An example of the hardware configuration of the communication device 100 according to this embodiment is illustrated. As an example of the hardware configuration, the communication device 100 includes a storage unit 601, a control unit 602, a functional unit 603, an input unit 604, an output unit 605, a communication unit 606, and an antenna 607. The communication device 100 may include multiple antennas.

[0047] Storage unit 601 comprises one or more memory devices, including ROM, RAM, etc., and can store various types of information, such as control programs for the functional units of communication device 100 to perform various types of operations, and parameters for communication. ROM is an abbreviation for Read Only Memory, and RAM is an abbreviation for Random Access Memory. In addition to ROM and RAM, storage unit 601 may also include storage media such as floppy disks, hard disks, optical disks, magneto-optical disks, CD-ROMs, CD-Rs, magnetic tapes, non-volatile memory cards, DVDs, etc. Furthermore, storage unit 601 may have multiple memory devices. Note that storage unit 601 can store user-inputted device settings and device status-related information, such as the remaining battery power and whether the device is performing power-saving operations.

[0048] The control unit 602, for example, comprises one or more processors (including a CPU, MPU, etc.) and controls the entire communication device 100 by executing a control program stored in the storage unit 601. Note that the control unit 602 can control the entire communication device 100 in cooperation with an operating system (OS) via the control program stored in the storage unit 601. Note that CPU is an abbreviation for Central Processing Unit, and MPU is an abbreviation for Microprocessor Unit. In cases where the control unit 602 includes multiple processors implemented as multi-core processors, the entire communication device 100 can be controlled by multiple processors.

[0049] Furthermore, the control unit 602 controls the functional unit 603 and executes predetermined processes, such as wireless communication, image capture, printing, and projection. The functional unit 603 is hardware used by the communication device 100 to execute the aforementioned predetermined processes. For example, if the device is a camera, the functional unit 603 is an imaging unit and performs image capture processing. If the device is a printer, the functional unit 603 is a printing unit and performs printing processing. If the device is a projector, the functional unit 603 is a projection unit and performs projection processing.

[0050] Input unit 604 receives various operations from the user. Output unit 605 outputs to the user via, for example, a monitor screen or a speaker. For example, input unit 604 can accept input from the user for executing a first detection method and a second detection method in parallel. Here, the output via output unit 605 can correspond to displaying on a monitor screen, outputting audio via a speaker, outputting vibration, etc. Note that input unit 604 and output unit 605 can be implemented together as a single module, for example, in the form of a touch panel. Moreover, input unit 604 and output unit 605 can be integrated with communication device 100, or they can both be separate devices.

[0051] Communication unit 606 performs control of wireless communication conforming to the IEEE 802.11bn standard. Furthermore, in addition to the IEEE 802.11bn standard, communication unit 606 can also perform control of wireless communication conforming to older standards such as another IEEE 802.11 standard series, and can perform control of wired communication using wired LAN, etc. Communication unit 606 controls antenna 607 and transmits and receives wireless communication signals generated by control unit 602. Communication unit 606 can be composed of multiple communication circuits corresponding to multiple links. Communication unit 606 is a so-called radio chip and may be equipped with one or more processors and / or one or more memory units. Note that if communication device 100 supports another wireless communication standard (such as NFC and Bluetooth standards) in addition to the IEEE 802.11bn standard and supports wired communication via wired LAN, communication unit 606 can perform control of communication conforming to these communication standards. Moreover, if communication device 100 can perform wireless communication conforming to multiple communication standards, communication device 100 may have a configuration of separate communication units and antennas supporting each communication standard. The communication device 100 transmits data such as image data, document data, and video data to a partner communication device via the communication unit 606. Note that the antenna 607 can be formed separately from the communication unit 606, or it can be formed together with the communication unit 606 as a single module.

[0052] Antenna 607 is an antenna capable of communication in frequency bands including 2.4 GHz, 5 GHz, 6 GHz, and millimeter-wave bands. Figure 6 In the configuration shown, the communication device 100 includes two antennas 607. However, the communication device 100 may include one, three, or more antennas, and may include one or more antennas for each frequency band usable by the device. Moreover, when the communication device 100 includes multiple antennas, the communication device 100 may provide a communication unit 606 for each antenna.

[0053] Functional Configuration

[0054] The functional configuration of the communication device 100 according to this embodiment will now be described. Figure 7 An example block diagram of a communication device 100 is illustrated. The communication device 100 may include a WFD R1 control unit 701, a WFD R2 control unit 702, a frame control unit 703, a channel control unit 704, a communication control unit 705, a device detection unit 706, and a connection establishment unit 707. The WFD R1 control unit 701 performs a detection operation using a first detection method and establishes a connection with a partner communication device using a first establishment process. For example, the WFD R1 control unit 701 may perform the detection operation using a probe request frame or a probe response frame. Furthermore, the WFD R1 control unit 701 may perform connection establishment using WPS processing or GO negotiation processing. The WFD R2 control unit 702 performs a detection operation using a second detection method and establishes a connection with a partner communication device using a second establishment process. For example, the WFD R2 control unit 702 may perform the detection operation using SDF. Furthermore, the WFD R2 control unit 702 may perform connection establishment using bootstrapping processing or GO negotiation processing.

[0055] Frame control unit 703 generates frames to be used by another functional unit. Furthermore, frame control unit 703 analyzes the received frames. For example, frame control unit 703 can determine whether to process the frame according to WFD R1 or WFD R2. Channel control unit 704 performs the setting of a frequency channel for performing a detection operation to detect another communication device and for communicating with the detected communication device. For example, channel control unit 704 can set the frequency channel for performing the detection operation based on instructions from a user, etc. Communication control unit 705 transmits the frames generated by frame control unit 703 using communication unit 606. Furthermore, communication control unit 705 notifies frame control unit 703 of the frames received by communication unit 606.

[0056] The device detection unit 706 uses the WFD R1 control unit 701 and / or the WFD R2 control unit 702 to detect another communication device. For example, the device detection unit 706 may perform a detection operation using the WFD R1 control unit 701 based on its security method being set to a first security method. For example, the device detection unit 706 may perform a detection operation using the WFD R2 control unit 702 based on its security method being set to a second security method. The device detection unit 706 may perform a detection operation using beacon frames received by the communication unit 606. For example, when the device's security method is set to a first security method, the device detection unit 706 may detect another communication device based on receiving a beacon frame. Moreover, when the device's security method is set to a second security method, the device detection unit 706 may detect another communication device based on receiving a beacon frame that includes information indicating that the other communication device supports a second establishment process.

[0057] The connection establishment unit 707 establishes a connection with the communication device detected by the device detection unit 706. For example, the connection establishment unit 707 can establish a connection with another communication device using the WFD R1 control unit 701 based on a first security method set for the device. Furthermore, the connection establishment unit 707 can establish a connection with another communication device using the WFD R2 control unit 702 based on a second security method set for the device. Note that the connection establishment unit 707 can establish a connection with another communication device using the WFD R1 control unit 701 based on detection via the first detection method. Furthermore, the connection establishment unit 707 can establish a connection with another communication device using the WFD R2 control unit 702 based on detection via the second detection method. The connection establishment unit 707 can perform processes such as authentication processing, association processing, and four-way handshake (4WHS) processing.

[0058] Processing flow

[0059] The process flow performed by the aforementioned communication device 100 and the sequence between communication devices will now be described.

[0060] Example of first detection operation

[0061] An example of a first detection operation performed by the communication device 100 according to this embodiment when the presence of another communication device is detected will now be described. In this example described herein, a first security method and a second security method are provided in the communication device 100.

[0062] Figure 8This diagram illustrates an example of a message sequence between communication devices 100 when a first security method and a second security method are provided in the communication devices 101 and 102. The first security method is, for example, WPA2. Furthermore, the second security method is, for example, WPA3. Figure 8 This diagram illustrates an example of communication device 101 sending a request frame for detecting another communication device and communication device 102 responding to the request frame. For example, communication device 101 performs a search state operation in a first detection method. Furthermore, communication device 101 performs the operation of a communication device on the service requester side in a second detection method. For example, communication device 102 may perform a listening state operation in the first detection method. Furthermore, communication device 102 may perform the operation of a communication device on the service requester side in the second detection method. Note that communication device 102 can send a frame, and communication device 101 can receive and respond to the frame. For example, communication device 101 may perform a search state operation in the first detection method and perform service provider-side operations in the second detection method. Furthermore, communication device 102 may perform a listening state operation in the first detection method and perform service requester-side operations in the second detection method.

[0063] Note that the first and second security methods can be security methods other than WPA2 and WPA3. For example, WPA or WEP can be used. WEP is an abbreviation for Wired Equivalent Privacy. The first and second security methods can be methods that succeed WPA2 and WPA3. The first and second security methods can include multiple further subdivided security methods. For example, in WPA3, the WPA3-SAE method and the WPA3-EAP method can be included. In this case, each subdivided security method can correspond to the first and second security methods. The communication device 100 can support security methods other than the first and second security methods.

[0064] First, the communication device 101 accepts input from users, applications, etc. (F801). For example, the communication device 101 may accept instructions from the user to detect another communication device or to connect to another communication device via the input unit 604. For example, the communication device 101 may display a button with text such as "Wi-Fi Direct" or a button with a label related to Wi-Fi Direct operation on the user interface formed by the output unit 605. Moreover, the communication device 101 may recognize user clicks on buttons, selections to execute Wi-Fi Direct, etc., via the input unit 604. Note that the user's input is not limited to these examples, and it is sufficient as long as the communication device 100 displays user input indicating that detection of another communication device based on the Wi-Fi Direct standard has begun. For example, if the input unit 604 is a microphone, the user's input may be voice. Note that the communication device 101 may accept instructions to detect another communication device or to connect to another communication device from sources other than the user. For example, the communication device 101 may accept instructions from applications, operating systems, etc. For example, if an application requiring a connection to another communication device is activated, the communication device 101 may accept instructions to connect to another communication device from that application. The communication device 100 can operate to execute the first detection method and the second detection method in parallel based on a single instruction from a user, application, etc. This can reduce the burden of operation for the user. Note that the communication device 101 begins... Figure 8 The triggering of the processes shown is not limited to these examples. For example, communication device 101 may begin detecting another communication device based on the device being powered on and activated.

[0065] When initiating operation to detect another communication device, communication device 101 may first perform a scan operation to detect another communication device (not shown) that is operating as a GO. For example, communication device 101 may wait for a beacon frame sent by another communication device as a scan operation. Furthermore, as a scan operation, communication device 101 may send a probe request frame and wait for a probe response frame sent by another communication device. For example, communication device 101 may perform a scan operation using every channel available to communication device 101. In this way, if the selectable frequency channels in the device's search state are 1ch, 6ch, and 11ch of the 2.4 GHz band, the communication device can be detected even if another communication device is operating as a GO on a frequency channel other than these frequency channels. On the other hand, communication device 101 may perform a scan operation using only specific frequency channels. By performing a scan operation using only specific frequency channels, the amount of time required for the scan operation can be reduced. Therefore, in the absence of another communication device operating as a GO, the following processing can be performed quickly. For example, communication device 101 may perform a scan operation using the preferred scan channel (PSC) of the 6 GHz band. The PSC can be one or more 20MHz frequency channels that are set to be scanned preferentially. For example, the PSC is a frequency channel with channel numbers 5, 21, 37, 53, 69, 85, 101, 117, 133, 149, 165, 181, 197, 213, and 229. If another communication device is detected as a GO operation during the scanning operation, communication device 101 can establish a connection with that communication device based on the Wi-Fi Direct standard and can communicate with it.

[0066] After the scanning operation, the communication device 101 confirms its security settings (F803). In this example, the communication device 101 confirms that a first security method and a second security method are set in the communication device 101. The communication device 101 performs a detection operation based on its security settings. In other words, since the security settings of the communication device 101 include the first security method and the second security method, the communication device 101 executes the first detection method and the second detection method in parallel. In this example, the frequency channels used to perform the detection operation using the first detection method are 1ch, 6ch, and 11ch of the 2.4 GHz band. Moreover, the frequency channel used to perform the detection operation using the second detection method is 6ch of the 2.4 GHz band. In this case, the communication device 101 can operate to send probe request frames using 1ch and 11ch and to send probe request frames and service discovery frames using 6ch. For example, the communication device 101 first sends a probe request frame using 1ch (F805) and then waits to receive a probe response frame. Moreover, the communication device 101 switches the frequency channel to 6ch, sends a probe request frame (F807), and then waits to receive a probe response frame. In addition, the communication device 101 sends a service discovery frame (F808) and waits to receive a service discovery frame. Then, the communication device 101 switches the frequency channel to 11ch, sends a probe request frame (F810), and waits to receive a probe response frame.

[0067] On the other hand, similar to communication device 101, when communication device 102 receives input from a user, application, etc. (F802), communication device 102 begins a detection operation. For example, when communication device 102 begins detecting another communication device, it first performs a scanning operation. Furthermore, communication device 102 confirms its security settings (F804). Since a first security method and a second security method are set in communication device 102, communication device 102 executes the first detection method and the second detection method in parallel. For example, when communication device 102 receives a probe request frame on channel 1 (F805), it sends a probe response frame (F806). When communication device 102 switches its frequency channel to channel 6 and receives a service discovery frame (F808), it sends a service discovery frame (F809). After switching its frequency channel to channel 11, if no frame is received, communication device 102 can switch to the next frequency channel without sending a frame. Note that a probe request frame sent from communication device 101 on channel 6 while communication device 102 is waiting on channel 1 is not received by communication device 102 (F807). Similarly, a probe request frame sent from communication device 101 on channel 1 while communication device 102 is waiting on channel 6 is not received by communication device 102 (F810). Therefore, no probe response frame is sent in response to the probe request frame. Note that communication device 102 can remain in a listening state for the entire predetermined time period without switching frequency channels. In this case, for example, communication device 102 can remain in a listening state on channel 6 of the 2.4 GHz band. Channel 6 of the 2.4 GHz band is the recommended channel for performing the detection process according to WFD R2. This makes detection easier for communication device 100, which can perform WFD R2. Note that in the above example, communication device 102 switches frequency channels while waiting to receive frames. However, communication device 102 can wait to receive frames while sending frames. For example, communication device 102 can send a probe request frame or an SDF. In this way, a sequence of detection operations is performed using each frequency channel for the detection operation in both communication device 101 and communication device 102.

[0068] Through the sequence of detection operations described above, communication device 101 receives a probe response frame (F806) on 1ch and a service discovery frame (F809) on 6ch. Through these frames, communication device 101 can detect communication device 102. Note that communication device 101 can detect communication device 102 even if it only receives a probe request frame, or even if it only receives a service discovery frame. In this way, communication device 101 can detect communication device 102 via at least one of the detection methods, provided that communication device 102 can perform both the first and second detection methods. Note that if communication device 102 can only perform the first detection method, in F809, a service discovery frame is not sent in response to the service discovery frame sent by communication device 101 in F808. However, communication device 101 receives a probe response frame sent in F806 in response to the probe request frame sent in F805. In this way, communication device 101 can detect communication device 102. Furthermore, when communication device 102 can only execute the second detection method, in F806, it does not send a probe response frame in response to the probe request frame sent by communication device 101 in F805. However, communication device 101 receives a service discovery frame sent in F809 in response to the service discovery frame sent in F808. In this way, communication device 101 can detect communication device 102.

[0069] Furthermore, when communication device 101 can execute both the first detection method and the second detection method, communication device 102 can detect communication device 101 via at least one of the detection methods. Note that when communication device 101 can only execute the first detection method, in F808, communication device 101 does not send a service discovery frame. However, in S806, communication device 102 responds to the probe request frame sent in F805 with a probe response frame. In this way, communication device 102 is detected by communication device 101. Note that communication device 102 can detect communication device 101 by receiving a probe request frame. Furthermore, when communication device 101 can only execute the second detection method, in F805, communication device 101 does not send a probe request frame. However, in F809, communication device 102 responds to the service discovery frame sent in F808 with a service discovery frame. In this way, communication device 101 is detected by communication device 102. Note that communication device 102 can detect communication device 101 by receiving a service discovery frame.

[0070] The communication device 100 can repeatedly execute a listening state and a search state until it receives a connection establishment request from another communication device. For example, the communication device 100 can repeatedly perform detection operations via these states until it receives a probe request frame, association request frame, etc., to request connection establishment. The communication device 100 can repeatedly execute a listening-only state or a search-only state, or it can use a combination of these states to perform detection operations. Furthermore, the communication device 100 can repeatedly perform detection operations via listening and search states until it receives a connection establishment instruction from a user, application, etc. Note that the connection establishment instruction may include information that identifies the partner communication device with which it wishes to establish a connection.

[0071] A predetermined time period can be preset for the communication device 100 to perform detection operations using the first detection method and the second detection method on each frequency channel. For example, the predetermined time period can be 100 milliseconds. This predetermined time period can be longer than 100 milliseconds or shorter than 100 milliseconds. For example, the predetermined time period can be a multiple of 100 milliseconds. By using 100 milliseconds as the time unit and setting the predetermined time period to a multiple of 100 milliseconds, the probability of detecting another communication device can be increased. The predetermined time period can be different for each frequency channel. For example, when performing detection operations using 6 channels of the 2.4 GHz band, the predetermined time period can be set to be longer than that of other frequency channels in the 2.4 GHz band (e.g., 1 channel and 11 channel). For example, if the predetermined time period for other frequency channels is 100 milliseconds, then the predetermined time period for 6 channels can be 200 milliseconds. Moreover, the predetermined time period for 6 channels can be 100 milliseconds, and the predetermined time period for other channels can be 50 milliseconds, etc. In this way, other communication devices supporting the second detection method are easier to detect.

[0072] After the communication device 100 performs a sequence of detection operations for each frequency channel for the detection operation, the communication device 100 may wait on one or more specific frequency channels. For example, as Figure 8After the detection operation shown on 11ch, communication device 101 can select a specific channel and wait to receive a signal from another communication device for a specific time period. This increases the likelihood of detecting the other communication device. For example, if communication devices 101 and 102 perform detection operations simultaneously on the same timed frequency channel switching, they might not be able to detect each other due to the continuous selection of different frequency channels. In this case, if one of the communication devices 100 waits on a specific channel after performing the sequence of detection operations, it becomes possible to detect the other communication device. For example, the specific channel could be 6ch of the 2.4 GHz band. This increases the likelihood of detecting the communication device 100 performing the second detection method. Furthermore, the specific channel can be randomly determined. This increases the likelihood of detecting a communication device performing detection operations only on a portion of the frequency channel, since the communication device waits on a different channel each time it performs the wait. Moreover, the specific channel can be a fixed channel. This increases the likelihood of detection if another communication device is performing a detection operation including this specific channel. The specific time period can be a random time period. By varying the waiting time periods of the communication device 101, the timing of frequency switching during the detection operation can be offset from each other. Therefore, the likelihood of detecting another communication device during the detection operation can be increased. Note that the communication device 101 can perform the waiting as described above before executing the sequence of detection operations using the frequency channel designated for the detection operation. For example, the communication device 101 can perform a scanning operation before executing the sequence of detection operations using the frequency channel designated for the detection operation, and then perform the waiting as described above. In this case, the frequency channel used for waiting can be 6 channels of the 2.4 GHz band. In this way, the likelihood of the communication device 101 detecting a communication device performing a second detection method can be increased.

[0073] For the communication device 100, the frequency channel selected when executing the detection operation sequence does not have to follow the order of 1ch, 6ch, and 11ch in the 2.4 GHz band. For example, the communication device 100 can preferentially select 6ch in the 2.4 GHz band, such that the order is 6ch, 1ch, and 11ch, or 6ch, 11ch, and 1ch. In this way, the communication device executing the second detection method can be detected at an earlier stage. Moreover, when executing the detection operation sequence, the communication device 100 can select a specific frequency channel that is selected more often than other frequency channels. For example, the communication device 100 can perform the detection operation in the order of 6ch, 1ch, 6ch, and 11ch, such that the number of times 6ch is selected is greater than the number of times other frequency channels are selected. In this way, for example, the communication device executing the second detection method can be detected preferentially. Note that the preferentially selected frequency channel is not limited to 6ch in the 2.4 GHz band. For example, if the frequency channel on which another communication device to be detected preferentially performs the detection operation is known, the communication device 100 can preferentially select that frequency channel. For example, if communication device 101 and communication device 102 agree to preferentially use a specific frequency channel for performing detection operations, communication device 101 may preferentially select that specific frequency channel. For example, the preferred frequency channel may be set by the user or application. For example, the preferred frequency channel may be 7 channels in the 6GHz band.

[0074] Example of the second detection operation

[0075] An example of a second detection operation performed by the communication device 100 according to this embodiment when the presence of another communication device is detected will now be described. In this example described herein, a second security method is provided in the communication device 100, but a first security method is not provided.

[0076] Figure 9 This diagram illustrates an example of a message sequence between communication devices 100 when a second security method is provided in communication device 101 but a first security method is not provided. In this example, a second security method is provided in communication devices 101 and 102, but a first security method is not provided. The first security method is, for example, WPA2. Furthermore, the second security method is, for example, WPA3. Figure 9 In, with Figure 8Similar operations will be given the same reference numerals and their descriptions will be omitted. For example, when communication device 101 receives input from a user, application, etc. (F801), communication device 101 verifies its security settings (F803). In this example, communication device 101 verifies that a second security method is set in communication device 101 but a first security method is not set. Moreover, communication device 101 performs a detection operation of the communication device on the service requester side in the second detection method. For example, communication device 101 transmits SDF (F808) using 6ch of the 2.4GHz band and waits to receive SDF from another communication device.

[0077] When communication device 102 receives input from a user, application, etc. (F802), communication device 102 confirms its security settings (F804). In this example, communication device 102 confirms that a second security method is set in communication device 102, but the first security method is not set. Moreover, communication device 102 performs a detection operation of the communication device on the service provider side in the second detection method. For example, communication device 102 waits for an SDF from another communication device on 6ch of the 2.4GHz band, and when an SDF is received (F808), it sends an SDF as a response (F809). When communication devices 101 and 102 detect each other as partner communication devices via the receipt of an SDF, communication devices 101 and 102 notify the user, application, etc. If no SDF is received, communication devices 101 and 102 can perform the detection operation again after a predetermined time interval. Note that communication device 102 does not perform the detection operation of the search state and the detection operation of the listening state in the first detection method. In this way, communication devices 101 and 102 can efficiently perform detection operations. If a second security method is provided in communication devices 101 and 102 but the first security method is not provided, the first detection method is not executed because communication with the communication device detected using the first detection method is impossible. In this way, communication device 100 can efficiently perform detection operations. Note that, as in the first detection operation example, when starting an operation to detect another communication device, communication devices 101 and 102 can perform a scanning operation to detect another communication device that is performing a GO operation. Furthermore, the SDF transmitted by communication devices 101 and 102 can be a publish frame, a subscribe frame, or a follow frame.

[0078] Note that during detection operations using 6 channels of the 2.4 GHz band, communication device 102 can receive frames other than SDF frames. For example, communication device 102 can receive beacon frames, probe request frames, probe response frames, etc. In this case, communication device 102 can respond based on the information elements (IEs) included in the received frames. For example, communication device 102 can respond based on the presence of IEs associated with security methods supported by the communication device as the sending source, WFD standard establishment processes, etc. For example, these frames may include a Robust Security Network Element (RSNE). The RSNE may include information that can identify the AKM (Access Detection Method) supported by the communication device sending the frame. The information that can identify the AKM can be called an AKM kit. For example, if the value of the AKM kit is 00-0F-AC-02 or 00-0F-AC-05, this may indicate that the communication device supports WPA2. Furthermore, if the AKM kit value is 00-0F-AC-08 or 00-0F-AC-24, this indicates that the communication device supports WPA3. Communication device 102 can determine whether to send a probe response frame based on, for example, the RSNE included in the received probe request frame. For example, if the RSNE is used to identify that communication device 101 supports WPA3, communication device 102 can determine to send a probe response frame. On the other hand, if the RSNE included in the received frame is used to identify that communication device 101 does not support WPA3, communication device 102 can determine not to send a probe response frame. In this way, by responding based on the RSNE information included in the probe request frame, communication device 102 can perform control such that it is detected or not detected based on the security methods supported by communication device 101. For example, by responding only to frames including an IE associated with WFD R2, communication device 102 can prevent itself from being detected by communication devices that cannot communicate with communication device 102 that supports the second security method.

[0079] The IE included in the aforementioned frames is not limited to RSNE. For example, the aforementioned frames may include P2P IEs. P2P IEs may include different information depending on the version of the WFD standard supported by the communication device. For example, a P2PIE for a communication device supporting WFD R2 may include a P2P Capability Extension Attribute (PCEA) or a Pairing Bootstrapping Method Attribute (PBMA). Furthermore, a P2PIE for a communication device supporting WFD R2 may include version information associated with WFD R2. Note that a WFD R2-compatible IE may be referred to as a P2P R2-compatible IE or an IE specified in the P2P R2 or later standards. The communication device 102 can determine whether to respond via a probe response frame based on the P2P IE information included in the received probe request frame. For example, if the received frame includes an IE specified in the P2P R2 or later standards, the communication device 102 may determine to send a probe response frame. In this case, the probe response frame may include an IE specified in the P2P R2 or later standards. On the other hand, if the received frame does not include an IE specified in P2P R2 or a later standard, communication device 102 can determine not to send a probe response frame. In this way, communication device 102 can respond based on the P2P IE information included in the probe request frame. In other words, communication device 101 can perform control over whether it is detected or not based on whether communication device 101 supports WFD R1 or WFD R2.

[0080] Note that if the RSNE indication included in the beacon frame or the like received from the communication device 101 only supports WPA2, the communication device 102 may assume support for both WPA2 and WPA3 to perform subsequent processing. In this case, the communication device 102 can use the P2PIE included in the same or subsequent frames to confirm whether the communication device 101 supports WPA3. For example, if the P2PIE indicates support for WFD R2, the communication device 101 can identify that it supports WPA3. Moreover, if the P2PIE included in the same or subsequent frames indicates that the communication device 101 supports WFD R1, the communication device 101 can identify that it supports WPA2.

[0081] Processing flow of communication devices

[0082] An example of the flow of the process performed by communication device 100 when detecting another communication device will now be described. In this example, communication device 100 may use both a first detection method and a second detection method to perform the operation of detecting another communication device. Moreover, in this example, communication device 100 may connect to the detected communication device using either a first establishment process or a second establishment process, depending on the method used for detection. The process may be initiated by inputting instructions from a user, application, etc., to detect or connect to another communication device. For example, the process may begin when instructed by a user, application, etc., to detect another communication device according to the WFD standard.

[0083] The communication device 100 first performs a scanning operation (S1001). For example, to detect another communication device that has been performing a GO operation, the communication device 100 waits for a beacon frame or probe response frame on each frequency channel available to that communication device. If the communication device 100 receives a beacon frame or probe response frame sent from another communication device via the scanning operation and detects that other communication device ("Yes" in S1002), the communication device 100 confirms its security settings (S1014). If the security settings of the communication device 100 support a first security method and a second security method ("No" in S1014), the communication device 100 adds the detected communication device to the device list to report to the user or application. For example, if the communication device 100 supports WPA2 and WPA3, the detected communication device can be added to the device list. On the other hand, if the security settings of the communication device 100 support the second security method but do not support the first security method (e.g., the communication device 100 supports WPA3 but does not support WPA2), the communication device 100 determines whether to establish a connection with the detected communication device. For example, communication device 100 determines whether the beacon frame or probe response frame includes an IE after P2P R2. For example, if an IE after P2P R2 is included ("Yes" in S1015), communication device 100 can determine whether there exists a combination that can perform bootstrapping between communication devices. The determination of the combination that can perform bootstrapping will be described later. If communication device 100 determines that a combination that can perform bootstrapping exists ("Yes" in S1016), communication device 100 adds the detected communication device to the device list (S1017). If the received beacon frame, etc., does not include information elements after P2P R2, communication device 100 does not add the detected communication device to the device list. Furthermore, if communication device 100 determines that there is no combination that can perform bootstrapping, communication device 100 does not add the detected communication device to the device list. In other words, in such cases, communication device 100 determines that it cannot connect to the detected communication device.

[0084] The communication device 100 can present communication devices registered in the device list to users, applications, etc., and can accept the selection of communication devices with which to establish a connection. The communication device 100 can use the device name included in the received P2P IE or the P2P device address of the received frame sending source as information for users, etc., to identify the detected communication device. Furthermore, upon receiving an SDF (Service Descriptor File), the communication device 100 can display the service name included in the received SDF. Upon accepting the selection of a communication device with which to establish a connection ("Yes" in S1003), the communication device 100 ends or suspends the communication device detection operation and executes the process for establishing a connection with the selected communication device. The communication device 100 can continue the detection operation until it accepts the user's or other user's selection of a communication device with which to establish a connection ("No" in S1003). Note that if the communication device 100 has previously accepted the registration of communication devices with which to establish a connection from the user or application and detected a registered communication device, the communication device 100 can execute the process for automatically establishing a connection. In this way, a connection can be established quickly without waiting for a selection from the user or application.

[0085] Note that the communication device 100 can perform the following detection operations without performing a scanning operation. Furthermore, the communication device 100 can perform one or more scanning operations. For example, the communication device 100 can perform a scanning operation each time a sequence of detection operations is executed. The sequence of detection operations can be one or more detection operations performed using a frequency channel specific to the detection operations. The communication device 100 can perform scanning operations periodically. Moreover, the communication device 100 can receive a selection from a user or application for a communication device with which it wishes to establish a connection, and while performing the process of establishing a connection with another communication device, it can also receive an instruction from the user or application to cancel the connection establishment process. In this case, the communication device 100 can either perform a scanning operation again or start a detection operation without performing a scanning operation. For example, if the time from receiving the user's or application's selection of a communication device with which it wishes to establish a connection to to receiving the instruction to cancel the connection establishment process is less than a predetermined time, the communication device 100 can start a detection operation without performing a scanning operation. On the other hand, if the time from accepting the user's or application's selection of a communication device to establish a connection with to accepting the instruction to cancel the connection establishment process is greater than a predetermined time, the communication device 100 may start the detection operation after performing the scanning operation.

[0086] Furthermore, the communication device 100 can update its device list. For example, if a new communication device is detected, the communication device 100 can add it to the device list. For instance, while the communication device 100 can detect a specific communication device, it can retain that specific communication device in the device list, and if a predetermined time period has elapsed since the specific communication device became undetectable, the communication device 100 can remove that specific communication device from the device list. The communication device 100 can store the date and time when a specific communication device was detected. The date and time when a specific communication device was detected can be updated to the time when that specific communication device was last detected. Moreover, the detected date and time can be stored and displayed to the user or application in association with the detected communication device.

[0087] After the scanning operation, the communication device 100 confirms its security settings and performs a detection operation based on these settings. For example, if the communication device 100 is equipped with a first security method and a second security method ("No" in S1004), the detection operation is performed using the first detection method and the second detection method (S1005). For example, if the communication device 100 is equipped with WPA2 and WPA3, the detection operation is performed using the first detection method and the second detection method. In this case, the communication device 100 performs the detection operation using a first frequency channel and a second frequency channel. The second frequency channel may be included in the first frequency channel. For example, the communication device 100 may use 1ch, 6ch, and 11ch of the 2.4GHz band as the first frequency channel to perform the detection operation. Moreover, the communication device 100 may use 6ch of the 2.4GHz band as the second frequency channel to perform the detection operation. The first frequency channel may include frequency channels other than those described above, and may not include one or more or all of the frequency channels described above. The second frequency channel may include two or more frequency channels, and may be different from the first frequency channel. The first and second frequency channels can be frequency channels in the 5GHz band, 6GHz band, etc., instead of the frequency channels in the 2.4GHz band. In this example, channels 1, 6, and 11 of the 2.4GHz band are set as the first frequency channel, and channel 6 is set as the second frequency channel. For example, communication device 100 can perform detection operations using probe request frames and SDF on channels 1, 6, and 11 of the 2.4GHz band. Communication device 100 can transmit SDF using channel 6 of the 2.4GHz band, but can transmit SDF without using channels 1 and 11. Communication device 100 determines whether another communication device has been detected using each frequency channel (S1006). For example, communication device 100 can detect another communication device by receiving a beacon frame, probe request frame, probe response frame, or SDF. If another communication device is detected ("Yes" in S1006), communication device 100 determines whether to add the detected communication device to the device list. For example, if the detected communication device is not registered in the device list ("Yes" in S1007), the communication device 100 can add the detected communication device to the device list (S1008). If the detected communication device is registered in the device list ("No" in S1007), the communication device 100 may not add it. The communication device 100 will register or add the communication devices detected using each frequency channel to the device list, present this information to users, applications, etc., and determine whether a connection destination selection has already been made by the user, application, etc. (S1003).

[0088] On the other hand, if the communication device 100 is equipped with a second security method but not a first security method ("Yes" in S1004), the detection operation is performed using the second detection method instead of the first detection method (S1009). For example, if the communication device 100 is equipped with WPA3 but not WPA2, the detection operation is performed using the second detection method instead of the first detection method. In this case, the communication device 100 performs the detection operation using a second frequency channel. The communication device 100 can detect another communication device by receiving SDF on 6 channels of the 2.4 GHz band (S1010). If another communication device is detected ("Yes" in S1010), the communication device 100 determines whether to add the detected communication device to the device list. For example, if the detected communication device is not registered in the device list ("Yes" in S1011), the communication device 100 can add the detected communication device to the device list (S1008). If the detected communication device is registered in the device list ("No" in S1011), the communication device 100 may not add it. Communication device 100 registers or adds the communication devices detected using each frequency channel to the device list, presents them to users, applications, etc., and determines whether a connection destination selection has already been made by the user, application, etc. (S1003). Note that communication device 100 can receive beacon frames, probe request frames, probe response frames, or other similar frames other than SDF sent from another communication device on 6ch of the 2.4GHz band ("Yes" in S1010). In this case, communication device 100 determines whether the received frame includes information elements (IEs) after P2P R2. If IEs after P2P R2 are included ("Yes" in S1012), communication device 100 can determine, based on the information included in the IE, whether there is a combination that can perform bootstrapping between the communication devices. The determination of the combination that can perform bootstrapping will be described later. If communication device 100 determines that there is a combination that can perform bootstrapping ("Yes" in S1013), communication device 100 adds the detected communication device to the device list (S1007). The communication device 100 registers or adds the detected communication devices to the device list, presents them to users, applications, etc., and determines whether a connection destination has already been selected by the user, application, etc. (S1003).

[0089] The process by which communication device 100 determines a combination that can be used to perform bootstrapping with another communication device will now be described. In the bootstrapping process, a method for exchanging communication parameters, PASN parameters, etc., can be determined between the communication devices, and the parameters are exchanged using this method. Here, if each communication device presents a combination of functions required for the method of exchanging parameters between the communication devices, it can be determined that a combination capable of performing bootstrapping exists. On the other hand, if the method for exchanging parameters cannot be performed via the combination of functions presented by each communication device, it can be determined that no combination capable of performing bootstrapping exists. For example, to perform a method for exchanging parameters using a QR code, one communication device needs to display a QR code, and the other communication device needs to read the QR code. Therefore, if one communication device presents that it can display a QR code, and the other communication device presents that it can read a QR code, it can be determined that a combination capable of performing bootstrapping exists. Moreover, if one communication device presents that it can only display a QR code, and the other communication device does not present that it can read a QR code, it can be determined that no combination capable of performing bootstrapping exists. For example, if one communication device can display a personal identification number (PIN) and the other communication device can input a PIN, it can be determined that a combination capable of performing bootstrapping exists. For example, if one communication device can display a passphrase and another can input a passphrase, it can be determined that a combination capable of bootstrapping exists. Similarly, if one communication device can operate as an NFC tag and another as an NFC reader, it can be determined that a combination capable of bootstrapping exists. If each communication device can perform opportunistic bootstrapping, it can be determined that a combination capable of bootstrapping exists. Furthermore, parameter exchange can be performed using service-managed bootstrapping executed in the service layer or application layer. In this case, if each communication device can exchange parameters using methods defined in the service layer or application layer, then a combination capable of bootstrapping exists. Note that if the communication devices exchange passphrases or parameters via methods different from those described above, a combination capable of bootstrapping exists. The method for determining the existence of a combination capable of bootstrapping is not limited to those methods described above, and only requires that both communication devices can present a combination of functions necessary to perform the method for exchanging parameters between the communication devices. On the other hand, if parameters cannot be exchanged using any combination of one or more functions presented by one communication device and one or more functions presented by another communication device, it can be determined that no combination capable of bootstrapping exists.

[0090] Note that this example describes both the case where the communication device 100 is equipped with a first security method and a second security method, and the case where the communication device 100 is equipped with a second security method but not a first security method. When the communication device 100 is equipped with a first security method but not a second security method, the communication device 100 can perform a detection operation using the first detection method instead of the second detection method. In this case, the communication device 100 can perform the detection operation using a first frequency channel via a probe request frame or a probe response frame. Furthermore, in this case, if the detected communication device supports the first security method, the communication device 100 can add it to the device list based on the IE included in the beacon frames, probe response frames, etc., received during the scan operation. Additionally, in this case, if the detected communication device supports the first security method, the communication device 100 can send a probe response frame based on the IE included in the received beacon frames, probe request frames, etc. Note that the communication device 100 can perform a scan operation before performing a detection operation. For example, the communication device 100 can detect the presence of another communication device by receiving a beacon frame during the scan operation. Using this configuration, another communication device can be detected efficiently when the communication device 100 supports the first security method but not the second security method.

[0091] Connection establishment process

[0092] When communication device 100 detects another communication device, it establishes a connection based on a selection by the accepting user or application. For example, communication device 100 performs parameter exchange (such as communication parameters) and uses these parameters to exchange frames to establish a connection. Furthermore, communication device 100 uses the exchanged parameters to communicate with its partner communication device. Communication device 100 can establish a connection using either the first or second establishment process described above. For example, if another communication device is detected using the first detection method, communication device 100 can use the first establishment process to establish a connection. For example, if a communication device is detected by receiving beacon frames, probe request frames, probe response frames, etc., communication device 100 can use the first establishment process to establish a connection. Furthermore, if another communication device is detected using the second detection method, communication device 100 can use the second establishment process to establish a connection. For example, if a communication device is detected by receiving SDF, etc., communication device 100 can use the second establishment process to establish a connection. Note that, for example, even if the received beacon frames, probe request frames, probe response frames, etc., include IEs after P2P R2, the communication device 100 can still establish a connection using the second establishment procedure. Note that the establishment procedure used by the communication device 100 is not limited to these procedures, and another establishment procedure can be used.

[0093] When the first detection method and the second detection method are executed in parallel, the communication device 100 can detect the same communication device via different detection methods. For example, Figure 8 As shown, communication device 101 can detect communication device 102 via a probe response frame received in F806 and an SDF received in S809. In this case, communication device 100 can establish a connection using either a first establishment process or a second establishment process. For example, communication device 100 can determine the establishment process to use based on the priority order set for the establishment process. For example, the priority order for the establishment process can be specified by the user or application. Moreover, the priority order for the establishment process can be determined based on the security strength when executing the establishment process. For example, a high priority order can be given to the second establishment process, which includes authentication via PASN, while a low priority order can be given to the first establishment process. This can increase communication security. Alternatively, the priority order can be set based on the success probability of the establishment process. For example, in the case of using the second establishment process, there is a possibility that no combination of operations can be performed. Therefore, a high priority order can be given to the first establishment process, while a low priority order can be given to the second establishment process. This can increase the success probability of establishing a connection, thereby allowing for rapid connection establishment.

[0094] If a connection cannot be established as a result of executing a high-priority establishment process, the communication device 100 may then execute a low-priority establishment process. Note that the communication device 100 may simply provide the order in which the establishment processes are attempted, rather than assigning a priority order to each establishment process. Figure 11 The illustration shows an example of a sequence in which communication device 101 attempts to establish a connection with communication device 102 using a second establishment process, and then establishes a connection using a first establishment process. In this example, as a result of communication device 101 performing a detection operation using a first detection method and a second detection method, communication device 102 is detected via each detection method. Furthermore, as a result of communication device 101 attempting to establish a connection with communication device 102 using the second establishment process, it is determined that no combination is available for booting. Then, based on this determination, communication device 101 establishes a connection with communication device 102 using the first establishment process. Note that in... Figure 11 In, with Figure 4 and Figure 5 Operations similar to those in the attached figures will be given the same reference numerals and their descriptions will be omitted.

[0095] First, communication device 101 presents to the user or application an option to establish a connection with communication device 102, indicating that communication device 102 has been detected. Communication device 101 sends a boot request frame (F501) for performing boot processing in the second establishment process. The boot request frame may indicate a method for exchanging communication parameters that can be used by communication device 101. Communication device 102 responds with a boot response frame (F502). The boot response frame may indicate a method for exchanging communication parameters that can be used by communication device 102. In this example, communication device 101 determines, via the received boot response frame, that there is no combination between communication device 101 and communication device 102 that can execute the boot response frame. For example, if the combination of the functions available to communication device 101 and the functions reported by communication device 102 cannot execute the method for exchanging communication parameters, communication device 101 may determine that there is no combination that can perform booting. In this case, communication device 101 can switch from the second establishment process to the first establishment process and perform GO negotiation processing without performing boot processing (F403). In other words, communication device 101 determines which communication device is operating as a GO and which is operating as a CL, and determines the frequency channel on which the GO operates. Note that since communication device 101 does not perform a bootstrapping process and does not share PASN parameters with communication device 102, the communication device does not use PASN for authentication. Communication device 101 performs WPS processing according to the role determined by the GO negotiation process and shares communication parameters with communication device 102 (F404). In the case where communication device 101 is operating as a GO, communication device 101 broadcasts a beacon frame using the frequency channel determined in the GO negotiation process (F405). Communication device 101 and communication device 102 establish a connection using the communication parameters shared in the WPS process (F406 to F411). In this way, if another communication device is detected using the first detection method and the second detection method, communication device 100 can execute the second establishment process and the first establishment process in sequence. Accordingly, since an attempt is made to establish a connection using another establishment process if one establishment process cannot be used, the likelihood of establishing a connection is increased. Furthermore, because it does not present information about connection failure to users or applications and does not require users or applications to instruct it to re-establish the connection, it improves user-friendliness for users and applications.

[0096] If a connection cannot be established using one establishment process and a switch to another establishment process is initiated, communication device 100 can determine whether the partner communication device can execute another establishment process. For example, when communication device 101 is in... Figure 11If, in F502, it is determined that no combination suitable for performing the boot process exists, communication device 101 may confirm whether communication device 102 supports the first establishment process before switching to the first establishment process. For example, communication device 101 may confirm that communication device 102 supports the first establishment process by sending a probe request frame to communication device 102 and receiving a probe response frame from communication device 102. In this case, communication device 101 may send a probe request frame to communication device 102 that does not include the IE after P2P R2. Then, communication device 101 may determine that communication device 102 supports the first establishment process based on the probe response frame received from communication device 102 that does not include the IE after P2P R2. The method for confirming whether communication device 102 supports the first establishment process is not limited to this method, and communication device 101 may perform any method that can confirm whether communication device 102 supports the first establishment process.

[0097] Frame configuration example

[0098] The configuration of the SDF used when the communication device 100 performs the second detection method will now be described. Figure 12 The diagram illustrates an example of SDF configuration. SDF can be configured with action frames in the format specified in the IEEE 802.11 standard family. SDF includes a "Category" field 1201, an "Action" field 1202, an "OUI" field 1203, an "OUI Type" field 1204, and a "NAN Attributes" field 1205. NAN is an abbreviation for Neighbor Awareness Networking. The "Category" field 1201 and the "Action" field 1202 are set to values ​​of 0x04 and 0x09, respectively, indicating that the frame is a vendor-specific action frame. The "OUI" field 1203 is set to a value of 0x50-6F-9A, indicating that the frame is specified by a standard established by the Wi-Fi Alliance. The "OUI Type" field 1204 is set to a value of 0x13, indicating that the frame is specified by the Wi-Fi Aware standard. Furthermore, the "OUI Type" field 1204 can indicate the NAN version and type included in the subsequent "NAN Attributes" field. Note that the "OUI Type" field 1204 can be set to a value of 0x02 or 0x09, indicating that the frame is specified by the Wi-FiDirect standard.

[0099] The “NAN Attribute” field 1205 may include one or more attributes. For example, the attributes included in the “NAN Attribute” field 1205 may be service descriptor attributes that indicate information related to the service. Service descriptor attributes may include, for example, an “Attribute ID” field 1211, a “Length” field 1212, a “Service ID” field 1213, and an “Instance ID” field 1214. Service descriptor attributes may include a “Requester ID” field 1215 and a “Service Control” field 1216. Service descriptor attributes may include a “Service Information Length” field 1217 and a “Service Information” field 1218. The “Attribute ID” field 1211 indicates the type of the attribute and is set to a value of 0x03, indicating that the following field is a service descriptor attribute. The “Length” field 1212 indicates the length of the attribute. The “Service ID” field 1213 indicates the name of the service provided or requested by the communication device 100. The service name may be represented by a value processed via hashing. The “Instance ID” field 1214 indicates the ID assigned to the service managed by the communication device 100 and provided or requested. For example, the "Instance ID" field 1214 could be an ad ID or a seeker ID. When receiving an SDF from a partner communication device, the "Requester ID" field 1215 could be set with the instance ID included in the SDF. The "Service Control" field 1216 could include information such as indicating whether to publish, subscribe, or follow. Furthermore, the "Service Control" field 1216 could indicate the presence of subsequent "Service Information Length" and "Service Information" fields 1217 and 1218. The "Service Information Length" field 1217 indicates the length of the subsequent "Service Information" field 1218. The "Service Information" field 1218 indicates service-related information. For example, the "Service Information" field 1218 could include the device name of the communication device 100, UUID, service name, port number, and the type of protocol used after connection. If more information must be included in the "Service Information" field 1218, the "Service Information" field 1218 indicates a value of 0x0E. In this case, the Service Descriptor Extended Attribute (SDEA) could be included after this frame.

[0100] The “NAN Attribute” field 1205 can be a bootstrapping method attribute, used to report the communication parameter exchange methods that the communication device 100 can execute during bootstrapping processing. The bootstrapping method attribute may include an “Attribute ID” field 1211, a “Length” field 1212, a “Cookie” field 1221, and a “Bootstrapping Method” field 1222. The “Attribute ID” field 1211 is set to a value of 0x33, indicating that the following field is a bootstrapping method attribute. The “Length” field 1212 indicates the length of the attribute. The “Cookie” field 1221 can be used to maintain a session with a partner communication device. For example, if the communication device 100 attempts to determine an exchange method with a specific communication device using bootstrapping but fails, the value of the cookie used at this time can be used when re-attempting to determine an exchange method with the specific communication device. Accordingly, it can be recognized that an attempt to determine an exchange method is being made again with the same communication device and in the same session. The “Bootstrapping Method” field 1222 indicates the exchange method via bootstrapping that can be executed by the device. The “Bootstrapping Method” field 1222 can also indicate the bootstrapping method expected to be executed by the device. For example, the "Guidance Method" field 1222 can be represented in bitmap format. For example, the "Guidance Method" field 1222 can be configured to be 16 bits, and each bit can indicate whether an exchange method is possible. For example, if an exchange method via guidance can be executed by pressing a button, bit 0 can indicate a value of 1. For example, if a personal identification code can be displayed numerically, bit 1 can indicate a value of 1. For example, if a passphrase including a string can be displayed, bit 2 can indicate a value of 1. For example, if a QR code can be displayed, bit 3 can indicate a value of 1. For example, if an exchange method using an NFC tag can be executed, bit 4 can indicate a value of 1. For example, if a UI for inputting numerical values ​​is present, bit 5 can indicate a value of 1. For example, if a string can be input as a passphrase, bit 6 can indicate a value of 1. For example, if a camera for reading QR codes is present, bit 7 can indicate a value of 1. For example, if the device can operate as an NFC reader, bit 8 can indicate a value of 1. For example, bit 14 can indicate a value of 1 if parameter exchange can be performed against the PASN specified in the WFD standard. For example, PASN parameter exchange can be performed using Bluetooth, etc. For example, bit 15 can indicate a value of 1 if connection parameters can be exchanged via different methods. Note that the names of each IE and attribute included in the format according to this example are illustrative and different names may be used. Furthermore, the arrangement of each IE and attribute in the format here is illustrative, and each IE and attribute may be arranged in an appropriate position inside or outside the format.

[0101] Accept security settings

[0102] The communication device 100 can accept security settings from users, applications, etc. For example, the communication device 100 can accept one or both of a first security method and a second security method to be used from users, applications, etc. Figure 13 The illustration shows an example of a user interface screen configuration for communication device 100 to accept security method settings from a user. For example, for communication device 100, security settings can be accepted by the user selecting one of the security methods displayed in drop-down list 1302 that appears when the user selects the box located to the right of the "Encryption" display 1301. For example, by selecting either WPA2-PSK (TKIP / AES) or WPA2-EAP (AES), communication device 100 can accept WPA2 as the selected security method. Similarly, by selecting either WPA3-SAE (AES) or WPA3-EAP (AES), communication device 100 can accept WPA3 as the selected security method. Furthermore, by selecting either WPA2-PSK / WPA3-SAE (AES) or WPA2 / WPA3-EAP (AES), communication device 100 can accept both WPA2 and WPA3 as security methods. Figure 14 The illustration shows an example where the user selects WPA3-SAE (AES). In this case, the communication device 100 can accept WPA3 as the selected security method. When receiving an instruction from the user or application to establish a connection with another communication device via Wi-Fi Direct, the communication device 100 can perform a detection operation using a second detection method and can establish a connection with the detected other communication device using a second establishment process.

[0103] Note that the screen for receiving security settings from users, applications, etc., for communication device 100 is not limited to this example. For example, it may include... Figure 13 and Figure 14 Components not included in the document and may be omitted. Figure 13 and Figure 14 This includes one or more of the components. The method for setting user input security settings may not be via a dropdown list. For example, as a method for setting user input security settings, available security methods can be pre-displayed via radio buttons, lists, etc., from which the user can select. Figure 15 The illustration shows an example of a screen configuration for another user interface that allows the communication device 100 to accept security settings input from the user. Figure 15 As shown, the security method that can be configured in the communication device 100 can be set as a button. Figure 15In the diagram, the currently configured security method in communication device 100 is indicated by a shaded area. In other words, it indicates that WPA3-SAE is configured in communication device 100. By clicking the button corresponding to another security method, communication device 100 can accept the configuration of that security method. For example, clicking the button corresponding to WPA2 / WPA3-EAP allows communication device 100 to accept WPA2 and WPA3 as selected security methods. In this case, when an instruction to establish a connection with another communication device via Wi-Fi Direct is received from the user or an application, communication device 100 can perform a detection operation using a first detection method and a second detection method. Furthermore, communication device 100 can select one of the establishment processes based on the detection method used to detect the other communication device and establish a connection with the detected other communication device.

[0104] As described above, the communication device 100 according to this embodiment performs a detection operation using a first detection method, a second detection method, or both, based on a security method set in the device as a security method to be used in communication. For example, if one or more security methods set for the communication device 100 include a second security method but do not include a first security method, the communication device 100 can execute the second detection method without executing the first detection method. For example, if one or more security methods set for the communication device 100 include both a first security method and a second security method, the communication device 100 can execute the first detection method and the second detection method in parallel. With this configuration, when the communication device 100 is equipped with WPA3, the communication device 100 does not use the 1ch and 11ch of the 2.4GHz band to perform the detection operation. In this way, the detection operation using the frequency channel of a communication device that the communication device 100 cannot communicate with is not performed. Therefore, the amount of time spent on the detection operation is reduced. This allows for the rapid establishment of a connection with the communication device desired by the user, thereby improving user-friendliness. Moreover, since communication devices that the communication device 100 cannot communicate with are not presented to the user, user-friendliness is further improved. Furthermore, when the communication device 100 is equipped with WPA2 and WPA3, the communication device 100 performs detection operations using 1ch and 11ch of the 2.4GHz frequency band. Accordingly, the communication device 100 can detect both communication devices supporting WFD R1 and communication devices supporting WFD R2. Therefore, even though the WFD standard specifies multiple detection methods and connection establishment procedures, a connection can be established with another communication device without the user's knowledge. This improves user-friendliness. Note that in the above embodiment, the first security method is WPA2 and the second security method is WPA3. However, different security methods can be used for each of them. For example, the second security method can be a standard that is a successor to WPA3 or a non-WPA security method. For example, the second security method can be WPA3 version 3, WPA3 version 4, WPA4, etc. Moreover, the first security method can be a WPA security method or a non-WPA security method.

[0105] This disclosure can be implemented by providing a program that implements one or more of the functions of the above embodiments to a system or device via a network or storage medium, and having the program read and executed by one or more processors in the computer of the system or device. Furthermore, this disclosure can be implemented by a circuit (e.g., an ASIC) that implements one or more of the functions.

[0106] Other embodiments

[0107] The embodiments of this disclosure can also be implemented by a computer that reads and executes computer-executable instructions (e.g., one or more programs) recorded on a storage medium (which may also be more fully referred to as a "non-transitory computer-readable storage medium") to perform the functions of one or more embodiments described above and / or includes one or more circuits (e.g., application-specific integrated circuits (ASICs)) for performing the functions of one or more embodiments described above, and by a method executed by a computer of a system or device, for example, by reading and executing computer-executable instructions from a storage medium to perform the functions of one or more embodiments described above and / or controlling one or more circuits to perform the functions of one or more embodiments described above. The computer may include one or more processors (e.g., a central processing unit (CPU), a microprocessor unit (MPU)) and may include a network of individual computers or individual processors to read and execute computer-executable instructions. The computer-executable instructions may be provided to the computer, for example, from a network or storage medium. The storage medium may include, for example, a hard disk, random access memory (RAM), read-only memory (ROM), storage devices for distributed computing systems, optical discs (such as CDs, DVDs, or Blu-ray discs). TM One or more of the following: flash memory devices, memory cards, etc.

[0108] Embodiments of the present invention can also be implemented by providing software (including computer program products of computer programs) that performs the functions of the above embodiments to a system or device via a network or various storage media, and the computer (central processing unit (CPU) or microprocessor unit (MPU) of the system or device) reads and executes the computer program.

[0109] While this disclosure has been described with reference to exemplary embodiments, it should be understood that this disclosure is not limited to the disclosed exemplary embodiments. The scope of the appended claims should be given the broadest interpretation to cover all such modifications and equivalent structures and functions.

Claims

1. A communication apparatus that performs a wireless communication method conforming to a Wi-Fi Direct standard, comprising: a detection unit configured to detect a presence of another communication apparatus using a first detection method that utilizes a probe request frame and a second detection method that utilizes a service discovery frame; and an establishment unit configured to establish a connection with the other communication apparatus detected by the detection unit using a first establishment procedure associated with the first detection method or a second establishment procedure associated with the second detection method as an establishment procedure for establishing a connection with the other communication apparatus, wherein in a case where the first establishment procedure supports a first security method and the second establishment procedure supports a second security method as a security method to be used in communication, the detection unit: performs the first detection method based on the first security method being set in the communication apparatus, and performs the second detection method based on the second security method being set in the communication apparatus.

2. The communication apparatus according to claim 1, wherein in a case where one or more security methods set in the communication apparatus as a security method to be used in communication include the second security method and do not include the first security method, the detection unit performs the second detection method and does not perform the first detection method.

3. The communication apparatus according to claim 1, wherein in a case where one or more security methods set in the communication apparatus as a security method to be used in communication include the first security method and the second security method, the detection unit performs the first detection method and the second detection method in parallel.

4. The communication apparatus according to claim 1, wherein the first security method is Wi-Fi Protected Access (WPA) 2, and the second security method is WPA 3.

5. The communication apparatus according to claim 1, wherein the detection unit: performs detection of the presence of the other communication apparatus using each of one or more first frequency channels in a case where the first detection method is performed, and performs detection of the presence of the other communication apparatus using each of one or more second frequency channels included in the first frequency channels in a case where the second detection method is performed.

6. The communication apparatus according to claim 5, wherein the first frequency channels include 1 ch, 6 ch, or 11 ch in a 2.4 GHz band.

7. The communication apparatus according to claim 5, wherein the second frequency channels include 6 ch in the 2.4 GHz band.

8. The communication apparatus according to claim 1, wherein in performing the first detection method, the detection unit performs transmission of a probe request frame and receives a probe response frame transmitted from the other communication apparatus after the transmission to detect the presence of the other communication apparatus.

9. The communication apparatus according to claim 1, wherein in performing the first detection method, the detection unit receives a probe request frame transmitted from the other communication apparatus to detect the presence of the other communication apparatus.

10. The communication apparatus according to claim 1, wherein In performing the second detection method, the detection unit receives a service discovery frame transmitted from another communication apparatus to detect the presence of the other communication apparatus.

11. The communication apparatus according to claim 1, wherein the detection unit further performs a third detection method for detecting the presence of another communication apparatus by receiving a beacon frame transmitted from the other communication apparatus including information specified in the Wi-Fi Direct standard, and as the security method to be used in the communication, the detection unit: in a case where the first security method is provided in the communication apparatus, detects the presence of the other communication apparatus by receiving a beacon frame, and in a case where the second security method is provided in the communication apparatus, detects the presence of the other communication apparatus by receiving a beacon frame including information indicating that the other communication apparatus supports the second setup procedure.

12. The communication apparatus according to claim 1, wherein in a case where the detection unit receives a probe request frame from another communication apparatus, the detection unit: transmits a probe response frame based on the one or more security methods provided in the communication apparatus including the first security method, and does not transmit a probe response frame based on the one or more security methods provided in the communication apparatus not including the first security method.

13. The communication apparatus according to claim 1, wherein in a case where the detection unit receives a service discovery frame indicating a subscription from another communication apparatus, the detection unit: transmits a service discovery frame indicating a publication based on the one or more security methods provided in the communication apparatus including the second security method, and does not transmit a service discovery frame indicating a publication based on the one or more security methods provided in the communication apparatus not including the second security method.

14. The communication apparatus according to claim 1, further comprising: an acceptance unit configured to accept an input from a user, wherein the detection unit detects the presence of the other communication apparatus based on a single instruction from the user.

15. A control method executed by a communication apparatus that performs a wireless communication method conforming to the Wi-Fi Direct standard, comprising: detecting the presence of another communication apparatus using a first detection method using a probe request frame and a second detection method using a service discovery frame; and establishing a connection with the other communication apparatus detected in the detection using a first setup procedure associated with the first detection method or a second setup procedure associated with the second detection method as a setup procedure for establishing a connection with the other communication apparatus, wherein in a case where, as the security method to be used in the communication, the first setup procedure supports a first security method and the second setup procedure supports a second security method, in the detection: the first detection method is executed based on the first security method being provided in the communication apparatus, and the second detection method is executed based on the second security method being provided in the communication apparatus.

16. A computer program product comprising instructions which, when executed by a computer comprised in a communication apparatus performing a wireless communication method in compliance with the Wi-Fi Direct standard, cause the computer to perform a method comprising: detecting a presence of another communication apparatus using a first detection method using a probe request frame and a second detection method using a service discovery frame; and establishing a connection with the other communication apparatus detected in the detecting using a first establishment procedure associated with the first detection method or a second establishment procedure associated with the second detection method as an establishment procedure for establishing a connection with the other communication apparatus, wherein in a case where the first establishment procedure supports a first security method and the second establishment procedure supports a second security method as a security method to be used in the communication: the first detection method is executed based on the first security method being set in the communication apparatus in the detecting, and the second detection method is executed based on the second security method being set in the communication apparatus.