IP Library Granted Patent US 12,476,914
Granted Patent B2
US 12,476,914 · App. 18/766,220 · Granted Nov 18, 2025

Network service discovery

Inventors: Michael Henkel (Saratoga, CA); Mahesh Sivakumar (Milpitas, CA); Richard Roberts (Rennes, FR)
Assignee: Juniper Networks, Inc.
H04L45/76H04L45/04H04L47/125
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,476,914
App. No.
18/766,220
Granted
Nov 18, 2025
Kind
B2
Abstract

Techniques are disclosed for a computing system comprising processing circuitry having access to a storage device, the processing circuitry configured to: generate, by a network controller executing in a software defined network (SDN), an advertisement in a first network cluster executing within a container orchestration platform of the SDN, wherein the advertisement conforms to a routing protocol and comprises information identifying a network service executing in the first network cluster, wherein the network service exposes a backend of a network application to the container orchestration platform of the SDN; and broadcast, by the network controller and to a second network cluster executing within the container orchestration platform of the SDN, the advertisement in accordance with the routing protocol.

Claims (41)

1 . A computing system comprising processing circuitry having access to a storage device, the processing circuitry configured to:

generate, by a network controller executing in a software defined network (SDN), a network service directory in a first network cluster based on an advertisement, wherein the advertisement conforms to a routing protocol and comprises information identifying a network service executing in a second network cluster, wherein the network service exposes a backend of a network application to a container orchestration platform of the SDN; and

add, by the network controller, one or more virtual execution elements executing on the first network cluster as endpoints of the network service, wherein the endpoints run the network application.

2 . The computing system of claim 1 , wherein the processing circuitry is further configured to:

generate, by the network controller, the advertisement in the second network cluster; and

broadcast, by the network controller and to the first network cluster executing within the container orchestration platform of the SDN, the advertisement in accordance with the routing protocol.

3 . The system of claim 1 , wherein the processing circuitry is further configured to implement a network policy to forward, by one or more virtual routers executing in the SDN, network traffic between the endpoints of the network service.

4 . The system of claim 3 , wherein the one or more virtual routers comprise a first virtual router executing in the first network cluster and a second virtual router executing in the second network cluster, and wherein the processing circuitry is further configured to:

link a first routing table of the first virtual router and a second routing table of the second virtual router to enable communication between the endpoints of the network service; and

implement a load balancer to regulate network traffic between the endpoints of the network service.

5 . The system of claim 3 , wherein to add the one or more virtual execution elements executing on the first network cluster as endpoints of the network service, the processing circuitry is further configured to:

assign, with a configuration node executing in the first network cluster, the one or more virtual execution elements one or more respective internet protocol (IP) addresses based on the network service directory; and

store the IP addresses in the one or more virtual routers.

6 . The system of claim 1 , wherein the routing protocol includes a multi-protocol border gateway protocol (MP-BGP).

7 . The system of claim 1 , wherein the advertisement includes a tuple of a fully-qualified domain name (FQDN) of the network service, a protocol used by the network service, and a port used by the network service.

8 . The system of claim 1 , wherein the processing circuitry is further configured to receive the advertisement with a border gateway protocol controller executing in the first network cluster.

9 . A method comprising:

receiving, by a network controller executing in a software defined network (SDN), an advertisement, wherein the advertisement conforms to a routing protocol and comprises information identifying a network service executing in a second network cluster, wherein the network service exposes a backend of a network application to a container orchestration platform of the SDN;

generating, by the network controller, a network service directory in a first network cluster based on the advertisement; and

adding, by the network controller, one or more virtual execution elements executing on the first network cluster as endpoints of the network service, wherein the endpoints run the network application.

10 . The method of claim 9 further comprising:

generating, by the network controller, the advertisement in the second network cluster; and

broadcasting, by the network controller and to the first network cluster executing within the container orchestration platform of the SDN, the advertisement in accordance with the routing protocol.

11 . The method of claim 9 , wherein adding the one or more virtual execution elements executing on the first network cluster as endpoints of the network service comprises:

assigning, with a configuration node executing in the first network cluster, the one or more virtual execution elements one or more respective internet protocol (IP) addresses based on the network service directory; and

storing the IP addresses in one or more virtual routers.

12 . The method of claim 11 , wherein the one or more virtual routers comprise a first virtual router executing in the first network cluster and a second virtual router executing in the second network cluster, and the method further comprises:

linking a first routing table of the first virtual router a second routing table of the second virtual router to enable communication between the endpoints of the network service; and

implementing a load balancer to regulate network traffic between the endpoints of the network service.

13 . The method of claim 9 , further comprising implementing a network traffic load balancing network policy to forward network traffic between the endpoints of the network service.

14 . The method of claim 9 , wherein the routing protocol includes a multi-protocol border gateway protocol (MP-BGP).

15 . The method of claim 9 , wherein the advertisement includes a tuple of a fully-qualified domain name (FQDN) of the network service, a protocol used by the network service, and a port used by the network service.

16 . The method of claim 9 , further comprising receiving the advertisement with a border gateway protocol controller executing in the first network cluster.

17 . A non-transitory computer-readable storage medium comprising instructions that, when executed, are configured to cause processing circuitry of a network system to:

generate, by a network controller executing in a software defined network (SDN), a network service directory in a first network cluster based on an advertisement, wherein the advertisement conforms to a routing protocol and comprises information identifying a network service executing in a second network cluster, wherein the network service exposes a backend of a network application to a container orchestration platform of the SDN; and

add, by the network controller, one or more virtual execution elements executing on the first network cluster as endpoints of the network service, wherein the endpoints run the network application.

18 . The non-transitory computer-readable storage medium of claim 17 , wherein the instructions are further configured to cause the processing circuitry of the network system to:

generate, by the network controller, the advertisement in the second network cluster; and

broadcast, by the network controller and to the first network cluster executing within the container orchestration platform of the SDN, the advertisement in accordance with the routing protocol.

19 . The non-transitory computer-readable storage medium of claim 17 , wherein the routing protocol includes a multi-protocol border gateway protocol (MP-BGP).

20 . The non-transitory computer-readable storage medium of claim 17 , wherein the advertisement includes a tuple of a fully-qualified domain name (FQDN) of the network service, a protocol used by the network service, and a port used by the network service.

Assignments (1)
NUNC PRO TUNC ASSIGNMENT Recorded May 6, 2026
From: JUNIPER NETWORKS, INC.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 075513/0034 →
Continuity (2)
Continuation 18193583 · Mar 30, 2023
Related Publication 20240364632A1 · Oct 31, 2024
References Cited (42)
US 7260645B2 · Bays · 2007 [cited by applicant]
US 9571394B1 · Sivaramakrishnan et al. · 2017 [cited by applicant]
US 10567288B1 · Mutnuru · 2020 [cited by applicant]
US 20060271684A1 · Booth et al. · 2006 [cited by applicant]
US 20070039043A1 · Garskof · 2007 [cited by applicant]
US 20120113809A1 · Cortes Gomez · 2012 [cited by applicant]
US 20120144024A1 · Lee · 2012 [cited by applicant]
US 20120179828A1 · Kobayashi et al. · 2012 [cited by applicant]
US 20130041972A1 · Field et al. · 2013 [cited by applicant]
US 20160080367A1 · Roth et al. · 2016 [cited by applicant]
US 20220006726A1 · Michael · 2022 [cited by examiner]
US 20220021613A1 · Venkatasubbaiah et al. · 2022 [cited by applicant]
US 20220210158A1 · Brar · 2022 [cited by examiner]
US 20220247677A1 · Baruah · 2022 [cited by examiner]
US 20220279420A1 · Akkipeddi · 2022 [cited by examiner]
US 20220286940A1 · Grewal · 2022 [cited by examiner]
US 20220329479A1 · Ramachandran · 2022 [cited by examiner]
US 20230062080A1 · Sidebottom · 2023 [cited by examiner]
US 20230079209A1 · Nallamothu · 2023 [cited by examiner]
US 20230097386A1 · Kreger-Stickles · 2023 [cited by examiner]
US 20230198857A1 · Aftab · 2023 [cited by examiner]
US 20230216774A1 · Suryanarayana · 2023 [cited by examiner]
EP 3264691A1 · 2018 [cited by applicant]
EP 3716533A1 · 2020 [cited by applicant]
WO 2013184846A1 · 2013 [cited by applicant]
“Services, Load Balancing, and Networking”, Kubernetes, Nov. 4, 2022, 77 pp. [cited by applicant]
Abraitis, “Service discovery by BGP community”, retrieved from the internet: <https://blog.donatas.net/blog/2017/03/02/exa-template/>, Mar. 2, 2017, 5 pp. [cited by applicant]
Bates et al., “Multiprotocol Extensions for BGP-4”, Juniper Networks, Inc., Jan. 2007, 12 pp. [cited by applicant]
Cotton et al., “Internet Assigned Numbers Authority (IANA) Procedures for the Management of the Service Name and Transport Protocol Port Number Registry”, Internet Engineering Task Force (IETF), Aug. 2011, 30 pp. [cited by applicant]
Extended Search Report from counterpart European Application No. 23174535.7 dated Nov. 9, 2023, 9 pp. [cited by applicant]
Kn et al., “Day One: Contrail DPDK vROUTER”, Juniper Networks, Inc., Jan. 9, 2021, 196 pp. [cited by applicant]
Prosecution History from U.S. Appl. No. 18/193,583, dated Dec. 21, 2023 through Apr. 11, 2024, 21 pp. [cited by applicant]
Rekhter et al., “A Border Gateway Protocol 4 (BGP-4)”, Network Working Group, RFC 4271, Jan. 2006, 93 pp. [cited by applicant]
Rekhter et al., “Carrying Label Information in BGP-4”, Cisco Systems, Inc., May 2001, 8 pp. [cited by applicant]
Sangli et al., “BGP Extended Communities Attribute,” RFC 4360, Feb. 2006, 12 pp. [cited by applicant]
U.S. Appl. No. 18/193,583, filed Mar. 30, 2023, naming inventors Henkel et al. [cited by applicant]
U.S. Appl. No. 18/399,888, filed Dec. 29, 2023, naming inventors Henkel. [cited by applicant]
Walton et al., “Fully Qualified Domain Name Capability for BGP”, Cumulus Networks, May 15, 2015, 3pp. [cited by applicant]
Office Action from U.S. Appl. No. 18/399,888 dated Jan. 16, 2025, 14 pp. [cited by applicant]
Notice of Allowance from U.S. Appl. No. 18/399,888 dated May 13, 2025, 11 pp. [cited by applicant]
Response to Extended Search Report dated Nov. 9, 2023, from counterpart European Application No. 23174535.7 filed Apr. 2, 2025, 32 pp. [cited by applicant]
Response to Office Action dated Jan. 16, 2025 from U.S. Appl. No. 18/399,888, filed Apr. 16, 2025, 9 pp. [cited by applicant]