System and method for management of a shared frequency band
Abstract
The present invention provides systems, methods, software and related functions for managing activities in the radio frequency band, which is shared by multiple types of signals in frequency and time. An example of such a frequency band is an unlicensed frequency band. The radio frequency energy in the frequency band is captured at one or more devices and/or locations in the area where activity in the frequency band is occurring. The signal appearing in the frequency band is detected by the sampling component or the entire frequency band is detected within a time interval. The signal pulse energy in the frequency band is detected and used to classify the signal according to the signal type. Using knowledge of the types of signals that appear in the frequency band and other statistical information related to spectrum activities (called spectrum information), actions can be taken in equipment or equipment networks to avoid interference with other signals, and to maximize simultaneous use of frequency bands with other signals. optimization. Spectrum information can be used to suggest actions to device users or network administrators or automatically invoke actions in the device or device network to maintain desired performance.

Term
Term ended
Expired 22 April 2023, 3.4 years ago.
- Priority
- Filed
- Granted
- Expired
- Today
35 claims: 2 independent, 33 dependent
- 1一种用于管理射频频带的使用的方法,其中多种类型的信号出现在射频频带中,所 述方法包括: 监控射频频带中的射频能量,以产生与在一定时间间隔期间在射频频带中接收的射频 能量相关联的功率谱信息,在该射频频带中出现与多个信号类型关联的活动; 从所述功率谱信息产生信号脉冲信息,所述信号脉冲信息描述在射频频带中检测到的 射频能量的脉冲的特征;以及 基于所述功率谱信息和所述信号脉冲信息产生表示频带中的活动的频谱活动信息。
- 2根据权利要求1所述的方法,其中监控步骤还包括扫描整个频带以接收射频频带的 不同部分中的射频能量。
- 3根据权利要求1所述的方法,其中产生信号脉冲信息的步骤包括从所述功率谱信息 产生针对在频带中检测到的信号脉冲的信号脉冲数据,所述信号脉冲数据包括下述之一或 多个:脉冲持续时间、脉冲中心频率、脉冲带宽及脉冲间的时间间隔。
- 4根据权利要求3所述的方法,其中产生信号脉冲数据的步骤包括针对随时间被确定 出现在射频频带中的信号脉冲产生至少下述之一的柱状图(i)中心频率,(ii)持续时间, (iii)带宽,及(iv)脉冲间的时间。
- 5根据权利要求3所述的方法,还包括积聚在频带中随时间检测到的信号脉冲的信号 脉冲数据的步骤。
- 6根据权利要求5所述的方法,还包括步骤:基于所积聚的信号脉冲数据对频带中的 信号进行分类,其中产生信号脉冲数据的步骤是基于被确定出现在频带中的信号的类型 的。
- 7根据权利要求6所述的方法,还包括步骤:显示关于所分类的信号的特征的信息。 &根据权利要求6所述的方法,其中分类步骤包括确定被确定出现在频带中的信号类 型是否是可能干扰在频带中工作的一个或多个设备的工作的类型。
- 89. 根据权利要求8所述的方法,还包括产生建议信息以指示用户改变在射频频带中工 作的设备,以避免由被确定要干扰该设备的信号导致的该设备性能的降级。
- 910. 根据权利要求9所述的方法,还包括产生控制信号的步骤,其包括产生控制在射频 频带中工作的设备的控制信号以确定传输时间,从而避开被确定要出现在射频频带中的信 号的频率和时间。
- 1011. 根据权利要求8所述的方法,还包括确定信号源的位置的步骤,该信号源被确定要 干扰射频频带中的设备的工作。
- 1112. 根据权利要求11所述的方法,还包括显示被确定要干扰射频频带中的设备的工作 的信号源的位置。
- 1213. 根据权利要求1所述的方法,还包括产生关于在频带中随时间接收的射频信号的 特征的统计信息的步骤,其中统计信息包括,对于频带中的频率范围:(i)该频率范围中的 平均功率,(ii)该频率范围的最大功率,(iii)及该频率范围的活动的工作循环测量。
- 1314. 根据权利要求1所述的方法,还包括产生用于控制在频带中工作的设备的一个或 多个操作参数的控制信号的步骤,操作参数选自由下述参数构成的组:工作频道、传输数据 速率、信息包片断大小、确定传输的时间以避免干扰其它信号、传输功率、信息包碎片极限 值及无干扰信道访问极限值。 CN 1663156 Β
- 1415. 根据权利要求14所述的方法,其中产生控制信号的步骤包括产生用于多个接入点 中至少一个的控制信号,每一接入点具有相关的客户站设备,其中控制信号控制至少下述 之一:在多个接入点之间的信道分配,及在多个接入点之间的相关站分配。
- 1516. 根据权利要求1所述的方法,还包括产生控制信号以基于政策信息控制频带中的 一个或多个设备的工作,政策信息给出一信号类型相对于其它信号类型的频带使用的优先 选择。
- 1617. 根据权利要求16所述的方法,其中产生控制信号的步骤包括产生信号以基于政策 信息控制频带中的一个或多个设备的工作,政策信息给出管理机构所指定的、频带的主要 用户相对于其它用户的优先选择。 1&根据权利要求16所述的方法,其中产生控制信号的步骤包括产生信号以在频谱活 动信息指明雷达信号出现在频带中时拒绝通过频带中的设备传输信号。
- 1719. 根据权利要求16所述的方法,其中产生控制信号的步骤包括产生信号以基于政策 调整由频带中的设备传输的信号的数据速率,所述政策在频带中存在任何其它信号的情况 下使设备的传输数据速率最大化。
- 1820. 根据权利要求16所述的方法,还包括步骤:更新政策信息,以考虑在射频频带中工 作的新设备和/或管理政策。
- 1921. 根据权利要求1所述的方法,还包括步骤:基于频谱活动信息在工作在频带中的一 个或多个无线网络上检测潜在的拒绝服务攻击,且其中产生频谱活动信息的步骤包括产生 描述潜在的拒绝服务攻击的射频特性的信息。
- 2022. 根据权利要求21所述的方法,其中检测潜在的拒绝服务攻击的步骤包括分析频谱 活动信息以检测暗示潜在的拒绝服务攻击的噪声信号。
- 2123. 根据权利要求1所述的方法,还包括步骤:相对于基于所述频谱活动信息在所述频 带中工作的经授权设备在传输中使用的标识符来存储所述经授权设备的信号脉冲特征信 息;对与在那些传输中检测到的标识符相对应的、在所述频带中传输的设备的信号脉冲特 征和所存储的与该标识符相关联的信号脉冲特征进行比较;以及当与传输相关联的信号脉 冲特征与针对该标识符存储的信号脉冲特征不匹配时,确定设备不是经授权设备。
- 2224. 一种在射频频带中接收射频能量并处理代表所述射频能量的信号的设备,包括: a. 无线电接收机,其接收射频频带中的射频能量,多种类型的信号出现在射频频带 中; b. 连接到无线电接收机的频谱分析仪,其分析在一时间间隔内于射频频带的至少一部 分中接收的射频能量; c. 连接到频谱分析仪的信号检测器,其检测满足一个或多个脉冲特征的射频能量的信 号脉冲;及 d. 连接到频谱分析仪和信号检测器的接收输出的处理器,其中处理器被编程以监控射 频频带中的活动并基于由频谱分析仪和信号检测器产生的数据来产生描述被确定要出现 在射频频带中的活动类型的信息。
- 2325. 根据权利要求24所述的设备,其中信号检测器包括:峰值检测器电路,该峰值检测 器电路检测射频能量的峰值并产生表示其检测的峰值的输出信号;和连接到峰值检测器的 至少一个脉冲检测器电路,所述至少一个脉冲检测器电路检查来自峰值检测器电路的输出 CN 1663156 Β 信号以随时间根据下述之一或多个检测射频能量的脉冲:带宽、中心频率及持续时间。
- 2426. 根据权利要求24所述的设备,还包括保存由频谱分析仪产生的统计信息的缓冲 器,其中频谱分析仪产生包括下述之一或多个的统计信息:对于频带中的频率范围的平均 功率、工作循环、及最大功率。
- 2527. 一种用于产生关于出现在射频频带中的活动的信息的设备,包括: a·频谱分析仪,其计算在一时间间隔内在射频频带的至少一部分中接收的射频能量的 功率值;及 b.连接到频谱分析仪的信号检测器,其检测满足一个或多个脉冲特征的射频能量的信 号脉冲,信号检测器包括峰值检测器电路和至少一个脉冲检测器电路,所述峰值检测器电 路从功率值检测一时间间隔内的一个或多个峰值,其中,峰值对应于在预定量的连续频率 中高于极限值的功率值,所述至少一个脉冲检测器电路连接到峰值检测器电路,所述至少 一个脉冲检测器电路基于峰值检测器电路检测的一个或多个峰值来检测满足一个或多个 特征的信号脉冲。 2&根据权利要求27所述的设备,其中峰值检测器电路包括一比较器,该比较器将每 一频率的功率值与峰值极限值进行比较以识别哪些频率超出了峰值极限值。
- 2629. 根据权利要求28所述的设备,其中峰值检测器电路在超出峰值极限值的一组相邻 的频率之间识别最大功率值。
- 2730. 根据权利要求28所述的设备,其中脉冲检测器电路从峰值检测器电路接收识别哪 些频率超出峰值极限值并识别超出峰值极限值的一组相邻的频率的最大功率值的信息作 为输入信息,并确定该信息是否满足一个或多个脉冲特征。
- 2831. 根据权利要求30所述的设备,其中如果描述所检测的来自峰值检测电路的峰值的 信息中的中心频率、持续时间及带宽之一或多个在对应的范围内,则脉冲检测器电路从峰 值检测器电路的输出检测出信号脉冲。
- 2932. 根据权利要求27所述的设备,其中脉冲检测器是可配置的以调整中心频率、持续 时间和带宽之一或多个的范围,从而宣布一信号脉冲来自由峰值检测器电路产生的信息。
- 3033. 根据权利要求27所述的设备,其中脉冲检测器电路为每一所检测的信号脉冲输出 脉冲事件数据,包括下述之一或多个:中心频率、带宽、开始时间及持续时间。
- 3134. 根据权利要求27所述的设备,还包括一处理器,该处理器被连接来接收由脉冲检 测器电路输出的脉冲事件数据并积聚由脉冲检测器电路随时间检测的脉冲的脉冲事件数 据。
- 3235. 根据权利要求34所述的设备,其中处理器积聚脉冲事件数据并为随时间积聚的 脉冲事件数据建立一个或多个柱状图,其中一个或多个柱状图选自由下面各项组成的组:跟踪针对所检测的信号脉冲观察到给定中心频率的时间百分比的中心频率柱状图;跟踪针 对所检测的信号脉冲观察到给定带宽的时间百分比的带宽柱状图;跟踪针对所检测的信号 脉冲观察到给定的一个或多个持续时间的时间百分比的脉冲持续时间柱状图;脉冲之间的 时间的柱状图,其跟踪在信号脉冲之间观察到给定的一个或多个时间持续时间的时间百分 比;及跟踪几个不同的信号脉冲同时出现的时间的多个活动传输柱状图。
- 3336. 根据权利要求27所述的设备,还包括一响应于触发信号的存储器,该存储器保存 表示在射频频带中接收的射频能量的采样的数字信号。 CN 1663156 Β 37.根据权利要求36所述的设备,其中存储器还保存时间戳信号,该时间戳信号标识 与触发信号的出现相关联的时间。 3&根据权利要求27所述的设备,其中频谱分析仪将表示频带的至少一部分中的活动 的数字信号接收为输入,并且频谱分析仪包括功率计算电路,该功率计算电路计算在一时 间间隔内多个频率窗口的功率值,这些功率值被提供作为峰值检测器的输入。
- 3439. 根据权利要求38所述的设备,其中频谱分析仪从多个频率的功率值计算一个或 多个数据,这一个或多个数据选自下面的组:每一频率窗口在一定时间间隔上的平均功率;工作计数,包括在每一时间间隔在每一频率窗口的功率超出功率极限值的次数的总和;每 一频率窗口在当前及先前时间间隔中的最大功率;及其中一定量的峰值已被检测到的时间 间隔的数量的计数。
- 3540. 根据权利要求38所述的设备,还包括一存储器,其中信号检测器电路响应于检测 某一类型的脉冲而输出触发信号,该触发信号被连接以使得在一个或多个时间间隔内功率 计算电路的输出将被写到存储器中。 CN 1663156 Β
Independent claims35
1,102 paragraphs in 4 sections, as filed
Management system and method for shared frequency band
[0001]
[0002]
[0003]
[0004]
[0005]
[0006]
[0007]
[0008]
[0009]
[0010]
[0011]
[0012]
[0013]
[0014]
[0015]
[0016] The US provisional application 60/374, 363 filed on the day; the US provisional application 60/374, 365 filed on the day; the US provisional application 60/380,891 filed on the day; the US provisional application 60/380, 890 filed on the day; The US provisional application 60/319,435 filed on the day; the US provisional application 60/319, 542 filed on the day; the US provisional application 60/453, 385 filed on the day; the US provisional application 60/320, 008 filed on the day; the US provisional application filed on the day. 10/246, 363; US application 10/246, 364 filed daily; US application 10/246, 365 filed daily.
This application claims the priority of the following applications (all of the priority applications are combined here for reference): April 2002, April 2002, May 2002, May 2002, July 2002, September 2002
The US provisional application 60/319,714 filed on November 20, 2002;
March 2003
March 2003
September 2002
September 2002
This application in September 2002 is a continuation of the part of U.S. application 10/246,363 filed on September 18, 2002.
BACKGROUND OF THE INVENTION In the past few years, the explosive growth of wireless applications and devices has produced a lot of public welfare benefits. Wireless networks and equipment have been deployed in millions of offices and homes, and a large number of public areas have recently been added. These wireless deployments are foreseen to continue at an exciting rate and provide increasing convenience and productivity.
[0017] This increase, which is occurring in unlicensed frequency bands, shows a downward trend. In the United States, the unlicensed frequency band established by the FCC consists of the human part of the 2.4 GHz and 5 GHz spectrum, and its use is free. The FCC currently imposes requirements on unlicensed frequency bands, such as limiting the transmission power spectral density and limiting antenna gain. What everyone realizes is that as unlicensed band devices become more popular and their density in specific areas increases, the "tragedy in the public domain" effect will often become obvious, and the entire wireless facility (and user satisfaction) Degree) will collapse. This phenomenon has been observed in environments with high-density wireless devices.
[0018] The type of signal protocol used by the device in the unlicensed frequency band is not designed to cooperate with other types of signals operating in the frequency band. For example, a frequency hopping signal (for example, a signal transmitted from a device using the BluetoothTM communication protocol or a signal transmitted from some cordless phones) can hop to an IEEE 802.11 wireless local area network (WLAN) channel, thereby causing interference with the operation of the WLAN. Therefore, technology is needed to develop all the benefits of unlicensed frequency bands without degrading the level of service users expect.
[0019] Historically, the general approach for the wireless industry to solve the problem of "tragedy in the public domain" has been to simply move to another public domain with a higher frequency spectrum. However, this solution will not work for too long because of the lack of spectrum and the less attractive technical characteristics of higher frequency bands (reduced signal propagation and inability to penetrate surfaces).
[0020] Enterprises that use unlicensed frequency bands are concentrated on large-scale wireless network (such as WLAN) deployment and integration in wired networks. WLANs can complicate existing network management solutions because they introduce additional requirements for effective management of the radio frequency spectrum. The current WLAN system and management technology focus on management activities at the network level of the WLAN, and hardly provide the ability to manage frequency bands. Among them, signals of multiple types (such as communication protocols/network types, device types, etc.) are presented.
CN 1663156 Β
Now. A technology is needed to obtain and use the knowledge of what happens in the shared radio frequency bands, such as unlicensed frequency bands, so that devices can act intelligently with regard to their frequency usage, thereby maintaining the performance of the device and operating in the frequency band Network of devices.
Summary of the invention
[0021] Briefly, the present invention provides systems, methods, software, and related subroutines for managing activities in a shared radio frequency band, where the radio frequency band consists of multiple disparate types of signals and Sharing of equipment of various technologies. An example of such a frequency band is an unlicensed frequency band. Radio frequency energy in the frequency band is captured at one or more locations in the area where activity in one or more devices and/or the frequency band is occurring. The signal appearing in the frequency band is detected by the sampling component or the entire frequency band at certain time intervals. The signal pulse energy in the frequency band is detected and used to classify the signal according to the signal type. Using knowledge of the types of signals that appear in the frequency band and other statistics related to spectrum activities (known as spectral information), actions can be taken in equipment or equipment networks to avoid interference with other signals, and to maximize the use of frequency bands with other signals at the same time. optimization. Spectral information can be used to suggest actions to device users or network administrators, or automatically invoke actions in devices or device networks to maintain desired performance.
[0022] Devices that use unlicensed or shared frequency bands can adopt the features and functions described herein to better promote frequency band sharing and coexistence among multiple devices using disparate technologies. Devices that have the ability to collect information and act on it or on information obtained by other devices are referred to herein as "cognitive radio devices." Any device operating in the shared frequency band can contain cognitive radios of varying degrees to perceive their local radio environment and/or detect the presence (and application needs) of other devices that are accessing the same unlicensed frequency band. The ability to sense, detect, and classify other users sharing the frequency band near the device is very important to be able to determine how the device can use the spectrum most efficiently. The cognitive radio system is applied to each device and each device network.
[0023] Cognitive radio equipment enables stable and effective use of unlicensed frequency bands and facilitates secondary access applications. Cognitive radio can perceive their radio environment, detect the presence of other wireless devices, classify these other devices, and then implement communication-specific policies. Cognitive radios can also be equipped with location-aware features to help them determine the way they can communicate most effectively, or, in the case of secondary access, whether they can definitely access a certain spectrum.
[0024] Cognitive radio benefits users of cognitive radio devices and other "dumb" device users working nearby. Through the spectrum recognition of their radio environment, cognitive radio devices can avoid interference from other devices and thus maintain a more reliable wireless connection than dumb devices, which cannot adapt to their behavior. Because cognitive radio devices can adapt to their environment to transmit on less crowded frequencies, they produce less radio interference than dumb devices. This leads to an improvement in the user experience of cognitive device and dumb device users.
[0025] Like licensed wireless applications, predictability of performance is very important for satisfactory unlicensed frequency band wireless service transmission. The successful provision of cognitive spectrum management technology has the potential to help unlicensed frequency band applications evolve from the current convenient but usually secondary wireless situation to unlicensed frequency band connections, which are regarded as reliable, primary, and stable connections. .
[0026] Unlike wired and licensed frequency band wireless connections, where the access medium is controlled and effectively managed, the unlicensed frequency band can be used by disparate wireless technologies. The results of a device operating in such an environment based on performance can be catastrophic. For example, and as mentioned above, two commercially successful unlicensed standards, IEEEE 802.lib and Bluetooth, behave "unintelligent" when operating in close proximity to each other.
[0027] Through the intelligent use of unlicensed frequency bands, the entire capacity can be increased and meet the needs of more users.
CN 1663156 Β
The reuse of frequencies has dramatically increased capacity, where the same frequency band is used in multiple geographic areas. As demonstrated by the operators of currently licensed frequency bands, reducing the size of the "frequency unit" will allow for higher throughput at the expense of other equipment. The limitation of power levels in unlicensed frequency bands makes frequency reuse a substantial necessity in the provision of wireless services in an area spanning several hundred square meters. By adopting smart power control mechanisms, frequency reuse in unlicensed frequency bands can be further expanded.
[0028] For so-called personal area network (PAN) applications, where the range of wireless connections is limited to a few meters, the level of interference generated by such PAN devices is made very low, by controlling the output power to maintain its wireless connection. The lowest possible level is achieved. For those devices that can sense that no other devices are competing for wireless media in their vicinity, they will transmit at the highest possible data rate and use the required spectrum without degrading the performance of other nearby devices. Based on detecting the presence of other devices accessing the spectrum, the device can then reduce its bandwidth usage to minimize interference with other devices. Such flexible and intelligent use of unlicensed frequency bands is an example of cognitive radio equipment.
[0029] The ability of devices to distinguish and react to the occupancy of their local RF environment through measurement and classification opens up opportunities to substantially increase wireless capacity, which enables short-range wireless devices to be used as secondary access users in unoccupied On the licensed frequency band. Through spectrum management, this access can be provided without conflicting with the services provided on these licensed frequency bands.
[0030] The objectives and advantages of the present invention will be more apparent after referring to the following description with reference to the accompanying drawings.
Description of the drawings
[0031] FIG. 1 is a block diagram of multiple devices that can simultaneously operate in an unlicensed or shared frequency band.
[0032] FIGS. 2 and 3 show spectral profiles of signal types that can appear in two exemplary radio frequency bands at the same time.
[0033] FIG. 4 is a diagram showing a general data flow of a spectrum management system.
[0034] FIG. 5 is a general flowchart of the spectrum management process.
[0035] FIG. 6 is a block diagram showing the various processes and basic architecture of the spectrum management system.
[0036] FIG. 7 is a block diagram of a real-time spectrum analysis element (hereinafter referred to as SAGE) used in a spectrum management system.
[0037] FIG. 8 is a diagram showing how the output of SAGE can be used to classify signals detected in frequency bands.
[0038] FIG. 9 is a general flowchart of a signal classification process used in a spectrum management system.
[0039] FIG. 10 is an exemplary coverage map that can be generated by a spectrum management system.
[0040] FIG. 11 is a block diagram of an exemplary communication device that can function in a spectrum management system.
[0041] FIG. 12 is a block diagram of an exemplary spectrum sensor device that can function in a spectrum management system.
[0042] FIG. 13 is a ladder diagram showing how the network spectrum interface called by the application programming interface is used by the application to start the spectrum analysis function.
[0043] Figures 14 and 15 are flowcharts of examples of how the information generated in the spectrum management system can be used.
[0044] FIGS. 16-21 are diagrams of exemplary display screens used to convey information related to spectrum management to users.
[0045] FIGS. 22-25 are diagrams of exemplary ways in which spectrum activity information may be displayed.
[0046] FIG. 26 is a flowchart of a process of using information related to spectrum management to notify a user about the performance of a device operating in a frequency band.
[0047] FIG. 27 is a summary of a scenario (scenario) in an unlicensed frequency band that can be handled by the spectrum management process.
CN 1663156 Β
A diagram of this situation.
[0048] FIG. 28 is a block diagram of a more detailed architecture of the spectrum management system.
[0049] FIG. 29 is a block diagram of hierarchical interactions between devices in a wireless local area network (WLAN) application in a spectrum management process.
[0050] FIGS. 30 and 31 are block diagrams of the network spectrum interface (NSI) between the various process levels of the spectrum management architecture.
[0051] FIG. 32 is a flowchart of the interaction between resource managers in each software level of the spectrum management system.
[0052] FIGS. 33 and 34 are block diagrams of other hierarchical relationships between the processing levels of the spectrum management architecture.
[0053] FIG. 35 is a detailed block diagram of the interaction between the intermediate levels in the spectrum management system architecture.
[0054] FIG. 36 is a detailed block diagram of the interaction between higher levels in the spectrum management system architecture. [0055] FIGS. 37-40 are simplified diagrams of several interactions of the engine NSI with equipment in a WLAN environment.
[0056] FIG. 41 is a diagram of an exemplary spectrum utilization map (SUM) established based on spectrum analysis and other information obtained from equipment operating in a frequency band.
[0057] Detailed description of the drawings
[0058] The systems, methods, software, and other technologies described herein are designed to collaboratively manage the use of shared frequency bands, such as unlicensed frequency bands, where multiple types of signals appear (often simultaneously), and between users of the frequency bands The interference may also occur. Many of the concepts described here can be applied to frequency bands, which do not have to be "unlicensed", such as when the licensed frequency band is used for secondary licensed or unlicensed purposes.
[0059] The term "network" is used in a variety of ways hereinafter. There may be one or more wireless networks, each of which includes multiple devices or nodes operating in a shared frequency band. An example of such a network is WLAN. There is also a network called piconet, which is formed by BluetoothTM capable devices. Many of the examples described here are done on IEEE 802.11 WLAN, mainly because WLAN has seen widespread use and is expected to continue. In addition, the term network refers to a wired network and refers to a collection of one or more wired and wireless networks. The spectrum management system, method, software, and device features described here are not limited to any specific wireless network, and can also be used for any wireless network technology currently known or developed below for sharing frequency bands.
[0060] Referring first to FIG. 1, it shows an environment in which multiple devices transmit or transmit signals in a common frequency band in their working mode at certain points, and they may at least partially overlap in frequency and time. When these devices are close enough to each other, or when they transmit signals at a high enough power level, there will inevitably be interference between the signals of one or more devices. The dotted lines shown in Figure 1 are intended to indicate areas where activity from any device shown may affect other devices. Figure 1 shows a non-exhaustive exemplary selection of devices that can operate in unlicensed frequency bands, including cordless phones 1000, frequency hopping communication devices 1010, microwave ovens 1020, WLAN access points 1050(1) and their associated The client station (STA) 1030(1), 1030(2),..., 1030(n) composed of wireless local area network (WLAN), baby monitoring device 1060 and any other existing or new wireless devices 1070. Multiple WLAN ΑΡ1050 (1) to lj 1050 (n) can work in this area, each with one or more related clients STA 1030(1) to 1030 (n) ο Or, the area shown in Figure 1 can be One of many other similar areas where activity is taking place in the frequency band. According to the desired coverage area, one or more APs can be allocated to corresponding areas in several areas, and each area may be shared with other users, as shown in a single area in Figure 1. Those users shown in the domain. One or more WLAN APs 1050(1) to 1050(n) can be connected to a wired network (such as an Ethernet network), and a server 1055 is also connected to the wired network. Depending on the type, the cordless phone 1000 can be an analog, digital, and frequency hopping device. The frequency hopping communication device 1010 may include a wireless communication protocol based on BluetoothTM wireless communication protocol, HomeRFTM
CN 1663156 Β
Equipment and cordless phones that work with wireless communication protocols. In addition, the radar device 1080 can operate in an unlicensed frequency band. Other devices that can work in the frequency band also include devices such as digital (and/or) video cameras, cable set-top boxes, and so on.
[0061] As will become more apparent in the following, the spectrum management method described herein can be implemented in any device or device network operating in a frequency band (such as those shown in FIG. 1). The necessary hardware and/or software functions should be configured in the hardware/software platform of the device to enable the device to be used as a cognitive radio device and thus perform spectrum management steps: signal detection, accumulation/measurement, classification, and control/reporting. For example, cognitive radio devices that support WLAN applications can perform smarter spectrum access and waveform determination, and ultimately provide higher connection reliability, by cooperating with at least one of the following: its data rate, packet size, channel , Transmission power, etc., classifying the interference signal as a microwave oven, frequency hopping device or alternative to another WLAN.
[0062] Alternatively, or in addition, spectrum management can be implemented by arranging the plurality of spectrum sensitive elements 1200(1) to 1200(n) shown in FIG. A related activity appears in the frequency band to form an overlay network of sensitive components. The spectrum information collected by the spectrum sensitive element is fed back to one or several processing platforms such as the network management station 1090 or server 1055, the main processor of the AP, etc., where policy decisions are made and control can be generated. For example, there may be another server 1057 that executes the WLAN management application of AP 1050(1) to 1050(n). The server 1055 or the network management station 1090 may generate control or report to the server 1057 that affects changes in one or more APs.
[0063] The network management station 1090, the server 1055, and the server 1057 need not be physically located in the area, where other devices are working in the area. The network management station 1090 can be connected to the same wired network as the server 1055, and can be from one or more WLAN AP1050(1) to 1050(n) and/or from one or more spectrum sensitive elements 1200(1) to 1200 (η) Receive spectrum activity information. For example, the network management station 1090 has a processor 1092, a memory 1094 that stores one or more software programs executed by the processor, and a display monitor 1096. The network management station 1090 may also execute one or more software programs for managing wired and wireless networks, where the network is, for example, a WLAN served by WLAN AP 1050 (1) to lj 1050 (n). The spectrum sensitive elements 1200(1) to 1200(n) can be connected to the AP, the server 1055 or the spectrum management station 1090 through a wired or wireless connection.
[0064] At present, in the United States, unlicensed frequency bands are all in the industrial, technological and medical (ISM) and UNII frequency bands, and include unlicensed frequency bands at 2.4 GHz and unlicensed frequency bands at or near 5 GHz. frequency band. These are just a few examples of existing unlicensed frequency bands. In other countries, other parts of the spectrum have been set aside for unlicensed use. By definition, an "unlicensed" frequency band usually means that no user has any rights over others when using the frequency band. No user has purchased the exclusive right to use the spectrum. There is a set of basic power and bandwidth conditions associated with unlicensed frequency bands, but any user working under these conditions can use it for free at any time. The result of the "unlicensed" nature of these frequency bands is that the devices operating in them will inevitably interfere with each other's operation. When interference occurs, the signal from one device to another device may be received improperly, causing the sending device to retransmit (and thus reduce throughput), or may completely destroy the communication connection between the two communication devices. In addition, because the frequency band is free to use, zero cost encourages more applications and users of unlicensed frequency bands, and as a result, it makes the frequency band more congested and more susceptible to interference. Therefore, it is necessary to manage the work of devices operating in unlicensed frequency bands to ensure effective and fair use by all users.
[0065] Figures 2 and 3 show some examples of spectrum usage in two unlicensed frequency bands in the United States. Figure 2 shows the spectrum profile of exemplary devices operating in the 2.4 GHz unlicensed frequency band, such as frequency hopping devices, cordless phones, IEEE 802.lib WLAN communication devices, baby monitoring devices, and microwave ovens. Frequency hopping device will be at any given time
CN 1663156 Β
Occupies a predictable or random sub-band, so as time goes by, it can span the entire frequency band. Non-frequency hopping cordless phones can occupy one of several sub-bands at any given time. The IEEE 802. lib device usually occupies one of the three RF channels in the 2.4 GHz band at any given time, and baby monitors are similar. The microwave oven will emit short bursts of energy that can span most of the unlicensed channel. Other devices that can work in the 2.4 GHz frequency band are IEEE 802.11g WLAN devices.
[0066] FIG. 3 shows a similar set of cases for the 5GHz unlicensed frequency band. In the United States, there are actually three unlicensed frequency bands at 5GHz. Two of them are adjacent, and the third is not adjacent to the other two (for simplicity, it is not considered in Figure 3). In the 5GHz unlicensed frequency band, there may be IEEE 802.11a WLAN equipment operating in 8 different sub-bands (channels), direct sequence spread spectrum (DSSS) cordless phones, and various radar equipment. [0067] Managing unlicensed frequency bands in which multiple types of signals can appear simultaneously includes minimizing interference and maximizing spectrum efficiency. Minimizing interference is expressed in terms of signal-to-noise ratio (SNR), bit error rate (BER), etc., and maximizing spectral efficiency is expressed as the data rate per bandwidth used per unit area (bps/Hz/m<sup>2</sup>) Or expressed as the number of "satisfied" users, where satisfaction is based on meeting certain performance criteria, such as: data rate, latency, jitter, dropped sessions, and blocked sessions. The goal of spectrum management is to take evasive actions to avoid possible interference, detect and report interference when it occurs, and make intelligent decisions to mitigate interference when it is unavoidable. In addition, spectrum management is flexible to handle the needs of different end users and the emergence of new equipment and equipment types.
[0068] FIGS. 4 and 5 show general concepts associated with spectrum management of unlicensed frequency bands. Information about activity in the frequency band, called spectrum activity information, will be obtained from any one or several devices working in the frequency band, which has a certain degree of capability described below in conjunction with FIGS. 7 and 8. This is called spectrum sampling in step 2000, and can include sampling radio frequency energy or scanning sub-bands (on-demand or periodically) in the entire frequency band in a period of time to determine spectrum-based and time-based activities in the frequency band. . It is possible for each step shown in Figure 5 to be performed in a radio device such as a cognitive radio device. Alternatively, or in addition, the spectrum activity information is collected at multiple devices (e.g., at multiple spectrum sensitive elements of the sensitive element overlay network) and the spectrum activity information is processed at the computing device to generate one or more for working in the frequency band. Reporting and/or control of individual devices or device networks (such as one or more APs). The spectrum information collected and used at the same device or collected from the sensitive element overlay network can be used to connect spectrum aware reports or control to general network management applications that manage the wired and wireless networks in the enterprise.
[0069] For example, as shown in FIG. 4, the spectrum activity information is in one or more APs 1050(1) to 1050(n) and/or in one or more spectrum sensitive elements 1200(1) of the sensitive element overlay network. Obtained from IJ 1200 (n) or any other equipment equipped with some of the capabilities described below. For example, three spectrum sensitive elements are illustrated in Figure 4, which can be placed in a location or various locations in a building. Spectrum activity information can be generated in a device capable of receiving signals in a frequency band, or, in the device, the raw data output by a radio receiver (data converter connected to the output of the receiver) is connected to another one that does not have to be in the frequency band. Equipment that works or resides locally to those that work in the frequency band. Spectrum activity information may generally include information related to activities in the frequency band, and statistical information associated with wireless networks operating in the frequency band, such as IEEE 802.11x WLAN statistical information, which can be obtained by APs or STAs working in WLANs .
[0070] Some cognitive radio devices can be aware of the spectrum activities that only affect their environment/outside. Other more intelligent devices can know the spectrum activity of themselves and all the devices connected to them. For example, a STA may have its own cognitive radio capability, but the AP associated with it has each of its STA and its own intelligence. However, the AP can inform the STA about the spectrum situation in the AP or other STAs. For a higher level, a server that manages multiple APs will have intelligence for the entire multi-AP network. When spectrum activity information is sent "upstream" for further processing, it can be divided into necessary
CN 1663156 Β
The desired ingredients or elements may be compressed.
[0071] Spectrum activity information (or raw data used to generate it) is reported locally or remotely to other devices to display, analyze, and/or generate real-time alarm signals related to activities in the frequency band. In addition, spectrum activity information can be accumulated and stored for a short-term (a few seconds or minutes) or long-term (a few minutes to a few hours) for subsequent analysis. For example, the long-term preservation of spectrum activity information is useful for data mining and other non-real-time processing applications, which will be described below.
[0072] In addition, or independent of the reporting function, the spectrum activity information can be processed in the processor (local or remote from the source device of the actual spectrum activity information). The signal classification step 2010 includes processing the output of the spectrum sampling step to measure and classify the signal based on characteristics such as power, duration, bandwidth, frequency hopping characteristics. The output of the signal classification step 2010 is to classify the data of the detected signal/device. The classified output can be, for example, "cordless phone", "frequency hopping device", "frequency hopping cordless phone", "microwave oven", "802. llx WLAN device" and so on. The signal classification information generated by processing spectrum activity information can be reported to local or remote locations like spectrum activity information, and used to generate real-time alarm signals. For example, when an interference condition (the presence of another signal in a device in a frequency band or a frequency band in which a device network operates, a working adjacent channel, etc.) is detected, a real-time alarm signal may be generated to notify the network administrator of the condition. The real-time warning signal can take the form of picture display, audio, e-mail message, radio paging message, etc. The warning signal may include suggestions to users or network administrators to adjust the equipment and equipment network operating in the frequency band.
[0073] The policy enforcement step 2020 involves determining, if any, what to do with the information output by the signal classification step 2010. For example, the policy specifies what spectrum action or control should be taken in the communication device or device network based on the output of the signal classification step 2010. The output of the policy execution step 2020 may include suggested actions to network administrators, applications, or systems to remedy or adjust the situation. In addition, in processing spectrum activity information, controls may be generated to adjust one or more operating parameters of the equipment or equipment network operating in the frequency band. The spectrum action step 2030 generates specific controls to implement actions. Examples of control are: assigning equipment to different sub-bands or channels in the frequency band (Dynamic Frequency Selection-DFS), network load balancing (based on channel frequency or time), adjusting transmission power (Transmission Power Control-TPC), Adjust the communication data rate, adjust the parameters of the transmitted data packets, perform interference mitigation or coexistence algorithms, perform spectrum etiquette procedures, perform spectrum priority schemes, or re-allocate STAs to APs in the WLAN. Examples of interference mitigation algorithms are disclosed in the pending U.S. Patent Publication No. 20020061031 published on May 23, 2002. Other actions that can be taken include reporting spectrum activity information to users and administrators to enable artificial intelligence to interact with each other. Enough to diagnose problems, optimize network settings, and remove sources of interference. Even when the adjustment is made automatically, an event report or alarm signal can be generated to notify the network administrator of the condition. The control can be at the special equipment level to change the operating parameters of the equipment or at the network level to change the operating parameters of the wireless network operating in the frequency band, such as by changing one or more operating parameters used by the IEEE 802.11x AP equipment, which Affects how the STA associated with the AP works in the wireless network.
[0074] The control signal may be generated in devices that actually operate in the frequency band (see FIGS. 11 and 12) or in computing devices that are remote from those devices that operate in the frequency band. In the latter case, the network management station 1090 or the server 1055 (Figure 1) can receive spectrum activity information and generate control signals. The control signal is then transmitted back to one or more devices operating in the frequency band. For example, if the control signal belongs to a parameter of a WLAN AP or STA, the control signal may be transmitted to one or more APs via the network connection by the network management station 1090 or the server 1055 (as shown in FIG. 1). ) To 1050 (η)) ο AP will receive the control signal and change one of its operating parameters. In addition, the control signal can be transmitted to a specific STA, which provides appropriate commands to the AP of the STA so that the AP transmits parameter change information to the STA.
[0075] Spectrum Management System Structure
CN 1663156 Β
[0076] With reference to FIG. 6, the spectrum management system architecture will be described. The architecture will be described starting with the "lowest" level and going up to higher levels. The annotations on the side of the box in Figure 6 mean that these processes can be performed, which will become more obvious when it comes to additional features. The lowest level is the hardware located in the equipment operating in the frequency band and the drivers associated with the hardware. Thus, this level may be referred to as the hardware/driver level in the following. Examples of these devices (cognitive radio devices) have been mentioned above in conjunction with FIG. 1, and exemplary devices will be described in detail in FIG. 11. There are at least a real-time spectrum analyzer (SAGE) 20 and a radio receiver or radio transceiver (hereinafter "radio") 12 in the equipment to receive and sample the radio frequency energy in the frequency band. SAGE20 can be implemented in hardware or software and integrated with the radio 12 In combination, the signals received by the radio 12 operating in narrowband or wideband mode are processed. In the wideband mode, the radio receiver/transceiver 12 can down-convert the signal across the entire frequency band of interest during any given time interval. If the radio receiver/transceiver 12 operates in a narrowband mode, the radio receiver (or transceiver) can be tuned to different sub-bands across the frequency band to obtain information for the entire frequency band. Depending on the particular equipment, there may also be a modem 14, which is used to perform baseband signal processing according to a particular communication standard.
[0077] Also at the lowest level, there is a set of drivers associated with the SAGE20, radio transceiver/receiver 12 and modem 14. The SAGE driver 15 connects the spectrum activity information generated by the SAGE 20 to a higher-level process, and connects the control to the SAGE 20. The spectrum awareness driver 17 responds to manually or automatically generated control to change the operating parameters of the device or the device network. For example, if the device is an IEEE 802.11 AP, changes in operating parameters may affect changes in the operation of the AP and the STAs associated with the AP. The spectrum awareness driver 17 can respond to control signals to change operating parameters that are not required by the rules of a specific communication protocol, and use a specially designed low medium access control (LMAC) layer associated with a specific communication standard such as IEEE802.11, which Have the control points necessary to adjust those parameters.
[0078] The spectrum awareness driver 17 may receive instructions from more advanced interference algorithms to adjust the transmission rate, storage fragmentation limit, etc. In addition, the spectrum-aware driver 17 can receive instructions to perform dynamic packet scheduling to avoid transmitting information packets that may interfere with time and frequency from another device, dynamic packet fragments, and data "busy" encrypted signals. In addition, the spectrum awareness driver 17 can receive instructions to change the center frequency of the work, the work bandwidth, the data rate, the transmission power, and the like. The spectrum awareness driver 17 generates appropriate control signals to modify any of these operating parameters in the appropriate hardware or firmware of the radio device.
[0079] With reference to FIG. 7, there will be a brief description of the SAGE20o SAGE filed on September 18, 2002 in US Patent No. 10/246,365 entitled "Real-time Spectrum Analysis System and Method in Communication Equipment". Description, all of which are combined here for reference.
[0080] SAGE20 obtains real-time information about activities in the frequency band, and can be implemented as a VLSI accelerator or in the form of software. SAGE20 includes a spectrum analyzer (SA) 22, a signal detector (SD) 23, a snapshot buffer (SB) 24 and a universal signal synchronization device (USS) 25.
[0081] SA22 generates data representing a real-time spectrogram of the bandwidth of the RF spectrum, for example, a spectrum up to 100 MHz processed using Fast Fourier Transform (FFT). Similarly, SA22 can be used to monitor all activities in frequency bands, such as 2.4 GHz or 5 GHz frequency bands. As shown in Figure 7, the data path leading to SA22 includes automatic gain control module (AGC), windowing module, NFFT = 256 point complex FFT module, and spectrum correction module. The windowing and FFT module can support sampling rates up to 120Msps (complex). The windowing module uses Hanning or rectangular windows to perform pre-FFT windowing on I and Q data. The FFT module provides (I and Q) FFT data for each of 256 frequency bins, which span the bandwidth of the frequency band of interest. For each FFT sampling time interval, the FFT module outputs M (such as 10) bits of data for each FFT frequency window, for example, 256 windows. Spectrum correction algorithm corrects sidetone suppression
CN 1663156 Β
And DC offset.
[0082] Inside the SA22 are a low-pass filter (LPF), a linear-log converter, a decimator, and a statistical module. The LPF performs a uniform gain, single-pole low-pass filtering operation on the power value of the signal at each FFT frequency. Use Pfft(k) to represent the power value of the signal at the FFT frequency f(k). Once every FFT period, the low-pass filter output Pgf(k) is updated as follows: Pipf(k,t) = a]·P]pf (k,t) + (la J Kowtowing(41-1), 1 WkW 256, which is a parameter indicating the LPF bandwidth. The linear-logarithmic module at the output of the FFT calculates the decibel value for each FFT value Pipf "Ο PdB(k) = 10*log(|P<sub>lpf </sub>td(k)/) (calculated as dBFS, that is, all dB on the ADC); the decibel value is then converted to absolute power level (dBm) by subtracting the receiver gain control from the dBFS value. PDB(k) is a data field corresponding to the power at multiple frequency windows k. The statistics (stats) module accumulates through the RAM interface I/F26 and saves the following statistical information in the stats buffer of the dual-port RAM (DPR): the frequency of the working cycle in a period of time; the average power in a period of time Vs. frequency; the maximum (max) power vs. frequency in a period of time; and the number of peaks in a period of time. The statistics module gives basic information about other signals around the device running SAGE20. The duty cycle is a continuous count of the number of times the power in the FFT frequency window exceeds the power limit value. The maximum power in a specific FFT frequency window is tracked at any time. The peak histogram tracks the number of peaks detected in the time interval.
[0083] The statistical module has a module for accumulating statistical information of power, duty cycle, maximum power, and peak histograms. The statistical information in successive FFT time intervals is accumulated in DPR. After a certain amount of FFT interval, determined by the configurable value stored in the spectrum analyzer control register, a pair of processor interrupts are generated to make the processor read the statistical information from the DPR to its memory. For example, before the processor reads the value from the DPR, the statistical information of 10,000 FFT intervals is kept in the DPR.
[0084] To accumulate (average) power statistical information, the generated PDB (k) data field is provided to the statistical module. It can be extracted by an optional extractor. The state module adds the power of each frequency window in the previous time interval to the power of the frequency window in the current time interval. The continuous power sum of each frequency window is output to DPR28 as SumPwr statistical information, also known as average power statistical information.
[0085] The work count statistical information is generated by comparing the PDB(k) with the power limit value. Whenever the power of the frequency window exceeds the power limit value, the previous work count statistics information of the frequency window is increased, which corresponds to the work count statistics information (DutyCnt), again, it is the power at the FFT frequency exceeding the power limit value Continuous count of the number of times.
[0086] Maximum power statistics (MaxPwr) are tracked at each frequency window. The current maximum power value of each frequency k is compared with the new power value of each frequency k. Either the current maximum power or a new PDB(k) is output, depending on whether the new PDB(k) exceeds the current maximum power of the frequency.
[0087] The number of peaks detected by the peak detector during each FFT interval is counted, and buffered and saved in the frequency distribution register for output to DPR28. [0088] Each of these statistical information will be described below Detailed Description.
[0089] SD23 discriminates the signal pulses in the received signal data and filters these signals based on their frequency spectrum and temporal characteristics, and transfers the characteristic information about each pulse to the dual port RAM (DPR) 28. SD23 also provides the USS25 module Pulse timing information to allow the USS25 to synchronize its clock with transmissions to/from other devices (for example, to exclude interference with QoS-sensitive ULB devices such as cordless phones, Bluetooth headsets, 802.11-based video devices, etc.). SD23 includes a peak detector and several pulse detectors, such as 4 pulse detectors. The peak detector looks for spectral peaks in the FFT data at its output and reports the bandwidth of each detected peak. Center frequency and power. The output of the peak detector is one or more peaks and related information. Each pulse detector detects and characterizes the signal pulse based on the input of the peak detector.
CN 1663156 Β
[0090] The peak detector detects the peak value of a group of FFT points in the adjacent FFT frequency window, each of which is higher than the set minimum power level. Once each FFT interval has elapsed, the peak detector outputs data describing those frequency windows with FFT values higher than the peak limit value, and it describes which of the adjacent frequency window groups has the maximum value in the group. In addition, the peak detector delivers the power versus frequency window data field for each FFT interval. This can be represented by pseudocode (where k is the frequency window index):
[0091]
PDB<sub>diff</sub>(k) = PDB(k)-SD_PEAKTH;
[0092]
If(PDB<sub>di{f</sub>(k) ^0)
PDB<sub>peak</sub>(k) = PDB(k);
PEAKEN(k) = 1;
Else
PDB<sub>peak</sub>(k) = 0;
PEAKEN(k) = 0;
end
[0093] The peak value outputs the bandwidth, center frequency and power of each detected peak value.
[0094] The pulse detector calculates the relevant limit value based on the configuration information and checks whether the peak value exceeds the relevant limit value. If the peak value exceeds the relevant limit value, it defines the peak value as a pulse candidate. Once a pulse candidate is found, the pulse detector compares the identified pulse candidate with pulse definitions such as power, center frequency, bandwidth, and duration (defined by the pulse detector configuration information). After matching the pulse candidate with the defined pulse associated with the configuration information, the pulse detector declares that the pulse has been detected and outputs the pulse event data (power, center frequency, bandwidth, duration) associated with the detected pulse And start time).
[0095] SB24 collects a set of raw digital signal samples of the received signal for signal classification and other purposes, such as time of arrival measurement. SB24 can be triggered to start sampling collection from SD23 or from an external trigger source using the snap trigger signal SB_TRIG. When the snap trigger condition is detected, the SB24 buffers a set of digital samples and declares an interrupt to the processor. The processor then performs background-level processing on the samples for identifying and locating another device.
[0096] The USS25 detects and synchronizes with periodic signal sources, such as frequency hopping signals (such as BluetoothTM SCO and some cordless phones). The USS25 interference spectrum awareness driver 17 (FIG. 6), which manages the scheduling of packet transmission in the frequency band according to the Media Access Control (MAC) protocol as provided by the IEEE802.11 communication standard. The USS25 includes one or more clock modules, each of which can be configured to track the clock of the signal identified by the pulse detector in the SD23.
[0097] The processor (not shown) interferes with the SAGE20 to receive the spectrum information output by the SAGE20, and controls certain operating parameters of the SAGE20. The processor may be any suitable microprocessor, which may be located on the same semiconductor chip as SAGE20 or on another chip. The processor interferes with SAGE20o through DPR28 and control register
[0098] The control register 27 includes registers that enable the processor to configure, control, and monitor the SAGE20. There are control/status register, interrupt enable register, interrupt flag register, spectrum analyzer control register, signal register control register, snapshot buffer control register and USS control register.
[0099] Referring again to FIG. 6, at the next higher level, there are a measurement engine 50, a classification engine 52, a location engine 54 and a frequency spectrum
CN 1663156 Β
Π/75 page expert 56. These processes can be executed by software. The spectrum activity information used by any of the processes 50, 52, and 54 may originate from a communication device operating in the frequency band and/or from one or more spectrum sensitive elements located at different locations in the area of interest (Fig. 1) For example, sensitive components are located on the periphery or other locations of commercial or other facilities. In addition, the measurement engine 50, the classification engine 52, and the spectrum expert 56 may be executed locally in a device working in the radio frequency band, such as AP, or remotely executed in a server computer, such as a server 1055 or a network management station 1090 as shown in FIG. 1.
[0100] The measurement engine 50 collects and aggregates the output from the SAGE 20 and normalizes the data into meaningful data units for further processing. In particular, the measurement engine 50 accumulates statistical information of the output data from SAGE20 over a period of time to track the average power, maximum power, and duty cycle of each of the multiple frequency windows in the entire frequency band, and other statistical information described below . In addition, the measurement engine 50 accumulates the pulse event data of the signal pulses output by SAGE that meets the set standard. Each pulse event may include data on power level, center frequency, bandwidth, start time, duration, and end time. The measurement engine 50 can build a histogram of signal pulse data, which is useful for signal classification, examples of which will be described below. Finally, the measurement engine 50 accumulates the original received signal data (from the snapshot buffer of SAGE20) for position measurement in response to higher-level instructions from the architecture. The measurement engine 50 can maintain a short-term storage of spectrum activity information. In addition, the measurement engine 50 can gather information about wireless networks operating in the radio frequency band, such as IEEE802. 11Statistics of WLAN performance. The exemplary output of the measurement engine 50 is described below in conjunction with the network spectrum interface. Illustrated examples of the output of the measurement engine 50 are shown in FIGS. 21-25. In addition, more advanced applications can respond to user instructions (through an appropriate user interface) to monitor the data and statistical information of the measurement engine to determine whether there is a device or device network performance degradation. Based on the determined cause of the performance degradation, certain actions can be recommended or taken automatically.
[0101] In response to requests from other software programs or systems (network spectrum interface, classification engine 52 or location engine 54 as described below), measurement engine 50 responds to configure SAGE 20 (via SAGE driver 15) and/or radio 12, Depending on the data type requested, run SAGE20 with those configurations, and use one or several responses from several data types generated by processing the data output by SAGE20.
[0102] The classification engine 52 compares the output of the SAGE 20 (accumulated by the measurement engine 50) with the data template and related information of the known signal to classify the signal in the frequency based on the energy pulse information detected by the SAGE. The classification engine 52 may detect signals that interfere with the operation of one or more devices (eg, occupy or appear in the same channel as a device operating in an unlicensed frequency band). The output of the classification engine 52 includes the type of signal detected in the frequency band. The classified output can be, for example, "cordless phone", "frequency hopping device", "frequency hopping cordless phone", "microwave oven", "802. llx WLAN device" and so on. The classification engine 52 can compare the signal data provided by the measurement engine with an information database of known signals or signal types. The signal classification database can be updated with reference data of new equipment using the frequency band. In addition, the classification engine 52 can output information describing one or more of the center frequency, bandwidth, power, pulse duration, etc. of the classified signal, which can be easily obtained directly from the output of the signal detector of SAGE. This is particularly useful for classifying signals that are determined to interfere with the operation of other devices in the frequency band.
[0103] Examples of signal classification techniques are described in detail in US application 10/246,364 filed on September 18, 2002, entitled "Signal Classification System and Method for Signals in Frequency Bands", all of which are incorporated herein. for reference. These signal classification techniques that can be used are based on pulse histograms, pulse time signals and other customary algorithms. Examples of which are described in the aforementioned pending patent applications and briefly described in conjunction with FIGS. 8 and 9. It should be understood that other signal classification techniques are also known in the prior art.
[0104] FIG. 8 shows exemplary signal pulses of signals that may be present in the frequency band. This consists of pulses 1-6
CN 1663156 Β
ΙΕΕΕ802. lib signal activity. Pulses 1, 3, and 5 are forward channel 802.lib transmissions, and pulses 2, 4, and 6 are confirmation signals. There are also frequency hopping signals, such as BluetoothTM SCO signals including pulses 7-14. The timing, intensity, and duration of the signal are not shown in accurate proportions. The pulse event data for signal pulses 1-6 is generated by, for example, a suitably configured pulse detector. The pulse event data for signal pulses 7-14 is generated by another suitably configured pulse detector. The signal pulse data for the two types of signals are accumulated at any time. The signal pulse data can be accumulated in different histograms. In addition, spectrum analysis information can be derived from signal activity in the frequency band, and this information can be used to generate the number of different transmissions that appear in the frequency band in a given period of time by comparing the power values at different frequencies in the same period of time ( Above the limit value) is counted.
<td>[0105]</td><td colspan="2">Examples of pulse event data generated for the exemplary pulse shown in FIG. 8 are provided below.</td>
<td>[0106]</td><td>Pulse 1</td><td></td>
<td>[0107]</td><td>SDID:</td><td>1 (Identification pulse detector 1)</td>
<td>[0108]</td><td>Pulse bandwidth:</td><td>11MHz</td>
<td>[0109]</td><td>Center frequency:</td><td>37MHz</td>
<td>[0110]</td><td>Pulse duration:</td><td>1. 1msec</td>
<td>[0111]</td><td>power:</td><td>-75dBm</td>
<td>[0112]</td><td>Pulse 2</td><td></td>
<td>[0113]</td><td>SDID:</td><td>1</td>
<td>[0114]</td><td>Pulse bandwidth:</td><td>11MHz</td>
<td>[0115]</td><td>Center frequency:</td><td>37MHz</td>
<td>[0116]</td><td>Pulse duration:</td><td>200 microsec</td>
<td>[0117]</td><td>power:</td><td>-60dBm</td>
<td>[0118]</td><td>Pulse 3</td><td></td>
<td>[0119]</td><td>SDID:</td><td>1</td>
<td>[0120]</td><td>Pulse bandwidth:</td><td>12MHz</td>
<td>[0121]</td><td>Center frequency:</td><td>37MHz</td>
<td>[0122]</td><td>Pulse duration:</td><td>1. 1msec</td>
<td>[0123]</td><td>power:</td><td>-75dBm</td>
<td>[0124]</td><td>Pulse 4</td><td></td>
<td>[0125]</td><td>SDID:</td><td>1</td>
<td>[0126]</td><td>Pulse bandwidth:</td><td>11MHz</td>
<td>[0127]</td><td>Center frequency:</td><td>37MHz</td>
<td>[0128]</td><td>Pulse duration:</td><td>200microsec</td>
<td>[0129]</td><td>power:</td><td>-60dBm</td>
<td>[0130]</td><td>Pulse 5</td><td></td>
<td>[0131]</td><td>SDID:</td><td>1</td>
<td>[0132]</td><td>Pulse bandwidth:</td><td>13MHz</td>
<td>[0133]</td><td>Center frequency:</td><td>37MHz</td>
<td>[0134]</td><td>Pulse duration:</td><td>18msec</td>
<td>[0135]</td><td>power:</td><td>-75dBm</td>
CN 1663156 Β
<td>[0136]</td><td colspan="2">Pulse 6</td>
<td>[0137]</td><td>SDID:</td><td>1</td>
<td>[0138]</td><td>Pulse bandwidth:</td><td>11MHz</td>
<td>[0139]</td><td>Center frequency:</td><td>37MHz</td>
<td>[0140]</td><td>Pulse duration:</td><td>200microsec</td>
<td>[0141]</td><td>power:</td><td>-60dBm</td>
<td>[0142]</td><td colspan="2">Although not listed above, the start time of the pulse is also included in the information of each pulse, thus enabling</td>
Calculate the time between consecutive pulses detected by the pulse detector.
[0143] The pulse event data of pulses 7-14 are very similar to pulses 1-6 except for the center frequency. For example, the pulse 7-14 may have a pulse width of 1 MHz and a pulse duration of 350 microseconds, and the center frequency will vary in almost the entire range of the 2400 MHz to 2483 MHz frequency band. The SDID of pulse 7-14 is 2 because pulse detector 2 is configured to detect these pulse types.
[0144] FIG. 9 generally shows how the accumulated signal pulse data is compared with reference data. The accumulated signal pulse data is used to compare the signal pulse data of the classified signal with the reference or digest signal pulse data of the known signal. Each histogram of the accumulated signal pulse data is compared with the similar histogram of the reference signal pulse data. The degree of matching between the accumulated signal pulse data and the reference signal pulse data can be adjusted, and for some reference signal pulses, relative to other signal pulse data, it can be found that some pulse data are very close. match. To this end, each reference data group may have its own matching criteria that must be met in order to finally declare a match. For example, when comparing the accumulated signal pulse data with BluetoothTM SCO signal reference data, in order to declare a match, the pulse duration, bandwidth, and time between the two pulse histograms must match very accurately. A scoring system can be used, and digital values are assigned to the comparison results between each signal feature. For some signal types, if the total digital value (such as the total score) is at least as large as a certain value, a match can be declared. Additional constraints may also require that certain signal characteristics must have a minimum degree of matching.
[0145] Reference data for various signals of usable frequency bands can be obtained from actual measurement and analysis of those devices, and/or from information databases provided by regulatory agencies such as the Federal Communications Commission (FCC) in the United States. The FCC can maintain a database of transmission parameters for each device that is allowed to operate in the frequency band and make it publicly available. Examples of such parameters are:
[0146] Operating frequency range
[0147] Selection (bandwidth) and characterization of spectrum communication channels:
[0148] Frequency hopping: frequency hopping rate and frequency hopping center frequency
[0149] Fixed channel: channel center frequency
[0150] Symbol rate
[0151] Modulation mode (such as QPSK, OFDM, QAM,...)
[0152] Transmission spectrum shielding
[0153] Transmission power level
[0154] Transmission on/off time characterization
[0155] Minimum and maximum "on" time
[0156] Minimum and maximum "off" time
[0157] The time slots between channel channels, if appropriate
[0158] The comparing step may involve comparing the pulse timing signal of the known signal with the accumulated signal pulse data (usually in a relatively short period of time) to determine whether there is a match within certain predetermined and adjustable tolerances . Image
CN 1663156 Β
The paradigm is like sliding the pulse timing template of the known signal along the accumulated pulse data of the unknown signal to determine if it matches enough. Pulse timing signals can provide a special representation of a device or a class of devices. They are very useful for classifying signals with very strict timing properties.
[0159] The accumulated pulse data of a specific pulse may imply that it belongs to a specific type, but it is not necessarily limited. For example, the suggestive feature of the 802.11 signal is the appearance of signal pulses with a very short duration, which is not more than 200 microseconds, and the time between pulses is not more than 20 microseconds. However, the additional data (center frequency and bandwidth) is not enough to confirm that it is an 802.11 signal. Therefore, pulse timing signal analysis (that is, pattern formation) is performed on the pulse data. For example, the pulse timing analysis of the 802.11 signal focuses on identifying two signal pulses on the same center frequency that are separated by no more than 20 microseconds, and the second signal pulse (802. 11ACK pulse) is no more than 200 Microseconds. The duration of the first pulse of the 802.11 signal is not particularly relevant to this analysis.
[0160] A similar analysis can be performed on the pulse data versus pulse signal information of the BluetoothTM SCO signal, where the activity consists of two energy pulses (pulses) that are very close in time. The energy associated with the first pulse may appear at one frequency in the frequency band, and the energy associated with the second pulse may appear at another frequency in the frequency band, which is separated from the first pulse by a time interval, which is consistent with Reproduce on the basis of. In fact, the BluetoothTM SCO signal is representative of many unlicensed band devices that use frequency hopping sequences and include a second device (such as the "primary" device) after an accurate period of time after the transmission of the first device (such as the "primary" device). "Slave" device) for transmission. The time interval between the leading or trailing edge of the first pulse and the leading edge of the second pulse is usually very consistent. The duration of the two pulses can be quite short. In addition, the time interval between the leading edge of the second pulse and the leading edge of the next first pulse can be very consistent o BluetoothTM ACL transmission is quasi-periodic, which at some point appears to be periodic and similar to The timing signal transmitted by BluetoothTM SCO is sometimes not.
[0161] If the spectrum information is derived from sampling of a part of the frequency band instead of the entire frequency band, the pulse timing signal analysis of the frequency hopping signal is slightly different. For example, when the frequency hopping signal is likely to appear anywhere in the frequency band, such as the 2.4GHz band, if only the data of the 20MHz part of the frequency band is provided as input to the classification process, the signal pulse data will show a relatively small percentage of the frequency hopping. The pulse of the signal. The pulse timing signal analysis can thus be adjusted.
[0162] When more than one device is transmitting in the frequency band, it is particularly useful to use pulse timing signal analysis to classify the signal. The pulse timing signal information of the signal can be represented by data describing the characteristics of the pulse, such as the pulse duration, the time between pulses, and so on. This information can then be compared with similar pulse timing signal information to determine if there is a match.
[0163] Both the measurement engine 50 and the classification engine 52 can generate spectrum events that are reported to a higher-level software program or system. For example, based on the analysis of spectrum activity information generated by SAGE20, reports of specific types of events, such as BluetoothTM devices being turned on or off in the frequency band, or cordless phones are working. These spectrum events will be described further below.
[0164] Referring again to FIG. 6, the location engine 54 calculates the physical location of the device operating in the frequency band. An example of a position measurement technique includes using the snapshot buffer data collected by the measurement engine 50 to perform two or more known positions (e.g., at the signal transmitted by the device to be positioned and another reference signal (e.g. AP)). The time difference of arrival (TD0A) of two or more STAs is measured to determine the location of various devices (such as interference signals) operating in the frequency band. At some point, simply moving the interfering signal to a different location can solve a transmission problem that another device or device network may be experiencing. The location engine 54 can collate measurement results obtained from multiple locations in the network. An example of a location engine is described in the US application 60/319, 737 entitled "System and Method for Locating Wireless Devices in Asynchronous Wireless Networks" filed on November 27, 2002, all of which are combined here with for reference. Use TD0A and time of arrival (T0A) measurements to determine
CN 1663156 Β
A large number of other technologies for the location of wireless radio communication devices are known in the prior art and can also be used for location engines.
[0165] Alternatively, the location engine 54 may be located in software "above" the network spectrum interface (NSI) 70. When an interference condition in the frequency band is detected, the spectrum expert 56 or the network expert 80 may order the location engine 54 to physically locate the source of the interference signal. The output of the location engine 54 may include location information, power level, device type, and/or device (MAC) address. The security service 82 may instruct the location engine 54 to locate fraudulent devices that may have security issues.
[0166] The spectrum expert 56 is a process of optimizing the work of a device operating in a frequency band, assuming that the knowledge about the activity in the frequency band is obtained by the measurement and classification engine. For example, the spectrum expert 56 processes data from SAGE20 and optional statistics from specific wireless networks operating in frequency bands, such as IEEE 802.11x networks, to make recommendations to adjust parameters of the device or automatically perform those adjustments in the device. The spectrum expert 56 may be a software program to be executed, for example, executed by a host device connected to an AP, a server, or a network management station (FIG. 1). Parameters that can be adjusted (manually or automatically) based on the output of the Spectrum Expert 56 include channel, transmission power, memory fragmentation limit, RTS/CTS, transmission data rate, CCA limit, interference avoidance, etc. Other examples of interference mitigation techniques are described in the US application 10/24 & 434 entitled "Interference mitigation system and method for periodic interference signals in short-range wireless applications" filed on January 20, 2003, all of which are combined Here for reference. The spectrum expert 56 may turn on triggers for alarm conditions in the frequency band, such as detection of signals that interfere with the operation of equipment or equipment networks operating in the frequency band, to automatically report alarm information and/or adjust parameters in the equipment in response thereto. For example, the spectrum expert 56 may work to control or suggest the control of a single WLAN AP.
[0167] The spectrum expert 56 is a critical information decision maker. The spectrum expert 56 (and/or the network expert described below) can determine what kind of alarm and/or control to generate based on the spectrum policy information. Spectrum policy information is an information body, which defines corresponding alarms and/or controls based on the determined conditions that will appear in the frequency band. This body of information is updatable to take into account new equipment operating in the frequency band and/or changes in the rules regarding the requirements of the frequency band. In addition, the spectrum expert 56 can decide to act, how to act, or not to act. For example, a spectrum expert may decide to interfere with another signal or decide not to interfere. Examples of how spectrum policies can be applied are described below.
[0168] The spectrum expert 56 can use the spectrum activity information to intelligently control the IEEE802.11 WLAN parameters in the AP. [0169] 1. Measuring the quality of the received signal and the information about the interference signal may require adjustment of the AP and/or STA transmission data rate.
[0170] 2. Tracking packet errors and SAGE pulse data may require adjustment of the storage fragmentation limit.
[0171] 3. The detection in the statistical information of the packet sequence indicating the hidden node may require the execution of the RTS/CTS sequence. RTS/
The CTS sequence is used as a "transmission confirmation system" and is turned off when possible, such as in a low-noise environment, because it slows down the transmission, but it can be activated when necessary, such as to discover STAo
[0172] 4. Using the SAGE spectrum analysis data, the AP can be controlled to select a new and cleaner channel.
[0173] 5. The use of SAGE-related data and signal classification data indicating interference signals may require adjustment of the transmission power of the AP.
[0174] 6. Perform actions based on the specific device type or even the recognized brand and device model (through snapshot buffers and other spectrum data).
[0175] Generally, the spectrum expert 56 can be executed in a radio device, which controls itself (in the case of an AP) while controlling the behavior of several other radio devices associated with it. These types of decisions and controls are called local policy decisions or controls because they affect a device or a particularly limited group of devices. The network expert 80 described below can make wider types of policy decisions and controls, such as those that affect the entire network of devices (multiple APs in WLAN and other
CN 1663156 Β
Our associated STA) ο
[0176] A sensitive element overlay network composed of one or more spectrum sensitive elements 1200(1) to 1200(n) can generate spectrum activity information, which is provided to a server that controls devices operating in the frequency band. For example, signal detection is performed at the sensor level, and measurement and accumulation can be performed at the sensor level or on the main processor of the AP. The spectrum expert is executed on the main processor of the main device, which is connected to the AP and used to control the AP. Signal detection is performed at the sensor level, and measurement and accumulation can be performed at the sensor level or on the main processor of the AP.
[0177] The level of abstraction in which the measurement engine 50, the classification engine 52, and the spectrum expert 56 are located may be referred to as the "spectrum" or "spectrum awareness" level in the following.
[0178] The NSI 70 shown in FIG. 6 interferes with the measurement engine 50, the classification engine 52, the location engine 54, and the spectrum expert 56 process (and lower-level drivers) to higher-level services. NSI70 is used as an application programming interface (API), which can be implemented by application programs (on one or more computer-readable media) to approximate the spectrum analysis functions of these processes. The end user orders on demand to check the spectrum knowledge or activity information that can be received from the application at a specific device, and the NSI converts the command into a request for a specific spectrum analysis function from one of the processes. It is also possible to have an interaction between the measurement engine 50, the classification engine 52, the location engine 54 and the spectrum expert 56, which uses an interface similar to the NSI70. In addition, the physical location of the modules in FIG. 6 is not meant to limit the possible logical arrangement of these functions, applications or processes. For example, NSI can be used to connect any one or more of the modules shown in Figure 6 with the measurement engine, classification engine, and/or spectrum analysis function of the spectrum expert. In addition, there may be fewer formal interfaces or connections between any two processes shown in Figure 6.
[0179] The level of abstraction just at the NSI70 level can be referred to as the "network" level. At the network level, there may be various services. For example, there are network experts 80, security services 82, location services 86, and data mining services 88. The software located on the NSI, although separately identified and described below, can also be collectively and generally referred to as network management software (NMS), which can be executed by the network management station 1090 (FIG. 1).
[0180] The network expert 80 is similar to the spectrum expert 56, but it works at a higher level, such as spanning multiple WLAN APs such as AP1050(1) to IJ1050(n) and their related STAs, as shown in FIG. 1. The network expert 80 optimizes the network based on usage cost, capacity, and QoS. The network expert 80 can make suggestions to the network administrator or automatically adjust parameters in one or more wireless networks. For example, the network expert 80 can control or suggest parameters: AP and AP antenna arrangement, AP channel allocation, load balancing of STAs across APs (allocate STAs to different APs based on network load conditions), transmission power, and RTS/CTS parameter. In addition, network experts can notify network administrators or network management applications of interference detected anywhere in the network. The network expert 80 can optimize the coverage of devices in the wireless network, which is achieved by allocating STAs to APs, which can provide the best throughput and reliable communication connections. The spectrum activity information processed by the network expert can originate from APs working in the frequency band or from one and/or more spectrum sensitive elements located at different locations in the area of interest, The location may be in the periphery of a commercial enterprise or other facility or other location. The network expert 80 may also have triggers to generate warning messages when certain conditions are detected. A WLAN AP with spectrum monitoring capabilities (and control capabilities) can add any spectrum information provided to it by any WLAN STA associated with it to its spectrum knowledge. However, the network expert 80 may have a more global view of the spectrum activity of the entire area of the unlicensed frequency band, which may include multiple wireless networks of the same or different types (such as IEEE 802.11 WLAN>WPAN>BluetoothTM, etc.) . In turn, the WLAN AP can notify its associated STAs of the spectrum monitored by the AP<sub>O</sub>
[0181] The network expert 80 can use the spectrum measurement data to optimize 802.11 protocol functions, such as channel scanning, where SAGE20 analyzes the data of the entire frequency band to output information so that the classification engine 52 can identify what appears in other channels; channel selection / Load balancing, in which SAGE20 aggregates full-band statistics for channel utilization. Advantages of these technologies
CN 1663156 Β
It is faster channel acquisition, faster channel delivery, and STA-based load balancing.
[0182] The network expert 80 works on the basis of spectrum activity information obtained from a wider area such as the network. One way to obtain this information is through multiple cognitively-enabled APs, each of which is connected to a server that executes the network expert 80. Alternatively, or in addition, a sensitive element overlay network composed of one or more spectrum sensitive elements 1200(1) to IJ 1200(n) is configured in the entire network or area of interest. The network expert 80 executes and controls or is connected to control the AP on a server connected to the sensitive element, such as managing an application through a WLAN. Signal detection is performed at the sensitive element level, and measurement and classification can be performed at the sensitive element level or on the server.
[0183] The network expert 80 may be connected with a general network management system, such as a system supported by the network management station 1090 shown in FIG. 1. A general network management system can control the enabling, disabling, and configuration of network components such as APs. The system integration module 90 (described below) can connect the network expert 80 with the general network management system to allow the network expert 80 to be notified of changes in the general network management system, and to notify the changes in the wireless network such as channel allocation and STA association General network management system.
[0184] Thus, the network expert 80 can make wider types of policy decisions and controls. In addition, the network expert 80 can serve as a higher level of control for multiple situations of the spectrum expert 56. Each spectrum expert is associated with a device that is part of a larger network or regional device deployment. The bar graph is shown in Figure 28, which will be described below. If this is done, the network expert 80 must consider the local policy decisions and controls made by the spectrum expert 56 within its scope. The network expert 80 will preserve and maintain local policy decisions and controls made by its spectrum expert 56. The network expert 80 can make a regional policy decision or control or a network policy decision or control. The regional scope decision is about activities that appear in a specific "area" or activities that are controlled on-site by some but not all spectrum experts 56 within the scope of network experts. The network-wide decision is about activities that occur across the entire network across all areas or sites where the network exists. When making regional or network-wide decisions, network experts 80 can make these decisions so that they do not interfere with local policy decisions or controls made by spectrum experts 56, or can make certain decisions that replace certain local decisions . For example, a specific AP under the control of a network expert may be experiencing occasional interference on a specific channel at a certain time of the day, and similarly, it is adjusted (for example, by the spectrum expert 56) to move to during that time of the day Another channel. The network expert 80 can make decisions based on other information The specific AP must be permanently moved to a specific channel. This may conflict with the occasional need for the AP to stay away from the channel at certain times of the day. Therefore, the network expert 80 will modify its decision to move the AP to the channel to respect the local policy at the AP. When considering local policy decisions, the network expert 80 can modify its decision to avoid network or regional behavior "oscillation".
[0185] The security service 82 provides security information based on spectrum activities and related information generated at a lower level. For example, the security service 82 can detect when there is a denial of service attack on more than one device working in the frequency band or on the network, detect "parking lot" attacks, find the location of fraudulent devices such as unauthorized APs, and perform RF" "Fingerprint" identification to determine whether there is a device disguised as an authorized device (such as a station or AP).
[0186] Denial of service attacks can be detected by examining spectrum activity information to find large-bandwidth noise signals that can interfere with one or more signals in the frequency band. If the noise signal continues during a very important time period, the security service can announce that a denial of service attack is being carried out on one or more wireless networks operating in the frequency band. Alarm messages or reports can be generated to notify the network administrator of the situation and describe the attack (approximate location of the source, power level, frequency bandwidth, time of occurrence, etc.).
[0187] A parking lot attack is when a user of a wireless network device receives and/or transmits signals on the wireless network without authorization, such as placing the wireless device close to the working network enough to receive and/or transmit signals on the network , Assuming it can get past encryption interference or encryption is not enabled on the network. If the user of the device only listens to the transmitted message
CN 1663156 Β
Number, there may be no way to detect it. However, if the physical boundary (two-dimensional or three-dimensional) of the service network can be constructed around the AP, the location engine 54 can be used to determine whether the device is outside the physical boundary, which indicates that unauthorized devices may attempt to access Information stored on the server connected to the AP's wired network.
[0188] Unauthorized equipment (such as AP) can be detected by checking the transmission of the equipment and the information contained in the transmission (such as the IEEE802.11 Service Set Identifier (SSID)) used from it. The SSID is relative to Whether the stored set of valid SSIDs is valid can be determined. If the AP is operating in the frequency band with an invalid SSID, the security service 82 may instruct the location engine 54 to determine the location of the AP.
[0189] If a security-related breach is detected on one or more wireless networks or devices operating in the frequency band, the security service 82 can generate real-time alarm information to the network administrator. In the case of detecting a potential parking lot attack, a program can be set up to require the user of a device outside the boundary (or the device itself) to provide the AP with a security code to confirm that it is an authorized device. A device that cannot provide this code is considered an unauthorized device, and the service for that device is terminated. Alarm information can also be generated to notify the network administrator to further investigate the user.
[0190] Another way to manage security in a wireless network is to save the RF signal of each authorized device, such as the RF signal of each authorized STA or AP. RF signals can be created by capturing the detailed signal pulse characteristics of each authorized device, which are obtained using SAGE-enabled devices, and the information describing these characteristics is stored in the database. Whenever a STA associates with an AP, its signal pulse characteristics can be compared with the information database to determine whether it is an authorized device. This program protects the users of the STA from obtaining a valid MAC address (by listening to the transmission in the WLAN) and from using the MAC address to pretend to be the STA<sub>O</sub>Even if the MAC address will be valid, the RF fingerprint of the rogue device will likely not match the RF fingerprint of the authorized device stored in the database.
[0191] The location service 86 provides a value-added service to the location measurement performed by the location engine 54. An example of these services is an overlay. An example is shown in Figure 10, which quickly transmits sound on the IP device, finds the printer closest to the device, finds the missing device, and executes the accident location (E911). As another example, the location service 86 may process spectrum information from multiple points or nodes (multiple spectrograms) in the area of an unlicensed band implementation (such as an enterprise) and compile the information into an easy-to-understand format.
[0192] The data mining service 88 includes capturing spectrum activity information (and optionally output from spectrum experts) for long-term storage in a database. By using queries to analyze non-real-time spectrum activity information, network administrators can determine different situations such as when interference is the problem during the day, and what area of the work area has the heaviest spectrum load.
[0193] Above the network level are the system integration module 90 and the user interface (UI) module 92. The system integration module 90 connects data from any service down to other applications, protocols, software tools or systems, and is generally referred to as a network management application 94. For example, the system integration module 90 can convert the information into an SNMP format. The functions performed by the system integration module 90 are specified by specific applications, protocols, systems, or software tools that want to work with the following services. The network management application 94 may be executed by the network management station 1090 (FIG. 1) to manage wired and wireless networks. UI92 can provide a graphical, audio or video type interface of information generated by any of the following services for people to consume. Examples of graphical user interfaces for spectrum activity information and alarm information are shown in Figure 16-25, which will be described below. These advanced processes can be performed on a computer device far away from where radio frequency band activity occurs. For example, the network management application 94 may be executed by a network management station 1090 located in a central monitoring or control center (telephone service provider, cable Internet service provider, etc.), which is connected to sensitive component devices, APs, etc. A wide area network (WAN) connection such as the Internet, dedicated high-speed wired connection, or other long-distance wired or wireless connection control equipment (such as AP).
[0194] Any device that receives radio frequency energy in the frequency band of interest can be equipped with SAGE20 to generate spectrum activity
CN 1663156 Β
information. Fig. 11 shows an example of such a cognitive radio device. The communication device includes a radio 12, which down-converts the received radio frequency energy and up-converts the signal for transmission. The radio 12 may be a narrowband radio or a radio capable of broadband and narrowband operation. An example of a broadband radio transceiver was filed on April 22, 2002, entitled "System and Architecture of Wireless Transceiver Using Synthetic Waveform and Spectrum Management Technology" in the United States Provisional Application 60/374, 531 and October 2002. It is published in U.S. application 10/065, 388 entitled "Multi-input multi-output radio transceiver" filed on 11th. The baseband part (which may include or correspond to the modem shown in FIG. 6) is connected to the radio 12 and performs digital baseband processing of the signal. One or more analog-to-digital converters (ADC) 18 convert the analog baseband signal output of the radio 12 into digital signals. Similarly, one or more digital-to-analog converters (DAC) 16 convert the digital signals generated by the baseband section 14 for up-conversion of the radio 12. Referring to Figure 6, SAGE20 is represented as receiving input from ADC18.
[0195] A processor 30 may be provided, which is connected to the baseband portion 14 and the SAGE 20. The processor 30 executes instructions stored in the memory 32 to perform several software spectrum management functions, which are described herein as "monolithic" or "embedded" software functions. Therefore, some software stored in the memory 32 is referred to herein as monolithic or embedded software. Examples of monolithic or embedded software functions are the SAGE driver 15, the spectrum awareness driver 17, and the measurement engine 50, although the additional processes shown in FIG. 6 such as the classification engine 52, the location engine 54 and the spectrum expert 56 can be executed by the processor 30. The phantom line shown in FIG. 11 means to point out that several or all of those elements enclosed therein can be manufactured in a single digital application specific integrated circuit (ASIC). The processor 30 also performs MAC processing associated with the communication protocol. The larger boxes around the radio and other components are meant to indicate that these elements can be implemented in a network interface card (NIC) form factor. The processor 30 may have the ability to generate traffic statistics about the specific communication protocol used by the device. Examples of IEEE802. 11 traffic statistics are described below.
[0196] A main processor 40 may be provided, which is connected to the processor 30 through a suitable interface 34. The main processor 40 may be a part of a main device, such as a personal computer (PC), a server 1055, or a part of a network management station 1090 (FIG. 1). The memory 42 stores host or "off-core" software to perform more advanced spectrum management functions. Examples of processes executable by the main processor 40 include a measurement engine 50, a classification engine 52, a location engine 54, and a spectrum expert 56. In addition, the main processor 40 can execute even higher-level processes, such as the network expert 80 and lower-level processes.
[0197] The communication device shown in FIG. 11 may be a part of or correspond to various devices operating in a frequency band, such as an IEEE802.11 WLAN AP or STA. The communication device can share information with a computer remote from it, such as a server 1055 or a network management station 1090 as shown in FIG. 1. The remote computer may have wireless communication capability (or be connected to a communication device by a cable through another device with wireless communication capability). The software that executes the system integration module 90 and UI92 (FIG. 6) may be executed by the main processor 40 or by the remote computer such as The server 1055 or the remote network management station 1090 executes it. [0198] The cognitive radio device as shown in one of FIG. 11 can detect, measure, and classify activities occurring in the frequency band, and through functions such as the spectrum expert 56, can make intelligent decisions about whether to change any of its operating parameters , Operating parameters such as operating frequency, transmission power, data rate, packet size, transmission timing (to avoid other signals), etc. In addition, a radio device can detect, measure, and classify activities in a frequency band in response to a control generated on the basis of information generated by another radio device.
[0199] FIG. 12 shows a simplified diagram of a spectrum sensitive element (such as spectrum sensitive elements 1200(1) to 1200(n), mentioned above in conjunction with FIG. 4). The spectrum sensitive element is a radio device that receives signals in the frequency band of interest. In this sense, the spectrum sensitive element is a spectrum monitor, and can also detect, measure and classify to provide spectrum information, which is provided to other radio equipment, network control applications, etc., which can control the entire device The work of the network. Spectrum
CN 1663156 Β
The sensitive element includes at least one radio receiver capable of down-converting the signal in the frequency band of interest, either in a wideband mode or in a scanning narrowband mode. If possible, as shown in Figure 12, the spectrum sensitive components include two radio receivers 4000 and 4010 (dedicated to different unlicensed frequency bands) or a dual-band radio receiver. There is an ADC18, which converts the output of the radio receiver into a digital signal, which is then connected to SAGE20 or other equipment capable of generating signal pulses and spectrum. The DAC16 can be used to provide control signals to the radio receiver via the switch 4020.
[0200] The interface 4030, such as Cardbus, Universal Serial Bus (USB), mini-PCI, etc., connects the output of the SAGE20 and other components to the main device 3000. There is an optional embedded processor 4040 to perform native processing (measurement engine 50, classification engine 52, location engine 54 and spectrum expert 56 as shown in Figure 6), and an Ethernet module 4050 to connect to a wired network>FLASH Memory 4060 and SDRAM 4070. There is also an optional lower level MAC (LMAC) logic module 4080 associated with a specific communication protocol or standard ("Protocol X") or a modem 4090 associated with Protocol X. The protocol X can be any communication protocol that works in the frequency band, such as the IEEE802. llx protocol. The device can support multiple protocols. Many modules can be integrated in a digital logic gate array ASIC. The LMAC logic 4080 and modem 4090 can be used to track the communication throughput on protocol X and generate traffic statistics. The larger boxes around the radio and other components are meant to indicate that the spectrum sensitive component device can be implemented in the NIC form factor for PCI PC card or mini-PCT configurations. Or, to save embedded processors, many of these components can be implemented directly on the processor/CPU motherboard.
[0201] The main device 3000 may be a computer with a processor 3002 and a memory 3004 to process spectrum activity information provided by the spectrum sensitive element via a wired network connection, a USB connection, or even a wireless connection (such as an 802.11x wireless network connection). The display monitor 3010 may be connected to the main device 3000. The memory 3004 in the host device can store a software program, which corresponds to the aforementioned embedded software and/or host software (used in the process shown in FIG. 6). In addition, the memory 3004 can store driver software for the main device, such as a driver for operating systems such as Windows operating systems (Windows® XP, Windows® CE, etc.). The main device 3000 can be a desktop or notebook personal computer or a personal digital assistant, or a computer device located locally or far away from the spectrum sensitive element, or the server 1055 or the network management station 1090 shown in FIG. 1.
[0202] In some forms of spectrum sensitive components, there is SAGE20, but there are no other processing components, such as embedded processors. Sensitive components should be connected to the processor in the main device or remote server, where the output of SAGE20 is processed to perform signal measurement/accumulation, classification, etc. This may be desirable for low-cost spectrum sensitive components to be used as part of a sensitive component overlay network, where most of the signal processing is performed at one or more centrally located computing devices.
[0203] Another change is to implement the functions of SAGE20 in the software on the main processor 3002. The ADC output of any one or more devices working in the frequency band (especially those devices with broadband capable radio receivers) can be provided to the main processor, where the above-mentioned spectrum management functions are all executed in software, such as Measurement engine, classification engine, etc. For example, the output of the ADC 18 may be connected to the main processor 3002 across any interface shown in FIG. 12, which executes the SAGE process and one or more other processes in software.
[0204] The spectrum sensitive element can be configured in any device located in an area where work occurs in an unlicensed or shared frequency band. For example, it can be located in a consumer's device such as a video camera, home theater, PC peripherals, and so on. Any other device connected to the spectrum sensitive element can obtain the spectrum knowledge learned by the spectrum sensitive element and will add to any knowledge about the spectrum itself that it can learn from its own spectrum monitoring capabilities, if supported. In addition, the spectrum knowledge learned by a local device (such as a PC) from a remote device can be used to configure and/or diagnose the work at the local device (such as a PDA) and the remote device.
[0205] The LMAC logic 4080 may be implemented in software executed by the embedded processor 4040. Software implemented LMAC
CN 1663156 Β
One advantage is that it is easier to generate additional statistical information associated with protocol X compared to the firmware implementation. These statistics can be accumulated by software counters and allocated storage locations in the LMAC software. Examples of additional IEEE 802.11 statistical information that can be generated by the radio device shown in FIGS. 11 and 12 will be described below. Some of these statistics are good indicators of performance degradation in devices such as WLAN AP or WLAN STA, and can be used to automatically initiate corrective actions or controls, or generate information to warn users/network administrators, software applications Wait. Many of these statistics can be provided by a 32-bit counter, but only as short as 5 minutes. The software from the main drive can periodically poll these counters and convert them into 64-bit counters (wrap time of 43 Kyears), which will reduce single-chip storage requirements.
[0206] An example of additional IEEE 802.11MB extensions for STAs that can be provided from the statistical information generated by the LMAC logic is explained below. These statistics can be used to determine general channel problems and problems affecting a subset of STAs, such as those based on location and local interference signals. For example, these statistics can point out packet error rate (PER) information and provide insights into possible types of interference signals, and can be used to help adjust memory fragmentation and RTS limits.
[0207] lmst_RxTime The timestamp when the last frame (of any type) has been received from this STA. This means that the STA appears on the channel, but it does not mean that it is a response to the association/authentication state or other higher-level activities. For the multicast STA record, it is updated when the last multicast frame is sent.
[0208] lmst_AckMSDU is the number of MSDUs that were successfully sent, that is, the last/only segment was ACKed or it was multicast. The total number of data/mgmt frames sent is derived from the number of confirmed and unconfirmed numbers.
[0209] The number of fragments successfully sent by lmst_AckFrag (not including the last fragment counted in the lst_AckMSDU)
Off).
[0210] lmst_RxCTS The number of times the RTS was sent and the CTS was received. The number of RTS frames sent is derived from the number of CTS frames received and the number of unreceived frames.
[0211] lmst_NoCTS The number of times the RTS was sent, and no CTS was received.
[0212] The number of unicast data/mgmt frames sent by lmst_RxACK and the received ACK frames. This indicates the actual ACK control frame, rather than the PCF/HCF piggyback ACCo. For PER calculations, lst_AckMSDU+ lst_AckFrag may be more useful. The difference between those statistics, this field is the number of piggyback ACKs processed.
[0213] The number of unicast data/mgmt frames sent by lmst_NoACK. No ACK was received.
[0214] lmst_BadCRC The number of times that CTS or ACK control frames are expected, and the number of times that frames with CRC errors are received. This may mean that the frame was received by the recipient, but the response was lost. Other frames with CRC errors cannot be correlated because the frame type and source address fields are suspicious.
[0215] LMSt_BadPLCP The number of times that CTS or ACK control frames are expected, and the number of times that frames that PHY cannot demodulate are received. This may mean that the frame was received by the recipient, but the response was lost. Other frames with PLCP errors cannot be associated with each other because the frame type and source address fields are not provided from the PHY. This condition is also counted under the lmif_BadPLCP statistics. [0216] lmst_MaxRetry indicates frames that have been withdrawn due to excessive retransmissions.
[0217] lmst_HistRetry[8] provides a histogram of the number of retransmission attempts before receiving the response. This includes RTS to CTS, and each fragment to ACK is in the frame exchange sequence. Flag 0 is used for the first successfully transmitted frame. This usually produces an inverted exponential curve, and if it deviates greatly, it indicates a large operational interruption, such as remote interference from a microwave oven.
[0218] lmst_HistSize[2] [4] Provides a histogram of PER vs. frame size. The first flag is 0K and no response, and the second flag is used for the frame size relative to the fragmentation limit. It is used for quick adjustment of fragment limit value.
[0219] The following statistical information provides information on received data/management frames. Statistics can be kept in
CN 1663156 Β
On every received frame. Certain statistical information is only expected on the AP or STA unless there is an overlapping BSS on the channel, and can provide insight into the channel bandwidth lost due to the overlap.
[0220] lmst_F orders tUcast to filter the data/management frame because it is presented to another STA.
[0221] lmst_F subscribes to tMcast to filter data/management frames because it is dedicated to a multicast address, which is not enabled in the multicast hash.
[0222] lmst_F sets tSelf to filter the data/management frame because it is a multicast frame being forwarded by the AP to the BSS.
[0223] lmst_F sets tBSS to filter the data/management frame because it is a multicast frame and its BSSID does not match the filter.
[0224] Llmst_FiltType filters data/management frames because its frame type/subtype is disabled by the frame type filter.
This can include zero data frame types, unsupported management frame types, and can include other types during the BSS scan.
[0225] lmst_F orders tDup to filter data/management frames because it is a copy of a previously received frame. This indicates that the ACK frame is being lost. Although not all errors will be detected here, this can provide a rough approximation of the PER in the opposite direction.
[0226] lmst_FwdUcast unicast data/management frame is transmitted to the embedded processor.
[0227] The lmst_FwdMcast multicast data/management frame is delivered to the embedded processor.
[0228] lmst_BadKey filters data/management frames because it requires a decryption key that has not yet been provided. This indicates a configuration error on the side of the connection.
[0229] lmst_BadICV filters the data/management frame because it failed to decrypt successfully. This can indicate a security attack.
[0230] lmst_TooSmall filters the data/management frame because it is encrypted, but does not include the required encrypted header.
This indicates a protocol error.
[0231] The following statistical information provides information on other frame exchanges.
[0232] lmst_RxRTSother The number of times the RTS was received, which was not presented to the STA.
[0233] lmst_TxCTS The number of times the RTS is received, and the CTS is sent as a response.
[0234] lmst_TxACK the number of times unicast data/management frames are received, and ACK is sent as a response.
[0235] The following statistical information can provide information that can be used to adjust the transmission data rate.
[0236] Llmst_TxAveRate The average rate of successfully transmitted data/management frames. Divide by (lmst_AckMSDU+lmst_AckFrag) for the average rate code. It only counts confirmed frames.
[0237] Llmst_RxAveRate The average rate of unicast data/management frames successfully received. Divide by lst_TxACK for average rate code. This includes all confirmed frames, including filtered frames. Because this can include duplication (lmst_FiltDup), its value is not completely symmetrical with transmission.
[0238] The following statistical information provides information on received frames with various errors, but cannot be traced back to the originating station.
[0239] lmif_SaveCRC[3] This provides the time stamp and PHY statistics of the last frame received with a CRC error.
[0240] The number of frames with CRC errors received by lmif_BadCRC is either counted here, or in lst_BadCRC.
[0241] lmif_SavePLCP[4] This provides the received time stamp, PLCP header, and PHY statistics of the last frame counted in lmif_BadPLCP.
[0242] The number of frames received by lmif_BadPLCP[4] in which the PHY cannot demodulate the PHY header is broken for some reason. These include CRC/parity error, bad SFD field, invalid/unsupported rate, And invalid/unsupported modulation.
[0243] lmif_SaveMisc[3] This provides the timestamp, PHY statistics, and the MAC header of the last frame received
CN 1663156 Β
The first 4 bytes, the remaining received errors are listed in the group.
[0244] The number of frames received by lmif_TooSmall that are too small for their frame type/subtype. This indicates a protocol error.
[0245] The number of frames with invalid/unsupported versions received by lmif_BadVer. This indicates a protocol error, or a newer (incompatible) version of the 802.11 specification has been released.
[0246] The number of control (or preliminary) frames with invalid/unsupported frame types/subtypes received by lmif_BadType. This indicates a protocol error, or a newer (incompatible) version of the 802.11 specification has been released.
[0247] lmif_FromUs The number of frames received from "our" MAC address. This indicates a security attack and should be reported to the network management application.
[0248] The following statistical information provides information exchanged by other frames, where the source address is not known.
[0249] lmif_RxCTSother is dedicated to the number of CTS frames of other stations.
[0250] lmif_RxCTSbad is the number of CTS frames received when there is no RTS unresolved. This indicates a protocol error.
[0251] lmif_RxACKother is dedicated to the number of ACK frames of other stations.
[0252] lmif_RxACKbad is the number of ACK frames received when there is no data/management frames are not resolved. This indicates a protocol error.
[0253] The following statistical information provides information on channel usage, and Carrier Sense Multiple Access (CSMA).
[0254] The time it takes for seq_CntRx to receive 802.11 frames, in units of 0.5 μs. Part of the time taken to demodulate the frame is counted in seq_CntCCA until the PHY header has been processed.
[0255] The time it takes for seq_CntTx to transmit 802.11 frames, in units of 0.5 μs.
[0256] The time it takes for seq_CntCCA energy detection, but no 802.11 frames are received, in units of 0.5 μs. Part of the time taken to demodulate the frame is counted in seq_CntCCA until the PHY header has been processed. This can also be used to detect the presence of strong interference, which has blocked the network (denial of service to the network) such as a baby monitor.
[0257] The time it takes for the seq_CntEna channel to be enabled and idle, in units of 0.5 μs. This includes the time that the CSMA channel cannot be used, such as SIFS time and channel compensation time. High usage can provide an indication of a denial of service attack or the presence of hidden nodes.
[0258] The time taken for seq_Timer due to the last LMAC restoration (normal running time), in units of 0.5 μs.
Any time not specified by the previous 4 counters indicates when the channel is disabled.
[0259] The number of times that lmif_CCAcnt received energy was detected. This does not include any transmission time.
[0260] The number of times that lmif_CCAother received energy was detected, but no 802.11 frames were received (even frames that could not be demodulated).
[0261] The total number of lmif_RxFIP received events, as specified in other statistics per frame type.
[0262] The total number of lmif_TxFIP transmission events, as specified in other statistics per frame type.
[0263] The lmif_TxSkip channel can be used for the number of transmissions through the CSMA protocol, but no frame can be used for transmission. This can help distinguish performance issues due to upper MAC (UMAC) or host processor bottlenecks restricting the reversal of 802.11 channels or protocols.
[0264] lmif_CWnBack The number of times that channel compensation or postponement is performed.
[0265] lmif_CWused is the number of time slots consumed by compensation or postponement.
[0266] lmif_HistDefer[4] starts a frame exchange sequence for each attempt, which indicates whether postponement or compensation is required, and why. The four cases are: no delay is required; after receiving energy and/or receiving frame, it is delayed; before transmission
CN 1663156 Β
It is postponed afterwards; and compensated after the CTS/ACK response is not received. Before each attempted frame swap sequence, only one record of the last cause can be counted.
[0267] Matching activity information and using NSI to access spectrum activity information
[0268] The measurement engine 50, the classification engine 52, the location engine 54, and the spectrum expert 56 perform spectrum analysis functions and generate information that can be used by applications or systems, which access these functions through the NSI 70. The NSI 70 can be embodied by instructions stored on a computer/processor readable medium and executed by a processor (server 1055 or network management station 1090) executing one or more application programs or systems. For example, the processor can execute instructions for the NSI "client" function, which generates requests and configurations for spectrum analysis functions and receives the resulting data for use in applications. The processor executing the measurement engine, classification engine, location engine, and/or spectrum expert will execute instructions stored on the relevant computer/processor readable medium (shown in Figure 1, 11, or 12) in response to requests from NSI customers Request to execute an NSI "server" function to generate configuration parameters and start the spectrum analysis function through the measurement engine, classification engine, location engine and/or spectrum expert to execute the requested spectrum analysis function and return the obtained data. The measurement engine may then generate controls for the SAGE driver 15 to configure the SAGE 20 and/or radio 12.
[0269] It should also be understood that the classification engine, the location engine, and the spectrum expert can be regarded as a client of the measurement engine, and can generate requests for the measurement engine and receive data from the measurement engine, similar to applications and measurement The way the engine interacts. In addition, spectrum experts can be regarded as customers of classification engines and location engines and request analysis services of those engines.
[0270] NSI70 can be transmitted separately (such as supporting sockets, SNMP, RMON, etc.) and can be designed to be implemented in wired or wireless formats, such as TCP/IP traffic from 802.11AP to PC, which is designed to Run software that accepts traffic for further analysis and processing. TCP/IP traffic (or some other traffic regardless of the protocol) can also be carried by the PCI bus in the laptop PC, assuming that the PC has built-in 802.11 technology or 802.11 NIC. If the source of the spectrum information data stream is a TCP/IP connection, the application may implement a socket and access the correct port to read the data stream. An example of a typical code used for this purpose is shown below. (This example is written in Java language and represents the code on the client side). Once the port connected to the data stream is established, the use of the data stream is determined by the network management software itself.
[0271]
CN 1663156 Β
! Open Socket and Port (Remember to first assign the correct value! For the 802.11 device PortNumber)
Socket MyClient;
try {
MyClient two new Socket("Machine name, PortNumber):
} catch (IOException e) {
System. out. println(e);
}! Create input stream to get data from NSI
DataInputStream input;
try {input two new DatalnputS .getlnputStreaniO);
} catch (IOException e) {
System. out. println(e);
}! Create DataOutputStream to send control commands and! Configuration data to NSI
DataOutputStream output;
try {output two new DataOutputStream(MyClient.getOutputStreamO);
} ca/tch (IOException e) {
System, out. println(e);
[0272] The class DatalnputStream has methods such as read. The DataOutputStream class allows writing Java primitive data types; one of its methods is to write bytes. These methods can be used to read data from NSI70 or write data to NSI70<sub>o</sub>
[0273] If the transmission of the data stream occurs on other low-level media, other methods can be used to access the data stream. For example, if the data is carried on the PCI bus of the PC, the PCI device driver will usually provide access to the data.
CN 1663156 Β
[0274] The information provided by the NSI to the application corresponds to the data generated by the measurement engine 50 (via SAGE), the classification engine 52, the location engine 54, and/or the spectrum expert 56.
[0275] In serving as an API, NSI has a first set of messages that identify (and start) the spectrum analysis function to be executed (also called service or test) and provide configuration information for the function. These are called dialog control messages and are sent to NSI by the application. There is also a second set of messages, called indicative messages, which are sent by the NSI (after the requested spectrum analysis function is executed) to the application and contain the test data of interest.
[0276] Most spectrum analysis functions (ie tests) have different configuration parameters, which are sent via dialog control messages, and which determine the specific details of the test. For example, in the monitoring spectrum, the dialog control message tells the NSI how wide the bandwidth should be (narrowband or wideband), and the center frequency of the bandwidth is monitored. In many cases, the detailed test configuration parameters of the spectrum analysis function can be omitted from the dialog control message. In those cases, NSI uses set default values.
[0277] Examples of spectrum analysis functions that can be performed by the measurement engine 50 (together with the services of SAGE20) and the returned data include:
[0278] Spectrum analyzer power versus frequency data. The data describes the total power in the spectrum as a function of frequency on a specific bandwidth.
[0279] Spectrum analyzer statistical information data. This data provides a statistical analysis of the data in the RF power versus frequency measurement. [0280] Pulse event data. This data describes the characteristics of each RF pulse detected by SAGE20. The features used (and thus the pulse type) to be detected by SAGE20 can be configured.
[0281] Pulse histogram data. This data describes the distribution of pulses per unit time, based on the percentage of pulses distributed between different frequencies, energy levels and bandwidths.
[0282] Snapshot data. This data contains the raw digital data portion of the RF spectrum captured by the SAGE20's snapshot buffer. This data can help identify the location of the device, and can also be used to extract identifier information, for example, it can determine the brand of certain devices operating in the frequency band. Snapshot data can also be used for signal classification.
[0283] The classification engine 52 can perform a spectrum analysis function to determine and classify the types of signals that appear in the frequency band. Together with the optional suggestions or descriptive information provided by the classification engine 52 or the spectrum expert 56, the resultant data that is returned is called Spectrum event data, which describes special events, such as detecting whether a specific signal type is active or inactive in a frequency band. The output of the classification engine 52 can be used by the spectrum expert 56 and the network expert 80 and other applications or processes.
[0284] There are many ways to format the NSI message to provide the desired API function and spectrum analysis function. The following is an example of the message format, which is provided for completeness, but it should be understood that other API message formats can be used to provide the same type of interface between the application and the spectrum analysis function regarding activities in the frequency band, many of which are Both types of signals can appear at the same time.
[0285] Common message headers can be used by dialog control messages and information messages. The common header, called smlStdHdr_t header, appears at the very beginning of all messages and provides some general identification information of the message. Examples of the general format of general headings are illustrated in the table below.
CN 1663156 Β
<td>Subfield</td><td>Description and notes</td>
<td>msgLen</td><td>'msgLen, is the byte length of the message.</td>
<td>msgType</td><td rowspan="2">'msgType is an integer indicating whether this is a start test message, data message, etc. 'sessType is an integer indicating the test type such as pulse test or spectrum analyzer test.</td>
<td>sessType</td>
<td>configToken</td><td>This value is set by the user when the test is proposed (the requesting application is also called network management software). The purpose is to help the requesting application distinguish the input data based on different test configurations.</td>
<td>ti mes tanipSecs</td><td>The use of timestamps is message dependent.</td>
<td>Src</td><td rowspan="2">The'src, and'dest' fields help to multiplex the conversation across normal transport connections, if needed.</td>
<td>Dest</td>
[0287] The indicative message starts with two headers: a normal header (smlStdHdr_t), followed by an information header (smlInfoHdr_t). The smlInfoHdr_t header provides special identification parameters for the indicative message:
<td>Subfield name</td><td>Description and notes</td>
<td>transactionSeq</td><td>The sequence used for this message. This starts at 1 and increases with each successive message. The increment reflects the number of data samples in the previous message (transactionCnt)<sub>o</sub>For certain types of messages, the number of data points and transactionCnt are therefore fixed at 1; for these message types, consecutive messages always have their transactionSeq incremented by "1".</td>
<td>transactionCnt</td><td>'transactionCnt' usually refers to the number of records in a message, where records are discrete data units. Its use depends on the message. For example, for a power vs. spectrum message, this value indicates the number of consecutive "snapshots" of the RF spectrum in the message. (Each snapshot is encapsulated in a special sequence of bytes. If transactionCnt has a value of 10, then the message contains 10 connections of the RF spectrum.</td>
CN 1663156 Β
[0289]
<td></td><td>Resume snapshots; there are 10 matching bytes, each of which reports a snapshot of the RF spectrum. )</td>
[0290] A summary of all messages that can be sent via NSI is included in the following table. The numerical values in the following table correspond to the values used in the msgType subfield of the smlStdHrd_t field.
<td>msgType name</td><td>msgType value</td><td>direction</td><td>meaning</td>
<td>SESS_START_REQ</td><td>40</td><td>User 9NSI</td><td>Start service or copy service</td>
<td>SESS_STARTED_RSP</td><td>41</td><td>NSI T users</td><td>Start the test</td>
<td>SESS_PENDING_RSP</td><td>42</td><td>NSI 9 users</td><td>The conversation will start when the service is released from another user</td>
<td>SESS_REJECT_RSP</td><td>43</td><td>NSI 9 users</td><td>Conversation cannot be started</td>
<td>SESS_ST0P_REQ</td><td>44</td><td>9 households I MaoS ears N</td><td>Request to stop service</td>
<td>SESS_STOPPED_RSP</td><td>45</td><td>NSI 9 users</td><td>The service was stopped, or in response to user requests or due to problems</td>
<td>SM_MSG_L1_INFO</td><td>46</td><td>NSI 9 users</td><td>Indicative message contains test data</td>
<td>SESS_QUERY_REQ</td><td>47</td><td>User NSI</td><td>Request current test configuration</td>
<td>SESS_QUERY_RSP</td><td>48</td><td>NSI T users</td><td>Current test configuration</td>
<td>SESS_P0LL_REQ</td><td>49</td><td>User 9NSI</td><td>Request polling or flushing of pulse histogram test data</td>
CN 1663156 Β
[0292]
<td>msgType name</td><td>msgType value</td><td>direction</td><td>meaning</td>
<td>SESS_POLL_RSP</td><td>50</td><td>NSI 9 users</td><td>Pulse histogram test data</td>
<td>SESS_RECONFIG_REQ</td><td>51</td><td>User ΤNSI</td><td>Reconfiguration test dialog</td>
<td>SESS_RECONFIG_RSP</td><td>52</td><td>NSI 9 users</td><td>Responding to a reconfiguration request</td>
<td>SESS_VENDOR_REQ</td><td>52</td><td>User 9NSI</td><td>Vendor-defined request</td>
<td>SESS_VENDOR_RSP</td><td>53</td><td>NSI 9 users</td><td>Vendor-defined response</td>
Examples of indicative messages, as implied above, are measurement engine 50 and classification engine 52 and optional spectrum
[0293] The NSI formatted version of the output of the expert 54 will be described.
[0294] Spectrum Analyzer Power vs. Frequency Data
[0295] SAGE20 will analyze the frequency band whose center frequency can be controlled. In addition, the bandwidth of the frequency band being analyzed can be controlled. For example, a part of the entire frequency band such as 20MHz (narrowband mode) can be analyzed, or substantially the entire frequency band can be analyzed, such as 100MHz (wideband mode). The selected frequency band is divided into multiple frequency "windows" (such as 256 windows), or adjacent sub-bands. For each window, and for each sampling interval, a report of the power detected within the window is made from the output of SAGE20, which is measured as dBm. The measurement engine 50 provides configuration parameters to the SAGE driver 15 and accumulates the output of the SAGE 20 (Figure 1).
[0296] FIG. 22 (which will be described further below) shows a graph resulting from power measurements taken at a given time interval. In this graph, the vertical bars do not represent different frequency windows. Among the two zigzag lines shown in Figure 22, the lower line represents a directed graph of the data in a single, snapshot of the spectrum at a given instant. It corresponds to the data in the single sapfListEntries field described below. However, the spectrum analysis message may contain multiple sapfListEntries fields; each such field corresponds to a single snapshot of the spectrum. The zigzag line above is constructed by a software application. It represents the peak value seen in the RF spectrum during the entire test period to the present moment.
[0297] An example of the structure of the spectrum analyzer power versus frequency data is as follows.
CN 1663156 Β
<td>Main field name</td><td>Description and notes</td>
<td>smlStdHdr</td><td>Standard title</td>
<td>smlInfoHdr t</td><td>Second standard title</td>
<td>smlSapfMsgHdr_t</td><td>Describe the frequency band being analyzed, provide the center frequency and the width of each of the 256 windows</td>
<td>sapfListEntries</td><td>This field contains the main data of interest, that is, the RF signal power (dBm) of each of the 256 frequency windows. There may be only one situation in this field in the message, or there may be multiple situations. If there are more than one such fields, each field corresponds to a single snapshot in the snapshot time series of the RF spectrum. The number of situations is given by the smlInfoHdr t. transactionCnt subfield.</td>
[0299] In the second standard title, msgType is 46 to identify the message as an indicative message, and sessType is (SM_L1_SESS_SAPF) to identify the data result from the spectrum analyzer power versus frequency test dialogue.
[0300] The following fields are standard information headers for spectrum analyzer power versus frequency data.
<td>Subfield name</td><td>Description and notes</td>
<td>transactionseq</td><td>The order used for this message. For the first message it starts at 10. For each subsequent message, it is incremented by the value of transactionCnt in the previous message.</td>
<td>transactionCnt</td><td>The number of sapfList records in the message (sapfList) In other words, this is the number of continuous "snapshots" of the RF spectrum in the message.</td>
[0302] The following field smlSapfMsgHdr_t describes the spectrum being monitored. When the message provides the center frequency and the bandwidth of the window, it cannot provide the total bandwidth to be measured. This can be calculated as: low end = frqCenterkHzT28*binSize, high end = frqCenterkHz+128*binSize. The radio receiver used to monitor the bandwidth need not actually span the entire bandwidth. Therefore, the partial frequency window at one end of the spectrum will generally exhibit zero (0) RF power.
[0303]
<td>Subfield name</td><td>Description and notes</td>
<td>frqCenterkHz</td><td>Power center frequency vs. frequency list (kHz)</td>
<td>binSizekHz</td><td>Window size (kHz)</td>
[0304] For a single snapshot of the RF spectrum at an instant, the field sapfListEntries explained below contains the main feeling
CN 1663156 Β
Information of interest, that is, the power level (dBm) of each frequency window.
<td>Subfield name</td><td>Description and notes</td>
<td>timestampSecs</td><td rowspan="2">The timestamp (seconds), and the fractional part of the timestamp (microseconds). Time is counted from the beginning of the test, not from a certain absolute time (that is, unlike the UNIX operating system).</td>
<td>timestampmicrosecs</td>
<td>powerValuesdBm</td><td>Window (-128 to 127) dBm power value. This value reflects the energy that the radio receiver "sees" in the part of the frequency spectrum corresponding to the window.</td>
[0306] The frequency range corresponding to the window "N" is given, where N is from 0 to 255:
[0307] LowFrequency[N] = smlSapfMsgHdr_t. frqCenterKHz
[0308] +(NT28)*
[0309] sm 1 SapfMsgHdr_t. binSizeKHz
[0310] HighFrequency[N] = smlSapfMsgHdr_t. frqCenterKHz
[0311] + (NT27)*
[0312] sm 1 SapfMsgHdr_t. binSizeKHz
[0313] Spectrum Analyzer Statistics
[0314] The spectrum analyzer statistical data/message provides statistical analysis of data in the spectrum.
[0315] A single message is established from a specified number of FFT cycles, where a single FFT cycle represents a 256 frequency window output as FFT. For example, 40,000 consecutive FFTs of the RF spectrum, performed in a total time of 1/10 second, are used to construct statistics for a single message.
[0316] FIG. 23 shows the types of information that can be conveyed in the statistical data of the spectrum analyzer. The bottom line represents the average power during the sampling period (that is, during 40,000 FFT or 1/10 second). The upper line indicates the "absolute maximum power" in all the spectrum analyzer statistical messages received so far.
[0317] An example of the entire structure of the spectrum analyzer statistical data is:
CN 1663156 Β
[0318]
<td>Field Name</td><td>Description and notes</td>
<td>smlStdHdr_t</td><td>msgType = 46 (SM_MSG_L1_INFO) sessType = 11 (SM L1 SESS SASTATS)</td>
<td>smlInfoHdr t</td><td>No special fields</td>
<td>smlSaStatsMsgHdr_t</td><td>This field contains general parameters about the statistical sampling process. See the format below.</td>
<td>statsBins</td><td>256 spectrum analysis statistical windows. See the description.</td>
<td>activeBins</td><td>10 windows are used for the current peak value. See the description.</td>
<td>quality</td><td>The numbers from 0 to 100 indicate the quality of the entire frequency band. 0 is the worst and 100 is the best. The value 0-33 means "poor", 34-66 means "good", and 67-100 means "excellent".</td>
[0319]
[0320]
[0321] The message header smlSaStatsMsgHdr_t field contains a parameter describing the sampling process, the example of which is as follows.
<td>Subfield name</td><td>Description and notes</td>
<td>bwkHz</td><td>Bandwidth (narrow/wide) (kHz) used for statistical analysis of the RF spectrum. The narrowband is about 20MHz, and the width is about 100MHz.</td>
<td>cycleCnt</td><td>The number of FFT cycles accumulated in the statistics. This is user configurable, but it is usually in the range of 20,000 to 40,000.</td>
<td>startTimeSecs</td><td rowspan="2">The start timestamp (seconds), and the fractional part (microseconds) of the start timestamp, for the current message, it indicates the measurement start time of the current statistical information group. Measured from the start of the test run.</td>
<td>startTimeUsecs</td>
<td>endTimeSecs</td><td rowspan="2">The end timestamp (seconds), and the fractional part (microseconds) of the end timestamp, for the current message, it indicates the measurement completion time of the current statistical information group. Measured from the start of the test run.</td>
<td>endTimeUsecs</td>
<td>centerFreqkHz</td><td>Center frequency (kHz). User configurable.</td>
<td>pwrThreshDbm</td><td>DBm used for the current power limit value of the duty cycle and current window information. This means that the RF spectrum has to count the minimum power in the duty cycle and current window statistics (these statistics will be described further below).</td>
<td>noiseFloorDbm</td><td>The dBm value of the current noise floor.</td>
For example, there are 256 consecutive statsBins, each with 4 subfields as shown in the following table. Every
[0322]
CN 1663156 Β
statsBin, together with its 4 subfields, contains statistical data for a specific bandwidth. To calculate the bandwidth of each frequency window, the following formula can be used:
[0323] binWidth = smlSaStatsMsgHdr_t. bwKHz/256
[0324] The lower bandwidth and upper bandwidth of each window are given by the following formula:
[0325] LowBandwidth [N] = smlSaStatsMsgHdr_t. centerFreqKHz+((NT28) *binWidth)
[0326] HighBandwidth [N] = smlSaStatsMsgHdr_t. centerFreqKHz+((NT27) *binWidt h)
<td>Subfield name</td><td>Description and notes</td>
<td>avgDbm[0]</td><td>Average dBm power level of this frequency window (-128 to 127 dBm)</td>
<td>maxDbm[0]</td><td>The maximum dBm power level of the frequency window (-128 to 127 dBm)</td>
<td>dutyPercent [0]</td><td>Percentage of time, multiplied by 2, the power level of this window remains above the (user-defined) limit</td>
<td>avgDbm[l]</td><td>Average dBm power level of this frequency window (T28 to 127 dBm)</td>
<td>maxDbm[l]</td><td>The maximum dBm power level of the frequency window (-128 to 127 dBm)</td>
<td>dutyPercent [1]</td><td>Percentage of time, multiplied by 2, the power level of this window remains above the (user-defined) limit</td>
<td>avgDbm[N]</td><td>Average dBm power level (-128 to 127 dBm)</td>
<td>maxDbm[N]</td><td>Maximum dBm power level (T28 to 127 dBm)</td>
<td>dutyPercent[N]</td><td>The percentage of time is multiplied by 2, and the power remains above the limit</td>
<td>avgDbm[255]</td><td>Average dBm power level (T28 to 127 dBm)</td>
<td>maxDbm[255]</td><td>Maximum dBm power level (T28 to 127 dBm)</td>
<td>dutyPercent[255]</td><td>The percentage of time is multiplied by 2, and the power remains above the limit</td>
[0329] There are 10 consecutive activeBins, which record peak activity. The window can be viewed as being indexed continuously, from 0 to 9. For each window, the value in the window should be interpreted as follows. In the Nth window, if the value in the window is X, then for (X/2)% of the time, there are N peaks in the RF spectrum during the sampling period, except for the special case of the 10th window below. Called window 9o
CN 1663156 Β
<td>Subfield name</td><td>Description and notes</td>
<td>activeBins[0]</td><td>If the value is X in this window, there is no peak (0 peak) in the RF spectrum for (X/2)% of the time.</td>
<td>activeBins [1]</td><td>If the value is X in this window, there is a peak in the RF spectrum in (X/2)% of the time.</td>
<td>activeBins[2]</td><td>If the value is X in this window, there are 2 peaks in the RF spectrum during (X/2)% of the time.</td>
<td>a_cti veBins [8]</td><td>If the value is X in this window, there are 8 peaks in the RF spectrum during (X/2)% of the time.</td>
<td>QctiveBins[9]</td><td>If the value is X in this window, there are 9 or more peaks in the RF spectrum during (X/2)% of the time.</td>
[0331] As described above in conjunction with SAGE20, the peak is a spike signal, or a very short energy pulse in the RF spectrum. If the pulse lasts for a certain period of time (such as about 2.5 microseconds), SAGE20 will detect the peak value, and the peak value will be included in the statistical information describing the segment. This short peak is usually not included in the pulse data or pulse statistics. Also as mentioned above, if a series of continuous peaks are seen in a continuous period, all peaks are at the same frequency, the series-once it reaches a certain minimum time limit-it will be counted as a pulse. Figure 23 also shows how the number of peaks associated with activity in the frequency band can be displayed.
[0332] For testing purposes, the exact minimum duration of the pulse can be configured by the application, but a typical time can be 100 microseconds. Since SAGE20 can detect RF events as short as 2.5 microseconds, a typical pulse needs to continue to pass at least 40FFTo before being recognized as a pulse
[0333] Pulse event data
[0334] A signal pulse is a continuous emission of RF energy in a specific bandwidth starting at a specific time. SAGE20 detects pulses in the radio frequency band, which meet certain configurable characteristics of bandwidth, center frequency, duration, and inter-pulse time (also called "pulse gap"). When SAGE20 detects a pulse with these characteristics, It outputs the pulse event data of the pulse, including:
[0335] Start time-measured from the first time SAGE started detecting pulses.
[0336] Duration-the lifetime of the pulse.
[0337] Center frequency-the center frequency of the pulse.
[0338] Bandwidth-how wide the pulse is.
[0339] Power-average power (dBm).
[0340] The entire structure of the pulse event (PEVT) data/message is shown in the following table.
CN 1663156 Β
<td>Field Name</td><td>Description and notes</td>
<td>smlStdHdr_t</td><td>msgType = 46 (SM_MSG_L1_INFO) sessType = 12 (SM L1 SESS PEVT)</td>
<td>smlInfoHdr_t</td><td>transactionCnt = the number of PEVTs in the message; each PEVT contains data on one pulse.</td>
<td>classPevts</td><td>smlPevts: transactionCnt in the form of'smlPevt_t' shown below<sup>J</sup> PEVT array. Each field contains data on one pulse.</td>
[0342] The information header field is a standard information header used for pulse event messages.
<td>[0343]</td><td>Subfield name</td><td>Description and notes</td>
<td>[0344]</td><td>transactionSeq</td><td>The order of the message. For the first message it starts at lo. For each successive message, it is increased by transactionCntο in the previous message (in other words, it is increased by the number of pulses reported in the previous message.)</td>
<td></td><td>transactionCnt</td><td>The number of PEVTs in this message. Each PEVT field corresponds to a pulse.</td>
[0345] There may be one or many pulse events in the message. Each case of the following classPevts field describes the characteristics of a pulse.
CN 1663156 Β
<td>Subfield name</td><td>Description and notes</td>
<td>sdld</td><td>This indicates that those of the 4 internal pulse detectors are being used by SAGE to detect the name.</td>
<td>termCodeFlags</td><td>This byte contains a series of flags that indicate how the pulse is terminated.</td>
<td>dBm</td><td>Pulse power (dBm).</td>
<td>frqCenterkHz</td><td>The center frequency of the pulse (kHz) ο The value shown will usually be in the range of 0 to 100000kHz. To get the actual center frequency, add this value to the low end of the spectrum under test. Example: If the spectrum to be tested is between 2,350,000 kHz and 2,450,000 kHz, and the frqCenterkHz value is 40,000 kHz, the actual center frequency of the pulse is approximately 2,390,000 kHz. Note: The actual resolution is ±200 to 500 kHz ο</td>
<td>bandwidthkHz</td><td>Pulse bandwidth (kHz) οNote: The actual resolution is ±200 to 500 kHz ο</td>
<td>durationUs</td><td>Pulse duration (microseconds).</td>
<td>timeOnSecs</td><td rowspan="2">Pulse start time, seconds part; and pulse start time, fractional parts, microseconds. The start time of the pulse is measured from the start of the test run, not from an absolute, fixed date.</td>
<td>timeOnUsecs</td>
[0347] Pulse histogram data
[0348] While it is possible to access information about individual pulses, it can also be used to work with statistical information about pulses detected and appearing in the frequency band at any time. This information is provided by pulse histogram data. The pulse histogram tracks the following distribution: pulse duration (percentage of pulses with short, intermediate, and long duration); time slots between pulses (with short, intermediate, and long time slots between them) Percentage of pulse); pulse bandwidth; pulse frequency; and pulse power.
[0349] FIG. 24 shows a graphical display of an exemplary pulse histogram.
[0350] The entire structure of the pulse histogram data is shown in the following table.
CN 1663156 Β
[0351]
[0352]
[0353]
<td>Field Name</td><td>Description and notes</td>
<td>smlStdHdr _t</td><td>msgType = 46 (SM_MSG_L1_INFO) sessType = 13 (SM L1 SESS CLASS)</td>
<td>smlInfoHdr t</td><td>No special fields</td>
<td>smlPhistMsgHdr t</td><td>Provide detailed information about the sampling process.</td>
<td>pulseDurationHistogram</td><td>Pulse duration histogram</td>
<td>pulseGapHistogram</td><td>Pulse gap histogram</td>
<td>pulseBandwidthHistogram</td><td>Pulse bandwidth histogram</td>
<td>centerFreqHistogram</td><td>Center frequency histogram</td>
<td>powerHistogram</td><td>Power histogram</td>
The PhistMsgHdr field describes the spectrum being monitored and some other parameters of the entire sampling process.
<td>Subfield name</td><td>Description and notes</td>
<td>classMsgType</td><td>SM1_CLASS_PHIST_MSG = 1, (pulse histogram message)</td>
CN 1663156 Β
<td>Subfield name</td><td>Description and notes</td>
<td>numSamplelntervals</td><td>The number of sampling intervals. If the dedicated radio receiver listens to the pulse continuously, the value will be 1 (indicating a single sampling interval). If the radio is double the transmitter, it cannot listen all the time; this parameter will indicate the number of times the radio can actually listen to the pulse.</td>
<td>avgSamp1eDurat i onMs</td><td>The average sampling time (milliseconds). If the dedicated radio is listening to the pulse continuously, this value will be the same as the amount of time that SAGE20 has been instructed to listen to the pulse before sending the statistics. If the listening device cannot listen all the time, multiply: TALT = avgSampleDurationMs * numSamplelntervals to get the total listening time (TALT). To get the fraction of the listening time, divide TALT by the amount of time the CLP has been instructed to listen for the pulse before sending the statistics. [Total listening time can also be calculated from the following fields: endTimeSecs + endTimeUsecs-(startTimeSecs + startTimeUsecs )]</td>
<td>histBwkHz</td><td>Histogram bandwidth (kHz)</td>
<td>histCenteiFreqkHz</td><td>Histogram radio center frequency (kHz)</td>
<td>startTimeSecs</td><td rowspan="2">Start timestamp (seconds), and start timestamp fraction (microseconds). This is calculated when the pulse histogram calculation is started, not from a certain absolute start time (that is, unlike the UNIX operating system).</td>
<td>startTimeUsecs</td>
<td>endTimeSecs</td><td rowspan="2">The end timestamp (seconds), and the fractional part of the end timestamp (microseconds). Again, this is calculated from when the pulse histogram calculation is started.</td>
<td>endTimeUsecs</td>
<td>numPulseEvents</td><td>The number of pulse events recorded in the histogram.</td>
[0355] The pulse duration histogram field contains a series of bytes. Each data byte or window-in turn-indicates the percentage of pulses that fall within a given duration (multiplied by 2). The following table classifies the data as smallBins and mediumBins
CN 1663156 Β
And largeBins, and are just examples of how to track pulse duration.
[0356] The first window (window 0) contains the percentage of pulses between 0 microseconds and 9 microseconds (X2)<sub>o</sub>The second window (window 1) contains the percentage of pulses (X2) between 10 microseconds and 19 microseconds in the duration. Each of these "windows" are 10 microseconds wide. This can continue to the 20th window (window 19), the value of which is the pulse percentage (X2) between 190 and 199 microseconds.
[0357] The next 26 windows are similar, except they are wider. In particular, they are 50 microseconds wide. Window 20 has a value indicating that the pulse percentage (X2) is between 200 microseconds and 249 microseconds. Again, there are 26 windows 50 microseconds wide. The window 45 has a value indicating that the pulse percentage (X2) is between 1450 microseconds and 1499 microseconds.
[0358] Each of the last 27 window groups specifies a wider pulse percentage (X2), in particular, 500 microseconds wide. Window 46 includes pulses whose duration is between 1500 microseconds and 1999 microseconds. Window 72 includes pulses whose duration is between 14499 microseconds and 14999 microseconds.
[0359] Pulse Duration Histogram Window
<td>Subfield name</td><td>Description and notes</td>
<td>smallBins</td><td>Each window contains the percentage of pulses (X2) that fall within the range of 10 microseconds. The range starts from 0 to 9 microseconds and increases by 10 microseconds for each successive byte. The last window (window 19) covers pulses with a width between 190 and 199 microseconds.</td>
<td>mediumBins</td><td>Each window contains the percentage of pulses (X2) that fall within the 50 microsecond range. The range starts from 200 to 249 microseconds, and increments by 50 microseconds for each successive byte. The last window is the 26th window of mediumBins, and all the 46th windows, namely window 45, cover pulses with a width between 1450 and 1499 microseconds.</td>
<td>Subfield name</td><td>Description and notes</td>
<td>largeBins</td><td>Each window contains the percentage of pulses (X2) that fall within the 500 microsecond range. The range starts from 1500 to 1999 microseconds and increases by 5000 microseconds for each successive byte. The 73rd window (ie window 72) covers pulses with a width between 14499 and 14999 microseconds.</td>
[0362] The pulse gap histogram indicates the percentage of the gap between pulses (X2), where the duration of the gap falls within a given time range. The windows do not reflect when the gap appears, they reflect how long the gap is. The gap is measured between the beginning of one pulse and the beginning of the next pulse. This is because the beginning of the pulse tends to be depicted sharply, while the pulse may gradually weaken. For example, suppose there are a total of 20 gaps between pulses. Among these 20 gaps, only two gaps have a duration between 10 microseconds and 19 microseconds. The first gap, which lasted 12 microseconds, appeared at 15.324 seconds. The second gap, which lasted 15 microseconds, appeared at 200.758 seconds. Both gaps are recorded in the second window (window 1). due to
CN 1663156 Β
The two gaps reflect 10% of all recorded gaps, and the value in the second window (window 1) will be 2X10% = 20 (because all percentages are multiplied by 2).
[0363] Pulse Gap Histogram Window
<td></td><td>Subfield name</td><td>Description and notes</td>
<td>[0364]</td><td>smallBins</td><td>Each continuous window contains the percentage of the gap between pulses (X2), where the length of the gap falls within the range of 10 microseconds. The gap ranges from 0 microseconds to 9 microseconds long, and increases by 10 microseconds for each successive byte. The 20th and final window (window 19) covers a gap of 190 to 199 microseconds in duration.</td>
<td>[0365]</td><td>mediumBins</td><td>Each window contains the percentage of gaps (X2) whose duration falls within the range of 50 microseconds. The gaps range from 200 microseconds to 249 microseconds long (so that all gaps whose duration is within this range are included in the first window, number 20), and are incremented by 50 microseconds for each successive window . The 20th and final window (window 19) covers a gap of 190 to 199 microseconds in duration. The last window is the 26th window of mediumBins, the 46th of all, and is labeled window 45-covering the gap whose duration is between 1450 and 1499 microseconds.</td>
<td></td><td>largeBins</td><td>Each window contains the percentage (X2) of the gap whose duration falls within the range of 500 microseconds. The gap whose duration is between 2500 microseconds and 2999 microseconds is reflected in the first window, and each successive window increases A duration of 5000 microseconds. The last window is the 27th window of largeBins, the 73rd of all, and is labeled window 72-covering a gap between 14499 and 14999 microseconds in width.</td>
[0366] For the pulse bandwidth histogram, each data window reflects a gradually wider bandwidth. For example, if the first window represents pulses with a bandwidth from 0 to 9.999 kHz, the second window represents pulses with a bandwidth from 10 to 19.999 kHz, the third window pulses are from 20 to 29.999 kHz wide, and so on. The value saved in the window is the percentage (X2) of pulses with a bandwidth within the specified range. For example, assume that the size of each window is 80 kHz. Also assume that SAGE20 detects 1000 pulses and has 256 frequency windows. The pulse has a bandwidth between 0 and 20480kHz. As another example, assume that SAGE20 detects 65 pulses, each with a pulse between 400 and 480 kHz. If the 6.5% of the pulses fall within the sixth bandwidth range, the sixth window (window 5) will have a value of 2x6.5%=13.
[0367] The bandwidth windows may have exactly the same width. For example, if the first window is 80kHz wide (and includes data of pulses with a bandwidth from 0 to IJ 79.999kHz), then all consecutive windows will be 80kHz wide. The second window includes pulses from 80 to 159.999kHz; the 256th window is also 80kHz wide, including those with pulses from 20400 to 20479.999kHz
CN 1663156 Β
The bandwidth of the pulse.
[0368] Pulse Bandwidth Histogram Window
<td>Subfield name</td><td>Description and notes</td>
<td>binSizekHz</td><td>Window size (kHz) ο</td>
<td>numBinsUsed</td><td>Ν, such as 256.</td>
<td>freqBins</td><td>Pulse percentage (X2), which has a bandwidth corresponding to the byte. The first byte (byte 0) represents the pulse width from 0 to binSizekHz»The second byte (byte 1) represents the pulse with bandwidth from binSizekHz to 2XbinSizekHz. (Then byte 1 contains %*2 pulse bandwidth within this range.) In short, the Nth window indicates that the pulse has a bandwidth between (N-1) * binSizekHz and N * binSizekHz. Again, the value of the byte indicates that the pulse bandwidth of %*2 falls within this range.</td>
[0370] For the pulse center frequency histogram, each data window reflects a frequency range. The value stored in the window is multiplied by the percentage of pulses whose center frequency falls within the specified frequency range.
[0371] All frequency windows can be exactly the same width. However, in general, the lowest window (byte 0) does not start with a frequency of OHz. Recall that the pulse histogram message header (PhistMsgHdr_t) has a subfield histCenterFreqkHz, which is measured in kHz. This field defines the center frequency of the pulse center frequency histogram.
[0372] The following formula gives the actual frequency range covered by each window of the histogram, which also indicates the low and high frequencies of the range. The number N is the number of windows, where the number of windows is counted from freqBinsO to freqBins 255:
[0373] Low Frequ. (bin Ν) = histCenterFreqkHz-(128*binSizekHz)+(N*binSizekHz)
[0374] High Frequ. (bin N) =histCenterFreqkHz-(128*binSizekHz)+((N+l)*binSize kHz))
[0375] Assume that the size of each window is 100 kHz, and the bandwidth is 2.4 GHz. In fact, the monitored frequency is in the range from 2,387,200kHz to 2,412,800kHz. It is also assumed that SAGE20 detects 1000 pulses, and the center frequency of 80 pulses is in the range from 2,387,600kHz to 2,387,699kHz. Then 8% of the pulses fall within the fifth bandwidth range, then window 4 will have the value 2x8%=16.
[0376] The field structure of the pulse center frequency histogram is shown in the following table.
[0377] Pulse Center Frequency Histogram Window
[0378]
<td>Subfield name</td><td>Description and notes</td>
<td>binSizekHz</td><td>Window size (kHz) ο</td>
<td>numBinsUsed</td><td>Ν, such as 256...</td>
CN 1663156 Β
<td>freqBins</td><td>Percentage (X2) of the name with the center frequency corresponding to the byte.</td>
[0379] For the pulse power histogram, each window reflects a certain power range, measured as dBm. The value of each window reflects the percentage of pulses (X 2) whose power level falls within the specified range.
[0380] Pulse Power Histogram Window
[0381]
<td>Subfield name</td><td>Description and notes</td>
<td>powerBins</td><td>Each window indicates that the name of% (X2) falls within the specified power range of the window.</td>
<td></td><td>The range of each window is 5 dBm, and the lower power of the lowest window is -130 dBm.</td>
<td></td><td>therefore:</td>
<td></td><td>bin[0] = -130 to T26 dBm</td>
<td></td><td>bin[l] = -125 to T21 dBm</td>
<td></td><td>bin[2] -120 to -116 dBm</td>
<td></td><td>bin[N] = -130 + (N * 5) to -126 + (N * 5)</td>
<td></td><td>bin[29] = +15 to +19 dBm</td>
[0382] Snapshot Data
[0383] Snapshot data, unlike other data provided by NSI, is not based on data analysis by SAGE or software. Instead, this data provides raw data from the ADC, which precedes SAGE and converts the received analog signal into a digital signal.
[0384] The raw ADC data can be expressed in n-bit I/Q format, where n is specified by'bitsPerSample'. Snapshot sampling can be used for position measurement, or for detailed pulse classification (such as identifying the exact model of the device). The size of the sample data contained in'snapshotsamples, is usually 8k bytes. The entire structure of the message is shown in the following table.
<td>Field Name</td><td>Description and notes</td>
<td>smlStdHdr_t</td><td>msgType = 46 (SM_MSG_L1_INFO) sessType = 17 (SM L1 SESS SNAP)</td>
<td>smlInfoHdr t</td><td>transactionCnt = 1</td>
<td>smSnapshotMsg t</td><td>Snap the message body. K is 24 +<sup>i</sup>snapshotSamplesLen<sup>?</sup></td>
[0386] Examples of the smSnapshotMsg_t field of the snapshot message are defined as follows.
CN 1663156 Β
<td>Subfield name</td><td>Description and notes</td>
<td>snapshotStartSecs</td><td>Target snapshot time (seconds)</td>
<td>snapshotStartNanosecs</td><td>Target snapshot time (nanoseconds)</td>
<td>numberOfSamples</td><td>Number of IQ snapshot samples</td>
<td>bitsPerSample</td><td>Number of bits in the sample</td>
<td>radioGainDb</td><td>Radio gain (dB): -127 to 128 dB This is the radio gain used at the beginning of the sampling interval. It can be used to convert the original IQ samples to the corresponding dBm power level.</td>
<td>pulseDetectorld</td><td>The value of the pulse detector IDo OxFF indicates that the pulse detector is not used to trigger sampling.</td>
<td>reserved</td><td>Reserved for future expansion</td>
<td>snapshotSamplesLen</td><td>The number of bytes in the'snapshotsamples' field below (N)</td>
<td>snapshotSamples</td><td>Sampling data. The size of the snapshotsamples is usually 8k bytes. Size N is<sup>i</sup>snapshotSamplesLen<sup>,</sup>Value in.</td>
[0389] Spectrum event data (such as monitoring signal activity)
[0390] The msgType of the spectrum event data is 46, and the sessType is 14 (SM_L1_SESS_EVENT) The format of the smEventMsg_t spectrum event message field is described in the following table.
CN 1663156 Β
[0391]
<td>Subfield name</td><td>Description and notes</td>
<td>EventType</td><td>String. Up to 16 characters, zero terminated. Some typical examples of event types are: "information", "treat as the same", "interfering signal", and "error".</td>
<td>EventDateTime</td><td>When smEventMsg is received, the number of seconds elapsed on any date such as January 1, 1970. This field is essentially a placeholder; the value must be filled in by the receiving application. 0 is sent by the target. Displayed as hh:mm:ss mm/dd/yyyy.</td>
<td>EventTimestampSecs</td><td>The target event timestamp (seconds). Time is measured from the beginning of monitoring of the environment, not from an absolute calendar time.</td>
<td>EventTimestampUsecs</td><td>The fractional part of the target event timestamp (in microseconds). Time is measured from the beginning of monitoring of the environment, not from an absolute calendar time.</td>
CN 1663156 Β
[0392]
<td>Subfield name</td><td>Description and notes</td>
<td>Eventld</td><td>A specific number of IDs is assigned to a specific type of event. For example, the start of a microwave oven can be "1", a Bluetooth device "2", a cordless phone "3" and so on. For the "disturbing signal" event message, the following format is applied: low address byte high address byte 16 high bits-reserved 15 bits-1. bit: device ID on/off device ID must be combined with on/off bit to obtain this The actual numeric value of the field. For example, if the device ID used for the BluetoothTM device is "2", the 15-bit mode is Ό000 0000 0000 010'. But with the on/off bit attached to the right, the bit pattern becomes: Ό000 0000 0000 0101'=decimal 5 (device on), or '0000 0000 0000 0100'=decimal 4 (device off).</td>
<td>EventSourceld</td><td>Identify the target source. This parameter is most important when more than one source (for example, more than one AP) feeds data to the requesting software or system.</td>
<td rowspan="2">AlertLevel</td><td>The display color of the warning level value severity recommendation of the message</td>
<td>1 Severe Red 2 High Orange 3 High Yellow 4 Vigilant Blue 5 Low Green</td>
CN 1663156 Β
<td>Subfield name</td><td>Description and notes</td>
<td>EventMsg</td><td>This is a short string message, zero terminated, which identifies the event caused by the message. For example, it can say "microwave oven activated" or "cordless phone. The content of the message is essentially redundant for Eventld (above), except that it provides text in place of a digital identifier.</td>
<td>EventDescription</td><td>Event descriptions will usually contain more detailed information, and will often include advice and/or advice on how to resolve interference or other situations caused by the source of the event.</td>
<td>EventDetail</td><td>Event details will usually include relevant technical parameters, such as the power level or frequency bandwidth associated with the event. Line break characters delimit each line.</td>
[0394] Examples of ways in which spectrum event messages can be displayed are shown in FIGS. 16-20 and will be described below.
[0395] The software and the system communicate to the NSI to request data from the service on the other side of the NSI, which uses the dialogue control message mentioned above. An example of the format of the dialog control message is as follows. After the standard title is the information unit. The information unit is a data structure with several parts, as described in the following table:
<td>Field Name</td><td>description</td>
<td>infoElementLen</td><td>The number of bytes in the information unit includes the length field.</td>
<td>infoElementType</td><td>Information unit type number. This type is used to distinguish information units. The type is unique among all messages. For example:'infoElementType' is '1' to indicate the "rejection reason", and has a specific meaning independent of the'smlStdHdr t. msgType' field.</td>
<td>infoElementBody</td><td>This contains important data of the information unit and may have one or more subfields. Information unit body. The format of the data is determined by the infoElementType field.</td>
[0397] Typical information units provide data such as SAGE configuration data, radio configuration data, and service-specific data (such as pulse data, spectrum data, etc.). Examples of NSI information elements are provided in the table below:
<td>CN 1663156 B</td><td></td><td></td>
<td>Information unit name</td><td>infoElementType</td><td>description</td>
<td></td><td>(Decimal)</td><td></td>
<td>IE_RETURN_CODE</td><td>1</td><td>Activity completion status return code information</td>
<td>IE_SESSION_CFG</td><td>2</td><td>Dialogue priority and startup configuration</td>
<td>IE_SAGE_CFG</td><td>3</td><td>Common SAGE that realizes multiple services</td>
<td></td><td></td><td>Configuration</td>
<td>IE_RADIO_CFG</td><td>4</td><td>General radio configuration</td>
<td>IE_COPY_CFG</td><td>5</td><td>Any data requested for the service</td>
<td></td><td></td><td>Copy of with optional configuration</td>
<td>[0398]</td><td></td><td>New notification.</td>
<td>IE_SAPF_CFG</td><td>6</td><td>Spectrum analyzer power versus frequency configuration</td>
<td>IE_PD_CFG</td><td>7</td><td>Pulse detector configuration</td>
<td>IE_SA_STATS_CFG</td><td>8</td><td>Spectrum analyzer statistical configuration</td>
<td>IE_PHIST_CFG</td><td>9</td><td>PHIST service configuration</td>
<td>IE_PEVT_CFG</td><td>10</td><td>PEVT service configuration</td>
<td>IE_SNAP_CFG</td><td>12</td><td>Snapshot buffer configuration</td>
<td>IE_VENDOR_CFG</td><td>13</td><td>Vendor special configuration information</td>
<td>IE_FLOW_CTRL</td><td>15</td><td>INFO message flow control</td>
<td>IE_VERSION</td><td>16</td><td>NSI version being used</td>
[0399] There is an advantage to using information elements in NSI dialog control messages. The format of the dialog control message can be modified or expanded at any time. As long as the technology is further developed, it does not require modification of the existing software or system using NSI. In other words, enhancing the message will not destroy the old program.
[0400] In traditional software design, network management software is coded to control the expectations of a specific data structure of the message for each dialog. Whenever the dialog control message is changed or enhanced, the code of the network management software will be required to be changed, and the code must be recompiled.
[0401] However, with dialog control messages, this will no longer be necessary. The dialog control message is processed as follows:
[0402] 1. Request the software or system to read the message header and determine what kind of message it is receiving.
[0403] 2. The software developer knows what kind of information unit will follow the title field based on the description document. Design decisions are made to determine what kind of actions the software or system will take in response to those information units.
[0404] 3. In the code itself, after reading the header field, the software loops through the information unit. Only for information elements of interest-which can be marked in each information element by the infoElementType field-the software takes appropriate action.
[0405] Additional information elements can be added to part of the dialog control message. However, during the "loop" process, the software is requested to ignore any information elements that are not of interest, so other information elements in the control message will not require software.
CN 1663156 Β
Any changes to the piece code. Of course, you may want to upgrade the software program to take advantage of another type of information; but again, the existing software continues to work until the new software is in place.
[0406] This benefit is useful in two ways. For example, when sending a message to NSI, the software program can send information units that fine-tune the behavior of SAGE. however. Generally, the default working mode of SAGE is satisfactory and does not need to be changed. Rather than having to send an information element containing SAGE's redundant, default configuration data, the information element can simply be omitted.
[0407] A handshake type protocol can be used to set up, start and terminate the dialogue between the application and the NSI. There are a variety of technologies in the prior art that provide this function. For example, all tests are started by sending the smlStdHdr_t field. In addition, optional information elements can follow. The NSI responds with the following message, which indicates that the test has started successfully, has been rejected, or the test is pending (the test is queued after other requests for the same service). The four possible dialog control response messages are started, pending, rejected, and stopped.
[0408] All start messages can have the following structure:
[0409] 1. The required smlStdHdr_t field has the msgType value of SESS_START_REQ (40) and the value of sessType to indicate that the test will be executed. For example, to start a pulse event test, a sessType value of 12 is used, a name histogram test is to be started, a sessType value of 13 is used, a spectrum analyzer power versus frequency test is to be started, a sessType value of 10 is used, and so on.
[0410] 2. Optional common dialog configuration information unit. This configures all possible parameters of interest for testing, as described below.
[0411] 3. For pulse event testing only, the optional information unit is configured with a pulse detector.
[0412] 4. Optional information unit configuration SAGE and radio.
[0413] 5. Optional, vendor's special information unit, usually (but not required) for further configuration of the radio.
[0414] 6. Optional dialogue type special information unit with configuration information for specific tests (PEVT, PHI ST, SAPF, etc.).
[0415] When starting the test, the general/common dialog configuration unit IE_Session_CFG is optional, that is, it has SESS_
START_REQ<sub>O</sub>If it is not sent, the default value is used.
CN 1663156 Β
[0416]
<td>Subfield name</td><td>description</td>
<td>infoElementLen</td><td>Len-20</td>
<td>infoElementType</td><td>IE_SESSION_CFG = 2</td>
<td colspan="2">infoElementBody</td>
<td>pendingTimeoutMs</td><td>The number of milliseconds before the "start" interrupt. The value "0" (default) indicates that the start request should not be queued (ie, no SESS_PENDING_RSP, or dialogue pending response is allowed).</td>
<td>configStopFlags</td><td>This field has an offset of 8/36; it has a size of 4 bytes. Sometimes, if some other services are reconfigured, the service that you want to start should be stopped subsequently; the reconfiguration of the stop current service is indicated by these signs: 0x00000000: not stopped due to any reconfiguration 0x00000001: SAgE configuration 0x00000002: radio configuration 0x00000004: SAPF configuration</td>
CN 1663156 Β
[0417]
<td>Subfield name</td><td colspan="3">description</td>
<td rowspan="4"></td><td colspan="3">0x00000008; SA_STATS configuration 0x00000010: SNAP configuration (note that there are four pulse detectors (PD), labeled 0 to 3.) 0x00000020: PD 0 configuration 0x00000040: PD 1 configuration 0x00000080; PD 2 configuration 0x00000100: PD 3 configuration 0x00000200: PHIST configuration 0x00000400: PEVT configuration 0x00000800: 80211_STATS configuration 0x00001000: vendor configuration OxFFFFFFFF: use the default value (according to the type of service, see the sub-table below) 1. These'configStopFlags' allow interdependent cross-services. When seeing PD0 (Pulse Detector 0) being reconfigured, the abnormal interruption of the spectrum analyzer to the power frequency (SAPF) dialogue seems to be superfluous. However, there may be cases where the use of the output of these dialogs is correlated, especially for event classification software. 2. If the dialog attempts to reconfigure a service to the same value it already has. The service is not stopped and the reconfiguration is considered "successful". 3. Logos can be combined. For example, the 0x00000003 flag is used for SAGE and radio configuration 4. The default value depends on the type of service:</td>
<td>service</td><td>configStopFlags</td><td rowspan="3"></td>
<td>All except 802. 11 statistics</td><td>SAGE, Radio, Vendor</td>
<td>Spectrum Analyzer (SAPF)</td><td>SAPF Config</td>
CN 1663156 Β
[0418]
<td>Subfield name</td><td colspan="4">description</td>
<td></td><td></td><td>Spectrum Analyzer (SAPF)</td><td>SAPF Config</td><td></td>
<td></td><td></td><td>Spectrum Analyzer Statistics (SA STATS)</td><td>SASTATS Config</td><td></td>
<td></td><td></td><td>Pulse event (PEVT)</td><td>PD 0, PD 1, PD 2, PD 3, PEVT Configs</td><td></td>
<td></td><td></td><td>Pulse histogram (PHIST)</td><td>PD 0, PD 1, PD 2, PD 3, PHIST Configs</td><td></td>
<td></td><td></td><td>802. 11 Statistics (80211 STATS)</td><td>802. 11 Stats, Radio,Vendor Configs</td><td></td>
<td></td><td></td><td>Snapshot buffer (SNAP)</td><td>SNAP Config</td><td></td>
<td>sessionDurationMs</td><td colspan="4">The duration of the conversation (milliseconds). 0 (default value) indicates that the duration is not limited.</td>
<td>sessionPriority</td><td colspan="2">1 = Highest, 254 = Lowest, first priority.</td><td colspan="2">255 (OxFF) Request the default dialogue optimization</td>
[0419] Before the NSI can start any tests, the radio is configured to the initial bandwidth (or one of 2.4 GHz or 5 GHz). Similarly, at least one (if not more) of SAGE's four pulse detectors needs to be configured at least once before many pulse test services can be run. These services include pulse events, pulse histograms, snapshot data, and spectrum analyzer power versus frequency (but only if the test will be triggered by a pulse event). Once the pulse detectors are configured, they can be left in their initial configuration for subsequent testing, although the application can reconfigure them.
[0420] The radio configuration unit IE_Radio_CFG is described in the following table. It is used to fine-tune the performance of the radio. If the information element is not sent as part of the message, the radio is configured as a default value.
<td>Subfield name</td><td>description</td>
<td>infoElementLen</td><td>Len Two 8</td>
<td>infoElementType</td><td>IE RADIO CFG = 4</td>
CN 1663156 Β
<td colspan="2">infoElementBody</td>
<td>cfreqKHz</td><td>Center frequency (kHz) ο Such as: for 2.4GHz, 2400000 There is no default value for this parameter. Before the 802.11 communication can start (of course, before NSI can start any test), the radio must be configured by the user to start the center frequency, which either uses this information unit or the vendor's special information unit.</td>
<td>radioBwKHz</td><td>Radio bandwidth (kHz). Such as: 83000 (83 MHz wideband radio) [default value] 23000 (23 MHz narrowband radio)</td>
[0423] The SAGE configuration information unit IE_SAGE_CFG is optional. It fine-tunes the performance of SAGE20. If the information unit is not sent as part of the message, SAGE20 is configured as a default value. Examples of SAGE configuration units are presented below.
<td>Subfield name</td><td>description</td><td></td>
<td>infoElementType</td><td>IE SAGE CFG = 3</td><td></td>
<td colspan="3">infoElementBody</td>
<td>lpfParm</td><td>Low-pass filter parameters:</td><td></td>
<td></td><td>Parameter value</td><td>Low pass filter value</td>
<td></td><td>0</td><td>1</td>
<td></td><td>1</td><td>½</td>
<td></td><td>2</td><td>%</td>
<td></td><td>3</td><td>1/8</td>
<td></td><td>4</td><td>1/16</td>
<td></td><td>5</td><td>1/32</td>
<td></td><td>6</td><td>1/64</td>
<td></td><td>7</td><td>1/128</td>
<td></td><td>OxFF</td><td>Use default value</td>
<td>sageCfgFlags</td><td colspan="2">Flag indicating whether conventional radioGain, AGC (automatic gain control) configuration, and/or narrowband SAGE mode are requested:</td>
CN 1663156 Β
<td></td><td>0x01: The radioGainControl specified below (in the radioGainControl field) is used. 0x02: The agcControl specified below (in the agcControl field) is used. 0x04: Narrowband (20 MHz) SAGE mode (rather than wideband, or 100 MHz, which is the default value) corresponds to the flag of the bit setting of the byte, so 0x01 is the rightmost bit; 0x02 is the second bit from the right ; 0x04 is the 3rd digit from the right. Any combination of flags can be set. If the corresponding flag is "0", the default values of these fields are used.</td>
<td>radioGainControl</td><td>If the match bit is set in sageCfgFlags, use that value.</td>
<td>agcControl</td><td>If the match bit is set in sageCfgFlags, use that value. "Age" stands for automatic gain control.</td>
[0426] The IE_VENDOR_CFG information unit contains vendor-specific configuration information. Usually, this is a special configuration relative to the specific radio used.
[0427]
<td>Subfield name</td><td>description</td>
<td>infoElementType</td><td>IE_VENDOR_CFG = 13</td>
<td>vendorinfo</td><td>Vendor special information. The format is defined by the vendor.</td>
[0428] NSI provides a pulse detector configuration unit (IE_PD_CFG), which is used to configure the pulse detector. This unit must be used when the pulse detector is first configured. It is also used if and when the pulse detector is reconfigured (which may rarely happen). The optional pulse event test configuration unit (IE_PEVT_CFG) is shown in the following table. If the configuration unit is not sent, the default value is used for the test.
<td>Subfield name</td><td>description</td>
<td>infoElementType</td><td>IE PEVT CFG = 10</td>
CN 1663156 Β
<td>Subfield name</td><td>description</td>
<td>maximumNumPevts</td><td>The maximum number of pulse events in a given PEVT message (default=30)</td>
<td>pdUsed</td><td>These bit flags select which pulse detector to use: 0x01: use PD 0 0x02: use PD 10x04: use PD 2 0x08: use PD 3 flags can be combined to indicate more than one pulse detector. For example, OxOD (binary 0000 1101) indicates the use of pulse detectors 0, 2, and 3. The value OxF (binary 0000 1111) indicates that all detectors are used (default value).</td>
[0431] Configuring the pulse detector includes selecting which pulse detector to use for the test. It also includes providing parameters that indicate the type of signal pulse (for example, the range of signal power, pulse duration, name center frequency, etc.) that will actually be interpreted as pulses. There are various options when it comes to pulse detectors:
[0432] Use an existing pulse detector configuration for service.
[0433] Allocate detectors that are not currently in use.
[0434] Reconfigure the existing pulse detector.
[0435] Release the pulse detector so that other conversations can use it.
[0436] Regardless of whether the pulse detector is configured for the first time or reconfigured before using it, the header field will first be sent with a specific msgType. The pulse detector configuration unit, IE_PD_CFG, will be sent thereafter, as described in the following table. (Other information elements can also be included in the message.) The pulse detector chooses to use the PD_ID subfield value 0-3. These do not correspond to physical pulse detectors; instead, they are a logical reference to the pulse detectors used by the transmission connection that supports the conversation.
<td>Field Name</td><td>description</td>
<td>infoElementType</td><td>IE PD CFG = 7</td>
<td>pdID</td><td>Dialogue pulse detector ID. For example, the value is 0-3.</td>
CN 1663156 Β
[0438]
<td>Field Name</td><td>description</td>
<td>configActionType</td><td>Configuration action type: 1: Assign and configure the pulse detector for use in this dialogue. 2: Reconfigure the existing pulse detector 3: Release the pulse detector for other use. (If the value is 3, the remaining fields are ignored.)</td>
<td>configProfile</td><td>Configuration summary: 0: Use the summary field below. In other words, use "0" for this field to completely determine the pulse detector configuration, which uses the remaining parameters in the information unit. Any allowed non-zero value (currently 1 for short pulses, 2 for long pulses): Choose one of several predetermined configurations, suitable for detecting pulses from different kinds of sources. In this non-zero case, the remaining fields below are ignored.</td>
<td>bwMinkHz</td><td>Minimum pulse bandwidth (kHz) ο</td>
<td>bwMaxkHz</td><td>Maximum pulse bandwidth (kHz).</td>
<td>bwHoldkHz</td><td>Bandwidth retention value (kHz).</td>
<td>bwThreshDbm</td><td>Used to define the dBm limit value of the pulse.</td>
<td>cfreqMinkHz</td><td>The minimum value of the pulse center frequency. The value is the number of kHz from the beginning of the radio frequency band.</td>
<td>cfreqMaxkHz</td><td>The maximum value of the pulse center frequency (kHz).</td>
<td>cfreqHoldkHz</td><td>Center frequency holding value (kHz).</td>
<td>durMinUsecs</td><td>Minimum pulse duration (microseconds).</td>
<td>durMaxUsecs</td><td>Maximum pulse duration (microseconds).</td>
<td>durMaxTermFlag</td><td>Actions to be performed during the duration Max: 0: terminate the pulse with TERMCODE 0 (maximum duration pulse) 1: discard the pulse (pulse is ignored)</td>
<td>pwrMinDbm</td><td>Specify the dBm value of the minimum pulse power</td>
<td>pwrMaxDbm</td><td>Specify the dBm value of the maximum pulse power</td>
CN 1663156 Β
<td>Field Name</td><td>description</td>
<td>pwrHoldDbm</td><td>Power holding value</td>
[0440] The field bwThreshDbm uses a signed dBm value, which helps determine which RF signal will be counted as a pulse. The pulse is defined by a series of time-adjacent and bandwidth-adjacent "peaks" or short-term spikes, which determine the full bandwidth of the pulse (hence the term "bandwidth limit"). A "peak layer" is established to determine which spike of radio energy is qualified as a valid "peak". The energy spikes below the "peak layer" are not eligible, while those above the "peak layer" are eligible. The bwThreshDbm parameter determines the "peak layer" based on whether'bwThreshDbm' is positive or negative:
[0441] If bwThreshDbm is negative (for example: -65dBm), the peak layer has the same value as bwThreshDbm.
[0442] If bwThreshDbm is positive (such as 24dBm), the peak layer is dynamically determined based on the current noise layer:
[0443] Peak layer dBm=noise layer dBm+bwThreshDbm
[0444] The noise floor-based mechanism (bwThreshDbm is positive) is used almost exclusively because it responds well to changes in the radio spectrum environment.
[0445] There may be a pre-defined pulse detection configuration, which is shown in the table below, to detect certain types of signal pulses.
IE_PD_CFG summary name summary description/comment configProfile field value
ShortPulsel captures short pulse jumpers, including Bluetooth headsets and many
[0446] Cordless phone.
LongPulsel captures long pulses output by microwave ovens and television transmissions (baby monitors, surveillance cameras, X-10 cameras, etc.).
[0447] The short pulse summary below is suitable for detecting short pulse frequency jumpers, such as BluetoothTM headsets and many cordless phones.
<td>CN 1663156 B</td><td>Description</td><td>book </td>
<td>IE_PD_CFG field</td><td>Summary field value</td><td>Annotation</td>
<td>name</td><td></td><td></td>
<td>bwMinkHz</td><td>300</td><td>Pulse bandwidth from 300kHz to 4 MHz, with</td>
<td>bwMaxkHz</td><td>4000</td><td>4. 5 MHz hold value</td>
<td>bwHoldkHz</td><td>4500</td><td></td>
<td>bwThreshDbm</td><td>24</td><td>The pulse-defined 24 dBm is above the noise floor.</td>
<td>cfreqMinkHz</td><td>6000</td><td>6 MHz-94 MHz center frequency with 2 MHz</td>
<td>cfreqMaxkHz</td><td>94000</td><td>Keep the value.</td>
<td>[0448]</td><td></td><td></td>
<td>cfreqHoldkHz</td><td>2000</td><td></td>
<td>durMinUsecs</td><td>250</td><td>The pulse duration is from 250 to 2000M.</td>
<td>durMaxUsecs</td><td>2000</td><td></td>
<td>durMaxTermFlag</td><td>1</td><td>If it is equal to or longer than the maximum holding of 2000 gs</td>
<td></td><td></td><td>If it continues, the pulse will be discarded.</td>
<td>pwrMinDbm</td><td>-85</td><td>Pulse power from -85 to OdBm, with 15dBm</td>
<td>pwrMaxDbm</td><td>0</td><td>The hold value.</td>
pwrHoldDbm 15
[0449] The following long pulse summary is suitable for detecting transmissions by microwave ovens and televisions (baby monitors, surveillance cameras,
X-10 camera, etc.) output long pulse.
<td>IE_PD_CFG field name</td><td>Summary field value</td><td>Annotation</td>
<td>bwMinkHz</td><td>300</td><td>Pulse bandwidth from 300kHz to 20MHz, with</td>
<td>bwMaxkHz</td><td>20000</td><td>8MHz hold value</td>
<td>bwHoldkHz</td><td>8000</td><td></td>
<td>[0450]</td><td></td><td></td>
<td>bwThreshDbm</td><td>24</td><td>The pulse-defined 24 dBm is above the noise floor.</td>
<td>cfreqMinkHz</td><td>6000</td><td>6 MHz-94 MHz center frequency with 8 MHz</td>
<td>cfreqMaxkHz</td><td>94000</td><td>Keep the value.</td>
<td>cfreqHoldkHz</td><td>8000</td><td></td>
<td>durMinUsecs</td><td>2800</td><td>Pulse duration from 2800 to 8000MS</td>
<td>CN 1663156 B</td><td>Description</td><td>book</td><td></td>
<td>durMaxUsecs</td><td>8000</td><td></td><td></td>
<td>durMaxTermF1ag</td><td>0</td><td>Don't give up long pulses</td><td></td>
<td>[0451] pwrMinDbm</td><td>-70</td><td>Pulse power from -70 to OdBm,</td><td>With 20dBm</td>
<td>pwrMaxDbm</td><td>0</td><td>Hold value</td><td></td>
<td>pwrHoldDbm</td><td>20</td><td></td><td></td>
[0452] The pulse detector does not have to be configured before the pulse histogram test is run for the first time. As mentioned above, this is done by running the pulse event test for the first time. The dialog control message is sent, which contains a header field with a sessType value of "13". The following is an optional information unit, as shown in the following table, which details the optional pulse histogram test configuration unit (IE_PHIST_CFG)<sub>o</sub>If it is not sent, the default value (as shown in the table) is used.
<td>Subfield name</td><td>description</td>
<td>infoElementType</td><td>IE PHIST CFG = 9</td>
<td>forwardTimeoutMs</td><td>The number of milliseconds between each pulse histogram message update. The default value is 1000 (it generates 1 pulse histogram message every second).</td>
<td>pdUsed</td><td>These bit flags select which pulse detector to use: 0x01: use PD 0 0x02: use PD 10x04: use PD 2 0x08: use PD 3 flags can be combined to indicate more than one pulse detector. For example, 0x0D (binary 0000 1101) indicates the use of pulse detectors 0, 2, and 3. The value OxF (binary 0000 1111) indicates that all detectors are used (default value).</td>
[0454] The spectrum analyzer power versus frequency test starts by sending a dialog control message, which contains a header field with a sessType value of "10"; thereafter are optional information elements, as shown below.
<td>Subfield name</td><td>description</td>
<td>infoElementType</td><td>IE SAPF CFG = 6</td>
CN 1663156 Β
<td>Subfield name</td><td>description</td>
<td>usecsBetweenSample s</td><td>This value indicates the number of microseconds between spectrum analyzer power and frequency samples. The default value is 100000, which is 10 samples per second.</td>
<td>transitionalPdUsed</td><td>Indicates which PD is used for transition mode. 0x00: Use PD 0 0x01: Use PD 10x02: Use PD 2 0x03: Use PD 3OxFF: Do not use transition mode (default value) If'transitionalPdUsed is not equal to OxFF, SAPF sampling collection is turned on and off by the specified pulse detector. When the pulse detector is on (pulse is in progress), SAPF samples are collected. When the pulse detector turns off, sampling is stopped. The time between samples sent to the user is also determined by'usecsBetweenSamples'.</td>
[0457] The spectrum analyzer statistical test is started by sending a dialog control message, which contains a header field with a sessType value of "11". Optional information elements follow, as described below.
<td>Subfield name</td><td>description</td>
<td>infoElementType</td><td>IE SA STATS CFG = 8</td>
<td>usecsBetweenSamples</td><td>Indicates the number of microseconds between statistics updates of the spectrum analyzer. The default value is 100000, which is 10 samples per second.</td>
<td>pwrThreshDbm</td><td>The dBm power limit value used by the "Duty Cycle" and "Peak Count" statistics. The default value is 24dBmo ("Duty Cycle" statistics indicate how often the signal power is higher than the limit value. "Peak Count" only counts peaks at or above the limit value.)</td>
[0459] The field pwrThreshDbm takes a signed value, which helps determine the minimum power level of "duty cycle" and "peak count". The pwrThreshDbm parameter determines the "layer", or the minimum energy level of these measurements, based on whether pwrThreshDbm is positive or negative:
[0460] If pwrThreshDbm is negative (for example: -65dBm), the layer has the same value as pwrThreshDbm.
[0461] If pwrThreshDbm is positive (for example: 24dBm), the layer is dynamically determined based on the current noise layer: power layer dBm = noise layer dBm+pwrThreshDbm noise layer-based mechanism (pwrThreshDbm is positive) is almost exclusively used, because It responds well to changes in the radio spectrum environment.
[0462] The spectrum event data test starts by sending a message, which contains a header field with a sessType value of "14".
CN 1663156 Β
[0463] The snapshot message test starts by sending a message, which contains a header field with a sessType value of "17", followed by an optional configuration unit. The optional snapshot message configuration unit (IE_SNAP_CFG) follows. If it has not been sent, the default value is used for testing.
<td>Subfield name</td><td>description</td>
<td>infoElementLen</td><td>Len = 12</td>
<td>infoElementType</td><td>IE_SNAP_CFG = 12</td>
<td>numberSamples</td><td>Number of samples captured</td>
<td>snapPdUsed</td><td>The snapshot pulse detector is used to trigger a snapshot. 0x00: use PD 0 0x01: use PD 10x02: use PD 2 0x03: use PD 3OxFF: use of snapshot is prohibited</td>
[0465] By specifying which pulse detector is used to trigger the snap capture, it is possible to control which type of signal pulse is detected to trigger the raw ADC data capture.
[0466] The NSI may reply to the test start message to notify the requesting software application of the test status, and prioritize the application capability to transmit data for the requested test. It is also possible to stop a test that has been requested. The following table summarizes the dialog control messages that can be sent via NSI.
[0467] An example of how NSI can be used to configure and obtain data from the SAGE pulse detector is shown in FIG. In the chart, the solid line is used for a unified message, and the dotted line indicates the title, information unit, and indicative message that make up a single message sent. Step 6000 represents sending a start message to the software application of NSI. The message includes a message header with a specific msgType value, which indicates that this is a start message and the sessType value indicates that this is a pulse event test.
[0468] If it is the first message request sent, the start message includes an IE_Radio_CFG unit or an IE_VENDOR_CFG unit. Two IE_PD_CFG units are sent to configure pulse detector 0 to detect short pulses, and to pulse detector 1 to detect long pulses. The pulse event information unit IE_PEVT_CFG has been sent to indicate which configured pulse detector is used. Applicable data from SAGE is generated and made available to NSI. In step 6010, the NSI replies with a message confirming that the service has started and the service status is in progress. In step 6020, a series of indicative messages are sent with data. Each message includes indicating that it is an indicative message and includes one or more ClassPevt fields, which store the actual data, which describes the measurement characteristics of the pulse detected within the configured parameters. In step 6030, other indicative messages are sent.
[0469] Exemplary Spectrum Management Scenario
[0470] Scenario 1: Network monitoring, reporting and action
[0471] Reporting is the simplest and most powerful application of spectrum management. In this example, the report is used to help find the presence of "fraud" or unwanted noise sources.
[0472] Example 1: Company WLAN Environment
[0473] Measurement: Each AP measures its environment. If the AP detects an unexpected noise signal, it will
CN 1663156 Β
The sample data is forwarded to the WLAN management server, such as the server 1055 in Figure 1.
[0474] Classification: In the server, signals are classified based on known signal pulse information. The location of the signal source is determined.
[0475] Policy: The server issues a warning to the WLAN administrator.
[0476] "The interference signal was detected and identified as a Panasonic cordless phone in room 400."
[0477] Action: The server sends a report (such as e-mail, screen pop-up window, etc.) to the administrator, including spectrum analysis graphs and graphical location information. Recommendations for correct action can be provided to the network administrator.
[0478] Example 2: Home WLAN Environment
[0479] Measurement and classification: similar to the above, but in this case, AP and STA are used for measurement, and the classification software runs on the PC connected to the STA.
[0480] Policy: Users are notified via simple language messages on their PCs, but the reaction is automatic. "The cordless phone is causing interference. Click 0K to call the noise resolution wizard." The "noise resolution wizard" can be a spectrum action, which will remove the noise effect on the device, such as by moving to another channel. Or, automatically take the correct action and display the event summary information to the user.
[0481] FIGS. 14 and 15 show flow charts (modified from the flow chart shown in FIG. 5) that can be used to implement the situation 1 situation. User help tools can be provided through software programs executed on WLAN AP or STA. In the case of STA, the tool may automatically perform spectrum management actions or control. In the case of AP, where the network administrator has monitoring and other control privileges, the tool may not be automatic, but it gives the network administrator user a choice to take action. Of course, non-automatic tools can be located on devices such as STA.
[0482] FIG. 14 is a flowchart of the automatic version of the tool, and FIG. 15 is a flowchart of the non-automatic version. The spectrum sampling step 2000, the signal classification step 2010, and the spectrum policy execution step 2020 are similar to the steps with the same reference numbers described above in conjunction with FIG. 5. In Figure 14, after the signal classification step 2010, in step 2015, based on the output of the signal classification step, if a certain type of signal or interference is detected, an alarm message is displayed or notified to the user (the user on the computer) ). In step 2020, based on the output of the signal classification step, the spectrum policy is automatically executed. In step 2025, the spectrum event summary information is displayed or notified to the user. For example, spectrum action or control can be the implementation of interference avoidance procedures.
[0483] Referring to FIG. 15, the steps 2000, 2010 and 2015 of spectrum sampling, signal classification and display alarm are the same as those described above in conjunction with FIG. 14. However, in FIG. 15, after the alarm is displayed, step 2016 is called to display event information with suggested actions. In step 2017, the user can select the spectrum policy to be executed or go to the "policy guide" to set the policy for this type of alarm and the action to be taken. An example of a policy guide is information, which simplifies the task of generating a spectrum policy by asking a user (or administrator) a set of questions. Based on this information, the policy guide generates spectrum policies and associated actions suitable for those parameters. The policy guide is described in detail below. The action suggested in step 2017 may be different from the suggestion to change the operating parameters of the device or network, as described below in conjunction with FIG. 26.
[0484] FIGS. 16-25 show the output of an exemplary graphical user interface (GUI) application for connecting the spectrum activity and management information interface to/from the user. The GUI provides the means to monitor, configure and analyze the various components of the spectrum management system. It is connected to other components of the spectrum management system via NSI, as described above in conjunction with Figure 6.
[0485] GUI applications can be written as Java®: sockets on TCP can be used to communicate spectrum activity information associated with specific radio communication devices. Once the communication is established, the application will be generated, which waits on the port to detect the spectrum activity information message from the source device. As the information arrives through the socket, it is processed and displayed to the various components that are detecting these messages. The message dispatcher dispatches the processed messages to the appropriate display panel. All messages will also be saved in the log file located in the directory specified by the user, in PE.ini for the key PE_L0GS. The GUI application was reported to
CN 1663156 Β
The data from the measurement engine and the classification engine are as described above in conjunction with Figure 6.
[0486] The GUI includes several sub-parts:
[0487] Fault management. Provide means to detect, receive and provide fault information. The fault message describes the cause of the fault.
[0488] Configuration management. Provide a means to configure the spectrum composition. The spectrum consultant provides configuration-related information and guides users through the configuration process.
[0489] Performance Management. Monitor the throughput of communication protocols, and collect statistical information indicating spectrum utilization and display them.
[0490] Event Management. Provides means to monitor different spectrum events and displays them in the form of graphs and histograms.
[0491] FIG. 16 shows how an alarm can be generated when interference is detected, where the alarm is displayed in the icon of the GUI bar. The user clicks on the icon to get more information and arrive at the spectrum management control window in Figure 17. In the spectrum management tabulation, there may be an icon indicating the signal type. In addition, there may be a sub-window that displays the "rated capacity" of the frequency band. The rated capacity can be derived from the "quality" measurement reported as the spectrum analyzer statistics above, and is a qualitative estimate of the carrying capacity of the entire frequency band.
[0492] By clicking the "event log" button on the spectrum management control window in FIG. 17, the event log screen in FIG. 18 is displayed. The event log displays event information in tabular form. Each event has associated fields including event message, event data and time, event timestamp, event ID and event source ID, similar to the fields of the NSI spectrum event message mentioned above: [0493] Alarm level, ranging from low to high Critical, indicating how much interference the event can cause to 802.11 communications.
[0494] Event types include "interference signal", "information" and "error".
[0495] A special message describing the event.
[0496] The date and time of the event. This is the date and time populated by the application based on the computer's internal clock.
[0497] A timestamp in seconds and microseconds, which indicates the time when the event occurred, which is counted from the beginning of the first test. This data is provided by the measurement engine.
[0498] ID indicates the type of device, and the following table provides a partial list of IDs.
[0499] 15-bit device ID (bits 4, 3, and 2 are shown, with corresponding decimal 1 digit: on/off
[0500] System value [Consider empty 1 bit])
[0501] 2 (001_)-microwave oven 1 = on
[0502] 4 (010_)-GN Netcom Cordless Phone 0 = Off
[0503] 6(011_)-Bluetooth headset
[0504] 8(100_)-Baby monitor
[0505] For example, the display value of 7, which is the same as ([Oil] [1]), means that the Bluetooth headset is turned on. 8([100][0]) means that the baby monitor has just been turned off.
[0506] The source ID identifies the target source. This parameter is important when more than one source feeds data to the application.
[0507] More detailed information about a specific event is displayed, which is achieved by clicking on the event line to open the dialog. The dialog contains detailed information about the event in the form of a text area containing a description of the event and a text area containing the details of the event. Figures 19 and 20 show examples of detailed event dialogs. Figure 19 shows exemplary spectrum event summary information after performing actions in accordance with the spectrum policy. The detailed event information indicates that the action has been automatically taken according to a process similar to that shown in FIG. 14. FIG. 20 shows event information, in which actions are not taken automatically, but suggest how the user can avoid interference from another device, according to a process similar to that shown in FIG. 15.
[0508] FIG. 21 shows the display of statistical information, such as statistical information of a specific communication protocol, which may include enhanced statistics.
[0509] FIGS. 22-25 show exemplary display screens in a graphic panel for displaying spectrum activity information. Graphic surface
CN 1663156 Β
The board includes graphics on the right side of the display screen and drawing types on the tree diagram on the left. As long as the "Start" button is clicked and the data is available on the socket, the spectrum analysis graph will be drawn. If you press the "Stop" button, the drawing action is prohibited, and the spectrum analysis graph will no longer be updated. Spectrum activity information is displayed on the spectrum analysis graph, pulse histogram, and pulse graph.
[0510] The spectrum analysis diagram of FIG. 22 includes spectrum analyzer power versus frequency information, as described above. The spectrum analyzer statistical information is shown in Figure 23 and includes a spectrum analyzer statistical graph, a duty cycle graph, and a peak number bar graph. The SA statistic graph shows the statistical data on the frequency spectrum. It is based on spectrum messages, where a single message is established from a certain number of consecutive FFT cycles. The first line represents the average power during the sampling period. The second line indicates "the maximum power per single sampling period". The third line represents the "absolute maximum power" of all messages received so far. The duty cycle graph represents the percentage of time that the power in the RF spectrum is above the specified limit for a given frequency.
[0511] FIG. 24 shows an exemplary pulse histogram for center frequency, bandwidth, pulse duration, pulse gap, pulse power, and pulse count. The following types of graphs can be used for observation:
[0512] The center frequency represents the distribution of the center frequency of the pulse. The graph spans a bandwidth of 100MHz. The actual center frequency is determined by combining the center frequency shown in the figure with the entire RF center frequency (2.4 GHz).
[0513] Bandwidth represents the bandwidth distribution of the pulse.
[0514] The pulse duration represents the duration distribution of the pulse.
[0515] The pulse gap represents the distribution of the gap time.
[0516] The pulse power indicates the distribution of the power of the pulse.
[0517] The pulse count indicates the number of pulse events counted per sampling interval.
[0518] FIG. 25 shows a pulse diagram of each pulse detected in the frequency band. When the "Capture" button is selected, the GUI application will capture pulses and display them on the pulse graph. Each pulse is defined as three-dimensional and presents a single point.
[0519] FIG. 26 is a flowchart describing another example of the spectrum management support tool process 5000, which can be used to debug certain spectrum conditions on a client device. Process 5000 can be initiated by user instructions to check the performance behavior of the device as required, through an appropriate user interface application, or in response to detecting performance degradation, as described below. At the beginning, in step 5010, the device monitors bit error rate (BER) or PER or other spectrum activity information. If the spectrum activity is high or the BER or PER is high, it is marked in step 5020, and in step 5030, the device can calculate the signal-to-interference and noise ratio (SINR) and perform additional spectrum analysis. Based on the calculated information, the device may determine the reason for the degradation in step 5040 either because of interference or because of low signal level.
[0520] If the cause is determined to be a low signal level, a series of user recommendations are made, and once the user performs an action, further analysis is performed to see if the signal level has returned to a sufficient level. As in step 5050, the device user is notified that the signal is weak. In step 5060, local actions are suggested to the user to improve the signal level. If it is determined in step 5070 that the adjusted signal level has returned to a sufficient condition, the process is terminated. Steps 5060 and 5070 can be repeated multiple times (m iterations). If those user adjustments do not contribute to the signal level, then in step 5080, it is recommended that other devices on the link, such as the AP, take additional actions. These recommended actions may include adjusting the antenna at the AP or the location of the AP. In step 5090, it is determined again whether the signal level at the device is at a sufficient level. If not, the process continues to step 5100, where the user is notified that a reliable connection cannot be supported, and other suggestions may include reducing or removing obstacles between the two devices, and reducing the interval/distance between the two devices .
[0521] If the cause is determined to be interference in step 5040, a series of steps are performed. First, in step 5110, the interference is classified, such as by signal type. In addition, if it is determined in step 5120 that the interference is of a type that can be mitigated using interference mitigation techniques, the device automatically executes those techniques (which may include cooperation with other devices such as APs or actions of other devices).
CN 1663156 Β
Made). Examples of interference mitigation techniques are as described above. If the interference is of a type that cannot be automatically mitigated, various other actions are suggested to the user. In step 5140, the user is notified that the interference condition has been detected. In step 5150, if the interference is of a known type, several actions for manual handling of the interference are suggested. In step 5160, if the interference is caused by another IEEE 802.11 network on the same channel, the recommended user action is to adjust the AP of the user network to a clean/unused channel. In step 5170, if the interference is caused by the IEEE802.11 network on the adjacent channel, the suggested user actions may include adjusting the AP to a channel away from another network's channel, adjusting the physical location of the interfering network, or adjusting the user's network. The location of ap. In step 5180, if the interference is caused by the microwave oven, the suggested user actions may include adjusting the AP of the user network to a cleaner channel, adjusting the position of the AP in the user network, and adjusting the user network for better interoperability. Or increase the distance between the users device and the microwave oven.
[0522] Steps 5190 and 5200 also show another situation. In step 5190, it is a situation where the interference is determined to be a BluetoothTM device. Notify the user that the BluetoothTM device (synchronous or asynchronous operation) is the cause of the interference, and suggested user actions include increasing the interval between the user's device and the interfering device. In step 5200, if the interference is caused by the cordless phone, it is recommended that the user increase the distance between the user equipment and the cordless phone base station equipment, such as at least 5 m away from the user equipment or the AP in the user network.
[0523] If it is determined in step 5150 that the interference is unknown interference, then in step 5210, the suggested user actions may include checking for recently acquired or configured wireless devices that may cause interference, increasing the interval/distance between devices that are not compatible with the network, And notify users of various potential network incompatibility.
[0524] FIG. 26 shows various steps for informing the user with information. There are many mechanisms available to notify users, including the visual display of information, such as displaying text on a display, announcing the information with sound synthesized auditory reports, converting the information into audiovisual fragments, and displaying one or the other representing the information to be converted Multiple icons or symbols, etc. Examples of these displays are shown in Figures 16-20.
[0525] Case 2: Secondary use
[0526] Primary use refers to allowing devices to use "idle", licensed spectrum. This is not just the future situation, in Europe, it already exists in the 802.11a situation. At 5GHz, the radar is regarded as the first user, and 802.11a is the second user. The current implementation simply stalls the network and looks for RSSL·
[0527] Simple RSSI measurement and DFS are not sufficient to enable secondary use. The "pecking sequence" between the first-level user and the second-level user requires different responses to noise depending on whether it comes from the first-level or another second-level user. By detecting and classifying the signal, it makes a distinction between radar and other spectrum users based on RSSI technology that are faster and have fewer false detections, and consider choosing a new channel that is not affected by the radar.
[0528] In order to become a secondary user, the following things will happen:
[0529] Measurement: Periodically aborted to check the existence of primary users.
[0530] Classification: distinguish first-level users from other second-level users.
[0531] Policy: Determine how long and how many times to perform the measurement, and how to respond when a first-level user is detected.
[0532] Case 3: High QoS in the presence of interfering signals or noise
[0533] 802.11a networks carry video streams. Background noise causes the problem of packet loss. Assume that APs in the network have multi-channel capabilities.
[0534] The best solution is achieved by measuring and classifying noise and using different policies according to the interfering signal. Referring to FIG. 27, the first situation (case 1) is shown, where the noise is background hum, which is consistently present. The policy associated with this situation can use spatial processing algorithms to improve the link tolerance between the two devices. Spatial processing algorithm
CN 1663156 Β
An example of is disclosed in the following pending U.S. application: Application 10/174, 728 filed on June 19, 2002, entitled "System and Method for Antenna Diversity Using Joint Maximum Ratio Combining"; June 2002 Application No. 10/174, 689 filed on the 19th, entitled "System and Method for Combining Antenna Diversity Using Equal Power Connectors with Maximum Ratio"; and filed on July 18, 2002, entitled "Using Time Domain Signal Processing" The system and method of combining the maximum ratio of joints" application 10/064, 482.
[0535] In case 2, the interference is caused by a slow frequency hopping signal. The policy associated with this situation should use redundant channels to reduce the packet error rate.
[0536] In case 3, the interference is caused by a fast frequency hopping signal. The policy associated with this situation should use ratio 1/2 codes across wider bandwidth channels to reduce the packet error rate.
[0537] Case 4: Channels are discovered in a dense environment
[0538] In a sparse use environment, it may be enough to simply search for channels without interference. This is the easier situation.
[0539] But in an environment of intensive use, the device can easily find that no interference-free channel is available.
[0540] In this case, one approach is to accept the channel with the "lowest" interference. If the new network must compete with another spectrum user, the best channel selection algorithm should be considered, for example:
[0541] What is the priority of each network?
[0542] With which network can the new network cooperate?
[0543] For example, the IEEE 802.11 specification is designed to allow two 802.11 networks to reasonably share channels, whereby each network can be allocated a portion of bandwidth. Making such decisions in the best way requires measurement, classification, and policy capabilities.
[0544] Case 5: 802.11 with Bluetooth
[0545] The BluetoothTM signal is a frequency hopping signal. Therefore, it can cause periodic interference to APs in IEEE 802.11 networks using fixed channels. In order to work with BluetoothTM, IEEE 802.11 networks can perform measurement and classification to determine the existence of BluetoothTM networks.
[0546] Once Bluetooth is detected, several policies can be invoked:
[0547] Policy la: If Bluetooth is using synchronous (SCO) communication, determine the timing of any 802.11 QoS packets so that they appear between the timing of SCO packets. Several techniques are described in the pending patent applications mentioned above.
[0548] Policy lb: If Bluetooth is using SCO communication, do not transmit during the SCO period.
[0549] Policy 2: Try to minimize the impact of interference received from Bluetooth by adjusting the easy-to-handle antenna.
[0550] Policy 3: In response to packet errors, do not transition to a lower data rate. This may just make the problem worse. Experiments have shown that when exposed to the interference of the Bluetooth frequency hopping signal, the IEEE802.lib device detects the "increased error rate" and responds by reducing its wireless broadcast transmission rate. Reducing its transmission rate is not necessarily helpful, and when the IEEE 802.lib device continues to detect unacceptably high (or potentially higher) error rates, it further reduces its data rate. This action is compatible with the IEEE 802.11 standard, but it is also obviously not wise. By reducing the wireless broadcast data rate and increasing the duration of the information packet, the device effectively increases the time it is exposed to the frequency hopping device. The main part of the standard can improve the coexistence between open standard protocols in these types of situations, and by deploying the cognitive spectrum management techniques described here, this type of performance degradation can be minimized or even avoided.
[0551] Case 6: Bluetooth in 802.11
[0552] In order to work with 802.11, the Bluetooth network should perform measurement and classification to determine the existence of the 802.11 network. Once the 802.11 network has been detected, the policy can be invoked:
[0553] Policy 1: There are no adaptive hopping devices supported for BluetoothTM networks
CN 1663156 Β
[0554] In this case, the Bluetooth network should avoid interference to 802.11 by making the storage slot where the 802.11 data or ACK will appear free. An example of this technique is disclosed in US Patent Publication No. 20020061031. When the "real" data network is the current network, the BluetoothTM network only wants to use this algorithm, which is the opposite of the noise source. This also proves the advantages of signal classification over simple RSSI measurement.
[0555] Policy 2: Adaptive hopping device supported for BluetoothTM network
[0556] In this case, the Bluetooth network should remove the frequency hopping signal entering the 802.11 frequency band. 802. 15. 2 is a well-known suggestion to use missing packets to confirm the presence of foreigners. This is not always effective. The interference is not always symmetrical (ie, a Bluetooth network may cause problems that another network has, but the other network does not interfere with the Bluetooth network). In addition, this requires that packets be lost before another network is detected.
[0557] Case 7: DRA with frequency hopping signal
[0558] A dynamic rate adaptation (DRA) device uses more spectrum when it is available, and uses less spectrum when it is not available. For example, the increased spectrum can be used for higher data rates, QoS, etc. DRA can be implemented as a new protocol (for example, a "bed of needle" orthogonal frequency division multiplexing system), or by aggregating multiple standard channels.
[0559] However, the problem has arisen, that is, how should DRA handle the frequency hopping protocol. One solution is that, in order to handle the frequency hopping signal gracefully, the DRA equipment must be measured and classified to detect the frequency hopping device. Once the frequency hopper has been classified, the policy can be invoked. Exemplary situations are as follows:
[0560] Policy 1: If a frequency hopping signal is detected, limit the DRA to 50% of the frequency band, so that the frequency hopping network can still work.
[0561] Policy 2: If the frequency hopping network adjusts its hopping device adaptively (observed by measurement), DRA can be allowed to use 75% of the frequency band.
[0562] Case 8: Specific Device Policy
[0563] In a consumer environment, users may want to define priorities between specific devices. For example, at home, the user may want to establish a "pecking sequence" between cordless phones, streaming video, WLAN, and so on. In order to consider specific equipment-level policies, it will be necessary for equipment to measure and classify other operating equipment. Devices can be made to recognize each other by directly exchanging classification information or by using "training" methods similar to universal remote control. Unapproved devices will be handled with various policies:
[0564] In an office environment, report immediately.
[0565] In the home environment, this situation is considered low priority.
[0566] Case 9: Specific Environmental Policy
[0567] Certain policies will rely on environmental information such as location, time of day, etc.
[0568] These policies may not be updatable because they rely heavily on the user's wishes.
[0569] Network selection:
[0570] In a home environment, a specific basic service station identifier such as BSSID 7 is always used.
[0571] In an office environment, the lowest CCA between BSSID 23 and 27 is used.
[0572] Use the BSSID that provides the lowest charge-per-minute access in the public access environment (airport)<sub>O</sub>
[0573] Communication priority order:
[0574] In the morning, prioritize WLAN download communication.
[0575] At night, prioritize video stream data.
[0576] Policy wizards can be used to allow inexperienced users to create complex policies.
CN 1663156 Β
[0577] Case 10: Adjusted special policy
[0578] In order to comply with the adjustment needs of various countries, different policies may be required.
[0579] These policies should be downloadable because they are not very large and they change at any time.
[0580] The European Communications Commission (ECC) may impose uniform extension requirements on the 802.11a channel selection algorithm. Each country may have different transmission power, frequency band and channel requirements.
[0581] Case 11: Dynamic Frequency Selection
[0582] Dynamic frequency selection is useful in situations where no WLAN signal interferes with a specific WLAN channel. For example, referring to Figure 1, WLAN STA1 1030(1) (e.g., a laptop with an 802.11 network interface card (NIC)) is passing through one of WLAN AP 1050(1) to IJ 1050 (N) and server 1055 Exchange data. Turn on the baby monitor transmitter 1060 in the same channel that AP 1050(1) is using to exchange data with STA1030(l). The spectrum sensitive element 1200 (or cognitively-enabled AP) generates spectrum activity information provided to the network management station 1090. AP 1050(1) can provide 802.11 network statistics. Based on 802. 11 Network statistics, the network management station 1090 will detect that the AP 1050(1) cannot obtain interference-free channel access (CCA) to the channel. The network management station 1090 can analyze the spectrum activity information provided by the spectrum sensitive element 1200 or AP1050 to find another non-interference channel in the frequency band. The network management station 1090 can then reassign the clear channel to the AP 1050(1). AP 1050(1) will start transmitting beacons on the new interference-free channel. STA 1030(1) will finally turn to scanning channels to obtain beacons on the new interference-free channel and the 802.11 communication with AP 1050(1) will continue on the new interference-free channel. If a certain part of the frequency band is continuously used by other devices, another device or network can be programmed or controlled to not work to not transmit on these bandwidths. Instead, by searching for "no interference" channels in a prepared manner, devices or networks can be controlled to propagate on these channels.
[0583] Case 12: Adjust the packet size
[0584] The pulse histogram may indicate the duration of the interval between the detected signal pulses. If the interval is very short, the device or the device's network can be programmed to "do not work" again to reduce the size of the packet to fit within the available time interval between pulses. This reduces the chance that a single packet will experience interference and also reduces the need to retransmit the packet. Of course, when the interval between pulses becomes longer, the packet size can be increased again, resulting in a higher transmission speed.
[0585] The foregoing scenario shows the advantages of aggregating intelligence on spectrum usage and the advantages of using this information. Intelligent data rate selection is another example of the advantages of intelligent systems over current systems, in which there is no direct information about interference. Without an understanding of interference, it is difficult to distinguish between interference, packet errors, or problems caused by hidden nodes. As a result, the current system implements the "best guess" algorithm, which often reduces production efficiency. An example is 802.lib that responds to the presence of a frequency hopping signal, such as BluetoothTM SCO. The initial 802.lib response is the compensation of the data rate, which in turn leads to more conflicts, and the 802.lib responds to additional rate compensation and so on. In contrast, the aforementioned systems use signal classification and other interference timing information to make intelligent decisions about data rates.
[0586] In addition, the current system uses a static predetermined packet fragmentation level, and there is no information about the timing arrangement of interference signals. In response to interference patterns, the intelligent spectrum management system considers the optimization of fragmentation levels and information packet timing arrangements.
[0587] More detailed spectrum management system architecture
[0588] Refer to FIG. 28, which shows an architecture diagram of a spectrum management system similar to that shown in FIG. 6, but splits some measurement functions, classifications, and spectrum actions or controls into multiple layers. The processing levels are:
[0589] 1) L0: Hardware Management Service 100
CN 1663156 Β
[0590] 2) L1: Engine Management Service 200
[0591] 3) L2: Manager Service 300
[0592] 4) APP: Application Service 400
[0593] Compared with the diagram of FIG. 6, level L0 corresponds to the hardware or physical layer level, and the driver is located above the hardware level; level L1 corresponds to the spectrum level; and level L2 corresponds to the network level. The upper layer, APPP, corresponds to the UI module, the system integration module, and other systems or applications integrated by the system integration module.
[0594] L0: Hardware Management Service
[0595] The L0 hardware management service 100 manages the hardware resources 10 used in the spectrum management system. These hardware resources are located in a communication device that operates in a frequency band shared with other devices and communication devices. The management of hardware resources includes management of the radio (radio transceiver or receiver) 12 on the basis of contention management and traffic data accumulation, which will be described further below.
[0596] In the L0 hardware management service level 100, there are the L0 resource manager, the LO SAGE engine 120 that manages the SAGE20, and the L0 measurement engine 130. The L0 hardware management service can be executed on a "single chip", which means an integrated circuit (IC) included in a communication device to process signals for transmission and reception in the network. This processing stage can be similarly applied to all communication devices working in the network.
[0597] The LO SAGE engine 120 is a device driver that connects high-level instructions to the SAGE20 interface, and translates these instructions into signals that can be recognized by the SAGE20. The instructions may include one or more component formulation signals for SAGE20, as described below.
[0598] The L0 measurement engine 130 performs initial accumulation of the data output by the SAGE20 into a spectrum utilization map (SUM) format.
The spectrum utilization diagram will be described below.
[0599] L1: Engine Service
[0600] The L1 engine service level 200 is the first level of measurement, classification, location, and policy service execution. In the engine service level, there are L1 engines, such as L1 location engine 210, L1 measurement engine 220, L1 classification engine 230, and L1 policy engine 240, which control L0 hardware management-level processes and use information to perform their next-level services. There is also an L1 resource manager 250 in the engine management level 200. The protocol adjustment engine 260 is located in the L1 engine service level 200, and it performs functions related to protocol management; it does not play an important role in spectrum management.
[0601] The L1 engine service level 200 is usually executed "off-chip", which is in the main processor of the communication device. However, some L1 processing can be performed on the chip, if additional external memory is supported. Some local policy decisions, such as local interference mitigation, can be decided at the L1 engine processing level. The L1 engine service level can be similarly applied to all communication devices working in the network.
[0602] L2: Manager Service Level
[0603] The next higher level is the L2 manager service level 300. The L2 Manager service is responsible for more complex network spectrum management functions. Examples of processes at this level are the L2 location manager 310, the L2 measurement manager 320, the L2 classification manager 330, and the L2 policy manager 340. There are also L2 resource manager 350 and L2 network spectrum manager 360. The processing at this level can be performed at a central server location, which combines and calculates the information for processing, and does not have to pass through a communication device working in the network.
[0604] Other software functions that can be located at this level include database functions with reporting and query services to analyze spectrum activity information, security policies, interference policies, management information bases (MIBs), and web servers collected from lower processing levels. , SNMP agent, SendMa subscription, etc.
CN 1663156 Β
[0605] ΑΡΡ: application service level
[0606] The highest level in the system architecture is the AP Application Service Level 400, in which network applications are executed. Examples of the network include a spectrum analyzer display application 410, a location/map display application 420, a measurement/statistics application 430, and a spectrum management policy application 440.
[0607] Referring to FIG. 29, according to the spectrum management diagram, the network may include devices such as a station STA500, an access point AP510, a monitoring network spectrum manager 360, and an application service 400. The example of the network spectrum manager 360 is responsible for the subnet composed of the AP510 and their related STA500. While the terms STA and AP are used here, they have the relevance of the IEEE 802.11x WLAN application. It should be understood that the spectrum management architecture and the process described herein can be applied to any wireless communication application. The network spectrum manager 360, as mentioned above, may be located on a server computer (such as the network management station 1090 in FIG. 1) that is connected to APs in its subnet by wire or wirelessly. In many cases, the subnet is actually the entire network in question.
[0608] Spectrum management is designed to work with parallel external network management entities. For example, a general network management system may be in a suitable location for enabling, disabling, and configuring network components such as APs. The network spectrum manager has a service interface that allows notification of changes made by the external network management system. Similarly, spectrum management provides service interfaces so that general network management systems can be notified of changes within the network such as channel allocation and STA association. The network update service interface can be used by any consistent application in the application service 400.
[0609] Referring to FIG. 28, examples of spectrum management services include location, measurement, classification, and policy management. The policy manages the configuration and starts the algorithm, which controls the coexistence between different types of communication devices operating in the frequency band, the channel allocation of the equipment in the frequency band, the transmission power control of the equipment operating in the frequency band, and the allocation to the operation in the frequency band The bandwidth of the device.
[0610] Most spectrum management services are independent of special media access protocols. For example, spectrum analysis, classification, radio measurement, and certain policies are independent of the agreement. In addition to these protocol-independent services, spectrum management also provides special support for certain protocols, such as supporting traffic statistics related to specific media access protocols, such as IEEE 802. llx and coexistence algorithms. However, the entire spectrum management architecture can be applied to any frequency band, such as the unlicensed frequency bands of the ISM in the United States and other unlicensed frequency bands in the world.
[0611] Network Spectrum Interface
[0612] Turning to FIG. 30, there are multiple NSI APIs connected to the architecture of FIG. 28. They are:
[0613] 1) Hardware NSI 170, which connects the L0 hardware management service 100 interface to the L1 engine management service 200;
[0614] 2) Engine NSI 270, which interfaces the L1 engine management service 200 to the L2 manager service 300. Bow
NSI270 is similar to the NSI mentioned in Figure 6; and
[0615] 3) The manager NSI370, which interfaces the L2 manager service 300 to the application service 400.
[0616] NSI is a logical interface, which is embodied in various program interfaces and transmission mechanisms, and any appropriate transmission mechanism can be adopted. It mainly affects the hardware NSI170. For example, if the L0 hardware management service is executed on the chip, and the L1 engine management service is executed in the main device driver, the transmission mechanism for the hardware NSI can be on the PCI interface. On the other hand, if the L0 hardware management service is executed on the chip along the L1 engine management service, the transmission can be a native (on-chip) software interface. In either case, the hardware NSI service model can be the same.
[0617] FIG. 31 shows how NSI is used between the various levels of the spectrum management software architecture in the context of the system hierarchy shown in FIG. 28. For each NSI, there is an application programming interface (API), which defines the transmission protocol of the interface. At the highest level of the spectrum management architecture, there is the NSI management service API372, which defines how information is exchanged between the L2 manager service 300 and the application service 400. The NSI Manager Service API372 of any subnet can be in the same subnet
CN 1663156 Β
Or connect to the L2 manager service interface of other subnets. At the next level, there is the NSI engine service API272, which defines how information is exchanged between the L2 manager service 300 and the L1 engine service 200. There is the NSI hardware API172, which defines how information is exchanged between the L1 engine management service 200 and the L0 hardware management service 100.
[0618] At the STA network level, there is also the NSI hardware API 174, which defines the information exchange between the L0 hardware management service 100 and the L1 engine management service 200 in the STA. Similarly, there is the NSI engine service API274, which defines the information exchange between the L1 engine management service 200 and the application service 400.
[0619] Resource Manager
[0620] With reference to FIG. 32, the resource manager function will be described. Within each network component of each level of spectrum management software architecture is a resource manager. The resource manager is responsible for the following (1) mediating the contention of common resources by the same level software components (such as radio transceivers and SAGE); and (2) requesting access to common low-level resources; and (3) arranging services of this level in response to requests from higher levels schedule. The resource manager may already have knowledge and complete control over the scheduling of the use of low-level resources. Once the service request has been authorized, the upper-level components will usually interact directly with the lower-level counterparts. When resource adjustment is required, the L2 network spectrum manager 360 adjusts the various resource managers involved.
[0621] Turning to FIG. 33, spectrum management is related to the scheduling and adjustment of resources, and it is required to deliver spectrum management services such as classification, location, and measurement. Spectrum information is the transmission of raw data to higher-level information content for the intelligent use of this information.
[0622] The software components included in the management of network resources are the resource manager and the L2 network spectrum manager 360 in each software level. The L2 network spectrum manager 360 manages the resources of the entire network. It is essentially the master of network control. The network update service interface 450 is an application service for managing update requests, which may come from an external network management system or other upper-layer applications.
[0623] The L0 and L1 resource managers 110 and 250 are respectively responsible for managing resource requests within their own network components (STA or AP). The L2 resource manager manages network resource requests. However, it does not manage any activities. It essentially manages the total resources controlled by the L2 network spectrum manager 360.
[0624] For each MAC protocol, it is effectively managed by the L2 network spectrum manager 360, and there is an L1 protocol adjustment engine 260 (FIG. 28), which manages the actual protocol MAC engine.
[0625] The software components shown in FIG. 33 control network activity, but they do not make intelligent choices about what actions to take. These intelligent decisions are made either by the policy engine/manager or by applications in the application service level 400.
[0626] With reference to FIG. 34, the concept of spectrum information is further described. The spectrum information shows itself in two general categories: smart spectrum information 600 and smart spectrum control 620. The intelligent spectrum information 600 is the result of converting the original spectrum activity data into increasingly higher information content. For example, the LOSAGE engine 120 captures impulse events, which are analyzed by the L1 classification engine 230, which then transmits the preprocessed results to the L2 classification manager 330 for further analysis (if necessary).
[0627] The smart spectrum control 620 is an instruction that changes the behavior of a device operating in a frequency band. The L1 policy engine 240 and the L2 policy manager 340 are the main mechanisms for intelligently responding to network conditions. Actions include AP channel selection, STA load balancing, and interference mitigation (coexistence algorithm), etc. In addition, the manager NSI370 (Figure 30) provides a policy manager service, which allows more advanced network applications to update or influence policies.
[0628] FIGS. 35 and 36 show the details of the interaction between the modules in the different stages of the spectrum management system. In these figures, the solid lines between the boxes represent data flow, and the dashed lines represent control.
[0629] FIG. 35 shows the information interface between the L0 hardware management service and the hardware resource, and the hardware NSI information interface between the L0 hardware management service and the L1 engine service. The L0 resource manager 110 manages the use of radio resources to
CN 1663156 Β
Prevent the conflicting use of radio. For example, the L0 resource manager 110 may receive a request from the L1 resource manager to perform spectrum management tasks, such as changing the center frequency, bandwidth, or power, or for SAGE function/control requests. The L0 resource manager 110 will generate control signals to control the center frequency, bandwidth, and/or output power level used by the radio, and will arbitrate the radio use between the MAC protocol process for receiving or transmitting the signal and the SAGE request. On the other hand, when running SAGE20, the L0 resource manager 110 will control the radio operating in the broadband mode to sample the entire or substantial part of the frequency band for spectrum management functions, or to transmit broadband signals in the frequency band. Based on the received request, the L0 resource manager 110 will set the duration of radio usage for the SAGE or signal communication function.
[0630] The LOSAGE engine 120 provides device drivers, configuration and interface management of the SAGE20. These responsibilities include the use of SAGE Dual Port RAM (DPR). The SAGE dual port RAM is used by several SAGE internal components. The LOSAGE engine 120 is responsible for allocating DPR resources to various applications and rejecting requests when the DPR resources are currently unavailable. The L0SAGE engine 120 transmits the SAGE information to other L0 subsystems, for example, to the L0 measurement engine 130 or the L1 classification engine 230.
[0631] The LO SAGE engine 120 receives configuration information of several of its components from the L1 engine. For example, it receives the configuration information of the snapshot buffer from the L1 position engine 210, and provides the content of the snapshot buffer to the L1 position engine 210 based on an appropriate trigger event. Similarly, the LO SAGE engine 120 receives SAGE signal detector configuration information from the L1 classification engine 230. The LO SAGE engine 120 outputs the signal detector pulse event to the L1 classification engine 230. The L1 policy engine 240 provides control of the USS component of SAGE20.
[0632] The L1 measurement engine 220 and the L0 measurement engine 130 exchange configuration information of the SAGE measurement analyzer and signal detector. In addition, the L0 measurement engine outputs pulse events from the SAGE signal detector, as well as statistical information and duty cycle information from the SAGE spectrum analyzer. The L0 measurement engine 120 accumulates this information, which constitutes the initial information of the spectrum utilization map (SUM). At this level, the information is called LO SUM 160. LO SUM 160 can be periodically passed offline to LI SUM 265 and L1 measurement engine 220 for accumulation in L2 SUM.
[0633] The L1 measurement engine 220 provides the L2 manager with power versus frequency (PF) spectrogram information and spectrum analyzer statistical information generated by the spectrum analyzer of SAGE20, as well as pulse events output by the SAGE signal detector. The L1 measurement engine 130 may receive SAGE spectrum analyzer configuration information from the L2 measurement manager 320 to configure low-pass filter parameters, decimation factors, and other items. The L1 measurement engine 220 outputs a time stamp and associated received signal strength indicator (RSSI) power value for each of the multiple fast Fourier transform (FFT) binary files. For spectrum analyzer statistics, SAGE20's spectrum analyzer can be used for low-pass filter parameters, decimation factors, cycle counters (the number of spectrum analyzer updates performed before forwarding statistics), and the minimum power used for task counting It is configured similarly. Spectrum analyzer statistics include the timestamp of each FFT binary file and associated statistics, including average power, maximum power, and the amount of time above the minimum power.
[0634] The pulse event is output by the pulse detector component of the SAGE signal detector. For example, SAGE contains 4 pulse detectors. The L1 measurement engine 220 collects pulse events. More than one L1 user can use the same pulse event stream. For example, the L2 classification manager 330 may use pulse events to achieve more detailed classification. The same pulse event stream is also checked by the L1 classification engine 230.
[0635] The user of the pulse event stream can specify a specific pulse detector by specifying a signal detector ID such as 0 to 3. Otherwise, the L2 network spectrum manager 360 selects the pulse detector. The configuration information of the pulse detector includes ID, bandwidth limit, minimum center frequency, maximum center frequency, minimum power limit, minimum pulse bandwidth, maximum pulse bandwidth, maximum pulse duration, etc. Other details of the configuration of the pulse detector are disclosed in the aforementioned pending application.
[0636] The pulse event data stream includes, for example, the signal detector ID, the center frequency (at the beginning of the pulse), (at the pulse
CN 1663156 Β
The initial) pulse width, pulse duration, time stamp at the beginning of the pulse event, the counter value of the down counter in the universal clock module associated with the pulse detector, and the pulse power estimate (at the beginning of the pulse).
[0637] The L1 classification engine 230 performs the first level of signal classification. The details of the signal classification procedure are disclosed in the aforementioned patent application. The L1 classification engine 230 outputs the fingerprint identification of the signal or pulse, which is performed by matching the statistical and pulse information with the fingerprint template. The result is that one or more identifiers match with regard to the type and timing of the pulse. In addition, the L1 classification engine 230 outputs statistical information that generally characterizes what is happening in the frequency band. As described above, the L1 classification engine 230 is configured with a SAGE pulse detector to be suitable for signal classification.
[0638] The signal identification information output by the L1 classification engine 230 is also called "fingerprint identification" and includes, for example, the center frequency (if relevant), the fingerprint ID, the estimated fingerprint ID indicating the likelihood of the device, and the identified device Power and estimated duty cycle percentage. Fingerprint IDs include, for example, IDo used in microwave ovens, frequency hopping devices (such as BluetoothTM SCO devices or BluetoothTM ACL devices), cordless phones JEEE802.11 devices, and IEEE802.15.3 devices, and various types of radar signals.
[0639] Classification statistics include the creation of a histogram of pulse events generated by the free SAGE signal detector. The L1 classification engine 230 configures the pulse detector to gather pulse events based on its configuration. Examples of established statistical histograms include center frequency, bandwidth, active transmission, pulse duration, time between pulses and autocorrelation. The details of these histograms and classification engines are described in the aforementioned signal classification patent application.
[0640] FIG. 36 also shows various application services and how they interface with the manager service. The L2 measurement manager 320 exchanges data with the spectrum analyzer application 410 and the measurement/statistics application 430. The L2 measurement manager 320 receives the SUM data from the L1 measurement engine 220 and establishes a complete SUM called L2 SUM 380. The L2 SUM 380 includes radio and protocol statistical information. L2 SUM 280 will be described in detail with reference to Figure 41. The L2 location manager 310 interfaces with the location application 420 for information. For example, the L2 location manager 310 provides raw location data, and the location application 420 performs processing to generate location information of each device operating in the frequency band. The L2 classification manager 330 exchanges information with the classification definition application 425. The classification definition application 425 is an application that generates and provides new or updated signal definition reference data (also called fingerprints) used by the classification engine 230. The classification definition algorithm is disclosed in the aforementioned application for signal classification. The L2 policy manager 340 exchanges information with the policy application program 440. One function of the policy application 400 is to define and provide spectrum policies that control frequency band usage in certain situations. The policy guide, which will be described below, is an example of another function of the policy application 440.
[0641] Turning to Figures 37-40, the docking between the L1 engine service and the L2 manager service will be described. The function of the engine NSI is to provide the use of L1 engine services. As shown in Figure 37, in the WLAN application, the L1 engine service works in the AP and the client STA. An example of the engine NSI provides either the use of AP and STA, or the use of a single STA. The instances of the engine NSI are distinguished by transport connections. That is, for each case of the engine NSI, there is a separate transmission connection. In WLAN applications, the engine NSI can be provided in APs and STAs. Similar L1 services are provided in the STA and the controlled AP. For example, the output of SAGE is provided to AP and STAo. Similarly, network SUM/statistics information can come from observations of AP and STA.
[0642] Referring to FIG. 38, when the engine NSI user wants to access more than one AP, a separate engine NSI situation occurs. Each case is distinguished by a separate transmission connection. Figure 38 shows a single engine NSI user accessing two APs via two separate engine NSI scenarios, where each engine NSI scenario has its own transport connection.
[0643] Turning to FIGS. 39 and 40, the NS engine service in the visiting station can be implemented locally in the station or remotely via the transmission protocol. Figure 39 shows a typical situation of local access of the local station management application. STA management application to users
CN 1663156 Β
Provide services such as SAGE spectrum analyzer or statistical information. Figure 40 shows how the remote model permits the centralized accumulation of remote STA statistical information. It also allows the coordination of activities such as interference mitigation among APs, STAs, and interference sources.
[0644] FIG. 41 shows an example of information contained in L2 SUM380. Each Fast Fourier Transform (FFT) frequency window (one of multiple frequency windows across the frequency band) has related duty cycle statistics, maximum power statistics, average power statistics, and network traffic statistics, if any. Figure 41 shows only an exemplary subgroup of frequency windows.
[0645] L2 Policy Manager
[0646] The policy manager 340 defines a response to the presence of other signals in the frequency band. These policies can be specified by the management domain, or specified by the user/administrator. For example, the European FCC requires a mobile channel if the radar signal is detected. Or, the administrator may wish to add the channel with the least noise if the traffic load is higher than 60%. The user may wish to give priority to cordless phone communication in WLAN communication.
[0647] These policies can be changed at any time and vary according to usage. This makes it impossible to hard-code all situations and install the product. The created new or updated policy (for example, as described below) can be downloaded by the L2 policy manager 340 to the L1 policy engine 240. Management policy can be expressed as a well-defined grammatical form. These grammatical rules define concepts, such as RSSI level, CCA percentage, communication type (voice, data, video, etc.), protocol type, active channel, alternative channel, etc. The syntax defines operators, such as "greater than", "maximum", and "items of...".
[0648] The grammar allows the construction of the priority setting of the If/then rule in the following form:
[0649] If: condition] then[activation rule]
[0650] The activation rule uses the following spectrum management tools, such as DFS, TPC, etc.
[0651] Examples of spectrum policy statements are:
[0652]
SOHO AP:
if startup active-channel = random from lowest RSSI(AP) if active-channel packet errors> 20 active-channel = random from lowest RSSI(AP, STA)
SOHO NIC:
if startup active-channel = find BSSID (1234) start with last-active-channel
LARGE WLAN AP:
[0653]
CN 1663156 Β
if startup
Active-channel = fixed 7 if active-channel traffic utilization> 60% add-channel 8 if measure(channel 8) =low noise
LARGE WLAN NIC:
if startup active-channel = find highest SNR with low CCA if active-channel collisions> 50% find alternate channel with low CCA
[0654] The policy manager 340 matches the spectrum policy rules with current conditions and takes actions, which is substantially similar to the action of a rule-based expert system "jamming engine". The matching intelligence of the policy manager 340 can use toolkits from artificial intelligence fields: lisp, prolog, etc. In addition, the policy manager 340 may use fuzzy logic to handle fuzzy terms, such as "high traffic", "bad signal strength", and so on.
[0655] The policy guide is an example of the policy application 440. It provides information to the policy manager and simplifies the task of generating spectrum policies by asking the user (or administrator) a set of questions, such as:
[0656] Is this a home network or an office network?
[0657] There is more than one AP in the network?
[0658] Are there one or more cordless phones in the area?
[0659] Based on this information, the policy guide generates a spectrum policy suitable for those parameters. The spectrum policy is downloaded to the policy manager 340.
[0660] In summary, a method for managing the use of the radio frequency band is provided, in which multiple types of signals can appear in the radio frequency band, including the steps of generating at least one of the following: (a) for controlling the radio frequency band The control signal for the operation of the device, and (b) information based on the spectrum activity information derived from the radio frequency energy appearing in the radio frequency band, which describes the specific type of activity that is determined to occur in the radio frequency band.
[0661] In addition, a system for managing the use of the radio frequency band is provided, in which there are multiple types of signals, including: at least one radio device that receives radio frequency energy in the radio frequency band to monitor the various types appearing in the radio frequency band Signal activity and generate spectrum activity information to replace it; and a computing device connected to a radio device, which receives spectrum activity information and generates at least one of the following: control for equipment operating in the radio frequency band, and Describes the specific type of information that is determined to occur in the radio frequency band.
[0662] In addition, a processor-readable medium encoded with instructions is provided, which when executed by the processor, causes the processor to perform the step of generating a control signal, which is used to control the operation of the device in the radio frequency band, and (b ) Based on the spectrum activity information derived from the radio frequency energy that appears in the radio frequency band, information that describes a specific type of activity that is determined to occur in the radio frequency band.
[0663] In addition, a software system for managing activities in the radio frequency band is provided, in which multiple types of signals may appear, including: a first process for accumulating data associated with activities in the radio frequency band; Process data
CN 1663156 Β
The second process of classifying the signal types appearing in the radio frequency band; based on the data accumulated in the first process and/or based on the second process to determine the type of signal to appear, the third process generates at least one of the following: Control of equipment operating in the radio frequency band, and specific types of information describing activities that occur in the frequency band.
[0664] In addition, a software architecture for a system for managing activities in the radio frequency band is also provided, in which multiple types of signals can appear, including: application programs that process spectrum activity information about activities in the radio frequency band to execute Function; and application programming interface, which presents the message to one or more processes, and these processes generate spectrum activity information and return the spectrum activity information to the application.
[0665] A method for interfacing an application program with at least one process is provided. The at least one process analyzes data about activities in the radio frequency band and generates spectrum activity information, where multiple types of signals may appear, including the steps : Generate a request for a spectrum analysis function for at least one process; and receive spectrum activity information generated by the at least one process.
[0666] Similarly, an application programming interface is provided, which is contained on one or more computer-readable media, which connects an application with at least one process, and the process analyzes data about activities in the radio frequency band, among which many Various types of signals may appear, and the process also generates spectrum activity information, including a first group of messages requesting an analysis function from at least one process, and a second group of messages providing spectrum activity information to the application.
[0667] In addition, a device for receiving radio frequency energy in the radio frequency band and processing signals representing it is provided, including: a radio receiver, which receives radio frequency energy in the radio frequency band, and multiple types of signals can appear in the radio frequency band ; A spectrum analyzer, which calculates the power value of radio frequency energy received in at least a part of the radio frequency band within a time interval; a signal detector connected to the spectrum analyzer, which detects a signal of radio frequency energy that meets one or more characteristics Pulse; and a processor connected to the spectrum analyzer and signal detector to receive the output, wherein the processor is programmed to generate at least one of the following: (a) a control signal for controlling the operation of the device in the radio frequency band, and (b) Based on the spectrum activity information from the spectrum analyzer and the signal detector, information describing a specific type of activity that is determined to appear in the radio frequency band.
[0668] The foregoing description is only exemplary, and is not intended to limit any manner of the present invention.
CN 1663156 Β
Contents4
93 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14 Sheet 15 Sheet 16 Sheet 17 Sheet 18 Sheet 19 Sheet 20 Sheet 21 Sheet 22 Sheet 23 Sheet 24 Sheet 25 Sheet 26 Sheet 27 Sheet 28 Sheet 29 Sheet 30 Sheet 31 Sheet 32 Sheet 33 Sheet 34 Sheet 35 Sheet 36 Sheet 37 Sheet 38 Sheet 39 Sheet 40 Sheet 41 Sheet 42 Sheet 43 Sheet 44 Sheet 45 Sheet 46 Sheet 47 Sheet 48 Sheet 49 Sheet 50 Sheet 51 Sheet 52 Sheet 53 Sheet 54 Sheet 55 Sheet 56 Sheet 57 Sheet 58 Sheet 59 Sheet 60 Sheet 61 Sheet 62 Sheet 63 Sheet 64 Sheet 65 Sheet 66 Sheet 67 Sheet 68 Sheet 69 Sheet 70 Sheet 71 Sheet 72 Sheet 73 Sheet 74 Sheet 75 Sheet 76 Sheet 77 Sheet 78 Sheet 79 Sheet 80 Sheet 81 Sheet 82 Sheet 83 Sheet 84 Sheet 85 Sheet 86 Sheet 87 Sheet 88 Sheet 89 Sheet 90 Sheet 91 Sheet 92 Sheet 93
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US5696903A | Cites | United States of America | Search report |
| WO9923790A1 | Cites | World Intellectual Property Organization (WIPO) | Search report |
| EP0772140A1 | Cites | European Patent Office (EPO) | Search report |
80 members in 7 offices
Priority claims25
| Document | Office | Kind | Date |
|---|---|---|---|
| 60374363 | United States of America | – | |
| 60374365 | United States of America | – | |
| 37436502 | United States of America | P | |
| 37436302 | United States of America | P | |
| 60380890 | United States of America | – | |
| 60380891 | United States of America | – | |
| 38089102 | United States of America | P | |
| 38089002 | United States of America | P | |
| 60319435 | United States of America | – | |
| 31943502 | United States of America | P | |
| 60319542 | United States of America | – | |
| 31954202 | United States of America | P | |
| 10246365 | United States of America | – | |
| 10246363 | United States of America | – | |
| 10246364 | United States of America | – | |
| 24636302 | United States of America | A | |
| 24636402 | United States of America | A | |
| 24636502 | United States of America | A | |
| 60319714 | United States of America | – | |
| 31971402 | United States of America | P | |
| 60453385 | United States of America | – | |
| 45338503 | United States of America | P | |
| 60320008 | United States of America | – | |
| 32000803 | United States of America | P | |
| 0313563 | United States of America | W |
Members80
| Document | Office | Kind | |
|---|---|---|---|
| US2003198200A1 | United States of America | A1 | |
| US2003198304A1 | United States of America | A1 | |
| WO03088626A2 | World Intellectual Property Organization (WIPO) | A2 | |
| AU2003223468A1 | Australia | A1 | |
| AU2003223468A8 | Australia | A8 | |
| WO03090037A2 | World Intellectual Property Organization (WIPO) | A2 | |
| WO03090376A1 | World Intellectual Property Organization (WIPO) | A1 | |
| WO03090387A1 | World Intellectual Property Organization (WIPO) | A1 | |
| AU2003225262A1 | Australia | A1 | |
| AU2003228794A1 | Australia | A1 | |
| AU2003228794A8 | Australia | A8 | |
| AU2003234166A1 | Australia | A1 | |
| TW200307141A | Taiwan Province of China | A | |
| US2003224741A1 | United States of America | A1 | |
| TW200401519A | Taiwan Province of China | A | |
| US2004023674A1 | United States of America | A1 | |
| US2004028003A1 | United States of America | A1 | |
| US2004028123A1 | United States of America | A1 | |
| WO03090037A3 | World Intellectual Property Organization (WIPO) | A3 | |
| WO03088626A3 | World Intellectual Property Organization (WIPO) | A3 | |
| US2004047324A1 | United States of America | A1 | |
| US6714605B2 | United States of America | B2 | |
| US2004102198A1 | United States of America | A1 | |
| WO2004051868A2 | World Intellectual Property Organization (WIPO) | A2 | |
| WO2004052027A2 | World Intellectual Property Organization (WIPO) | A2 | |
| TW595140B | Taiwan Province of China | B | |
| AU2003291065A1 | Australia | A1 | |
| AU2003291065A8 | Australia | A8 | |
| AU2003294416A1 | Australia | A1 | |
| AU2003294416A8 | Australia | A8 | |
| US2004137849A1 | United States of America | A1 | |
| US2004137915A1 | United States of America | A1 | |
| WO2004066544A2 | World Intellectual Property Organization (WIPO) | A2 | |
| US2004156440A1 | United States of America | A1 | |
| US2004203474A1 | United States of America | A1 | |
| US2004203826A1 | United States of America | A1 | |
| WO2004051868A3 | World Intellectual Property Organization (WIPO) | A3 | |
| US2004219885A1 | United States of America | A1 | |
| WO2004095758A2 | World Intellectual Property Organization (WIPO) | A2 | |
| WO2004052027A3 | World Intellectual Property Organization (WIPO) | A3 | |
| US2005002473A1 | United States of America | A1 | |
| US2005003828A1 | United States of America | A1 | |
| US6850735B2 | United States of America | B2 | |
| EP1502369A2 | European Patent Office (EPO) | A2 | |
| US2005032479A1 | United States of America | A1 | |
| US2005073983A1 | United States of America | A1 | |
| WO2004066544A3 | World Intellectual Property Organization (WIPO) | A3 | |
| JP2005523616A | Japan | A | |
| CN1663156A | China | A | |
| US6941110B2 | United States of America | B2 | |
| US2005227625A1 | United States of America | A1 | |
| WO2005094309A2 | World Intellectual Property Organization (WIPO) | A2 | |
| WO2004095758A3 | World Intellectual Property Organization (WIPO) | A3 | |
| EP1502369A4 | European Patent Office (EPO) | A4 | |
| WO2006020405A2 | World Intellectual Property Organization (WIPO) | A2 | |
| US7006838B2 | United States of America | B2 | |
| US7035593B2 | United States of America | B2 | |
| WO2006020405A3 | World Intellectual Property Organization (WIPO) | A3 | |
| US7079812B2 | United States of America | B2 | |
| US7110756B2 | United States of America | B2 | |
| US7116943B2 | United States of America | B2 | |
| US2006274684A1 | United States of America | A1 | |
| US7171161B2 | United States of America | B2 | |
| US7184777B2 | United States of America | B2 | |
| US7224752B2 | United States of America | B2 | |
| US7254191B2 | United States of America | B2 | |
| US7269151B2 | United States of America | B2 | |
| US7292656B2 | United States of America | B2 | |
| US2008019464A1 | United States of America | A1 | |
| US7408907B2 | United States of America | B2 | |
| US7424268B2 | United States of America | B2 | |
| US7444145B2 | United States of America | B2 | |
| US7460837B2 | United States of America | B2 | |
| WO2005094309A3 | World Intellectual Property Organization (WIPO) | A3 | |
| US2009046625A1 | United States of America | A1 | |
| US7606335B2 | United States of America | B2 | |
| US2011090939A1 | United States of America | A1 | |
| US8175539B2 | United States of America | B2 | |
| CN1663156BThis record | China | B | |
| EP1502369B1 | European Patent Office (EPO) | B1 |
5 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Grant of patent or utility modelGrantedC14 | C14 | |
| Succession or assignment of patent rightASS | ASS | |
| Transfer of patent application or patent right or utility modelC41 | C41 | |
| Entry into substantive examinationC10 | C10 | |
| PublicationC06 | C06 |
Numbers
- Publication
- 1663156
- Application
- 38146150
Titles2
- Chinese
- 共享频带的管理系统和方法
- English
- Management system and method for shared frequency band
Classification
- CPC, 2
- H04L1/1664
- H04W16/14
- IPC, 7
- H04B17 00
- H04B7 26
- H04L1 16
- H04L12 24
- H04L12 28
- H04L12 56
- H04W72 04