CA2980588A1 - Method and process of network gateway configuration to influence client device network selection process - Google Patents

Method and process of network gateway configuration to influence client device network selection process Download PDF

Info

Publication number
CA2980588A1
CA2980588A1 CA2980588A CA2980588A CA2980588A1 CA 2980588 A1 CA2980588 A1 CA 2980588A1 CA 2980588 A CA2980588 A CA 2980588A CA 2980588 A CA2980588 A CA 2980588A CA 2980588 A1 CA2980588 A1 CA 2980588A1
Authority
CA
Canada
Prior art keywords
network
address
gateway
client device
user
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.)
Abandoned
Application number
CA2980588A
Other languages
French (fr)
Inventor
Jeffrey J. Brown
Nicholas A. Newell
Anthony C. Obeta
Amritpal S. Shokar
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CA2980588A priority Critical patent/CA2980588A1/en
Publication of CA2980588A1 publication Critical patent/CA2980588A1/en
Abandoned legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2514Translation of Internet protocol [IP] addresses between local and global IP addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/622Layer-2 addresses, e.g. medium access control [MAC] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • H04L61/5014Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]

Description

Preliminary Patent Application Specification Title of Invention Method and process of network gateway configuration to influence client device network selection process Field of the Invention The invention relates to gateways and other network access elements used by client devices for accessing IF networks, and more specifically, to a method and process of using novel DHCP, NAT, and IF forwarding configurations to influence the decision made by the client device's standard network selection algorithm when multiple networks are simultaneously available for connection.
Background of the Invention In a typical network, a client device such as a desktop computer, laptop computer, or mobile device (smartphone, tablet, etc) gains access to the network via a network access element that is often called a network gateway, but may also be called an access router, access switch, or more generically, a network access element. This network access element provides client device interconnection to the network, and typically includes hardware and software that supports a wide variety of features to facilitate the management, allocation, and distribution of IF
addresses to the client devices for which it is providing network access.
One of the tasks sometimes performed by a network access device is to connect one or more client devices to a local area network (LAN) comprised of private IF
addresses. In these situations the network access device will frequently also act as a network gateway, interconnecting and routing the private IF addresses of the LAN to and from the public IF
addresses of another network such as the Internet. For example, many residential wireless gateways create access to a private address LAN while also providing interconnect to the Internet.
One of the common tasks performed by a network gateway is forwarding (or routing) of packets between the interconnected networks. In a typical situation, the gateway receives a packet on one port (e.g., from a client device) and forwards the packet on another port (e.g., to the Internet). When the gateway is creating client access to a private address LAN, another task performed by some gateways is network address translation (NAT). NAT generally refers to substitution of an address ("original address") in a received packet with a new address. For example, a gateway with NAT functionality can perform the necessary substitutions for a client device (e.g. a home computer) with only a locally routable private IF address to bi-directionally communicate with a host computer (e.g. a web site) that has a public IF
address.
In some implementations of network access devices, a Dynamic Host Configuration Protocol (DHCP) server is responsible for allocating and assigning one or more Internet Protocol (IF) 1 I Page Confidential. External Release only under NDA
Vi - September 2017 Method and process of network gateway configuration to influence client device network selection process addresses to the client devices requiring access to the network. The DHCP
protocol provides a mechanism for allocating IF addresses dynamically so that the addresses can be reused. The addresses are dynamically assigned from and returned to a pool of addresses maintained on the DHCP server as needed.
Typically, whenever a client device desires to interconnect with the network, the client sends a DHCP Discovery broadcast packet to the DHCP server. The DHCP server returns a DHCP
Offer response packet to client. The DHCP Offer typically provides the client with an IP address, a network submask, and a default gateway address. The default gateway address is a locally routable IF address to which the client can send data packets destined to any IF address for which it does not know the corresponding physical machine address.
Each device on a network typically has at least two addresses: a media access control (MAC) address and an Internet Protocol (IP) address. The MAC address is typically the address of the physical network interface card (NIC) or similar physical network interface within the device. The MAC address typically does not change for the life of the device. An IP
address, on the other hand, can change if the machine moves to another part of the network or the network uses dynamic IP addressing such as provided by the DHCP protocol and DHCP server.
ARP is an Internet Protocol used, among other things, for correlating a devices IF address to its MAC address. The ARP protocol can be used by network elements to map or resolve a target IF address to its appropriate MAC address (and vice versa). ARP typically works by having the network element seeking address information broadcast a packet to all network elements, hosts, and clients attached to the LAN. The ARP packets contain the target IF
address, which is the IF address the sender is interested in communicating with. If a network element on the LAN
knows or is the MAC address associated with the target IF address it will send that MAC
address to the sender. From then on the sender can send packets to the target (logical) IF
address by using the returned (physical) MAC address.
If no network element responds to the ARP packet and the target IF address is local (as defined, for example by the network mask returned by the DHCP server), the sender will assume there is no active network element or host at the target IP address.
However, if the target IF address is not local the sender will typically forward that packet to the MAC address of the default gateway in order to have it routed appropriately.
Most mobile computing devices (for example smartphones and tablets) are capable of connecting to the Internet or other IF networks over a variety of wired and wireless interfaces.
For example, many smartphones support wireless Internet access via three physically distinct wireless interfaces: cellular data, Wi-Fi, and Bluetooth. More than one physical access modality may be available at any specific location, and each access modality will typically connect the mobile device to a modality-specific network access element (router, switch, gateway, etc.).
Further, each physical network access modality may connect the mobile device to a different network service provider.
For example, a mobile device's cellular modem might connect the device to a network access point physically located on a distant cellular radio tower operated by a national cellular service provider, while the device's Wi-Fi interface might connect to a coffee shop's Wi-Fi gateway (often called a Wi-Fi hotspot). The Wi-Fi hotspot might gain its connection to the Internet via a
2 I Page Confidential. External Release only under NDA
Vi - September 2017 Method and process of network gateway configuration to influence client device network selection process terrestrial link operated by a local Internet service provider (ISP).
To further complicate the situation, at a single location each physical network access modality may have several service providers, access points, or access gateways to choose from. Many network elements and client devices are only capable of routing traffic to one network access point per physical access modality. For example, most mobile devices will route traffic to one and only one Wi-Fi network at a time, or one and only one cellular network at a time even though there may be more than one Wi-Fi or cellular gateway available at that location.
Devices such as smartphones and other mobile devices often allow the human user to independently and individually enable and disable the device's various physical network interfaces. So, for example, a user may have both Wi-Fi and cellular data interfaces enabled, while the Bluetooth interface is disabled. Similarly, within each physical modality, the user will typically be able to enable and disable, or at least have some level of control over the network or service provider options available via that physical modality. For example, the user may configure their device such that specific Wi-Fi hotspots, as identified by their Service Set Identification (SSID), will be enabled and connected to automatically, while other SSIDs will be disabled or require user intervention before a connection to that hotspot is made.
At some locations and in some situations a network device such as a mobile phone has more than one candidate network to select from. Further, the user's configuration of the device may be such that more than one of these candidate networks is fully enabled, meaning, if that network was the only network available the device would connect to it automatically without user intervention. Multi-path protocols exist to route Internet traffic across multiple access points and networks simultaneously, however this is complex technology and is not a common networking configuration for most client devices. Instead, the device's operating system (i0S and Android are examples) typically selects one of the candidate physical interfaces as the preferred or active interface, and within that physical modality select a single candidate network access point and network to connect to.
For example, if Internet connectivity is available on both cellular data and Wi-Fi, the mobile device's OS may autonomously determine to route all Internet traffic over Wi-Fi. The device OS's algorithm that determines network selection might assume that the user prefers to use a Wi-Fi network rather than consume bandwidth on their (potentially expensive) cellular data plan.
If more than one candidate Wi-Fi hotspot is present, the OS's network selection process will then autonomously choose one candidate to connect to.
The OS algorithm used to select from the available candidate networks is typically proprietary, complex, or both, and may take into account several factors such as signal quality and strength, Wi-Fi hotspot type (public or private), and any number of other measured, derived, or assumed properties and qualities of the candidate networks. Different OSs use different algorithms, and the algorithm may differ between versions of the same OS. As a result, sometimes the OS may not select the network expected or desired by the user.
The OS may not permit user configuration nor application programs residing on the device to change the autonomous behaviour of the OS's network selection algorithm. Since the user's ability to modify the device's OS itself is typically quite limited, to the typical user this effectively render the algorithm as immutable.
3 I Page Confidential. External Release only under NDA
Vi ¨ September 2017 Method and process of network gateway configuration to influence client device network selection process In cases where the device's user wishes to override the OS's autonomous choice of network the user is typically required to manually select which network to use. This is often achieved using a network settings configuration page on the device's user interface. The selection may be a simple as choosing from the list of candidate Wi-Fi SSIDs, or as complex as disabling one or more undesired physical interfaces or access points in order to reduce the OS's choices, eventually leaving the user's desired network connection as the one selected by the OS.
Requiring user intervention in order to modify the client device's normal network selection decision can be more than just inconvenient to the user and error prone, it may negatively impact the user financially. The user may have purchased a satellite data service that implements client device access via a local Wi-Fi network (for example the satellite terminal provides a local Wi-Fi hotspot). Bandwidth on satellite data services can be hundreds or thousands of times more expensive than bandwidth cellular data services. In this situation even a single instance of the user forgetting to turn off their Wi-Fi could be quite expensive if they assume they are using cellular data when in reality their phone has selected the Wi-Fi network.
In situations where one or more of the candidate networks has undesirable qualities (such as extremely high usage costs) the user may wish to limit or reduce which of the device's applications are allowed to send and receive traffic via that network. The user may want all their applications to run properly when connected to a desirable network, restricting access to all but the essential application(s) when connected to an undesirable network.
Mobile device operating systems typically allow users to control, on a per application basis, which applications are allowed to access which type of physical network.
However, this does not work well for situations where different networks of the same physical type have different costs or other qualities of importance to the user. For example, a Wi-Fi network offered by a coffee shop may be considered "free" to the user, while the Wi-Fi network offered by a satellite terminal may be considered extremely expensive -- the network to use only when no other network is available, and even then only by the most critical applications running on the device.
This "network of last resort" situation may require the user to perform complex device configurations, manually uninstalling or otherwise restricting or disabling all non-essential applications on the device each time an "undesirable network" is the only network available, and then restoring the configuration when connected to a "desirable network".
Brief Summary of the Invention The invention is comprised of a novel configuration of a network gateway or network access device, combined with specifically programmed behaviour of a communicating application installed on a client device. The goal of this invention is to allow the gateway to change the decisions made by the client device's network selection algorithm without directly modifying that algorithm or requiring ongoing user interaction when competing candidate networks become available or unavailable, such is typical in a mobile-user situation.
The gateway's configuration and resulting communication with the client device is such that the client device's OS allows the device to connect to the LAN implemented by the gateway, and allows for an installed custom application to send/receive traffic to/from the network while all other applications installed on the device and not utilizing this invention are blocked from
4 I Page Confidential. External Release only under NDA
Vi - September 2017 Method and process of network gateway configuration to influence client device network selection process connecting to the network.
Further to the above, the gateway's configuration and communication with the client device is such that whenever a more desirable network candidate is simultaneously available on another physical interface the client device's OS autonomously connects to and routes all network traffic, including the custom application's traffic, over the desirable-network, sending no traffic over the undesirable network.
This optimal network selection is achieved without requiring the user to dynamically update or change device configurations as the desirable and undesirable networks become available or unavailable. One potential benefit of this simplification and improvement in usability is that it helps data network access providers offer unique but high-cost network access alternative that otherwise the user might consider too complex or difficult to purchase and use.
Detailed Description of the Invention One aspect of this invention relates to the DHCP server associated with the network gateway or network access element of a network that is considered less desirable to use, for example due to high bandwidth costs. The network provider and/or user may wish this network to be treated as the network of last resort, the network to use when no other alternative is available. The DHCP server sends the client device a private IF address and network mask to use, but does not provide the client device with a default network gateway address. This informs the client device's OS that there is no available connection to a public IP routable network via this local network.
Another aspect of this invention is to program the gateway's NAT routing configuration such that the gateway performs network address translation on a specific subset of local IF addresses, translating and routing traffic to/from these addresses from/to a corresponding set of public IF
addresses. So for example local IF address 192.168.1.10 could be NAT'd and routed to public IP address 8.8.8.8. This allows a custom application installed on the device to use a specific local IF address to connect to a specific public IP address. Since unmodified applications will be unaware of the forwarded nature of this local address they will typically not be connecting to this address. And even if they did they would only be able to connect to the host computer connected to that specific public IF address.
This local-to-public address translation can be solely at the IP protocol layer, or it can include forwarding and translation of specific TCP or UDP ports.
Another aspect of the invention is related to how the gateway ensures the ARP
or similar protocol used by the client OS to resolve IF addresses to MAC addresses results in data packets sent to the local-to-public addresses discussed above are resolved to and sent to the gateway. For example, before the application attempts to connect to these specific translated local IP addresses it will broadcast a whois ARP request for their location on the LAN. The gateway must respond with its MAC address for these local addresses. This aspect of the invention is to ensure the gateway's client facing LAN interface is mutli-homed, meaning, it is assigned several IF addresses.
An alternative embodiment of the invention has the gateway use DHCP option 121 in its response to the client to cause the client device to establish a static route to the gateway for I Page Confidential. External Release only under NDA
Vi ¨ September 2017 Method and process of network gateway configuration to influence client device network selection process each of the desired local-to-public translated local IF addresses. Not all operating systems fully support option 121, and hence this is not the preferred embodiment.
Another aspect of this invention is related to the design of a custom application that wishes to use the undesirable network, but only when it is the only network available.
The application uses public IF addresses until it determines that the undesirable-network is the only network currently available, at which point it relies on the gateway's local-to-public IF
address translation and forwarding to send traffic to the desired public IF addresses via the selected local IF addresses.
Another aspect of the invention is related to the discovery that certain OSs may ignore the lack of a DHCP-provided default gateway address and attempt to route all traffic from installed applications destined to a public IP address through the undesirable-network's gateway. This aspect of the invention is to configure the gateway to filter or block routing of all public IF
addresses on the client facing interface, thereby ensuring that even if the client device's OS
ignores that lack of default gateway no public IF traffic is sent over the undesirable network.
Since the custom application knows to use the local-to-public translated IP
addresses, this filtering does not prevent the custom application from connecting to specific public IP addresses on the Internet.
Another aspect of the invention addresses the discovery that mobile operating systems such as iOS and Android may respond differently to the situation where both a Wi-Fi and cellular data connection is available but the Wi-Fi network's DHCP configuration did not include a network gateway address. The situation of interest is when it is the Wi-Fi network gateway that is configured using the procedures defined in this invention. For example, certain versions of iOS
treat the undesirable Wi-Fi network as a purely local LAN, and therefore when a cellular network is available it automatically routes all public IP traffic to it. However certain versions of the Android OS appear to ignore that there was no default gateway configuration sent to it by the DHCP server. The Android OS continues to attempt to route public IF traffic over the undesirable Wi-Fi network, thereby ignoring the cellular network when both cellular and Wi-Fi are available. To overcome this, when the custom application detects the presence of a cellular network it can selectively disable the SSID of the undesirable Wi-Fi network while leaving the physical Wi-Fi interface running. This is the preferred embodiment when compared to turning the physical Wi-Fi interface off since if a desirable Wi-Fi network becomes available the OS is free to automatically select it and begin routing traffic to it. If the custom application detects that the (desirable) cellular network has become unavailable and there are no desirable Wi-Fi networks available (i.e. there are no desirable networks available at all) the application can re-enable the undesirable network's SSID, thereby allowing the custom application to begin using it.
6 I Page Confidential. External Release only under NDA
V1 - September 2017 Method and process of network gateway configuration to influence client device network selection process
CA2980588A 2017-09-28 2017-09-28 Method and process of network gateway configuration to influence client device network selection process Abandoned CA2980588A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CA2980588A CA2980588A1 (en) 2017-09-28 2017-09-28 Method and process of network gateway configuration to influence client device network selection process

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CA2980588A CA2980588A1 (en) 2017-09-28 2017-09-28 Method and process of network gateway configuration to influence client device network selection process

Publications (1)

Publication Number Publication Date
CA2980588A1 true CA2980588A1 (en) 2019-03-28

Family

ID=65899354

Family Applications (1)

Application Number Title Priority Date Filing Date
CA2980588A Abandoned CA2980588A1 (en) 2017-09-28 2017-09-28 Method and process of network gateway configuration to influence client device network selection process

Country Status (1)

Country Link
CA (1) CA2980588A1 (en)

Similar Documents

Publication Publication Date Title
US11218488B2 (en) Access enforcement at a wireless access point
EP2745471B1 (en) Architecture for virtualized home ip service delivery
KR102000310B1 (en) A METHOD AND A NETWORK ELEMENT FOR TRACKING INTERNET PROTOCOL VERSION 6 (IPv6) ADDRESSES OF DEVICES IN A HOME NETWORK
US20170374021A1 (en) Role based router functionality
US9712383B2 (en) Device abstraction in autonomous wireless local area networks
US9173117B2 (en) Enhancing a mobile backup channel to address a node failure in a wireline network
JP5348094B2 (en) Support device and computer program
KR100901790B1 (en) CONTROL TUNNEL AND DIRECT TUNNEL CONFIGURATION METHOD IN IPv6 SERVICE PROVIDE SYSTEM BASED IPv4 NETWORK
US9762484B2 (en) Role based router functionality
US10419236B1 (en) Mobile wide area network IP translation configuration
US20060198356A1 (en) Method and apparatus for router port configuration
RU2679345C1 (en) Method and device for automatic network interaction of gateway device
JP6637059B2 (en) Control device for gateway of mobile communication system
US9137197B2 (en) IP router and method of allocating IP address
WO2010039907A1 (en) Handoff procedures and intra-network data routing for femtocell networks
JP2017038218A (en) Communication system and setting method
US10505892B2 (en) Method for transmitting at least one IP data packet, related system and computer program product
CA2980588A1 (en) Method and process of network gateway configuration to influence client device network selection process
US9800545B2 (en) Role based router functionality
JP3808471B2 (en) Network and router apparatus and address notification method used therefor
WO2006036093A1 (en) A method and a device for providing access in a short range communication network

Legal Events

Date Code Title Description
FZDE Discontinued

Effective date: 20200831