Language selection

Search

Patent 2980588 Summary

Third-party information liability

Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.

Claims and Abstract availability

Any discrepancies in the text and image of the Claims and Abstract are due to differing posting times. Text of the Claims and Abstract are posted:

  • At the time the application is open to public inspection;
  • At the time of issue of the patent (grant).
(12) Patent Application: (11) CA 2980588
(54) English Title: METHOD AND PROCESS OF NETWORK GATEWAY CONFIGURATION TO INFLUENCE CLIENT DEVICE NETWORK SELECTION PROCESS
(54) French Title: METHODE ET PROCEDE DE CONFIGURATION DE PASSERELLE DE RESEAU POUR INFLUENCER UN PROCESSUS DE SELECTION DE RESEAU DE DISPOSITIFS CLIENTS
Status: Dead
Bibliographic Data
(51) International Patent Classification (IPC):
  • H04L 12/66 (2006.01)
(72) Inventors :
  • BROWN, JEFFREY J. (Canada)
  • NEWELL, NICHOLAS A. (Canada)
  • OBETA, ANTHONY C. (Canada)
  • SHOKAR, AMRITPAL S. (Canada)
(73) Owners :
  • BROWN, JEFFREY J. (Canada)
(71) Applicants :
  • BROWN, JEFFREY J. (Canada)
(74) Agent:
(74) Associate agent:
(45) Issued:
(22) Filed Date: 2017-09-28
(41) Open to Public Inspection: 2019-03-28
Availability of licence: N/A
(25) Language of filing: English

Patent Cooperation Treaty (PCT): No

(30) Application Priority Data: None

Abstracts

Sorry, the abstracts for patent document number 2980588 were not found.

Claims

Note: Claims are shown in the official language in which they were submitted.

Sorry, the claims for patent document number 2980588 were not found.
Text is not available for all patent documents. The current dates of coverage are on the Currency of Information  page

Description

Note: Descriptions are shown in the official language in which they were submitted.


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
CA 2980588 2017-09-28

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
CA 2980588 2017-09-28

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
CA 2980588 2017-09-28

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
CA 2980588 2017-09-28

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
CA 2980588 2017-09-28

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
CA 2980588 2017-09-28

Representative Drawing

Sorry, the representative drawing for patent document number 2980588 was not found.

Administrative Status

For a clearer understanding of the status of the application/patent presented on this page, the site Disclaimer , as well as the definitions for Patent , Administrative Status , Maintenance Fee  and Payment History  should be consulted.

Administrative Status

Title Date
Forecasted Issue Date Unavailable
(22) Filed 2017-09-28
(41) Open to Public Inspection 2019-03-28
Dead Application 2020-08-31

Abandonment History

Abandonment Date Reason Reinstatement Date
2019-06-05 FAILURE TO COMPLETE
2019-09-30 FAILURE TO PAY APPLICATION MAINTENANCE FEE

Payment History

Fee Type Anniversary Year Due Date Amount Paid Paid Date
Application Fee $200.00 2017-09-28
Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
BROWN, JEFFREY J.
Past Owners on Record
None
Past Owners that do not appear in the "Owners on Record" listing will appear in other documentation within the application.
Documents

To view selected files, please enter reCAPTCHA code :



To view images, click a link in the Document Description column. To download the documents, select one or more checkboxes in the first column and then click the "Download Selected in PDF format (Zip Archive)" or the "Download Selected as Single PDF" button.

List of published and non-published patent-specific documents on the CPD .

If you have any difficulty accessing content, you can call the Client Service Centre at 1-866-997-1936 or send them an e-mail at CIPO Client Service Centre.


Document
Description 
Date
(yyyy-mm-dd) 
Number of pages   Size of Image (KB) 
Description 2017-09-28 6 429
Courtesy Letter 2017-10-03 2 76
Cover Page 2019-02-22 1 19
Non-Compliance for Non-PCT Incomplete 2019-03-05 2 66
Abstract 2019-03-27 1 3
Claims 2019-03-27 1 3