Patents by Inventor Marios Zikos
Marios Zikos 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: 9667543Abstract: Embodiments are directed to routing requests with different protocols to the same destination. In one scenario, a computer system receives a request that uses a specified protocol. The request includes a request source identifier and a request destination identifier. The computer system identifies, based on both the request source identifier and the request destination identifier, a destination to send the request to and generates a routing entry for the request that indicates which destination the first request was sent to. The computer system receives another request that uses a different protocol. This request includes a request source identifier and a request destination identifier of its own. The computer system determines that the request source identifier and request destination identifier of the subsequent request match those of the generated routing entry, and routes the subsequent request to the destination indicated in the routing entry.Type: GrantFiled: August 8, 2014Date of Patent: May 30, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Nelamangala Krishnaswamy Srinivas, Narayanan Annamalai, Parveen Kumar Patel, Marios Zikos, Narasimhan Agrahara Venkataramaiah
-
Patent number: 9438520Abstract: 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: GrantFiled: November 18, 2014Date of Patent: September 6, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Parveen Patel, Volodymyr Ivanov, Marios Zikos, Vladimir Petter, Vyacheslav Kuznetsov, David Allen Dion
-
Patent number: 9354941Abstract: When a load balancer detects that a virtual address is associated with a single destination address, the load balancer sets a flag to distinguish the virtual address from virtual addresses that are associated with a plurality of destination addresses. The load balancer instructs the router to bypass the load balancer for network packets that are addressed to the virtual address, and refrains from storing subsequent flow state for the virtual address. When the virtual address is to be scaled up with an additional destination address, the load balancer sets a flag to distinguish the virtual address from virtual addresses that are associated with a single destination addresses. The load balancer instructs the router to route network packets that are addressed to the virtual address through the load balancer, instead of bypassing the load balancer, and starts storing flow state for the virtual address.Type: GrantFiled: July 21, 2015Date of Patent: May 31, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Ashwin Murthy, Parveen Kumar Patel, Deepak Bansal, Marios Zikos
-
Publication number: 20160043951Abstract: Embodiments are directed to routing requests with different protocols to the same destination. In one scenario, a computer system receives a request that uses a specified protocol. The request includes a request source identifier and a request destination identifier. The computer system identifies, based on both the request source identifier and the request destination identifier, a destination to send the request to and generates a routing entry for the request that indicates which destination the first request was sent to. The computer system receives another request that uses a different protocol. This request includes a request source identifier and a request destination identifier of its own. The computer system determines that the request source identifier and request destination identifier of the subsequent request match those of the generated routing entry, and routes the subsequent request to the destination indicated in the routing entry.Type: ApplicationFiled: August 8, 2014Publication date: February 11, 2016Inventors: Nelamangala Krishnaswamy Srinivas, Narayanan Annamalai, Parveen Kumar Patel, Marios Zikos, Narasimhan Agrahara Venkataramaiah
-
Publication number: 20160026505Abstract: When a load balancer detects that a virtual address is associated with a single destination address, the load balancer sets a flag to distinguish the virtual address from virtual addresses that are associated with a plurality of destination addresses. The load balancer instructs the router to bypass the load balancer for network packets that are addressed to the virtual address, and refrains from storing subsequent flow state for the virtual address. When the virtual address is to be scaled up with an additional destination address, the load balancer sets a flag to distinguish the virtual address from virtual addresses that are associated with a single destination addresses. The load balancer instructs the router to route network packets that are addressed to the virtual address through the load balancer, instead of bypassing the load balancer, and starts storing flow state for the virtual address.Type: ApplicationFiled: July 21, 2015Publication date: January 28, 2016Inventors: Ashwin Murthy, Parveen Kumar Patel, Deepak Bansal, Marios Zikos
-
Patent number: 9092271Abstract: When a load balancer detects that a virtual address is associated with a single destination address, the load balancer sets a flag to distinguish the virtual address from virtual addresses that are associated with a plurality of destination addresses. The load balancer instructs the router to bypass the load balancer for network packets that are addressed to the virtual address, and refrains from storing subsequent flow state for the virtual address. When the virtual address is to be scaled up with an additional destination address, the load balancer sets a flag to distinguish the virtual address from virtual addresses that are associated with a single destination addresses. The load balancer instructs the router to route network packets that are addressed to the virtual address through the load balancer, instead of bypassing the load balancer, and starts storing flow state for the virtual address.Type: GrantFiled: August 5, 2014Date of Patent: July 28, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Ashwin Murthy, Parveen Kumar Patel, Deepak Bansal, Marios Zikos
-
Patent number: 9055095Abstract: A load balancer that is able to detect and mitigate a Denial of Service (DOS) attack. The load balancer is placed in the flow path of network data packets that are destined for one or more tenant addresses. The load balancer analyzes performance parameters regarding the network data packets that are destined for the one or more tenant addresses and are received at the load balancer. The performance parameters describe network data packet flow to the tenant addresses. The load balancer detects, based on the analysis of the performance parameters, that one or more of the tenant addresses are being subjected to a DOS attack. The load balancer performs a mitigation operation to isolate the one or more tenant addresses being subjected to the DOS attack.Type: GrantFiled: June 14, 2013Date of Patent: June 9, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Ashwin Murthy, Naveen Reddy Karri, Parveen Kumar Patel, HongYu Wu, Marios Zikos, Yagya Narayanan Sethuraman, Deepak Bansal
-
Publication number: 20150063115Abstract: 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: ApplicationFiled: November 18, 2014Publication date: March 5, 2015Inventors: Parveen Patel, Volodymyr Ivanov, Marios Zikos, Vladimir Petter, Vyacheslav Kuznetsov, David Allen Dion
-
Publication number: 20140373146Abstract: A load balancer that is able to detect and mitigate a Denial of Service (DOS) attack. The load balancer is placed in the flow path of network data packets that are destined for one or more tenant addresses. The load balancer analyzes performance parameters regarding the network data packets that are destined for the one or more tenant addresses and are received at the load balancer. The performance parameters describe network data packet flow to the tenant addresses. The load balancer detects, based on the analysis of the performance parameters, that one or more of the tenant addresses are being subjected to a DOS attack. The load balancer performs a mitigation operation to isolate the one or more tenant addresses being subjected to the DOS attack.Type: ApplicationFiled: June 14, 2013Publication date: December 18, 2014Inventors: Ashwin Murthy, Naveen Reddy Karri, Parveen Kumar Patel, HongYu Wu, Marios Zikos, Yagya Narayanan Sethuraman, Deepak Bansal
-
Publication number: 20140351395Abstract: When a load balancer detects that a virtual address is associated with a single destination address, the load balancer sets a flag to distinguish the virtual address from virtual addresses that are associated with a plurality of destination addresses. The load balancer instructs the router to bypass the load balancer for network packets that are addressed to the virtual address, and refrains from storing subsequent flow state for the virtual address. When the virtual address is to be scaled up with an additional destination address, the load balancer sets a flag to distinguish the virtual address from virtual addresses that are associated with a single destination addresses. The load balancer instructs the router to route network packets that are addressed to the virtual address through the load balancer, instead of bypassing the load balancer, and starts storing flow state for the virtual address.Type: ApplicationFiled: August 5, 2014Publication date: November 27, 2014Inventors: Ashwin Murthy, Parveen Kumar Patel, Deepak Bansal, Marios Zikos
-
Patent number: 8805990Abstract: When a load balancer detects that a virtual address is associated with a single destination address, the load balancer sets a flag to distinguish the virtual address from virtual addresses that are associated with a plurality of destination addresses. The load balancer instructs the router to bypass the load balancer for network packets that are addressed to the virtual address, and refrains from storing subsequent flow state for the virtual address. When the virtual address is to be scaled up with an additional destination address, the load balancer sets a flag to distinguish the virtual address from virtual addresses that are associated with a single destination addresses. The load balancer instructs the router to route network packets that are addressed to the virtual address through the load balancer, instead of bypassing the load balancer, and starts storing flow state for the virtual address.Type: GrantFiled: July 12, 2012Date of Patent: August 12, 2014Assignee: Microsoft CorporationInventors: Ashwin Murthy, Parveen Kumar Patel, Deepak Bansal, Marios Zikos
-
Publication number: 20140185446Abstract: 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: ApplicationFiled: March 5, 2014Publication date: July 3, 2014Applicant: MICROSOFT CORPORATIONInventors: Parveen Patel, Volodymyr Ivanov, Marios Zikos, Vladimir Petter, Vyacheslav Kuznetsov, David Allen Dion
-
Patent number: 8755283Abstract: 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: GrantFiled: December 17, 2010Date of Patent: June 17, 2014Assignee: Microsoft CorporationInventors: Parveen Patel, Volodymyr Ivanov, Marios Zikos, Vladimir Petter, Vyacheslav Kuznetsov, David Allen Dion
-
Publication number: 20140019602Abstract: Load balancing for single-address tenants. When a load balancer detects that a virtual address is associated with a single destination address, the load balancer sets a flag to distinguish the virtual address from virtual addresses that are associated with a plurality of destination addresses. The load balancer instructs the router to bypass the load balancer for network packets that are addressed to the virtual address, and refrains from storing subsequent flow state for the virtual address. When the virtual address is to be scaled up with an additional destination address, the load balancer sets a flag to distinguish the virtual address from virtual addresses that are associated with a single destination addresses. The load balancer instructs the router to route network packets that are addressed to the virtual address through the load balancer, instead of bypassing the load balancer, and starts storing flow state for the virtual address.Type: ApplicationFiled: July 12, 2012Publication date: January 16, 2014Applicant: Microsoft CorporationInventors: Ashwin Murthy, Parveen Kumar Patel, Deepak Bansal, Marios Zikos
-
Publication number: 20120303809Abstract: 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: ApplicationFiled: May 25, 2011Publication date: November 29, 2012Applicant: Microsoft CorporationInventors: Parveen Patel, Deepak Bansal, Changhoon Kim, Marios Zikos, Volodymyr Ivanov
-
Publication number: 20120155266Abstract: 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: ApplicationFiled: December 17, 2010Publication date: June 21, 2012Applicant: Microsoft CorporationInventors: Parveen Patel, Volodymyr Ivanov, Marios Zikos, Vladimir Petter, Vyacheslav Kuznetsov, David Allen Dion
-
Patent number: 7831820Abstract: A system and method for converting a target computing device to a virtual machine are provided. A conversion event is detected to initiate a conversion of a target computing device to a virtual machine. An assessment of the physical and software assets of a target computing device are obtained. A data image of the target computing device is deployed on an instance of a virtual machine. The virtual machine adjusted to correspond to the physical and software assets of the target computing device.Type: GrantFiled: June 23, 2005Date of Patent: November 9, 2010Assignee: Microsoft CorporationInventors: Eric Joseph Winner, Marios Zikos
-
Publication number: 20070006225Abstract: A system and method for converting a target computing device to a virtual machine are provided. An assessment of the physical and software assets of a target computing device are obtained. A data image of the target computing device is deployed on an instance of a virtual machine. The virtual machine adjusted to correspond to the physical and software assets of the target computing device.Type: ApplicationFiled: June 23, 2005Publication date: January 4, 2007Applicant: Microsoft CorporationInventors: Brittney McAlister, Eric Winner, Marios Zikos
-
Publication number: 20060294516Abstract: A system and method for converting a target computing device to a virtual machine are provided. A conversion event is detected to initiate a conversion of a target computing device to a virtual machine. An assessment of the physical and software assets of a target computing device are obtained. A data image of the target computing device is deployed on an instance of a virtual machine. The virtual machine adjusted to correspond to the physical and software assets of the target computing device.Type: ApplicationFiled: June 23, 2005Publication date: December 28, 2006Applicant: Microsoft CorporationInventors: Eric Winner, Marios Zikos