Patents by Inventor Avery Pennarun
Avery Pennarun 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).
-
Publication number: 20240195790Abstract: Described herein are systems, methods, and software to manage private networks for computing elements. In one example, a computing element may obtain credential information associated with a user and generate a public-private key pair for the computing element. The computing element may further communicate the public key from the pair with metadata to a coordination service to register the computing element at the coordination service. Once registered, the computing element may receive communication information associated with one or more other computing elements that permit the computing element to communicate with the other computing elements.Type: ApplicationFiled: February 22, 2024Publication date: June 13, 2024Inventors: David F. Carney, Avery Pennarun, David J. Crawshaw
-
Patent number: 11978046Abstract: Users of a communication system can initiate electronic payments during a communication session hosted by the communication system or via a social network identity page hosted by the communication system. The communication system detects a payment signal from a user of the communication system and the collects payment information details either by displaying a payment object interface in a communication application of the user or receiving payment information input directly from the user's communication device. The payment information includes sender and recipient payment account identifiers that are communicated to a payment processing system for processing and delivery of the designated payment amount to the recipient.Type: GrantFiled: September 13, 2021Date of Patent: May 7, 2024Assignee: GOOGLE LLCInventors: Travis Harrison Kroll Green, Michael DePasquale, Boris Mizhen, Josh Ostrow, Peter Schmitt, Kevin Michael Bierhoff, Alevtina Stolpnik, Avery Pennarun, Narelle Cozens
-
Patent number: 11936633Abstract: Described herein are systems, methods, and software to manage private networks for computing elements. In one example, a computing element may obtain credential information associated with a user and generate a public-private key pair for the computing element. The computing element may further communicate the public key from the pair with metadata to a coordination service to register the computing element at the coordination service. Once registered, the computing element may receive communication information associated with one or more other computing elements that permit the computing element to communicate with the other computing elements.Type: GrantFiled: February 3, 2023Date of Patent: March 19, 2024Assignee: Tailscale Inc.Inventors: David F. Carney, Avery Pennarun, David Crawshaw
-
Publication number: 20230254278Abstract: Described herein are systems, methods, and software to manage domain name system (DNS) requests in a computing system. In one example, a computing system identifies a DNS request from an application on the computing system and, in response to the request, identifies a DNS server to support the DNS request from a plurality of DNS servers based on a domain in the DNS request. The computing system further forwards the DNS request to the DNS server, wherein the DNS server is located on the computing system, obtains a response to the DNS request from the DNS server, wherein the response indicates a private internet protocol (IP) address in a private network subnet, and provides the response to the application.Type: ApplicationFiled: February 7, 2023Publication date: August 10, 2023Inventors: David J. Crawshaw, David Anderson, Avery Pennarun
-
Publication number: 20230179582Abstract: Described herein are systems, methods, and software to manage private networks for computing elements. In one example, a computing element may obtain credential information associated with a user and generate a public-private key pair for the computing element. The computing element may further communicate the public key from the pair with metadata to a coordination service to register the computing element at the coordination service. Once registered, the computing element may receive communication information associated with one or more other computing elements that permit the computing element to communicate with the other computing elements.Type: ApplicationFiled: February 3, 2023Publication date: June 8, 2023Inventors: David F. Carney, Avery Pennarun, David Crawshaw
-
Patent number: 11575661Abstract: Described herein are systems, methods, and software to manage private networks for computing elements. In one example, a computing element may obtain credential information associated with a user and generate a public-private key pair for the computing element. The computing element may further communicate the public key from the pair with metadata to a coordination service to register the computing element at the coordination service. Once registered, the computing element may receive communication information associated with one or more other computing elements that permit the computing element to communicate with the other computing elements.Type: GrantFiled: July 22, 2020Date of Patent: February 7, 2023Assignee: Tailscale Inc.Inventors: David F. Carney, Avery Pennarun, David J. Crawshaw
-
Publication number: 20230006998Abstract: Described herein are systems, methods, and software to manage private networks for computing elements. In one example, a computing element on a first local network communicates a request to a coordination service to join a private network. The computing element further receives communication information associated with other computing elements in the private network, wherein the communication information permits the computing element to communicate with other computing elements in the private network that connect to the internet using second local networks. The computing element further advertises the computing elements in the first local network as though the other computing elements are connected to the first local network.Type: ApplicationFiled: December 15, 2021Publication date: January 5, 2023Inventors: David J. Crawshaw, Avery Pennarun, David Anderson
-
Publication number: 20220255905Abstract: Described herein are systems, methods, and software to manage private networks for computing elements. In one example, a coordination service may obtain a request from a computing element to join a private network. In response to the request, the coordination service may identify communication rules associated with the computing element based on credential and device information in the request and may identify communication information to permit the computing element to communicate with one or more other computing elements in the private network. Once identified, the communication information may be communicated to the computing element.Type: ApplicationFiled: April 15, 2021Publication date: August 11, 2022Inventors: David F. Carney, Avery Pennarun, David J. Crawshaw
-
Publication number: 20220029973Abstract: Described herein are systems, methods, and software to manage private networks for computing elements. In one example, a computing element may obtain credential information associated with a user and generate a public-private key pair for the computing element. The computing element may further communicate the public key from the pair with metadata to a coordination service to register the computing element at the coordination service. Once registered, the computing element may receive communication information associated with one or more other computing elements that permit the computing element to communicate with the other computing elements.Type: ApplicationFiled: July 22, 2020Publication date: January 27, 2022Inventors: David F. Carney, Avery Pennarun, David J. Crawshaw
-
Publication number: 20220030047Abstract: A method performed at an electronic device includes: executing an application; establishing a session between the executing application, a remote server associated with the application, and a media device that transmits output from the session to an output device, wherein the output from the session includes output from the executing application; and presenting to users of one or more second electronic devices on which the application is not executing and/or installed a session identifier associated with the session, wherein the session identifier facilitates joining of the session by the second electronic devices and identifies a controller configuration implementable on each of the one or more second electronic devices for enabling the users of the one or more second electronic devices to interact with the session.Type: ApplicationFiled: August 16, 2021Publication date: January 27, 2022Inventors: Avery Pennarun, Kuangye Guo, Robert McCool, Dov Zimring, Neal Cardwell, Saif Khalaf, Jani Huoponen, Soheil Hassas Yeganeh, Gurudas Somadder
-
Publication number: 20210406874Abstract: Users of a communication system can initiate electronic payments during a communication session hosted by the communication system or via a social network identity page hosted by the communication system. The communication system detects a payment signal from a user of the communication system and the collects payment information details either by displaying a payment object interface in a communication application of the user or receiving payment information input directly from the user's communication device. The payment information includes sender and recipient payment account identifiers that are communicated to a payment processing system for processing and delivery of the designated payment amount to the recipient.Type: ApplicationFiled: September 13, 2021Publication date: December 30, 2021Inventors: Travis Harrison Kroll Green, Michael DePasquale, Boris Mizhen, Josh Ostrow, Peter Schmitt, Kevin Michael Bierhoff, Alevtina Stolpnik, Avery Pennarun, Narelle Cozens
-
Patent number: 11140207Abstract: A method performed at an electronic device includes: executing an application; establishing a session between the executing application, a remote server associated with the application, and a media device that transmits output from the session to an output device, wherein the output from the session includes output from the executing application; and presenting to users of one or more second electronic devices on which the application is not executing and/or installed a session identifier associated with the session, wherein the session identifier facilitates joining of the session by the second electronic devices and identifies a controller configuration implementable on each of the one or more second electronic devices for enabling the users of the one or more second electronic devices to interact with the session.Type: GrantFiled: December 21, 2017Date of Patent: October 5, 2021Assignee: Google LLCInventors: Avery Pennarun, Kuangye Guo, Robert McCool, Dov Zimring, Neal Cardwell, Saif Khalaf, Jani Huoponen, Soheil Hassas Yeganeh, Gurudas Somadder
-
Patent number: 11120440Abstract: Users of a communication system can initiate electronic payments during a communication session hosted by the communication system or via a social network identity page hosted by the communication system. The communication system detects a payment signal from a user of the communication system and the collects payment information details either by displaying a payment object interface in a communication application of the user or receiving payment information input directly from the user's communication device. The payment information includes sender and recipient payment account identifiers that are communicated to a payment processing system for processing and delivery of the designated payment amount to the recipient.Type: GrantFiled: June 11, 2019Date of Patent: September 14, 2021Assignee: Google LLCInventors: Travis Harrison Kroll Green, Michael DePasquale, Boris Mizhen, Josh Ostrow, Peter Schmitt, Kevin Michael Bierhoff, Alevtina Stolpnik, Avery Pennarun, Narelle Cozens
-
Patent number: 10963847Abstract: A group including plurality of users is established. A transaction record is maintained for the group that includes a plurality of payment transactions. Each of the plurality of payment transactions involves at least one user of the group. Additionally, a balance is maintained that indicates an amount owed by a first user of the group to a second user of the group based on one or more of the plurality of payment transactions. When a settling event occurs, the balance is settled by initiating a transfer of funds between the first user and the second user.Type: GrantFiled: September 6, 2019Date of Patent: March 30, 2021Assignee: Google LLCInventors: Travis Harrison Kroll Green, Narelle Cozens, Peter Schmitt, Michael DePasquale, Avery Pennarun, Boris Mizhen
-
Publication number: 20190392404Abstract: A group including plurality of users is established. A transaction record is maintained for the group that includes a plurality of payment transactions. Each of the plurality of payment transactions involves at least one user of the group. Additionally, a balance is maintained that indicates an amount owed by a first user of the group to a second user of the group based on one or more of the plurality of payment transactions. When a settling event occurs, the balance is settled by initiating a transfer of funds between the first user and the second user.Type: ApplicationFiled: September 6, 2019Publication date: December 26, 2019Inventors: Travis Harrison Kroll Green, Narelle Cozens, Peter Schmitt, Michael DePasquale, Avery Pennarun, Boris Mizhen
-
Publication number: 20190295053Abstract: Users of a communication system can initiate electronic payments during a communication session hosted by the communication system or via a social network identity page hosted by the communication system. The communication system detects a payment signal from a user of the communication system and the collects payment information details either by displaying a payment object interface in a communication application of the user or receiving payment information input directly from the user's communication device. The payment information includes sender and recipient payment account identifiers that are communicated to a payment processing system for processing and delivery of the designated payment amount to the recipient.Type: ApplicationFiled: June 11, 2019Publication date: September 26, 2019Inventors: Travis Harrison Kroll Green, Michael DePasquale, Boris Mizhen, Josh Ostrow, Peter Schmitt, Kevin Michael Bierhoff, Alevtina Stolpnik, Avery Pennarun, Narelle Cozens
-
Patent number: 10410184Abstract: A group including plurality of users is established. A transaction record is maintained for the group that includes a plurality of payment transactions. Each of the plurality of payment transactions involves at least one user of the group. Additionally, a balance is maintained that indicates an amount owed by a first user of the group to a second user of the group based on one or more of the plurality of payment transactions. When a settling event occurs, the balance is settled by initiating a transfer of funds between the first user and the second user.Type: GrantFiled: March 30, 2012Date of Patent: September 10, 2019Assignee: GOOGLE LLCInventors: Travis Harrison Kroll Green, Narelle Cozens, Peter Schmitt, Michael DePasquale, Avery Pennarun, Boris Mizhen
-
Patent number: 10412004Abstract: A method includes receiving a data packet over one of a wireless communication link or a wired communication link from a user device in the local network. The data packet includes internet protocol (IP) address information. The method also includes determining whether the IP address information includes corresponding packet forwarding rules. When the IP address information includes corresponding packet forwarding rules, the method includes performing network address translation on the IP address information by mapping a source IP address from a private source IP address subnet to a public source IP address subnet, attaching the public source IP address subnet to the header of the data packet, and forwarding the data packet from the Ethernet switch to an external network port. The external network port is configured to connect the network routing device to the external network.Type: GrantFiled: October 18, 2017Date of Patent: September 10, 2019Assignee: Google LLCInventors: Tony Ong, Avery Pennarun
-
Publication number: 20190199772Abstract: A method performed at an electronic device includes: executing an application; establishing a session between the executing application, a remote server associated with the application, and a media device that transmits output from the session to an output device, wherein the output from the session includes output from the executing application; and presenting to users of one or more second electronic devices on which the application is not executing and/or installed a session identifier associated with the session, wherein the session identifier facilitates joining of the session by the second electronic devices and identifies a controller configuration implementable on each of the one or more second electronic devices for enabling the users of the one or more second electronic devices to interact with the session.Type: ApplicationFiled: December 21, 2017Publication date: June 27, 2019Inventors: Avery Pennarun, Kuangye Guo, Robert McCool, Dov Zimring, Neal Cardwell, Saif Khalaf, Jani Huoponen, Soheil Hassas Yeganeh, Gurudas Somadder
-
Publication number: 20180278523Abstract: A method includes receiving a data packet over one of a wireless communication link or a wired communication link from a user device in the local network. The data packet includes internet protocol (IP) address information. The method also includes determining whether the IP address information includes corresponding packet forwarding rules. When the IP address information includes corresponding packet forwarding rules, the method includes performing network address translation on the IP address information by mapping a source IP address from a private source IP address subnet to a public source IP address subnet, attaching the public source IP address subnet to the header of the data packet, and forwarding the data packet from the Ethernet switch to an external network port. The external network port is configured to connect the network routing device to the external network.Type: ApplicationFiled: October 18, 2017Publication date: September 27, 2018Applicant: Google LLCInventors: Tony Ong, Avery Pennarun