IP Library Granted Patent US 11,323,345
Granted Patent B2
US 11,323,345 · App. 16/561,477 · Granted May 3, 2022

Methods and systems for network connectivity

Inventor: Sunny Balwani (Palo Alto, CA)
Assignee: Labrador Diagnostics LLC
H04L43/0811G06F13/00G16H10/20H04L29/08234H04L41/0654H04L43/10H04L45/22H04L45/28H04L47/728H04L47/746H04L67/1023H04W76/18
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,323,345
App. No.
16/561,477
Granted
May 3, 2022
Kind
B2
Abstract

Methods and systems are provided for connecting an electronic device to a network. In some situations, the electronic device connects to a first network provider and pings a first server having a static internet protocol address and a second server having a dedicated uniform resource locator. If the electronic device receives a response from the first and second server, the electronic device maintains its connection to the first network provider. Otherwise, the electronic device connects to a second network provider and pings the first and second servers.

Claims (41)

1. A network device comprising:

a plurality of network connectivity interfaces wherein at least two of said plurality of network connectivity interfaces use different communication protocols;

a programmable processor programmed to perform:

a) a first network connectivity request using one of said network connectivity interfaces to verify end-to-end connectivity to a first server;

b) a second network connectivity request using said one of said network connectivity interfaces to verify end-to-end connectivity to a second server;

c) a determination whether to establish network connectivity using another of said network connectivity interfaces based on whether a response was received from said first server and/or whether a response was received from said second server, wherein said another of said network connectivity interfaces operates using a communication protocol different from a communication protocol of said one of said network connectivity interface;

d) intermittently repeating said steps a, b, and c to determine if failed end-to-end connectivity is caused by an error with connection pathway, the first server, or the second server;

wherein a network connectivity interfaces search is based on determining a location of the network device and loading a set of local rules based on said location of the network device, wherein one of said local rules sets the device to select between either using a global system for mobile communications (GSM) connection or a code division multiple access (CDMA) connection,

wherein network access in one location is optimized using said set of local rules that are different for optimizing network access in another location.

2. The device of claim 1 wherein the programmable processor is configured to continue to sending connectivity requests until all network interfaces have been tested or at least one network pathway is confirmed for connectivity.

3. The device of claim 1 wherein the programmable processor is configured, based on connectivity pathway testing, determining if any connectivity error is caused by the servers or the connectivity pathways, and ranking connectivity pathway.

4. The device of claim 3 wherein the programmable processor is configured to maintain connectivity with a network connectivity interface with a highest ranked connectivity pathway.

5. The device of claim 1 , wherein a data packet used for the connectivity request for said first server comprises a ping packet.

6. The device of claim 1 , wherein a data packet used for the connectivity request for said second server comprises a ping packet.

7. The device of claim 1 , wherein connectivity to a network provider is maintained if the first server responds to the network device in response to said pinging the first server and/or the second server responds to the network device in response to said pinging the second server.

8. The device of claim 1 , further comprising connecting to another network provider if the first server does not respond to the network device in response to said pinging the first server and/or the second server does not respond to the network device in response to said pinging the second server.

9. The device of claim 1 , wherein a network provider is selected from the group consisting of a wireless router, Bluetooth router, wired router, cellular network router, radiofrequency (RF) device and optoelectronic device.

10. The device of claim 1 , further comprising: connecting to an additional network provider; pinging the first server with the aid of the additional network provider; pinging the second server with the aid of the additional network provider; and determining whether to maintain connectivity to the additional network provider based on whether a response was received by the network device from the first server and/or whether a response was received by the network device from the second server.

11. The device of claim 10 , wherein determining whether to maintain connectivity to the additional network provider is based on whether a response was received by the network device from the first server and whether a response was received by the network device from the second server.

12. The device of claim 10 , wherein connecting to said additional network provider comprises terminating connectivity to said network provider.

13. The device of claim 1 , wherein the first and second servers are sent connectivity requests simultaneously.

14. A network device comprising:

a plurality of network connectivity interfaces wherein at least two of said plurality of network connectivity interfaces use different communication protocols;

a programmable processor programmed to perform:

a) a first network connectivity request using one of said network connectivity interfaces to verify end-to-end connectivity to a first server;

b) a second network connectivity request using said one of said network connectivity interfaces to verify end-to-end connectivity to a second server;

c) a determination whether to establish network connectivity using another of said network connectivity interfaces based upon any one network termination condition selected from the group consisting of (a) a response was not received by the network device from said first server and a response was not received by the network device from said second server after said pinging, (b) a network bandwidth of another network provider is higher than a network bandwidth of said network provider, (c) a network cost of another network provider is lower than a network cost of said network provider, (d) network access provided by another network provider is more robust than network access provided by said network provider, (e) connectivity between the network device and another network provider is via wired connection and connectivity between the network device and said network provider is via wireless connection and (f) another network provider is in closer proximity to the network device than said network provider, wherein said network connectivity interface operates differently from said another network connectivity interface; intermittently repeating said step to ping the first server and said determining step to verify network connectivity,

wherein said another of said network connectivity interfaces operates using a communication protocol different from a communication protocol of said one of said network connectivity interface;

d) intermittently repeating said steps a, b, and c to determine if failed end-to-end connectivity is caused by an error with connection pathway, the first server, or the second server;

wherein a network connectivity interfaces search is based on determining a location of the network device and loading a set of local rules based on said location of the network device, wherein one of said local rules sets the device to select between either using a global system for mobile communications (GSM) connection or a code division multiple access (CDMA) connection,

wherein network access in one location is optimized using said set of local rules that are different for optimizing network access in another location.

15. A network device comprising:

a plurality of network connectivity interfaces wherein at least two of said plurality of network connectivity interfaces use different communication protocols;

a programmable processor programmed to perform:

a) a first network connectivity request using one of said network connectivity interfaces to verify end-to-end connectivity to a first server;

b) a second network connectivity request using said one of said network connectivity interfaces to verify end-to-end connectivity to a second server;

c) a determination whether to establish network connectivity using another of said network connectivity interfaces based on whether a response was received from said first server and/or whether a response was received from said second server, wherein said another of said network connectivity interfaces operates using a communication protocol different from a communication protocol of said one of said network connectivity interface;

d) intermittently repeating said steps a, b, and c to determine if failed end-to-end connectivity is caused by an error with connection pathway, the first server, or the second server;

wherein a network connectivity interfaces search is based on determining a location of the network device and loading a set of local rules based on said location of the network device, wherein one of said local rules sets the device to select between either using a global system for mobile communications (GSM) connection or a code division multiple access (CDMA) connection,

wherein network access in one location is optimized using said set of local rules that are different for optimizing network access in another location;

wherein at least one of said network connectivity interface and said another network connectivity interface is a non-cellular, wireless data interface while the other is a cellular data interface.

Assignments (3)
CHANGE OF NAME Recorded Apr 15, 2020
From: THERANOS IP COMPANY, LLC
To: LABRADOR DIAGNOSTICS LLC
Reel/Frame 052410/0432 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 5, 2019
From: BALWANI, SUNNY
To: THERANOS, INC.
Reel/Frame 050280/0936 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 5, 2019
From: THERANOS, INC.
To: THERANOS IP COMPANY, LLC
Reel/Frame 050284/0539 →
Continuity (4)
Continuation 14511861 · Oct 10, 2014
Continuation 13764642 · Feb 11, 2013
Continuation 13244836 · Sep 26, 2011
Related Publication 20200136945A1 · Apr 30, 2020