IP Library Granted Patent US 9,094,830
Granted Patent B2
US 9,094,830 · App. 13/541,790 · Granted Jul 28, 2015

Managing data transfer across a network interface

Inventors: Barry Fraser Yerxa (Ottawa, CA); Nils Patrik Lahti (Ottawa, CA); Jean Dolbec (Ottawa, CA)
Assignees: BLACKBERRY LIMITED; 2236008 ONTARIO INC.
H04W12/08
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 9,094,830
App. No.
13/541,790
Granted
Jul 28, 2015
Kind
B2
Abstract

Described are systems and methods for managing data transfer from a communication device to a communication network over a wireless connection comprising determining that a requesting process on the communication device is authorized to establish a protected connection to the communication network; and, configuring a network interface on the communication device to allow data packets to be transmitted from the requesting process to the communication network over the protected connection, wherein the network interface is associated with the protected connection.

Claims (53)

1. A method implemented on a communication device for managing data transfer from the communication device to a communication network over a wireless connection, the communication device having a cellular data services controller to establish and control access to a protected connection over the communication network, the method comprising:

determining that a requesting process on the communication device is authorized to transfer data to the communication network over the protected connection based on a process ID associated with the requesting process, wherein determining includes

sending an authorization request from the requesting process via a persistent publish and subscribe service designated for the protected connection, and wherein the requesting process is a permitted subscriber of the persistent publish and subscribe service,

verifying that the requesting process is permitted to access the protected connection,

responding, by the cellular data service controller, to the authorization request via the persistent publish and subscribe service, and

activating a PDP context to connect the requesting process to the protected connection; and,

after activating the PDP context, the cellular data services controller configuring a network interface on the communication device to allow data packets to be transferred from the requesting process to the communication network over the protected connection, wherein the network interface is associated with the protected connection.

2. The method of claim 1 , wherein verifying that the requesting process is permitted to access the protected connection comprises extracting data associated with the requesting process to verify the capabilities of the requesting process.

3. The method of claim 1 , wherein verifying that the requesting process is permitted to access the protected connection comprises verifying with an access control list that the requesting process is permitted to transfer data across the protected connection to the communication network, wherein the access control list comprises the identification of processes that are permitted to transfer data across the protected connection to the communication network.

4. The method of claim 3 , further comprising adding the identity of the requesting process to the access control list.

5. The method of claim 1 , wherein configuring a network interface comprises:

applying a blocking filter rule on the network interface to block the transfer of data from all processes across the network interface; and

after applying the blocking filter rule, applying the allow filter rule on the network interface to permit transfer of data from the requesting process across the network interface.

6. The method of claim 1 , further comprising adding a second process to the allow filter rule to permit the second process to transfer data across the network interface.

7. The method of claim 1 , wherein activating the PDP context further comprises:

creating a socket at the protected connection; and

binding the requesting process to the socket to allow the requesting process to transmit data across the network interface.

8. The method of claim 1 , further comprising:

determining that a second process on the communication device is authorized to transmit data to the communication network across the protected connection; and,

configuring a network interface on the communication device to allow data packets to be transmitted from the second process to the communication network over the protected connection.

9. The method of claim 1 wherein the communication network is a cellular network, and the protected connection is a zero-rated cellular data connection to a carrier.

10. A communication device for managing data transfer from the communication device to a communication network over a protected connection, the communication device comprising:

a processor and memory;

a persistent publish and subscribe service designated for the protected connection to receive an authorization request from a requesting process, wherein the requesting process is a permitted subscriber of the persistent publish and subscribe service;

an authorization process module stored in memory and executable by the processor to verify that the requesting process is permitted to access the protected connection;

a cellular data services controller stored in memory and executable by the processor to respond to the authorization request via the persistent publish and subscribe service, and to activate a PDP context to connect the requesting process to the protected connection;

a network interface on the communication device;

wherein the cellular data services controller configures the network interface to allow data packets to be transmitted from the requesting process to the communication network over the protected connection, wherein the network interface is associated with the protected connection.

11. The communication device of claim 10 , wherein the authorization process module is configured to verify the capabilities of the requesting process by extracting data associated with the requesting process, the capabilities for indicating that the requesting application is permitted to transfer data to the communication network across the protected connection.

12. The communication device of claim 10 , further comprising an access control list comprising the identifications of processes permitted to transfer data across the protected connection to the communication network, and wherein at least one of the authorization process module and the cellular data services controller is configured to verify the identity of the requesting process with the access control list.

13. The communication device of claim 10 , further comprising a packet filter module coupled to the cellular data services module, the packet filter module configured to:

apply a blocking filter rule on the network interface to block the transfer of data from all processes across the network interface; and

after to applying the blocking filter rule, apply the allow filter rule on the network interface to permit transfer of data from the requesting process across the network interface.

14. The communication device of claim 10 , wherein the network interface module is configured to:

create a socket at the protected connection; and

bind the requesting process to the socket to allow the requesting process to transmit data across the protected connection at the network interface.

15. The communication device of claim 10 , wherein the authorization module is further configured to authorize a second process to connect to the communication network across the protected connection.

16. A communication device for controlling data transfer across a network interface of a communication network, the communication device having a cellular data services controller to establish and control access to a protected connection over the communication network, the communication device comprising:

a memory; and,

computer readable instructions stored on memory and executable by a processor to:

determine that a requesting process on the communication device is authorized to transfer data to the communication network across the protected connection based on a process ID associated with the requesting process, wherein determining includes

sending an authorization request from the requesting process via a persistent publish and subscribe service designated for the protected connection, and wherein the requesting process is a permitted subscriber of the persistent publish and subscribe service,

verifying that the requesting process is permitted to access the protected connection,

responding, by the cellular data service controller, to the authorization request via the persistent publish and subscribe service, and

activating a PDP context to connect the requesting process to the protected connection; and

configure a network interface on the communication device, after activating the PDP context, the cellular data services controller, to allow data packets to be transmitted from the requesting process to the communication network over the protected connection, wherein the network interface is associated with the protected connection.

17. A computer readable storage medium comprising computer-executable instructions for controlling data transfer across a network interface of a communication network, the communication device having a cellular data services controller to establish and control access to a protected connection over the communication network, wherein the instructions, when executed, cause a processor of a communication device to:

determine that a requesting process on the communication device is authorized to transfer data to the communication network across the protected connection based on a process ID associated with the requesting process, wherein determining includes

sending an authorization request from the requesting process via a persistent publish and subscribe service designated for the protected connection, and wherein the requesting process is a permitted subscriber of the persistent publish and subscribe service,

verifying that the requesting process is permitted to access the protected connection,

responding, by the cellular data service controller, to the authorization request via the persistent publish and subscribe service, and

activating a PDP context to connect the requesting process to the protected connection; and,

configure a network interface on the communication device, after activating the PDP context, the cellular data services controller, to allow data packets to be transmitted from the requesting process to the communication network over the protected connection, wherein the network interface is associated with the protected connection.

Assignments (8)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064271/0199 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 22, 2020
From: 2236008 ONTARIO INC.
To: BLACKBERRY LIMITED
Reel/Frame 053313/0315 →
CHANGE OF NAME Recorded Jun 1, 2015
From: RESEARCH IN MOTION LIMITED
To: BLACKBERRY LIMITED
Reel/Frame 035805/0534 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2014
From: QNX SOFTWARE SYSTEMS LIMITED
To: 8758271 CANADA INC.
Reel/Frame 032607/0943 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2014
From: 8758271 CANADA INC.
To: 2236008 ONTARIO INC.
Reel/Frame 032607/0674 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 28, 2012
From: LAHTI, NILS PATRIK
To: QNX SOFTWARE SYSTEMS LIMITED
Reel/Frame 028858/0792 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 28, 2012
From: YERXA, BARRY FRASER; DOLBEC, JEAN
To: RESEARCH IN MOTION LIMITED
Reel/Frame 028858/0824 →
Continuity (1)
Related Publication 20140013395A1 · Jan 9, 2014