Skip to content

Romero027/sysnet-reading-list

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

115 Commits
 
 

Repository files navigation

System/Networking Paper Reading List

Index

Reading List

Middleboxs and NFV

Network Abstraction / Language

  • Chimera: A Declarative Language for Streaming Network Traffic Analysis, Security '12
    • A declarative query language for expressing complex, stateful network traffic analysis policies (e.g., multi-step attack detection) over streaming packet data, compiled into efficient automata for real-time execution.
    • Enables analysts to specify "what" to detect rather than "how," supporting composition of temporal and cross-flow correlations that are error-prone to implement imperatively.
  • Abstractions for network update, SIGCOMM '12
    • Introduces consistent network update abstractions (per-packet and per-flow consistency) that guarantee network-wide policy invariants are maintained during SDN rule transitions, preventing transient violations.
    • Uses a two-phase update mechanism: new rules are installed across all switches before traffic is shifted, ensuring every packet sees either the old or new policy, never a mix.
  • Compiling Path Queries, NSDI '16
    • A regular-expression-based query language for monitoring network paths taken by packets, compiled into switch-level rules that encode path history via packet tagging.
    • The compiler uses determinization and tag minimization to generate efficient forwarding rules for runtime path-level monitoring with low overhead.
  • SNAP: Stateful Network-Wide Abstractions for Packet Processing, SIGCOMM '16
    • Provides a "one-big-switch" programming abstraction with mutable per-flow state, letting programmers write stateful packet-processing programs as if the entire network were a single switch.
    • The compiler handles state placement and program partitioning across physical switches, bridging the global abstraction and the distributed reality of limited-resource devices.
  • mOS: A Reusable Networking Stack for Flow Monitoring Middleboxes, NSDI'17
    • A reusable, event-driven monitoring stack exposing flow-level abstractions (TCP state events, reassembled bytestreams) so middlebox developers need not re-implement TCP reconstruction.
    • Provides a monitoring socket API with per-flow event callbacks, enabling IDS, proxy, and load balancer applications to be written concisely on a common substrate.
  • Quantitative Network Monitoring with NetQRE, SIGCOMM '17
    • Introduces Quantitative Regular Expressions for networking (NetQRE), a declarative language for quantitative monitoring queries (e.g., traffic entropy, SYN-flood ratios) that go beyond boolean pattern matching.
    • The compiler generates streaming algorithms from NetQRE programs with formal worst-case performance guarantees, bridging expressive queries and line-rate processing.
  • Language-Directed Hardware Design for Network Performance Monitoring, SIGCOMM '17
    • Proposes Marple, a SQL-like query language for performance monitoring (e.g., per-flow latency, TCP incast detection) that compiles to programmable switch hardware with key-value store augmented pipelines.
    • Key insight: co-designing the language and hardware -- the language restricts queries to those efficiently implementable in hardware, while the hardware is designed to support the language's linear-in-state operations.
  • Sonata: query-driven streaming network telemetry, SIGCOMM '18
    • A declarative query interface for telemetry that automatically partitions execution between programmable switches (for early data reduction) and streaming processors (for complex analysis), reducing data volume sent to the backend.
  • Lyra: A Cross-Platform Language and Compiler for Data Plane Programming on Heterogeneous ASICs, SIGCOMM '20
    • A hardware-independent language and compiler for data plane programming that abstracts away differences between heterogeneous switch ASICs, enabling a single program to be compiled to multiple backend targets.
  • Lucid: a language for control in the data plane, SIGCOMM '21
    • A DSL for writing event-driven control programs that execute entirely within the switch data plane, enabling reactive control logic (e.g., congestion response, failure detection) at data-plane speed without controller round-trips.
  • Programming Network Stack for Middleboxes with Rubik, NSDI '21
    • Designed a language for programming middleboxes with an emphasis on supporting various transport protocols and flexible network stack hierarchy.
  • SwiSh: Distributed Shared State Abstractions for Programmable Switches, NSDI '22
    • Provides shared state abstractions (registers, counters, tables) across a network of programmable switches with configurable consistency models, letting developers write programs as if operating on a single switch.
  • NetRPC: Enabling In-Network Computation in Remote Procedure Calls, NSDI '23
    • Enables programmable switches to intercept and process RPC messages (e.g., aggregation, caching) by handling the mismatch between variable-length RPC serialization formats and fixed-pipeline switch hardware.
  • ClickINC: In-network Computing as a Service in Heterogeneous Programmable Data-center Networks, SIGCOMM '23
    • A Click-inspired modular framework for in-network computing that provides a unified abstraction across heterogeneous programmable devices (SmartNICs, switches, FPGAs) with automatic partitioning and placement.

eBPF and XDP (See Also awesome-ebpf)

Transport Protocol

Microservice and Service Mesh

Network Stack and RPC

Workload Interference

Network Architecture

  • Architectural considerations for a new generation of protocols, SIGCOMM CCR '90
    • Clark's seminal paper identifying key design principles for protocol architecture, including the end-to-end argument, fate-sharing, and the importance of placing functionality at the right layer.
  • A Data-Oriented (and Beyond) Network Architecture, SIGCOMM '07
    • Proposes DONA, a clean-slate architecture that replaces DNS with flat, self-certifying names and in-network resolution, enabling data-centric rather than host-centric networking.
  • Networking named content, CoNEXT '12
    • Introduces Content-Centric Networking (CCN/NDN), where content is addressed by name rather than location, with in-network caching and request aggregation as first-class primitives.
  • XIA: Efficient Support for Evolvable Internetworking, NSDI '12
    • An expressive internet architecture that supports multiple principal types (hosts, services, content) with fallback paths, enabling incremental deployment of new network abstractions.
  • Serval: An End-Host Stack for Service-Centric Networking, NSDI '12
    • A network stack that introduces a service-level abstraction between transport and application layers, enabling service discovery, migration, and load balancing independently of IP addresses.
  • Enabling a Permanent Revolution in Internet Architecture, SIGCOMM '19
    • Argues for architectural pluralism: designing the Internet to support multiple co-existing architectures rather than a single universal design, with mechanisms for graceful evolution.

Container

About

This repository contains a list of papers on various topics (that I am working/worked on) in the system and networking area.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors