Patent ID: 8572219

Claim:
A network device for managing a network connection, comprising: a transceiver to send and receive data over the network; and a processor that is operative to perform actions, including: receiving a request for a network connection from a client device; downloading onto the client device a component that detects a configuration of the client device and provides the detected configuration to the network device; modifying a Selective Tunneling Management (STM) component based in part on at least one attribute of the detected configuration of the client device, to include at least one test that employs the at least one attribute; downloading at least the modified STM component to the client device such that at least the modified STM component is enabled to selectively establish a tunneled network connection, an un-tunneled connection, or to redirect the request based on at least one characteristic of the request, a result of the at least one test, and the at least one attribute of the detected configuration of the client device, and wherein downloading the modified STM component further comprises detecting at least one other application or Application Programming Interface (API) capable of requesting a network connection other than the STM and when detected replacing in memory of the client device the at least one application or API with the modified STM component, and wherein selectively establishing the tunneled network connection further comprises if the detected configuration of the client device indicates a level of security below a threshold then establishing the tunneled network connection to a security enhancing resource while restricting access to at least one other resource; and when the modified STM component is terminated, purging the client device of at least the modified STM component.