Network Controller Scheduling for Multi-Tenant Isolation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current network management systems face challenges in achieving scalability, mobility, and multi-tenancy due to the complexity of managing large networks with shared switching elements, where traditional methods often compromise one goal at the expense of others, such as scalability and user isolation.
Innovation Solution
A network control system that allows multiple logical datapaths to be specified for different users through shared forwarding elements, using a controller to virtualize control and manage these elements, preventing users from viewing or controlling each other's forwarding logic, and optimizing network convergence time by aggregating changes and prioritizing updates.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If traditional network management methods are used to manage large networks with shared switching elements, then network control flexibility is improved, but scalability and user isolation are compromised
Solution Approach 1:
The patent segments the network control function by introducing a controller that separates control plane logic from data plane forwarding. The controller divides network management into virtual network instances, each with isolated control logic, allowing multiple users to share switching elements while maintaining logical separation and isolation between their respective network configurations.
Solution Approach 2:
The controller acts as an intermediary between users and shared switching elements. It mediates network management by receiving user-specific forwarding logic, translating it into device-specific instructions, and pushing configurations to the appropriate switching elements. This intermediary layer enables flexible control while preventing direct user access to shared infrastructure, thereby maintaining isolation.
2Adaptability or versatility
If network configurations are updated frequently to support dynamic workloads, then network adaptability is improved, but network convergence time increases
Solution Approach 1:
The controller performs preliminary actions by maintaining a ready pool of translated device-specific instructions for various network scenarios. When configuration changes are needed, the controller can quickly apply pre-prepared instructions rather than translating from scratch, significantly reducing convergence time while maintaining the ability to handle dynamic workload changes.
Solution Approach 2:
The system implements periodic polling and event-driven update mechanisms that allow the controller to monitor network state changes and apply configurations in discrete, optimized intervals. This periodic action pattern enables the network to remain stable during normal operation while quickly adapting when changes are detected, balancing adaptability with convergence time.
3Productivity
If multiple users share the same switching elements, then resource utilization is improved, but managing user-specific forwarding logic becomes more complex
Solution Approach 1:
The controller implements a universal management platform that handles multiple user-specific network configurations through a single interface. It provides multi-functional capabilities including configuration translation, instruction pushing, state monitoring, and event handling, allowing diverse user requirements to be managed through unified mechanisms rather than separate management systems for each user.
Solution Approach 2:
The controller creates and manages copies of forwarding logic for each user, translating high-level user-specific configurations into device-specific instruction sets. Each user's network logic is copied and adapted to the underlying switching infrastructure, allowing multiple users to have isolated, customized forwarding behavior while sharing the same physical switching elements without direct management complexity at the user level.
Data Source
AI summary
Some embodiments provide a controller for managing several managed switching elements that forward data in a network. The controller includes an interface for receiving input logical control plane data in terms of input events data. The controller includes an input scheduler for (1) categorizing the input events data into different groups based on certain criteria and (2) scheduling supplying of the input event data into a converter based on the groups so that the converter processes a group of input events data together. The controller includes the converter for converting the input logical control plane data to output logical forwarding plane data. The controller includes a network information base (NIB) data structure module for storing the output logical forwarding plane data. The logical forwarding plane data is for subsequent translation into physical control plane data.


