Claims
- 1. A method of operating a mobile node having a network layer and a plurality of network interfaces, each with a respective device driver, the method comprising the steps of:
transmitting communications from the network layer to any of the network interfaces by way of a multi-interface driver capable of communication with the respective device driver corresponding to each respective network interface; switching from a first one of the network interfaces to a second one of the network interfaces by changing the one of the plurality of device drivers with which the multi-interface driver communicates, while hiding the switching from the network layer.
- 2. The method of claim 1, further comprising communicating between a virtual interface and the network layer by way of the multi-interface driver, the virtual interface presenting the appearance of always being an active interface to the network layer, regardless of which network interface is being used at a given time.
- 3. The method of claim 2, wherein the virtual interface provides a source address to the network layer to be used in data packets transmitted by the mobile node.
- 4. The method of claim 1, further comprising:
selecting the second one of the network interfaces, based on a signal strength of each network interface and a user priority assigned to each network interface.
- 5. A method of operating a mobile node, comprising the steps of:
identifying at least two available interfaces for communications by the mobile node, determining a plurality of characteristics of each of the network interfaces; selecting one of the network interfaces based on the plurality of characteristics; and communicating by way of the selected network interface.
- 6. A method according to claim 5, wherein the mobile node is communicating by way of a current network interface connection other than the selected network interface, the method further comprising:
establishing a connection between the mobile node and the selected network interface; and maintaining the current network interface connection until after the connection between the mobile node and the selected network interface is established.
- 7. The method of claim 5, wherein the selecting is based on a respective score for each available network interface, the score being based on a signal strength value and a user priority value.
- 8. The method of claim 7, wherein:
the mobile node is currently communicating by way of a current network interface connection, and the score is calculated by applying a higher weight coefficient to the signal strength of the current network interface connection than a weight coefficient applied to the signal strength of any other available network interface.
- 9. The method of claim 7, wherein a weight coefficient applied to the user priority value for each network interface depends on the signal strength for each network interface.
- 10. The method of claim 9, wherein a weight coefficient of zero is applied to the user priority value for each network interface having a signal strength below a respective threshold value for that network interface.
- 11. The method of claim 10, wherein:
the mobile node is currently communicating by way of a current network interface connection, and the threshold value for the current network interface connection is lower than the threshold value for other network interfaces.
- 12. The method of claim 1, further comprising:
automatically selecting the second network interface based on predefined criteria; displaying an identification of the automatically selected interface; receiving a manual override instruction from a user identifying a selection of the second network by the user; and switching to the network selected by the user.
- 13. A method of operating a mobile node having an IPSec layer, comprising the steps of:
establishing an IPSec session between the mobile node and a virtual private network/IPSec gateway by way of a first network; switching from the first network to a second network without disturbing the IPSec session, the switching being effected using mobile IP at a lower layer than the IPSec layer; and hiding the switching from the IPSec layer by providing a fake MAC layer address of a default router to the IPsec layer, and rewriting MAC layer headers in incoming and outgoing packets in an intermediate driver with correct MAC layer addresses.
- 14. A mobile node comprising:
a plurality of network interfaces, each with a respective device driver; a network layer; a multi-interface driver capable of communication with each network interface by way of the respective device driver for that network interface, the multi-interface driver handling communications from the network layer to any of the network interfaces; the multi-interface driver switching from a first one of the network interfaces to a second one of the network interfaces by changing the one of the plurality of device drivers with which the multi-interface driver communicates, while hiding the switching from the network layer.
- 15. The mobile node of claim 14, further comprising a virtual interface in communication with the network layer by way of the multi-interface driver, the virtual interface presenting the appearance of always being an active interface to the network layer, regardless of which device driver is being used at a given time.
- 16. The mobile node of claim 15, wherein the virtual interface provides a source address to the network layer to be used in data packets transmitted by the mobile node.
- 17. The mobile node of claim 14, further comprising:
means for selecting the second one of the network interfaces, based on a signal strength of each network interface and a user priority assigned to each interface.
- 18. A mobile node, comprising:
at least two available network interfaces for communications by the mobile node; interface detection means for determining a plurality of characteristics of each of the network interfaces; means for selecting one of the network interfaces based on the plurality of characteristics, wherein the mobile node communicates by way of the selected network interface.
- 19. The mobile node of claim 18, wherein the selecting means selects one of the network interfaces based on signal strength and a user defined preference value.
- 20. The mobile node of claim 18, wherein the selecting means includes hysteresis.
- 21. A mobile node, comprising:
a network layer; an IPSec driver below the network layer; an intermediate driver below the IPSec driver; at least one network interface to and from which the intermediate driver sends and receives packets, wherein the intermediate driver includes means for switching from a first network to a second network, without disturbing an ongoing IPSec session, the switching being effected using mobile IP at a lower layer than the IPSec layer, and the intermediate driver hides the switching from the IPSec layer by providing a fake MAC layer address of a default router to the IPsec layer, and rewrites MAC layer headers in incoming and outgoing packets with correct MAC layer addresses.
- 22. A computer readable medium encoded with computer program code, wherein, when the code is executed by a processor, the processor performs a method of operating a mobile node having a network layer and a plurality of network interfaces, each with a respective device driver, the method comprising the steps of:
transmitting communications from the network layer to any of the network interfaces by way of a multi-interface driver capable of communication with the respective device driver corresponding to each respective network interface; switching from a first one of the network interfaces to a second one of the network interfaces by changing the one of the plurality of device drivers with which the multi-interface driver communicates, while hiding the switching from the network layer.
- 23. A computer readable medium encoded with computer program code, wherein, when the code is executed by a processor, the processor performs a method of operating a mobile node, comprising the steps of:
identifying at least two available network interfaces for communications by the mobile node; determining a plurality of characteristics of each of the network interfaces; selecting one of the network interfaces based on the plurality of characteristics; and communicating by way of the selected network interface.
- 24. A computer readable medium encoded with computer program code, wherein, when the code is executed by a processor, the processor performs a method of operating a mobile node having an IPSec layer, comprising the steps of:
establishing an IPSec session between the mobile node and a virtual private network/IPSec gateway by way of a first network; switching from the first network to a second network without disturbing the IPSec session, the switching being effected using mobile IP at a lower layer than the IPSec layer; and hiding the switching from the IPSec layer by providing a fake MAC layer address of a default router to the IPsec layer, and rewriting MAC layer headers in incoming and outgoing packets in an intermediate driver with correct MAC layer addresses.
- 25. A method of selecting a Wi-Fi network from a plurality of Wi-Fi networks, each Wi-Fi network having an associated ESSID, the method comprising the steps of:
receiving an input indicating a selection of a complete ESSID, an ESSID prefix, or a request for any available Wi-Fi network; and automatically selecting:
the Wi-Fi network associated with the complete ESSID, if the input indicates the complete ESSID, one of the Wi-Fi networks associated with an ESSID having the ESSID prefix if the input indicates selection of the ESSID prefix, or one of the available Wi-Fi networks if the input indicates a request for any available Wi-Fi network, wherein the automatic selecting step is based on at least one of the group consisting of signal strength in each Wi-Fi network, priority of each Wi-Fi network, number of clients in each Wi-Fi network, and frame error rate in each Wi-Fi network, if the input indicates selection of the ESSID prefix or any available Wi-Fi network.
- 26. The method of claim 25, wherein the input is one of the group consisting of data from a profile configuration and data manually entered by a user.
Parent Case Info
[0001] This application claims the benefit of U.S. Provisional Patent Application No. 60/419,333, filed Oct. 17, 2002.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60419333 |
Oct 2002 |
US |