Communication device, control method for communication device, and program

By encoding information about data frame groups with consecutive sequence numbers in the Ack frame using specific subfields, the wireless communication device reduces bandwidth consumption associated with acknowledgment responses in the IEEE 802.11be standard.

JP7696202B2Active Publication Date: 2025-06-20CANON KK
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2020177444
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2020-10-22
Publication Date
2025-06-20
Estimated Expiration
2040-10-22

AI Technical Summary

Technical Problem

The expansion of the number of MPDUs for which acknowledgment responses can be made at one time in the IEEE 802.11be standard leads to an increase in the amount of data for acknowledgment responses, resulting in higher bandwidth consumption.

Method used

A wireless communication device is configured to generate an acknowledgment (Ack) frame with specific information that specifies data frame groups with consecutive sequence numbers, using different values in the BA Type, Reserved, and BA Subtype subfields to encode information about the start and end sequence numbers and the number of consecutive sequence numbers.

Benefits of technology

This approach reduces the amount of data required for acknowledgment responses, thereby minimizing bandwidth consumption while maintaining efficient throughput and frequency utilization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007696202000001
    Figure 0007696202000001
  • Figure 0007696202000002
    Figure 0007696202000002
  • Figure 0007696202000003
    Figure 0007696202000003
Patent Text Reader

Abstract

To provide a radio communication apparatus, a control method of the radio communication apparatus and a program that can realize an acknowledgement using a small amount of data.SOLUTION: A radio communication apparatus conforming to a series of IEEE802.11 standards receives a plurality of data frames, to each of which a sequence number is attached, from a communication partner device; generates an acknowledgement (Ack) frame for the plurality of data frames; and transmits the Ack frame to the communication partner device. The communication apparatus includes information identifying one or more data frame groups separated for each series of data frame, in which the sequence numbers are consecutive numbers, of the plurality of data frames into the Ack frame.SELECTED DRAWING: Figure 6
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to wireless communication technology.

Background Art

[0002] As a wireless LAN (Local Area Network) communication standard formulated by IEEE (Institute of Electrical and Electronics Engineers), the IEEE802.11 series is known. The IEEE802.11 series standards include standards such as IEEE802.11a / b / g / n / ac / ax standards (Patent Document 1).

[0003] In the IEEE802.11ax standard, for the reception of a plurality of wireless packets, an extended specification of a BlockAck frame that can transmit an acknowledgement (ACK) in one frame is disclosed. In the IEEE802.11ax standard, a specification is disclosed to extend the number of MPDUs (MAC (Media Access Control) Protocol Data Units) that can be represented by the BlockAck Bitmap in the BlockAck frame from 64 to 256 up to IEEE802.11ac. By increasing the number of MPDUs for which an acknowledgement can be made at one time, an improvement in throughput is realized.

Prior Art Documents

Patent Documents

[0004]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0005] The IEEE is considering formulating the IEEE 802.11be standard as a new standard in the IEEE 802.11 series to further improve throughput and frequency utilization efficiency. In the IEEE 802.11be standard, it is proposed to further expand the number of MPDUs for which acknowledgment responses can be made at one time to 512 or 1024. With this method, improvement in throughput and improvement in frequency utilization efficiency can be achieved. On the other hand, due to this expansion, there is a problem that the amount of data for acknowledgment responses increases and the bandwidth is consumed more than in the conventional method.

[0006] The present invention has been made in view of the above problems, and an object thereof is to provide a technique for realizing an acknowledgment response with a small amount of data.

Means for Solving the Problems

[0007] To achieve the above object, a wireless communication device according to an aspect of the present invention has the following configuration. That is, it is a communication device compliant with the IEEE 802.11 standard series, including a receiving means for receiving a plurality of data frames each assigned a sequence number from a communication partner device, a generating means for generating an acknowledgment (Ack) frame for the plurality of data frames received by the receiving means, and a transmitting means for transmitting the Ack frame generated by the generating means to the communication partner device. The generating means includes specific information for specifying in the Ack frame one or more data frame groups distinguished for each series of data frames in which the sequence numbers are consecutive among the plurality of received data frames. When the generation means includes, as the specific information, information on the start sequence number and the end sequence number of a series of data frames in each data frame group in the ACK frame, it stores data indicating a first value in at least one of the BA Type subfield, the Reserved subfield, and the BA Subtype subfield of the ACK frame. When the ACK frame includes information on the start sequence number of a series of data frames in each data frame group and information on the number of consecutive sequence numbers from the start sequence number to the end sequence number of the series of data frames, it stores data indicating a second value different from the first value in at least one of the BA Type subfield, the Reserved subfield, and the BA Subtype subfield of the ACK frame. When the ACK frame includes information on the start sequence number of a series of data frames in each data frame group, information on the number of consecutive sequence numbers from the start sequence number to the end sequence number of the series of data frames, and information indicating the size of the information on the number, it stores data indicating a third value different from both the first value and the second value in at least one of the BA Type subfield, the Reserved subfield, and the BA Subtype subfield of the ACK frame 。

Effects of the Invention

[0008] According to the present invention, a technique for realizing an acknowledgment response with a small amount of data is provided.

Brief Description of the Drawings

[0009]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Embodiments for Carrying Out the Invention

[0010] Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the invention according to the claims. Although a plurality of features are described in the embodiments, not all of these plurality of features are essential for the invention, and the plurality of features may be arbitrarily combined. Further, in the accompanying drawings, the same or similar configurations are denoted by the same reference numerals, and redundant descriptions are omitted.

[0011] (Configuration of the Network) FIG. 1 shows a network configuration example according to this embodiment. FIG. 1 shows a configuration including one AP (access point) (AP102) and one STA (station / terminal device) (STA103) as communication devices. Note that the description of this embodiment is applicable to both the AP and the STA and is not limited to either. As shown in FIG. 1, the network formed by AP102 is indicated by a circle 101.

[0012] In this embodiment, it is assumed that STA103 can transmit and receive frames via the wireless link 104 with AP102. The wireless link 104 can use channels in the frequency bands of 2.4 GHz, 5 GHz, and 6 GHz, but the frequency band used is not limited to this, and another frequency band such as 60 GHz may be used. Also, the wireless link 104 is not limited to one link. Depending on the Capability information of the Multi-Link communication between the STA and the AP, channels in the 2.4 GHz band and the 5 GHz band may be combined and used, or a plurality of channels may be selected from the 6 GHz band and combined and used.

[0013] Note that the network configuration shown in FIG. 1 is an example, and the following discussion is applicable to a network including a large number of communication devices in a wider area, for example, and also to the positional relationships of various communication devices.

[0014] (Configuration of Communication Device) Next, the configuration of the communication devices (AP, STA) according to this embodiment will be described. FIG. 2 shows an example of the hardware configuration of the AP according to this embodiment. As an example of its hardware configuration, the AP has a storage unit 201, a control unit 202, a functional unit 203, an input unit 204, an output unit 205, a communication unit 206, and an antenna 207. Note that the STA also has the same hardware configuration as the AP, and the following description is applicable to the STA.

[0015] The storage unit 201 is composed of both a ROM (Read Only Memory) and a RAM (Random Access Memory), or either one of them, and stores programs for performing various operations described later and various information such as communication parameters for wireless communication. Note that as the storage unit 201, in addition to memories such as ROM and RAM, storage media such as flexible disks, hard disks, optical disks, magneto-optical disks, CD-ROMs, CD-Rs, magnetic tapes, non-volatile memory cards, and DVDs may be used.

[0016] The control unit 202 is composed of, for example, a processor such as a CPU (Central Processing Unit) or an MPU (Micro Processing Unit), an ASIC (Application Specific Integrated Circuit), a DSP (Digital Signal Processor), an FPGA (Field Programmable Gate Array), etc. The control unit 202 controls the entire AP by executing the program stored in the storage unit 201. Note that the control unit 202 may control the entire AP by cooperating with the program stored in the storage unit 201 and the OS (Operating System).

[0017] The control unit 202 controls the functional unit 203 to execute predetermined processes such as imaging, printing, and projection. The functional unit 203 is hardware for the AP to execute predetermined processes. For example, when the AP is a camera, the functional unit 203 is an imaging unit and performs imaging processing. Also, for example, when the AP is a printer, the functional unit 203 is a printing unit and performs printing processing. Also, for example, when the AP is a projector, the functional unit 203 is a projection unit and performs projection processing. The data processed by the functional unit 203 may be data stored in the storage unit 201 or data communicated with other communication devices via the communication unit 206 described later.

[0018] The input unit 204 receives various operations from the user. The output unit 205 performs various outputs to the user. Here, the output by the output unit 205 includes at least one of display on the screen, audio output by the speaker, vibration output, etc. Note that both the input unit 204 and the output unit 205 may be realized by one module such as a touch panel.

[0019] The communication unit 206 controls wireless communication compliant with the IEEE 802.11 standard series and controls IP communication. In this embodiment, the communication unit 206 can execute at least processes compliant with the IEEE 802.11ax standard. Also, the communication unit 206 controls the antenna 207 to transmit and receive wireless signals for wireless communication. The AP communicates contents such as image data, document data, and video data with other communication devices via the communication unit 206.

[0020] The wireless antennas 207 are antennas capable of receiving any one of the sub-GHz band, 2.4 GHz band, 5 GHz band, and 6 GHz band, respectively. The wireless antennas 207 may be physically composed of one or more antennas to realize MIMO (Multi-Input Multi-Output) transmission and reception.

[0021] Fig. 3 shows a functional configuration example of the AP according to this embodiment. As an example of its functional configuration, the AP has a frame analysis unit 301, a frame generation unit 302, a connection management unit 303, and a frame transmission / reception unit 304. Note that the STA also has a functional configuration similar to that of the AP, and the following description is applicable to the STA.

[0022] The frame analysis unit 301 analyzes the frame received from the communication partner device (opposing communication device). The frame generation unit 302 generates a frame to be transmitted to the communication partner device. The connection management unit 303 manages the connection with the communication partner device. For example, the connection management unit 303 manages the BlockAck (BA) agreement and the sequence number of the data for each communication partner device. The BlockAck Agreement and the Sequence Number are managed for each TID (Traffic Identifier (identifier representing the type of traffic (data))) within the connection. The frame transmission / reception unit 304 transmits and receives frames to and from the communication partner device via the communication unit 206 and the antenna 207 (Fig. 2).

[0023] (Communication sequence between AP and STA) FIG. 4 shows a communication sequence diagram for data communication between AP102 and STA103. The processing of this sequence can be started in response to the power-on of each of AP102 and STA103. Alternatively, the processing of this sequence may be started in response to at least one of AP102 and STA103 being instructed to start wireless communication by a user or an application.

[0024] First, at F401, AP102 and STA103 establish a wireless connection by performing connection processing in accordance with the IEEE802.11 standard. This embodiment is applicable to both the case without communication encryption and the case with encryption. Also, regardless of whether the encryption method (security method) in the case of encryption is WEP (Wired Equivalent Privacy), WPA (Wi-Fi Protected Access) 1, WPA2, WPA3, WPS (Wi-Fi Protected Setup), or other methods, this embodiment is applicable.

[0025] In this example, an example of data transmission from AP102 to STA103 is shown. After connection establishment at F401, at F402, AP102 transmits an ADDBA Request frame to STA103 and receives an ACK frame as a confirmation response at F403. Next, at F404, STA103 transmits an ADDBA Response frame to AP102 and receives an ACK frame as a confirmation response at F405. When the exchange of this ADDBA Request and ADDBA Response (processing of F402 to F405) is completed, a BlockAck Agreement is constructed between AP102 and STA103 regarding data transmission from AP102 ⇒ STA103.

[0026] Here, the BlockAck Agreement will be described. The ADDBA Request frame and the ADDBA Response frame include a BlockAckPolicy parameter, and a communication device that receives the frame will send an ACK frame when it agrees to the parameter. The BlockAckPolicy parameter is set to Immediate (Immediate BlockAck) or Delay (Delayed BlockAck). The example in Figure 4 is the case of the Immediate setting. AP102 sends a BlockAck Request frame, and in response to receiving the frame, STA103 returns a BlockAck frame. On the other hand, when the BlockAckPolicy is set to Delayed (not shown), STA103 returns an ACK frame (instead of returning the BlockAck frame of F408). Then STA103 will send a BlockAck frame during the TXOP (Transmission Opportunity) period obtained later.

[0027] In addition, the ADDBA Request frame includes various parameters (such as the Starting Sequence Number (starting sequence number)) of information (Starting Sequence Control) regarding the starting number of data to be transmitted in one BA session. The initial value of the Starting Sequence Number can be determined by the exchange of ADDBA Request / Response. The subsequent update of the Starting Sequence Number can follow the method specified in the IEEE802.11 standard.

[0028] In addition, the ADDBA Request / Response frame may include a BA Type (BA Type field indicating the type of BlockAck) supported by the device itself. A communication device that receives the frame records and manages the BA Type supported by the communication partner device.

[0029] In this embodiment, the connection management units 303 of the AP 102 and the STA 103 respectively record and manage the above various parameters and information for the TID in the storage unit 201 when constructing the BlockAck Agreement.

[0030] After the BlockAck Agreement is constructed, the AP 102 can transmit a plurality of data frames before receiving an ACK frame from the STA 103, which is the communication partner device (opposing communication device). For example, the AP 102 transmits a plurality of MPDUs (data frames) in F406 (data transmission process), and the STA 103 transmits a Block Ack frame in F408 as a confirmation response for the plurality of MPDUs. As described above, the example in FIG. 4 is a case where Immediate is set for the BlockAckPolicy parameter. After the AP 102 transmits a BlockAck Request frame (F407), the STA 103 returns a BlockAck frame (F408).

[0031] In the example of FIG. 4, the AP 102 transmits a BlockAckRequest frame to the STA 103 in F407. Alternatively, the AP 102 may set the Ack Policy subfield included in the QoS Control field in at least one MPDU among the MPDU group in F406 to Implicit BlockAck Request. Thereby, the AP 102 can request a BlockAck frame from the STA 103 without transmitting a BlockAckRequest frame (F407).

[0032] (Configuration of BlockAck Frame) Subsequently, the configuration of the BlockAck frame for reducing the data amount of the BlockAck frame transmitted by the STA 103 (corresponding to F408 in FIG. 4) will be described. Although FIG. 4 shows an example of data transmission from the AP 102 to the STA 103, the following description is similarly applicable to data transmission from the STA 103 to the AP 102.

[0033] Figures 5(a) to 5(c) show the configuration of the BlockAck frame in 802.11ax. As a common description for Figures 5(a) to 5(c), Octests and Bits indicate the sizes of the respective fields. The field indicated as variable means that it has a variable length. Also, the description of the fields without reference signs is omitted.

[0034] Figure 5(a) shows the configuration of the entire BlockAck frame. The BlockAck frame is composed of a MAC header field 501, a BA Control field 502, a BA Information field 503, and an FCS field.

[0035] Figure 5(b) shows the configuration of the BA Control field 502. The BA Control field 502 is composed of a BA Ack Policy subfield, a BA Type subfield 504, a Reserved subfield 505, and a TID_INFO subfield. The format of the BA Information field 503 is defined according to the information set in the BA Type subfield 504. In the IEEE 802.11ax standard, BA Type 0, 4 to 5, 7 to 9, and 12 to 15 are designated as the Reserved area. In this embodiment, at least one of this Reserved area is used to define a new BA Type.

[0036] Figure 5(c) shows the configuration of the BA Information field 503 defined by the new BA Type. The BA Information field 503 consists of a BA Subtype subfield 507 and an ACK Info subfield 506. The BA Subtype subfield 507 may be set to 0 as described in Bits. In this case, the information corresponding to the BA Subtype may be expressed using the Reserved area in the BA Type subfield 504 or the Reserved area of the Reserved subfield 505. Note that the names of the BA Subtype and ACK Info presented here are just examples and are not limited to this.

[0037] (Configuration of the ACK Info subfield) Some configuration examples of the ACK Info subfield 506 in Fig. 5(c) in this embodiment will be described with reference to Figs. 6 and 7. Note that the names, sizes, and storage orders of the respective parts described below are just examples and are not limited to this as long as they perform similar functions.

[0038] ≪Configuration of the ACK Info subfield indicating the received MPDU (Configuration Examples 1 to 3)≫ Figs. 6(a) to (c) show Configuration Examples 1 to 3 of the ACK Info subfield 506. Configuration Examples 1 to 3 are configuration examples when the STA 103 transmits information regarding the received MPDU. As a common configuration among Configuration Examples 1 to 3, the ACK Info subfield 506 consists of an ACK Info header part (corresponding to the ACK Info header parts 601, 607, 814) that includes meta information of the entire ACK Info, and an ACK Info data part that includes specific information (corresponding to the frame groups 602, 603, 609, 610, 615, 616) for specifying the received frame group (data frame group). Note that the names of the ACK Info header and ACK Info data shown here are just examples and are not limited to this.

[0039] STA103 distinguishes the data received from AP102 into groups of frames (for each series of data frames) where the sequence numbers of the data are consecutive. That is, if there is a gap in the sequence numbers of the received data, it will be separated as a group of frames there. STA103 transmits an acknowledgment response (BlockAck) that includes information about all received groups of frames in the ACK Info subfield 506. In the conventional BlockAck Bitmap method, one bit was assigned to one MPDU, but by handling it in chunks called groups of frames, the total amount of data can be reduced, and the bandwidth consumed for transmitting BlockAck frames can be reduced. Note that the ACK Info data part contains zero or more groups of frame information, and the number varies according to the number of received groups of frames. The data length included in the ACK Info header part may or may not include the data length of the ACK Info header part.

[0040] <Configuration Example 1> Fig. 6(a) shows a configuration example 1 of the ACK Info subfield 506. The ACK Info header part 601 in configuration example 1 includes information indicating the data length (the data length of the information specifying all subsequent groups of frames) included in the ACK Info data part. This information may be information indicating the end of the data frame group. As a method of indicating the data length, the data length of the subsequent ACK Info part can be stored in units of bits, bytes, or the number of groups of frames (in this example, a configuration of 24 bits per group of frames). Note that it is not limited to this method as long as the data length can be indicated.

[0041] In IEEE802.11, the Sequence Number is represented by 12 bits and can take values from 0 to 4095. In Configuration Example 1, as a method of representing Frame Groups 602 and 603, the Start Sequence Number (Start SN) 604 and the End Sequence Number (End SN) 605 in each frame group are used. The Start Sequence Number 604 and the End Sequence Number 605 can each be represented by 12 bits. The Start Sequence Number 604 indicates the sequence number of the MPDU corresponding to the start of each received frame group. The End Sequence Number 605 indicates the sequence number of the MPDU corresponding to the end of each received frame group.

[0042] <Configuration Example 2> Figure 6(b) shows Configuration Example 2 of the ACK Info subfield 506. The ACK Info header section 607 in Configuration Example 2, similar to Configuration Example 1, includes information indicating the data length included in the ACK Info data section. As a method of indicating the data length, the data length of the subsequent ACK Info section can be stored in units of bits, bytes, or the number of frame groups (in this example, a configuration of 12 + the number of bits indicated by the Count Size section 608 per frame group). Note that it is not limited to this method as long as the data length can be indicated. In Configuration Example 2, the ACK Info header section 607 further includes a Count Size section 608. The Count Size section 608 indicates the size of the Count section (corresponding to the Count section 612) of Frame Groups 609 and 610.

[0043] In Configuration Example 2, as a method of expressing frame groups 609 and 610, the start sequence number (Start SN) 611 and the Count part 612 in each frame group are used. Similar to Configuration Example 1, the start sequence number 611 indicates the sequence number of the MPDU corresponding to the head of each received frame group. The Count part 612 holds information indicating the number of consecutive sequence numbers of MPDUs received starting from the start sequence number 611. If the size of the Count part specified by the Count Size part 608 is small, the maximum number of MPDUs that can be expressed as a frame group becomes small, but the data length required to express one frame group can be reduced. On the other hand, if the size of the Count part specified by the Count Size part 608 is large, the maximum number of MPDUs that can be expressed as a frame group becomes large, but the data length required to express one frame group becomes large. Which Count Size to use is not limited in this example. The start sequence number can be expressed in 12 bits.

[0044] In this configuration example, since the upper limit of the number of MPDUs that can be expressed within one frame group is defined by the Count Size part 608, an MPDU with consecutive sequence numbers may be expressed as another frame group.

[0045] <Configuration Example 3> Fig. 6(c) shows Configuration Example 3 of the ACK Info subfield 506. Similar to Configuration Example 1, the ACK Info header part 614 in Configuration Example 3 includes information indicating the data length included in the ACK Info data part. As a method of indicating the data length, the data length of the subsequent ACK Info part can be stored in units of bits, bytes, or the number of frame groups (in this example, a configuration of 16 + the number of bits indicated by the Count Size part of each frame per 1 frame group). Note that it is not limited to this method as long as the data length can be indicated. In Configuration Example 3, as a method of expressing the frame groups 615 and 616, the start sequence number (Start SN) 617, the Count Size part 618, and the Count part 619 in each frame group are used. The Count Size part 608 stored in the ACK Info header part 607 in Configuration Example 2 is stored as the Count Size part 618 within each respective frame group. Thereby, it becomes possible to set an appropriate Count Size for each frame group without fixing the Count Size in the header part. When the number of frames to be expressed by the frame group is large, an appropriate Count Size can be set by setting the Count Size large, and when it is small, by setting it small.

[0046] ≪Configuration of ACK Info Subfield Indicating MPDU That Could Not Be Received (Configuration Examples 4 to 6)≫ Figs. 7(a) to (c) show Configuration Examples 4 to 6 of the ACK Info subfield 506. Configuration Examples 4 to 6 are configuration examples when the STA 103 transmits information regarding the MPDU that could not be received. As a common configuration among Configuration Examples 4 to 6, the ACK Info subfield 506 is composed of an ACK Info header part (corresponding to the ACK Info header parts 721, 724, 727) that includes meta information of the entire ACK Info, and an ACK Info data part that includes specific information (corresponding to the frame groups 702, 703, 709, 710, 715, 716) for specifying the frame group (data frame group) that could not be received. Note that the names of the ACK Info header and ACK Info data shown here are just examples and are not limited to this.

[0047] STA103 distinguishes the data that could not be received from AP102 into groups of frames for each block of a series of data with consecutive sequence numbers. That is, if there is a gap in the sequence numbers of the data that could not be received, it will be separated as a group of frames here. STA103 transmits a confirmation response (BlockAck) that includes information about all groups of frames that could not be received in the ACK Info subfield 506. In the conventional BlockAck Bitmap method, one bit was assigned to each MPDU, but by handling this in blocks called groups of frames, the total amount of data can be reduced, and the bandwidth consumed for transmitting BlockAck frames can be reduced. Note that the ACK Info data part contains zero or more groups of frame information, which varies according to the number of groups of frames that could not be received.

[0048] The differences between Configuration Examples 4 to 6 and Configuration Examples 1 to 3 are that the ACK Info header part includes information for identifying the first and last frames among the newly received data frames (in this example, information indicating the start sequence number and end sequence number of one or more groups of frames). This is because in Configuration Examples 4 to 6, since the ACK Info data part contains information about the MPDUs that could not be received, it is not possible to specify only from that which sequence numbers were received from where to where. By combining the information indicating the start sequence number and end sequence number of the group of frames represented by the entire ACK Info subfield 506 with the sequence numbers of the MPDUs that could not be received, the sequence numbers of the received MPDUs can be specified. The data length included in the ACK Info header part may or may not include the data length of the ACK Info header part.

[0049] <Configuration Example 4> Fig. 7(a) shows a configuration example 4 of the ACK Info subfield 506. The ACK Info header part 721 in configuration example 4 includes information 701 indicating the data length (the data length of the information specifying all subsequent frame groups) included in the ACK Info data part. This information may be information indicating the end of the data frame group. As a method of indicating the data length, the data length of the subsequent ACK Info part can be stored in units of bits, bytes, or the number of frame groups (in this example, a configuration of 24 bits per frame group). Note that it is not limited to this method as long as the data length can be indicated.

[0050] In IEEE802.11, the Sequence Number is represented by 12 bits and represented by values from 0 to 4095. In configuration example 4, as a method of representing frame groups 702 and 703, the start sequence number (Start SN) 704 and the end sequence number (End SN) 705 in each frame group are used. The start sequence number 704 and the end sequence number 705 can each be represented by 12 bits. The start sequence number 704 indicates the sequence number of the MPDU corresponding to the head of each frame group that could not be received. The end sequence number 705 indicates the sequence number of the MPDU corresponding to the end of the frame group that could not be received. In configuration example 4, the start sequence number 722 and the end sequence number 723 of the frame group that could be received are included in the ACK Info header part 721.

[0051] <Configuration example 5> Figure 7(b) shows Configuration Example 5 of the ACK Info subfield 506. Similar to Configuration Example 4, the ACK Info header part 607 in Configuration Example 5 includes information indicating the data length included in the ACK Info data part. As a method of indicating the data length, the data length of the subsequent ACK Info part can be stored in units of bits, bytes, or the number of frame groups (in this example, the configuration of the number of bits indicated by 12 + Count Size part 708 per frame group). Note that it is not limited to this method as long as the data length can be indicated. In Configuration Example 5, the ACK Info header part 724 further includes a Count Size part 708. The Count Size part 708 also indicates the size of the Count part (corresponding to the Count part 712) of the frame groups 709 and 710, and further the size of the Count part 726 included in the ACK Info header part 724.

[0052] In Configuration Example 5, as a method of expressing the frame groups 709 and 710, the start sequence number (Start SN) 711 and the Count part 712 in each frame group are used. Similar to Configuration Example 4, the start sequence number 711 indicates the sequence number of the MPDU corresponding to the head of the frame group that could not be received. The Count part 712 holds information indicating the number of consecutive sequence numbers of MPDUs that could not be received starting from the start sequence number 711. If the size of the Count part specified by the Count Size part 708 is small, the maximum number of MPDUs that can be expressed as a frame group becomes small, but the data length required to express one frame group can be reduced. On the other hand, if the size of the Count part specified by the Count Size part 708 is large, the maximum number of MPDUs that can be expressed as a frame group becomes large, but the data length required to express one frame group becomes large. Which Count Size to use is not limited in this example. The start sequence number can be expressed in 12 bits.

[0053] In this configuration example, since the upper limit of the number of MPDUs that can be represented within one frame group is defined by the Count Size section 708, an MPDU having consecutive sequence numbers may be represented as a different frame group in some cases.

[0054] Also, in this configuration example, the ACK Info header section 724 includes a Count section 726 that means the start sequence number 725 of the received frame group and the total number (quantity) from there to the end sequence number. The size of the Count section 726 within the ACK Info header section 724 is not defined by the Count Size section 708, and may be fixed at 12 bits, or a Count Size section indicating the information of the Count section 726 may be separately held in the ACK Info header section.

[0055] <Configuration Example 6> Fig. 7(c) shows Configuration Example 6 of the ACK Info subfield 506. The ACK Info header section 727 in Configuration Example 6 includes information indicating the data length included in the ACK Info data section, similar to Configuration Example 4. As a method of indicating the data length, the data length of the subsequent ACK Info section can be stored in units of bits, bytes, or the number of frame groups (in this example, a configuration of 16 + the number of bits indicated by the Count Size section for each frame per frame group). Note that it is not limited to this method as long as the data length can be indicated. In Configuration Example 6, as a method of representing the frame groups 715 and 716, the start sequence number (Start SN) 717, the Count Size section 718, and the Count section 719 in each frame group are used. The Count Size section 708 stored in the ACK Info header section 607 in Configuration Example 5 is stored within each frame group. Thereby, it becomes possible to set an appropriate Count Size for each frame group without fixing the Count Size in the header section. When the number of frames to be represented by the frame group is large, an appropriate Count Size can be set by setting the Count Size large, and when it is small, by setting it small.

[0056] Also, in this configuration example, the ACK Info header section 727 includes a start sequence number 728 of the received frame group, a Count section 730 that means the total number from there to the end sequence number, and a CountSize section 729 that indicates the size information of the Count section 730.

[0057] Regarding Configuration Example 4, when there is one received frame, the same sequence number may be set for the start sequence number 722 and the end sequence number 723 in the ACK Info header section 721. Also, regarding Configuration Example 4, when no frame could be received normally, it may be configured such that one frame group (that is, only the frame group 702) is included in the ACK Info subfield 506. Here, the start sequence number 704 may be set with a value (such as the value indicated by Starting Sequence Control) based on the information regarding the start number of the data transmitted by the transmission side that has already been received. The same applies to Configuration Examples 5 and 6.

[0058] (Notification Method of the Configuration of the ACK Info Subfield) The transmission side of the BlockAck frame can identify (specify) in the frame whether the ACK Info subfield 506 is configured according to any of Configuration Examples 1 to 6 and notify the reception side. For example, which of Configuration Examples 1 to 6 is used can be identified using at least any one of the BA Type subfield 504, the Reserved subfield 505, and the BA Subtype subfield 507.

[0059] For example, BA Type0 which means Reserved in the BA Type subfield 504 may be defined as a BA Type that means using any one of Configuration Examples 1 to 6. Further, which one of Configuration Examples 1 to 6 is used may be specified by using at least 3 bits in other Reserved areas of the BA Type subfield 504, the Reserved subfield 505, and the BA Subtype subfield 507. Specifically, when using the BA Subtype subfield 507, it may be defined such that when the bit 0000 is specified in the BA Subtype subfield 507, Configuration Example 1 is used, and when the bit 0001 is specified, Configuration Example 2 is used, and so on.

[0060] Also, it may be specified to use any one of Configuration Examples 1 to 6 by combining the existing BA Type subfield 504 and a predetermined (sub) field. For example, assume the case where the BA Type subfield 504 is set to Multi-TID or Multi-STA. When the BA Type subfield 504 is set to Multi-TID, it may be specified to use any one of Configuration Examples 1 to 6 using the area of the Reserved subfield 505.

[0061] Note that whether the communication partner device supports the new BA Type according to this embodiment (that is, the configuration of the ACK Info subfield 506 in Configuration Examples 1 to 6) (whether it has the capability information for the new BA Type) may be defined as an essential requirement in the standard. Alternatively, in the case of the example in FIG. 4, the capability information may be exchanged via the exchange of ADDBA Request / Response frames between the AP102 and the STA103 (when constructing the BlockAck Agreement). Alternatively, the capabilities may be negotiated via the exchange of other management frames.

[0062] (Processing on the data frame reception side) Next, with reference to FIG. 8, the processing on the data frame receiving side according to the present embodiment will be described. FIG. 8 is a flowchart of the processing executed by the apparatus on the data frame receiving side. Here, the case where the apparatus on the data frame receiving side is STA103 as shown in FIG. 4 will be described as an example, but this description is equally applicable when AP102 is the operating entity. The said processing can be started after STA103 establishes a wireless connection with the communication partner apparatus (AP102 in the example of FIG. 4) and finishes the exchange of ADDBA Request / Response frames.

[0063] As described above, it is assumed that each connection management unit 303 of STA103 and AP102 records and manages various parameters such as the Starting Sequence Number in the BA session in the storage unit 201 when constructing the BlockAck Agreement (F402 to F405 in FIG. 4). Further, it is assumed that each connection management unit 303 of STA103 and AP102 records and manages information on the BA Type supported by the communication partner apparatus (which may also include the new BA Type according to the present embodiment) in the storage unit 201.

[0064] When the frame transmission / reception unit 304 of STA103 receives a wireless frame from the communication partner apparatus, the frame analysis unit 301 starts the analysis process of the received frame. If the frame is not addressed to itself or the frame is broken (for example, the FCS value is incorrect), AP102 may discard the frame without starting this process.

[0065] As the frame analysis process, first, the frame analysis unit 301 determines whether the received frame is a data frame (S801). This can be determined, for example, by checking whether the Type field in the Frame Control Field included in the MAC header within the MAC frame format defined by the IEEE802.11 standard is "10". If it is "10", it can be determined as a data frame; otherwise, it can be determined as not a data frame.

[0066] When it is determined that the received frame is a data frame (Yes in S801), the connection management unit 303 executes a process of checking the sequence number of the data frame (S802). Details of the process in S802 will be described later with reference to FIG. 9. After the process in S802, the frame analysis unit 301 determines whether the received frame is a data frame that requests a BlockAck frame (S803). This can be determined, for example, by checking whether the Ack Policy subfield included in the QoS Control field in at least one or more MPDUs among the MPDUs included in the data frame is set to Implicit BlockAck Request (“00”). If it is set to “00”, the frame analysis unit 301 determines that the received frame is a data frame that requests a BlockAck frame (Yes in S803), and the process proceeds to S804. If it is not set to “00”, the frame analysis unit 301 determines that the received frame is not a data frame that requests a BlockAck frame, and ends the frame reception process. In S804, the AP 102 performs a BlockAck (BA) frame generation and transmission process. Details of the process in S804 will be described later with reference to FIG. 10.

[0067] In S801, if it is determined that the received frame is not a data frame (No in S801), the frame analysis unit 301 determines whether the received frame is a BAR (BlockAck Request) frame (S805). For example, in a data frame, when the aforementioned Type field is "01" and the Subtype field in the Frame Control Field within the MAC header is "1000", it can be identified as a BAR frame. If the frame analysis unit 301 determines that the received frame is a BAR frame (Yes in S805), the process proceeds to S804, and STA103 executes BA frame generation and transmission processing. The BAR frame may contain information regarding the starting number of the data. If it is determined in S805 that the received frame is not a BAR frame (No in S805), STA103 executes processing corresponding to various frames compliant with the IEEE802.11 standard (S806) and ends the process. Since the processing in S806 has little relevance to this embodiment, the description thereof is omitted.

[0068] Next, the sequence number confirmation process of the data frame in S802 will be described with reference to FIG. 9. FIG. 9 is a flowchart of the sequence number confirmation process of the data frame. The sequence number of a data frame (MPDU) is indicated by the Sequence Number in the Sequence Control field included in the MAC header within the MAC frame format defined by the IEEE802.11 standard and has a value in the range of 0 to 4095. The connection management unit 303 starts managing the received sequence number (the sequence number of the received data frame) related to the connection at the stage when the wireless connection is established (F401 in the example of FIG. 4). At the start of the management, all sequence numbers from 0 to 4095 are recorded in the storage unit 201 as un-received sequence numbers (the sequence numbers of data frames not recorded as received).

[0069] The connection management unit 303 of STA103 checks whether the sequence number of a data frame (MPDU) is an un - received sequence number (S901). That is, the connection management unit 303 compares the information of the received data frame sequence number with the received sequence number recorded in the storage unit 201, and determines whether the sequence number of the received data frame is an un - received sequence number.

[0070] If the sequence number of the received data frame is an un - received sequence number (Yes in S901), the connection management unit 303 newly records the said sequence number in the storage unit 201 as the received sequence number and ends. On the other hand, if the sequence number of the received data frame is a received sequence number (No in S901), the received data frame has already been received, is regarded as a duplicate frame, and the said data frame is discarded (S903) and ends.

[0071] Next, the BlockAck (BA) frame generation and transmission process of S804 will be described with reference to FIG. 10. FIG. 10 is a flowchart of the BA frame generation and transmission process. As described above, it is assumed that the connection management units 303 of STA103 and AP102 respectively record and manage information such as the BA Type supported by the communication partner device (which may also include the new BA Type according to this embodiment) and the Starting Sequence Number in the BA session in the storage unit 201. Also, refer to FIG. 5 regarding the generation of frames.

[0072] The connection management unit 303 of STA103 checks the BA Type supported by the connection (supported by the own device and AP102) (S1001). According to the support status of the BA Type checked here, the frame generation unit 302 can determine the content of the BlockAck frame generated in S1004 and S1005. Next, the connection management unit 303 of STA103 checks the Starting Sequence Number in the BA session. As described above, the initial value of the Starting Sequence Number is determined at the time of constructing the BlockAck Agreement and can be updated thereafter according to the method specified in the IEEE802.11 standard. Subsequently, the connection management unit 303 checks the received sequence number (the sequence number recorded as received) (S1003).

[0073] The frame generation unit 302 generates a Block Ack frame using the information checked in S1001 to S1003. First, the frame generation unit 302 determines the configuration of the ACK Info sub-field 506 in the BA Information field 503 (S1004). Here, the frame generation unit 302 can determine the configuration of the ACK Info sub-field 506 based on the supported BA Type checked in S1001. When the checked supported BA Type indicates that it supports any of the above configuration examples 1 to 6, the frame generation unit 302 can determine to use any of the configuration examples 1 to 6 as the configuration of the ACK Info sub-field 506. Note that using any of the above configuration examples 1 to 6 may be fixedly set in STA103 in advance, or may be set (determined) by an input operation by the user via the input unit 204. In addition, the frame generation unit 302 can determine to use any of the configuration examples 1 to 6 to configure the ACK Info sub-field 506 with the smallest data size according to the reception status of the sequence number checked in S1003.

[0074] Next, the frame generation unit 302 generates the BA Control field 502 and the BA Information field 503 in accordance with the configuration of the ACK Info subfield 506 determined in S1004 and so as to specify (designate) the configuration (S1005). As described above, any one of Configuration Examples 1 to 6 can be used for the ACK Info subfield 506 and specified by various subfields in the BA Control field 502 / BA Information field 503.

[0075] Subsequently, the frame generation unit 302 generates the MAC header field 501 and the FSC field described in FIG. 5(a) to complete the MAC frame, and the PHY unit also generates it to complete the BlockAck frame (S1006). Finally, the frame transceiver unit 304 transmits the BlockAck frame generated by the frame generation unit 302 to the communication partner device (AP102).

[0076] The confirmation response for the transmitted frame and the retransmission process when the confirmation response is not received for a certain period of time are executed according to the provisions of the IEEE802.11 standard. When STA103 correctly transmits the BlockAck frame and receives the confirmation response from AP102, it resets the received record. For example, the connection management unit 303 of STA103 resets the received record for the sequence number notified by the BlockAck frame among the managed received sequence numbers. Thereby, it becomes possible to manage the sequence number when the sequence number makes a full circle.

[0077] Note that the flow of the processes shown in FIGS. 8 to 10 is an example for realizing this embodiment, and the order of each process is not limited as long as it performs the same function. Also, for processes not described in this process flow, follow the processes specified by the IEEE802.11 standard.

[0078] Thus, according to this embodiment, it becomes possible to realize a confirmation response with a smaller amount of data compared to the conventional method.

[0079] The present invention can also be realized by supplying a program that implements one or more functions of the above-described embodiments to a system or apparatus via a network or a storage medium, and causing one or more processors in a computer of the system or apparatus to read and execute the program. It can also be realized by a circuit (for example, ASIC) that implements one or more functions.

[0080] The invention is not limited to the above embodiments, and various changes and modifications are possible without departing from the spirit and scope of the invention. Therefore, the claims are appended to disclose the scope of the invention.

Description of Reference Numerals

[0081] 101 Network, 102 AP (Access Point), 103 STA (Station)

Claims

1. A communication device compliant with the IEEE 802.11 standard series, receiving means for receiving a plurality of data frames each assigned a sequence number from a communication partner device, generating means for generating an acknowledgment (Ack) frame for the plurality of data frames received by the receiving means, transmitting means for transmitting the Ack frame generated by the generating means to the communication partner device, and the generating means includes specific information for specifying one or more data frame groups that distinguish each series of data frames having consecutive sequence numbers among the plurality of received data frames in the Ack frame, the generating means When including information on the start sequence number and end sequence number of a series of data frames in each data frame group as the specific information in the ACK frame, data indicating a first value is stored in at least one of the BA Type subfield, Reserved subfield, and BA Subtype subfield of the ACK frame, When including information on the start sequence number of a series of data frames in each data frame group and information on the number of consecutive sequence numbers from the start sequence number to the end sequence number of the series of data frames in the ACK frame, data indicating a second value different from the first value is stored in at least one of the BA Type subfield, Reserved subfield, and BA Subtype subfield of the ACK frame, When including, in the ACK frame, information on the start sequence number of a series of data frames in each data frame group, information on the number of consecutive sequence numbers from the start sequence number to the end sequence number of the series of data frames, and information indicating the size of the information on the number, a communication device is characterized by storing, in at least any one of the BA Type subfield, the Reserved subfield, and the BA Subtype subfield of the ACK frame, data indicating a third value different from both the first value and the second value.

2. The communication device according to claim 1, wherein the generating means includes, in the Ack frame, information indicating the end of the one or more data frame groups.

3. The communication device according to claim 2, wherein the information indicating the end of the one or more data frame groups is indicated in any one of bit units, byte units, and the number of the data frame groups.

4. The communication device according to any one of claims 1 to 3, wherein the Ack frame includes information indicating the configuration of the Ack frame generated by the generating means.

5. A control method for a communication device compliant with the IEEE 802.11 standard series, comprising: a receiving step of receiving, from a communication partner device, a plurality of data frames each assigned a sequence number; a generating step of generating an acknowledgment (Ack) frame for the plurality of data frames received in the receiving step; a transmitting step of transmitting the Ack frame generated in the generating step to the communication partner device, and in the generating step, including, in the Ack frame, specific information for identifying one or more data frame groups distinguished for each series of data frames having consecutive sequence numbers among the plurality of received data frames, in the generating step, When including, in the ACK frame, information on the start sequence number and the end sequence number of a series of data frames in each data frame group as the specific information, data indicating a first value is stored in at least one of the BA Type subfield, the Reserved subfield, and the BA Subtype subfield of the ACK frame. When including, in the ACK frame, information on the start sequence number of a series of data frames in each data frame group and information on the number of consecutive sequence numbers from the start sequence number to the end sequence number of the series of data frames, data indicating a second value different from the first value is stored in at least one of the BA Type subfield, the Reserved subfield, and the BA Subtype subfield of the ACK frame. When including, in the ACK frame, information on the start sequence number of a series of data frames in each data frame group, information on the number of consecutive sequence numbers from the start sequence number to the end sequence number of the series of data frames, and information indicating the size of the information on the number, a control method is characterized in that data indicating a third value different from both the first value and the second value is stored in at least one of the BA Type subfield, the Reserved subfield, and the BA Subtype subfield of the ACK frame. Claim 6 A program for causing a computer to function as the communication device according to any one of claims 1 to 4.

Citation Information

Patent Citations

  • Apparatus and method for block acknowledgment response compression

    JP2015529047A

  • Communication device, control method, and program

    JP2018050133A

  • Information processing device, communication system, information processing method and program

    WO2017094331A1