  In the last few decades, data center architecture evolved from the
traditional client-server to access-aggregation-core architectures. Recently
there is a new shift in the data center architecture due to the increasing need
for low latency and high throughput between server-to-server communications,
load balancing and, loop-free environment. This new architecture, known as leaf
and spine architecture, provides low latency and minimum packet loss by
enabling the addition and deletion of network nodes on demand. Network nodes
can be added or deleted from the network based on network statistics like link
speed, packet loss, latency, and throughput.
  With the maturity of Open Virtual Switch (OvS) and OpenFlow based Software
Defined Network (SDN) controllers, network automation through programmatic
extensions has become possible based on network statistics. The separation of
the control plane and data plane has enabled automated management of network
and Machine Learning (ML) can be applied to learn and optimize the network.
  In this publication, we propose the design of an ML-based approach to gather
network statistics and build a knowledge plane. We demonstrate that this
knowledge plane enables data center optimization using southbound APIs and SDN
controllers. We describe the design components of this approach - using a
network simulator and show that it can maintain the historical patterns of
network statistics to predict future growth or decline. We also provide an
open-source software that can be utilized in a leaf and spine data center to
provide elastic capacity based on load forecasts.
