Imagine a network that can program itself
based on high level policies of its operator

A Self-Programming
Network Will:

  • do its own configuration, maintenance, and verification
  • maximize its resource utilization
  • provide differentiated and deterministic SLAs to applications and users
  • support varying workloads
  • provide an interactive dashboard for users and operators

all by itself with high level policies by the operator

Why do we need
Self-Programming Networks?

Networks continue to be a critical infrastructure for the society.

They continue to get bigger, faster, and more complex and must connect to everyone and everything and support diverse applications with varying workloads. For example, Big Control demands predictable performance with low latency for a bursty workload.

Self-programming networks represent a paradigm shift to help network operators cope with these challenges and provide quality of experience to their customers while significantly lowering the capital and operational costs.

Our SPN Approach


  • Sense to collect data on behavior, needs
  • Infer global state, bottlenecks, causes of symptoms
  • Learn best control behaviors (e.g. deep reinforcement learning)
  • Forecast future behaviors, impact of changes
  • Control network configuration, policies


  • Visual, transparent, friendly and chatty, and fun


Applying SPN approach to two domains of use:

Data Center Networks and Mobile Cellular Networks. We are getting promising results and expect more exciting results to follow.

SPN Diagram

SPN for Datacenter Networks

We have built an end-to-end system with focus on sense from the edge (NICs/Hosts) and real time reconstruction of fine network details including clock synchronization with tens of nanosecond accuracy which is a big benefit for network operators especially on the walls street.


SPN for Mobile Cellular Networks

  • We are developing Infer + Predict + Control pipeline for mobile cellular networks for variety of application and network control scenarios
    • Video streaming: CDN and live
    • Content pre-positioning for CDNs
    • RAN control including load balancing across cells with optimized handoff
  • We use combination of ML and deep reinforcement learning for Infer and Predict and Control that show promising results
  • Streaming analytics pipeline latencies are hard to predict right now
SPN mobile networks

SPN with Software Defined Networks (SDN)

SDN's programmable sensing and control makes SPN easier to implement

back to top