Conventionally, networked communication systems have required a degree of checking and control of a user before permitting the user to access services and resources on the network. This prevents the network from becoming overloaded, requiring excessive use of resources at the access point, or within the network, or consuming bandwidth. However, more recently, some networks have been set up to operate in a state whereby a user device can start transmitting to the network without undergoing any checks, such as an authentication or association process first. Examples of such systems are IEEE 802.11 generic advertisement service (GAS) protocol, or in 2G or 3G cellular communications, for example, universal mobile telecommunications system (UMTS) home base stations, or home node Bs. However, these systems do not address the problem of a terminal sending too many requests to the access point (AP), which in turn would generate a large number of responses that could overload and eventually congest the system. This access point has to process a huge number of requests and in the core network, the server also has to process these requests by looking up in a database and formulating a reply.
The IEEE 802.11u GAS protocol allows an IEEE 802.11u capable terminal in an unauthenticated and un-associated state (state 1) to send requests to an AP and receive responses from it containing information about the network, for example network discovery information, availability of services, or roaming agreements. Generic Advertisement Protocol and GAS Traffic Indication Map (GASTIM) are both current definitions within the IEEE 802.11u draft standard. In UMTS and LTE, a so called home NodeB (HNB) may power on and start communicating with a macro base station in order to determine, for example, the maximum transmission power to use or the frequency bandwidth used by the macro layer. Such communication may occur in an un-authenticated, or un-associated mode. As the number of HNBs within a Public Land Mobile Network is forecast to be in the order of millions, such a process of request/response between the HNBs and the network nodes with which the HNB interacts needs to be controlled.
The above behavior may result from one of several causes, such as a badly behaved user application, on the terminal, or home base station, which is set to generate a large number of requests, or transmissions; or a malicious terminal, or home base station, generating high numbers of requests, which is trying to use all the radio and network resources available, i.e. a denial of service attack.
The inventors propose a method of controlling information requests in a system operating in an unauthorized, un-associated mode, the system comprising at least one user device and an access point; comprises receiving at the access point a first information request from a user device and a user device identifier; setting a utilization indicator; receiving at the access point a second information request from a user device; checking to determine whether the timer has expired; and if so, processing the second information request for response.
In order to prevent the number of information requests becoming unmanageable, a utilization indicator is set according to the degree of congestion within the system, so that a user only gets a response to one request made within the set time frame. The utilization indicator may be a base time, a timer, a sequence number, or other indicator allowing the access point to estimate the intensity with which the terminal is accessing resources.
The check of expiry of the utilization indicator may be tied to the identity of the user making the request, but in periods of very high loading, preferably, the check of expiry of the utilization indicator is independent of the identity of the user device making the information request, as indicated by the user device identifier.
In this way, the utilization indicator can set the total number of responses provided within a certain timeframe.
Alternatively, the check of expiry of the utilization indicator is only made if the identity, as indicated by the user device identifier, of the user device making the second information request is the same as that of the user device which made the first information request.
This allows different users to make requests, but restricts the number that are successful for any one user device.
Generally, the need to vary the utilization indicator is greatest when the system becomes overloaded, so preferably, the access point varies the length for which the utilization indicator is set to reduce the number of requests to which responses are provided.
However, this can be reversed when the system is only lightly loaded.
Preferably, the utilization indicator is set according to the number of information requests which can be processed by the access point and a core server.
Preferably, the utilization indicator is sent to the user device making the first information request.
This allows the user device to monitor the utilization indicator and send a second information request after expiry of the utilization indicator.
Preferably, the system is a wireless access network.
The method is particularly important for wireless access networks, as there are greater constraints on resources using the air interface.
Any wireless communication system that operates in a state which does not control the request for resources can benefit from the method, but preferably, the system is one of a wireless local area network and a home base station, such as a UMTS home node B.
The method is particularly applicable when the system is a wireless local area network operating in accordance with the IEEE 802.11 standard.
Preferably, the utilization indicator comprises a timer comprising one of a generic advertisement server traffic indication map period and a generic advertisement server comeback delay.
These timers are already defined within the IEEE 802.11 standard, but as fixed times. The method allows them to vary to take account of current system requirements.
The inventors also propose a second method of controlling information requests in a communication system operating in an unauthenticated, un-associated state, the system comprising at least one user device and an access point comprises sending a first information request from the user device to the access point; at the access point, determining data including at least one of a user device identifier and a utilization indicator; encrypting the data and returning the encrypted data to the user device; receiving a second information request from the user device, including the encrypted data and a current user device identifier; decrypting the data; comparing the decrypted user device identifier with the current user device; and comparing the decrypted utilization indicator with a current utilization indicator; wherein if the or each comparison satisfies certain requirements, responding to the information request from the user device.
This second method addresses the problems caused by rogue terminals making excessive numbers of requests by changing their identity. Instead of dealing with requests as they are received, the access point will only allocate resources for processing the request if the identity is shown to be the same as that of an earlier request. The utilization indicator allows the system to vary the interval between requests and so optimize operation.
If one comparison is positive, a response may be sent, but preferably, only if both comparisons satisfy the requirements, is a response to the information request sent.
Preferably, if both comparisons fail, the access point drops the information request.
The information request may be dropped without any further notification to the user device, but preferably, a notification is sent to the user device if the request has been dropped.
Preferably, the encrypted data is packaged for sending to the user device, for example, the package is a cookie.
Preferably, the utilization indicator comprises a base time, or a base sequence number.
Preferably, the comparison of the utilization indicators comprises determining an elapsed time since the decrypted base time and comparing the elapsed time with a timer
Alternatively, the amount by which the sequence number has changed is used.
If a base time is determined, an unencrypted timer is also sent to the user device with the returned encrypted data.
This allows the user device to determine how long it must wait before making a further information request.
Preferably, the requirements are that the elapsed time is greater than a time set in the timer; and the decrypted user device identifier is the same as the current user device identifier.
Alternatively, the requirements are that the current sequence number is greater than the base sequence number by at least a predetermined amount
Preferably, a notification is sent to a core network if the decrypted identifier is not the same as the current user device identifier.
This allows the core network to warn other access points of the existence of the rogue terminal and take appropriate action.
Preferably, the base time is the time of receipt of the original message at the access point.
Alternatively, it can be a starting point for an elapsed time to be calculated from.
Preferably, the access point is a wireless access point.
A wireless access point has particular problems with overuse of resources over the air interface, which the method addresses.
Preferably, the wireless access point is one of a wireless local area network and a home base station, such as for use with a UMTS based network.
The method is particularly applicable to a wireless local area network operating in accordance with IEEE 802.11 standard.
Preferably, the information request is a generic advertisement protocol request.
Preferably, the user device identifier is a media access control address.
Preferably, the utilization indicator is varied in accordance with the level of congestion in the system.
The inventors further propose, a communication system operating in an unauthenticated, un-associated state comprises at least one user device and an access point, wherein the access point comprises an encryption device to encrypt data received from the user device in a first information request; and a processor to compare data received from the user device in a second information request with the encrypted data; and wherein the user device comprises a store to store the encrypted data received from the access point, for resending with the second information request.
As before, the access point may use a utilization indicator to enable the rate at which further information requests are received and acted upon to be controlled, for example using a timer, a sequence number, or other indicator of rate of accessing of resources.
Preferably, the data comprises a base time for the first information request and the system further comprises a timer in the access point; and a processor to determine whether an elapsed time from the base time is greater than the length of time set by the timer.
Preferably, the user device is one of a wireless local area network terminal and a home base station.
These and other objects and advantages of the present invention will become more apparent and more readily appreciated from the following description of the preferred embodiments, taken in conjunction with the accompanying drawings of which:
Reference will now be made in detail to the preferred embodiments of the present invention, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to like elements throughout.
To stop misuse, the inventors propose a method and system that provide thresholds which are set up at the access point for the overall number of requests which can be generated, either or both, irrespective of the sender; or per terminal requesting within a certain time interval, i.e. if the number of requests is within a limit for the terminal, but the terminal is asking too frequently, then both limits may be applied.
The method provides flow control of responses depending on the rate of requests received and the timer given back. If conditions for flow control are in place, any request received causes a timer to be sent back. If the next request is within the expiry period, then either the second request is dropped without notification; the second request is queued for response after expiry of the timer; or the second request is dropped and a status code sent back indicating this.
The access point can modify the length of the timer, so that in congested periods, a time window during which a terminal, or home base station, is not able to make a second information request is increased, i.e. the time which the terminal must wait to make a second request, or the time between any two requests. This means that the access point and any server within the network entity can work flat out and generate responses in the minimum time without failing. The result is an optimum service with correct functionality, instead of a system which operates more quickly, but in which one, or both of the servers may fail as a result.
The advantage of the method is that no additional storage is required to optimize the result, just a different way of using an existing mechanism. In 802.11, the two timers or delays have conventionally had a fixed time period, whereas by making these variable according to the conditions, a more efficient service is provided, without system overload and failure.
Specific examples of the method will now be described with reference to UMTS and IEEE 802.11. In the example of a UMTS system, the terminal 4 sends a message 14 via the home base station 1 and the message is forwarded 15 to the network access point (NAP) 3. The NAP returns a timer 16 indicating that it will not accept any further transmissions from the HBS until the timer has expired, so additional calls 17, 18 from terminals to the HBS 1 are either not forwarded to the NAP, or are dropped on receipt at the NAP 3. After expiry of the timer 16, a response 19 is sent from the NAP 3. The delay before the NAP accepts another transmission from the HBS 1 is dependent upon the degree of congestion in the network and is varied accordingly.
For the IEEE 802.11 based system, the main concern is not the number of GAS requests generated by the terminal, but the processing involved, at the AP, for the formulation of the GAS responses. Another issue is the amount of network and radio resources used in state 1 for delivery of a large number of responses back to the terminal. Due to the lack of authentication and association, it is typically very hard for the network and AP to impose any level of control over the terminal, which in many wireless systems means that this sort of behavior has not been allowed. However, due to the nature of the IEEE 802.11 system, this feature must be allowed, so the problems associated with it have to be addressed.
Typically, a GAS request is small in size, usually in the order of a few bytes, whereas a GAS response (commencing at the AP) contains the information provided by a higher layer application (e.g. a network advertisement protocol) as a reply to the initial GAS request sent by the terminal, so this GAS response can be large, up to the order of a few kilobytes. As the terminal may act in any way it wishes, in this state 1, it is not possible to guarantee that the terminal will limit the number of GAS requests sent, so the system relies on the terminal behaving according to recommended guidelines. However, this is not guaranteed.
Therefore, the method limits the rate at which GAS requests are processed by the AP for response formulation and transmission. This is addressed by having a timer which is started whenever a GAS request is received from a terminal with a unique MAC address. While this timer is running, the AP ignores any GAS request sent by the terminal with the same MAC address that triggered the timer to start. Timer expiry triggers the AP to process the GAS request and to eventually provide the response.
There are various possible ways of implementing this. In the example of
In the message exchange shown in
The method is able to control the rate at which information requests are sent in a system that has no checks or other constraints on the use of the network access point by the terminal or home node B before it transmits. An IEEE 802.11u capable AP using this method is able to control the rate at which GAS requests are processed and GAS response are sent back to the IEEE 802.11u terminal. The method addresses the problem of terminals causing usage of radio and core network resources for sending, or receiving GAS requests, or responses in an unauthorized and un-associated state, so saving power within the AP and radio resources within the IEEE 802.11 network.
However, this first aspect does not deal with terminals which are malicious or operated in an abusive fashion. The method assumes that the terminals are giving a valid identifier, such as a MAC address as their sole identifier, whereas a terminal could in fact keep changing its MAC address to submit additional requests. If this is done, the system is protected only by increasing the timer window, so that it does not have to respond to the requests as quickly.
Thus, another aspect addresses the problem of rogue user devices changing, or forging, their identifier, so that for any identity based control, the access point and the network are overwhelmed by the number of requests, or transmission that they have to deal with. When a user device sends a first information request to an access point, the access point obtains identity data, for example a MAC address of the terminal, along with some information which assists in the control of resource utilization. This could be a time of receipt of the first request, a sequence number of that requires or some other utilization indicator. The user device identifier and the utilization indicator are encrypted and packaged and sent back to the requesting user device.
When a second information request is received from the user device, it includes the encrypted package, so that the access point can decrypt the data and compare the data with current data to determine whether the request should be processed. For example, if the utilization indicator is a timer, the comparison is whether the time period set has been exceeded yet and the user device identifier is checked against a current identifier in the second request. If the terminal is a rogue terminal which has changed its address or identity since the first information request, then the AP can reject the request. This may be done with, or without, notification to the user device that its request has been dropped. This aspect uses more power and has increased costs as compared to the first aspect.
For the example of 802.11 GAS requests, shown in
When the terminal sends back 22 the cookie, it might include other information, such as a request or query identifier. The access point will decrypt the returned cookie and compare the MAC address stored in there with the MAC address which the terminal has at the time of the second request attempt and determine that if they are different, the terminal is a rogue terminal.
The access point can also read the time of receipt of the original request and the timer, then if the second request is made before expiry of the timer, the access point can decide how to treat it. For example, the second request may be dropped without notification, delayed for processing at a later time, or dropped with a notification to the terminal. If the MAC address and the timer conditions are both satisfied, the access point responds accordingly to the terminal's request. The response may be generated in the AP or from a response 24 from the network entity 7, if required.
If the cookie arrives from a different MAC address from that encrypted in the cookie and the request is not considered, the terminal may be blocked from having any further requests processed.
The benefit of this process is that it enforces employment of restricted resources for GAS request/response by virtue of the Td timer. The processing load is passed back to the terminal, which has to store the cookie and status of the request, then send back the cookie as a reminder to the access point at the appropriate time. If a terminal is a rogue, it ends up having to do much more work to prevent being caught. If a rogue terminal is detected, the access point may block the terminal, or notify the core network that the terminal is a rogue, so that it is blocked throughout the network.
This method does not require the AP to keep track of terminal's MAC addresses and timers. Overall, there is a higher implementation effort and increase in system complexity, compared to a conventional system which takes no steps to counter rogue terminals.
The method allows for flow control using a timer and makes it harder for a rogue terminal to use unauthorized, unauthenticated resources. The method requires slightly more complexity in the access point because of the need for cookie generation and encryption and some increase in power use and hence cost at the terminal because it has to store status information.
The example has been described with respect to 802.11, but can be applied to any system where a user device is not constrained in its communication with an access point in a wireless network, so for example, transmissions from a home base station in a mobile communication system, such as the UMTS network of
The invention has been described in detail with particular reference to preferred embodiments thereof and examples, but it will be understood that variations and modifications can be effected within the spirit and scope of the invention covered by the claims which may include the phrase “at least one of A, B and C” as an alternative expression that means one or more of A, B and C may be used, contrary to the holding in Superguide v. DIRECTV, 69 USPQ2d 1865 (Fed. Cir. 2004).
Number | Date | Country | Kind |
---|---|---|---|
0704403.5 | Mar 2007 | GB | national |
0704996.8 | Mar 2007 | GB | national |
0718056.5 | Sep 2007 | GB | national |
This application is based on and hereby claims priority to PCT Application No. PCT/EP2008/052084 filed on Feb. 20, 2008 and GB Application Nos. 0704403.5, 0704996.8 and 0718056.5, respectively filed on Mar. 8, 2007, Mar. 15, 2007 and Sep. 17, 2007, the contents of which are hereby incorporated by reference.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/EP2008/052084 | 2/20/2008 | WO | 00 | 2/5/2010 |