Providing on-demand VPN connectivity on a per-application basis
AssigneeAirWatch LLC
InventorsSuman Aluvala, Craig Farley Newell, Naga Sandeep Reddy Kaipu, Sulay Shah
Life of this patent
Estimating the term…
Abstract
Disclosed are various approaches for providing on-demand virtual private network (VPN) connectivity on a per-application basis. First, an application is determined to have begun execution on a computing device. The application is then identified. A determination that the application is authorized to access a VPN connection is made. Subsequently, the VPN connection is initiated.
Claims20
A system, comprising:
- a computing device comprising a processor and a memory;
- and
- a first application comprising machine-readable instructions stored in the memory that, when executed by the processor, cause the computing device to at least:
- monitor an initialization process executing on the computing device;
- determine, based on a fork call from the initialization process, that a second application has begun execution on the computing device, wherein the initialization process creates an instance of the second application based on the fork call;
- identify the second application;
- determine that the second application is authorized to access a virtual private network (VPN) connection;
- create a network adapter on the computing device based on the second application being authorized to access the VPN connection;
- detect a first network packet generated by the second application;
- initiate the VPN connection in response to detection of the first network packet generated by the second application;
- close the VPN connection based on the second application ceasing to transfer packets for a determined period of time;
- and
- destroy the network adapter on the computing device once the VPN connection is closed.
A method, comprising:
- monitoring an initialization process executing on a computing device;
- determining, based on a fork call from the initialization process, that an application has begun execution on the computing device, wherein the initialization process creates an instance of the application based on the fork call;
- identifying the application;
- determining that the application is authorized to access a virtual private network (VPN) connection;
- creating a network adapter on the computing device based on the application being authorized to access the VPN connection;
- detecting a first network packet generated by the application;
- initiating the VPN connection in response to detection of the first network packet generated by the application;
- closing the VPN connection based on the application ceasing to transfer packets for a determined period of time;
- and
- destroying the network adapter on the computing device once the VPN connection is closed.
A non-transitory computer-readable medium comprising machine-readable instructions that, when executed by a processor of a computing device, cause the computing device to at least:
- monitor an initialization process executing on the computing device;
- determine, based on a fork call from the initialization process, that an application has begun execution on a computing device, wherein the initialization process creates an instance of the application based on the fork call;
- identify the application;
- determine that the application is authorized to access a virtual private network (VPN) connection;
- create a network adapter on the computing device based on the application being authorized to access the VPN connection;
- detect a first network packet generated by the application;
- initiate the VPN connection in response to detection of the first network packet generated by the application;
- close the VPN connection based on the application ceasing to transfer packets for a determined period of time;
- and
- destroy the network adapter on the computing device once the VPN connection is closed.
Dependencies are inferred from the claim text.