US11019613B2ActiveUtilityA1

Methods and systems for managing network resources of a vehicle

Assignee: UBER TECHNOLOGIES INCPriority: Apr 12, 2019Filed: Jul 1, 2019Granted: May 25, 2021
Est. expiryApr 12, 2039(~12.7 yrs left)· nominal 20-yr term from priority
Inventors:Steve Ayers
H04W 72/535H04W 72/23H04W 72/02H04L 47/24H04W 4/40H04L 47/20H04W 28/0268G07C 5/008H04L 47/2475H04W 28/16H04W 4/029H04L 45/306H04W 4/024H04L 47/803H04W 72/042H04W 72/1257
47
PatentIndex Score
0
Cited by
6
References
20
Claims

Abstract

The present disclosure is directed to managing network resources of a vehicle. In particular, for each application of a plurality of different and distinct applications executed by a computing system comprising one or more computing devices physically located onboard a vehicle, the computing system can: determine, from amongst a plurality of different and distinct interface identifiers, an interface identifier associated with the application; communicate, based at least in part on the interface identifier associated with the application, data associated with the application and destined for a remotely located computing system; and manage, based at least in part on the interface identifier associated with the application, utilization by the application of network resources interfacing the computing system and the remotely located computing system to communicate the data associated with the application and destined for the remotely located computing system.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A computer-implemented method comprising, for each application of a plurality of different and distinct applications executed by a computing system comprising one or more computing devices physically located onboard a vehicle:
 determining, by the computing system and from amongst a plurality of different and distinct interface identifiers, an interface identifier associated with the application; 
 communicating, by the computing system and based at least in part on the interface identifier associated with the application, data associated with the application and destined for a remotely located computing system; and 
 managing, by the computing system and based at least in part on the interface identifier associated with the application, utilization by the application of network resources interfacing the computing system and the remotely located computing system to communicate the data associated with the application and destined for the remotely located computing system. 
 
     
     
       2. The computer-implemented method of  claim 1 , wherein:
 the method comprises receiving, by the computing system and from a remotely located computing device, data comprising instructions for managing, at least in part, data associated with one or more applications of the plurality of different and distinct applications; and 
 for each application of the one or more applications, managing the utilization by the application of the network resources comprises managing the utilization based at least in part on the data comprising the instructions. 
 
     
     
       3. The computer-implemented method of  claim 1 , wherein:
 the method comprises determining, by the computing system, one or more changes in at least one of a mode, state, or context of the vehicle; and 
 for at least one application of the plurality of different and distinct applications, managing the utilization by the application of the network resources comprises managing the utilization based at least in part on the one or more changes. 
 
     
     
       4. The computer-implemented method of  claim 3 , wherein determining the one or more changes comprises determining one or more of:
 whether the vehicle is in a test mode; 
 whether the vehicle is in a diagnostic mode; 
 whether the vehicle is in a remote-assistance mode; 
 whether the vehicle is in an environment-mapping mode; 
 whether the vehicle is engaged in commissioned travel; or 
 a type of commissioned travel with which the vehicle is engaged. 
 
     
     
       5. The computer-implemented method of  claim 1 , wherein managing the utilization by the application of the network resources comprises managing the utilization at a network layer. 
     
     
       6. The computer-implemented method of  claim 1 , wherein the method comprises, for each application of the plurality of different and distinct applications, performing, by the computing system and based at least in part on the interface identifier associated with the application, network address translation (NAT) for the data associated with the application to route the data associated with the application towards the remotely located computing system. 
     
     
       7. The computer-implemented method of  claim 1 , wherein managing the utilization by the application of the network resources comprises:
 identifying; based at least in part on the interface identifier, a traffic-control policy for the data associated with the application; and 
 managing the utilization by the application of the network resources in accordance with the traffic-control policy for the data associated with the application. 
 
     
     
       8. The computer-implemented method of  claim 7 , wherein:
 identifying the traffic-control policy comprises identifying, within a network-address-based table, one or more quality of service (QoS) parameters for the data associated with the application; and 
 managing the utilization by the application of the network resources in accordance with the traffic-control policy comprises managing the utilization by the application of the network resources in accordance with the one or more QoS parameters. 
 
     
     
       9. The computer-implemented method of  claim 1 , wherein the plurality of different and distinct interface identifiers are associated with a common virtual loopback interface. 
     
     
       10. The computer-implemented method of  claim 9 , wherein managing the utilization by the application of the network resources comprises managing the utilization by the application of the network resources in accordance with a root queue discipline (qdisc) associated with the common virtual loopback interface. 
     
     
       11. The computer-implemented method of  claim 10 , wherein managing the utilization by the application of the network resources in accordance with the root qdisc comprises utilizing a hierarchical token-bucket paradigm to shape the data associated with the application. 
     
     
       12. The computer-implemented method of  claim 10 , wherein managing the utilization by the application of the network resources comprises:
 identifying, based at least in part on the interface identifier associated with the application, a child discipline of the root qdisc associated with the application; and 
 managing the utilization by the application of the network resources in accordance with the child discipline of the root qdisc associated with the application. 
 
     
     
       13. The computer-implemented method of  claim 12 , wherein, for at least one application of the plurality of different and distinct applications, managing the utilization by the application of the network resources comprises borrowing, based at least in part on the child discipline of the root qdisc associated with the application, a portion of the network resources allocated to another of the plurality of different and distinct applications. 
     
     
       14. The computer-implemented method of  claim 1 , wherein:
 the vehicle and the remotely located computing system are associated with a common entity that operates a plurality of vehicles including the vehicle; and 
 communicating the data associated with the application comprises communicating; via one or more networks; the data associated with the application directly from the vehicle to the remotely located computing system. 
 
     
     
       15. The computer-implemented method of  claim 1 , wherein:
 the vehicle is associated with an entity that operates a plurality of vehicles including the vehicle; and 
 the remotely located computing system is associated with a different and distinct entity that provides vehicle services. 
 
     
     
       16. The computer-implemented method of  claim 15 , wherein communicating the data associated with the application comprises communicating, via one or more networks, the data associated with the application directly from the vehicle to the remotely located computing system. 
     
     
       17. The computer-implemented method of  claim 15 , wherein communicating the data associated with the application comprises:
 communicating, via one or more networks, the data associated with the application directly from the vehicle to a different and distinct remotely located computing system, the different and distinct remotely located computing system being associated with the entity that operates the plurality of vehicles including the vehicle; and 
 receiving, by the remotely located computing system and from the different and distinct remotely located computing system, the data associated with the application. 
 
     
     
       18. The computer-implemented method of  claim 15 , wherein communicating the data associated with the application comprises communicating the data associated with the application via a software development kit (SDK) provided to the computing system by the remotely located computing system. 
     
     
       19. A vehicle comprising:
 one or more wireless-communication interfaces; and 
 one or more computing devices comprising one or more processors and a memory storing instructions that when executed by the one or more processors cause the one or more computing devices to perform operations comprising, for each application of a plurality of different and distinct applications executed by the one or more computing devices:
 determining, from amongst a plurality of different and distinct interface identifiers associated with a common virtual loopback interface, an interface identifier associated with the application; and 
 managing, based at least in part on the interface identifier associated with the application, utilization by the application of network resources interfacing the one or more computing devices with a remotely located computing system to communicate data associated with the application towards the remotely located computing system via the one or more wireless-communication interfaces. 
 
 
     
     
       20. One or more non-transitory computer-readable media comprising instructions that when executed by one or more computing devices physically located onboard a vehicle cause the one or more computing devices to perform operations comprising, for each application of a plurality of different and distinct applications executed by the one or more computing devices, determining from amongst the plurality of different and distinct interface identifiers, an interface identifier associated with the application, and managing, at a network layer and based at least in part on the interface identifier associated with the application, utilization by the application of wireless-network resources interfacing the one or more computing devices with a remotely located computing system to communicate data associated with the application towards the remotely located computing system.

Join the waitlist — get patent alerts

Track US11019613B2 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.