IP Library Granted Patent US 8,825,109
Granted Patent B2
US 8,825,109 · App. 12/032,145 · Granted Sep 2, 2014

Policy-based data routing for a multi-mode device

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,825,109
App. No.
12/032,145
Granted
Sep 2, 2014
Kind
B2
Abstract

Communication devices capable of at least two communication modes (e.g. WLAN, WMAN and WWAN and/or wired modes) can be configured to optimize communications using a policy-based mechanism to configure connections and routes. A rules engine evaluates its policies on a state change (e.g. network availability, time of day, etc.) to configure a routing table and, together with communication APIs, provides an appropriate connection to an application for its respective communications. Policies may be responsive to various factors such as Radio Access Technology (high/low bandwidth), cost, presence, time of day, location, application type and quality of service (QoS) requirements among others to optimize communications.

Claims (41)

1. A multi-mode communication device comprising:

at least two network interfaces configured to enable the multi-mode communication device to communicate in at least two modes of communication; and

a routing component configured to route application communications among the at least two network interfaces, said routing component configured

using rules to select a particular network interface from among the at least two network interfaces, and,

based upon a match between an Internet Protocol (IP) header in said application communications and an entry in the routing component, and

said routing component configured to:

select a first mode of communication from the at least two modes of communications in accordance with the rules to establish a connection for said application communications, configuring at least one of a routing table and a connection table to route the communications via the particular network interface in accordance with an evaluation of the rules; and

reevaluate the rules for switching the first mode of communication to a second mode of communication of the at least two modes of communications, wherein, responsive to a particular network service requested, the first mode of communication is switched to the second mode of communication, reconfiguring at least one of the routing table and the connection table, and the connection re-established in response to receipt of a network-side originated request to switch the first mode of communication.

2. The multi-mode communication device of claim 1 wherein the routing component comprises a rules engine configurable by said rules.

3. The multi-mode communication device of claim 1 wherein the rules are responsive to a state change to at least one of Radio Access Technology type, bandwidth, cost, presence, time of day, location, application type and quality of service requirements.

4. The multi-mode communication device of claim 1 wherein the multi-mode communication device is configured to provide network address transparency to at least some of the applications in accordance with at least one of Mobile IP protocols and constant addressing techniques.

5. The muti-mode communication device of claim 1 wherein the routing component configures at least one of a routing table and connection table to route said communications via a particular network interface in accordance with the evaluation of the rules.

6. The multi-mode communication device of claim 1 wherein the multi-mode communication device is configured to define a communication application programming interface (API) for handling communications on behalf of applications, said communication API routing said communications in accordance with the routing table and connection table.

7. The multi-mode communication device of claim 1 wherein a one of said at least two modes of communication operates in accordance with a mobile telephone standard and a second of said two modes of communication operates in accordance with a wireless local area network (WLAN) standard.

8. The multi-mode communication device of claim 2 wherein the entry in the routing component comprises:

a descriptor of the IP packet, the descriptor comprising a source IP address, a destination IP address, a local port number and a remote port number; and

at least one factor from the set of factors comprising: Radio Access Technology type, bandwidth, cost, presence, time of day, location, application type and quality of service requirements.

9. The multi-mode communication device of claim 1 wherein the routing component is configured to provide access network information for a particular network interface selected.

10. The multi-mode communication device of claim 1 wherein the network service requested comprises emergency services.

11. The multi-mode communication device of claim 1 wherein the network-side originated request to switch modes is a SIP 380 Alternative Service response.

12. A method of multi-mode communication for a device comprising at least two network interfaces configured to communicate in at least two modes of communication, said method comprising:

routing application communications among the at least two network interfaces

using rules to select a particular network interface from the at least two network interfaces, and

based upon a match between an Internet Protocol (IP) header in said application communications and an entry in a routing component, said routing comprising:

selecting a first mode of communication from the at least two modes of communications in accordance with the rules to establish a connection for said application communications, configuring at least one of a routing table and a connection table to route the communications via the particular network interface in accordance with an evaluation of the rules; and

reevaluating the rules for switching the first mode of communication to a second mode of communication of the at least two modes of communications, wherein, responsive to a particular network service requested, the first mode of communication is switched to the second mode of communication; reconfiguring at least one of the routing table and the connection table, and the connection re-established in response to receipt of a network-side originated request to switch the first mode of communication.

13. The method of claim 12 wherein the rules are responsive to a state change to at least one of radio access technology type, bandwidth, cost, presence, time of day, location, application type and quality of service requirements.

14. The method of claim 12 comprising providing said rules to a rules engine of a routing component.

15. The method of claim 12 comprising providing a communication application programming interface (API) for handling communications on behalf of applications, said communication API routing said communications in accordance with the routing table and connection table.

16. The method of claim 15 comprising providing network address transparency to at least some of the applications in accordance with at least one of Mobile IP protocols and constant addressing techniques.

17. The method of claim 14 wherein the entry in the routing component comprises:

a descriptor of the IP packet, the descriptor comprising a source IP address, a destination IP address, a local port number and a remote port number; and

at least one factor from the set of factors comprising: Radio Access Technology type, bandwidth, cost, presence, time of day, location, application type and quality of service requirements.

18. The method of claim 12 comprising providing access network information for a particular network interface selected.

19. The method of claim 12 wherein the network service requested comprises emergency services.

20. A non-transitory computer-readable storage medium having computer executable instructions stored thereon for routing communications for a device comprising at least two network interfaces configured to communicate in at least two modes of communication; and a processor for executing said computer executable instructions at runtime; said computer executable instructions operable to: route application communications among the network interfaces

using rules to select a particular network interface from among the at least two network interfaces, and,

based upon a match between an Internet Protocol (IP) header in said application communications and an entry in a routing component,

wherein said routing comprises:

selecting a first mode of communication from the at least two modes of communications in accordance with the rules to establish a connection for said application communications, configuring at least one of a routing table and a connection table to route the communications via the particular network interface in accordance with an evaluation of the rules; and

reevaluating the rules for switching the first mode of communication, wherein, responsive to a particular network service requested, the first mode of communication is switched to a second mode of communication of the at least two modes of communications; reconfiguring, at least one of the routing table and the connection table, and the connection re-established in response to receipt of a network-side originated request to switch the first mode of communication.

Assignments (4)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064270/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
CHANGE OF NAME Recorded Jul 31, 2013
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 030918/0470 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2008
From: MONTEMURRO, MICHAEL; ALFANO, NICHOLAS; BAKKER, JOHN-LUC; GEORGE, RICHARD; OLIVER, BRIAN ALEXANDER
To: RESEARCH IN MOTION LIMITED
Reel/Frame 021083/0953 →