The invention discloses a method for detecting priority of data frames comprising the steps of extracting (S1) a bit pattern from a predetermined position in a frame, comparing (S2, S3) said extracted bit pattern with a search pattern, and identifying (S4) said received frame as a priority frame in case said extracted bit pattern (BP) matches with said first search pattern (SP). By this method, the priority of a data frame can easily be detected. The invention also proposes a corresponding device for detecting priority of data frames.

Patent
   RE44904
Priority
Dec 17 1999
Filed
Jun 29 2011
Issued
May 20 2014
Expiry
Dec 17 2019
Assg.orig
Entity
Large
0
23
EXPIRED
0. 10. A method comprising:
detecting a received frame is a priority frame based, at least in part, on information in the received frame;
transmitting the received frame in a transmit period reserved for priority frames in response to the detecting;
adjusting a duration of the transmit period reserved for priority frames based on statistic information regarding sent priority frames; and
forwarding the received frame to a normal queue for transmission outside of the transmit period reserved for priority frames when the transmit period reserved for priority frames is unavailable.
1. A method comprising
extracting a bit pattern from a predetermined position in a frame,;
comparing said extracted bit pattern with a search pattern,;
identifying a received frame as a priority frame in case said extracted bit pattern matches with said search pattern,;
forwarding said received frame to a high priority queue in case said frame is detected to be a high priority frame during a special period for sending priority traffic,; and
adjusting the duration of the special period for sending priority traffic according statistic information regarding sent priority frames.
0. 12. A method comprising:
detecting a received frame is a priority frame based, at least in part, on information in the received frame;
transmitting the received frame in a transmit period reserved for priority frames in response to the detecting;
adjusting a duration of the transmit period reserved for priority frames based on statistic information regarding sent priority frames,
wherein the statistic information regarding sent priority frames is based on a percentage of priority frames transmitted outside of the transmit period reserved for priority frames to a total number of priority frames transmitted.
0. 7. A method comprising:
detecting a received frame is a priority frame based, at least in part, on information in the received frame, including extracting a bit pattern from a predetermined position in the received frame and comparing the extracted bit pattern with a search pattern, and wherein the detecting is based on a match between the extracted bit pattern and the search pattern;
transmitting the received frame in a transmit period reserved for priority frames in response to the detecting; and
adjusting a duration of the transmit period reserved for priority frames based on statistic information regarding sent priority frames.
5. A device comprising
means for extracting a bit pattern from a predetermined position in a frame,;
means for comparing said extracted bit pattern with a search pattern,;
means for identifying a received frame as a priority frame in case said extracted bit pattern matches with said search pattern, and;
means for forwarding said received frame to a high priority queue in case said frame is detected to be a high priority frame during a special period for sending priority traffic,; and
means for adjusting the duration of the special period for sending priority traffic according statistic information regarding sent priority frames.
0. 18. A device comprising:
a controller to detect a received frame is a priority frame based, at least in part, on information in the received frame; and
a priority queue configured to transmit the received frame in a transmit period reserved for priority frames, wherein the controller is configured to adjust a duration of the transmit period reserved for priority frames based on statistic information regarding sent priority frames,
wherein the statistic information regarding sent priority frames is based on a percentage of priority frames transmitted outside of the transmit period reserved for priority frames to a total number of priority frames transmitted.
0. 13. A device comprising:
a controller to detect a received frame is a priority frame based, at least in part, on information in the received frame; and
a priority queue configured to transmit the received frame in a transmit period reserved for priority frames, wherein the controller is configured to adjust a duration of the transmit period reserved for priority frames based on statistic information regarding sent priority frames,
wherein the controller is configured to extract a bit pattern from a predetermined position in the received frame, to compare the extracted bit pattern with a search pattern, and to detect a received frame is a priority frame based, at least in part, on a match between the extracted bit pattern and the search pattern.
0. 11. A method comprising:
detecting a received frame is a priority frame based, at least in part, on information in the received frame;
transmitting the received frame in a transmit period reserved for priority frames in response to the detecting;
adjusting a duration of the transmit period reserved for priority frames based on statistic information regarding sent priority frames; and
counting a total number of priority frames; and
counting a number of the priority frames transmitted outside of the transmit period reserved for priority frames, wherein the adjusting of the transmit period is based on a ratio of number of the priority frames transmitted outside of the transmit period reserved for priority frames and the total number of priority frames.
3. A device comprising
a receiver configured to receive data frames;
an exracter extracter configured to extract a bit pattern from a predetermined position of a data frame;
a comparator configured to compare said extracted bit pattern with a predetermined search pattern; and
an identifier configured to identify said received frame as a priority frame in case said extracted bit pattern matches with said first search pattern,
wherein a controller is configured to forward said received frame to a high priority queue in case said frame is detected to be a high priority frame during a special period for sending priority traffic, and
said controller is configured to adjust the duration of the special period for sending priority traffic according to statistical information regarding sent priority frames.
0. 17. A device comprising:
a controller to detect a received frame is a priority frame based, at least in part, on information in the received frame; and
a priority queue configured to transmit the received frame in a transmit period reserved for priority frames, wherein the controller is configured to adjust a duration of the transmit period reserved for priority frames based on statistic information regarding sent priority frames,
wherein the controller is configured to count a total number of priority frames, to count a number of the priority frames transmitted outside of the transmit period reserved for priority frames, and to adjust the transmit period reserved for priority frames based on a ratio of number of the priority frames transmitted outside of the transmit period reserved for priority frames and the total number of priority frames.
2. The method according to claim 1, further comprising
counting the total number of priority frames;
counting the number of priority frames outside said special period; and
deciding whether said special period has to be increased or decreased on the basis of the count values obtained in said counting steps.
4. The device according to claim 3, wherein said controller, in order to obtain said statistic information, is configured to access a priority frames counter for counting the total number of priority frames and a counter for counting priority frames outside said special period, said controller configured to decide whether said special period has to be increased or decreased on the basis of the count values obtained in said counting.
6. A memory having a program stored thereon for execution in a device by carrying out the method of claim 1.
0. 8. The method of claim 7, further comprising forwarding the received frame to a priority queue for transmission in the transmit period reserved for priority frames.
0. 9. The method of claim 8, further comprising forwarding the received frame from the priority queue to a normal queue for transmission outside of the transmit period reserved for priority frames in response to an expiration of the transmit period reserved for priority frames.
0. 14. The device of claim 13, wherein the controller is configured to forward the received frame to the priority queue for transmission in the transmit period reserved for priority frames.
0. 15. The device of claim 13, further comprising a normal queue configured to transmit the received frame outside of the transmit period reserved for priority frames.
0. 16. The device of claim 15, wherein the controller is configured to transfer the received frame from the priority queue to the normal queue in response to an expiration of the transmit period reserved for priority frames.

This application

If this percentage is higher than the alarm level, the PC 21 will double the duration of the CFP (if not already maximum possible) in step S1010. The alarm level used in the different steps may be the same or different according to the wanted system behavior.

If it is decided in step S102 that the percentage of high priority traffic sent outside the CFP drops below a low alarm level LAL, the PC 21 will start decreasing the CFP in order to give the normal traffic also a reasonable chance to be delivered in time. The low alarm level LAL is the percentage of the high priority traffic that can be send outside the CFP if needed. In order that the system can work smoothly, the low alarm level should be less than 100%—high alarm level HAL.

When the alarm level LAL is reached, the PC 21 will next check what is the percentage of high priority traffic sent during the DTIM intervals not containing the CFP in step S103 which corresponds to step S107 described above. If it is less than alarm level, the PC will make the CFP interval to be double of the original in step S104. Next, the PC 21 will check if the percentage of high priority traffic sent outside of the CFP during the DTIM containing CFP is also lower than the alarm level LAL. This is effected in step S105 which corresponds to step S109 described above. If this percentage is lower as the alarm level LAL, the PC 21 decreases the duration of the CFP with the amount of the previous addition in step S106. The alarm level LAL used in the different steps may be the same or different according to the wanted system behavior.

If it is decided in step S102 that the percentage of priority frames outside the Content Free Period (i.e., the count value of the PFOCFP counter 213 with respect to the count value of the priority frame counter 212) is between the low alarm level LAL and the high alarm level HAL, the flow advances directly to step S1011 in which all counters 212, 213 and 214 are reset. Then, the procedure is ended.

Next, a fourth embodiment is described. The structure and procedures according to this embodiment is similar to the embodiments described above. However, in this embodiment the nature of the high priority traffic is checked. In particular, it is considered whether the high priority traffic is symmetrical, i.e., whether the high priority traffic from a wireless station to the Access Point (AP) 2 is the same or almost the same as the high priority traffic from the AP 2 to the wireless station.

During the Content Free Period (CFP) the wireless stations (terminals) are not allowed to transmit unless the PC 21 polls them. Therefore, they will register themselves to PC to be placed in a polling list. In order to get the best benefit from this traffic control, wireless stations in the WLAN must be able to identify the high priority traffic and send that traffic during the CFP.

In case of the symmetrical high priority traffic between the AP 2 and the wireless stations, the configuration information (from the external configuration program) contains a field telling that this is symmetrical high priority traffic. When the Point Coordinator (PC) 21 in the AP 2 detects that the high priority traffic is symmetrical and the receiving station is pollable during the Content Free Period (i.e., is CF-pollable), it will send it to the terminal inside a so-called data+CF-poll frame instead of normal data frame during the CFP. The data+CF-poll frame is a special data frame, defined in the IEEE 802.11 standard, that allows the receiving station send one data frame during the CFP after receiving the data +CF-poll frame. During the contention period, the symmetrical traffic does not cause any special processes. The use of data+CF-poll frame enables equal high priority data delivering performance to both directions.

The PC 21 must ensure that other wireless stations in the polling list gets polled according to the standard even when delivering symmetrical high priority traffic.

In the following, the configuration program used for generating priority detection information used in the above embodiments is described in more detail.

The method adopted in the configuration program is described by referring to the flowchart shown in FIG. 11.

In step S111, a bit pattern (consisting, for example, of one or two bytes) which indicates the priority information is identified in the data frame. The identified bit pattern is defined as the search pattern (SP) in step S112. In step S113, the location, that is, the offset of the identified bit pattern (i.e., the search pattern) inside the data frame is determined. Thereafter, an information element containing the determined offset and the identified search pattern is produced in step S114. Finally, in step S115 the information element is sent to the Access Point and the routine ends.

In a similar way, also the optional mask (as used in the second embodiment) can be obtained. Therefore, an additional step is required which is performed after the bit pattern identifying step S112 such that the mask is defined. It is also possible to produce a plurality of information elements, as used in the second and third embodiment, also by taking into account a plurality of different priority levels.

Next, an example is described in which frames (containing IP packets) to be sent to a particular IP-adress should have high priority. In this case, the identification of the search patterns and the location of the search patterns can be performed as follows: The configuration program knows that the offset to the destination IP-address from the beginning of the IP packet (as an example for a data frame) is 32 bytes and the offset from the beginning of the ethernet (version 2) frame to beginning of the IP packet is 14 bytes. Thus, the actual offset of the IP-address is 46 bytes. The search pattern is the IP-address in question. Thus, the necessary information for an information element can easily be extracted.

In other cases, it might be necessary that the configuration program analyzes frames in order to obtain the relevant information.

The location for performing the above method within the network can be arbitrarily chosen. It may be located in some station in the wireless network, it may be centralized in a place in the wired network, or it may be connected to the AP with a separate cable. In some cases, the configuration program may also be run in the AP, but in this way the benefit of the configuration program being external will be lost.

Preferably, the location where the above method, i.e., the external configuration program can be performed is in one of the wireless stations 2 to 5. In this way, the program can also “snoop” the traffic and check whether the traffic is correctly recognized by the AP, that is, whether the high priority traffic is correctly treated. This is because in the wireless stations, the data sent with the frames are processed and, thus, it is clear whether a received frame is a priority frame or not.

When placed in the WLAN, the configuration program can also make corrections to the AP configurations (i.e., the information elements sent to the AP) based on a traffic monitoring in the WLAN. The configuration program can be run in some notebook PC in WLAN, for example.

In rather large networks, however, the best place for the configuration program is in the wired network, where all the access points of the network can be controlled with a single configuration program.

The above description and accompanying drawings only illustrate the present invention by way of example. Thus, the embodiments of the invention may vary within the scope of the attached claims. For example, the embodiments can be arbitrarily combined.

In particular it has to be noted that the above description of the embodiment has been made basically with respect to the IEEE 802.11 WLAN standard. However, it has to be noted that this is only an example and that it is to be understood that the invention can also be applied to other suitable network situations.

Furthermore, in the above embodiments it was basically distinguished between priority frames and normal frames, i.e., between frames with priority and frames without priority. However, it is also possible to distinguish between a plurality of different priority levels. For example, the second embodiment can be modified such that the two bit patterns are used to distinguish between three different priority levels (no priority—medium priority—high priority). Also, different masks for one bit pattern can be used to distinguish between different priority levels.

Karhula, Petri

Patent Priority Assignee Title
Patent Priority Assignee Title
4627051, Dec 03 1982 NEC Loop network system controlled by a simple clock station
4716407, Oct 07 1985 Motorola, Inc.; Motorola, Inc Trunked communication system true priority channel scan
4930124, Nov 21 1985 Thomson-CSF Decentralized and synchronous data transmission process and network
5541919, Dec 19 1994 Google Technology Holdings LLC Multimedia multiplexing device and method using dynamic packet segmentation
5594738, Oct 18 1993 Motorola Mobility LLC Time slot allocation method
5675617, Oct 05 1994 Motorola, Inc. Synchronous protocol encoding and decoding method
5678188, Sep 14 1993 Sony Corporation Emergency message communication method
5682386, Apr 19 1994 MULTI-TECH SYSTEMS, INC Data/voice/fax compression multiplexer
5822361, Nov 11 1994 Hitachi, Ltd. and Hitachi Microcomputer System Ltd. Wireless LAN system and base station apparatus
5857092, Sep 26 1995 Fujitsu Limited Interface apparatus for SDH/SONET interconnection
5881242, Jan 09 1997 CISCO TECHNOLOGY, INC , A CORPORATION OF CALIFORNIA Method and system of parsing frame headers for routing data frames within a computer network
6347087, Oct 05 1998 Alcatel-Lucent USA Inc Content-based forwarding/filtering in a network switching device
6633564, Sep 22 1999 Apple Inc Method and apparatus for inserting packets into a data stream
6658363, Jan 18 2001 HEWLETT-PACKARD DEVELOPMENT COMPANY, L P Digital data pattern detection methods and arrangements
7027465, Dec 17 1999 UNWIRED BROADBAND, INC Method for contention free traffic detection
EP491494,
EP584667,
EP749254,
EP782297,
EP804006,
EP917317,
EP959398,
WO1045328,
///////////
Executed onAssignorAssigneeConveyanceFrameReelDoc
Aug 15 2002HAUTALA, PETRINokia CorporationASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0267940902 pdf
Jan 13 2011Nokia CorporationCALTON RESEARCH L L C ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0267940956 pdf
Jun 29 2011Calton Research L.L.C.(assignment on the face of the patent)
Aug 22 2011KARHULA, PETRINokia CorporationCORRECTIVE ASSIGNMENT TO CORRECT THE INVENTOR LEGAL NAME CHANGE PREVIOUSLY RECORDED ON REEL 026794 FRAME 0902 ASSIGNOR S HEREBY CONFIRMS THE ASSIGNMENT 0270350115 pdf
Aug 26 2015CALTON RESEARCH L L C OL SECURITY LIMITED LIABILITY COMPANYMERGER SEE DOCUMENT FOR DETAILS 0375600320 pdf
Oct 30 2019OL SECURITY LIMITED LIABILITY COMPANYINTELLECTUAL VENTURES ASSETS 130 LLCASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0508860662 pdf
Nov 15 2019INTELLECTUAL VENTURES ASSETS 130 LLCCOMMWORKS SOLUTIONS, LLCASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0514630026 pdf
Sep 18 2020COMMWORKS SOLUTIONS, LLCUNWIRED BROADBAND, INC CORRECTIVE ASSIGNMENT TO CORRECT THE THE NATURE OF CONVEYANCE PREVIOUSLY RECORDED AT REEL: 056981 FRAME: 0631 ASSIGNOR S HEREBY CONFIRMS THE ASSIGNMENT 0599070563 pdf
Sep 18 2020COMMWORKS SOLUTIONS, LLCUNWIRED BROADBAND, INC CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE NAME PREVIOUSLY RECORDED AT REEL: 054443 FRAME: 0958 ASSIGNOR S HEREBY CONFIRMS THE ASSIGNMENT 0569810631 pdf
Sep 18 2020COMMWORKS SOLUTIONS, LLCUNWIRED BROADBAND, INC CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE NAME PREVIOUSLY RECORDED AT REEL: 054443 FRAME: 0958 ASSIGNOR S HEREBY CONFIRMS THE LICENSE 0569810631 pdf
Sep 18 2020COMMWORKS SOLUTIONS, LLCUNWIRED SOLUTIONS, INC LICENSE SEE DOCUMENT FOR DETAILS 0544430958 pdf
Date Maintenance Fee Events
Nov 28 2016M1552: Payment of Maintenance Fee, 8th Year, Large Entity.
Feb 15 2021REM: Maintenance Fee Reminder Mailed.
Aug 02 2021EXP: Patent Expired for Failure to Pay Maintenance Fees.


Date Maintenance Schedule
May 20 20174 years fee payment window open
Nov 20 20176 months grace period start (w surcharge)
May 20 2018patent expiry (for year 4)
May 20 20202 years to revive unintentionally abandoned end. (for year 4)
May 20 20218 years fee payment window open
Nov 20 20216 months grace period start (w surcharge)
May 20 2022patent expiry (for year 8)
May 20 20242 years to revive unintentionally abandoned end. (for year 8)
May 20 202512 years fee payment window open
Nov 20 20256 months grace period start (w surcharge)
May 20 2026patent expiry (for year 12)
May 20 20282 years to revive unintentionally abandoned end. (for year 12)