Patents by Inventor Parveen Patel

Parveen Patel 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: 8351430
    Abstract: The present invention extends to methods, systems, and computer program products for routing using global address pairs. Embodiments of the invention use publicly routable Internet Protocol (“IP”) addresses to represent sites rather than individual hosts. Hosts can be represented by a global address pair, including site public IP address and a node private IP address. Nodes route packets to address processing modules using IP-in-IP encapsulation. An outer header contains a site public IP address and is destined to a site on inter-site links. An inner header contains a node private IP address and is destined to a private endpoint in intra-site links. In some embodiments, a site public IPv4 address and a node private IPv4 address are encoded into an IPv6 address. Use of an IPv6 address makes encoding of the two IPv4 address transparent to IPv6 applications.
    Type: Grant
    Filed: September 30, 2010
    Date of Patent: January 8, 2013
    Assignee: Microsoft Corporation
    Inventors: Parveen Patel, Hasan Shamsuddin Alkhatib
  • Publication number: 20120303809
    Abstract: The present invention extends to methods, systems, and computer program products for off loading load balancing packet modification. Embodiments of the invention can be used to offload the load of forwarding packets back to packet senders. Load balancers and/or the NAT devices can handle the first few packets of a connection to formulate connection mappings and then are removed from further communication for the connections. For example, a load balancer or NAT device makes the corresponding load balancing or the NAT decision based on a first packet and then informs the sender of the data of the decision. From then on, the sender can directly send the data to the receiver without having to go through the load balancer or NAT.
    Type: Application
    Filed: May 25, 2011
    Publication date: November 29, 2012
    Applicant: Microsoft Corporation
    Inventors: Parveen Patel, Deepak Bansal, Changhoon Kim, Marios Zikos, Volodymyr Ivanov
  • Publication number: 20120155266
    Abstract: The present invention extends to methods, systems, and computer program products for synchronizing state among load balancer components. Embodiments of the invention include load balancers using a consistent hashing algorithm to decide how new connections should be load balanced. Use of consistent hashing algorithm permits load balancers to work in a stateless manner in steady state. Load balancers start keeping flow state information (destination address for a given flow) about incoming packets when it is needed, i.e. such as, for example, when a change in destination host configuration is detected. State information is shared across load balancers in a deterministic way, which allows knowing which load balancer is authoritative (e.g., is the owner) for a given flow. Each load balancer can reach the authoritative load balancer to learn about a flow that cannot be determined locally.
    Type: Application
    Filed: December 17, 2010
    Publication date: June 21, 2012
    Applicant: Microsoft Corporation
    Inventors: Parveen Patel, Volodymyr Ivanov, Marios Zikos, Vladimir Petter, Vyacheslav Kuznetsov, David Allen Dion
  • Publication number: 20120082160
    Abstract: The present invention extends to methods, systems, and computer program products for routing using global address pairs. Embodiments of the invention use publicly routable Internet Protocol (“IP”) addresses to represent sites rather than individual hosts. Hosts can be represented by a global address pair, including site public IP address and a node private IP address. Nodes route packets to address processing modules using IP-in-IP encapsulation. An outer header contains a site public IP address and is destined to a site on inter-site links. An inner header contains a node private IP address and is destined to a private endpoint in intra-site links. In some embodiments, a site public IPv4 address and a node private IPv4 address are encoded into an IPv6 address. Use of an IPv6 address makes encoding of the two IPv4 address transparent to IPv6 applications.
    Type: Application
    Filed: September 30, 2010
    Publication date: April 5, 2012
    Applicant: Microsoft Corporation
    Inventors: Parveen Patel, Hasan Shamsuddin Alkhatib
  • Publication number: 20110283017
    Abstract: Computerized methods, systems, and computer-readable media are provided for establishing and managing a virtual network (V-net) and virtual machine (VM) switches that enable protected and isolated interconnections between members of the V-net. The V-net members include an originating network adapter that generates data packets addressed to a destination network adapter. Upon detecting data-packet generation, a source-side VM switch accesses a forwarding table associated with the V-net, ascertains a destination-side, VM-switch locator that corresponds to an identifier of the destination network adapter, and modifies the data packets to include the identifier. The forwarding table represents a mapping between the members of the V-net and VM switches located on respective nodes within the data center. In operation, the mapping enforces communication policies that govern data-packet traffic.
    Type: Application
    Filed: May 14, 2010
    Publication date: November 17, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: Hasan Alkhatib, Changhoon Kim, Geoff Outhred, Deepak Bansal, Albert Greenberg, Dave Maltz, Parveen Patel
  • Publication number: 20110270908
    Abstract: Architecture that facilitates the capture of connection state of a connection established between a client and an intermediate server and forwards the state to one or more target servers. A software component at the target server (as well as the intermediate server) uses this connection state to reply back to the client directly, thereby bypassing the intermediate server. All packets from the client related to the request are received at the intermediate server and then forwarded to the target server. The migration can be accomplished without any change in the client operating system and client applications, without assistance from a gateway device such as a load balancer or the network, without duplication of all packets between the multiple servers, and without changes to the transport layer stack of the intermediate and target servers.
    Type: Application
    Filed: April 28, 2010
    Publication date: November 3, 2011
    Applicant: Microsoft Corporation
    Inventors: Randall Kern, Parveen Patel, Lihua Yuan, Anil K. Ruia, Won Suk Yoo
  • Patent number: 7930394
    Abstract: Routing network traffic on a computer network is described. In one embodiment, a method is presented which includes transmitting instructions to a client, the instructions executable by the client to request content from two or more content servers, measure two or more network performance characteristics associated with the two or more different content servers, and issue a report to an administrative server. The report may include a first network performance characteristic and a second network performance characteristic. The method may further include selecting a target content server from one of two or more content servers based on comparison of the two or more network performance characteristics; and transmitting routing instructions to an intermediate routing system, the routing instructions executable by the intermediate routing system to direct subsequent content requests transmitted by the client to the target content server.
    Type: Grant
    Filed: October 1, 2008
    Date of Patent: April 19, 2011
    Assignee: Microsoft Corporation
    Inventors: Parveen Patel, Albert Gordon Greenberg, David Maltz
  • Publication number: 20100302940
    Abstract: The present application relates to network configurations and specifically to scalable load balancing network configurations. One implementation includes an external client coupled to a scalable load balancing system. The scalable load balancing system includes a load balancing layer that is configured to encapsulate individual incoming packets of a packet flow from the external client. The load balancing layer is further configured to route the incoming packets to target devices on the system. The target devices can span multiple IP subnets. The incoming packets can pass through one or more load balancers of the load balancing layer before reaching individual target devices. Individual target devices can be configured to route at least some outgoing packets of the packet flow to the external client without passing through any of the one or more load balancers.
    Type: Application
    Filed: October 26, 2009
    Publication date: December 2, 2010
    Applicant: Microsoft Corporation
    Inventors: Parveen Patel, Lihua Yuan, David Maltz, Albert Greenberg, Randy Kern
  • Publication number: 20100082804
    Abstract: Routing network traffic on a computer network is described. In one embodiment, a method is presented which includes transmitting instructions to a client, the instructions executable by the client to request content from two or more content servers, measure two or more network performance characteristics associated with the two or more different content servers, and issue a report to an administrative server. The report may include a first network performance characteristic and a second network performance characteristic. The method may further include selecting a target content server from one of two or more content servers based on comparison of the two or more network performance characteristics; and transmitting routing instructions to an intermediate routing system, the routing instructions executable by the intermediate routing system to direct subsequent content requests transmitted by the client to the target content server.
    Type: Application
    Filed: October 1, 2008
    Publication date: April 1, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Parveen Patel, Albert Gordon Greenberg, David Maltz