Patents by Inventor Austin Donnelly

Austin Donnelly 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: 11232006
    Abstract: A server system comprising storage devices, processing devices and a storage fabric all operating according to a storage fabric protocol. The storage fabric comprises a plurality of individual switches having a modular design from which an overall switch is built, and the individual switches have individual respective configuration settings which determine which processing devices are allocated to use which of the storage devices. The system comprises an API enabling a software control function to configure the overall switch. The API is operable to receive from the control function an overall mapping of the storage devices to the processing devices instead of requiring the individual configuration settings of each of the individual switches to be specified by the control function, the API being configured to convert the overall mapping into the individual configuration settings of the individual switches to produce the overall mapping.
    Type: Grant
    Filed: August 19, 2020
    Date of Patent: January 25, 2022
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Serguei Anatolievitch Legtchenko, Mark Shaw, Austin Donnelly, Hugh Williams, Richard Black, Antony Ian Taylor Rowstron, Aaron Ogus, Douglas Phillips
  • Publication number: 20210096968
    Abstract: A server system comprising storage devices, processing devices and a storage fabric all operating according to a storage fabric protocol. The storage fabric comprises a plurality of individual switches having a modular design from which an overall switch is built, and the individual switches have individual respective configuration settings which determine which processing devices are allocated to use which of the storage devices. The system comprises an API enabling a software control function to configure the overall switch. The API is operable to receive from the control function an overall mapping of the storage devices to the processing devices instead of requiring the individual configuration settings of each of the individual switches to be specified by the control function, the API being configured to convert the overall mapping into the individual configuration settings of the individual switches to produce the overall mapping.
    Type: Application
    Filed: August 19, 2020
    Publication date: April 1, 2021
    Inventors: Serguei Anatolievitch LEGTCHENKO, Mark SHAW, Austin DONNELLY, Hugh WILLIAMS, Richard BLACK, Antony Ian Taylor ROWSTRON, Aaron OGUS, Douglas PHILLIPS
  • Patent number: 10809926
    Abstract: A server system comprising storage devices, processing devices and a storage fabric all operating according to a storage fabric protocol. The storage fabric comprises a plurality of individual switches having a modular design from which an overall switch is built, and the individual switches have individual respective configuration settings which determine which processing devices are allocated to use which of the storage devices. The system comprises an API enabling a software control function to configure the overall switch. The API is operable to receive from the control function an overall mapping of the storage devices to the processing devices instead of requiring the individual configuration settings of each of the individual switches to be specified by the control function, the API being configured to convert the overall mapping into the individual configuration settings of the individual switches to produce the overall mapping.
    Type: Grant
    Filed: February 5, 2018
    Date of Patent: October 20, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Serguei Anatolievitch Legtchenko, Mark Shaw, Austin Donnelly, Hugh Williams, Richard Black, Antony Ian Taylor Rowstron, Aaron Ogus, Douglas Phillips
  • Publication number: 20190245923
    Abstract: A server system comprising processing devices, disks and a storage fabric, all arranged to operate according to a storage fabric protocol in order to communicate between the processing devices and the storage devices over the storage fabric, wherein the storage fabric is settable with a mapping determining which of the processing devices are allocated to use which of the storage devices in providing said services to the client systems. The system comprises a control function arranged to dynamically adapt the mapping in response to either: (i) failure or other downtime of one of the processing devices, storage devices, a component of the storage fabric or a connection in the storage fabric; or (ii) a current demand for the services from the client systems.
    Type: Application
    Filed: February 5, 2018
    Publication date: August 8, 2019
    Inventors: Hugh WILLIAMS, Antony Ian Taylor ROWSTRON, Richard BLACK, Austin DONNELLY, Serguei Anatolievitch LEGTCHENKO, Aaron OGUS, Douglas PHILLIPS
  • Publication number: 20190245922
    Abstract: A server system comprising storage devices, processing devices and a storage fabric all operating according to a storage fabric protocol. The storage fabric comprises a plurality of individual switches having a modular design from which an overall switch is built, and the individual switches have individual respective configuration settings which determine which processing devices are allocated to use which of the storage devices. The system comprises an API enabling a software control function to configure the overall switch. The API is operable to receive from the control function an overall mapping of the storage devices to the processing devices instead of requiring the individual configuration settings of each of the individual switches to be specified by the control function, the API being configured to convert the overall mapping into the individual configuration settings of the individual switches to produce the overall mapping.
    Type: Application
    Filed: February 5, 2018
    Publication date: August 8, 2019
    Inventors: Serguei Anatolievitch LEGTCHENKO, Mark SHAW, Austin DONNELLY, Hugh WILLIAMS, Richard BLACK, Antony Ian Taylor ROWSTRON, Aaron OGUS, Douglas PHILLIPS
  • Patent number: 9906433
    Abstract: An application programming interface (API) supporting server and key based networking is described. In an embodiment, the API receives either a key or a server address from a service running on a server in a direct-connect topology and returns data which identifies suitable next hops for transmission of a packet of data which has a destination of the received server address or of a server address which is encoded within the received key. In another embodiment, the key also encodes information specifying alternative server addresses for use in the event that the original server is unreachable. This information may also be used to define servers for replication of the key. A further embodiment describes a method of queuing packets for transmission against multiple links, where the packet is transmitted on the first available link and at this time is removed from the queues for the other links.
    Type: Grant
    Filed: April 13, 2015
    Date of Patent: February 27, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Gregory O'Shea, Austin Donnelly, Antony Rowstron, Paolo Costa
  • Publication number: 20150222523
    Abstract: An application programming interface (API) supporting server and key based networking is described. In an embodiment, the API receives either a key or a server address from a service running on a server in a direct-connect topology and returns data which identifies suitable next hops for transmission of a packet of data which has a destination of the received server address or of a server address which is encoded within the received key. In another embodiment, the key also encodes information specifying alternative server addresses for use in the event that the original server is unreachable. This information may also be used to define servers for replication of the key. A further embodiment describes a method of queuing packets for transmission against multiple links, where the packet is transmitted on the first available link and at this time is removed from the queues for the other links.
    Type: Application
    Filed: April 13, 2015
    Publication date: August 6, 2015
    Inventors: Gregory O'Shea, Austin Donnelly, Antony Rowstron, Paolo Costa
  • Patent number: 9015345
    Abstract: An application programming interface (API) supporting server and key based networking is described. In an embodiment, the API receives either a key or a server address from a service running on a server in a direct-connect topology and returns data which identifies suitable next hops for transmission of a packet of data which has a destination of the received server address or of a server address which is encoded within the received key. In another embodiment, the key also encodes information specifying alternative server addresses for use in the event that the original server is unreachable. This information may also be used to define servers for replication of the key. A further embodiment describes a method of queuing packets for transmission against multiple links, where the packet is transmitted on the first available link and at this time is removed from the queues for the other links.
    Type: Grant
    Filed: December 15, 2010
    Date of Patent: April 21, 2015
    Assignee: Microsoft Corporation
    Inventors: Gregory O'Shea, Austin Donnelly, Antony Rowstron, Paolo Costa
  • Patent number: 8724512
    Abstract: A system and method for discovering network topology by various switch training and probing methods. Segments are discovered by having computers enter a promiscuous mode and determining from packets sent to a selected computer which computers see which other computers in the network. From the segments, various switch interconnections are determined, by having different computers train switches as to a training address and seeing which computers receive probe packets sent to that training address from another computer. Various training and probing methods are described that locate intermediate segments, deep switches, switch interconnections, and edge and singleton cases. In one implementation, a master computer coordinates the other computers (and devices) in the network to send the training and probing packets, and report on received packets, in order to determine the network topology.
    Type: Grant
    Filed: June 4, 2009
    Date of Patent: May 13, 2014
    Assignee: Microsoft Corporation
    Inventors: Richard Black, Austin Donnelly, Cedric Fournet
  • Patent number: 8499222
    Abstract: Supporting distributed key-based processes is described. In an embodiment, servers at a data center provide a key-based process for carrying out computationally expensive tasks and are connected using point to point connections in a geometric topology such as a torus. In an example, aggregation trees are built on top of the geometric topology of the data center, each aggregation tree being a sequence of servers in the data center that forms a tree structure. In an embodiment packets of data are sent from the leaves of the trees to the root and at each server along the tree the packets are aggregated using a combiner function of the key-based process. In an embodiment, if a server fails, the trees are dynamically recomputed and a recovery phase is triggered to resend any packets lost at the failed server. In some embodiments, packets are scheduled by inspecting the content of the packets.
    Type: Grant
    Filed: December 14, 2010
    Date of Patent: July 30, 2013
    Assignee: Microsoft Corporation
    Inventors: Antony Rowstron, Paolo Costa, Gregory Francis O'Shea, Austin Donnelly
  • Patent number: 8375141
    Abstract: Methods of querying a large number of endsystems are described in which metadata is replicated between endsystems. When a query is injected, an available endsystem receives a message relating to the query which identifies a range of endsystems for which that available endsystem is responsible. The available endsystem then generates completeness data for the range of endsystems based on data stored at the endsystem and this completeness data is transmitted to the sender of the message. The methods may be implemented using device-executable instructions which may be stored on device readable media.
    Type: Grant
    Filed: September 29, 2006
    Date of Patent: February 12, 2013
    Assignee: Microsoft Corporation
    Inventors: Antony Rowstron, Richard Mortier, Austin Donnelly, Dushyanth Narayanan
  • Patent number: 8370672
    Abstract: Methods for reducing the power consumption of distributed storage systems are described. An embodiment describes a storage system which is adapted to reduce its power consumption at times of low load by reducing the number of active versions of the stored data. The data to be stored in the storage system is divided into chunks and in an example, each chunk is replicated on a number of different servers. At times of low load, the system enters a mode of operation in which the number of active replicas is reduced and servers that do not store any active replicas are put into a low power state. When in this mode, writes are written to a versioned store and the data is subsequently copied to servers storing replicas once all the servers have returned to normal power state.
    Type: Grant
    Filed: February 26, 2010
    Date of Patent: February 5, 2013
    Assignee: Microsoft Corporation
    Inventors: Eno Thereska, Austin Donnelly, Dushyanth Naraynanan
  • Patent number: 8352797
    Abstract: Software fault isolation methods using byte-granularity memory protection are described. In an embodiment, untrusted drivers or other extensions to a software system are run in a separate domain from the host portion of the software system, but share the same address space as the host portion. Calls between domains are mediated using an interposition library and access control data is maintained for substantially each byte of relevant virtual address space. Instrumentation added to the untrusted extension at compile-time, before load-time, or at runtime and added by the interposition library enforces the isolation between domains, for example by adding access right checks before any writes or indirect calls and by redirecting function calls to call wrappers in the interposition library. The instrumentation also updates the access control data to grant and revoke access rights on a fine granularity according to the semantics of the operation being invoked.
    Type: Grant
    Filed: December 8, 2009
    Date of Patent: January 8, 2013
    Assignee: Microsoft Corporation
    Inventors: Richard John Black, Paul Barham, Manuel Costa, Marcus Peinado, Jean-Philippe Martin, Periklis Akritidis, Austin Donnelly, Miguel Castro
  • Patent number: 8307071
    Abstract: Location of a communication network subscriber is determined employing confidence metrics such as remote vs. local computer usage, primary user in a multi-user computing environment, likelihood of forgery, and comparable ones. A fine-grained location determination is then made based on the metric results and directory information for the particular subscriber such that services like emergency services can be provided with accurate location information.
    Type: Grant
    Filed: January 15, 2010
    Date of Patent: November 6, 2012
    Assignee: Microsoft Corporation
    Inventors: Austin Donnelly, Bernard Aboba, Roy Kuntz, Gabriel Montenegro, Noor-E-Gagan Singh, Tim Moore
  • Publication number: 20120158998
    Abstract: An application programming interface (API) supporting server and key based networking is described. In an embodiment, the API receives either a key or a server address from a service running on a server in a direct-connect topology and returns data which identifies suitable next hops for transmission of a packet of data which has a destination of the received server address or of a server address which is encoded within the received key. In another embodiment, the key also encodes information specifying alternative server addresses for use in the event that the original server is unreachable. This information may also be used to define servers for replication of the key. A further embodiment describes a method of queuing packets for transmission against multiple links, where the packet is transmitted on the first available link and at this time is removed from the queues for the other links.
    Type: Application
    Filed: December 15, 2010
    Publication date: June 21, 2012
    Applicant: Microsoft Corporation
    Inventors: Gregory O'Shea, Austin Donnelly, Antony Rowstron, Paolo Costa
  • Publication number: 20120151292
    Abstract: Supporting distributed key-based processes is described. In an embodiment, servers at a data center provide a key-based process for carrying out computationally expensive tasks and are connected using point to point connections in a geometric topology such as a torus. In an example, aggregation trees are built on top of the geometric topology of the data center, each aggregation tree being a sequence of servers in the data center that forms a tree structure. In an embodiment packets of data are sent from the leaves of the trees to the root and at each server along the tree the packets are aggregated using a combiner function of the key-based process. In an embodiment, if a server fails, the trees are dynamically recomputed and a recovery phase is triggered to resend any packets lost at the failed server. In some embodiments, packets are scheduled by inspecting the content of the packets.
    Type: Application
    Filed: December 14, 2010
    Publication date: June 14, 2012
    Applicant: Microsoft Corporation
    Inventors: Antony Rowstron, Paolo Costa, Gregory Francis O'Shea, Austin Donnelly
  • Patent number: 8074014
    Abstract: Improved storage systems which use write off-loading are described. When a request to store some data in a particular storage location is received, if the particular storage location is unavailable, the data is stored in an alternative location. In an embodiment, the particular storage location may be unavailable because it is powered down or because it is overloaded. The data stored in the alternative location may be subsequently recovered and written to the particular storage location once it becomes available.
    Type: Grant
    Filed: March 31, 2008
    Date of Patent: December 6, 2011
    Assignee: Microsoft Corporation
    Inventors: Dushyanth Narayanan, Austin Donnelly, Antony Rowstron, Sameh Elnikety, Eno Thereska
  • Publication number: 20110213994
    Abstract: Methods for reducing the power consumption of distributed storage systems are described. An embodiment describes a storage system which is adapted to reduce its power consumption at times of low load by reducing the number of active versions of the stored data. The data to be stored in the storage system is divided into chunks and in an example, each chunk is replicated on a number of different servers. At times of low load, the system enters a mode of operation in which the number of active replicas is reduced and servers that do not store any active replicas are put into a low power state. When in this mode, writes are written to a versioned store and the data is subsequently copied to servers storing replicas once all the servers have returned to normal power state.
    Type: Application
    Filed: February 26, 2010
    Publication date: September 1, 2011
    Applicant: Microsoft Corporation
    Inventors: Eno Thereska, Austin Donnelly, Dushyanth Naraynanan
  • Publication number: 20110179158
    Abstract: Location of a communication network subscriber is determined employing confidence metrics such as remote vs. local computer usage, primary user in a multi-user computing environment, likelihood of forgery, and comparable ones. A fine-grained location determination is then made based on the metric results and directory information for the particular subscriber such that services like emergency services can be provided with accurate location information.
    Type: Application
    Filed: January 15, 2010
    Publication date: July 21, 2011
    Applicant: Microsoft Corporation
    Inventors: Austin Donnelly, Bernard Aboba, Roy Kuntz, Gabriel Montenegro, Noor-E-Gagan Singh, Tim Moore
  • Publication number: 20110138476
    Abstract: Software fault isolation methods using byte-granularity memory protection are described. In an embodiment, untrusted drivers or other extensions to a software system are run in a separate domain from the host portion of the software system, but share the same address space as the host portion. Calls between domains are mediated using an interposition library and access control data is maintained for substantially each byte of relevant virtual address space. Instrumentation added to the untrusted extension at compile-time, before load-time, or at runtime and added by the interposition library enforces the isolation between domains, for example by adding access right checks before any writes or indirect calls and by redirecting function calls to call wrappers in the interposition library. The instrumentation also updates the access control data to grant and revoke access rights on a fine granularity according to the semantics of the operation being invoked.
    Type: Application
    Filed: December 8, 2009
    Publication date: June 9, 2011
    Applicant: Microsoft Corporation
    Inventors: Richard John Black, Paul Barham, Manuel Costa, Marcus Peinado, Jean-Philippe Martin, Periklis Akritidis, Austin Donnelly, Miguel Castro