Apparatus and method for mobile communications and computing
Abstract
The wireless computing communication device (100) comprises an application processor (108) configured to execute a user application. The first central processing unit (CPU) core (206) is a baseband processor (102) configured to implement operations that provide access to a wireless communication network, and a first communication channel (110). It comprises a communication management processor (106) that communicates with the baseband processor via the second communication channel (112) and communicates with the application processor via the second communication channel (112). The CPU core (206) is configured to run a virtual machine manager (VMM, 210), with the baseband processor and the communication management processor in separate virtual machines (VMs) managed by the VMM. Execute with. The communication management processor (106) operates in a security domain separate from the application processor (108) and is configured to relay all access to the wireless communication network by user applications running on the application processor.

Term
Projected expiry 22 August 2033.
- Priority
- Filed
- Published
- Today
- Projected expiry
26 claims: 5 independent, 21 dependent
- 1ユーザ・アプリケーションを実行するように構成されたアプリケーション・プロセッサと、 第1の中央処理装置(CPU)コアであって、 無線通信ネットワークへのアクセスを実現する動作を実装するように構成されたベースバンド・プロセッサと、 第1の通信チャネルを介して前記ベースバンド・プロセッサと通信し、第2の通信チャネルを介して前記アプリケーション・プロセッサと通信している、通信管理プロセッサとを備える、第1の中央処理装置(CPU)コアとを備え、 前記CPUコアが、仮想マシン・マネージャ(VMM)を実行するように構成され、前記ベースバンド・プロセッサと、前記通信管理プロセッサとがそれぞれ、前記VMMによって管理された別個の仮想マシン(VM)内で実行し、 前記通信管理プロセッサが、前記アプリケーション・プロセッサとは分離したセキュリティ・ドメインで動作し、前記アプリケーション・プロセッサで実行するユーザ・アプリケーションによる前記無線通信ネットワークへの全アクセスを取り次ぐように構成される、無線コンピューティング通信装置。
- 2前記アプリケーション・プロセッサが、前記第1のCPUコアで実行する前記VMMによって管理された別個のVM内で実行する、請求項1に記載の装置。
- 3コア間通信チャネルを介して前記第1のCPUコアと通信している第2のCPUコアを備え、前記ベースバンド・プロセッサと、前記通信管理プロセッサとが、前記第1のCPUコアの前記VMMによって管理された別個のVM内で実行し、前記アプリケーション・プロセッサが、前記第2のCPUコアで実行する、請求項1に記載の装置。
- 4前記第1のCPUコアと前記第2のCPUコアとが、単一のICチップに配置される、請求項3に記載の装置。
- 5前記第1のCPUコアと前記第2のCPUコアとが、別々のICチップに配置される、請求項3に記載の装置。
- 6前記通信管理プロセッサが、セキュリティ管理機能を実装するように構成され、前記セキュリティ管理機能が、前記通信管理プロセッサのセキュリティ・ドメイン内で実行する機能に対して、セキュア構成データ・ストアへのアクセスを制限する、請求項1に記載の装置。
- 7前記通信管理プロセッサが、前記無線通信ネットワークの信頼できるソース、および前記アプリケーション・プロセッサで実行する信頼できるアプリケーションから、前記セキュア構成データ・ストアのコンテンツを修正する要求を受け取って検証し、前記検証が成功した場合に、前記コンテンツを更新するようにさらに構成される、請求項6に記載の装置。
- 8前記通信管理プロセッサが、データベース管理機能を実装するように構成され、前記データベース管理機能が、前記第2の通信チャネルを介して前記アプリケーション・プロセッサと通信し、前記アプリケーション・プロセッサで実行するアプリケーションに対して、データ・ストアへのアクセスを実現する、請求項1に記載の装置。
- 9前記データベース管理機能が、前記アプリケーション・プロセッサで実行するアプリケーションによる、前記データ・ストアに保持された情報への読取り専用または読取り/書込みアクセスを選択的に実現するように構成される、請求項8に記載の装置。
- 10前記通信管理プロセッサが、接続管理機能を実装するように構成され、前記接続管理機能が、前記第2の通信チャネルを介して、前記アプリケーション・プロセッサで実行するアプリケーションから受け取られた要求に応答して、前記第1の通信チャネルを介して、前記ベースバンド・プロセッサと通信して、前記無線通信ネットワークへのアクセスを実現する、請求項1に記載の装置。
- 11要求に応答して、前記接続管理機能によって実現される動作が、接続設定、接続終了、接続状態、仮想接続設定、および仮想接続終了の1つまたは複数を含む、請求項10に記載の装置。
- 12前記接続管理機能が、前記通信管理プロセッサのセキュリティ・ドメイン内で実行する機能から受け取られた要求に応答して、前記無線通信ネットワークへのアクセスを実現するようにさらに構成される、請求項10に記載の装置。
- 13前記通信管理プロセッサが、ポリシー強制機能を実装するように構成され、前記ポリシー強制機能が、関連するルールに従って、前記第1および前記第2の通信チャネルを介した、前記アプリケーション・プロセッサと前記ベースバンド・プロセッサとの間の通信フローを規制し、前記通信フローを制御する、請求項1に記載の装置。
- 14前記通信フローが、データ・フロー、音声フロー、およびテキスト・メッセージング・フローの1つまたは複数を含む、請求項13に記載の装置。
- 15前記ポリシー強制機能が、 前記通信管理プロセッサのセキュリティ・ドメイン内のセキュア構成データ・ストア、 前記第1の通信チャネルを介した、前記無線通信ネットワーク、および 前記第2の通信チャネルを介した、前記アプリケーション・プロセッサで実行するアプリケーションの1つまたは複数から、前記関連するルールを受け取るように構成される、請求項13に記載の装置。
- 16各関連するルールが、 前記ルールが適用されるインターフェース、 単位時間当たりの最大および/または最小持続処理量、 最大許容バースト率、 パケット・サイズ、 待ち行列機構、 待ち行列バッファ・サイズ、 アプリケーション種類、 送信元/宛先アドレス、 送信元/宛先ポート、 時間スケジュール、 マッチ・アクション、および ルール優先順位の1つまたは複数の組合せを含む、請求項13に記載の装置。
- 17各関連するルールが、 前記アプリケーション・プロセッサで実行する対応するアプリケーション、 前記アプリケーション・プロセッサで実行する全アプリケーション、および 1つまたは複数の通信フローの1つまたは複数に適用される、請求項13に記載の装置。
- 18前記ポリシー強制機能が、無線ネットワーク構成ルールに従って、前記無線ネットワークへの接続要求または送信の、タイミングおよび/または速度を制御するようにさらに構成される、請求項13に記載の装置。
- 19前記無線ネットワークを介してアクセス可能な、1つまたは複数の診断/管理インターフェースを実現するように構成された診断、監視、および制御機能を備える、請求項1に記載の装置。
- 20前記診断/管理インターフェースが、SSH、SNMP、IEEE802.1ag(ITU-T Y.1731)、TR-069、OMA-DM、およびWeb UIの1つまたは複数を含む、請求項19に記載の装置。
- 21無線コンピューティング通信装置を動作させる方法であって、 前記無線コンピューティング通信装置の第1の中央処理装置(CPU)コアで仮想マシン・マネージャ(VMM)を実行すること、および 第1の通信チャネルを介してベースバンド・プロセッサと通信し、第2の通信チャネルを介してアプリケーション・プロセッサと通信している通信管理プロセッサによって、無線通信管理機能を実行することを含み、 前記ベースバンド・プロセッサと、前記通信管理プロセッサとがそれぞれ、前記第1のCPUコアで実行する前記VMMによって管理された別個の仮想マシン(VM)内で実行し、 前記ベースバンド・プロセッサが、無線通信ネットワークへのアクセスを実現する動作を実装するように構成され、前記アプリケーション・プロセッサが、ユーザ・アプリケーションを実行するように構成され、 前記無線通信管理機能が、前記アプリケーション・プロセッサとは分離したセキュリティ・ドメイン内で実行し、前記アプリケーション・プロセッサで実行するユーザ・アプリケーションによる前記無線通信ネットワークへの全アクセスを取り次ぐ、方法。
- 22前記通信管理機能が、セキュリティ管理機能を備え、前記方法が、前記セキュリティ管理機能によって、前記通信管理機能のセキュリティ・ドメイン内で実行する機能に対して、セキュア構成データ・ストアへのアクセスを制限することを含む、請求項21に記載の方法。
- 23前記通信管理機能が、データベース管理機能を備え、前記方法が、前記データベース管理機能によって、前記第2の通信チャネルを介して前記アプリケーション・プロセッサと通信し、前記アプリケーション・プロセッサで実行するアプリケーションに対して、データ・ストアへのアクセスを実現することを含む、請求項21に記載の方法。
- 24前記通信管理機能が、接続管理機能を備え、前記方法が、前記接続管理機能によって、前記第2の通信チャネルを介して、前記アプリケーション・プロセッサで実行するアプリケーションから受け取られた要求に応答して、前記第1の通信チャネルを介して、前記ベースバンド・プロセッサと通信して、前記無線通信ネットワークへのアクセスを実現することを含む、請求項21に記載の方法。
- 25前記通信管理機能が、ポリシー強制機能を備え、前記方法が、前記ポリシー強制機能によって、関連するルールに従って、前記第1および前記第2の通信チャネルを介した前記アプリケーション・プロセッサと前記ベースバンド・プロセッサとの間の通信フローを規制し、前記通信フローを制御することを含む、請求項21に記載の方法。
- 26前記通信管理機能が、診断、監視、および制御機能を備え、前記方法が、前記診断、監視、および制御機能によって、前記無線通信ネットワークを介してアクセス可能な、1つまたは複数の診断/管理インターフェースを実装することを含む、請求項21に記載の方法。
Independent claims26
71 paragraphs, as filed
0001The present invention relates to mobile computing communication devices, in particular to improved monitoring and management of such devices by network operators.
0002Over the last two decades, digital and mobile phone communications technology has evolved into one of the largest and most popular platforms in history. The current number of global connections is estimated to be around 6 billion, and it is estimated that about 1.5 billion new devices are added each year. In addition to mobile phones, smartphones, tablets, and other well-known mobile computing consumer products, mobile phone communication systems are increasingly being used and emerging in machine-to-machine (M2M) applications. Applications are being developed one after another. Examples of M2M applications include equipment, remote monitoring of connected smart meters, remote control of home appliances and office equipment, and in-vehicle connectivity for navigation, maintenance, and support.
0003However, to date, managing mobile telephony devices, including consumer and M2M applications, has proven to be a challenge for mobile network operators.
0004On the other hand, users of consumer computing communication devices want to be free to use these devices in a way that best suits their individual needs, and developers of M2M applications likewise want the underlying network technology and operational capabilities. Regardless of the problem, I want to freely implement the required functionality. On the other hand, mobile network operators ensure that network resources are used efficiently and effectively, and that individual user applications and devices do not adversely affect network performance for other subscribers. Take care to ensure that network resource consumption is properly monitored, managed, and charged.
0005Currently, mobile network operators have limited control over how end-user devices use network resources. It is not surprising that subscribers are concerned that network operators will be granted higher levels of access to their equipment and control of their equipment, especially for individuals. There are concerns about the security and privacy of information and network usage patterns.
0006It is now common practice for mobile network operators to implement a wide range of mobile device approval processes, as once a device is deployed within a mobile telecommunications network, control over such device is limited. These processes are intended to ensure that networked equipment does not adversely affect overall performance, but for increasingly versatile equipment, additional by the end user after approval. Applications can be installed, and as a result, device communication management is becoming increasingly out of control for mobile network operators.
0007For example, an application with an unsatisfactory configuration that consumes excessive network resources (perhaps unintentionally) may not be available to other users when run on an approved device. In addition, a large population of the same automated M2M device can lead to undesired scenarios, such as multiple devices attempting to reconnect to the mobile network all at once when a service is started or restored. In addition, applications that overuse network resources (intentionally or unintentionally) can result in high royalties being charged to consumers, even if network performance is not adversely affected. Can cause problems and can lead to bad publicity for mobile network operators.
0008Thus, it allows network operators to better monitor and manage mobile devices, while allowing users and application developers to operate freely according to their own requirements without compromising security and privacy. It is desirable to provide an improved mobile computing communication platform. It also allows the use of network resources to be controlled by network operators, users, and individual applications, thereby ensuring compliance with relevant Terms of Service and imposing cost control or cost constraints. It is desirable to provide a mobile computing communication platform. It is also desirable to provide users and application developers, regardless of the underlying wireless network technology, with a mobile computing communication platform that provides a simple and consistent interface for accessing mobile networks.
<p num="0009"> Therefore, one object of the present invention is to address one or more of the above desired features.</p>
<p num="0010"> According to one aspect of the invention With an application processor configured to run your application, The first central processing unit (CPU) core, With a baseband processor configured to implement the behavior that provides access to the wireless communication network, With a communication management processor that communicates with the baseband processor over the first communication channel and with the application processor over the second communication channel. With a first central processing unit (CPU) core With The CPU core is configured to run a virtual machine manager (VMM), with the baseband processor and the communication management processor each within a separate virtual machine (VM) managed by the VMM. Run and A wireless computing communication device in which the communication management processor operates in a security domain separate from the application processor and is configured to relay all access to the wireless communication network by user applications running on the application processor. Provided.</p><p num="0011"> Advantageously, by providing a communication management processor that operates in a separate security domain, what is the equipment and mechanism of the baseband processor used to access the wireless communication network for applications running on the application processor? It becomes possible to make it independent. In embodiments of the invention, the communication management processor provides the application with a uniform, consistent, stable, and easy interface to wireless communication services, while at the same time using wireless network resources within the communication management processor. Allows to be monitored, managed, and controlled.</p><p num="0012"> A further advantage of embodiments of the present invention is that the wireless network operator can communicate with the communication management processor to monitor, manage, and control the use of network resources via the wireless computing communication device. It is possible, while wireless network operators are independent of the application processor and access to associated user data and applications, thereby addressing user privacy and security concerns. Is the point.</p><p num="0013"> In some embodiments, the application processor runs within a separate virtual machine (VM) managed by the VMM on the first CPU core.</p><p num="0014"> Such an embodiment has a beneficial bill-of-materials (BOM) cost because all three processors are advantageously integrated into a single integrated circuit (IC). A further advantage is the high level of security and integrity as all three processors and the first and second communication channels are fully integrated into a single IC and are not externally accessible. It is a point.</p><p num="0015"> In other embodiments, the device comprises at least first and second CPU cores communicating over an intercore communication channel, the first CPU core running a VMM and with a baseband processor. The communication management processor runs in a separate VM managed by the VMM of the first CPU core, and the application processor runs in the second CPU core. In some embodiments, the first CPU core and the second CPU core are located on a single IC chip. In some embodiments, the first CPU core and the second CPU core are located on separate IC chips.</p><p num="0016"> Further embodiments of the present invention can use integrated and discrete IC components, as well as other combinations of CPU cores. In general, a baseband processor, an application processor, and a communication management processor are logically separate components of an embodiment of the present invention, but are physically dependent on the implementation chosen. Does not have to be a separate component. Further benefits and advantages of the various implementations will be apparent from the detailed description of the embodiments described below.</p><p num="0017"> In an embodiment of the invention, the communication management processor is configured to implement a security management function, the security management function being a secure configuration data store for a function performing within the security domain of the communication management processor. Restrict access to.</p><p num="0018"> The communication management processor receives and validates requests to modify the contents of the secure configuration data store from trusted sources of wireless communication networks and trusted applications running on the application processor, and if the validation is successful. It may be further configured to update the content.</p><p num="0019"> In an embodiment of the invention, the communication management processor is configured to implement a database management function, which communicates with the application processor via a second communication channel and is executed by the application processor. Provides access to the data store for the application.</p><p num="0020"> Advantageously, the database management function is configured to selectively provide read-only or read / write access to the information held in the data store by the application running on the application processor.</p><p num="0021"> In an embodiment of the invention, the communication management processor is configured to implement a connection management function, which is a request received from an application running on the application processor via a second communication channel. In response to, it communicates with the baseband processor via the first communication channel to provide access to the wireless communication network.</p><p num="0022"> In response to a request, the exemplary behavior achieved by the connection management feature includes one or more of connection settings, connection terminations, connection states, virtual connection settings, and virtual connection terminations.</p><p num="0023"> According to embodiments of the present invention, the connection management function is further configured to provide access to the wireless communication network in response to a request received from a function performing within the security domain of the communication management processor. To. Advantageously, this configuration allows the communication management processor to maintain its own private connection within the wireless communication network, such as communication with network operators and management functions, such connection being a user application. Is not accessible to.</p><p num="0024"> In embodiments, the communication management processor is configured to implement a policy enforcement feature, which is an application processor and baseband over the first and second communication channels according to relevant rules. It regulates the communication flow with the processor and controls the communication flow. In embodiments of the invention, the communication flow includes one or more of a data flow, a voice flow, and a text messaging flow.</p><p num="0025"> In the embodiment, the policy enforcement function Secure configuration data store within the security domain of the communication management processor, A wireless communication network over the first communication channel, and An application running on an application processor over a second communication channel It is configured to receive related rules from one or more of.</p><p num="0026"> According to one embodiment of the invention, each related rule The interface to which the rule applies, Maximum and / or minimum sustained throughput, per unit time, Maximum permissible burst rate, Packet size, Queue mechanism, Queue buffer size, Application type, Source / destination address, Source / destination port, Time schedule, Match action, and Rule priority Includes one or more combinations of.</p><p num="0027"> According to an embodiment of the invention, each related rule Corresponding application running on the application processor, All applications running on the application processor, and One or more communication flows Applies to one or more of.</p><p num="0028"> In embodiments, the policy enforcement feature is further configured to control the timing and / or speed of connection requests or transmissions to the wireless network according to wireless network configuration rules.</p><p num="0029"> According to embodiments of the present invention, the device comprises diagnostic, monitoring, and control functions configured to provide one or more diagnostic / management interfaces accessible over a wireless network. Illustrative diagnostic / management interfaces include SSH, SNMP, IEEE802.1ag (ITU-T Y.1731), TR-069, OMA-DM, and Web UI.</p><p num="0030"> In another aspect, the invention is a method of operating a wireless computing communication device. Running a virtual machine manager (VMM) on the first central processing unit (CPU) core of a wireless computing communication device, and Performing wireless communication management functions by a communication management processor that communicates with the baseband processor over the first communication channel and with the application processor through the second communication channel. Including The baseband processor and the communication management processor each run in separate virtual machines (VMs) managed by VMMs running on the first CPU core. The baseband processor is configured to implement the behavior that provides access to the wireless communication network, and the application processor is configured to run the user application. The wireless communication management function runs in a security domain separate from the application processor and relays all access to the wireless communication network by the user application running on the application processor. Provide a method.</p><p num="0031"> In the embodiment of the present invention, the communication management function includes a security management function, and the method provides a secure configuration data store for a function executed within the security domain of the communication management function by the security management function. Includes restricting access.</p><p num="0032"> In the embodiment of the present invention, the communication management function includes a database management function, and the method uses the database management function to communicate with the application processor via the second communication channel and to execute the application on the application processor. On the other hand, it includes providing access to the data store.</p><p num="0033"> In an embodiment of the present invention, the communication management function comprises a connection management function, and the method responds to a request received from an application executed by an application processor via a second communication channel by the connection management function. It involves communicating with the baseband processor via the first communication channel to provide access to the wireless communication network.</p><p num="0034"> In an embodiment of the invention, the communication management function comprises a policy enforcement function, the method comprising a policy enforcement function with an application processor and a baseband over the first and second communication channels according to the relevant rules. It includes regulating the communication flow with the processor and controlling the communication flow.</p><p num="0035"> In embodiments of the present invention, the communication management function comprises diagnostic, monitoring, and control functions, the method being accessible via a wireless communication network by diagnostic, monitoring, and control functions. Includes implementing a diagnostic / management interface.</p><p num="0036"> Further features and advantages of the present invention will be apparent to those skilled in the art from the following description of exemplary embodiments, and the description of these embodiments is merely exemplary and precedent. The scope of the present invention is not limited to any of the above, or as defined in the appended claims.</p><p num="0037"> Next, an embodiment of the present invention will be described with reference to the accompanying drawings, in which the same reference numbers refer to the same mechanism.</p>
0038<figref num="1">It is a block diagram which shows the logical structure of the wireless computing communication apparatus which embodied this invention.</figref><figref num="2(a)">FIG. 5 is a schematic diagram showing embodiments of a baseband processor, a communication management processor, and an application processor of the apparatus of FIG.</figref><figref num="2(b)">FIG. 5 is a schematic diagram showing embodiments of a baseband processor, a communication management processor, and an application processor of the apparatus of FIG.</figref><figref num="3">It is a block diagram which shows the system architecture by one Embodiment of this invention.</figref><figref num="4">It is a flow chart which shows the connection manager which embodied this invention, and the general function of the diagnosis, monitoring, and control functions.</figref><figref num="5">It is a flow chart which shows the general function of the policy enforcer which embodied this invention.</figref><figref num="6">It is a flow chart which shows the device security management function which carried out this invention.</figref>
0039FIG. 1 is a block diagram 100 showing a logical structure of a wireless computing communication device embodying the present invention.
0040The device 100 includes a baseband processor 102, which is responsible for implementing various functions related to transmission and reception of communication signals via the wireless network interface 104. For example, the baseband processor 102 typically provides management and communication capabilities for accessing portable wireless communication systems such as systems implemented according to GSM®, CDMA, WiMAX, 3G, or LTE standards. Implement. Baseband processor 102 can also further include wireless network processing capabilities, such as features associated with wireless LAN access and / or Bluetooth.
0041The device 100 further comprises a communication management processor 106, which communicates with the baseband processor 102 via a first communication channel 110. The communication management processor 106 is logically separated from the baseband processor 102, as described in more detail below with reference to FIG. 2, but in some embodiments, the two processors 102. And 106 do not have to be physically separated, but rather may be implemented within a single integrated circuit (IC) device.
0042The device 100 further includes an application processor 108, which communicates with the communication management processor 106 via a second communication channel 112. Again, the application processor 108 is a logically separate component of device 100, but it does not have to be a physically separate component.
0043In addition, device 100 includes several peripheral interfaces 114. Depending on the intended use of device 100, different embodiments may include different sets of peripheral interfaces 114. For example, embedded computing communication devices suitable for use in machine-to-machine (M2M) applications include Internet interfaces, USB host and / or device interfaces, other serial or parallel input / output interfaces, and wired telephone communication interfaces. Peripheral interfaces can be included. Computing communication devices intended for consumer use, such as mobile phone communication terminals, smartphones, portable computing devices, or tablets, include display devices, keypads, keyboards, touch screens and other input means, microphones, speakers. Peripheral interfaces 114 such as voice interfaces such as, and / or headset connections may be further included.
0044According to embodiments of the present invention, the communication management processor 106 operates in a security domain separate from the application processor 108 and provides full access to the wireless communication network 104 by user applications running on the application processor 108. It is configured to act as an intermediary. The communication management processor 106 is also configured to operate in a security domain separate from the baseband processor 102.
0045A device 100 configured according to an embodiment of the invention thereby allows a user application running on the application processor 108 to access resources associated with the communication management processor 106, such as device configuration data and network configuration data. It is possible to manage, control, and / or limit, and also to help and control user applications to access the equipment of the baseband processor 102 and the resources of the wireless network 104. Both can be done.
0046In addition, the wireless network operator manages, controls, and / or configures the various mechanisms, functions, and capabilities of Device 100 in a manner that is safe from interference or interception by user applications. It may be possible to communicate with 106. At the same time, the communication management processor 106 can limit the wireless network operator's access to user data and application information, which is potentially associated with the network operator's access to the customer device 100. Addresses privacy concerns.
00472 (a) and 2 (b) show exemplary implementation options for baseband processor 102, communication management processor 106, and application processor 108, all embodying the present invention.
0048FIG. 2 (a) is a schematic diagram showing an embodiment implemented using a single central processing unit (CPU) core 200. A virtual machine manager (VMM) 202 (also known as a "hypervisor") runs on a single CPU core 200. For example, embodiments of the present invention are available from Open Kernel Labs (www.ok-labs.com) in Sydney, Australia, OKL4 Microvisor. VMM can be used. As shown, the VMM202 implements three virtual machines, within which the baseband processor 102, the communication management processor 106, and the application processor 108 each run. VMM202 keeps each of these virtual machines independent of the others, as indicated by firewall 203. The VMM202 also provides access to peripheral devices 114, wireless network interface 104, and assists communication channels 110, 112 between the baseband processor 102, the communication management processor 106, and the application processor 108. It realizes hardware abstraction.
0049An alternative embodiment is shown in FIG. 2 (b), which is based on a single IC device 204 with two internal CPU cores 206, 208. In this embodiment, the VMM210 runs on the first CPU core 206 and realizes two virtual machines, in which the baseband processor 102 and the communication management processor 106 are respectively. Execute. The VMM210 also helps the baseband processor 102 access the network interface 104, helps access the internal communication channel 112 between the first CPU core 206 and the second CPU core 208, and It provides a hardware abstraction that allows communication between the baseband processor 102 and the communication management processor 106.
0050As will be appreciated, the exemplary implementations shown in FIGS. 2 (a) and 2 (b) do not limit the scope of the invention, and further variants of digital hardware and software. It will be obvious to those skilled in the design industry.
0051The one or more IC devices used in the embodiments of the present invention may each be a microprocessor with memory, which is a non-volatile memory for storing programs and configuration data, as well as temporary work. Includes data and variables such as state information, and volatile memory for storing variables such as stacks, heaps, or variables maintained in other managed memory stores. Alternatively, or in addition, one or more IC devices may each have a variety of processors, memories, and peripheral subsystems that implement the required functionality in accordance with one embodiment of the invention (ASIC: It may be an application-specific IC) or a system-on-chip (SOC) device. In some embodiments, one or more of the IC devices may be fully custom ICs specifically designed to implement the required functionality. All such variants, as well as combinations of implementations and options, may be included within the embodiments of the present invention.
0052As will also be understood, different implementations of the baseband processor 102, the communication management processor 106, and the application processor 108 provide different advantages.
0053For example, the single IC, single core embodiment of Figure 2 (a) is the lowest bill of materials (BOM) cost implementation and has the highest level of security, for three reasons. This is because all communication between processors is contained within a single physical device.
0054The single IC, dual CPU core embodiment of Figure 2 (b) retains the advantages of a low BOM cost implementation, but has additional CPU cores to improve overall performance. doing. This embodiment also retains the advantage of high security by maintaining all communications within a single physical device.
0055In yet another alternative embodiment (not shown), the two-chip solution provides a single IC for implementing the baseband processor 102 and the communication management processor 106, while a separate stand-alone application. Includes the use of processor chips. In this embodiment, the communication between the communication management processor 106 and the baseband processor 102 is not physically accessible, so this embodiment maintains a reasonable level of security while maintaining any desired application processor. -Provides the flexibility of choosing a chip or core.
0056Therefore, a computing communication device configured according to the logical structure 100 embodying the present invention provides a high degree of flexibility in design and implementation, and a use-specific compromise can be made between parameters such as cost, performance, and security. It will be understood that it will be possible.
0057Next, moving to FIG. 3, a block diagram 300 showing the system architecture embodying the present invention is shown. Architecture 300 envisions an implementation in which the communication management processor 106 runs in the secure zone and the application processor 108 runs in the user zone. The secure zone and the user zone have separate security domains, thus limiting access to resources (ie, functionality and data) within the secure zone by applications running within user zone 108. .. As mentioned above, the secure zone and user zone, as well as the associated communication management processor 106 and application processor 108, are separate physical devices, separate CPU cores, or a single CPU core under the control of a VMM. Can have different virtual machines running on.
0058Processors 106 and 108 implemented in the secure zone and in the user zone are given access to resources outside their respective zones through the hardware abstraction layer (HAL) 302. Be done. In the virtual machine implementation, HAL is implemented by VMM. In a multi-core, or multi-IC implementation, the HAL302 can be implemented by monitoring software capabilities, by virtual hardware equipment, and / or by physical hardware interfaces.
0059Therefore, the secure zone and the user zone, as well as the associated processors 106 and 108, are virtually independent of each other by the "firewall" 304.
0060Communication between the application processor 108 and the communication management processor 106 is performed via the second communication channel 112 shown in block diagram 100. In the exemplary architecture 300, several virtual communication channels are provided. These include packet data channel 306, voice channel 308, and text messaging channel 310. All of these channels are achieved through the appropriate abstractions implemented in HAL302.
0061HAL302 also has Ethernet interface 312 (Ethernet is a registered trademark), USB host interface 314, USB device interface 316, other parallel or serial I / O interface 318, wired telephone communication interface 320, and display device, keypad, Provides access to physical peripheral interfaces such as human user input / output devices 322 such as touch screens.
0062The application processor 108 running in the user zone comprises an operating system environment such as the Linux operating system environment (Linux is a registered trademark). These environments provide a convenient and well-known platform for implementing applications and other software to run within the user zone. Access to communication channel 112 via HAL302 is aided by providing device drivers that reside on traditional driver interfaces within a well-known operating system environment. For example, access to virtual data communication channel 306 is provided to the application via standard network interface driver 324. Access to virtual voice channel 308 is Advanced Linux Sound for Linux operating system environments. It is implemented via standard voice interface driver 326, such as drivers implemented according to Architecture (ALSA). Access to the virtual text messaging channel 310 can be achieved via the standard virtual COM Port AT interface driver 328.
0063The operating system environment within the user zone also includes a full read / write file system facility 330. This file system 330 may be based on volatile or non-volatile solid state memory (eg RAM or flash memory) and / or may include additional peripheral storage such as hard disk drives. Good.
0064In addition, Architecture 300 implements the configuration database interface process 332. This process allows applications running within the user zone to read and write relevant configuration information and other information that may be stored within the secure zone via virtual storage interface channel 334. ..
0065One or more user applications 336 are also running within the user zone of application processor 108.
0066As will be appreciated, according to architecture 300, user application 336 has access to the full complement of operating system resources provided by the Linux environment. Therefore, application development is supported by the widespread familiarity of this environment and its industry standard interface. In addition, suppliers of systems and equipment created according to Architecture 300 will also use the equipment provided by the data, voice, and text interfaces 324, 326, 328, and the storage / access equipment provided by process 332. , Additional software development kit (SDK: software development) to further support rapid application development kit) can be provided. From an application developer's point of view, establishing a data, voice, or text communication channel is as easy as accessing the equipment driver equipment of the available network and / or host operating system. All details related to establishing, maintaining, and monitoring connections over wireless communication networks are implemented by the communication management processor 106 within the secure zone.
0067According to embodiments of the present invention, a similar host operating system environment, such as a Linux environment, is provided for the implementation of the communication management processor 106. The operating system environment within the secure zone is completely separate from the operating system environment within the user zone. Applications, processes, and threads running within each zone do not have direct access to resources in the other zone. All access between the two zones must be done via HAL302.
0068Within the secure zone, storage devices (eg, non-volatile storage devices such as flash memory) are provided to hold configuration data and other information related to the operation of the wireless computing communication device. This storage device can be divided into a secure storage facility 338 and a non-secure storage device 340. Access to this storage facility is via storage manager 342 and security manager 344. The storage manager 342 has access to application 336 running within the user zone via process 332 and / or via the appropriate virtual device driver. This allows application 336 to request that certain data be stored in or retrieved from non-secure storage zone 340. The information in the non-secure storage facility 340 may be read-only or read / write under the control of storage manager 342. Access to secure storage 338 is only available through security manager 344. Access to secure storage 338 may be restricted, for example, to processes running within the secure zone. Access from outside the secure zone would not be permitted without proper collated security certification. For example, access to secure storage 338 may be granted over the wireless network if an authenticated connection is established by the wireless network operator, or device owner / operator.
0069Processes and functions running within the secure zone can access the baseband processor 102 via communication channel 110. For devices with access to mobile wireless networks such as GSM, 3G, or LTE networks, a SIM card 346 will be provided, which will have the baseband processor 102 function and within the secure zone. The communication management processor functions performed by the SIM card 346 are accessible, and these functions require access to the configuration data and storage device data contained in the SIM card 346.
0070In particular, the connection management function 348 is implemented in the communication management processor 106. The connection management function 348 is exposed via the baseband processor 102, which provides an abstract interface to the equipment of the wireless network. The connection management function 348 is responsible for establishing and maintaining connectivity to the wireless network. Connection management features also support virtual connections such as VPN tunnels, in addition to supporting connections such as packet data, audio, and video. For virtual connections, the connection management feature also manages any associated dependencies (eg, the underlying physical connections and their resources) that are required to support each virtual connection.
0071The connection management function manages connection settings and poor connections, including implementations such as retry timers and counters, at the request of the wireless network operator. The connection management feature also supports private management connections that are only visible to other processes running within the secure zone. Management traffic carried over such private connections can be separated from user traffic by using a separate packet data network or virtual circuit.
0072In addition, the connection management function 348 is consistent with the application processor 108 for configuring, monitoring, and using all network interfaces, regardless of the type and configuration of the underlying wireless network. Provide an interface. The connection management function 348 simplifies the setting and management of virtual circuits.
0073The communication management processor 106 also includes a policy enforcement function 350. The policy enforcement function is logically located between the communication channel 112 and the connection management function 348, and implements the access function, the rate-determining function, and other regulatory functions within the communication management processor 106. A "policy" is, in this context, a set of rules that specify parameters for traffic carried over a wireless network. The rules are not limited to that, but the interface to which they apply, the maximum and / or minimum persistence per unit time, the maximum allowed burst rate, packet size, queuing mechanism, queuing buffer. It can be established for various parameters including size, application type, source / destination address, source / destination port, time schedule, match action (eg discard / forward), and rule priority.
0074The policy may be applied to all levels of data, voice, and / or text traffic, or to a particular application channel, virtual connection, or other communication resource. The policy can be established by a wireless network operator, thereby enabling the provision of improved services by controlling in such a way that the device embodying the present invention can use network resources. Become. Alternatively, or additionally, the policy can be established by a particular application, which allows better control over the application (and the end user of the device) to use the wireless network through the policy. .. For example, it may be possible for the end user to control the operating cost of the device by limiting the speed and / or number of times the message is sent.
0075Policies and related rules can be stored in non-secure or secure storage facilities 340, 338. Preferably, the policies established by the wireless network operator are stored as configuration data in the secure storage mechanism 338, and therefore those policies cannot be accessed by the user application 336 under any circumstances. The application policy may be stored in either secure or non-secure equipment 338, 340, or it may simply be stored in a temporary storage device managed by the policy enforcement function 350. , Because those application policies will typically be reestablished by the application each time they are executed.
0076If the policy consists of both a wireless network operator and a user application, the policy enforcement feature will apply the most restrictive of the conflicting policies. User applications may not override the constraints or restrictions imposed through the wireless network operator policy.
0077In addition, the communication management processor 106 may be configured to achieve leveling of network usage by forcing the distribution of network service consumption over time across the population of the device. For example, a particular device owner may have an application with monitoring of several remote sites, all of which have access to a single wireless network to send and receive monitoring and configuration information for remote sites. Needs. In the event of network congestion or outage, all devices may respond at once, for example by reinitializing at the same time, once the network is available. The policies and / or other mechanisms of the communication management processor 106 allow the devices to be configured so that they are not restarted or reinitialized in unison. This configuration can be implemented remotely and independently of any individual user application, and can be implemented by batching and queuing connection requests and / or transmissions presented by application processor 108. This equipment allows the equipment to be deployed in a more network friendly or "better behaved" manner, and no user application needs to be modified to realize this advantage.
0078Diagnostic, monitoring, and control functions 352 are also provided within the communication management processor 106, which runs within the secure zone. This diagnostic, monitoring, and control function 352 interacts with the connection management function 348 to monitor the status of network connections as needed and to establish and maintain a private connection to its own wireless network 104. It works. The diagnostic, monitoring, and control function 352 can also access other configuration and state information about the operation of device 100 and communication management processor 106, which is the storage device management function 342 and security management function. Configuration information and status information recorded in storage facilities 338 and 340 maintained by 344.
0079The diagnostic, monitoring, and control function 352 also has access to the equipment and resources of the baseband processor 102 via the connection management function 348.
0080The diagnostic, monitoring, and control function 352 allows the wireless network operator to perform diagnostic and network management functions on the operation of the wireless network for the baseband processor 102 and the communication management processor 106. This diagnostic, monitoring, and control function 352 ensures that there is no access to user or application data maintained within the user zone and therefore user privacy cannot be compromised.
0081The diagnostic, monitoring, and control function 352 can be a standard diagnostic / management interface such as SSH, SNMP, IEEE802.1ag (ITU-TY.1731), and Web UI.
0082The diagnostic, monitoring, and control function 352 mechanisms are activated and accessed over the wireless network 104 by the wireless network operator as needed. Once enabled, these mechanisms are permanently available and do not require user or application intervention to be established.
0083Next, moving to FIG. 4, a flow diagram showing the general equipment realized by the connection management function 348 and the diagnostic, monitoring, and control function 352 is shown. The connection management function 348 receives the connection request 402, and the connection request can occur from within the user zone of the application processor 108, from within the communication management processor 106, or via the wireless network 104. The connection management function 348 is responsible for the task associated with the connection setting 404 in response to the connection request. Whether or not the requested connection is established, and any parameters associated with the connection, are determined according to rule or policy 406, and those rules or policies can be maintained within storage equipment 338, 340.
0084Any errors or exceptions that occur while the connection setup is in progress are managed by the connection management function 348. When some kind of failure is detected 408, the connection management feature will determine if the connection setting 404 should be retried 410. For example, connection attempts can be repeated for a given amount of time or for a given number of trials, depending on configuration parameters, rules, and / or policies, and there may be a minimum time interval between retries. .. If the connection cannot be established after further attempts, the connection management function 348 can generate error 412.
0085Once a connection is established, the connection management feature 348 will continue to monitor and manage the connection 414. This may include monitoring connection parameters and recording connection status and other management information in storage 416. Monitoring and managing existing connections can also include reestablishing connections in the event of a failure.
0086When the connection termination request 418 is received, the connection management function 348 is responsible for performing the actions required to disconnect or terminate the connection 420.
0087All of these operations of the connection management function 348 are performed using communication with the baseband processor 102 via the first communication channel 110. Therefore, the connection management function 348 is the only component of the communication management processor 106 that is required to interact with the baseband processor 102, and therefore other functions within the communication management processor 106, as well as the application. It provides a uniform, abstract interface to all connection management mechanisms available to user application 336 running on processor 108.
0088The state and management information recorded in storage 416 by connection management function 348 can be accessed by diagnostic, monitoring, and control function 352, and wireless network operator 422 can diagnose, monitor, and control over network 104. It may be possible to utilize that information using one or more of the network management interfaces / protocols implemented within Function 352.
0089FIG. 5 is a flow chart showing the general equipment realized by the policy enforcement function 350. System Architecture Block As shown in Figure 300, all data flow between the user application 336 running on the application processor 108 in the user zone and the wireless network 104 passes through policy enforcement function 350. To do.
0090In general, any form of data (ie packet data, voice data, text message data) is received by the policy enforcement feature in any direction. Flow One or more policy rules can be applied to the received data, as shown in Figure 500 504. The policies implemented by the Policy Enforcement Function 350 allow rate-determining, traffic shaping, and other regulatory functions to be implemented in response to requests by wireless network operators and / or user applications.
0091The policy that applies to the specific data received, associated with the corresponding communication flow, is that the data is time sensitive (eg, audio or video data) and should not be buffered or shaped. May be shown. In this case, a determination 506 is made and the data is sent immediately 512. Alternatively, the received data may be queued in the appropriate storage facility 510 508.
0092The policy enforcement function 350 is also responsible for removing buffered data from the queue and sending it according to relevant rules and policies 510. A process, thread, or other facility in Policy Enforcement 350 should monitor the queue 510, apply the rule to 514, and when or when the queued data should be sent. Is determined. If it is determined that there is data in the queue to be sent 516, that data is removed from the queue 518, sent 520, ie via connection management function 348 for outgoing data, or Incoming data is transmitted via communication channel 112 to application processor 108.
0093FIG. 6 shows a flow chart 600 showing the general operation of the security management function 344. Security control 344 ensures that only authenticated processes and entities are granted access to the data held within secure storage 338. This data can include various configuration parameters for the communication management processor 106 and / or baseband processor 102, which are codes such as secure boot loader, verified firmware image, and secure data. With components, these code components can be accessed by an authenticated application running on application processor 108.
0094The security management function 344 receives a request for storing and / or searching the contents of the secure storage device 338 602. Security management function 344 applies the relevant security policy 604 to determine whether those requests should be granted or denied 606. If the process, entity, function, or other equipment requesting access is not authenticated, an error is generated 608 and access is denied. If the received request complies with the relevant security policy, access is granted and the requested action is performed 610.
0095As will be understood from the above description, embodiments of the wireless computing communication device 100 according to the present invention provide a flexible and secure platform for the development of wireless network-based applications. In particular, providing a communication management processor 106 that operates in a security domain separate from the application 336 running on the application processor 108 brings benefits to network operators, application developers, and end users. Access to the communication management processor 106, which provides a stable and documented set of interfaces, allows network operators to improve device management, monitoring, and control, thus enabling overall network performance and maintainability. It becomes possible to maintain the sex. User application 336 is independent of access to equipment that can adversely affect network performance.
0096At the same time, the user data in the isolated user zone of application processor 108 and user application 336 are also independent of access by network operators. Therefore, user privacy concerns regarding access to device 100 by network operators are addressed.
0097In addition, user application 336 is within a well-known standard operating system environment, regardless of the specific mechanisms, equipment, and interfaces of baseband processor 102, as well as the specific wireless network technology used. Can be deployed.
0098Although specific embodiments have been described herein to illustrate the general operating principles of the invention, these embodiments are not intended to limit the scope of the invention. Will be understood. Various forms of modification, replacement, and modification are apparent to those skilled in the art of designing and developing digital hardware and software, all of which are within the scope of the appended claims. Included in the present invention.
8 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| JP2018181344A | Cited by | Japan | Search report |
| US11310203B2 | Cited by | United States of America | Applicant |
| JP2020512640A | Cited by | Japan | Search report |
| WO02065642A1 | Cites | World Intellectual Property Organization (WIPO) | Search report |
| WO02065642A1 | Cites | World Intellectual Property Organization (WIPO) | Search report |
| JP2002318719A | Cites | Japan | Search report |
| JP2002318719A | Cites | Japan | Search report |
| JP2004159177A | Cites | Japan | Search report |
| JP2004159177A | Cites | Japan | Search report |
| JP2009253811A | Cites | Japan | Search report |
| JP2009253811A | Cites | Japan | Search report |
| JP2010282242A | Cites | Japan | Search report |
| JP2010282242A | Cites | Japan | Search report |
| US2010330953A1 | Cites | United States of America | Search report |
| US2010330953A1 | Cites | United States of America | Search report |
| JP2012018453A | Cites | Japan | Search report |
| JP2012018453A | Cites | Japan | Search report |
| JP2012531678A | Cites | Japan | Search report |
| JP2013510352A | Cites | Japan | Search report |
| JP2013510352A | Cites | Japan | Search report |
| US7865893B1 | Cites | United States of America | Search report |
| US7865893B1 | Cites | United States of America | Search report |
17 members in 11 offices
Priority claims3
| Document | Office | Kind | Date |
|---|---|---|---|
| 13596826 | United States of America | – | |
| 201213596826 | United States of America | A | |
| 2013000941 | Australia | W |
Members17
| Document | Office | Kind | |
|---|---|---|---|
| US8418230B1 | United States of America | B1 | |
| CA2885323A1 | Canada | A1 | |
| WO2014032081A1 | World Intellectual Property Organization (WIPO) | A1 | |
| AU2013308376A1 | Australia | A1 | |
| KR20150073956A | Republic of Korea | A | |
| EP2891103A1 | European Patent Office (EPO) | A1 | |
| CN104813327A | China | A | |
| JP2016506546AThis record | Japan | A | |
| HK1211358A1 | Hong Kong, China | A1 | |
| EP2891103A4 | European Patent Office (EPO) | A4 | |
| ZA201502081B | South Africa | B | |
| EP2891103B1 | European Patent Office (EPO) | B1 | |
| ES2641162T3 | Spain | T3 | |
| JP6235017B2 | Japan | B2 | |
| AU2013308376B2 | Australia | B2 | |
| CA2885323C | Canada | C | |
| KR102073148B1 | Republic of Korea | B1 |
17 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Cancellation because of no payment of annual feesLAPS | LAPS | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Written notification of registration of transferJAPANESE INTERMEDIATE CODE: R350R350 | R350 | |
| Written request for registration of change of domicileJAPANESE INTERMEDIATE CODE: R313531S531 | S531 | |
| Written request for registration of change of nameJAPANESE INTERMEDIATE CODE: R313533S533 | S533 | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| First payment of annual fees (during grant procedure)JAPANESE INTERMEDIATE CODE: A61A61 | A61 | |
| Certificate of patent or registration of utility modelJAPANESE INTERMEDIATE CODE: R150R150 | R150 | |
| Written decision to grant a patent or to grant a registration (utility model)JAPANESE INTERMEDIATE CODE: A01A01 | A01 | |
| Decision of grant or rejection writtenTRDD | TRDD | |
| Notification of reasons for refusalJAPANESE INTERMEDIATE CODE: A131A131 | A131 | |
| Report on retrievalJAPANESE INTERMEDIATE CODE: A971007A977 | A977 | |
| Written request for application examinationJAPANESE INTERMEDIATE CODE: A621A621 | A621 | |
| Notification that invitation to amend document was cancelledJAPANESE INTERMEDIATE CODE: A971091AA91 | AA91 | |
| Notification that invitation to amend document was cancelledJAPANESE INTERMEDIATE CODE: A971091AA91 | AA91 |
Numbers
- Publication
- 2016506546
- Application
- 2015528806
Titles2
- Japanese
- モバイル通信コンピューティングのための装置および方法
- English
- Equipment and methods for mobile communication computing
Classification
- CPC, 8
- G06F9/545
- G06F21/6218
- G06F21/77
- H04L63/20
- G06F9/45558
- G06F2009/45595
- G06F2209/542
- H04W4/50
- IPC, 1
- G06F21 53
Designated states143
- Regional, 79
- Botswana
- Ghana
- Gambia
- Kenya
- Liberia
- Lesotho
- Malawi
- Mozambique
- Namibia
- Rwanda
- Sudan
- Sierra Leone
- Eswatini
- United Republic of Tanzania
- Uganda
- Zambia
- Zimbabwe
- Armenia
- Azerbaijan
- Belarus
- Kyrgyzstan
- Kazakhstan
- Russian Federation
- Tajikistan
and 55 moreShow fewer
- Turkmenistan
- Albania
- Austria
- Belgium
- Bulgaria
- Switzerland
- Cyprus
- Czechia
- Germany
- Denmark
- Estonia
- Spain
- Finland
- France
- United Kingdom
- Greece
- Croatia
- Hungary
- Ireland
- Iceland
- Italy
- Lithuania
- Luxembourg
- Latvia
- Monaco
- North Macedonia
- Malta
- Netherlands (Kingdom of the)
- Norway
- Poland
- Portugal
- Romania
- Serbia
- Sweden
- Slovenia
- Slovakia
- San Marino
- Türkiye
- Burkina Faso
- Benin
- Central African Republic
- Congo
- Côte d’Ivoire
- Cameroon
- Gabon
- Guinea
- Equatorial Guinea
- Guinea-Bissau
- Comoros
- Mali
- Mauritania
- Niger
- Senegal
- Chad
- Togo
- National, 64
- United Arab Emirates
- Antigua and Barbuda
- Angola
- Australia
- Bosnia and Herzegovina
- Barbados
- Bahrain
- Brunei Darussalam
- Brazil
- Belize
- Canada
- Chile
- China
- Colombia
- Costa Rica
- Cuba
- Dominica
- Dominican Republic
- Algeria
- Ecuador
- Egypt
- Grenada
- Georgia
- Guatemala
and 40 moreShow fewer
- Honduras
- Indonesia
- Israel
- India
- Japan
- Saint Kitts and Nevis
- Democratic People’s Republic of Korea
- Republic of Korea
- Lao People’s Democratic Republic
- Saint Lucia
- Sri Lanka
- Libya
- Morocco
- Republic of Moldova
- Montenegro
- Madagascar
- Mongolia
- Mexico
- Malaysia
- Nigeria
- Nicaragua
- New Zealand
- Oman
- Panama
- Peru
- Papua New Guinea
- Philippines
- Qatar
- Saudi Arabia
- Seychelles
- Singapore
- Sao Tome and Principe
- El Salvador
- Syrian Arab Republic
- Thailand
- Tunisia
- Trinidad and Tobago
- Ukraine
- United States of America
- Uzbekistan