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: 20240195790
    Abstract: 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: Application
    Filed: February 22, 2024
    Publication date: June 13, 2024
    Inventors: David F. Carney, Avery Pennarun, David J. Crawshaw
  • Patent number: 11978046
    Abstract: 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: Grant
    Filed: September 13, 2021
    Date of Patent: May 7, 2024
    Assignee: GOOGLE LLC
    Inventors: Travis Harrison Kroll Green, Michael DePasquale, Boris Mizhen, Josh Ostrow, Peter Schmitt, Kevin Michael Bierhoff, Alevtina Stolpnik, Avery Pennarun, Narelle Cozens
  • Patent number: 11936633
    Abstract: 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: Grant
    Filed: February 3, 2023
    Date of Patent: March 19, 2024
    Assignee: Tailscale Inc.
    Inventors: David F. Carney, Avery Pennarun, David Crawshaw
  • Publication number: 20230254278
    Abstract: 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: Application
    Filed: February 7, 2023
    Publication date: August 10, 2023
    Inventors: David J. Crawshaw, David Anderson, Avery Pennarun
  • Publication number: 20230179582
    Abstract: 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: Application
    Filed: February 3, 2023
    Publication date: June 8, 2023
    Inventors: David F. Carney, Avery Pennarun, David Crawshaw
  • Patent number: 11575661
    Abstract: 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: Grant
    Filed: July 22, 2020
    Date of Patent: February 7, 2023
    Assignee: Tailscale Inc.
    Inventors: David F. Carney, Avery Pennarun, David J. Crawshaw
  • Publication number: 20230006998
    Abstract: 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: Application
    Filed: December 15, 2021
    Publication date: January 5, 2023
    Inventors: David J. Crawshaw, Avery Pennarun, David Anderson
  • Publication number: 20220255905
    Abstract: 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: Application
    Filed: April 15, 2021
    Publication date: August 11, 2022
    Inventors: David F. Carney, Avery Pennarun, David J. Crawshaw
  • Publication number: 20220029973
    Abstract: 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: Application
    Filed: July 22, 2020
    Publication date: January 27, 2022
    Inventors: David F. Carney, Avery Pennarun, David J. Crawshaw
  • Publication number: 20220030047
    Abstract: 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: Application
    Filed: August 16, 2021
    Publication date: January 27, 2022
    Inventors: Avery Pennarun, Kuangye Guo, Robert McCool, Dov Zimring, Neal Cardwell, Saif Khalaf, Jani Huoponen, Soheil Hassas Yeganeh, Gurudas Somadder
  • Publication number: 20210406874
    Abstract: 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: Application
    Filed: September 13, 2021
    Publication date: December 30, 2021
    Inventors: Travis Harrison Kroll Green, Michael DePasquale, Boris Mizhen, Josh Ostrow, Peter Schmitt, Kevin Michael Bierhoff, Alevtina Stolpnik, Avery Pennarun, Narelle Cozens
  • Patent number: 11140207
    Abstract: 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: Grant
    Filed: December 21, 2017
    Date of Patent: October 5, 2021
    Assignee: Google LLC
    Inventors: Avery Pennarun, Kuangye Guo, Robert McCool, Dov Zimring, Neal Cardwell, Saif Khalaf, Jani Huoponen, Soheil Hassas Yeganeh, Gurudas Somadder
  • Patent number: 11120440
    Abstract: 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: Grant
    Filed: June 11, 2019
    Date of Patent: September 14, 2021
    Assignee: Google LLC
    Inventors: Travis Harrison Kroll Green, Michael DePasquale, Boris Mizhen, Josh Ostrow, Peter Schmitt, Kevin Michael Bierhoff, Alevtina Stolpnik, Avery Pennarun, Narelle Cozens
  • Patent number: 10963847
    Abstract: 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: Grant
    Filed: September 6, 2019
    Date of Patent: March 30, 2021
    Assignee: Google LLC
    Inventors: Travis Harrison Kroll Green, Narelle Cozens, Peter Schmitt, Michael DePasquale, Avery Pennarun, Boris Mizhen
  • Publication number: 20190392404
    Abstract: 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: Application
    Filed: September 6, 2019
    Publication date: December 26, 2019
    Inventors: Travis Harrison Kroll Green, Narelle Cozens, Peter Schmitt, Michael DePasquale, Avery Pennarun, Boris Mizhen
  • Publication number: 20190295053
    Abstract: 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: Application
    Filed: June 11, 2019
    Publication date: September 26, 2019
    Inventors: Travis Harrison Kroll Green, Michael DePasquale, Boris Mizhen, Josh Ostrow, Peter Schmitt, Kevin Michael Bierhoff, Alevtina Stolpnik, Avery Pennarun, Narelle Cozens
  • Patent number: 10410184
    Abstract: 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: Grant
    Filed: March 30, 2012
    Date of Patent: September 10, 2019
    Assignee: GOOGLE LLC
    Inventors: Travis Harrison Kroll Green, Narelle Cozens, Peter Schmitt, Michael DePasquale, Avery Pennarun, Boris Mizhen
  • Patent number: 10412004
    Abstract: 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: Grant
    Filed: October 18, 2017
    Date of Patent: September 10, 2019
    Assignee: Google LLC
    Inventors: Tony Ong, Avery Pennarun
  • Publication number: 20190199772
    Abstract: 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: Application
    Filed: December 21, 2017
    Publication date: June 27, 2019
    Inventors: Avery Pennarun, Kuangye Guo, Robert McCool, Dov Zimring, Neal Cardwell, Saif Khalaf, Jani Huoponen, Soheil Hassas Yeganeh, Gurudas Somadder
  • Publication number: 20180278523
    Abstract: 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: Application
    Filed: October 18, 2017
    Publication date: September 27, 2018
    Applicant: Google LLC
    Inventors: Tony Ong, Avery Pennarun