Search

US-20260129103-A1 - FACILITATING ENDPOINT REGISTRATION USING DISTRIBUTED SERVICES

US20260129103A1US 20260129103 A1US20260129103 A1US 20260129103A1US-20260129103-A1

Abstract

In a network fabric, such as a network having CLOS topology, non-volatile memory express (NVMe®) endpoints may be connected to one of centralized discovery controller (CDC) distributed services placed among multiple leaf switches, which may have resource constraints. Connection scale, delay, and jitter may occur if the CDC distributed services are not placed on leaf switches close to NVMe endpoints served by the CDC distributed services. System and method embodiments are disclosed for placement of CDC services on a switching network fabric close to endpoints that are served by the CDC services. The placement of CDC services may be implemented via push registration, pull registration, and/or manual DDC adding/registration such that the CDC services may be placed on desired leaf switches close to endpoints.

Inventors

  • Balaji Rajagopalan
  • Pawan Kumar Singal
  • Ning Zhuang
  • Balasubramanian MUTHUKRISHNAN
  • Baskaran JEYAPAUL
  • Charles Park

Assignees

  • DELL PRODUCTS L.P.

Dates

Publication Date
20260507
Application Date
20251231

Claims (20)

  1. 1 . A processor-implemented method for a network fabric comprising a plurality of spine switches and a plurality of leaf switches, the method comprising: transmitting, using one or more distributed services deployed on a leaf switch from the plurality of leaf switches, one or more messages to one or more endpoints communicatively coupled to the leaf switch, the one or more messages comprising one or more local internet protocol (IP) addresses of the leaf switch; using one or more listener services on the leaf switch to serve a connection request or requests received by the leaf switch; receiving, at the leaf switch, a connection request from an endpoint from the one or more endpoint communicatively connected with the leaf switch; and causing, by the leaf switch, registration of the endpoint with a centralized service in response to the endpoint's connection request.
  2. 2 . The processor-implemented method of claim 1 wherein the one or more messages comprising one or more local internet protocol (IP) addresses of the leaf switch are one or more multicast Domain Name System (mDNS) messages.
  3. 3 . The processor-implemented method of claim 1 wherein the one or more messages comprising one or more local internet protocol (IP) addresses of the leaf switch are not transmitted via an inter-switch link (ISL) of the leaf switch to a different leaf switch to limit endpoints more closely communicatively connected to the different leaf switch from receiving the one or more local internet protocol (IP) addresses of the leaf switch.
  4. 4 . The processor-implemented method of claim 1 wherein the one or more messages do not include a global IP address associated with a centralized discovery controller (CDC) service deployed on one or more switches.
  5. 5 . The processor-implemented method of claim 1 wherein the one or more local IP addresses correspond to one or more virtual local area networks (VLANs) configured on the leaf switch.
  6. 6 . The processor-implemented method of claim 1 wherein the one or more endpoints comprise non-volatile memory express (NVMe) hosts, NVM subsystems, direct discovery controllers (DDCs), or a combination thereof, and wherein the one or more connection requests comprise NVMe connection requests.
  7. 7 . The processor-implemented method of claim 1 further comprising: detecting, by a distributed service deployed on the leaf switch, loss of connectivity with an endpoint among the one or more endpoints; and sending, from the leaf switch, an indication of the loss of connectivity to a centralized service deployed on one or more spine switches.
  8. 8 . The processor-implemented method of claim 1 further comprising: sending a first multicast Domain Name System (mDNS) message from the leaf switch to an endpoint that also receives a second mDNS message from a second leaf switch that is communicatively coupled to the leaf switch via an inter-switch link (ISL); receiving, at the leaf switch, a connection request from the one endpoint, which also sent or sends a connection request to the second leaf switch; and forming one or more multihoming paths for the endpoint to a centralized service deployed on one or more switches.
  9. 9 . An information handling system comprising: one or more processors; and a non-transitory information-handling-system-readable medium or media comprising one or more sets of instructions which, when executed by at least one of the one or more processors, causes steps to be performed comprising: transmitting, using one or more distributed services deployed on a leaf switch from a plurality of leaf switches of a network fabric comprising a plurality of spine switches and the plurality of leaf switches, one or more messages to one or more endpoints communicatively coupled to the leaf switch, the one or more messages comprising one or more local internet protocol (IP) addresses of the leaf switch; using one or more listener services on the leaf switch to serve a connection request or requests received by the leaf switch; receiving, at the leaf switch, a connection request from an endpoint from the one or more endpoint communicatively connected with the leaf switch; and causing, by the leaf switch, registration of the endpoint with a centralized service in response to the endpoint's connection request.
  10. 10 . The information handling system of claim 9 wherein the one or more messages comprising one or more local internet protocol (IP) addresses of the leaf switch are one or more multicast Domain Name System (mDNS) messages.
  11. 11 . The information handling system of claim 9 wherein the one or more messages comprising one or more local internet protocol (IP) addresses of the leaf switch are not transmitted via an inter-switch link (ISL) of the leaf switch to a different leaf switch to limit endpoints more closely communicatively connected to the different leaf switch from receiving the one or more local internet protocol (IP) addresses of the leaf switch.
  12. 12 . The information handling system of claim 9 wherein the one or more messages do not include a global IP address associated with a centralized discovery controller (CDC) service deployed on one or more switches.
  13. 13 . The information handling system of claim 9 wherein the one or more local IP addresses correspond to one or more virtual local area networks (VLANs) configured on the leaf switch.
  14. 14 . The information handling system of claim 9 wherein the one or more endpoints comprise non-volatile memory express (NVMe) hosts, NVM subsystems, direct discovery controllers (DDCs), or a combination thereof, and wherein the one or more connection requests comprise NVMe connection requests.
  15. 15 . The information handling system of claim 9 wherein the non-transitory information-handling-system-readable medium or media further comprises one or more sequences of instructions which, when executed by at least one of the one or more processors, causes steps to be performed comprising: detecting, by a distributed service deployed on the leaf switch, loss of connectivity with an endpoint among the one or more endpoints; and sending, from the leaf switch, an indication of the loss of connectivity to a centralized service deployed on one or more spine switches.
  16. 16 . A non-transitory information-handling-system-readable medium or media comprising one or more sequences of instructions which, when executed by at least one processor, causes steps to be performed comprising: transmitting, using one or more distributed services deployed on a leaf switch from a plurality of leaf switches of a network fabric comprising a plurality of spine switches and the plurality of leaf switches, one or more messages to one or more endpoints communicatively coupled to the leaf switch, the one or more messages comprising one or more local internet protocol (IP) addresses of the leaf switch; using one or more listener services on the leaf switch to serve a connection request or requests received by the leaf switch; receiving, at the leaf switch, a connection request from an endpoint from the one or more endpoint communicatively connected with the leaf switch; and causing, by the leaf switch, registration of the endpoint with a centralized service in response to the endpoint's connection request.
  17. 17 . The non-transitory information-handling-system-readable medium or media of claim 16 wherein the one or more messages comprising one or more local internet protocol (IP) addresses of the leaf switch are not transmitted via an inter-switch link (ISL) of the leaf switch to a different leaf switch to limit endpoints more closely communicatively connected to the different leaf switch from receiving the one or more local internet protocol (IP) addresses of the leaf switch.
  18. 18 . The non-transitory information-handling-system-readable medium or media of claim 16 wherein the one or more messages do not include a global IP address associated with a centralized discovery controller (CDC) service deployed on one or more switches.
  19. 19 . The non-transitory information-handling-system-readable medium or media of claim 16 wherein the one or more local IP addresses correspond to one or more virtual local area networks (VLANs) configured on the leaf switch.
  20. 20 . The non-transitory information-handling-system-readable medium or media of claim 16 further comprising one or more sequences of instructions which, when executed by at least one processor, causes steps to be performed comprising: detecting, by a distributed service deployed on the leaf switch, loss of connectivity with an endpoint among the one or more endpoints; and sending, from the leaf switch, an indication of the loss of connectivity to a centralized service deployed on one or more spine switches.

Description

CROSS-REFERENCE TO RELATED APPLICATION This patent application is divisional application of and claims priority benefit under 35 USC § 120 to co-pending and commonly-owned U.S. patent application Ser. No. 17/870,351, filed on 21 Jul. 2022, entitled “DYNAMIC PLACEMENT OF SERVICES CLOSER TO ENDPOINT,” and listing Balaji Rajagopalan, Pawan Kumar Singal, Ning Zhuang, Balasubramanian Muthukrishnan, Baskaran Jeyapaul, and Charles Park as inventors (Docket No. DC-128678.01 (20110-2577)), which patent document is incorporated by reference herein in its entirety and for all purposes. BACKGROUND A. Technical Field The present disclosure relates generally to information handling systems. More particularly, the present disclosure relates to systems and methods for dynamic placement of services in a network closer to endpoints of the network. B. Background As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to users is an information handling system or systems. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use, such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems. In a network fabric, such as a network fabric with a CLOS topology, non-volatile memory express (NVMe) over Fabrics (NVMe-oF™) endpoints are connected to centralized discovery controller or service (CDC) server, which may be placed on one of multiple leaf switches in the network fabric, and may have resource constraints. When a CDC service is placed on a leaf switch to serve an NVMe® endpoint far way, the service to the NVMe® endpoint may suffer excessive latency, delay, jitter, or even timeout, and the performance of the whole network fabric may be impacted negatively. Accordingly, it is highly desirable to find new, more efficient ways to place the leaf switches closest to NVMe® endpoints to which the CDC services connect for a predictable behavior with respect to connection scale, latency, and jitter. BRIEF DESCRIPTION OF THE DRAWINGS References will be made to embodiments of the disclosure, examples of which may be illustrated in the accompanying figures. These figures are intended to be illustrative, not limiting. Although the accompanying disclosure is generally described in the context of these embodiments, it should be understood that it is not intended to limit the scope of the disclosure to these particular embodiments. Items in the figures may not be to scale. FIG. 1 (“FIG. 1”) depicts a network fabric with deployed CDC, according to embodiments of the present disclosure. FIG. 2 depicts a schematic diagram for push registration on a network fabric for NVMe® endpoints, according to embodiments of the present disclosure. FIG. 3 depicts a process for push registration on a network fabric for NVMe® endpoints, according to embodiments of the present disclosure. FIG. 4 depicts a schematic diagram for pull registration on a network fabric for NVMe® endpoints, according to embodiments of the present disclosure. FIG. 5 depicts a process for pull registration on a network fabric for NVMe® endpoints, according to embodiments of the present disclosure. FIG. 6 depicts a schematic diagram for manual adding a direct discovery controller (DDC) on a network fabric, according to embodiments of the present disclosure. FIG. 7 depicts a process for manual adding a DDC on a network fabric, according to embodiments of the present disclosure. FIG. 8 depicts a schematic diagram with services placed on a network fabric close NVMe® endpoints, according to embodiments of the present disclosure. FIG. 9 depicts a simplified block diagram of an information handling system, according to embodiments of the present disclosure. FIG. 10 depicts an alternative block diagram of an information handling system, according to embodiments of the present disclosure. DETAILED DESCRIPTION OF EMBODIMENTS In the following description, for purposes of explanation, specific details a