[논문 리뷰] Network-wide Configuration Synthesis
이 논문은 고수준 전달 요구사항에서 자동으로 정확한 라우터 구성 설정을 생성하는 최초의 시스템인 SyNET을 제안한다. 계층적 Datalog로 라우팅 프로토콜을 모델링하고, 새로운 SMT 기반 합성 알고리즘을 사용하여 50台 이상의 라우터로 구성된 실제 네트워크에서 혼합된 OSPF, BGP 및 정적 라우팅에 대해 효율적으로 구성 설정을 계산한다.
Computer networks are hard to manage. Given a set of high-level requirements (e.g., reachability, security), operators have to manually figure out the individual configuration of potentially hundreds of devices running complex distributed protocols so that they, collectively, compute a compatible forwarding state. Not surprisingly, operators often make mistakes which lead to downtimes. To address this problem, we present a novel synthesis approach that automatically computes correct network configurations that comply with the operator's requirements. We capture the behavior of existing routers along with the distributed protocols they run in stratified Datalog. Our key insight is to reduce the problem of finding correct input configurations to the task of synthesizing inputs for a stratified Datalog program. To solve this synthesis task, we introduce a new algorithm that synthesizes inputs for stratified Datalog programs. This algorithm is applicable beyond the domain of networks. We leverage our synthesis algorithm to construct the first network-wide configuration synthesis system, called SyNET, that support multiple interacting routing protocols (OSPF and BGP) and static routes. We show that our system is practical and can infer correct input configurations, in a reasonable amount time, for networks of realistic size (> 50 routers) that forward packets for multiple traffic classes.
연구 동기 및 목표
- 광범위한 장애를 유발하는 수동 네트워크 구성 오류라는 핵심 과제를 해결하기 위해.
- 고수준 요구사항에서부터 정확하고 종단 간 네트워크 구성 설정을 자동으로 합성하기 위해.
- OSPF, BGP 및 정적 라우팅과 같은 상호작용하는 여러 프로토콜을 포함한 복잡한 실제 네트워크를 지원하기 위해.
- 프로토콜 의미론과 구성 합성 간의 분리가 가능한 일반 목적의 프레임워크를 제공하기 위해.
- 정확성과 호환성을 보장하면서도 50대 이상의 라우터를 포함한 네트워크로도 확장 가능한 합성 기능을 제공하기 위해.
제안 방법
- 안정된 전달 상태를 고정점으로 표현하기 위해 계층적 Datalog를 사용하여 분산 프로토콜과 그 상호작용을 포함한 네트워크 동작을 모델링하기 위해.
- 네트워크 전반의 구성 합성 문제를 계층적 Datalog 프로그램에 대한 입력 합성 문제로 환원하기 위해.
- Datalog 프로그램을 계층으로 분해하고, 표준 SMT 솔버를 사용하여 반복적으로 입력을 합성하기 위해.
- SMT 해결을 활용하여 구성 공간을 탐색하고 사용자가 정의한 요구사항을 만족하는 고정점을 생성하는 입력을 찾기 위해.
- BGP 경로 선택 및 OSPF 최단경로 계산과 같은 복잡한 프로토콜 동작을 표현하기 위해 재귀 규칙과 계층적 부정을 지원하기 위해.
- 합성 파이프라인을 SyNET이라는 완전한 시스템에 통합하여 이질적인 라우팅 환경에서 종단 간 구성 설정을 생성하기 위해.
실험 결과
연구 질문
- RQ1일반 목적의 합성 접근 방식이 고수준 전달 요구사항에서부터 정확한 네트워크 전반의 구성 설정을 자동으로 생성할 수 있는가?
- RQ2여러 라우팅 프로토콜(예: OSPF와 BGP) 간의 상호작용을 통합된 프레임워크에서 형식적으로 기록하고 합성할 수 있는가?
- RQ3혼합 프로토콜 구성이 있는 실제 네트워크 크기(예: 50대 이상의 라우터)로도 구성 합성을 확장하는 것이 가능한가?
- RQ4계층적 Datalog가 종속성이 있는 복잡한 비단조화적 라우팅 동작을 효과적으로 모델링하는 데 사용될 수 있는가?
- RQ5제안된 SMT 기반 합성 알고리즘이 이 분야에서 기존의 심볼릭 실행 또는 반례 유도 접근 방식보다 우월한가?
주요 결과
- SyNET은 50대 이상의 라우터를 포함한 네트워크에서 정확한 구성 설정을 성공적으로 합성하여 실용적인 확장성을 입증하였다.
- 시스템은 OSPF, BGP 및 정적 라우팅의 혼합 구성 설정을 지원하여 로드 밸런싱 및 정책 기반 전달를 가능하게 하였다.
- 합성 알고리즘은 재귀 Datalog 규칙과 계층적 부정을 처리하여 실제 라우팅 프로토콜을 모델링하는 데 필수적인 요소들을 구현하였다.
- 수동 조정을 제거하고 인간의 실수를 최소화함으로써 구성 부담을 줄였다.
- 기존 도구인 Propane 및 Genesis에 비해 동시에 여러 프로토콜을 지원하고 자동으로 정확한 구성 설정을 생성함으로써 성능 면에서 뛰어났다.
- SMT 솔버의 사용으로 거대한 구성 공간을 효율적으로 탐색하면서도 정확성을 보장할 수 있었다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.