Patents by Inventor Daniel Firestone

Daniel Firestone 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: 11593138
    Abstract: A physical server with an offload card including a SoC (system-on-chip) and a FPGA (field programmable gate array) is disclosed. According to one set of embodiments, the SoC can be configured to offload one or more hypervisor functions from a CPU complex of the server that are suited for execution in software, and the FPGA can be configured to offload one or more hypervisor functions from the CPU complex that are suited for execution in hardware.
    Type: Grant
    Filed: March 3, 2020
    Date of Patent: February 28, 2023
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Derek Chiou, Andrew Putnam, Daniel Firestone, Jack Lavier
  • Publication number: 20230042897
    Abstract: Systems and methods are described for treating distal radius fractures using a plating system. In an aspect, a distal radius plating system includes a volar plate body for interfacing with a volar side of a distal portion of a radius bone. The volar plate body has a volar head portion extending from the volar plate body and terminating at a distal edge, the volar head portion including a first set of apertures to receive fixation fasteners therethrough to fix to the radius bone. The distal radius plating system also includes a radial longitudinal portion extending from a radial edge of the volar plate body to interface with the radial styloid of the radius bone while the volar plate body is positioned on the volar side of the distal portion of the radius bone.
    Type: Application
    Filed: August 17, 2022
    Publication date: February 9, 2023
    Inventor: Daniel Firestone
  • Patent number: 11446067
    Abstract: Systems and methods are described for treating distal radius fractures using a plating system. In an aspect, a distal radius plating system includes a volar plate body for interfacing with a volar side of a distal portion of a radius bone. The volar plate body has a volar head portion extending from the volar plate body and terminating at a distal edge, the volar head portion including a first set of apertures to receive fixation fasteners therethrough to fix to the radius bone. The distal radius plating system also includes a radial longitudinal portion extending from a radial edge of the volar plate body to interface with the radial styloid of the radius bone while the volar plate body is positioned on the volar side of the distal portion of the radius bone.
    Type: Grant
    Filed: March 1, 2019
    Date of Patent: September 20, 2022
    Assignee: The Board of Regents of The University of Nebraska
    Inventor: Daniel Firestone
  • Patent number: 11218537
    Abstract: Techniques for facilitating load balancing in distributed computing systems are disclosed herein. In one embodiment, a method includes receiving, at a destination server, a request packet from a load balancer via the computer network requesting a remote direct memory access (“RDMA”) connection between an originating server and one or more other servers selectable by the load balancer. The method can also include configuring, at the destination server, a rule for processing additional packets transmittable to the originating server via the RDMA connection based on the received reply packet. The rule is configured to encapsulate an outgoing packet transmittable to the originating server with an outer header having a destination field containing a network address of the originating server and a source field containing another network address of the destination server.
    Type: Grant
    Filed: May 12, 2020
    Date of Patent: January 4, 2022
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Rohan Gandhi, Shachar Raindel, Daniel Firestone, Jitendra Padhye, Lihua Yuan
  • Patent number: 11063857
    Abstract: Techniques are described herein that are capable of monitoring connectivity and latency of network links in virtual networks. For instance, a ping agent injects first ping packets into network traffic on behalf of hosts in the virtual network. The ping agent monitors incoming packets to identify first ping response packets, which are in response to the first ping packets, among the incoming packets. A ping responder rule that is included in inbound packet filter rules for a port in a virtual switch intercepts second ping packets in the network traffic. The ping responder rule converts the second ping packets into second ping response packets and injects the second ping response packets into outbound packet filter rules to be transferred to sources from which the second ping packets are received.
    Type: Grant
    Filed: November 21, 2018
    Date of Patent: July 13, 2021
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Rishabh Tewari, Daniel Firestone, Harish Kumar Chandrappa, Anitha Adusumilli, David Michael Brumley, Deepak Bansal, Albert Gordon Greenberg, Parag Sharma, Arjun Roy
  • Publication number: 20210126966
    Abstract: Techniques for facilitating load balancing in distributed computing systems are disclosed herein. In one embodiment, a method includes receiving, at a destination server, a request packet from a load balancer via the computer network requesting a remote direct memory access (“RDMA”) connection between an originating server and one or more other servers selectable by the load balancer. The method can also include configuring, at the destination server, a rule for processing additional packets transmittable to the originating server via the RDMA connection based on the received reply packet. The rule is configured to encapsulate an outgoing packet transmittable to the originating server with an outer header having a destination field containing a network address of the originating server and a source field containing another network address of the destination server.
    Type: Application
    Filed: May 12, 2020
    Publication date: April 29, 2021
    Inventors: Rohan Gandhi, Shachar Raindel, Daniel Firestone, Jitendra Padhye, Lihua Yuan
  • Patent number: 10949379
    Abstract: Distributed computing systems, devices, and associated methods of packet routing are disclosed herein. In one embodiment, a method includes receiving, from a computing network, a packet at a packet processor of a server. The method also includes matching the received packet with a flow in a flow table contained in the packet processor and determining whether the action indicates that the received packet is to be forwarded to a NIC buffer in the outbound processing path of the packet processor instead of the NIC. The method further includes in response to determining that the action indicates that the received packet is to be forwarded to the NIC buffer, forwarding the received packet to the NIC buffer and processing the packet in the NIC buffer to forward the packet to the computer network without exposing the packet to the main processor.
    Type: Grant
    Filed: February 27, 2020
    Date of Patent: March 16, 2021
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Sambhrama Mundkur, Fengfen Liu, Norman Lam, Andrew Putnam, Somesh Chaturmohta, Daniel Firestone, Alec Kochevar-Cureton
  • Publication number: 20210000516
    Abstract: Systems and methods are described for treating distal radius fractures using a plating system. In an aspect, a distal radius plating system includes a volar plate body for interfacing with a volar side of a distal portion of a radius bone. The volar plate body has a volar head portion extending from the volar plate body and terminating at a distal edge, the volar head portion including a first set of apertures to receive fixation fasteners therethrough to fix to the radius bone. The distal radius plating system also includes a radial longitudinal portion extending from a radial edge of the volar plate body to interface with the radial styloid of the radius bone while the volar plate body is positioned on the volar side of the distal portion of the radius bone.
    Type: Application
    Filed: March 1, 2019
    Publication date: January 7, 2021
    Inventor: Daniel Firestone
  • Patent number: 10860358
    Abstract: Methods and devices for determining settings for a virtual machine may include partitioning a physical network into a plurality of traffic classes. The methods and devices may include determining at least one virtual enhanced transmission selection (ETS) setting for one or more virtual machines, wherein the virtual ETS setting includes at least one virtual traffic class that corresponds to one of the plurality of traffic classes. The methods and devices may include transmitting a notification to the one or more virtual machines identifying the virtual ETS setting.
    Type: Grant
    Filed: September 21, 2017
    Date of Patent: December 8, 2020
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Khoa Anh To, Omar Cardona, Daniel Firestone, Alireza Dabagh
  • Publication number: 20200371828
    Abstract: A physical server with an offload card including a SoC (system-on-chip) and a FPGA (field programmable gate array) is disclosed. According to one set of embodiments, the SoC can be configured to offload one or more hypervisor functions from a CPU complex of the server that are suited for execution in software, and the FPGA can be configured to offload one or more hypervisor functions from the CPU complex that are suited for execution in hardware.
    Type: Application
    Filed: March 3, 2020
    Publication date: November 26, 2020
    Inventors: Derek CHIOU, Andrew PUTNAM, Daniel FIRESTONE, Jack LAVIER
  • Patent number: 10789199
    Abstract: Distributed computing systems, devices, and associated methods of packet routing are disclosed herein. In one embodiment, a computing device includes a field programmable gate array (“FPGA”) that includes an inbound processing path and outbound processing path in opposite processing directions. The inbound processing path can forward a packet received from the computer network to a buffer on the FPGA instead of the NIC. The outbound processing path includes an outbound multiplexer having a rate limiter circuit that only forwards the received packet from the buffer back to the computer network when a virtual port corresponding to the packet has sufficient transmission allowance. The outbound multiplexer can also periodically increment the transmission allowance based on a target bandwidth for the virtual port.
    Type: Grant
    Filed: February 28, 2018
    Date of Patent: September 29, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Sambhrama Mundkur, Fengfen Liu, Norman Lam, Andrew Putnam, Somesh Chaturmohta, Daniel Firestone
  • Publication number: 20200265005
    Abstract: Distributed computing systems, devices, and associated methods of packet routing are disclosed herein. In one embodiment, a method includes receiving, from a computing network, a packet at a packet processor of a server. The method also includes matching the received packet with a flow in a flow table contained in the packet processor and determining whether the action indicates that the received packet is to be forwarded to a NIC buffer in the outbound processing path of the packet processor instead of the NIC. The method further includes in response to determining that the action indicates that the received packet is to be forwarded to the NIC buffer, forwarding the received packet to the NIC buffer and processing the packet in the NIC buffer to forward the packet to the computer network without exposing the packet to the main processor.
    Type: Application
    Filed: February 27, 2020
    Publication date: August 20, 2020
    Inventors: Sambhrama Mundkur, Fengfen Liu, Norman Lam, Andrew Putnam, Somesh Chaturmohta, Daniel Firestone, Alec Kochevar-Cureton
  • Patent number: 10715585
    Abstract: Computing systems, devices, and associated methods of operation of processing packets in a distributed computing system are disclosed herein. In one embodiment, a method includes receiving a packet having a header with multiple header fields and a payload and parsing one or more of the multiple header fields of the received packet. The method also includes matching the received packet with an rule object from each of multiple layer objects individually containing multiple rule objects based on the parsed one or more of the multiple header fields. The rule object has one or more conditions matching the one or more parsed header fields of the packet and a corresponding flow action. The method further includes generating a composite action by combining the flow actions individually corresponding to one of the matched rule objects from one of multiple layer objects and applying the generated composite action to the packet.
    Type: Grant
    Filed: June 30, 2017
    Date of Patent: July 14, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventor: Daniel Firestone
  • Publication number: 20200159556
    Abstract: Techniques are disclosed for communicating data in a virtualized environment comprising virtual machines executing on one or more computing devices. An underlying physical destination address of a virtual machine executing on a virtual network is changed from a first physical address to a second physical address. A traffic forwarder function is executed on a virtual switch within the virtual network. The traffic forwarder function is executed during a time threshold determined based on a reprogramming time for network devices in the virtualized environment to update the underlying physical destination address. A data packet addressed to the first physical address is by the traffic forwarder function on a network external to the virtual network. A destination address of the data packet is updated from the first physical address to the second physical address. The data packet is forwarded to the updated destination address.
    Type: Application
    Filed: November 21, 2018
    Publication date: May 21, 2020
    Inventors: Harish Kumar CHANDRAPPA, Vishal TANEJA, Deven JAGASIA, Milan DASGUPTA, Xinyan ZAN, Deepak BANSAL, Daniel FIRESTONE, Michal Czeslaw ZYGMUNT, Rishabh TEWARI
  • Patent number: 10652320
    Abstract: Techniques for facilitating load balancing in distributed computing systems are disclosed herein. In one embodiment, a method includes receiving, at a destination server, a request packet from a load balancer via the computer network requesting a remote direct memory access (“RDMA”) connection between an originating server and one or more other servers selectable by the load balancer. The method can also include configuring, at the destination server, a rule for processing additional packets transmittable to the originating server via the RDMA connection based on the received reply packet. The rule is configured to encapsulate an outgoing packet transmittable to the originating server with an outer header having a destination field containing a network address of the originating server and a source field containing another network address of the destination server.
    Type: Grant
    Filed: February 21, 2017
    Date of Patent: May 12, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Rohan Gandhi, Shachar Raindel, Daniel Firestone, Jitendra Padhye, Lihua Yuan
  • Patent number: 10630601
    Abstract: Micro-schedulers control bandwidth allocation for clients, each client subscribing to a respective predefined portion of bandwidth of an outgoing communication link. A macro-scheduler controls the micro-schedulers, by allocating the respective subscribed portion of bandwidth associated with each respective client that is active, by a predefined first deadline, with residual bandwidth that is unused by the respective clients being shared proportionately among respective active clients by a predefined second deadline, while minimizing coordination among micro-schedulers by the macro-scheduler periodically adjusting respective bandwidth allocations to each micro-scheduler.
    Type: Grant
    Filed: September 6, 2018
    Date of Patent: April 21, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Khoa To, Jitendra Padhye, George Varghese, Daniel Firestone
  • Patent number: 10614028
    Abstract: Distributed computing systems, devices, and associated methods of packet routing are disclosed herein. In one embodiment, a method includes receiving, from a computing network, a packet at a packet processor of a server. The method also includes matching the received packet with a flow in a flow table contained in the packet processor and determining whether the action indicates that the received packet is to be forwarded to a NIC buffer in the outbound processing path of the packet processor instead of the NIC. The method further includes in response to determining that the action indicates that the received packet is to be forwarded to the NIC buffer, forwarding the received packet to the NIC buffer and processing the packet in the NIC buffer to forward the packet to the computer network without exposing the packet to the main processor.
    Type: Grant
    Filed: November 28, 2017
    Date of Patent: April 7, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Sambhrama Mundkur, Fengfen Liu, Norman Lam, Andrew Putnam, Somesh Chaturmohta, Daniel Firestone
  • Patent number: 10516728
    Abstract: Computing systems, devices, and associated methods of operation of filtering packets at virtual switches implemented at hosts in a distributed computing system are disclosed herein. In one embodiment, a method includes receiving, at the virtual switch, a packet having a header and a payload and processing, at the virtual switch, the received packet based on multiple match action tables arranged in a hierarchy in which first and second layers individually contain one or more match action tables that individually contain one or more entries each containing a condition and a corresponding processing action.
    Type: Grant
    Filed: June 30, 2017
    Date of Patent: December 24, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventor: Daniel Firestone
  • Publication number: 20190363965
    Abstract: Techniques are described herein that are capable of monitoring connectivity and latency of network links in virtual networks. For instance, a ping agent injects first ping packets into network traffic on behalf of hosts in the virtual network. The ping agent monitors incoming packets to identify first ping response packets, which are in response to the first ping packets, among the incoming packets. A ping responder rule that is included in inbound packet filter rules for a port in a virtual switch intercepts second ping packets in the network traffic. The ping responder rule converts the second ping packets into second ping response packets and injects the second ping response packets into outbound packet filter rules to be transferred to sources from which the second ping packets are received.
    Type: Application
    Filed: November 21, 2018
    Publication date: November 28, 2019
    Inventors: Rishabh Tewari, Daniel Firestone, Harish Kumar Chandrappa, Anitha Adusumilli, David Michael Brumley, Deepak Bansal, Albert Gordon Greenberg, Parag Sharma, Arjun Roy
  • Patent number: D892330
    Type: Grant
    Filed: March 1, 2019
    Date of Patent: August 4, 2020
    Assignee: The Board of Regents of the University of Nebraska
    Inventor: Daniel Firestone