Patents by Inventor Henry L. Sanders

Henry L. Sanders 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: 8359391
    Abstract: Various embodiments of the invention are directed to closely integrating functionality between an internet server and a WebDAV tool. Areas of specific focus in this document include delegation of duties between the internet server and the WebDAV tool, efficient management of a resource's content-type, support for segregation of a namespace into separate virtual roots, and determinations of whether to invoke certain processing extensions to handle requests for a given HTTP verb.
    Type: Grant
    Filed: January 20, 2012
    Date of Patent: January 22, 2013
    Assignee: Microsoft Corporation
    Inventors: Brian J. Deen, Henry L. Sanders, Joel M. Soderberg, Van C. Van
  • Publication number: 20120124215
    Abstract: Various embodiments of the invention are directed to closely integrating functionality between an internet server and a WebDAV tool. Areas of specific focus in this document include delegation of duties between the internet server and the WebDAV tool, efficient management of a resource's content-type, support for segregation of a namespace into separate virtual roots, and determinations of whether to invoke certain processing extensions to handle requests for a given HTTP verb.
    Type: Application
    Filed: January 20, 2012
    Publication date: May 17, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Brian J. Deen, Joel M. Soderberg, Van C. Van, Henry L. Sanders
  • Patent number: 8166538
    Abstract: A unified architecture for enabling remote access to a network is provided. The network may comprise, as examples, a virtual private network (VPN) and/or a peer-to-peer network. In one embodiment, the architecture includes components installed on a client device/node and a gateway/supernode. Components implemented on the client device may facilitate access in a manner similar to that of a traditional VPN, while components on the gateway may facilitate access in a manner similar to an application proxy. Communication between the client device and gateway may occur, as an example, via a Secure Sockets Layer (SSL) communication protocol.
    Type: Grant
    Filed: July 8, 2005
    Date of Patent: April 24, 2012
    Assignee: Microsoft Corporation
    Inventors: Abolade Gbadegesin, Arvind M. Murching, David G. Thaler, Henry L. Sanders, Narendra C. Gidwani, Paul G. Mayfield
  • Patent number: 8103720
    Abstract: Various embodiments of the invention are directed to closely integrating functionality between an internet server and a WebDAV tool. Areas of specific focus in this document include delegation of duties between the internet server and the WebDAV tool, efficient management of a resource's content-type, support for segregation of a namespace into separate virtual roots, and determinations of whether to invoke certain processing extensions to handle requests for a given HTTP verb.
    Type: Grant
    Filed: March 29, 2010
    Date of Patent: January 24, 2012
    Assignee: Microsoft Corporation
    Inventors: Brian J. Deen, Henry L. Sanders, Joel M. Soderberg, Van C. Van
  • Publication number: 20100250666
    Abstract: Various embodiments of the invention are directed to closely integrating functionality between an internet server and a WebDAV tool. Areas of specific focus in this document include delegation of duties between the internet server and the WebDAV tool, efficient management of a resource's content-type, support for segregation of a namespace into separate virtual roots, and determinations of whether to invoke certain processing extensions to handle requests for a given HTTP verb.
    Type: Application
    Filed: March 29, 2010
    Publication date: September 30, 2010
    Applicant: Microsoft Corporation
    Inventors: Brian J. Deen, Joel M. Soderberg, Van C. Van, Henry L. Sanders
  • Publication number: 20100228873
    Abstract: A system and method for facilitating communications over a protocol is provided. The system includes a class factory that holds identifiers associated with determining which, if any, registered protocol object creator should be employed to create a protocol object. The protocol object implements an abstract network protocol base class. The protocol object is employed to abstract details of communicating over a protocol and to provide a byte stream interface to communications occurring over the protocol, while removing protocol specific code from an application program. The method includes creating an instance of a protocol object from a source of registered protocol handlers based on a request to communicate over a protocol and using a base class API to communicate over the protocol through the protocol object.
    Type: Application
    Filed: May 19, 2010
    Publication date: September 9, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Lance E. Olson, Henrik Frystyk Nielsen, Henry L. Sanders, Richard L. Firth
  • Patent number: 7782759
    Abstract: Creating different congestion control modules (CCMs) that can be plugged into a network communications stack (e.g., a TCP/IP stack). Software abstractions defining transport control events, congestion control algorithms and other information may be exposed by an application programming interface, e.g., of an operating system, and these abstractions may be used to define a CCM. The network communications stack may be configured to select one of multiple available CCMs to control congestion for a given connection. This selection may be based on any of a variety of factors including, but not limited to: network environment; connection path characteristics; connection link characteristics; a value of a socket parameter of an application; other factors; and any suitable combination of the foregoing. Thus, CCMs may be selected and implemented on a per-connection basis.
    Type: Grant
    Filed: August 21, 2006
    Date of Patent: August 24, 2010
    Assignee: Microsoft Corporation
    Inventors: Murari Sridharan, Sanjay N. Kaniyar, Henry L. Sanders, Abolade Gbadegesin
  • Patent number: 7784096
    Abstract: Disclosed is a method for slowing down the spread of viruses by limiting the number of Transmission Control Protocol (“TCP”) connection attempts to arbitrary Internet Protocol (“IP”) addresses that can be in progress at any given time—a common method employed by viruses to spread to other hosts from an infected host. This is achieved by setting a small limit on the number of connection attempt requests that can be in progress at any given time and can be implemented regardless of whether anti-virus software is installed on the system.
    Type: Grant
    Filed: November 15, 2004
    Date of Patent: August 24, 2010
    Assignee: Microsoft Corporation
    Inventors: Sanjay N. Kaniyar, Christian Huitema, Henry L. Sanders
  • Patent number: 7730499
    Abstract: A system and method for facilitating communications over a protocol is provided. The system includes a class factory that holds identifiers associated with determining which, if any, registered protocol object creator should be employed to create a protocol object. The protocol object implements an abstract network protocol base class. The protocol object is employed to abstract details of communicating over a protocol and to provide a byte stream interface to communications occurring over the protocol, while removing protocol specific code from an application program. The method includes creating an instance of a protocol object from a source of registered protocol handlers based on a request to communicate over a protocol and using a base class API to communicate over the protocol through the protocol object.
    Type: Grant
    Filed: October 21, 2004
    Date of Patent: June 1, 2010
    Assignee: Microsoft Corporation
    Inventors: Lance E Olson, Henrik Frystyk Nielsen, Henry L Sanders, Richard L Firth
  • Patent number: 7689564
    Abstract: Various embodiments of the invention are directed to closely integrating functionality between an internet server and a WebDAV tool. Areas of specific focus in this document include delegation of duties between the internet server and the WebDAV tool, efficient management of a resource's content-type, support for segregation of a namespace into separate virtual roots, and determinations of whether to invoke certain processing extensions to handle requests for a given HTTP verb.
    Type: Grant
    Filed: September 30, 2004
    Date of Patent: March 30, 2010
    Assignee: Microsoft Corporation
    Inventors: Brian J. Deen, Joel M. Soderberg, Van C. Van, Henry L. Sanders
  • Patent number: 7594230
    Abstract: An improved web server design includes a kernel-based listener service that is configured by a user-mode based administrative process. When a web request is received by the listener service it is placed in a queue associated with an application pool having one or more user-mode web applications configured to process received web requests. The web applications are selectively started and stopped by the administrative process.
    Type: Grant
    Filed: February 28, 2003
    Date of Patent: September 22, 2009
    Assignee: Microsoft Corporation
    Inventors: Eric D. Deily, Douglas C. Hebenthal, Charles K. Moore, David R. Treadwell, III, Henry L. Sanders, II
  • Patent number: 7581231
    Abstract: An application program interface (API) provides a set of functions for application developers who build Web applications on Microsoft Corporation's .NET™ platform.
    Type: Grant
    Filed: February 28, 2002
    Date of Patent: August 25, 2009
    Assignee: Microsoft Corporation
    Inventors: Adam W. Smith, Anthony J. Moore, Anders Hejlsberg, Brian A. LaMacchia, Blaine J. Dockter, Brian M. Grunkemeyer, Brian K. Pepin, Caleb L. Doise, Christopher W. Brumme, Chad W. Royal, Christopher L. Anderson, Corina E. Feuerstein, Craig T. Sinclair, Daniel Dedu-Constantin, Daniel Takacs, David S. Ebbo, David S. Mortenson, Erik B. Christensen, Erik B. Olson, Fabio A. Yeon, Giovanni M. Della-Libera, Gopala Krishna R. Kakivaya, Gregory D. Fee, Hany E. Ramadan, Jayanth V. Rajan, Jeffrey M. Cooperstein, Jonathan C. Hawkins, James H. Hogg, Joe D. Long, John I. McConnell, Jesus Ruiz-Scougall, James S. Miller, Julie D. Bennett, Jun Fang, Krzysztof J. Cwalina, Keith W. Ballinger, Lance E. Olson, Loren M. Kohnfelder, Luca Bolognese, Manu Vasandani, Mark T. Anders, Mark P. Ashton, Mark A. Boulter, Mark W. Fussell, Michael M. Magruder, Manish S. Prabhu, Neetu Rajpal, Nikhil Kothari, Nithyalakshmi Sampathkumar, Nicholas M. Kramer, Omri Gazitt, Radu Rares Palanca, Raja Krishnaswamy, Robert M. Howard, Ramasamy Krishnaswamy, Shawn P. Burke, Scott D. Guthrie, Sean E. Trowbridge, Seth M. Demsey, Shajan Dasan, Subhag P. Oak, Sreeram Nivarthi, Stefan H. Pharies, Suzanne M. Cook, Susan M. Warren, Tarun Anand, Travis J. Muhlestein, William A. Adams, Yan Leshinsky, Yann E. Christensen, Yung-shin Lin, Stephen J. Millet, Joseph Roxe, Alan Boshier, Henry L. Sanders, David Bau
  • Patent number: 7555757
    Abstract: An application program interface (API) provides a set of functions, including a set of base classes and types that are used in substantially all applications accessing the API, for application developers who build Web applications on Microsoft Corporation's .NET™ platform.
    Type: Grant
    Filed: June 23, 2005
    Date of Patent: June 30, 2009
    Assignee: Microsoft Corporation
    Inventors: Adam W. Smith, Anthony J. Moore, Brian A. LaMacchia, Anders Hejlsberg, Brian M. Grunkemeyer, Caleb L. Doise, Christopher W. Brumme, Christopher L. Anderson, Corina E. Feuerstein, Craig T. Sinclair, Daniel Takacs, David S. Ebbo, David O. Driver, David S. Mortenson, Erik B. Christensen, Erik B. Olson, Fabio A. Yeon, Gopala Krishna R. Kakivaya, George D. Fee, Hany E. Ramadan, Henry L. Sanders, II, Jayanth V. Rajan, Jeffrey M. Cooperstein, Jonathan C. Hawkins, James H. Hogg, Joe D. Long, John I. McConnell, Jesus Ruiz-Scougall, James S. Miller, Julie D. Bennett, Krzysztof J. Cwalina, Lance E. Olson, Loren M. Kohnfelder, Michael M. Magruder, Manish S. Prabhu, Radu Rares Palanca, Raja Krishnaswamy, Shawn P. Burke, Sean E. Trowbridge, Seth M. Demsey, Shajan Dasan, Stefan H. Pharies, Suzanne M. Cook, Tarun Anand, Travis J. Muhlestein, Yann E. Christensen, Yung-shin Lin, Ramasamy Krishnaswamy, Joseph Roxe, Alan Boshier, David Bau
  • Patent number: 7457805
    Abstract: Various embodiments of the invention are directed to closely integrating functionality between an internet server and a WebDAV tool. Areas of specific focus in this document include delegation of duties between the internet server and the WebDAV tool, efficient management of a resource's content-type, support for segregation of a namespace into separate virtual roots, and determinations of whether to invoke certain processing extensions to handle requests for a given HTTP verb.
    Type: Grant
    Filed: March 6, 2003
    Date of Patent: November 25, 2008
    Assignee: Microsoft Corporation
    Inventors: Brian J. Deen, Joel M. Soderberg, Van C. Van, Henry L. Sanders
  • Patent number: 7437742
    Abstract: A system and method for facilitating exposing a resource over a protocol is provided. The system includes a class factory that holds identifiers associated with determining which, if any, registered listener object creator should be employed to create a listener object. The listener object implements an abstract network protocol base class. The listener object is employed to abstract details of exposing a resource over a protocol and to provide a byte stream interface to communications occurring over the protocol, while removing protocol specific code from a server program. The method includes creating an instance of a listener object from a source of registered protocol handlers based on a request to expose a resource over a protocol and using a base class API to communicate over the protocol through the listener object.
    Type: Grant
    Filed: December 14, 2004
    Date of Patent: October 14, 2008
    Assignee: Microsoft Corporation
    Inventors: Richard L. Firth, Henrik Frystyk Nielsen, Lance E. Olson, Henry L. Sanders
  • Patent number: 7430738
    Abstract: Improved methods and arrangements are provided in which a web server or like process includes a kernel-mode universal listener (UL) capability that utilizes the URL associated with an HTTP request to determine which user-mode worker process/application is to handle the request and route the request to the targeted worker process/application. Thus, for example, one implementation includes a kernel-mode HTTP listener that is selectively configured via a Web admin service (WAS) based a configuration store. The resulting configuration file in the kernel-mode UL process defines a plurality of configuration groups and application pools, etc. The Configuration groups include certain URL's, which have configurable properties applied to them. The configurable properties define which user-mode worker process is to handle HTTP requests. Fore example, application pools can be provided, which identify a worker process or processes that the HTTP requests are routed to.
    Type: Grant
    Filed: June 11, 2001
    Date of Patent: September 30, 2008
    Assignee: Microsoft Corporation
    Inventors: Henry L. Sanders, Eric D. Deily, Charles K. Moore, Seth B. Pollack, David R. Treadwell
  • Patent number: 7391725
    Abstract: A system and method for defeating SYN attacks are provided. When the number of packets received by a server is above the capacity of the server, the server assumes that a SYN attack is in progress. The server randomly drops SYN packets without processing them. The percentage of SYN packets dropped is increased while the load on the server exceeds capacity, and decreased while the load on the server does not exceed capacity. Under attack conditions, a percentage of TCP connections are still maintained.
    Type: Grant
    Filed: May 18, 2004
    Date of Patent: June 24, 2008
    Inventors: Christian Huitema, Henry L. Sanders, Sanjay N. Kaniyar
  • Publication number: 20070248013
    Abstract: Creating different congestion control modules (CCMs) that can be plugged into a network communications stack (e.g., a TCP/IP stack). Software abstractions defining transport control events, congestion control algorithms and other information may be exposed by an application programming interface, e.g., of an operating system, and these abstractions may be used to define a CCM. The network communications stack may be configured to select one of multiple available CCMs to control congestion for a given connection. This selection may be based on any of a variety of factors including, but not limited to: network environment; connection path characteristics; connection link characteristics; a value of a socket parameter of an application; other factors; and any suitable combination of the foregoing. Thus, CCMs may be selected and implemented on a per-connection basis.
    Type: Application
    Filed: August 21, 2006
    Publication date: October 25, 2007
    Applicant: Microsoft Corporation
    Inventors: Murari Sridharan, Sanjay N. Kaniyar, Henry L. Sanders, Abolade Gbadegesin
  • Patent number: 7280558
    Abstract: A system and method for converting code associated with synchronous method calls to code that can be employed to perform asynchronous method calls and for supporting such asynchronous method calls is provided. The system includes a pattern generator that can break code for a synchronous method call into one or more constituent parts including a begin asynchronous operation method, an end asynchronous operation method, an asynchronous call state object and an asynchronous call result object. The system includes a pattern data store that holds data associated with converting a synchronous method call to an asynchronous method call, which facilitates employing the system consistently across environments like file input/output, stream input/output, socket input/output, networking, remoting channels, proxies, web forms, web services and messaging message queues.
    Type: Grant
    Filed: June 28, 2001
    Date of Patent: October 9, 2007
    Assignee: Microsoft Corporation
    Inventors: Brian M. Grunkemeyer, Jonathan C. Hawkins, Christopher W. Brumme, Gopala Krishna R. Kakivaya, Lance E. Olson, Dmitry Robsman, Henry L. Sanders, II
  • Patent number: 7248603
    Abstract: A system and method for converting code associated with synchronous method calls to code that can be employed to perform asynchronous method calls and for supporting such asynchronous method calls is provided. The system includes a pattern generator that can break code for a synchronous method call into one or more constituent parts including a begin asynchronous operation method, an end asynchronous operation method, an asynchronous call state object and an asynchronous call result object. The system includes a pattern data store that holds data associated with converting a synchronous method call to an asynchronous method call, which facilitates employing the system consistently across environments like file input/output, stream input/output, socket input/output, networking, remoting channels, proxies, web forms, web services and messaging message queues.
    Type: Grant
    Filed: June 21, 2006
    Date of Patent: July 24, 2007
    Assignee: Microsoft Corporation
    Inventors: Brian M. Grunkemeyer, Jonathan C. Hawkins, Christopher W. Brumme, Gopala Krishna R. Kakivaya, Lance E. Olson, Dmitry Robsman, Henry L. Sanders, II