The invention may be best understood by referring to the following description and accompanying drawings that are used to illustrate embodiments of the invention. In the drawings:
A method and apparatus are described for identification of wireless devices based on signal characteristics.
As used herein, “wireless device” means any device that produces or receives a radio signal. As used herein, wireless devices include devices that produces an electromagnetic signal unintentionally, as well as devices that produce signals intentionally. For example, a microwave oven may be considered a wireless device for purposes of interference. Wireless devices may include, but are not limited to, Wi-Fi devices operating in accordance with the IEEE 802.11 standards, including IEEE 802.11a-1999, 802.11b-1999, and 802.11g-2003; Bluetooth devices operation in accordance with the IEEE 802.15.1-2002 standard; WiMAX (worldwide interoperability for microwave access) devices operation in accordance with IEEE 802.16-20041 or 802.16-2005; and UWB (ultra wideband) devices.
As used herein, “spectrogram” is generally a graphical representation of a frequency spectrum. A spectrogram may represent a short time Fourier transform (STFT) of a window of data, with, for example, a graph including an axis to represent time, an axis to represent frequency, and an intensity or brightness to represent power level.
In an embodiment of the invention, a wireless device is identified based on time and bandwidth occupancy and spectrogram density. In an embodiment, these characteristics form a signal's “signature”, which may be correlated with signatures of known wireless devices to identify the devices that are present. In an embodiment of the invention, the signal characteristics of known devices are identified to form a database of known signal signatures. In a particular embodiment, a signal signature represents a time-bandwidth-density signature that represents the time period, bandwidth, and power density of a spectrogram region.
A simple conventional method of wireless device identification is the characterization of signals purely in the time domain, thereby generating a time signature for each type of wireless device. If there is a relatively small set of wireless devices and low channel occupancy (so that signals do not typically overlap in time) in a particular environment, these time signatures may provide an acceptable process for identifying wireless devices. For example, time signature features that may be used for identification include the SIFS (Short Interframe Space) time between an IEEE 802.11a data packet and the resulting acknowledgment (ACK); the time alignment to 625 μs slots for Bluetooth transmission; and the common 16 ms time period, 50% duty cycle of a microwave oven.
However, in an environment such as a business office where many wireless devices co-exist, signals will often overlap in time, making the simple time signature approach less effective. The overlapping signals can make the time signatures of the individual signals very difficult to detect and separate from other signals.
In an embodiment of the invention, a joint time-frequency domain process, or spectrogram, is utilized to identify various wireless devices in an environment. In an embodiment of the invention, the signal regions that are generated in a spectrogram are characterized and used to identify the wireless devices in the environment. For example, the characteristics of certain known wireless device signals may be characterized to generate time-frequency-density signatures for each such device, with the signatures for each such signal being stored in a database. Unknown signals may be compared against the known time-frequency signatures to identify the wireless devices present in the environment. Upon identifying such devices, a system can address the devices as appropriate, which may include eliminating certain interfering signals.
In an embodiment of the invention, a time-frequency domain process is used to provide a more robust signal identification tool than a purely time domain approach. When signals overlap in time, the time signatures of the devices present are garbled. However, in the joint time-frequency domain, device characteristics may remain recognizable even in a busy environment.
In an embodiment of the invention, the data required from a spectrogram is reduced for faster processing and simplicity in implementation. Rather than addressing an entire spectrogram, an embodiment uses only time, bandwidth, and density to identify signals of wireless devices. These characteristics are relatively easy to extract from the spectrogram and do not require excessive memory to store, thus providing effective signature generation and signal identification. In an embodiment of the invention, the data required is limited to opposing corners of a rectangular area, which provide time and bandwidth limitations, and the number of pixels in the area, representing power levels.
For example, the time/bandwidth/density signatures for common wireless devices may include:
In an embodiment of the invention, a system includes the following modules:
(1) Signal Processor—Converts a stream of input data, which may generally represent time domain samples containing energy from various wireless devices, into appropriately sized blocks for a fast Fourier transform.
(2) Spectrogram or STFT (Short Time Fourier Transform)—The data is transformed into a spectrogram, whereby, for example, the x-axis denotes time, the y-axis denotes frequency, and intensity indicates signal power level.
(3) Characteristic Extractor—Extracts time, bandwidth, and density characteristics from the spectrogram.
(4) Wireless Device Identifier—Identifies wireless devices in the relevant environment based on time-bandwidth-density signature.
In an embodiment of the invention, a characteristic extractor module may include the following components:
(a) Noise Reducer—This component may be used to reduce noise below a threshold. For example, the noise reducer may eliminate data below a certain power level to help reduce noise and spurious signals. In one embodiment, a threshold for an image is determined statistically based on the image intensity, such as according to a function of the mean and standard deviation of image intensity.
(b) Image Processor—The image processor may be used to remove extraneous elements from the images. In one example, the image processor may operate to “open” the image. Opening the image is an image processing technique to eliminate spurious regions of the spectrogram while still maintaining the overall size and shape of the stronger signals. The opening process generally consists of two basic morphological operations: an erosion operation followed by a dilation operation. With erosion, each output pixel of a region takes the value of the minimum pixel in its vicinity. The erosion operation has the effect of “eating away” at the regions in an image such that small regions disappear completely. The dilation operation then restores the original size of the stronger regions, with each output pixel taking the value of the maximum pixel in its vicinity.
(c) Low-Pass Filter—In an embodiment of the invention, a low-pass filter may be used to join together regions that were separated during by opening or other processing of the spectrogram image. For example, low-pass filtering along the time axis of an image, a one-dimensional filtering operation, may assist in joining together regions of weaker signals that were separated during an opening operation. To effectively process an image, the low-pass filter smoothes the image sufficiently to join regions that are separated by, for example, a few pixels, but does not join regions that are genuinely separated in time (for example, a data packet that is followed closely by an ACK packet).
(d) Region processor—In an embodiment of the invention, a region processor acts to connect and identify regions of an image. Regions of contiguous pixels are identified, with the rectangular bounds (such as the upper left and bottom right corners) and the number of pixels in each region being calculated. The region boundaries provide an approximate bandwidth and time occupancy estimate of each signal present. The number of pixels in each region divided by the area of the rectangular region indicates signal density. A list of these characteristics is output as the time-bandwidth-density signature of the wireless device.
In an embodiment of the invention, a wireless device identifier module for a system may include the following components:
(a) Characteristic Processor—The boundaries of each region provide an approximate bandwidth and time occupancy estimate of each signal present. This information, together with signal density, is utilized to provide an estimate of the wireless devices existing in the environment. As more characteristic signal regions are analyzed, the confidence in the estimate will increase.
(b) Device Identification—Given the analysis of the characteristic processor for the regions identified by the characteristic estimator, the wireless devices that are present in the environment are identified.
In an embodiment of the invention, a simple and effective process for extracting time, bandwidth, and density characteristics from a spectrogram is provided. Alternative methods for extracting this information might involve nested loops to first comb through the signal in time to identify pulses and then to sweep across frequency to check for time-overlapped pulses. However, without effective processing, the output of such a search would not be sufficiently clean, with many spurious or undesired signals being identified along with the signals of interest.
Certain wireless devices may regularly cause interference. If the signatures of such devices can be identified, the effect of such devices may be mitigated. In a particular example, microwave ovens currently reduce performance in wireless systems and make it difficult to identify wireless devices in spectrum sensing applications. Conventional device are generally not capable of mitigating the effect of microwave ovens, and most devices are not even aware of the presence of such an interferer. It may be possible to avoid the effects of microwave oven signals by avoiding the frequencies occupied by the microwave oven, or by attempting to synchronize transmissions to the 8 ms quiet period of the oven. However, both of these techniques result in reduced time and frequency availability, which will degrade network performance. In an embodiment of the invention, a device seeks to mitigate rather than avoid the microwave oven signal. The periodic nature of the microwave oven signal may be used to assist in mitigating of the effect of the microwave oven. In an embodiment, processing may proceed as follows:
Data input—The data may consist of time domain samples containing energy from various wireless devices. In this example, the wireless devices include a microwave oven, for which the signal signature is known.
Signal processing—The stream of input data is converted into appropriately sized blocks for Fourier transform.
STFT (Short Time Fourier Transform, or spectrogram)—The data is transformed into a spectrogram image, with the x-axis representing time, the y-axis representing frequency, and the intensity representing power level.
Signature identification—The signature of a microwave oven is known to include a time period of 16.7 ms frames, with a 50% duty cycle, and a bandwidth over 20 MHz. The signature is known to repeat regularly. Because of these known characteristics, it is possible to average over numerous 16.7 ms frames of the received signal to characterize the microwave oven signal. In this process, signals from other wireless devices will average out like noise.
Signal Mitigation—For signal mitigation, the microwave oven signature may be removed from received data. The microwave oven characterization may be subtracted from spectrograms that are either previously received or received in the near future to mitigate the effect of the microwave oven.
While the described process uses the particular example of a microwave oven, the process is not limited to this type of device. The effects of other types of wireless devices may also be addressed in this manner. For example, any wireless device with a known signature that is consistent and that repeats at known intervals may be removed from received signals. In addition, applications of the described process are not limited to removal of a signal for this particular purpose, but rather may also be used in other circumstances as well. For example, in certain embodiments this technique may be utilized to improve wireless data communication by removing (subtracting) an estimate of an interfering signal from a received data signal, and thus to provide a better estimate of the remaining signal of interest.
The characteristic extractor 1020 may include a noise reduction component 1025 to reduce noise below a threshold, eliminating data below a certain power level to help reduce noise and spurious signals. The characteristic extractor 1020 may further include an image processor 1030 to process the image. The image processing may include opening the image to eliminate spurious regions of the spectrogram while still maintaining the overall size and shape of the stronger signals. The characteristic extractor 1020 may also include a low-pass filter 1035 to join together regions that were separated during by opening or other processing of the spectrogram image and a region connector 1040 to connect and identify regions of an image, thereby resulting in time-bandwidth-density characteristics for the input signal.
The computer 1100 further comprises a random access memory (RAM) or other dynamic storage device as a main memory 1125 for storing information and instructions to be executed by the processors 1110. Main memory 1125 also may be used for storing temporary variables or other intermediate information during execution of instructions by the processors 1110. RAM memory includes dynamic random access memory (DRAM), which requires refreshing of memory contents, and static random access memory (SRAM), which does not require refreshing contents, but at increased cost. DRAM memory may include synchronous dynamic random access memory (SDRAM), which includes a clock signal to control signals, and extended data-out dynamic random access memory (EDO DRAM). The uses of the main memory may include the storage received signals from wireless devices. The computer 1100 also may comprise a read only memory (ROM) 1130 and/or other static storage device for storing static information and instructions for the processors 1110.
A data storage device 1135 may also be coupled to the bus 1105 of the computer 1100 for storing information and instructions. The data storage device 1135 may include a magnetic disk or optical disc and its corresponding drive, flash memory or other nonvolatile memory, or other memory device. Such elements may be combined together or may be separate components, and utilize parts of other elements of the computer 1100.
The computer 1100 may also be coupled via the bus 1105 to a display device 1140, such as a cathode ray tube (CRT) display, a liquid crystal display (LCD), a plasma display, or any other display technology, for displaying information to an end user. In some environments, the display device may be a touch-screen that is also utilized as at least a part of an input device. In some environments, display device 1140 may be or may include an audio device, such as a speaker for providing audio information. An input device 1145 may be coupled to the bus 1105 for communicating information and/or command selections to the processors 1110. In various implementations, input device 1145 may be a keyboard, a keypad, a touch-screen and stylus, a voice-activated system, or other input device, or combinations of such devices. Another type of user input device that may be included is a cursor control device 1150, such as a mouse, a trackball, or cursor direction keys for communicating direction information and command selections to the one or more processors 1110 and for controlling cursor movement on the display device 1140.
A communication device 1155 may also be coupled to the bus 1105. Depending upon the particular implementation, the communication device 1155 may include a transceiver, a wireless modem, a network interface card, LAN (Local Area Network) on motherboard, or other interface device. The uses of a communication device 1155 may include reception of signals from wireless devices. For radio communications, the communication device 1155 may include one or more antennas 1158. In one embodiment, the communication device 1155 may include a firewall to protect the computer 1100 from improper access. The computer 1100 may be linked to a network or to other devices using the communication device 1155, which may include links to the Internet, a local area network, or another environment. The computer 1100 may also comprise a power device or system 1160, which may comprise a power supply, a battery, a solar cell, a fuel cell, or other system or device for providing or generating power. The power provided by the power device or system 1160 may be distributed as required to elements of the computer 1100.
In the description above, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without some of these specific details. In other instances, well-known structures and devices are shown in block diagram form.
The present invention may include various processes. The processes of the present invention may be performed by hardware components or may be embodied in machine-executable instructions, which may be used to cause a general-purpose or special-purpose processor or logic circuits programmed with the instructions to perform the processes. Alternatively, the processes may be performed by a combination of hardware and software.
Portions of the present invention may be provided as a computer program product, which may include a machine-readable medium having stored thereon instructions, which may be used to program a computer (or other electronic devices) to perform a process according to the present invention. The machine-readable medium may include, but is not limited to, floppy diskettes, optical disks, CD-ROMs (compact disk read-only memory), and magneto-optical disks, ROMs (read-only memory), RAMs (random access memory), EPROMs (erasable programmable read-only memory), EEPROMs (electrically-erasable programmable read-only memory), magnet or optical cards, flash memory, or other type of media/machine-readable medium suitable for storing electronic instructions. Moreover, the present invention may also be downloaded as a computer program product, wherein the program may be transferred from a remote computer to a requesting computer by way of data signals embodied in a carrier wave or other propagation medium via a communication link (e.g., a modem or network connection).
Many of the methods are described in their most basic form, but processes can be added to or deleted from any of the methods and information can be added or subtracted from any of the described messages without departing from the basic scope of the present invention. It will be apparent to those skilled in the art that many further modifications and adaptations can be made. The particular embodiments are not provided to limit the invention but to illustrate it. The scope of the present invention is not to be determined by the specific examples provided above but only by the claims below.
It should also be appreciated that reference throughout this specification to “one embodiment” or “an embodiment” means that a particular feature may be included in the practice of the invention. Similarly, it should be appreciated that in the foregoing description of exemplary embodiments of the invention, various features of the invention are sometimes grouped together in a single embodiment, figure, or description thereof for the purpose of streamlining the disclosure and aiding in the understanding of one or more of the various inventive aspects. This method of disclosure, however, is not to be interpreted as reflecting an intention that the claimed invention requires more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive aspects lie in less than all features of a single foregoing disclosed embodiment. Thus, the claims are hereby expressly incorporated into this description, with each claim standing on its own as a separate embodiment of this invention.