IP Library › Granted Patent US 12,580,880
Granted Patent B2
US 12,580,880 · App. 18/395,204 · Granted Mar 17, 2026

Messaging system with one-to-many communication

Inventors: Robert Gibson (Bothell, WA); Jeffery Scherrer (Redmond, WA); Jason Ward (Buckeye, AZ); Sameer Nafdey (Bellvue, WA); Matthew Hartmann (Massapequa, NY); Brandon Unkrur (Seattle, WA); Filip Brachkov (St. Charles, MO); Robert Allen (Lake Forest Park, WA)
Assignee: VOLKSWAGEN AKTIENGESELLSCHAFT
H04L51/21H04L51/07H04L67/1097H04L67/60
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,580,880
App. No.
18/395,204
Granted
Mar 17, 2026
Kind
B2
Abstract

A messaging system is provided to communicate messages between computing devices. The computing devices can include vehicles and service computers. The messaging system includes nodes and virtual entities that may forward messages between computing devices. The messaging system may be a publish-subscribe system. The messaging system may provide one-to-many communication.

Claims (46)

1 . A method, comprising:

receiving a message from a first computing device via a first virtual entity, wherein the first computing device is associated with the first virtual entity;

determining that a set of computing devices should receive the message;

identifying a set of virtual entities based on the message, wherein each computing device of the set of computing devices is associated with a respective virtual entity; and

forwarding the message to the set of computing devices via a publish-subscribe (pub-sub) system, the first virtual entity, and the set of virtual entities, wherein the pub-sub system comprises a plurality of nodes to process messages for the pub-sub system, and wherein the first virtual entity and the set of virtual entities are located in the plurality of nodes of the pub-sub system.

2 . The method of claim 1 , wherein determining that the set of computing devices should receive the message comprises:

identifying a topic associated with the message; and

determining whether the set of computing devices are subscribed to the topic.

3 . The method of claim 1 , wherein the first virtual entity is located on a first node of the plurality of nodes, and wherein the set of virtual entities are located on a set of nodes of the plurality of nodes.

4 . The method of claim 3 , wherein forwarding the message to the set of computing devices comprises:

forwarding the message directly from the first node to the set of nodes.

5 . The method of claim 3 , wherein the pub-sub system refrains from forwarding the message to other nodes in the plurality of nodes.

6 . The method of claim 3 , wherein a first network connection exists between the first computing device and the first node and wherein a set of network connections exist between the set of computing devices and the set of nodes.

7 . The method of claim 1 , further comprising:

tracking a plurality of subscriptions to a plurality of topics of the pub-sub system.

8 . The method of claim 1 , further comprising:

tracking the locations of a set of virtual entities in the plurality of nodes.

9 . The method of claim 1 , wherein the first virtual entity and the set of virtual entities comprise endpoints for the message.

10 . The method of claim 1 , wherein:

the first computing device comprises a vehicle and the set of computing devices comprises a server computer; or

the first computing device comprises the server computer and the set of computing devices comprises the vehicle.

11 . An apparatus, comprising:

a memory configured to stored data; and

a processing device communicatively coupled to the memory, the processing device configured to:

receive a message from a first computing device via a first virtual entity, wherein the first computing device is associated with the first virtual entity;

determine that a set of computing devices should receive the message;

identify a set of virtual entities based on the message, wherein each computing device of the set of computing devices is associated with a respective virtual entity; and

forward the message to the set of computing devices via a publish-subscribe (pub-sub) system, the first virtual entity, and the set of virtual entities, wherein the pub-sub system comprises a plurality of nodes to process messages for the pub-sub system, and wherein the first virtual entity and the set of virtual entities are located in the plurality of nodes of the pub-sub system.

12 . The apparatus of claim 11 , wherein to determine that the set of computing devices should receive the message the processing device is further configured to:

identify a topic associated with the message; and

determine whether the set of computing devices are subscribed to the topic.

13 . The apparatus of claim 11 , wherein the first virtual entity is located on a first node of the plurality of nodes, and wherein the set of virtual entities are located on a set of nodes of the plurality of nodes.

14 . The apparatus of claim 13 , wherein to forward the message to the second computing device the processing device is further configured to:

forward the message directly from the first node to the set of nodes.

15 . The apparatus of claim 13 , wherein the pub-sub system refrains from forwarding the message to other nodes in the plurality of nodes.

16 . The apparatus of claim 13 , wherein a first network connection exists between the first computing device and the first node and wherein a set of network connections exist between the set of computing devices and the set of nodes.

17 . The apparatus of claim 11 , wherein the processing device is further configured to:

track a plurality of subscriptions to a plurality of topics of the pub-sub system.

18 . The apparatus of claim 11 , wherein the processing device is further configured to:

track the locations of a set of virtual entities in the plurality of nodes.

19 . The apparatus of claim 11 , wherein the first virtual entity and the set of virtual entities comprise endpoints for the message.

20 . A non-transitory computer-readable storage medium including instructions that, when executed by a processing device, cause the processing device to perform operations comprising:

receiving a message from a first computing device via a first virtual entity, wherein the first computing device is associated with the first virtual entity;

determining that a set of computing devices should receive the message;

identifying a set of virtual entities based on the message, wherein each computing device of the set of computing devices is associated with a respective virtual entity; and

forwarding the message to the set of computing devices via a publish-subscribe (pub-sub) system, the first virtual entity, and the set of virtual entities, wherein the pub-sub system comprises a plurality of nodes to process messages for the pub-sub system, and wherein the first virtual entity and the set of virtual entities are located in the plurality of nodes of the pub-sub system.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2024
From: ALLEN, ROBERT
To: CARIAD, INC.
Reel/Frame 068048/0168 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2024
From: CARIAD, INC.
To: CARIAD SE
Reel/Frame 068048/0297 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2024
From: SCHERRER, JEFFERY; GIBSON, ROBERT; WARD, JASON; NAFDEY, SAMEER; HARTMANN, MATTHEW; UNKRUR, BRANDON; BRACHKOV, FILIP
To: CARIAD, INC.
Reel/Frame 066234/0511 →
Continuity (2)
Provisional Application 63530035 · Jul 31, 2023
Related Publication 20250047626A1 · Feb 6, 2025
References Cited (39)
US 6389470B1 · Barr · 2002 [cited by examiner]
US 7590098B2 · Ganesh · 2009 [cited by applicant]
US 8458315B2 · Miche · 2013 [cited by examiner]
US 8972512B2 · Mays · 2015 [cited by examiner]
US 9325650B2 · Yalavarty · 2016 [cited by examiner]
US 9716762B2 · Petersen · 2017 [cited by examiner]
US 9847961B2 · Shuman · 2017 [cited by examiner]
US 10257673B1 · Smith · 2019 [cited by examiner]
US 10489231B1 · Gabay · 2019 [cited by examiner]
US 10735356B1 · Mantel · 2020 [cited by examiner]
US 10880249B1 · Jonsson · 2020 [cited by examiner]
US 11088975B2 · Hughes · 2021 [cited by examiner]
US 11126483B1 · Das · 2021 [cited by examiner]
US 11223586B1 · Rosenberg · 2022 [cited by examiner]
US 11438742B2 · Ahn · 2022 [cited by examiner]
US 11520616B2 · Lefurgy · 2022 [cited by examiner]
US 11533287B2 · Nair · 2022 [cited by examiner]
US 11924152B2 · Gao · 2024 [cited by examiner]
US 11924159B2 · Nair · 2024 [cited by examiner]
US 12126584B2 · Skinner · 2024 [cited by examiner]
US 20080077672A1 · Knight · 2008 [cited by examiner]
US 20120197856A1 · Banka · 2012 [cited by examiner]
US 20150312179A1 · Ben-Ezra · 2015 [cited by examiner]
US 20160041534A1 · Gupta · 2016 [cited by applicant]
US 20170289071A1 · Roberts · 2017 [cited by examiner]
US 20180152405A1 · Kuo · 2018 [cited by examiner]
US 20180262592A1 · Zandi · 2018 [cited by applicant]
US 20190173951A1 · Sumcad · 2019 [cited by applicant]
US 20200351300A1 · Kaidi · 2020 [cited by examiner]
US 20210144250A1 · Mahar · 2021 [cited by examiner]
US 20210342175A1 · Lefurgy · 2021 [cited by applicant]
US 20210390853A1 · Edwardson · 2021 [cited by applicant]
US 20220239754A1 · Gonzalez · 2022 [cited by applicant]
US 20220353139A1 · Brems · 2022 [cited by applicant]
US 20230041490A1 · Vangati · 2023 [cited by applicant]
US 20240223674A1 · Chakravorty · 2024 [cited by applicant]
WO WO2018096641A1 · 2018 [cited by applicant]
WO WO2021176458A1 · 2021 [cited by applicant]
WO WO2024138164A1 · 2024 [cited by applicant]