IP Library Granted Patent US 12,244,520
Granted Patent B2
US 12,244,520 · App. 17/895,909 · Granted Mar 4, 2025

Network service integration into a network fabric of a data center

Inventors: Jason Anthony Lochhead (Frisco, TX); Manikandan Subramanian (Flower Mound, TX); David Hess (Arlington, TX); Michael Andra Ballard (Coppell, TX); Adam Scott Wayne (Keller, TX)
H04L49/354G06F3/04842H04L12/4641H04L12/5691H04L41/5009H04L43/0817H04L49/20
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,244,520
App. No.
17/895,909
Granted
Mar 4, 2025
Kind
B2
Abstract

Top-of-rack (TOR) switches are connected to a network fabric of a data center. Each TOR switch corresponds to a rack of the data center, and is configured to provide access to the network fabric for computing devices mounted in the rack. In one method, a client device of a user is used to select various network service options. The service options correspond to services that can be provided to computing equipment of the user that is mounted in various racks of the data center. In response to receiving the selection of one or more service options, the network fabric of the data center is configured to connect the computing equipment to the selected services. In one approach, the network fabric is configured by creating and/or configuring one or more virtual networks to provide the connection to the services.

Claims (52)

1. A method, comprising:

causing a display, in a user interface of a client device, of a plurality of service provider options and a plurality of service options to be provided by each service provider of the plurality of service provider options;

receiving, by a first computing device and from the client device, a first selection of a first service provider from the plurality of service provider options and a second selection of a first service from the plurality of service options to be provided by the first service provider,

wherein the first service provider providing the first service is a different provider than a data center provider of a data center;

in response to receiving the first selection, sending, by the first computing device to a second computing device associated with the first service provider, first data regarding establishing a connection over a network fabric of the data center for providing access to the first service by a server associated with the client device that is mounted in a rack of the data center,

wherein the connection is to be established between the second computing device and the server associated with the client device, and

receiving, by the first computing device and from the second computing device, a confirmation to proceed with establishing the connection;

in response to receiving the confirmation to proceed with the establishing of the connection, creating at least one virtual network in the network fabric as part of the connection according to a policy specified by the second computing device, and grouping the at least one virtual network according to a function type of the at least one virtual network; and

connecting, in response to receiving the confirmation, the at least one virtual network to the server of the rack associated with the client device by configuring a top-of-rack switch of the rack to connect the top-of-rack switch to the at least one virtual network so that the server of the rack associated with the client device can access the first service via the top-of-rack switch such that the first service is integrated into services of the data center.

2. The method of claim 1 , wherein the at least one virtual network is created in conformance with the first data.

3. The method of claim 1 , further comprising receiving, by the first computing device from the second computing device, the policy required by the second computing device when providing the first service.

4. The method of claim 3 , wherein the at least one virtual network is created in conformance with the policy.

5. The method of claim 1 , further comprising monitoring network performance associated with providing the first service.

6. The method of claim 5 , further comprising replacing, based on the monitoring, the at least one virtual network with one or more new virtual networks.

7. The method of claim 6 , further comprising receiving, from the second computing device, a performance standard associated with the at least one virtual network, wherein the monitoring determines a failure to meet the performance standard.

8. The method of claim 1 , wherein the first service comprises at least one of a storage service and a network service.

9. The method of claim 1 , wherein the first service is a storage service implemented using storage hardware, the method further comprising allocating at least a portion of the storage hardware for storing data received from the server.

10. The method of claim 1 , wherein the first service provides internet connectivity to the server.

11. The method of claim 1 , wherein creating the at least one virtual network comprises creating a first virtual network, the method further comprising:

prior to receiving the first selection, receiving, from the second computing device, a request to create a second virtual network;

in response to receiving the request, creating the second virtual network; and

in response to receiving the confirmation, connecting the first virtual network to the second virtual network.

12. The method of claim 1 , wherein the client device is configured to communicate, over a network external to the data center, configuration data to the second computing device, and wherein the first service is provided in conformance with the configuration data.

13. A system, comprising:

at least one processing device; and

memory containing instructions configured to instruct the at least one processing device to:

cause a display, in a user interface of a client device, of a plurality of service provider options and a plurality of service options to be provided by each service provider of the plurality of service provider options;

receive, by a first computing device from a client device, a first selection of a first service provider from the plurality of service provider options and a second selection of a first service from the plurality of service options to be provided by the first service provider,

wherein the first service provided by the first provider is a different provider than a data center provider of a data center;

in response to receiving the first selection, send, by the first computing device to a second computing device associated with the first service provider, first data regarding establishing a connection over a network fabric of the data center for providing access to the first service by a server associated with the client device that is mounted in a rack of the data center,

wherein the connection is to be established between the second computing device and the server associated with the client device, and

receive, by the first computing device from the second computing device, a confirmation to proceed with establishing the connection;

in response to receiving the confirmation to proceed with the establishing of the connection, create at least one virtual network in the network fabric as part of the connection according to a policy specified by the second computing device, and group the at least one virtual network according to a function type of the at least one virtual network; and

connect, in response to receiving the confirmation, the at least one virtual network to the server of the rack associated with the client device by configuring a top-of-rack switch of the rack to connect the top-of-rack switch to the at least one virtual network so that the server of the rack associated with the client device can access the first service via the top-of-rack switch such that the first service is integrated into services of the data center.

14. The system of claim 13 , wherein the instructions are further configured to instruct the at least one processing device to:

configure at least one port of the top-of-rack switch to the at least one virtual network.

15. The system of claim 14 , wherein the instructions are further configured to instruct the at least one processing device to:

receive, from the client device, a request to configure the top-of-rack switch for connecting the computing device to the network fabric; and

in response to receiving the request, automatically configure the top-of-rack switch to connect the computing device to the virtual network.

16. The system of claim 15 , wherein the request comprises a request to provide an internet connection for the computing device, and wherein the instructions are further configured to instruct the at least one processing device to automatically configure the top-of-rack switch to provide internet connectivity to the computing device via the virtual network.

17. The system of claim 16 , wherein providing the internet connectivity comprises connecting the computing device to a carrier or internet service provider via the virtual network.

18. The system of claim 13 , wherein the instructions are further configured to instruct the at least one processing device to connect, by configuring the network fabric, the virtual network to a service provider that provides access for the computing device to internet protocol services.

19. The system of claim 13 , wherein the first service is a storage service implemented using storage hardware, and wherein the instructions are further configured to instruct the at least one processing device to allocate at least a portion of the storage hardware for storing data received from the computing device.

20. A non-transitory machine-readable medium storing instructions which, when executed on at least one processing device, cause the at least one processing device to at least:

cause a display, in a user interface of a client device, of a plurality of service provider options and a plurality of service options to be provided by each service provider of the plurality of service provider options;

receive, by a first computing device from a client device, a selection of a first service provider from the plurality of service provider options and a second selection of a first service from the plurality of service options to be provided by the first service provider,

wherein the service provided by the first service provider is a different provider than a data center provider of a data center;

in response to receiving the selection, send, by the first computing device to a second computing device associated with the first service provider, data regarding establishing a connection over a network fabric of the data center for providing access to the service by a server associated with the client device that is mounted in a rack of the data center,

wherein the connection is to be established between the second computing device and the server associated with the client device, and

receive, by the first computing device from the second computing device, a confirmation to proceed with establishing the connection;

in response to receiving the confirmation to proceed with the establishing of the connection, create at least one virtual network in the network fabric as part of the connection according to a policy specified by the second computing device, and group the at least one virtual network according to a function type of the at least one virtual network; and

connect, in response to receiving the confirmation, the at least one virtual network to the server of the rack associated with the client device by configuring a top-of-rack switch of the rack to connect the top-of-rack switch to the at least one virtual network.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2024
From: CYXTERA DATA CENTERS, INC.
To: PHOENIX INFRASTRUCTURE LLC
Reel/Frame 066216/0286 →
PATENT SECURITY AGREEMENT Recorded Mar 20, 2023
From: CYXTERA DATA CENTERS, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 063117/0893 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 25, 2022
From: LOCHHEAD, JASON; SUBRAMANIAN, MANIKANDAN; HESS, DAVID; BALLARD, MICHAEL ANDRA; WAYNE, ADAM SCOTT
To: CYXTERA DATA CENTERS, INC.
Reel/Frame 060904/0949 →
Continuity (3)
Continuation 16695734 · Nov 26, 2019
Continuation In Part 16442997 · Jun 17, 2019
Related Publication 20220417182A1 · Dec 29, 2022
References Cited (25)
US 8943490B1 · Jain · 2015 [cited by examiner]
US 9270619B2 · Senniappan · 2016 [cited by examiner]
US 10083026B1 · Venkata · 2018 [cited by examiner]
US 10498611B1 · Kloberdans · 2019 [cited by examiner]
US 11431654B2 · Lochhead et al. · 2022 [cited by applicant]
US 20020158900A1 · Hsieh et al. · 2002 [cited by applicant]
US 20040098320A1 · Mitsuhashi · 2004 [cited by examiner]
US 20090201293A1 · Tung · 2009 [cited by examiner]
US 20100142544A1 · Chapel et al. · 2010 [cited by applicant]
US 20100217780A1 · Erola · 2010 [cited by examiner]
US 20130019277A1 · Chang · 2013 [cited by examiner]
US 20130054426A1 · Rowland et al. · 2013 [cited by applicant]
US 20140108665A1 · Arora et al. · 2014 [cited by applicant]
US 20150103692A1 · Jain · 2015 [cited by examiner]
US 20150372920A1 · Wang · 2015 [cited by examiner]
US 20170063614A1 · Hartwig · 2017 [cited by applicant]
US 20170142196A1 · Sun · 2017 [cited by examiner]
US 20170214707A1 · Grubel · 2017 [cited by examiner]
US 20180095845A1 · Sanakkayala · 2018 [cited by examiner]
US 20180287902A1 · Chitalia · 2018 [cited by examiner]
US 20180287905A1 · Mehta · 2018 [cited by examiner]
US 20200028786A1 · Chachmon et al. · 2020 [cited by applicant]
US 20200059420A1 · Abraham · 2020 [cited by applicant]
US 20200073692A1 · Rao · 2020 [cited by examiner]
US 20200396181A1 · Lochhead et al. · 2020 [cited by applicant]