Jianmin Liu, Li Chen, Dan Li, Yukai Miao
8 min
Network configuration management is a critical yet error-prone task in large-scale networking. Current automation tools often require significant human effort to draft templates or write domain-specific languages. The authors identify a core missing capability: Example Following and Generalization (EFG)—the ability to identify configuration snippets in manuals and apply them to different network topologies.
To automate EFG, the paper introduces CEGS (Configuration Example Generalizing Synthesizer). The system employs a three-phase workflow:
Evaluations on real-world topologies (up to 1,094 routers) across various BGP, OSPF, and static routing intents demonstrate that CEGS can synthesize correct configurations entirely without human intervention. In head-to-head comparisons, CEGS outperforms state-of-the-art LLM-based synthesizers like COSYNTH, which often fail to produce correct configurations even with hundreds of iterations. CEGS achieves this in significantly less time (often under two minutes for complex intents), whereas competing methods may take over an hour and still require manual expert intervention.
By successfully integrating formal verification with LLM-based template generation and GNN-based retrieval, CEGS bridges the gap between high-level operational intent and low-level device configuration. It reduces the dependency on expert knowledge, lowers the barrier to entry for network-wide automation, and provides a scalable, efficient path to error-free network operations in large, dynamic environments.
Sam: That separation is central. Think of a template as device settings with selected blanks. A language model writes the structure; a formal synthesizer fills those blanks by solving mathematical constraints. CEGS uses NetComplete for that final job, rather than claiming a new solver.
Alex: Adapting an example sounds harder than retrieving it. A router’s role can depend on its neighbors. How does the system capture that?
Sam: It starts with an intent: a stated goal for network behavior. CEGS combines that goal with the topology, meaning the devices and their links. Each device gets a role describing its part in achieving the goal. The authors call this representation an intent graph.
Alex: That gives it both the wiring and the purpose. How does it use those together to choose an example?
Sam: First, it filters examples by similarity between their goal descriptions and the user’s goal. Then a graph neural network compares the remaining intent graphs. That’s a model which learns representations from connected nodes and their neighbors. The chosen example should match both the goal and relevant network structure.
Alex: Give me a case where the neighbors change which piece of the example should be reused.
Sam: In the paper’s path-preference example, traffic should prefer one route over another. Two routers in the manual both act as relays, but they connect to different combinations of devices. Those different neighborhoods affect their routing policies. A target relay therefore matches the example relay with the more similar neighborhood, not just any relay.
Alex: That explains why matching role labels alone can be ambiguous. Once the devices are matched, what prevents the model from producing plausible but unusable settings?
Sam: Several checks intervene. A syntax checker catches invalid configuration language. A local checker compares each device’s settings against the supplied topology and descriptions, including interfaces and neighbors. A global checker asks whether the policy templates across devices can jointly achieve the intended behavior.
Alex: A template still contains blanks. What does it mean to check a global policy before those blanks have values?
Sam: The global checker asks whether values exist that would make the templates satisfy a mathematical version of the goal. If not, it sends localized error feedback to the language model. After templates for all goals are checked and merged, the final solver chooses values that satisfy those goals together.
Alex: Let’s separate the architectural argument from performance. What did they actually test, and against what?
Sam: They generated Cisco router configurations using real-world network topologies and several routing-goal types. The largest network was constructed by merging smaller sampled topologies. Their example library contained three hundred examples from Cisco documentation and a cloud service provider. They checked resulting traffic paths using Batfish, a network-analysis tool.
Alex: The headline speed comparison could depend heavily on the task. Where was the clearest advantage?
Sam: Against COSYNTH, they tested star-shaped networks with no-transit goals: different providers must not communicate through the customer’s network, while retaining customer connectivity. CEGS finished within two minutes without human correction. COSYNTH failed within the automatic iteration limit and needed expert corrections; even with experts involved, it was more than thirty times slower.
Alex: That establishes an advantage on those particular tasks, not a universal speed ratio. How did the harder, larger cases behave?
Sam: Runtime grew with network size and policy complexity. For the largest network, the most demanding reported path-preference case took about twenty-five minutes. Its output satisfied the specified goals in the Batfish check. So “under two minutes” describes the small no-transit comparison, not every workload.
Alex: Did they test whether the individual parts mattered, rather than merely showing that the whole pipeline works?
Sam: They removed components in an ablation study. Without example retrieval and device matching, the system failed within the iteration limit. Removing any of the verification components also led to failure within that limit. Removing the final solver increased the iterations needed, supporting the decision not to make the language model choose policy values.
Alex: Now the correctness boundary. A solver can satisfy the wrong mathematical goal perfectly. How did they handle the translation from the user’s words?
Sam: They used GPT-4o to translate goals into formal specifications. It translated all thirteen hundred and fifty evaluation intents correctly against their expected outputs. But the authors explicitly say that perfect accuracy is specific to their dataset. Correct configurations remain conditional on correct translation.
Alex: And “without human involvement” describes running the prepared system, not building it from scratch?
Sam: Yes. Parsed topology diagrams received one-time manual proofreading, and experts supplied labeled graph examples for training. There are also coverage limits: CEGS needs a relevant documented example, and its goals must be supported by NetComplete. Those boundaries make this convincing evidence of feasibility within the tested setting, not unrestricted automation.
Alex: Who should read the full paper, and where should they start?
Sam: Researchers in network configuration synthesis should start with the design subsections on template verification and template filling. Then read the baseline comparisons and ablation study. Researchers building language-model systems should look closely at how localized feedback connects generation to checking. For everyone else, remember this: let the model adapt the example, and let the solver choose the policy values.
Alex: Keep that division of labor in mind.