Patents by Inventor Joel Obstfeld
Joel Obstfeld has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11829127Abstract: According to one or more embodiments of the disclosure, a first autonomous mobile robot (AMR) encounters a second AMR, while navigating a location. The first AMR receives, from the second AMR, a task list of the second AMR. The first AMR determines an adjustment to the task list of the second AMR, based in part on a comparison between the task list of the second AMR and a task list maintained by the first AMR. The first AMR sends, to the second AMR, the adjustment to the task list of the second AMR.Type: GrantFiled: November 25, 2020Date of Patent: November 28, 2023Assignee: Cisco Technology, Inc.Inventors: Joel Obstfeld, Pete Rai, Guillaume Sauvage De Saint Marc
-
Patent number: 11614972Abstract: Techniques are described for distributing network device tasks across virtual machines executing in a computing cloud. A network device includes a network interface to send and receive messages, a routing unit comprising one or more processors configured to execute a version of a network operating system, and a virtual machine agent. The virtual machine agent is configured to identify a virtual machine executing at a computing cloud communicatively coupled to the network device, wherein the identified virtual machine executes an instance of the version of the network operating system, to send, using the at least one network interface and to the virtual machine, a request to perform a task, and to receive, using the at least one network interface and from the virtual machine, a task response that includes a result of performing the task. The routing unit is configured to update the network device based on the result.Type: GrantFiled: July 20, 2018Date of Patent: March 28, 2023Assignee: Juniper Networks, Inc.Inventors: Joel Obstfeld, David Ward, Colby Barth, Mu Lin
-
Publication number: 20220161429Abstract: According to one or more embodiments of the disclosure, a first autonomous mobile robot (AMR) encounters a second AMR, while navigating a location. The first AMR receives, from the second AMR, a task list of the second AMR. The first AMR determines an adjustment to the task list of the second AMR, based in part on a comparison between the task list of the second AMR and a task list maintained by the first AMR. The first AMR sends, to the second AMR, the adjustment to the task list of the second AMR.Type: ApplicationFiled: November 25, 2020Publication date: May 26, 2022Inventors: Joel Obstfeld, Pete Rai, Guillaume Sauvage De Saint Marc
-
Publication number: 20220156682Abstract: According to one or more embodiments of the disclosure, a device obtains container data regarding a plurality of items to be shipped together in a container. The device generates, based on the container data, a damage prediction model that models physical relationships between the plurality of items within the container. The device receives sensor data associated with the container. The device predicts, using the damage prediction model, which of the plurality of items were damaged during transport of the container, based on the sensor data associated with the container.Type: ApplicationFiled: November 18, 2020Publication date: May 19, 2022Inventors: Pete Rai, Joel Obstfeld
-
Publication number: 20180329755Abstract: Techniques are described for distributing network device tasks across virtual machines executing in a computing cloud. A network device includes a network interface to send and receive messages, a routing unit comprising one or more processors configured to execute a version of a network operating system, and a virtual machine agent. The virtual machine agent is configured to identify a virtual machine executing at a computing cloud communicatively coupled to the network device, wherein the identified virtual machine executes an instance of the version of the network operating system, to send, using the at least one network interface and to the virtual machine, a request to perform a task, and to receive, using the at least one network interface and from the virtual machine, a task response that includes a result of performing the task. The routing unit is configured to update the network device based on the result.Type: ApplicationFiled: July 20, 2018Publication date: November 15, 2018Inventors: Joel Obstfeld, David Ward, Colby Barth, Mu Lin
-
Patent number: 10031782Abstract: Techniques are described for distributing network device tasks across virtual machines executing in a computing cloud. A network device includes a network interface to send and receive messages, a routing unit comprising one or more processors configured to execute a version of a network operating system, and a virtual machine agent. The virtual machine agent is configured to identify a virtual machine executing at a computing cloud communicatively coupled to the network device, wherein the identified virtual machine executes an instance of the version of the network operating system, to send, using the at least one network interface and to the virtual machine, a request to perform a task, and to receive, using the at least one network interface and from the virtual machine, a task response that includes a result of performing the task. The routing unit is configured to update the network device based on the result.Type: GrantFiled: June 26, 2012Date of Patent: July 24, 2018Assignee: Juniper Networks, Inc.Inventors: Joel Obstfeld, David Ward, Colby Barth, Mu Lin
-
Patent number: 9918190Abstract: In an embodiment, presenting computer datacenter information comprises a server computer system that is coupled to a plurality of internetworking devices. The plurality of internetworking devices is configured to emit device location information. The server computer system receives the device location information from one or more internetworking devices, where the device location information is based on a particular proximity to a mobile computing device. The server computer system determines a geo-location and proximity of the mobile computing device relative to the one or more internetworking devices. The server computer system then selects device related information for a particular internetworking device, of the one or more internetworking devices, that has closest proximity to the determined geo-location of the mobile computing device.Type: GrantFiled: February 18, 2015Date of Patent: March 13, 2018Assignee: Cisco Technology, Inc.Inventors: Daniel Bourque, Joel Obstfeld, Ed Kern, Anoosh Hosseini
-
Patent number: 9838294Abstract: Presented herein are techniques to receive configuration instructions for elements of a network topology to be simulated and tested. In response to receiving and in accordance with the configuration instructions, a plurality of software images (for a plurality of virtual network elements of the network topology) are configured via an Application Programming Interface (API). The plurality of software images run in a cloud host. In response to receiving and in accordance with the configuration instructions, data is configured via the API, which represents one or more connections between the virtual network elements. A plurality of software images for the plurality of virtual network elements is then executed in accordance with the data representing the connections, for development and testing of the network topology.Type: GrantFiled: September 24, 2015Date of Patent: December 5, 2017Assignee: Cisco Technology, Inc.Inventors: Richard Pruss, John E. McDowall, David John Beazley, Marc Joseph Faggion, Joel Obstfeld
-
Publication number: 20160241996Abstract: In an embodiment, presenting computer datacenter information comprises a server computer system that is coupled to a plurality of internetworking devices. The plurality of internetworking devices is configured to emit device location information. The server computer system receives the device location information from one or more internetworking devices, where the device location information is based on a particular proximity to a mobile computing device. The server computer system determines a geo-location and proximity of the mobile computing device relative to the one or more internetworking devices. The server computer system then selects device related information for a particular internetworking device, of the one or more internetworking devices, that has closest proximity to the determined geo-location of the mobile computing device.Type: ApplicationFiled: February 18, 2015Publication date: August 18, 2016Inventors: Daniel Bourque, Joel Obstfeld, Ed Kern, Anoosh Hosseini
-
Patent number: 9391869Abstract: A system includes a storage device to store information associated with virtual nodes that correspond to network nodes. The system also includes a server to install a virtual node that corresponds to one of the network nodes, based on the information associated with the virtual node, where installing the virtual node includes creating a logical interface via which traffic is to be sent to, or received from, other virtual nodes; start the virtual node to create an operating virtual node based on a copy of an operating system that is run on the network node, where starting the virtual node causes the operational virtual node to execute the copy of the operating system; and cause the operating virtual node to communicate with a virtual network that includes the virtual nodes, where causing the operating virtual node to communicate with the virtual network enables the operating virtual node to receive or forward traffic associated with the virtual network.Type: GrantFiled: February 25, 2014Date of Patent: July 12, 2016Assignee: Juniper Networks, Inc.Inventors: Daniel Kharitonov, Colin Constable, Geoffrey Huang, Joel Obstfeld
-
Publication number: 20160014012Abstract: Presented herein are techniques to receive configuration instructions for elements of a network topology to be simulated and tested. In response to receiving and in accordance with the configuration instructions, a plurality of software images (for a plurality of virtual network elements of the network topology) are configured via an Application Programming Interface (API). The plurality of software images run in a cloud host. In response to receiving and in accordance with the configuration instructions, data is configured via the API, which represents one or more connections between the virtual network elements. A plurality of software images for the plurality of virtual network elements is then executed in accordance with the data representing the connections, for development and testing of the network topology.Type: ApplicationFiled: September 24, 2015Publication date: January 14, 2016Inventors: Richard Pruss, John E. McDowall, David John Beazley, Marc Joseph Faggion, Joel Obstfeld
-
Patent number: 9183121Abstract: Presented herein are techniques to receive configuration instructions for elements of a network topology to be simulated and tested. In response to receiving and in accordance with the configuration instructions, a plurality of software images (for a plurality of virtual network elements of the network topology) are configured via an Application Programming Interface (API). The plurality of software images run in a cloud host. In response to receiving and in accordance with the configuration instructions, data is configured via the API, which represents one or more connections between the virtual network elements. A plurality of software images for the plurality of virtual network elements is then executed in accordance with the data representing the connections, for development and testing of the network topology.Type: GrantFiled: July 19, 2013Date of Patent: November 10, 2015Assignee: Cisco Technology, Inc.Inventors: Richard Pruss, John E. McDowall, David John Beazley, Marc Joseph Faggion, Joel Obstfeld
-
Publication number: 20150026667Abstract: Presented herein are techniques to receive configuration instructions for elements of a network topology to be simulated and tested. In response to receiving and in accordance with the configuration instructions, a plurality of software images (for a plurality of virtual network elements of the network topology) are configured via an Application Programming Interface (API). The plurality of software images run in a cloud host. In response to receiving and in accordance with the configuration instructions, data is configured via the API, which represents one or more connections between the virtual network elements. A plurality of software images for the plurality of virtual network elements is then executed in accordance with the data representing the connections, for development and testing of the network topology.Type: ApplicationFiled: July 19, 2013Publication date: January 22, 2015Inventors: Richard Pruss, John E. McDowall, David John Beazley, Marc Joseph Faggion, Joel Obstfeld
-
Patent number: 8806266Abstract: Techniques are described for providing high availability for a network device, e.g., a router, using full memory replication between a primary virtual machine (VM) and a standby VM running on the network device. In one example, the techniques provide hot-standby high availability for a router by initializing a primary VM and a standby VM on the router at the same time. In another example, the techniques provide high availability for the router by initializing a standby VM on the router upon detecting a failure of the primary VM. In both examples, the primary VM controls the routing functionality and periodically stores a full memory state. Upon a failure of the primary VM, a hypervisor may perform a full memory replication between the primary VM and the standby VM. The standby VM may then take control of the routing functionality at the last stored state of the memory.Type: GrantFiled: September 28, 2011Date of Patent: August 12, 2014Assignee: Juniper Networks, Inc.Inventors: Hui Qu, Mu Lin, Shine-Chu Wang, Heng-Hui Debbie Chu, Leyi Zhang, Zi Zhou, Joel Obstfeld
-
Patent number: 8799422Abstract: Techniques described in this disclosure relate to configuration updates, such as performing an in-service software upgrade on a device, using virtual machines. In a routing device, a routing engine utilizes a virtual machine executing on a hypervisor to provide control plane functions. In one example, an in-service software upgrade may be performed between a first virtual machine and a second virtual machine without a managing virtual machine. More specifically, a first virtual machine in the control plane of the router may control the upgrade process, including requesting initialization of the second virtual machine, installing a new software system on the second virtual machine, and replicating state data from the first virtual machine to the second virtual machine. In this example, the first virtual machine may operate as a master virtual machine and the second virtual machine may operate as a slave virtual machine that synchronizes with the master virtual machine.Type: GrantFiled: September 28, 2011Date of Patent: August 5, 2014Assignee: Juniper Networks, Inc.Inventors: Hui Qu, Joel Obstfeld, David Ward, Mu Lin, Anjali Kulkarni
-
Patent number: 8787400Abstract: Routers balance network traffic among multiple paths through a network according to an amount of bandwidth that can be sent on an outgoing interface computed for each of the paths. For example, a router receives a link bandwidth for network links that are positioned between the first router and a second router of the network, and selects a plurality of forwarding paths from the first router to the second router. Upon determining that one of the network links is shared by multiple of the plurality of forwarding paths, the router computes a path bandwidth for each of the plurality of outgoing interfaces so as to account for splitting of link bandwidth of the shared network link across the multiple forwarding paths that share the network link. The router assigns packet flows to the forwarding paths based at least on the computed amount of bandwidth for each of the outgoing interfaces.Type: GrantFiled: June 28, 2012Date of Patent: July 22, 2014Assignee: Juniper Networks, Inc.Inventors: Colby Barth, Kireeti Kompella, David Ward, Joel Obstfeld, Hannes Gredler, John E. Drake
-
Publication number: 20140177471Abstract: A system includes a storage device to store information associated with virtual nodes that correspond to network nodes. The system also includes a server to install a virtual node that corresponds to one of the network nodes, based on the information associated with the virtual node, where installing the virtual node includes creating a logical interface via which traffic is to be sent to, or received from, other virtual nodes; start the virtual node to create an operating virtual node based on a copy of an operating system that is run on the network node, where starting the virtual node causes the operational virtual node to execute the copy of the operating system; and cause the operating virtual node to communicate with a virtual network that includes the virtual nodes, where causing the operating virtual node to communicate with the virtual network enables the operating virtual node to receive or forward traffic associated with the virtual network.Type: ApplicationFiled: February 25, 2014Publication date: June 26, 2014Applicant: Juniper Networks, Inc.Inventors: Daniel KHARITONOV, Colin Constable, Geoffrey Huang, Joel Obstfeld
-
Patent number: 8671176Abstract: A system includes a storage device to store information associated with virtual nodes that correspond to network nodes. The system also includes a server to install a virtual node that corresponds to one of the network nodes, based on the information associated with the virtual node, where installing the virtual node includes creating a logical interface for sending traffic to, or receiving traffic from, other virtual nodes; start the virtual node to create an operating virtual node based on a copy of an operating system that runs on the network node, where starting the virtual node causes the operational virtual node to execute the copy of the operating system; and cause the operating virtual node to communicate with a virtual network, that includes the other virtual nodes, to allow the operating virtual node to receive or forward traffic associated with the virtual network.Type: GrantFiled: September 29, 2011Date of Patent: March 11, 2014Assignee: Juniper Networks, Inc.Inventors: Daniel Kharitonov, Colin Constable, Geoffrey Huang, Joel Obstfeld
-
Publication number: 20130346470Abstract: Techniques are described for distributing network device tasks across virtual machines executing in a computing cloud. A network device includes a network interface to send and receive messages, a routing unit comprising one or more processors configured to execute a version of a network operating system, and a virtual machine agent. The virtual machine agent is configured to identify a virtual machine executing at a computing cloud communicatively coupled to the network device, wherein the identified virtual machine executes an instance of the version of the network operating system, to send, using the at least one network interface and to the virtual machine, a request to perform a task, and to receive, using the at least one network interface and from the virtual machine, a task response that includes a result of performing the task. The routing unit is configured to update the network device based on the result.Type: ApplicationFiled: June 26, 2012Publication date: December 26, 2013Applicant: JUNIPER NETWORKS, INC.Inventors: Joel Obstfeld, David Ward, Colby Barth, Mu Lin