Acknowledging receipt of real-time data
Summary by NHIP
Wireless Client Mode Switching
The method associates a wireless client with a system and configures it to switch from a header-based mode to a mode receiving uncompressed real-time data packets without TCP/IP headers. Distinctive elements include sniffing a SSID to associate the client and configuring transmission parameters like beacon interval and contention window size to support the headerless reception mode.
Claim Score by NHIP
Abstract
In one aspect, a method for communicating with a wireless communication system through a wireless client includes associating a wireless client with a wireless communication system; at the wireless client, receiving one or more real time data packets transmitted from the wireless communication system, each real time data packet containing real time data; and sending an acknowledgement (ACK) packet for each real time data packet correctly received by the wireless client.

Term
1.3 yearsleft in the term
Expires 25 December 2027, including 1,175 days of term adjustment.
- Priority
- Filed
- Granted
- Today
- Expires
20 claims: 3 independent, 17 dependent
- 1Broadest claimClaim Score 47, average(NHIP)A method for communicating with a wireless communication system through a wireless client, the method comprising:associating a wireless client with a wireless communication system;configuring the wireless client to switch from operating in a first transmission mode to a second transmission mode, wherein the first transmission mode includes receiving packets comprising header information in accordance with a communication protocol specified for the first transmission mode, and the second transmission mode includes receiving real-time data packets that do not contain the header information in accordance with the communication protocol specified for the first transmission mode;at the wireless client operating in the second transmission mode, receiving one or more real-time data packets transmitted from the wireless communication system, each real-time data packet containing real-time data in an uncompressed format;and sending an acknowledgement (ACK) packet for each real-time data packet correctly received by the wireless client.
- 10A wireless client comprising:a SSID (Service Set Identifier) engine operable to associate a wireless client with a wireless communication system;a control engine operable to configure the wireless client to switch from operating in a first transmission mode to a second transmission mode, wherein the first transmission mode includes receiving packets comprising header information in accordance with a communication protocol specified for the first transmission mode, and the second transmission mode includes receiving real-time data packets that do not contain the header information in accordance with the communication protocol specified for the first transmission mode;a transceiver operating in the second transmission mode, the transceiver operable to receive one or more real-time data packets transmitted from the wireless communication system, each real-time data packet containing real-time data in an uncompressed format;and a negotiation engine operable to send an acknowledgement (ACK) packet for each real-time data packet correctly received by the wireless client.
- 20A wireless client comprising:SSID (Service Set Identifier) means for associating a wireless client with a wireless communication system;control means operable to configure the wireless client to switch from operating in a first transmission mode to a second transmission mode, wherein the first transmission mode includes receiving packets comprising header information in accordance with a communication protocol specified for the first transmission mode, and the second transmission mode includes receiving real-time data packets that do not contain the header information in accordance with the communication protocol specified for the first transmission mode;transceiver means operating in the second mode, the transceiver means for receiving one or more real-time data packets transmitted from the wireless communication system, each real-time data packet containing real-time data in an uncompressed format;and negotiation means for sending an acknowledgement (ACK) packet for each real-time data packet correctly received by the wireless client.
Independent claims3
69 paragraphs in 5 sections, as filed
CROSS-REFERENCE TO RELATED APPLICATIONS
0001The present application is a divisional of and claims the benefit of the priority to U.S. patent application Ser. No. 10/960,378, filed Oct. 6, 2004, and issued on Jul. 7, 2009, as U.S. Pat. No. 7,558,289, which claims the benefit of priority to commonly assigned U.S. Provisional Application Ser. No. 60/581,040, filed Jun. 17, 2004, the disclosures of which are incorporated herein by reference in their entirety.
BACKGROUND
0002This disclosure relates to network devices and network communication.
0003Wireless local area networks (WLANs) are increasingly being used in many different applications, e.g., in home entertainment and business applications.
0004In one application of a conventional WLAN, one or more wireless clients (e.g., telephone, speaker, television, projector, and so on) can be configured to be in communication with one or more wireless communication systems (e.g., a server, a network, a desktop workstation, laptop computer, and so on) to receive and transmit information.
0005WLANs generally specify the technologies for wireless communication. Example WLANs can be implemented according to one or more of the following standards: IEEE standards 802.11, 802.11a, 802.11b, 802.11g, 802.11n, 802.16 and 802.20. WLANs typically implement-one or more communication protocols in which information is transmitted in packets. Such communication protocols can specify features such as packet size, packet content information, data rates, roaming, and so on. WLANs generally include a communication medium (or transmission channel) that is shared by transmitters (e.g., a wireless communication system and one or more wireless clients). To avoid collision between two transmitted packets on the shared communication medium, a WLAN can implement a CSMA/CA (carrier sense multiple access with collision avoidance) protocol.
0006<figref idref="DRAWINGS">FIG. 1</figref> illustrates a timing sequence <b>100</b> for transmission of a packet according to a CSMA/CA protocol. When a wireless communication system wants to transmit a packet (e.g., to a wireless client), the wireless communication system first senses (or listens to) the shared communication medium to determine whether the shared communication medium is free (or idle). If the shared communication medium is sensed by the wireless communication system as being free, the wireless communication system waits for a DCF (Distributed Coordination Function) interframe space (DIFS), and then transmits a packet. Otherwise, the wireless communication system defers access to the shared communication medium until the shared communication medium is free, and the wireless communication system commences a backoff procedure. The backoff procedure reflects a delay of a number of random timing slots. The random delay occurs during a contention window so that the likelihood of collision between transmitted packets on the shared communication medium is reduced. Thereafter, the wireless communication system again senses the shared communication medium. If the shared communication medium is free, the wireless communication system transmits a next packet on the shared communication medium.
0007Within the CSMA/CA protocol, each wireless client is also operable to send an acknowledgement (ACK) packet each time the wireless client correctly receives a packet. ACK packets are typically sent after a short interframe space (SIFS) as shown in <figref idref="DRAWINGS">FIG. 1</figref>.
0008With respect to transmission of real-time data (e.g., streaming audio, video, and so on) in a conventional WLAN, a wireless communication system can send compressed real-time data through multicast network services to one or more wireless clients using standard protocols such as TCP/IP (Transmission Control Protocol/Internet Protocol) and RTP (Real-Time Transport Protocol). Although RTP provides end-to-end network transport functions suitable for transmission of real-time data in a WLAN, RTP typically does not provide QoS (Quality of Service)—e.g., RTP does not require that a wireless client return an ACK packet.
SUMMARY
0009In general, in one aspect, this specification describes a wireless communication system. The wireless communication system includes a memory buffer operable to provide one or more real-time data packets to be transmitted from a wireless communication system to (N) wireless clients in a WLAN. Each real-time data packet contains real-time data in an uncompressed format, and (N) is an integer greater than (0). The wireless communication system further includes a transceiver operable to transmit the one or more real-time data packets from the wireless communication system to the (N) wireless clients.
0010Particular implementations can include one or more of the following features. The transceiver can unicast the one or more real-time data packets to the (N) wireless clients. One or more of the real-time data packets can not contain TCP/IP headers. The wireless communication system can further include a control engine operable to configure one or more transmission parameters associated with the wireless communication system to support a real-time transmission mode. The real-time transmission mode can be characterized by a configuration that permits the wireless communication system and the one or more of the (N) wireless clients to transmit real-time data packets not containing TCP/IP headers. The control engine can configure one or more transmission parameters including a beacon interval, a data transfer rate, a contention window size, or an interframe spacing window.
0011The control engine can control a beacon interval engine, a data rate transfer engine, a contention window engine, and an interframe space engine associated with the wireless communication system. The beacon interval engine can change a beacon interval from an initial beacon interval to a pre-determined beacon interval different from the initial beacon interval after the (N) wireless clients have been associated with the wireless communication system in the WLAN. The data rate transfer engine can set a data transfer rate of a corresponding media access controller (MAC) at a fixed rate (e.g., 11 Mbps). The contention window engine can set a contention window size parameter of a corresponding MAC to a value CWmin (minimum contention window). The interframe space engine can set an interframe spacing parameter of a corresponding MAC to a minimum size. The transceiver can receive the one or more real-time data packets in accordance with one or more of the following IEEE wireless communication protocols: 802.11, 802.11a, 802.11b, 802.11g, 802.11n, 802.16 and 802.20.
0012In general, in another aspect, this specification describes a wireless client. The wireless client includes a SSID (Service Set IDentifier) engine operable to associate a wireless client with a wireless communication system in a WLAN, and a transceiver operable to receive one or more real-time data packets transmitted from the wireless communication system. Each real-time data packet contains real-time data in an uncompressed format. The wireless client further includes a negotiation engine operable to send an acknowledgement (ACK) packet for each real-time data packet correctly received by the wireless client.
0013Particular implementations can include one or more of the following features. The SSID engine can sniff a SSID associated with the WLAN. The wireless client can further include a control engine operable to configure one or more transmission parameters associated with the wireless client to support a real-time transmission mode. The control engine can configure one or more transmission parameters including a beacon interval, a data transfer rate, a contention window size, or an interframe spacing window.
0014The control engine can control a beacon interval engine, a data rate transfer engine, a contention window engine, and an interframe space engine. The beacon interval engine can change a beacon interval from an initial beacon interval to a pre-determined beacon interval different from the initial beacon interval after the wireless client has been associated with the wireless communication system. The data rate transfer engine can set a data transfer rate of a corresponding MAC at a fixed rate. The contention window engine can set a contention window size parameter of a corresponding MAC to a value CWmin. The interframe space engine can set an interframe spacing parameter of a corresponding MAC to a minimum size. The transceiver can receive one or more real-time data packets unicast from the wireless communication system. The transceiver can transmit the one or more real-time data packets in accordance with one or more of the following IEEE wireless communication protocols: 802.11, 802.11a, 802.11b, 802.11g, 802.11n, 802.16 and 802.20.
0015In general, in another aspect, this specification describes a real-time data packet. The real-time data packet includes a destination address field indicating a destination address for-the real-time data packet, a source address field indicating a source address associated with the real-time data packet, a transmitting station address field indicating an address of a transmitting station, a receiving station address field indicating an address of a receiving station, and a data packet field containing one or more blocks. Each block includes a packet length field identifying a total length of a given block, a data field containing real-time data in an uncompressed format, and a packet ID field identifying a type of data contained in data field.
0016Particular implementations can include one or more of the following features. The real-time data packet can further include a frame control field indicating a protocol version associated with the real-time data packet, a duration ID field indicating a duration of the real-time data packet or indicating an address of the transmitting station, a sequence control field indicating an order of fields within the real-time data packet, and a frame check sequence field indicating a frame check sequence associated with the real-time data packet.
0017The destination address field can be (6) bytes in size, the source address field can be (6) bytes in size, the transmitting station address field can be (6) bytes in size, the receiving station address field can be (6) bytes in size, the packet ID field can be (1) byte in size, the packet length field can be (1) byte in size, and the data field can have a maximum size of (30) bytes. The real-time data packet can be composed of (16) or (32) blocks for a total size of (512) bytes or (1024) bytes of uncompressed real-time data.
0018Implementations can include one or more of the following advantages. QoS is provided in the transmission of real-time data (e.g., streaming audio, video, and so on) over a WLAN. The real-time data is sent within a data packet in an uncompressed format. Thus, compression/de-compression circuitry is not necessary, reducing the cost and complexity of WLAN systems that transmit real-time data. In one implementation, delays in transmission of audio data packets from a wireless communication system to a wireless client is substantially unperceivable—i.e., a worst case delay for transmission of an audio packet is not greater than approximately 10 ms (microseconds).
0019Other features and advantages are apparent from the following description, and from the claims.
DESCRIPTION OF DRAWINGS
0020<figref idref="DRAWINGS">FIG. 1</figref> illustrates a timing sequence for transmission of a packet according to the CSMA/CA (carrier sense multiple access with collision avoidance) protocol.
0021<figref idref="DRAWINGS">FIG. 2</figref> is a block diagram of a WLAN.
0022<figref idref="DRAWINGS">FIG. 3A and 4A</figref> are block diagrams of a wireless communication system.
0023<figref idref="DRAWINGS">FIG. 3B and 4B</figref> are block diagrams of a wireless client.
0024<figref idref="DRAWINGS">FIG. 5</figref> illustrates a beacon interval.
0025<figref idref="DRAWINGS">FIG. 6</figref> illustrates a real-time data packet.
0026<figref idref="DRAWINGS">FIG. 7</figref> is a method for transmitting real-time data in the WLAN of <figref idref="DRAWINGS">FIG. 2</figref>.
0027Like reference symbols in the various drawings indicate like elements.
DETAILED DESCRIPTION
0028<figref idref="DRAWINGS">FIG. 2</figref> is a block diagram of a wireless local area network (WLAN) <b>200</b>. WLAN <b>200</b> includes a wireless communication system <b>202</b> and wireless clients <b>204</b>-<b>208</b>. Though three wireless clients <b>204</b>-<b>208</b> are illustrated in <figref idref="DRAWINGS">FIG. 2</figref> by way of example, WLAN <b>200</b> can contain a different number of wireless clients. WLAN <b>200</b> can be arranged according to an ad-hoc mode in which wireless communication system <b>202</b> communicates directly with each of wireless clients <b>204</b>-<b>208</b> without an access point. In one implementation, one or more of IEEE standards 802.11a, 802.11b and 802.11g specify the technologies for wireless communications in WLAN <b>200</b>. IEEE standards 802.11, 802.11n, 802.16 and 802.20 can also specify the technologies for wireless communications in WLAN <b>200</b>.
0029Wireless communication system <b>202</b> can be any type of system operable to generate or process real-time data. For example, wireless communication system <b>202</b> can be a server, a network, a desktop workstation, laptop computer, hand-held personal computer, personal digital assistant (PDA), cellular telephone, data collector, and so on. In one implementation, at least one of wireless clients <b>204</b>-<b>208</b> includes a device operable to output streaming audio or video, e.g., a telephone, speaker, television, projector, and so on. Streaming audio or video is typically transmitted as a stream (of packets) that flows at a constant bit rate—i.e., a wireless client outputs audio or video playback at a rate at which the wireless client receives the audio or video stream. Each wireless client <b>204</b>-<b>208</b> can have different communication capabilities and requirements.
0030Referring to <figref idref="DRAWINGS">FIG. 3A</figref>, wireless communication system <b>202</b> includes a host device <b>300</b>, a real-time data source <b>302</b>, an analog-to-digital converter <b>304</b> (optional), a memory buffer <b>306</b>, a media access controller (MAC) <b>308</b>, a baseband processor <b>312</b> and a radio frequency (RF) transceiver <b>314</b>. Real-time data source <b>302</b> outputs real-time data either in analog or digital format. The real-time data can include any type of real-time data—e.g., streaming video or audio. In one implementation, real-time data source <b>302</b> outputs real-time data in analog format to ADC <b>304</b>. Alternatively, real-time data source <b>302</b> can output real-time data in digital format directly to memory buffer <b>306</b>. ADC <b>304</b> is operable to convert analog data into digital data. Memory buffer <b>306</b> buffers received digital data and provides data packets to MAC <b>308</b>. In one implementation, memory buffer <b>306</b> is a dual buffer operable to output a data packet from a first buffer while receiving digital data at a second buffer.
0031MAC <b>308</b> includes one or more processing engines for processing received/and to be transmitted data packets and interfacing with network components. MAC <b>308</b> includes QoS system configuration engine <b>310</b> for configuring transmission parameters of wireless communication system <b>202</b>. The transmission parameters control when and how data packets are transmitted to a wireless client (e.g., wireless clients <b>204</b>-<b>208</b>). In one implementation, the transmission parameters include media access parameters—e.g., contention window size, interframe space size, retry count threshold, beacon interval, and so on. QoS system configuration engine <b>310</b> can be in the form of hardware (circuits), software, firmware or combinations thereof. MAC <b>308</b> also provides an interface to baseband processor <b>312</b>. Baseband processor <b>312</b> processes baseband signals from/to RF signals in conformance with a conventional radio frequency transmission protocol. RF transceiver <b>300</b> transmits and receives packets to/from each of wireless clients <b>204</b>-<b>208</b> (<figref idref="DRAWINGS">FIG. 2</figref>).
0032<figref idref="DRAWINGS">FIG. 4A</figref> shows QoS system configuration engine <b>310</b> in greater detail. QoS system configuration engine <b>310</b> includes a SSID (Service Set IDentifier) engine <b>400</b>, a negotiation engine <b>402</b>, a beacon interval engine <b>404</b>, a data transfer rate engine <b>406</b>, a contention window engine <b>408</b>, an interframe space engine <b>410</b> and a control engine <b>412</b>.
0033A SSID is a token that identifies a particular WLAN. Typically, the SSID is a secret key that can be pre-set or programmed by a network administrator. Typically, the SSID must be known in order for a system or wireless client to join a given WLAN (e.g., WLAN <b>200</b> of <figref idref="DRAWINGS">FIG. 2</figref>). Alternatively, the SSID can be discovered by network sniffing. The SSID can be a part of a packet header for every packet sent over WLAN <b>200</b> (<figref idref="DRAWINGS">FIG. 2</figref>). SSID engine <b>400</b> is operable to set or generate a SSID for wireless communication system <b>202</b>. SSID engine <b>400</b> can include one or more routines for producing SSIDs, using for example, a PIN generated by a pin generator (not shown). Alternatively, SSID engine <b>400</b> can generate a SSID based on user input, e.g., through a keyboard or other input device.
0034Negotiation engine <b>402</b> is operable to establish a WLAN, including associating one or more wireless clients (e.g., wireless clients <b>204</b>-<b>208</b> of <figref idref="DRAWINGS">FIG. 2</figref>) with a wireless communication system (e.g., wireless communication system <b>200</b> of <figref idref="DRAWINGS">FIG. 2</figref>). In one implementation, negotiation engine <b>402</b> broadcasts a conventional beacon packet to all wireless clients in a WLAN. In one implementation, the beacon packet is approximately fifty bytes long, with substantially half of the beacon packet comprising a common frame header and a cyclic redundancy checking (CRC) field. The frame header includes source and destination MAC addresses as well as other information regarding the communications process. The CRC field provides error detection capability. Negotiation engine <b>402</b> is also operable to determine whether an ACK packet has been received from a wireless client after transmission of a corresponding data packet.
0035Beacon interval engine <b>404</b> is operable to dynamically change (e.g., increase or decrease) a beacon interval of wireless communication system <b>200</b> once a WLAN has been established by negotiation engine <b>402</b>. The beacon interval represents an amount of time between beacon packet transmissions. In one implementation, an initial beacon interval (e.g., 100 ms) is dynamically changed to a maximum beacon interval (e.g., 60 sec) after a WLAN has been established, as shown in <figref idref="DRAWINGS">FIG. 5</figref>. Increasing the beacon interval reduces the amount of beacon packets broadcast by wireless communication system <b>202</b> and reduces the associated overhead.
0036Referring again to <figref idref="DRAWINGS">FIG. 4A</figref>, QoS system configuration engine <b>310</b> further includes a data transfer rate engine <b>406</b>. Data transfer rate engine <b>406</b> is operable to set a data transfer rate parameter of MAC <b>308</b> at a fixed, pre-determined data transmission rate, such that rate adaptation does not occur. In one implementation, data transfer rate engine <b>406</b> fixes the data transmission rate parameter of MAC <b>308</b> at a pre-determined level (e.g., 11 Mbps (megabits per second)). In one implementation, data transfer rate engine <b>406</b> permits rate adaptation to occur at data transmission rates above a pre-determined level (e.g., 11 Mbps in an 802.11g WLAN).
0037Contention window engine <b>408</b> is operable to set a contention window size parameter associated with MAC <b>308</b>. In one implementation, contention window engine <b>408</b> sets the contention window parameter to a value CWmin (the minimum contention window).
0038Interframe space engine <b>410</b> is operable to set an interframe spacing window parameter associated with MAC <b>308</b>. In one implementation, interframe space engine <b>410</b> sets the interframe spacing window to a minimum size—e.g., (0).
0039Control engine <b>412</b> is operable to switch operation of MAC <b>308</b> between at least two modes—a normal transmission mode and a real-time data transmission mode. In the normal data transmission mode, control engine <b>412</b> maintains transmission parameters of MAC <b>408</b> according to values as necessary for the transmission of conventional Internet Protocol (IP) packets. Conventional IP packets contain protocols and data from higher layers within an IP network stack. For example, a conventional IP data packet can include HTML code from a Web page (complete with TCP/IP headers) that a user is viewing.
0040In the real-time transmission mode, control engine <b>412</b> is operable to control each of beacon interval engine <b>404</b>, data transfer rate engine <b>406</b>, contention window engine <b>408</b> and interframe space engine <b>410</b> so that transmission parameters of MAC <b>308</b> permit transmission of real-time data packets (discussed in greater detail below). Unlike a conventional IP packet that includes data from higher layers within an IP stack (e.g., TCP/IP headers), real-time data packets, in one implementation, do not include data from higher layers within an IP stack (e.g., the real-time data packets do not include TCP/IP headers).
0041<figref idref="DRAWINGS">FIG. 6</figref> shows a real-time data packet <b>600</b>. In one implementation, real-time data packet <b>600</b> includes a MAC header portion that allocates (2) bytes for frame control <b>602</b>, (2) bytes for duration/ID <b>604</b>, (6) bytes for a destination address <b>606</b>, (6) bytes for a source address <b>608</b>, (6) bytes for an address of a receiving station (e.g., a wireless client) <b>610</b>, (2) bytes for sequence control <b>612</b>, and (6) bytes for an address of a transmitting station (e.g., a wireless client) <b>614</b>. Real-time data packet <b>600</b> also includes a data packet field <b>616</b> (variable in size) (discussed in greater detail below). A 4-byte frame check sequence (FCS) <b>618</b> follows data packet field <b>616</b>.
0042Data packet field <b>616</b> contains one or more of blocks <b>620</b>. Block <b>620</b> includes a packet ID field <b>622</b>, a packet length field <b>624</b> and a data field <b>626</b>. Packet ID field <b>622</b> identifies a type of data contained in data field <b>626</b>. Types of data include streaming video, audio, management commands, and other types of data that can be assigned an identifier. In one implementation, packet ID field <b>622</b> has a size of (1) byte. Packet length field <b>624</b> identifies a total length of block <b>620</b>. In one implementation, packet length field <b>624</b> has a size of (1) byte. In one implementation, data field <b>626</b> includes real-time data (e.g., streaming video or audio). In one implementation, the real-time data is uncompressed. In one implementation, data field <b>626</b> has a maximum size of (30) bytes.
0043In one implementation, memory buffer <b>306</b> buffers (32) blocks <b>620</b> within data packet field <b>616</b> to form a single real-time data packet having (1024) bytes of uncompressed real-time data. In another implementation, memory buffer <b>306</b> buffers (16) blocks <b>620</b> to form a single real-time data packet having (512) bytes of uncompressed real-time data.
0044Referring to <figref idref="DRAWINGS">FIG. 3B</figref>, wireless client <b>204</b> includes a client <b>316</b>, a digital-to-analog converter (DAC) <b>318</b>, a buffer memory <b>320</b>, a MAC <b>322</b>, a baseband processor <b>326</b> and an RF transceiver <b>328</b>. In one implementation, RF transceiver <b>328</b> transmits and receives packets to/from one or more wireless clients (e.g., wireless clients <b>204</b>-<b>208</b> of <figref idref="DRAWINGS">FIG. 2</figref>). Baseband processor <b>326</b> processes the RF signals from/to baseband in conformance with a conventional radio frequency transmission protocol. MAC <b>322</b> includes one or more processing engines for processing received/and to be transmitted signals and interfacing with network components. MAC <b>322</b> also provides a network interface to buffer memory <b>320</b>. Memory buffer <b>320</b> buffers received data packets and outputs digital data to DAC <b>318</b>. In one implementation, memory buffer <b>320</b> is a dual buffer operable to receive a data packet in a first buffer while sending digital data (to DAC <b>318</b>) from a second buffer. DAC <b>318</b> converts digital data into analog data, which is sent to client <b>316</b>. In one implementation, memory buffer outputs digital data directly to client <b>316</b> (not shown) (i.e., DAC <b>318</b> is not required).
0045MAC <b>322</b> includes QoS client configuration engine <b>324</b> for configuring transmission parameters of wireless client <b>204</b>. The transmission parameters control when and how packets are received/sent by wireless client <b>204</b>. As discussed above, the transmission parameters can include media access parameters—e.g., contention window size, interframe space size, retry count threshold, beacon interval, and so on. QoS client configuration engine <b>324</b> can be in the form of hardware (circuits), software, firmware or combinations thereof.
0046In one implementation, the transmission parameters of a wireless communication system (e.g., wireless communication system <b>202</b>) and one or more wireless clients (e.g., wireless clients <b>204</b>-<b>208</b>) are configured such that ACK times of configured wireless client are kept at or below a pre-determined threshold to permit a wireless communication system to perform a pre-determined number of retries during transmission of data packets to a wireless client. In one implementation, wireless communication system <b>202</b> does not wait before re-transmitting a packet that has been corrupted at a given wireless client. Generally, a larger retry threshold count (e.g., 3 or more) statistically allows for a packet throughput of nearly 100 percent.
0047QoS system configuration engine <b>310</b> and QoS client configuration engine <b>324</b> generally provides a pre-determined level of QoS for supporting communication (including real-time data) in WLAN <b>200</b>. QoS is a term for characterizing a performance of packet flow and can be measured by, inter alia, packet transfer delay, jitter, probability of packet loss and throughput.
0048Referring to <figref idref="DRAWINGS">FIG. 4B</figref>, QoS client configuration engine <b>324</b> is shown in greater detail. QoS client configuration engine <b>324</b> includes a SSID engine <b>414</b>, a negotiation engine <b>416</b>, a beacon interval engine <b>418</b>, a data transfer rate engine <b>420</b>, a contention window engine <b>422</b>, an interframe space engine <b>424</b> and a control engine <b>426</b>.
0049SSID engine <b>414</b> is operable to set, or generate, a SSID for wireless client <b>204</b>. In one implementation, SSID engine generates (or detects) and stores the SSID associated with a given WLAN. The SSID used by wireless client <b>204</b> must match the SSID of wireless communication system <b>202</b>. The SSID can be pre-set or pre-programmed by a network administrator through SSID engine <b>414</b>.
0050Negotiation engine <b>416</b> is operable to join a WLAN with wireless communication system <b>200</b> (<figref idref="DRAWINGS">FIG. 2</figref>). In one implementation, negotiation engine <b>416</b> broadcasts a conventional beacon packet to wireless communication system <b>200</b>. Negotiation engine <b>416</b> is also operable to send an ACK packet to wireless communication system <b>200</b> after receiving a corresponding data packet from wireless communication system <b>200</b>.
0051Beacon interval engine <b>418</b> is operable to dynamically change a beacon interval of wireless client <b>204</b> once a WLAN has been established by negotiation engine <b>416</b>. In one implementation, an initial beacon interval (e.g., 100 ms) is dynamically changed to a maximum beacon interval (e.g., 60 sec) after a WLAN has been established.
0052Data transfer rate engine <b>420</b> is operable to set a data transfer rate parameter of MAC <b>322</b> at a fixed, pre-determined data transmission rate. In one implementation, data transfer rate engine <b>420</b> fixes the data transmission rate parameter of MAC <b>322</b> at a pre-determined level (e.g., 11 Mbps). In one implementation, data transfer rate engine <b>422</b> permits rate adaptation to occur at data transmission rates above a pre-determined level (e.g., 11 Mbps).
0053Contention window engine <b>422</b> is operable to set a contention window size parameter associated with MAC <b>322</b>. In one implementation, contention window engine <b>422</b> sets the contention window parameter of MAC <b>322</b> to a value CWmin.
0054Interframe space engine <b>424</b> is operable to set an interframe spacing window parameter associated with MAC <b>322</b>. In one implementation, interframe space engine <b>424</b> sets the interframe spacing window of MAC <b>322</b> to a minimum size—e.g., (0).
0055Control engine <b>426</b> is operable to switch operation of MAC <b>322</b> between at least two modes - a normal transmission mode and a real-time data transmission mode, as discussed above.
0056Referring to <figref idref="DRAWINGS">FIGS. 3A and 3B</figref>, in one implementation of a real-time transmission mode of operation, real-time data source <b>302</b> provides real-time data in an analog format to ADC <b>304</b>. ADC <b>304</b> converts the real-time data into digital format and outputs the digital data to memory buffer <b>306</b>. In one implementation, ADC <b>304</b> interleaves digital data (e.g., 2-channel audio data) into memory buffer <b>306</b>. Buffer memory <b>306</b> configures the digital data into one or more real-time data packets (including uncompressed data) and sends the real-time data packets to MAC <b>308</b>. In one implementation, the real-time data packets sent to MAC <b>308</b> do not include data from higher layers within an IP stack (e.g., TCP/IP headers). MAC <b>308</b> processes the real-time data packets according to transmission parameters associated with the real-time transmission mode and sends the real-time data packets to baseband processor <b>312</b> and RF transceiver <b>314</b> for transmission (e.g., unicast) of the real-time data packets to wireless client <b>204</b>.
0057RF transceiver <b>328</b> of wireless client <b>204</b> receives the real-time data packets and sends an ACK packet back to wireless communication system <b>202</b>, acknowledging receipt of each real-time data packet. Baseband processor <b>326</b> processes the real-time data packets in RF format to baseband in conformance with a conventional radio frequency transmission protocol. MAC <b>322</b> includes one or more processing engines for processing the received real-time data packets in accordance with one or more transmission parameters associated with the real-time transmission mode. Memory buffer <b>320</b> buffers the received real-time data packets and outputs digital data to DAC <b>318</b>. DAC <b>318</b> converts digital data into analog data, which is sent to client <b>316</b>.
0058Table 1 below shows example transmission rates and transmission parameter values associated with transmitting audio data packets to a single receiver and two receivers, respectively.
0059<tables id="TABLE-US-00001" num="00001"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="3"><colspec colname="1" colwidth="133pt" align="left" /><colspec colname="2" colwidth="42pt" align="center" /><colspec colname="3" colwidth="42pt" align="center" /><thead><row><entry namest="1" nameend="3" rowsep="1">TABLE 1</entry></row><row><entry namest="1" nameend="3" align="center" rowsep="1" /></row><row><entry /><entry>One</entry><entry>Two</entry></row><row><entry>Unicast Audio Transmission</entry><entry>receiver</entry><entry>receivers</entry></row><row><entry namest="1" nameend="3" align="center" rowsep="1" /></row></thead><tbody valign="top"><row><entry /></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="5"><colspec colname="1" colwidth="133pt" align="left" /><colspec colname="2" colwidth="21pt" align="right" /><colspec colname="3" colwidth="21pt" align="left" /><colspec colname="4" colwidth="21pt" align="right" /><colspec colname="5" colwidth="21pt" align="left" /><tbody valign="top"><row><entry>Sample Rate</entry><entry>48</entry><entry>KHz</entry><entry>48</entry><entry>KHz</entry></row><row><entry>Resolution</entry><entry>16</entry><entry>bits</entry><entry>16</entry><entry>bits</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="3"><colspec colname="1" colwidth="133pt" align="left" /><colspec colname="2" colwidth="42pt" align="center" /><colspec colname="3" colwidth="42pt" align="center" /><tbody valign="top"><row><entry>Channels per receiver</entry><entry>2</entry><entry>1</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="5"><colspec colname="1" colwidth="133pt" align="left" /><colspec colname="2" colwidth="21pt" align="right" /><colspec colname="3" colwidth="21pt" align="left" /><colspec colname="4" colwidth="21pt" align="right" /><colspec colname="5" colwidth="21pt" align="left" /><tbody valign="top"><row><entry>Data Rate</entry><entry>1.536</entry><entry>Mbps</entry><entry>0.768</entry><entry>Mbps</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="3"><colspec colname="1" colwidth="133pt" align="left" /><colspec colname="2" colwidth="42pt" align="center" /><colspec colname="3" colwidth="42pt" align="center" /><tbody valign="top"><row><entry>Audio Packet Size</entry><entry>1024 </entry><entry>512 </entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="5"><colspec colname="1" colwidth="133pt" align="left" /><colspec colname="2" colwidth="21pt" align="right" /><colspec colname="3" colwidth="21pt" align="left" /><colspec colname="4" colwidth="21pt" align="right" /><colspec colname="5" colwidth="21pt" align="left" /><tbody valign="top"><row><entry>Amount of Audio per channel in a single</entry><entry>5.33</entry><entry>ms</entry><entry>5.33</entry><entry>ms</entry></row><row><entry>packet (APC)</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="3"><colspec colname="1" colwidth="133pt" align="left" /><colspec colname="2" colwidth="42pt" align="center" /><colspec colname="3" colwidth="42pt" align="center" /><tbody valign="top"><row><entry>Number of packets to transfer (NPT)</entry><entry>1</entry><entry>2</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="5"><colspec colname="1" colwidth="133pt" align="left" /><colspec colname="2" colwidth="21pt" align="right" /><colspec colname="3" colwidth="21pt" align="left" /><colspec colname="4" colwidth="21pt" align="right" /><colspec colname="5" colwidth="21pt" align="left" /><tbody valign="top"><row><entry>Time to transfer 1 packet over air (TT)</entry><entry>0.8</entry><entry>ms</entry><entry>0.43</entry><entry>ms</entry></row><row><entry>Amount of time from NACK to re-try (NR)</entry><entry>0.2</entry><entry>ms</entry><entry>0.2</entry><entry>ms</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="3"><colspec colname="1" colwidth="133pt" align="left" /><colspec colname="2" colwidth="42pt" align="center" /><colspec colname="3" colwidth="42pt" align="center" /><tbody valign="top"><row><entry>Retry count threshold (max)</entry><entry>5</entry><entry>4</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="5"><colspec colname="1" colwidth="133pt" align="left" /><colspec colname="2" colwidth="21pt" align="right" /><colspec colname="3" colwidth="21pt" align="left" /><colspec colname="4" colwidth="21pt" align="right" /><colspec colname="5" colwidth="21pt" align="left" /><tbody valign="top"><row><entry>Data transfer rate</entry><entry>11</entry><entry>Mbps</entry><entry>11</entry><entry>Mbps</entry></row><row><entry>Worst case delay</entry><entry>10.33</entry><entry>ms</entry><entry>10.35</entry><entry>ms</entry></row><row><entry namest="1" nameend="5" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
0060As shown in Table 1, a maximum number of 5 retries is possible when transmitting an audio data packet (uncompressed) to a single receiver, and a maximum number of 4 retries is possible when transmitting an audio data packet (uncompressed) to two receivers. In one implementation, the retry count threshold is determined based on the following equation:
0061<maths id="MATH-US-00001" num="00001"><math overflow="scroll"><mtable><mtr><mtd><mfrac><mrow><mi>A</mi><mo></mo><mstyle><mspace width="0.3em" height="0.3ex" /></mstyle><mo></mo><mi>P</mi><mo></mo><mstyle><mspace width="0.3em" height="0.3ex" /></mstyle><mo></mo><mi>C</mi></mrow><mrow><mrow><mo>(</mo><mrow><mrow><mo>(</mo><mrow><mi>T</mi><mo></mo><mstyle><mspace width="0.3em" height="0.3ex" /></mstyle><mo></mo><mi>T</mi></mrow><mo>)</mo></mrow><mo></mo><mrow><mo>(</mo><mrow><mi>N</mi><mo></mo><mstyle><mspace width="0.3em" height="0.3ex" /></mstyle><mo></mo><mi>P</mi><mo></mo><mstyle><mspace width="0.3em" height="0.3ex" /></mstyle><mo></mo><mi>T</mi></mrow><mo>)</mo></mrow></mrow><mo>)</mo></mrow><mo>+</mo><mrow><mo>(</mo><mrow><mi>N</mi><mo></mo><mstyle><mspace width="0.3em" height="0.3ex" /></mstyle><mo></mo><mi>R</mi></mrow><mo>)</mo></mrow></mrow></mfrac></mtd><mtd><mrow><mo>(</mo><mrow><mi>e</mi><mo>.</mo><mi>q</mi><mo>.</mo><mstyle><mspace width="0.8em" height="0.8ex" /></mstyle><mo></mo><mn>1</mn></mrow><mo>)</mo></mrow></mtd></mtr></mtable></math></maths><img file="US8559943B2_D0001.tif" /><br /> where APC represents the amount of audio per channel in a single packet, TT represents the time to transfer a single packet over the air, NPT represents the total number of packets to transfer and NR represents an amount of time from NACK (No ACK) to re-transmission of the audio packet.
0062<figref idref="DRAWINGS">FIG. 7</figref> shows a method <b>700</b> for transmitting uncompressed, real-time data according to a pre-determined level of QoS in a WLAN (e.g., WLAN <b>200</b>). Referring to <figref idref="DRAWINGS">FIGS. 2</figref>, <b>3</b>A, <b>3</b>B, <b>4</b>A, <b>4</b>B, <b>6</b>, and <b>7</b>, a wireless communication system (e.g., wireless communication system <b>202</b>) establishes a WLAN with one or more wireless clients (e.g., wireless client <b>204</b>-<b>208</b>) (step S<b>702</b>). In one implementation, a negotiation engine (e.g., negotiation engine <b>402</b>) broadcasts a conventional beacon packet to the one or more wireless clients. A negotiation engine associated with each of the wireless clients (e.g., negotiation engine <b>416</b>) responds to the beacon packet by broadcasting a second beacon packet to the wireless communication system, thus establishing a WLAN between the wireless communication system and a given wireless client.
0063Transmission parameters of the wireless communication system are configured (step S<b>704</b>). In one implementation, the transmission parameters of the wireless communication system are configured in response to a control engine (e.g., control engine <b>412</b>) switching a mode of operation of a MAC (e.g., MAC <b>308</b>) to a real-time transmission mode.
0064In the real-time transmission mode, one or more of transmission parameters of the wireless communication system are configured as follows. A beacon interval engine (e.g., beacon interval engine <b>404</b>) dynamically changes a beacon interval of the wireless communication system from an initial beacon interval (e.g., 100 ms) to a maximum beacon interval (e.g., 60 sec). A data transfer rate engine (e.g., data transfer rate engine <b>406</b>) sets a data transfer rate parameter of the MAC at a fixed, pre-determined data transmission rate (e.g., 11 Mbps), such that rate adaptation does not occur. In one implementation, the data transfer rate engine permits rate adaptation to occur at data transmission rates above a pre-determined level (e.g., 11 Mbps in an 802.11g WLAN). A contention window engine (e.g., contention window engine <b>408</b>) sets a contention window size parameter to a value CWmin (the minimum contention window). An interframe space engine (e.g., interframe space engine <b>410</b>) sets an interframe spacing window parameter associated with the MAC to a minimum size—e.g., (0). All, or combinations of, the settings above can be used to configure the transmission parameters of wireless communication system during the real-time transmission mode.
0065Thereafter, the transmission parameters of the wireless clients are configured (step CL<b>706</b>). In one implementation, the transmission parameters of the wireless clients are configured in response to a corresponding control engine (e.g., control engine <b>426</b>) switching a mode of operation of a corresponding MAC (e.g., MAC <b>322</b>) to a real-time transmission mode.
0066In the real-time transmission mode, one or more of transmission parameters of the wireless clients are configured similarly as the wireless communication system. That is, in one implementation, a beacon interval engine associated with each wireless client dynamically changes a beacon interval of a corresponding wireless client from an initial beacon interval (e.g., 100 ms) to a maximum beacon interval (e.g., 60 sec). A data transfer rate engine associated with each wireless client sets a data transfer rate parameter of corresponding MACs at a fixed, pre-determined data transmission rate (e.g., 11 Mbps). In one implementation, the data transfer rate engine associated with each wireless client permits rate adaptation to occur at data transmission rates above a pre-determined level (e.g., 11 Mbps in an 802.11g WLAN). A contention window engine associated with each wireless client sets a contention window size parameter to a value CWmin (the minimum contention window). An interframe space engine associated with each wireless client sets an interframe spacing window parameter associated with corresponding MACs to a minimum size—e.g., (0). All, or combinations of, the settings above can be used to configure the transmission parameters of wireless clients during real-time transmission mode.
0067The wireless communication system generates real-time data packets (step S<b>708</b>). In one implementation, real-time data packets include a packet ID field (e.g., packet ID field <b>622</b>), a packet length field (e.g., packet length field <b>624</b>) and a data field (e.g., data field <b>626</b>) (e.g., containing uncompressed real-time audio or video data). The real-time data packets can be generated by buffering digital data into packets of a pre-determined size within a memory buffer (e.g., memory buffer <b>306</b>). In one implementation, the real-time data packets do not include data from higher layers within an IP stack (e.g., TCP/IP headers).
0068The wireless communication system transmits one or more real-time data packets to the wireless clients (step S<b>710</b>). The real-time data packets are transmitted to the wireless clients having (e.g., uncompressed) real-time data. Each of the wireless clients receives one or more real-time data packets from the wireless communication system (step CL<b>712</b>), and sends an ACK packet to the wireless communication system acknowledging receipt of a real-time data packet (step CL<b>714</b>). The wireless communication system determines whether an ACK packet was received in response to sending a corresponding real-time data packet (step S<b>716</b>). If an ACK packet was not received, the wireless communication system re-tries transmission of the data packet, until an ACK is received, or the retry threshold count is exceeded. If an ACK was received by the wireless communication system, then the wireless communication system transmits a next real-time data packet.
0069A number of implementations have been described. Nevertheless, it will be understood that various modifications may be made. Though the various engines and components have been described above as separate, plural components can be combined in singular circuitry, engines, programs or the like. The methods described may be implemented in embedded systems, hardware, firmware, software, or combinations thereof, or in a computer program product tangibly embodied in a computer readable storage device. Storage devices suitable for tangibly embodying the computer program include all forms of non-volatile memory including semiconductor memory devices. Accordingly, other implementations are within the scope of the following claims.
Contents5
9 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US9179365B1 | Cited by | United States of America | Search report |
| US10135562B2 | Cited by | United States of America | Search report |
| US10873413B2 | Cited by | United States of America | Applicant |
| US2002064164A1 | Cites | United States of America | Applicant |
| US2002073234A1 | Cites | United States of America | Applicant |
| US2003061365A1 | Cites | United States of America | Search report |
| US2003067872A1 | Cites | United States of America | Search report |
| US2003128690A1 | Cites | United States of America | Applicant |
| US2003198191A1 | Cites | United States of America | Search report |
| US2003214905A1 | Cites | United States of America | Search report |
| US2003223381A1 | Cites | United States of America | Search report |
| US2004066756A1 | Cites | United States of America | Applicant |
| US2004072573A1 | Cites | United States of America | Applicant |
| US2004100924A1 | Cites | United States of America | Applicant |
| US2004192284A1 | Cites | United States of America | Search report |
| US2004196871A1 | Cites | United States of America | Search report |
| US2004224637A1 | Cites | United States of America | Search report |
| US2004255008A1 | Cites | United States of America | Applicant |
| JP2005012725A | Cites | Japan | Applicant |
| US2005021781A1 | Cites | United States of America | Search report |
| US2005041588A1 | Cites | United States of America | Applicant |
| US2005070279A1 | Cites | United States of America | Applicant |
| US2005100056A1 | Cites | United States of America | Applicant |
| US2005128998A1 | Cites | United States of America | Applicant |
| US2005276247A1 | Cites | United States of America | Applicant |
| US2006009213A1 | Cites | United States of America | Search report |
| US2006116127A1 | Cites | United States of America | Applicant |
| US2006123079A1 | Cites | United States of America | Search report |
| US2006126581A1 | Cites | United States of America | Applicant |
| US2006227801A1 | Cites | United States of America | Applicant |
| US2007091806A1 | Cites | United States of America | Applicant |
| US2007153788A1 | Cites | United States of America | Applicant |
| US2007249386A1 | Cites | United States of America | Search report |
| US2008056201A1 | Cites | United States of America | Search report |
| US2009232082A1 | Cites | United States of America | Search report |
| US2012134291A1 | Cites | United States of America | Search report |
| US6205129B1 | Cites | United States of America | Applicant |
| US6259898B1 | Cites | United States of America | Applicant |
| US6674738B1 | Cites | United States of America | Search report |
| US6882635B2 | Cites | United States of America | Search report |
| US6947431B1 | Cites | United States of America | Applicant |
| US6954450B2 | Cites | United States of America | Applicant |
| US7212511B2 | Cites | United States of America | Applicant |
| US7302634B2 | Cites | United States of America | Search report |
| US7363246B1 | Cites | United States of America | Search report |
| US7376143B2 | Cites | United States of America | Search report |
| US7483984B1 | Cites | United States of America | Search report |
| US7558289B1 | Cites | United States of America | Search report |
| US8054798B2 | Cites | United States of America | Search report |
| US20020064164A1 | Cites | United States of America | Applicant |
| US20020073234A1 | Cites | United States of America | Applicant |
| US20030061365A1 | Cites | United States of America | Search report |
| US20030067872A1 | Cites | United States of America | Search report |
| US20030128690A1 | Cites | United States of America | Applicant |
| US20030198191A1 | Cites | United States of America | Search report |
| US20030214905A1 | Cites | United States of America | Search report |
| US20030223381A1 | Cites | United States of America | Search report |
| US20040066756A1 | Cites | United States of America | Applicant |
| US20040072573A1 | Cites | United States of America | Applicant |
| US20040100924A1 | Cites | United States of America | Applicant |
| US20040192284A1 | Cites | United States of America | Search report |
| US20040196871A1 | Cites | United States of America | Search report |
| US20040224637A1 | Cites | United States of America | Search report |
| US20040255008A1 | Cites | United States of America | Applicant |
| US20050021781A1 | Cites | United States of America | Search report |
| US20050041588A1 | Cites | United States of America | Applicant |
| US20050070279A1 | Cites | United States of America | Applicant |
| US20050100056A1 | Cites | United States of America | Applicant |
| US20050128998A1 | Cites | United States of America | Applicant |
| US20050276247A1 | Cites | United States of America | Applicant |
| US20060009213A1 | Cites | United States of America | Search report |
| US20060116127A1 | Cites | United States of America | Applicant |
| US20060123079A1 | Cites | United States of America | Search report |
| US20060126581A1 | Cites | United States of America | Applicant |
| US20060227801A1 | Cites | United States of America | Applicant |
| US20070091806A1 | Cites | United States of America | Applicant |
| US20070153788A1 | Cites | United States of America | Applicant |
| US20070249386A1 | Cites | United States of America | Search report |
| US20080056201A1 | Cites | United States of America | Search report |
| US20090232082A1 | Cites | United States of America | Search report |
| US20120134291A1 | Cites | United States of America | Search report |
| JP2005012725 | Cites | Japan | Applicant |
| "Information technology-Telecommunications and information exchange between systems-Local and metropolitan area networks-Specific requirements- Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications", IEEE Std 802.11, 1999. | Non-patent | – | Applicant |
| "Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications: Higher-Speed Physical Layer Extension in the 2.4 GHz Band", IEEE Std 802.11a, 1999. | Non-patent | – | Applicant |
| "Part II: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications: Higher-Speed Physical Layer Extension in the 2.4 GHz Band", IEEE Std. 802.11b, 1999. | Non-patent | – | Applicant |
| "Draft Supplement to Standard [for] Information Technology-Telecommunications and information exchange between systems-Local and metropolitan area networks-Specific requirements-Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications: Further Higher Data Rate Extension in the 2.4 GHz Band", IEEE 802.11g, 2003. | Non-patent | – | Applicant |
| "TGn Sync Proposal Technical Specification", IEEE Std. 802.11n, 2005. | Non-patent | – | Applicant |
| "System Requirements for IEEE 802.20 Mobile Broadband Wireless Access Systems-Version 14", IEEE Standards Working Group 802.20, Jul. 16, 2004, vol. 16, 23 pages. | Non-patent | – | Applicant |
| "Part 16: Air Interface for Fixed Broadband Wireless Access Systems", IEEE 802.16, IEEE Standard for Local and Metropolitan Area Networks, Oct. 1, 2004, 896 pages. | Non-patent | – | Applicant |
| “Information technology—Telecommunications and information exchange between systems—Local and metropolitan area networks—Specific requirements- Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications”, IEEE Std 802.11, 1999. | Non-patent | – | Applicant |
| “Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications: Higher-Speed Physical Layer Extension in the 2.4 GHz Band”, IEEE Std 802.11a, 1999. | Non-patent | – | Applicant |
| “Part II: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications: Higher-Speed Physical Layer Extension in the 2.4 GHz Band”, IEEE Std. 802.11b, 1999. | Non-patent | – | Applicant |
| “Draft Supplement to Standard [for] Information Technology—Telecommunications and information exchange between systems—Local and metropolitan area networks-Specific requirements—Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications: Further Higher Data Rate Extension in the 2.4 GHz Band”, IEEE 802.11g, 2003. | Non-patent | – | Applicant |
| “TGn Sync Proposal Technical Specification”, IEEE Std. 802.11n, 2005. | Non-patent | – | Applicant |
| “<i>System Requirements for IEEE 802.20 Mobile Broadband Wireless Access Systems—Version 14</i>”, IEEE Standards Working Group 802.20, Jul. 16, 2004, vol. 16, 23 pages. | Non-patent | – | Applicant |
| “<i>Part 16: Air Interface for Fixed Broadband Wireless Access Systems</i>”, IEEE 802.16, IEEE Standard for Local and Metropolitan Area Networks, Oct. 1, 2004, 896 pages. | Non-patent | – | Applicant |
4 members in 1 office
Priority claims2
| Document | Office | Kind | Date |
|---|---|---|---|
| 58104004 | United States of America | P | |
| 96037804 | United States of America | A |
Members4
| Document | Office | Kind | |
|---|---|---|---|
| US7558289B1 | United States of America | B1 | |
| US2009232082A1 | United States of America | A1 | |
| US8559943B2This record | United States of America | B2 | |
| US9179365B1 | United States of America | B1 |
57 transactions on the USPTO file
Allowed after 2 non-final rejections.
- Non-final rejections
- 2
- Final rejections
- 0
- RCEs
- 0
- Appeals
- 0
Over time
Point at a mark for the transactionTransactions
| Event | Code | |
|---|---|---|
| Payment of Maintenance Fee, 12th Year, Large EntityM1553 | M1553 | |
| Payment of Maintenance Fee, 8th Year, Large EntityM1552 | M1552 | |
| Correspondence Address ChangeC.ADB | C.ADB | |
| Recordation of Patent Grant MailedPGM/ | PGM/ | |
| Patent Issue Date Used in PTA CalculationAllowedPTAC | PTAC | |
| Email NotificationEML_NTR | EML_NTR | |
| Issue Notification MailedAllowedWPIR | WPIR | |
| Dispatch to FDCD1935 | D1935 | |
| Application Is Considered Ready for IssuePILS | PILS | |
| Response to Reasons for AllowanceREAS | REAS | |
| Issue Fee Payment VerifiedN084 | N084 | |
| Issue Fee Payment ReceivedIFEE | IFEE | |
| Email NotificationEML_NTR | EML_NTR | |
| Filing Receipt - CorrectedFLRCPT.C | FLRCPT.C | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Notice of AllowanceAllowedMN/=. | MN/=. | |
| Notice of Allowance Data Verification CompletedAllowedN/=. | N/=. | |
| Reasons for AllowanceEX.R | EX.R | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Mail Interview Summary - Applicant Initiated - ConferenceMEXAC | MEXAC | |
| Response after Non-Final ActionA... | A... | |
| Interview Summary- Applicant InitiatedEXIA | EXIA | |
| Interview Summary - Applicant Initiated - ConferenceEXAC | EXAC | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Email NotificationEML_NTR | EML_NTR | |
| PG-Pub Issue NotificationPG-ISSUE | PG-ISSUE | |
| IFW TSS Processing by Tech Center CompleteTSSCOMP | TSSCOMP | |
| Electronic ReviewELC_RVW | ELC_RVW | |
| Email NotificationEML_NTF | EML_NTF | |
| Email NotificationEML_NTR | EML_NTR | |
| PG-Pub RequestPG-RQST | PG-RQST | |
| Filing ReceiptFLRCPT.O | FLRCPT.O | |
| Application Dispatched from OIPEOIPE | OIPE | |
| Cleared by OIPE CSRL194 | L194 | |
| IFW Scan & PACR Auto Security ReviewSCAN | SCAN | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Reference capture on IDSRCAP | RCAP | |
| Information Disclosure Statement (IDS) FiledM844 | M844 | |
| Preliminary AmendmentA.PE | A.PE | |
| Information Disclosure Statement (IDS) FiledWIDS | WIDS | |
| Initial Exam Team nnIEXX | IEXX |
6 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Maintenance fee paymentMAFP | MAFP | |
| Maintenance fee paymentMAFP | MAFP | |
| AssignmentAS | AS | |
| AssignmentAS | AS | |
| Fee paymentFPAY | FPAY | |
| Information on status: patent grantGrantedPATENTED CASESTCF | STCF |
Numbers
- Publication
- 8559943
- Application
- 12474153
Titles
- English
- Acknowledging receipt of real-time data
Patent term adjustment
- A delay
- +713 daysthe office missed an examination deadline
- B delay
- +505 dayspendency past three years
- Overlap
- −43 daysdelays counted once
- Net adjustment
- 1,175 days
Classification
- CPC, 8
- H04W28/06
- H04W28/10
- H04W28/18
- H04W74/08
- H04W80/06
- H04W84/12
- H04L69/16
- H04L69/165
- IPC, 1
- H04W4 00