EP1566949A1 - Narrowband and broadband vpn optimal path selection using the global positioning system - Google Patents
Narrowband and broadband vpn optimal path selection using the global positioning system Download PDFInfo
- Publication number
- EP1566949A1 EP1566949A1 EP05101132A EP05101132A EP1566949A1 EP 1566949 A1 EP1566949 A1 EP 1566949A1 EP 05101132 A EP05101132 A EP 05101132A EP 05101132 A EP05101132 A EP 05101132A EP 1566949 A1 EP1566949 A1 EP 1566949A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- user device
- network
- server
- virtual private
- geographical coordinates
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1021—Server selection for load balancing based on client or server locations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
- H04L12/4675—Dynamic sharing of VLAN information amongst network nodes
- H04L12/4679—Arrangements for the registration or de-registration of VLAN attribute values, e.g. VLAN identifiers, port VLAN membership
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/52—Network services specially adapted for the location of the user terminal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
Definitions
- This invention relates to the field of telecommunication and, in particular, to a system and method of selecting an optimal path for connecting to a virtual private network (VPN).
- VPN virtual private network
- a VPN is a private network that is established over an otherwise public network, such as the Internet.
- the VPN can provide secure and reliable transfer of text, voice, image, and video data between locally and remotely located offices without the use of expensive, dedicated data lines.
- the VPN employs a combination of encryption and user authentication along with other security mechanisms to maintain the security of the communication.
- I. Pepelnjak and J. Guichard "MPLS and VPN Architectures," Cisco Press, 2001.
- a user device 102 may access the VPN 100 through an Internet service provider (ISP) 104.
- ISP Internet service provider
- the user device 102 may be located essentially anywhere in the world, and may be any suitable device, including a desktop computer, a laptop computer, a personal digital assistant (PDA), and the like, so long as these devices are capable of executing a VPN client thereon.
- the connection (shown as a lighting bolt) to the Internet service provider 104 may be any suitable connection, including a narrowband connection, a broadband connection, a wired connection, a wireless connection, and so on.
- the Internet service provider 104 lets the user device 102 connect to the Internet (indicated generally at 106), from which the user device 102 may then connect to a customer network 108 via one of several tunnel servers 110 and 112 (also called VPN servers).
- the tunnel servers 110 and 112 encrypt and encapsulate the communication between the user device 102 and the customer network 108 to make the communication confidential and secure.
- one of the tunnel servers 110 or 112 may be geographically closer to the user device 102 then the others.
- the user device 102 connects to the nearest tunnel server 110 or 112 so that optimal call routing and load balancing among the tunnel servers may be achieved. This helps reduce the latency in the VPN and may minimize the response time experienced by the user device 102.
- a VPN client it is not presently possible for a VPN client to automatically choose the closest tunnel server 110 or 112. This limitation applies to both broadband and narrowband connections.
- narrowband e.g., dial-up
- the tunnel server must be manually chosen by the user device 102, which often results in sub-optimal call routing and load balancing.
- broadband there is currently no way for a user device 102 to pick the closest tunnel server, since there is no way to determine the geographic location of the user device 102.
- the present invention is directed to a method and system for automatically selecting a tunnel server in a VPN that is closest to a user device.
- the user device may be equipped with location reporting equipment, such as a GPS module.
- location reporting equipment such as a GPS module.
- the user device connects to the VPN, it automatically uses the tunnel server that is nearest based on geographical coordinates provided by the location reporting equipment. Selection of the closest tunnel server may be performed by the user device itself, or it may be performed by a network server. Where more than one tunnel servers are near to the user device, the tunnel server may be selected based on load balancing objectives.
- the invention is directed to a method of optimizing network routing and load distribution in a virtual private network.
- the method comprises the steps of obtaining geographical coordinates for a user device, and determining an optimal network server for the user device based on the geographical coordinates.
- the method further comprises connecting the user device to the virtual private network through the optimal network server.
- the invention is directed to a user device capable of automatically connecting to an optimal network server in a virtual private network.
- the user device comprises location reporting equipment connected to the user device and configured to provide geographical coordinates for a location of the user device.
- the user device further comprises a central processing unit connected to the location reporting equipment and a storage unit connected to the central processing unit.
- the storage unit stores a virtual private network client thereon that is capable of obtaining geographical coordinates for the user device from the location reporting equipment, determining an optimal network server for the user device based on the geographical coordinates, and connecting the user device to the virtual private network through the optimal network server.
- the invention is directed to a virtual private network.
- the virtual private network comprises a plurality of network servers and an authentication server connected to the network servers.
- the authentication server has a virtual private network host executing thereon and is configured to receive geographical coordinates for a user device requesting access to the network servers.
- the authentication server is further configured to determine an optimal network server for the user device based on the geographical coordinates, and send identifying information for the optimal network server to the user device.
- embodiments of the invention provide a user device, such as a desktop computer, laptop computer, PDA, and the like, that is equipped with location reporting equipment, such as a GPS (global positioning system) module.
- location reporting equipment such as a GPS (global positioning system) module.
- location reporting equipment are well-known to persons having ordinary skill in the art and will therefore not be described here. It will suffice to say that the purpose of the location reporting equipment is to provide the user device with the geographical coordinates for its location.
- geographical coordinates refers to any suitable system for identifying the location of the user device, including the longitude and latitude of the user device.
- This location information may then be used to automatically select the VPN tunnel server closest to the user device. The selection of the closest tunnel server may be performed either by the user device, or it may be performed by a network server.
- FIG 2 illustrates an exemplary VPN 200 where a user device 202 determines the closest tunnel server.
- the VPN 200 is similar to the VPN 100 of Figure 1 in that it includes an Internet service provider 104 which allows the user device 202 to connect to the Internet 106. From the Internet 106, the user device 202 may then access a customer network 108 via one or more tunnel servers 110 and 112. Unlike Figure 1, however, the user device 202 has location reporting equipment, namely, a GPS module (not visible here) attached thereto. A global satellite system 204 provides the GPS module with the geographical coordinates of the user device 202 upon request. Thus, the user device 202 is capable of knowing its approximate geographical location at any given time.
- a GPS module not visible here
- the user device 202 To access the customer network 108, the user device 202 first establishes a connection to the Internet service provider 104.
- the connection to the Internet service provider 104 may be any suitable connection, but for embodiments such as the one described here, it is typically a broadband connection.
- the VPN client of the user device 202 obtains the device's geographical coordinates from the GPS module. The VPN client then determines which tunnel server 110 or 112 is closest to the user device 202 based on the geographical coordinates. The VPN client thereafter establishes a connection through that tunnel server 110 or 112 to the customer network 108.
- the connection to the customer network 108 may be established in a known manner and using known protocols.
- FIG. 3 illustrates the user device 202 in more detail.
- the user device 202 has a number of functional components, including a central processing unit (CPU) 300, a network access device 302 (e.g., cable modem, DSL modem, dial-up modem, network interface card (NIC), etc.) and a storage unit 304.
- CPU 300 central processing unit
- network access device 302 e.g., cable modem, DSL modem, dial-up modem, network interface card (NIC), etc.
- NIC network interface card
- Storage unit 304 provides both long-term and temporary storage for the operating system and any data used by the user device 202.
- the storage unit 304 also stores the software applications that are run on the user device 202, including a VPN client 306.
- the VPN client 306 includes, or has access to, a tunnel server list 308 that is stored on the storage unit 304.
- the VPN client 306 is configured to query the tunnel servers 110 and 112 in order to determine which one has the lightest load. The VPN client 306 may thereafter connect through that tunnel server to access the customer network. In this way, optimal routing and load balancing may be achieved in the VPN 200.
- FIG. 4 illustrates a method 400 for accessing a VPN where the user device determines which tunnel server to use.
- the method 400 begins at step 402 where a connection is made between the user device and an Internet service provider.
- the user device obtains the geographical coordinates for its location. Note that steps 402 and 404 may be switched in terms of their sequence without departing from the scope of the invention.
- the user device determines which tunnel server results in the optimal connection based on the geographical coordinates thereof.
- the tunnel server may be, for example, the one that is closest to the geographical device, and/or it may be the one that has the smallest loading at the time. In the latter case, the optimal connection may not always result in the user device being connected to the closest tunnel server.
- the optimal connection may be a tunnel server that is located farther away, but is less loaded than a tunnel server that is closer to the user device. Thereafter, the user device establishes a connection to the customer network through that tunnel server in step 408.
- FIG. 5 illustrates a VPN 500 wherein selection of the closest tunnel server is made by a network server according to embodiments of the invention.
- the VPN 500 is somewhat different from the network to 200 of Figure 2 in that in addition to a user device 502, it also includes a remote access server 504, and an authentication server 506.
- the remote access server 504 allows the user device 502 to connect to an extranet 508, from which the user device 502 may connect to the Internet 106 and thereafter to the customer network 108.
- This connection may be any suitable connection, but is typically a narrowband connection (e.g., dial-up modem) in this embodiment.
- the authentication server 506 authenticates the user device 502 to ensure that the user device 502 is authorized to access the extranet 508 and, hence, the customer network 108.
- the user device 502 To access the customer network 108, the user device 502 establishes a connection to the remote access server 504 using an appropriate connection procedure.
- the VPN client of the user device 502 obtains the device's geographical coordinates from the GPS module.
- the VPN client then forwards the geographical coordinates of the user device to the authentication server 506 (through the remote access server 504) along with authentication information that can be used to authenticate the user device.
- the authentication server 506 after authenticating the user device 502, determines the tunnel server 110 or 112 that is closest to the user device based on the geographical coordinates. It subsequently informs the VPN client which tunnel server 110 or 112 is closest.
- the VPN client thereafter establishes a connection through that tunnel server 110 or 112 to the customer network 108 in a known manner and using known protocols.
- FIG. 6 illustrates the authentication server 506 in more detail.
- the authentication server 506 includes some of the same functional components as the user device 502.
- the authentication server 506 includes a central processing unit (CPU) 600, an access device 602 that is typically a network interface card (NIC), etc.) and a storage unit 604.
- the storage unit 604 stores the software applications that run on the authentication server 506, including a VPN host 606.
- the VPN host 606 includes, or has access to, a tunnel server list 608 that is stored on the storage unit 604.
- the tunnel server list 608, which may be updated from time to time, contains the names and/or identifications of the tunnel servers in the VPN 500 along with the geographical region serviced by each tunnel server. From this list 608, the VPN host 606 may determine which tunnel server 110 or 112 is closest to the location of the user device 502 based on the geographical coordinates from the VPN client. The VPN host 606 can then inform the VPN client of the name and/or other identification of that tunnel server. In the event more than one tunnel server is close to the user device 502, the VPN host 606 is configured to query the tunnel servers 110 and 112 in order to determine which one has the lightest load. The VPN host 606 thereafter forwards this information to the VPN client of the user device 502. In this way, optimal routing and load balancing may be achieved in the VPN 500.
- FIG. 7 illustrates a method 700 for accessing a VPN where an authentication server determines which tunnel server to use.
- the method 700 begins at step 702 where a connection is made between the user device and a remote access server.
- the user device obtains the geographical coordinates for its location. Note that steps 702 and 704 may be switched in terms of their present sequence without departing from the scope of the invention.
- the user device forwards the geographical coordinates to an authentication server for determining which tunnel server results in an optimal connection based on the geographical coordinates.
- the tunnel server may be, for example, the one that is closest to the geographical device, and/or it may be the one that has the smallest loading at the time.
- the authentication server determines which tunnel server results in the optimal connection, it sends this information back to the user device. Thereafter, the user device establishes a connection to the customer network through that tunnel server in step 708.
Abstract
Method and system are disclosed for selecting a tunnel server in a virtual private
network that is closest to a user device. The user device may be equipped with location
reporting equipment, such as a GPS module. When the user device connects to the VPN,
it automatically uses the tunnel server that is nearest based on geographical coordinates
provided by the location reporting equipment. Selection of the closest tunnel server may
be performed by the user device itself, or it may be performed by a network server.
Where more than one tunnel servers are near to the user device, the tunnel server may be
selected based on load balancing objectives.
Description
- This invention relates to the field of telecommunication and, in particular, to a system and method of selecting an optimal path for connecting to a virtual private network (VPN).
- A VPN, as the name implies, is a private network that is established over an otherwise public network, such as the Internet. Typically used in a corporate environment, the VPN can provide secure and reliable transfer of text, voice, image, and video data between locally and remotely located offices without the use of expensive, dedicated data lines. Instead, the VPN employs a combination of encryption and user authentication along with other security mechanisms to maintain the security of the communication. For more information regarding VPNs, the reader is directed to, for example, I. Pepelnjak and J. Guichard, "MPLS and VPN Architectures," Cisco Press, 2001.
- A portion of a
typical VPN 100 is shown in Figure 1. As can be seen, auser device 102 may access theVPN 100 through an Internet service provider (ISP) 104. Theuser device 102 may be located essentially anywhere in the world, and may be any suitable device, including a desktop computer, a laptop computer, a personal digital assistant (PDA), and the like, so long as these devices are capable of executing a VPN client thereon. Similarly, the connection (shown as a lighting bolt) to theInternet service provider 104 may be any suitable connection, including a narrowband connection, a broadband connection, a wired connection, a wireless connection, and so on. TheInternet service provider 104 lets theuser device 102 connect to the Internet (indicated generally at 106), from which theuser device 102 may then connect to acustomer network 108 via one ofseveral tunnel servers 110 and 112 (also called VPN servers). - The tunnel servers 110 and 112 encrypt and encapsulate the communication between the
user device 102 and thecustomer network 108 to make the communication confidential and secure. Depending on the specific location of theuser device 102, one of thetunnel servers user device 102 then the others. Ideally, theuser device 102 connects to thenearest tunnel server user device 102. - Unfortunately, it is not presently possible for a VPN client to automatically choose the
closest tunnel server user device 102, which often results in sub-optimal call routing and load balancing. As for broadband, there is currently no way for auser device 102 to pick the closest tunnel server, since there is no way to determine the geographic location of theuser device 102. - Accordingly, what is needed is a way to allow a VPN client in a remotely located user device to connect to the closest tunnel server in a VPN. Specifically, what is needed is a way for the VPN client to connect to the closest tunnel server automatically with little or no intervention from the user.
- The present invention is directed to a method and system for automatically selecting a tunnel server in a VPN that is closest to a user device. In accordance with the method and system of the present invention, the user device may be equipped with location reporting equipment, such as a GPS module. When the user device connects to the VPN, it automatically uses the tunnel server that is nearest based on geographical coordinates provided by the location reporting equipment. Selection of the closest tunnel server may be performed by the user device itself, or it may be performed by a network server. Where more than one tunnel servers are near to the user device, the tunnel server may be selected based on load balancing objectives.
- In general, in one aspect, the invention is directed to a method of optimizing network routing and load distribution in a virtual private network. The method comprises the steps of obtaining geographical coordinates for a user device, and determining an optimal network server for the user device based on the geographical coordinates. The method further comprises connecting the user device to the virtual private network through the optimal network server.
- In general, in another aspect, the invention is directed to a user device capable of automatically connecting to an optimal network server in a virtual private network. The user device comprises location reporting equipment connected to the user device and configured to provide geographical coordinates for a location of the user device. The user device further comprises a central processing unit connected to the location reporting equipment and a storage unit connected to the central processing unit. The storage unit stores a virtual private network client thereon that is capable of obtaining geographical coordinates for the user device from the location reporting equipment, determining an optimal network server for the user device based on the geographical coordinates, and connecting the user device to the virtual private network through the optimal network server.
- In general, in yet another aspect, the invention is directed to a virtual private network. The virtual private network comprises a plurality of network servers and an authentication server connected to the network servers. The authentication server has a virtual private network host executing thereon and is configured to receive geographical coordinates for a user device requesting access to the network servers. The authentication server is further configured to determine an optimal network server for the user device based on the geographical coordinates, and send identifying information for the optimal network server to the user device.
- Reference will now be made, by way of example, to the accompanying drawings, wherein:
- Figure 1, described above, illustrates a conventional corporate VPN;
- Figure 2 illustrates an exemplary VPN wherein a user device determines the closest tunnel server according to embodiments of the invention;
- Figure 3 illustrates a block diagram of an exemplary user device according to embodiments of the invention;
- Figure 4 illustrates an exemplary VPN wherein a network server determines the closest tunnel server according to embodiments of the invention;
- Figure 5 illustrates a block diagram of an exemplary network server according to embodiments of the invention;
- Figure 6 illustrates a method of connecting to a VPN according to embodiments of the invention; and
- Figure 7 illustrates another method of connecting to a VPN according to embodiments of the invention.
-
- Following is a detailed description of illustrative embodiments of the invention with reference to the drawings wherein the same reference labels are used for the same or similar elements.
- As mentioned above, embodiments of the invention provide a user device, such as a desktop computer, laptop computer, PDA, and the like, that is equipped with location reporting equipment, such as a GPS (global positioning system) module. Such location reporting equipment are well-known to persons having ordinary skill in the art and will therefore not be described here. It will suffice to say that the purpose of the location reporting equipment is to provide the user device with the geographical coordinates for its location. As used herein, the term "geographical coordinates" refers to any suitable system for identifying the location of the user device, including the longitude and latitude of the user device. This location information may then be used to automatically select the VPN tunnel server closest to the user device. The selection of the closest tunnel server may be performed either by the user device, or it may be performed by a network server.
- Figure 2 illustrates an
exemplary VPN 200 where auser device 202 determines the closest tunnel server. The VPN 200 is similar to theVPN 100 of Figure 1 in that it includes anInternet service provider 104 which allows theuser device 202 to connect to the Internet 106. From the Internet 106, theuser device 202 may then access acustomer network 108 via one ormore tunnel servers user device 202 has location reporting equipment, namely, a GPS module (not visible here) attached thereto. Aglobal satellite system 204 provides the GPS module with the geographical coordinates of theuser device 202 upon request. Thus, theuser device 202 is capable of knowing its approximate geographical location at any given time. - To access the
customer network 108, theuser device 202 first establishes a connection to theInternet service provider 104. The connection to theInternet service provider 104 may be any suitable connection, but for embodiments such as the one described here, it is typically a broadband connection. As part of the connection process, the VPN client of theuser device 202 obtains the device's geographical coordinates from the GPS module. The VPN client then determines whichtunnel server user device 202 based on the geographical coordinates. The VPN client thereafter establishes a connection through thattunnel server customer network 108. The connection to thecustomer network 108 may be established in a known manner and using known protocols. - Figure 3 illustrates the
user device 202 in more detail. As can be seen, theuser device 202 has a number of functional components, including a central processing unit (CPU) 300, a network access device 302 (e.g., cable modem, DSL modem, dial-up modem, network interface card (NIC), etc.) and astorage unit 304. These functional components are generally well-known and therefore will be described only briefly here. Basically, theCPU 300 has primary responsibility for the overall operation of theuser device 202, including execution of the operating system therefor as well as any associated applications thereon. Thenetwork access device 302 is responsible for implementing the various procedures and protocols used by the VPN client to connect theuser device 202 to theVPN 200. Finally, thestorage unit 304 provides both long-term and temporary storage for the operating system and any data used by theuser device 202. Thestorage unit 304 also stores the software applications that are run on theuser device 202, including aVPN client 306. - In accordance with the principles and teachings of the invention, the
VPN client 306 includes, or has access to, atunnel server list 308 that is stored on thestorage unit 304. Thelist 308, which may be updated from time to time, includes the names and/or other identifications of the tunnel servers in theVPN 200 along with the geographical region serviced by each tunnel server. From thislist 308, theVPN client 306 may determine whichtunnel server user device 202 based on the geographical coordinates provided by theGPS module 310. TheVPN client 306 may then connect through thattunnel server customer network 108. In the event more than one tunnel server is close to theuser device 202, theVPN client 306 is configured to query thetunnel servers VPN client 306 may thereafter connect through that tunnel server to access the customer network. In this way, optimal routing and load balancing may be achieved in theVPN 200. - Figure 4 illustrates a
method 400 for accessing a VPN where the user device determines which tunnel server to use. As can be seen, themethod 400, in some embodiments, begins atstep 402 where a connection is made between the user device and an Internet service provider. Instep 404, the user device obtains the geographical coordinates for its location. Note that steps 402 and 404 may be switched in terms of their sequence without departing from the scope of the invention. Instep 406, the user device determines which tunnel server results in the optimal connection based on the geographical coordinates thereof. The tunnel server may be, for example, the one that is closest to the geographical device, and/or it may be the one that has the smallest loading at the time. In the latter case, the optimal connection may not always result in the user device being connected to the closest tunnel server. For example, if the user device is on a broadband connection, the optimal connection may be a tunnel server that is located farther away, but is less loaded than a tunnel server that is closer to the user device. Thereafter, the user device establishes a connection to the customer network through that tunnel server instep 408. - Figure 5 illustrates a
VPN 500 wherein selection of the closest tunnel server is made by a network server according to embodiments of the invention. As can be seen, theVPN 500 is somewhat different from the network to 200 of Figure 2 in that in addition to auser device 502, it also includes aremote access server 504, and anauthentication server 506. Theremote access server 504 allows theuser device 502 to connect to anextranet 508, from which theuser device 502 may connect to theInternet 106 and thereafter to thecustomer network 108. This connection, as before, may be any suitable connection, but is typically a narrowband connection (e.g., dial-up modem) in this embodiment. Theauthentication server 506 authenticates theuser device 502 to ensure that theuser device 502 is authorized to access theextranet 508 and, hence, thecustomer network 108. - To access the
customer network 108, theuser device 502 establishes a connection to theremote access server 504 using an appropriate connection procedure. As part of the connection process, the VPN client of theuser device 502 obtains the device's geographical coordinates from the GPS module. The VPN client then forwards the geographical coordinates of the user device to the authentication server 506 (through the remote access server 504) along with authentication information that can be used to authenticate the user device. Theauthentication server 506, after authenticating theuser device 502, determines thetunnel server tunnel server tunnel server customer network 108 in a known manner and using known protocols. - Figure 6 illustrates the
authentication server 506 in more detail. As can be seen, theauthentication server 506 includes some of the same functional components as theuser device 502. Specifically, theauthentication server 506 includes a central processing unit (CPU) 600, anaccess device 602 that is typically a network interface card (NIC), etc.) and astorage unit 604. Thestorage unit 604 stores the software applications that run on theauthentication server 506, including aVPN host 606. - In accordance with embodiments of the invention, the
VPN host 606 includes, or has access to, atunnel server list 608 that is stored on thestorage unit 604. Thetunnel server list 608, which may be updated from time to time, contains the names and/or identifications of the tunnel servers in theVPN 500 along with the geographical region serviced by each tunnel server. From thislist 608, theVPN host 606 may determine whichtunnel server user device 502 based on the geographical coordinates from the VPN client. TheVPN host 606 can then inform the VPN client of the name and/or other identification of that tunnel server. In the event more than one tunnel server is close to theuser device 502, theVPN host 606 is configured to query thetunnel servers VPN host 606 thereafter forwards this information to the VPN client of theuser device 502. In this way, optimal routing and load balancing may be achieved in theVPN 500. - Figure 7 illustrates a
method 700 for accessing a VPN where an authentication server determines which tunnel server to use. As can be seen, themethod 700, in some embodiments, begins atstep 702 where a connection is made between the user device and a remote access server. Instep 704, the user device obtains the geographical coordinates for its location. Note that steps 702 and 704 may be switched in terms of their present sequence without departing from the scope of the invention. Instep 706, the user device forwards the geographical coordinates to an authentication server for determining which tunnel server results in an optimal connection based on the geographical coordinates. The tunnel server may be, for example, the one that is closest to the geographical device, and/or it may be the one that has the smallest loading at the time. Once the authentication server determines which tunnel server results in the optimal connection, it sends this information back to the user device. Thereafter, the user device establishes a connection to the customer network through that tunnel server instep 708. - While the present invention has been described with reference to one or more particular embodiments, those skilled in the art will recognize that many changes may be made thereto without departing from the spirit and scope of the present invention. Each of these embodiments and obvious variations thereof is contemplated as falling within the spirit and scope of the claimed invention, which is set forth in the following claims.
Claims (14)
- A method of optimizing network routing and load distribution in a virtual private network, comprising:obtaining geographical coordinates for a user device;determining an optimal network server for the user device based on the geographical coordinates; andconnecting the user device to the virtual private network through the optimal network server.
- The method according to claim 1, wherein the step of determining comprises the user device automatically selecting the optimal network server based on the geographical coordinates.
- The method according to claim 1, wherein the step of determining comprises the user device sending the geographical coordinates to an authentication server for selecting the optimal network server based on the geographical coordinates.
- The method according to claim 1, 2 or 3, wherein the optimal network server is selected based on proximity to the user device.
- The method according to any preceding claim, wherein the optimal network server is selected based on load distribution.
- The method according to any preceding claim, further comprising authenticating the user device before allowing it to be connected to the virtual private network.
- A user device capable of automatically connecting to an optimal network server in a virtual private network, comprising:location reporting equipment connected to the user device and configured to provide geographical coordinates for a location of the user device;a central processing unit connected to the location reporting equipment; anda storage unit connected to the central processing unit, the storage unit storing a virtual private network client thereon that is capable of:obtaining geographical coordinates for the user device from the location reporting equipment;determining an optimal network server for the user device based on the geographical coordinates; andconnecting the user device to the virtual private network through the optimal network server.
- The user device according to claim 7, wherein the location reporting equipment is a GPS module.
- The user device according to claim 7 or 8, wherein the virtual private network client determines the optimal network server by selecting it from a list of network servers based on the geographical coordinates.
- The user device according to claim 7, 8 or 9, further comprising a network access device connected to the central processing unit, the network access device being capable of establishing a broadband connection between the user device and the virtual private network.
- The user device according to claim 7, 8 or 9, further comprising a network access device connected to the central processing unit, the network access device being capable of establishing a narrowband connection between the user device and the virtual private network.
- A virtual private network, comprising:a plurality of network servers; andan authentication server connected to the network servers, the authentication server having a virtual private network host executing thereon and configured to:receive geographical coordinates for a user device requesting access to the network servers;determine an optimal network server for the user device based on the geographical coordinates; andsend identifying information for the optimal network server to the user device.
- The virtual private network according to claim 12, further comprising a remote access server capable of connecting the user device to the virtual private network and also to the Internet.
- The virtual private network according to claim 12 or 13, wherein at least one of the network servers is a tunnel server.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US782619 | 2001-02-13 | ||
US10/782,619 US20050180319A1 (en) | 2004-02-18 | 2004-02-18 | Narrowband and broadband VPN optimal path selection using the global positioning system |
Publications (1)
Publication Number | Publication Date |
---|---|
EP1566949A1 true EP1566949A1 (en) | 2005-08-24 |
Family
ID=34711870
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP05101132A Withdrawn EP1566949A1 (en) | 2004-02-18 | 2005-02-15 | Narrowband and broadband vpn optimal path selection using the global positioning system |
Country Status (3)
Country | Link |
---|---|
US (1) | US20050180319A1 (en) |
EP (1) | EP1566949A1 (en) |
CA (1) | CA2496662A1 (en) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2958480A1 (en) * | 2010-03-30 | 2011-10-07 | Idkaya Sarl | METHOD AND SYSTEM FOR COMMUNICATION BETWEEN EQUIPMENT AND SERVER |
CN101222406B (en) * | 2006-12-14 | 2012-05-30 | 华耀环宇科技有限公司 | Method for application level content routing in virtual private network (VPN) using dual-proxy method |
US8850013B2 (en) | 2010-05-10 | 2014-09-30 | Jaron Waldman | Server load balancing using geodata |
US8971216B2 (en) | 1998-09-11 | 2015-03-03 | Alcatel Lucent | Method for routing transactions between internal and external partners in a communication center |
US9002920B2 (en) | 1998-09-11 | 2015-04-07 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for extended management of state and interaction of a remote knowledge worker from a contact center |
US9008075B2 (en) | 2005-12-22 | 2015-04-14 | Genesys Telecommunications Laboratories, Inc. | System and methods for improving interaction routing performance |
USRE45583E1 (en) | 1999-12-01 | 2015-06-23 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for providing enhanced communication capability for mobile devices on a virtual private network |
USRE45606E1 (en) | 1997-02-10 | 2015-07-07 | Genesys Telecommunications Laboratories, Inc. | Call and data correspondence in a call-in center employing virtual restructuring for computer telephony integrated functionality |
USRE46060E1 (en) | 1997-02-10 | 2016-07-05 | Genesys Telecommunications Laboratories, Inc. | In-band signaling for routing |
USRE46153E1 (en) | 1998-09-11 | 2016-09-20 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus enabling voice-based management of state and interaction of a remote knowledge worker in a contact center environment |
US9516171B2 (en) | 1997-02-10 | 2016-12-06 | Genesys Telecommunications Laboratories, Inc. | Personal desktop router |
US9553755B2 (en) | 1998-02-17 | 2017-01-24 | Genesys Telecommunications Laboratories, Inc. | Method for implementing and executing communication center routing strategies represented in extensible markup language |
USRE46438E1 (en) | 1999-09-24 | 2017-06-13 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for data-linking a mobile knowledge worker to home communication-center infrastructure |
USRE46528E1 (en) | 1997-11-14 | 2017-08-29 | Genesys Telecommunications Laboratories, Inc. | Implementation of call-center outbound dialing capability at a telephony network level |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1644825A1 (en) * | 2003-07-11 | 2006-04-12 | Computer Associates Think, Inc. | Apparatus and method for self management of information technology component |
US9460094B1 (en) * | 2005-01-10 | 2016-10-04 | Novell, Inc. | System and method for determining a nearest network resource using GPS coordinates |
US20060230278A1 (en) * | 2005-03-30 | 2006-10-12 | Morris Robert P | Methods,systems, and computer program products for determining a trust indication associated with access to a communication network |
US20060230279A1 (en) * | 2005-03-30 | 2006-10-12 | Morris Robert P | Methods, systems, and computer program products for establishing trusted access to a communication network |
US20060265737A1 (en) * | 2005-05-23 | 2006-11-23 | Morris Robert P | Methods, systems, and computer program products for providing trusted access to a communicaiton network based on location |
US9137043B2 (en) * | 2006-06-27 | 2015-09-15 | International Business Machines Corporation | System, method and program for determining a network path by which to send a message |
US8560604B2 (en) | 2009-10-08 | 2013-10-15 | Hola Networks Ltd. | System and method for providing faster and more efficient data communication |
US9253160B2 (en) | 2012-12-31 | 2016-02-02 | Kent Lawson | Methods, systems, and media for secure connection management and automatic compression over metered data connections |
US9241044B2 (en) | 2013-08-28 | 2016-01-19 | Hola Networks, Ltd. | System and method for improving internet communication by using intermediate nodes |
US10841360B2 (en) * | 2014-12-08 | 2020-11-17 | Umbra Technologies Ltd. | System and method for content retrieval from remote network regions |
WO2016110785A1 (en) | 2015-01-06 | 2016-07-14 | Umbra Technologies Ltd. | System and method for neutral application programming interface |
CN107409079B (en) | 2015-01-28 | 2021-05-07 | 安博科技有限公司 | System and method for global virtual network |
US10574482B2 (en) | 2015-04-07 | 2020-02-25 | Umbra Technologies Ltd. | Multi-perimeter firewall in the cloud |
EP4167547A1 (en) | 2015-12-11 | 2023-04-19 | Umbra Technologies Ltd. | System and method for information slingshot over a network tapestry and granularity of a tick |
EP3449617B1 (en) | 2016-04-26 | 2021-08-18 | Umbra Technologies Ltd. | Network slinghop via tapestry slingshot |
LT3767493T (en) | 2017-08-28 | 2023-03-10 | Bright Data Ltd. | Method for improving content fetching by selecting tunnel devices |
WO2020202135A2 (en) | 2019-04-02 | 2020-10-08 | Luminati Networks Ltd. | System and method for managing non-direct url fetching service |
US11736553B1 (en) | 2019-09-27 | 2023-08-22 | Amazon Technologies, Inc. | Selecting hosting servers for interactive electronic activities |
US11863616B1 (en) * | 2020-10-30 | 2024-01-02 | Amazon Technologies, Inc. | Selecting hosting servers for network services |
US11399012B1 (en) * | 2021-07-03 | 2022-07-26 | Oversec, Uab | Server picking in a virtual private network |
US11843581B2 (en) * | 2021-08-15 | 2023-12-12 | Netflow, UAB | Clustering of virtual private network servers |
US20230171236A1 (en) * | 2021-11-28 | 2023-06-01 | Uab 360 It | Authentication procedure in a virtual private network |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1075153A2 (en) * | 1999-08-06 | 2001-02-07 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for providing enhanced communication capability for mobile devices on a virtual private network (VPN) |
WO2002017567A2 (en) * | 2000-08-25 | 2002-02-28 | Yogogo Limited | Wireless communications system with location-dependent services |
US20030041238A1 (en) * | 2001-08-15 | 2003-02-27 | International Business Machines Corporation | Method and system for managing resources using geographic location information within a network management framework |
CA2380702A1 (en) * | 2002-04-05 | 2003-10-05 | Gary Tremblay | Method and apparatus for location dependent software applications |
US20030225893A1 (en) * | 2002-03-01 | 2003-12-04 | Roese John J. | Locating devices in a data network |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7500243B2 (en) * | 2000-08-17 | 2009-03-03 | Sun Microsystems, Inc. | Load balancing method and system using multiple load balancing servers |
US20030115258A1 (en) * | 2001-12-13 | 2003-06-19 | International Business Machines Corporation | Time zone difference based locality estimation between web clients and E-business servers |
US20040034467A1 (en) * | 2002-08-09 | 2004-02-19 | Paul Sampedro | System and method for determining and employing road network traffic status |
DE60221917T2 (en) * | 2002-11-27 | 2008-05-15 | Research In Motion Ltd., Waterloo | DATA TRANSMISSION FROM A HOSTSERVER VIA TUNNELSERVER TO A WIRELESS DEVICE AND ALLOCATION OF A TEMPORARY IPV6 ADDRESS TO A TEMPORARY IPV4 ADDRESS FOR COMMUNICATION IN AN IPV4 WIRELESS NETWORK WITH THE DEVICE |
US20050055374A1 (en) * | 2003-09-08 | 2005-03-10 | Sony Corporation | Method of and apparatus for providing localized information from an internet server or portal to user without requiring user to enter location |
-
2004
- 2004-02-18 US US10/782,619 patent/US20050180319A1/en not_active Abandoned
-
2005
- 2005-02-10 CA CA002496662A patent/CA2496662A1/en not_active Abandoned
- 2005-02-15 EP EP05101132A patent/EP1566949A1/en not_active Withdrawn
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1075153A2 (en) * | 1999-08-06 | 2001-02-07 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for providing enhanced communication capability for mobile devices on a virtual private network (VPN) |
WO2002017567A2 (en) * | 2000-08-25 | 2002-02-28 | Yogogo Limited | Wireless communications system with location-dependent services |
US20030041238A1 (en) * | 2001-08-15 | 2003-02-27 | International Business Machines Corporation | Method and system for managing resources using geographic location information within a network management framework |
US20030225893A1 (en) * | 2002-03-01 | 2003-12-04 | Roese John J. | Locating devices in a data network |
CA2380702A1 (en) * | 2002-04-05 | 2003-10-05 | Gary Tremblay | Method and apparatus for location dependent software applications |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
USRE45606E1 (en) | 1997-02-10 | 2015-07-07 | Genesys Telecommunications Laboratories, Inc. | Call and data correspondence in a call-in center employing virtual restructuring for computer telephony integrated functionality |
USRE46243E1 (en) | 1997-02-10 | 2016-12-20 | Genesys Telecommunications Laboratories, Inc. | In-band signaling for routing |
US9516171B2 (en) | 1997-02-10 | 2016-12-06 | Genesys Telecommunications Laboratories, Inc. | Personal desktop router |
USRE46060E1 (en) | 1997-02-10 | 2016-07-05 | Genesys Telecommunications Laboratories, Inc. | In-band signaling for routing |
USRE46521E1 (en) | 1997-09-30 | 2017-08-22 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for extended management of state and interaction of a remote knowledge worker from a contact center |
USRE46528E1 (en) | 1997-11-14 | 2017-08-29 | Genesys Telecommunications Laboratories, Inc. | Implementation of call-center outbound dialing capability at a telephony network level |
US9553755B2 (en) | 1998-02-17 | 2017-01-24 | Genesys Telecommunications Laboratories, Inc. | Method for implementing and executing communication center routing strategies represented in extensible markup language |
US8971216B2 (en) | 1998-09-11 | 2015-03-03 | Alcatel Lucent | Method for routing transactions between internal and external partners in a communication center |
US9350808B2 (en) | 1998-09-11 | 2016-05-24 | Alcatel Lucent | Method for routing transactions between internal and external partners in a communication center |
USRE46387E1 (en) | 1998-09-11 | 2017-05-02 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for extended management of state and interaction of a remote knowledge worker from a contact center |
USRE46153E1 (en) | 1998-09-11 | 2016-09-20 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus enabling voice-based management of state and interaction of a remote knowledge worker in a contact center environment |
US9002920B2 (en) | 1998-09-11 | 2015-04-07 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for extended management of state and interaction of a remote knowledge worker from a contact center |
US10218848B2 (en) | 1998-09-11 | 2019-02-26 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for extended management of state and interaction of a remote knowledge worker from a contact center |
USRE46438E1 (en) | 1999-09-24 | 2017-06-13 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for data-linking a mobile knowledge worker to home communication-center infrastructure |
USRE46457E1 (en) | 1999-09-24 | 2017-06-27 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for data-linking a mobile knowledge worker to home communication-center infrastructure |
USRE45583E1 (en) | 1999-12-01 | 2015-06-23 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for providing enhanced communication capability for mobile devices on a virtual private network |
USRE46538E1 (en) | 2002-10-10 | 2017-09-05 | Genesys Telecommunications Laboratories, Inc. | Method and apparatus for extended management of state and interaction of a remote knowledge worker from a contact center |
US9008075B2 (en) | 2005-12-22 | 2015-04-14 | Genesys Telecommunications Laboratories, Inc. | System and methods for improving interaction routing performance |
US9854006B2 (en) | 2005-12-22 | 2017-12-26 | Genesys Telecommunications Laboratories, Inc. | System and methods for improving interaction routing performance |
CN101222406B (en) * | 2006-12-14 | 2012-05-30 | 华耀环宇科技有限公司 | Method for application level content routing in virtual private network (VPN) using dual-proxy method |
FR2958480A1 (en) * | 2010-03-30 | 2011-10-07 | Idkaya Sarl | METHOD AND SYSTEM FOR COMMUNICATION BETWEEN EQUIPMENT AND SERVER |
US8850013B2 (en) | 2010-05-10 | 2014-09-30 | Jaron Waldman | Server load balancing using geodata |
Also Published As
Publication number | Publication date |
---|---|
US20050180319A1 (en) | 2005-08-18 |
CA2496662A1 (en) | 2005-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1566949A1 (en) | Narrowband and broadband vpn optimal path selection using the global positioning system | |
US8094337B2 (en) | Device and system for assisting printer selection through a network | |
CN103399909B (en) | The method and apparatus that access control level is distributed in access networked content file is provided | |
US7895335B2 (en) | Enabling communications of electronic data between an information requestor and a geographically proximate service provider | |
EP1697833B1 (en) | Cache server at hotspots for downloading services | |
US9197626B2 (en) | Leveraging a persistent connection to access a secured service | |
KR100889081B1 (en) | Remote proxy server agent | |
US20040003084A1 (en) | Network resource management system | |
JP2002505555A (en) | Remote computer communication | |
US20080046883A1 (en) | Method and apparatus for just-in-time provisioning application-related information at a communication device | |
US7376705B2 (en) | Method and system for restricting content redistribution | |
CN103703693A (en) | Mobile phone as a one-way recorded transmitter over a cellular network | |
EP2371096A1 (en) | Electronic file sending method | |
US20050138211A1 (en) | Data synchronization system with data security and proxy capabilities | |
CN1694405A (en) | System and method of remote computer service | |
US20080060059A1 (en) | Data processor, peripheral device, and recording medium used herewith | |
US20060015410A1 (en) | Information registering method, information managing apparatus and advertisement displaying system | |
US6711610B1 (en) | System and method for establishing secure internet communication between a remote computer and a host computer via an intermediate internet computer | |
JP4712196B2 (en) | Authentication apparatus and method, network system, recording medium, and computer program | |
JPWO2012046583A1 (en) | ACCESS CONTROL DEVICE, ACCESS CONTROL SYSTEM, ACCESS CONTROL METHOD, AND ACCESS CONTROL PROGRAM | |
US20040215788A1 (en) | System and method for associating a device with an existing service account | |
US20220311766A1 (en) | Sensor-based authentication, notification, and assistance systems | |
JP2004046681A (en) | Content output system, relay server for request to output content, and content output device | |
JP2006018573A (en) | Destination guiding method and system | |
WO2020248369A1 (en) | Firewall switching method and related apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU MC NL PL PT RO SE SI SK TR |
|
AX | Request for extension of the european patent |
Extension state: AL BA HR LV MK YU |
|
17P | Request for examination filed |
Effective date: 20050907 |
|
AKX | Designation fees paid |
Designated state(s): DE FR GB |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
18D | Application deemed to be withdrawn |
Effective date: 20100831 |