Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim(s) 1, 9, 10, 18 is/are rejected under 35 U.S.C. 103 as being unpatentable over Doyle et al. (U.S. Pub No. 2014/0369210 A1) in view of Goel et al. (U.S. Patent No. 7,839,876 B1) in view of Rawson (U.S. Pub no 2002/0107955 A1) in further view Minami et al. (U.S. Pub No. 2004/0062267 A1)
Claim 1, Doyle teaches a communications device, comprising: an aggregate packet de- aggregation device [fig2, par 0003, wireless client devices may connect with an access point over a wireless connection to transfer and receive data. In upstream communications, the wireless client devices aggregate packets into aggregated MAC service data units (AMSDUs) for transmission to the access point. Similarly, in downstream communications the wireless client devices deaggregate packets transmitted in AMSDUs from the access point],
configured to generate multiple subframe packets according to an aggregate packet [par 0029, 0038, The client device 2A may aggregate two or more data packets into an upstream aggregated MAC service data unit (AMSDU). Upon receipt, the access point 3 may aggregate two or more AMSDUs into an AMPDU and transmit the AMPDU over the wireless channels 6 to the client device 2A. Following receipt, the client device 2A may deaggregate the AMPDU into the original two or more AMSDUs. Each AMSDU may be decrypted using the authentication and security information shared between the controller 4 and the client device 2A. The decrypted AMSDU may be deaggregated into two or more data packets],
and a transmission interface, configured to couple the communications device to a host device [par 0020, the //O interface 23 corresponds to one or more components used for communicating with other devices (e.g., the access point 3) via wired or wireless signals. The I/O interface 23 may include a wired network interface such as an IEEE 802.3 Ethernet interface and/or a wireless interface such as an IEEE 802.11 WiFi interface. The I/O interface 23 may communicate with the access point 3 over corresponding wireless channels 6 in the system 1. The I/O interface 23 may include one or more antennas 25 for communicating with the access point 3 and other wireless devices in the network system 1],
wherein the transmission interface transmits the multiple subframe packets to the host device [par 0020, 0042, The selected AMSDU sizes may be utilized for upstream and downstream communications between the client devices 2 and the remote devices 5. At operation 13, the method 9 determines/detects if a new MTU size has been set between the access point 3 and the controller 4. In one embodiment, the upstream and downstream AMSDU sizes may be set to be less than or equal to the MTU size for the secure tunnel between the access point 3 and the controller 4. By setting the upstream and downstream AMSDU sizes to be less than or equal to the MTU size, each AMSDU may be transported in a single MTU without fragmentation. By eliminating fragmentation of AMSDUs during transmission between the access point 3 and the controller 4, performance of the upstream and downstream datapaths are improved through the elimination of fragmentation processing delays],
Doyle fail to show wherein a length of each of the multiple subframe packets is less than a length of the aggregate packet, wherein the communications device is implemented in a network interface card to provide network communication service for the host device
In an analogous art Goel show wherein a length of each of the multiple subframe packets is less than a length of the aggregate packet [col 7, ln 51-63, For example, if the current maximum allowed size for an A-MSDU is 5 MSDUs, but the MSDUs are arriving in bursts of 2 or 3 separated by substantial intervals],
wherein the communications device is implemented in a network interface card to provide network communication service for the host device [col 5, ln 27-49, Wireless network device 102 comprises a host 106 and a device 108. Host 106 comprises a control circuit 110, Host 106 can be implemented, for example, as a general-purpose computer, with control circuit 110 implemented as a general-purpose processor executing a non-real-time operating system. Wireless network device 102 can be implemented as a switch, router, network interface controller (NIC), and the like].
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle and Goel because this provides a an input circuit to receive packets of data; an output circuit to receive the packets of data from the input circuit when aggregation of the packets of data is not enabled. [Goel, col 1 ln 34-40].
Doyle and Goel fail to show to allow the host device to pre-allocate multiple buffering spaces for receiving the multiple subframe packets according to a maximum allowable length of one medium access control (MAC) service data unit, and a length of each buffering entry of the multiple buffering spaces is equal to the maximum allowable length.
In an analogous art Rawson show to allow the host device to pre-allocate multiple buffering spaces for receiving the multiple subframe packets according to a maximum allowable length of one medium access control (MAC) service data unit [par 0037, 0043, One embodiment of the invention compares the size of an eligible management PDU to a maximum PDU size. If the size of the management PDU is greater than or equal to the maximum size, the management PDU is fragmented if necessary and forwarded to switch 130 without delay. If the management PDU is smaller than the maximum PDU size, If the PDU size is greater than or equal to the maximum predetermined size, the PDU is considered to be too large to be combined with a non-management PDU and the management PDU is therefore simply forwarded (block 510) to its network target. If the size of the management PDU is less than the maximum predetermined size, the NIC determines if there is an available entry in a management PDU buffer such as buffer 320 depicted in FIG. 3. In one embodiment, determining whether an entry in the NIC buffer is available includes indexing the buffer using the network target's MAC address, which comprises a portion of the PDU's MAC header]
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle, Goel, and Rawson because a NIC is able to communicate with the NICs of the targeted systems at a physical level, polling and responses can occur at the lowest level of the network's communication protocol thereby improving the efficiency of the process. [Rawson, par 0057]
Doyle, Goel, and Rawson fail to show a length of each buffering entry of the multiple buffering spaces is equal to the maximum allowable length.
In an analogous art Minami show a length of each buffering entry of the multiple buffering spaces is equal to the maximum allowable length[par 01535, The CB Handle in the RX DAV status message points to an iSCSI-related CB. The host driver then allocates a buffer to store the RX data; the total link-list buffer size should be equal to how much data the host driver expects to receive, plus CRC if expected, see FIG. 52. Also, the total buffer size must always be aligned on a dword boundary, since iSCSI PDUs are expected to be in that format].
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle, Goel, Rawson, and Minami because to provide a gigabit Ethernet adapter that provides a hardware solution to high network communication speeds and that adapts to multiple communication protocols. [Miami par 0015]
9, of Doyle, Goel, Rawson, and Minami provide the communications device of claim 1, wherein the aggregate packet is an aggregate medium access control (MAC) service data unit (AMSDU) packet [Doyle, par 0003, the wireless client devices aggregate packets into aggregated MAC service data units (AMSDUs) for transmission to the access point. Similarly, in downstream communications the wireless client devices deaggregate packets transmitted in AMSDUs from the access point].
10 Doyle describes a method for receiving an aggregate packet, comprising: utilizing an aggregate packet de-aggregation device of a communications device to generate multiple subframe packets according to the aggregate packet [par 0029, 0038, The client device 2A may aggregate two or more data packets into an upstream aggregated MAC service data unit (AMSDU). Upon receipt, the access point 3 may aggregate two or more AMSDUs into an AMPDU and transmit the AMPDU over the wireless channels 6 to the client device 2A. Following receipt, the client device 2A may deaggregate the AMPDU into the original two or more AMSDUs. Each AMSDU may be decrypted using the authentication and security information shared between the controller 4 and the client device 2A. The decrypted AMSDU may be deaggregated into two or more data packets],
and utilizing a transmission interface of the communications device to transmit the multiple subframe packets from the communications device to the host device[par 0020, 0042, the I/O interface 23 corresponds to one or more components used for communicating with other devices (e.g., the access point 3) via wired or wireless signals. The I/O interface 23 may include a wired network interface such as an IEEE 802.3 Ethernet interface and/or a wireless interface such as an IEEE 802.11 WiFi interface. The I/O interface 23 may communicate with the access point 3 over corresponding wireless channels 6 in the system 1. The I/O interface 23 may include one or more antennas 25 for communicating with the access point 3 and other wireless devices in the network system 1. By setting the upstream and downstream AMSDU sizes to be less than or equal to the MTU size, each AMSDU may be transported in a single MTU without fragmentation. By eliminating fragmentation of AMSDUs during transmission between the access point 3 and the controller 4, performance of the upstream and downstream datapaths are improved through the elimination of fragmentation processing delays],
Doyle fail to show wherein a length of each of the multiple subframe packets is less than a length of the aggregate packet, wherein the communications device is implemented in a network interface card to provide network communication service for the host device
In an analogous art Goel show wherein a length of each of the multiple subframe packets is less than a length of the aggregate packet [col 7, ln 51-63, For example, if the current maximum allowed size for an A-MSDU is 5 MSDUs, but the MSDUs are arriving in bursts of 2 or 3 separated by substantial intervals],
wherein the communications device is implemented in a network interface card to provide network communication service for the host device [col 5, ln 27-49, Wireless network device 102 comprises a host 106 and a device 108. Host 106 comprises a control circuit 110, Host 106 can be implemented, for example, as a general-purpose computer, with control circuit 110 implemented as a general-purpose processor executing a non-real-time operating system. Wireless network device 102 can be implemented as a switch, router, network interface controller (NIC), and the like].
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle and Goel because this provides a an input circuit to receive packets of data; an output circuit to receive the packets of data from the input circuit when aggregation of the packets of data is not enabled. [Goel, col 1 ln 34-40].
Doyle and Goel fail to show to allow the host device to pre-allocate multiple buffering spaces for receiving the multiple subframe packets according to a maximum allowable length of one medium access control (MAC) service data unit, and a length of each buffering entry of the multiple buffering spaces is equal to the maximum allowable length.
In an analogous art Rawson show to allow the host device to pre-allocate multiple buffering spaces for receiving the multiple subframe packets according to a maximum allowable length of one medium access control (MAC) service data unit[par 0037, 0043, One embodiment of the invention compares the size of an eligible management PDU to a maximum PDU size. If the size of the management PDU is greater than or equal to the maximum size, the management PDU is fragmented if necessary and forwarded to switch 130 without delay. If the management PDU is smaller than the maximum PDU size, If the PDU size is greater than or equal to the maximum predetermined size, the PDU is considered to be too large to be combined with a non-management PDU and the management PDU is therefore simply forwarded (block 510) to its network target. If the size of the management PDU is less than the maximum predetermined size, the NIC determines if there is an available entry in a management PDU buffer such as buffer 320 depicted in FIG. 3. In one embodiment, determining whether an entry in the NIC buffer is available includes indexing the buffer using the network target's MAC address, which comprises a portion of the PDU's MAC header]
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle, Goel, and Rawson because a NIC is able to communicate with the NICs of the targeted systems at a physical level, polling and responses can occur at the lowest level of the network's communication protocol thereby improving the efficiency of the process. [Rawson, par 0057]
Doyle, Goel, and Rawson fail to show a length of each buffering entry of the multiple buffering spaces is equal to the maximum allowable length.
In an analogous art Minami show a length of each buffering entry of the multiple buffering spaces is equal to the maximum allowable length[par 01535, The CB Handle in the RX DAV status message points to an iSCSI-related CB. The host driver then allocates a buffer to store the RX data; the total link-list buffer size should be equal to how much data the host driver expects to receive, plus CRC if expected, see FIG. 52. Also, the total buffer size must always be aligned on a dword boundary, since iSCSI PDUs are expected to be in that format].
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle, Goel, Rawson, and Minami because to provide a gigabit Ethernet adapter that provides a hardware solution to high network communication speeds and that adapts to multiple communication protocols. [Miami par 0015]
18, Doyle, Goel, Rawson, and Minami teach the method of claim 10, wherein the aggregate packet is an aggregate medium access control (MAC) service data unit (AMSDU) packet[par 0003, the wireless client devices aggregate packets into aggregated MAC service data units (AMSDUs) for transmission to the access point. Similarly, in downstream communications the wireless client devices deaggregate packets transmitted in AMSDUs from the access point].
Claim(s) 2-8, 11-17 is/are rejected under 35 U.S.C. 103 as being unpatentable over Doyle et al. (U.S. Pub No. 2014/0369210 A1) in view of Goel et al. (U.S. Patent No. 7,839,876 B1) in view of Rawson (U.S. Pub no 2002/0107955 A1) in further view Minami et al. (U.S. Pub No. 2004/0062267 A1) Lynch et al. (U.S. Patent No. 9,148,819 B2)
2, Doyle, Goel, Rawson, and Minami create the communications device of claim 1, wherein the aggregate packet de-aggregation device comprises: a de-aggregation circuit, configured to perform de-aggregation on the aggregate packet to generate multiple de-aggregation packets [par 0038, Following receipt, the client device 2A may deaggregate the AMPDU into the original two or more AMSDUs. Each AMSDU may be decrypted using the authentication and security information shared between the controller 4 and the client device 2A. The decrypted AMSDU may be deaggregated into two or more data packets],
wherein the multiple subframe packets are generated according to the multiple de- aggregation packets, respectively[par 0038, The decrypted AMSDU may be deaggregated into two or more data packets. The data packets may thereafter be processed by one or more applications running on the hardware processor 21 and/or stored in the data storage 22 of the client device 2A].
Doyle, Goel, Rawson, and Minami fail to show wherein each de-aggregation packet of the multiple de-aggregation packets has a descriptor configured to carry information of said each de-aggregation packet.
In analogous art Lynch show wherein each de-aggregation packet of the multiple de-aggregation packets has a descriptor configured to carry information of said each de-aggregation packet [abstract, A sub-frame is generated for each MSDU to be aggregated in an A-MSDU and the sub-frame is stored in place in memory. For each sub-frame, an MSDU descriptor identifying the memory location of the sub-frame is
stored in a queue. When a transmit opportunity for an MPDU arises, a DMA engine sequentially transfers the components of sub-frames stored in memory to a PHY layer using a list or other sequence of DMA descriptors obtained from at least a subset of the MSDU descriptors].
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle, Goel, Rawson, Minami and Lynch because these MSDU descriptors allow the aggregation of A-MSDUs to be initiated while the MSDUs are in place in the same memory in which they were initially stored.
3, Doyle, Goel, Rawson, Minami, and Lynch illustrate the communications device of claim 2, of Doyle, Goel, Rawson, and Minami fail to show wherein the information of said each de-aggregation packet indicates whether said each de-aggregation packet is a last de-aggregation packet of the multiple de-aggregation packet.
In an analogous art Lynch show wherein the information of said each de- aggregation packet indicates whether said each de-aggregation packet is a last de- aggregation packet of the multiple de-aggregation packet [col 5, In 5-15, That is, the DMA descriptors are part of the MSDU descriptors 138 in this embodiment. In other embodiments, the MSDU descriptors 138 provide for the DMA descriptors in that the MSDU descriptors 138 store memory location metadata used by the protocol stack 118 to separately generates one or more lists or other sequences of DMA descriptors used to transfer the components of a sub-frame 132].
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle, Goel, Rawson, Minami and Lynch because these MSDU descriptors allow the aggregation of A-MSDUs to be initiated while the MSDUs are in place in the same memory in which they were initially stored.
4. Doyle, Goel, Rawson, Minami and Lynch demonstrate the communications device of claim 2, Doyle, Goel, Rawson, and Minami fail to show wherein the information of said each de-aggregation packet indicates a length of said each de-aggregation packet.
In an analogous art Lynch show wherein the information of said each de- aggregation packet indicates a length of said each de-aggregation packet [col 4, In 20- 26, As provided by the IEEE 802.11 standards, the sub-frame header 134 can include, for example, six octets for the destination MAC address, six octets for the source MAC address and two octets to store a length indicator. In this example, the pad value 136 can include between 0 and 3 octets].
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle, Goel, Rawson, Minami and Lynch because these MSDU descriptors allow the aggregation of A-MSDUs to be initiated while the MSDUs are in place in the same memory in which they were initially stored
5, Doyle, Goel, Ram and Lynch describes the communications device of claim 2, Doyle, Goel, Rawson, and Minami fail to show wherein the aggregate packet de-aggregation device further comprises: a payload alignment circuit, configured to add padding bytes to the multiple de-aggregation packets to generate multiple aligned packets, respectively, wherein respective data payloads of the multiple aligned packets are aligned with one another based on a specific number of bytes; wherein the multiple subframe packets are generated according to the multiple aligned packets, respectively.
In an analogous art Lynch show wherein the aggregate packet de-aggregation device further comprises: a payload alignment circuit, configured to add padding bytes to the multiple de-aggregation packets to generate multiple aligned packets, respectively [col 4, In 20-26, As provided by the IEEE 802.11 standards, the sub-frame header 134 can include, for example, six octets for the destination MAC address, six octets for the source MAC address and two octets to store a length indicator. In this example, the pad value 136 can include between 0 and 3 octets],
wherein respective data payloads of the multiple aligned packets are aligned with one another based on a specific number of bytes, wherein the multiple subframe packets are generated according to the multiple aligned packets, respectively[col 11, In 4-9, the payload of the MPDU 430 is complete with three sub-frames. Accordingly, after transferring the pad-value 424 to the payload, the MPDU constructor 124 calculates an FCS value 432 for the MPDU 430 and appends the FCS value 432 to the end of the payload, thereby completing the MPDU 430];
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle, Goel, Rawson, Minami and Lynch because these MSDU descriptors allow the aggregation of A-MSDUs to be initiated while the MSDUs are in place in the same memory in which they were initially stored
6, Doyle, Goel, Rawson, Minami and Lynch convey the communications device of claim 2, Doyle, Goel, Rawson, and Minami fail to show wherein the aggregate packet de aggregation device further comprises: a header conversion circuit, configured to perform header conversion on the multiple de- aggregation packets to generate multiple converted packets, respectively, wherein each converted packet of the multiple converted packets has a specific header, to allow the host device to perform subsequent communications according to a communications standard corresponding to the specific header; wherein the multiple subframe packets are generated according to the multiple converted packets, respectively.
In an analogous art Lynch show wherein the aggregate packet de aggregation device further comprises: a header conversion circuit, configured to perform header conversion on the multiple de-aggregation packets to generate multiple converted packets respectively [col 7, In 51-60, In response, at block 204 the protocol stack 118 generates an A-MSDU sub-frame 132 for the MSDU 130 by preparing a sub-frame header 134 and a pad value 136 for the MSDU 130 and provides the MSDU 130, the sub-frame header 134, and the pad value 136 for storage in the memory 108. In other embodiments, rather than generating the pad value 136 at this point, the MPDU constructor 124 instead can generate the pad value 136 on the fly after the DMA engine 126 has accessed the sub-frame header 134 and the MSDU 130 from memory],
wherein each converted packet of the multiple converted packets has a specific header, to allow the host device to perform subsequent communications according to a communications standard corresponding to the specific header|[col 8, In 28-44, In response, at block 304 the protocol stack 118 generates a MAC header 144 to initiate a new MPDU 142 and provides the MAC header 144 to the PHY 116 for transmission. In one embodiment, the MPDU constructor 124 is programmed to generate the MAC header 144 using configuration information supplied by, another component of the protocol stack 118. In another embodiment, the MAC header 144 constitutes one of the components of each sub-frame stored in memory and the first MSDU descriptor 138 in the queue 128 includes a DMA descriptor pointing to the MAC header 144 (or includes metadata used by the MPDU constructor 124 to generate the DMA descriptor pointing to the MAC header 144)];
wherein the multiple subframe packets are generated according to the multiple converted packets, respectively[col 8, In 22-28, FIG. 3 illustrates an example of a process by which the DMA engine 126 and the MPDU constructor 124 generate an MPDU 142 by aggregating A-MSDU sub-frames 132 using the MSDU descriptors 138 queued in the queue 128. In this example, the process initiates at block 302, whereby a higher-layer component signals a TXOP to the protocol stack 118. In response, at block 304 the protocol stack 118 generates a MAC header 144 to initiate anew MPDU 142 and provides the MAC header 144 to the PHY 116 for transmission].
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle, Goel, Rawson, Minami, and Lynch because these MSDU descriptors allow the aggregation of A-MSDUs to be initiated while the MSDUs are in place in the same memory in which they were initially stored.
7, Doyle, Goel, Rawson, Minami and Lynch disclose the communications device of claim 6, Doyle, Goel, Rawson, and Minami fail to show wherein the aggregate packet de-aggregation device further comprises: a payload alignment circuit, configured to add padding bytes to the multiple converted packets to generate multiple aligned packets, respectively, wherein respective data payloads of the multiple aligned packets are aligned with one another based on a specific number of bytes; wherein the multiple subframe packets are generated according to the multiple aligned packets, respectively.
In an analogous art Lynch show wherein the aggregate packet de-aggregation device further comprises: a payload alignment circuit, configured to add padding bytes to the multiple converted packets to generate multiple aligned packets, respectively[col 4, In 20-26, As provided by the IEEE 802.11 standards, the sub-frame header 134 can include, for example, six octets for the destination MAC address, six octets for the source MAC address and two octets to store a length indicator. In this example, the pad value 136 can include between 0 and 3 octets],,
wherein respective data payloads of the multiple aligned packets are aligned with one another based on a specific number of bytes; wherein the multiple subframe packets are generated according to the multiple aligned packets, respectively[col 11, In 4-9, the payload of the MPDU 430 is complete with three sub-frames. Accordingly, after transferring the pad-value 424 to the payload, the MPDU constructor 124 calculates an
FCS value 432 for the MPDU 430 and appends the FCS value 432 to the end of the payload, thereby completing the MPDU 430];
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle, Goel, Rawson, Minami and Lynch because these MSDU descriptors allow the aggregation of A-MSDUs to be initiated while the MSDUs are in place in the same memory in which they were initially stored
8, Doyle, Goel, Rawson, Minami and Lynch describe the communications device of claim 6, Doyle, Goel, Rawson, and Minami fail to show wherein the aggregate packet has a medium access control (MAC) header, and the specific header is different from the MAC header.
In an analogous art Lynch show wherein the aggregate packet has a medium access control (MAC) header, and the specific header is different from the MAC header [col 9, In 22-32, In response to receiving the MSDU 401, the protocol stack 118 creates a sub-frame 404 by generating a MAC header 405, a sub-frame header 406 (also denoted "S-F HDR"), and a pad value 407 and storing these sub-frame components at various locations in the memory 108. The protocol stack 118 also generates an MSDU descriptor 408 for the sub-frame 404 and stores the MSDU descriptor 408 in the queue 128].
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle, Goel, Rawson, Minami and Lynch because these MSDU descriptors allow the aggregation of A-MSDUs to be initiated while the MSDUs are in place in the same memory in which they were initially stored.
11, Doyle, Goel, Rawson, and Minami provide the method of claim 10, wherein utilizing the aggregate packet de-aggregation device to generate the multiple subframe packets according to the aggregate packet comprises: utilizing a de-aggregation circuit of the aggregate packet de-aggregation device to perform de-aggregation on the aggregate packet to generate multiple de-aggregation packets[par 0038, Following receipt, the client device 2A may deaggregate the AMPDU into the original two or more AMSDUs. Each AMSDU may be decrypted using the authentication and security information shared between the controller 4 and the client device 2A. The decrypted AMSDU may be deaggregated into two or more data packets],
Doyle, Goel, Rawson, and Minami fail to show wherein each de-aggregation packet of the multiple de-aggregation packets has a descriptor configured to carry information of said each de-aggregation packet; wherein the multiple subframe packets are generated according to the multiple de-aggregation packets, respectively.
In an analogous art Lynch show wherein each de-aggregation packet of the multiple de-aggregation packets has a descriptor configured to carry information of said each de-aggregation packet; wherein the multiple subframe packets are generated according to the multiple de-aggregation packets, respectively[abstract, A sub-frame is generated for each MSDU to be aggregated in an A-MSDU and the sub-frame is stored in place in memory. For each sub-frame, an MSDU descriptor identifying the memory
location of the sub-frame is stored in a queue. When a transmit opportunity for an MPDU arises, a DMA engine sequentially transfers the components of sub-frames stored in memory to a PHY layer using a list or other sequence of DMA descriptors obtained from at least a subset of the MSDU descriptors].
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle, Goel, Rawson, Minami and Lynch because these MSDU descriptors allow the aggregation of A-MSDUs to be initiated while the MSDUs are in place in the same memory in which they were initially stored
12, Doyle, Goel, Rawson, Minami and Lynch disclose the method of claim 11, Doyle, Goel, and Ram fail to show wherein the information of said each de-aggregation packet indicates whether said each de- aggregation packet is a last de-aggregation packet of the multiple de-aggregation packet.
In an analogous art Lynch show wherein the information of said each de- aggregation packet indicates whether said each de-aggregation packet is a last de- aggregation packet of the multiple de-aggregation packet[col 5, In 5-15, That is, the DMA descriptors are part of the MSDU descriptors 138 in this embodiment. In other embodiments, the MSDU descriptors 138 provide for the DMA descriptors in that the MSDU descriptors 138 store memory location metadata used by the protocol stack 118 to separately generates one or more lists or other sequences of DMA descriptors used to transfer the components of a sub-frame 132].
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle, Goel, Ram and Lynch because these MSDU descriptors allow the aggregation of A-MSDUs to be initiated while the MSDUs are in place in the same memory in which they were initially stored
13, Doyle, Goel, Ram and Lynch create the method of claim 11, Doyle, Goel, Rawson, and Minami fail to show wherein the information of said each de-aggregation packet indicates a length of said each de-aggregation packet.
In an analogous art Lynch show wherein the information of said each de- aggregation packet indicates a length of said each de-aggregation packet [col 4, In 20- 26, As provided by the IEEE 802.11 standards, the sub-frame header 134 can include, for example, six octets for the destination MAC address, six octets for the source MAC address and two octets to store a length indicator. In this example, the pad value 136 can include between 0 and 3 octets].
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle, Goel, Rawson, Minami and Lynch because these MSDU descriptors allow the aggregation of A-MSDUs to be initiated while the MSDUs are in place in the same memory in which they were initially stored
14, Doyle, Goel, Rawson, Minami and Lynch disclose the method of claim 11, Doyle, Goel, Rawson, and Minami fail to show wherein utilizing the aggregate packet de-aggregation device to generate the multiple subframe packets according to the aggregate packet further comprises: utilizing a payload alignment circuit of the aggregate packet de-aggregation device to add padding bytes to the multiple de-aggregation packets to generate multiple aligned packets, respectively, wherein respective data payloads of the multiple aligned packets are aligned with one another based on a specific number of bytes; wherein the multiple subframe packets are generated according to the multiple aligned packets, respectively.
In an analogous art Lynch show wherein utilizing the aggregate packet de- aggregation device to generate the multiple subframe packets according to the aggregate packet further comprises: utilizing a payload alignment circuit of the aggregate packet de-aggregation device to add padding bytes to the multiple de- aggregation packets to generate multiple aligned packets, respectively[col 4, In 20-26, As provided by the IEEE 802.11 standards, the sub-frame header 134 can include, for example, six octets for the destination MAC address, six octets for the source MAC address and two octets to store a length indicator. In this example, the pad value 136 can include between 0 and 3 octets],
wherein respective data payloads of the multiple aligned packets are aligned with one another based on a specific number of bytes; wherein the multiple subframe packets are generated according to the multiple aligned packets, respectively[col 11, In 4-9, the payload of the MPDU 430 is complete with three sub-frames. Accordingly, after transferring the pad-value 424 to the payload, the MPDU constructor 124 calculates an FCS value 432 for the MPDU 430 and appends the FCS value 432 to the end of the payload, thereby completing the MPDU 430];
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle, Goel, Rawson, Minami and Lynch because these MSDU descriptors allow the aggregation of A-MSDUs to be initiated while the MSDUs are in place in the same memory in which they were initially stored.
15, Doyle, Goel, Rawson, Minami and Lynch display the method of claim 11, Doyle, Goel, Rawson, and Minami fail to show wherein utilizing the aggregate packet de-aggregation device to generate the multiple subframe packets according to the aggregate packet further comprises: utilizing a header conversion circuit of the aggregate packet de-aggregation device to perform header conversion on the multiple de-aggregation packets to generate multiple converted packets, respectively, wherein each converted packet of the multiple converted packets has a specific header, to allow the host device to perform subsequent communications according to a communications standard corresponding to the specific header; wherein the multiple subframe packets are generated according to the multiple converted packets, respectively.
In an analogous art Lynch show wherein utilizing the aggregate packet de- aggregation device to generate the multiple subframe packets according to the aggregate packet further comprises: utilizing a header conversion circuit of the aggregate packet de-aggregation device to perform header conversion on the multiple de-aggregation packets to generate multiple converted packets, respectively[col 7, In 51-60, In response, at block 204 the protocol stack 118 generates an A-MSDU sub-
frame 132 for the MSDU 130 by preparing a sub-frame header 134 and a pad value 136 for the MSDU 130 and provides the MSDU 130, the sub-frame header 134, and the pad value 136 for storage in the memory 108. In other embodiments, rather than generating the pad value 136 at this point, the MPDU constructor 124 instead can generate the pad value 136 on the fly after the DMA engine 126 has accessed the sub-frame header 134 and the MSDU 130 from memory),
wherein each converted packet of the multiple converted packets has a specific header, to allow the host device to perform subsequent communications according to a communications standard corresponding to the specific header[col 8, In 28-44, In response, at block 304 the protocol stack 118 generates a MAC header 144 to initiate a new MPDU 142 and provides the MAC header 144 to the PHY 116 for transmission. In one embodiment, the MPDU constructor 124 is programmed to generate the MAC header 144 using configuration information supplied by, another component of the protocol stack 118. In another embodiment, the MAC header 144 constitutes one of the components of each sub-frame stored in memory and the first MSDU descriptor 138 in the queue 128 includes a DMA descriptor pointing to the MAC header 144 (or includes metadata used by the MPDU constructor 124 to generate the DMA descriptor pointing to the MAC header 144)];
wherein the multiple subframe packets are generated according to the multiple converted packets, respectively[col 8, In 22-28, F/G. 3 illustrates an example of a process by which the DMA engine 126 and the MPDU constructor 124 generate an MPDU 142 by aggregating A-MSDU sub-frames 132 using the MSDU descriptors 138 queued in the queue 128. In this example, the process initiates at block 302, whereby a
higher-layer component signals a TXOP to the protocol stack 118. In response, at block 304 the protocol stack 118 generates a MAC header 144 to initiate anew MPDU 142 and provides the MAC header 144 to the PHY 116 for transmission].
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle, Goel, Rawson, Minami and Lynch because these MSDU descriptors allow the aggregation of A-MSDUs to be initiated while the MSDUs are in place in the same memory in which they were initially stored.
16. Doyle, Goel, Rawson, Minami and Lynch disclose the method of claim 15, Doyle, Goel, Rawson, and Minami fail to show wherein utilizing the aggregate packet de-aggregation device to generate the multiple subframe packets according to the aggregate packet further comprises: utilizing a payload alignment circuit of the aggregate packet de-aggregation device to add padding bytes to the multiple converted packets to generate multiple aligned packets, respectively, wherein respective data payloads of the multiple aligned packets are aligned with one another based on a specific number of bytes; wherein the multiple subframe packets are generated according to the multiple aligned packets, respectively.
In an analogous art Lynch show wherein utilizing the aggregate packet de- aggregation device to generate the multiple subframe packets according to the aggregate packet further comprises: utilizing a payload alignment circuit of the aggregate packet de-aggregation device to add padding bytes to the multiple converted packets to generate multiple aligned packets, respectively[col 4, In 20-26, As provided by the IEEE 802.11 standards, the sub-frame header 134 can include, for example, six
octets for the destination MAC address, six octets for the source MAC address and two octets to store a length indicator. In this example, the pad value 136 can include between 0 and 3 octets],
wherein respective data payloads of the multiple aligned packets are aligned with one another based on a specific number of bytes; wherein the multiple subframe packets are generated according to the multiple aligned packets, respectively[col 11, In 4-9, the payload of the MPDU 430 is complete with three sub-frames. Accordingly, after transferring the pad-value 424 to the payload, the MPDU constructor 124 calculates an FCS value 432 for the MPDU 430 and appends the FCS value 432 to the end of the payload, thereby completing the MPDU 430];
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle, Goel, Rawson, Minami and Lynch because these MSDU descriptors allow the aggregation of A-MSDUs to be initiated while the MSDUs are in place in the same memory in which they were initially stored.
17, Doyle, Goel, Rawson, Minami and Lynch convey the method of claim 15, Doyle, Goel, Rawson, and Minami fail to show wherein the aggregate packet has a medium access control (MAC) header, and the specific header is different from the MAC header.
In an analogous art Lynch show wherein the aggregate packet has a medium access control (MAC) header, and the specific header is different from the MAC header [col 9, In 22-32, In response to receiving the MSDU 401, the protocol stack 118 creates a sub-frame 404 by generating a MAC header 405, a sub-frame header 406 (also
denoted "S-F HDR"), and a pad value 407 and storing these sub-frame components at various locations in the memory 108. The protocol stack 118 also generates an MSDU descriptor 408 for the sub-frame 404 and stores the MSDU descriptor 408 in the queue 128].
Before the effective filing date it would have been obvious to one of ordinary skill in the art to combine the teachings of Doyle, Goel, Rawson, Minami and Lynch because these MSDU descriptors allow the aggregation of A-MSDUs to be initiated while the MSDUs are in place in the same memory in which they were initially stored.
Response to Arguments
The applicant respectfully believes that neither Doyle nor Goel teach de-aggregating an already aggregated packet before finally sending the packet to a host. Rawson and Minami fail to correct for these deficiencies.
The applicant therefore respectfully believes that Doyle is teaching against fragmenting an A-MSDU regardless of whether the packet should undergo upstream or downstream transmission.
The examiner respectfully disagrees the applicant is arguing de-aggregating an already aggregated packet before sending the packet to a host. The applicant is claiming an aggregate/de-aggregate device but the claim does not claim de-aggregation the examiner’s assumption is that generating multiple subframes of the aggregate frame implies the de-aggregation is taking place but applicant has not specifically claim the de-aggregation within the claim.
In Doyle paragraphs 0032, 0038, shows the controller 4 may decrypt the AMSDU using the authentication and security information shared with the client device 2A. The controller 4 may thereafter deaggregate the AMSDU into two or more data packets. The data packets may thereafter be transmitted to the remote device 5A through the external network 7. The transmission may use any suitable protocol, including the Transmission Control Protocol/Internet Protocol standards.
Upon receipt, the access point 3 may aggregate two or more AMSDUs into an AMPDU and transmit the AMPDU over the wireless channels 6 to the client device 2A. Following receipt, the client device 2A may deaggregate the AMPDU into the original two or more AMSDUs. Each AMSDU may be decrypted using the authentication and security information shared between the controller 4 and the client device 2A. The decrypted AMSDU may be deaggregated into two or more data packets. The data packets may thereafter be processed by one or more applications running on the hardware processor 21
The paragraphs show de-aggregating show client devices de-aggregating an aggregated packet into two more packets according to size.
In paragraph 0042, The selected AMSDU sizes may be utilized for upstream and downstream communications between the client devices 2 and the remote devices 5. At operation 13, the method 9 determines/detects if a new MTU size has been set between the access point 3 and the controller 4. If a new MTU size is detected, the method 9 moves back to operations 11 and 12 to select new upstream and downstream AMSDU sizes, respectively. By setting the upstream and downstream AMSDU sizes to be less than or equal to the MTU size, each AMSDU may be transported in a single MTU without fragmentation. By eliminating fragmentation of AMSDUs during transmission between the access point 3 and the controller 4, performance of the upstream and downstream datapaths are improved through the elimination of fragmentation processing delays, the paragraph shows the AMSDU sizes may be utilized for upstream and downstream communications between the client devices 2 and the remote devices. The paragraph further shows that determining a size threshold for the two or more data packets eliminates fragmentation of AMSDUs during transmission, Doyle teaches that fragmentation occurs prior to transmission, which does not teach against fragmenting an A-MSDU.
Therefore, although Goel teaches sending MSDUs to a host device, these MSDUs are not generated according to an aggregated packet.
In addition, Rawson is directed to maximizing performance by transmitting fewer and larger PDUs (Para [0031]), and therefore only performs fragmentation of the management PDUs "if necessary", rather than for maximizing storage efficiency.
Minami teaches allocating a buffer size according to a total amount of data expected to be received. As none of the prior arts teach de-aggregating a received aggregated packet, combining the teachings of the prior arts will still allocate buffer space according to the size of total received data, rather than according to the size of multiple sub-packets generated by de-aggregating the total received data.
The examiner respectfully disagrees analogous art Doyle show MSDUs are generated according to an aggregated packet as stated in the previous argument. In Doyle paragraphs 0032, 0038, shows the controller 4 may decrypt the AMSDU using the authentication and security information shared with the client device 2A. The controller 4 may thereafter deaggregate the AMSDU into two or more data packets. The data packets may thereafter be transmitted to the remote device 5A through the external network 7. The transmission may use any suitable protocol, including the Transmission Control Protocol/Internet Protocol standards. Upon receipt, the access point 3 may aggregate two or more AMSDUs into an AMPDU and transmit the AMPDU over the wireless channels 6 to the client device 2A. Following receipt, the client device 2A may deaggregate the AMPDU into the original two or more AMSDUs. Each AMSDU may be decrypted using the authentication and security information shared between the controller 4 and the client device 2A. The decrypted AMSDU may be deaggregated into two or more data packets. The data packets may thereafter be processed by one or more applications running on the hardware processor 21, The paragraphs show de-aggregating show client devices de-aggregating an aggregated packet into two more packets according to size.
Conclusion
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to JASON A HARLEY whose telephone number is (571)270-5435. The examiner can normally be reached 7:30-300 6:30-8:30.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Marcus Smith can be reached at (571) 270-1096. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/JASON A HARLEY/Examiner, Art Unit 2468