Skip to content

Glossary

This document defines main terms used in NetPulse system.

Core Concepts

API Key

Key used for authentication and authorization to access NetPulse API, passed through HTTP header X-API-KEY.

Controller

Core component of NetPulse, provides RESTful API interface, responsible for receiving requests, validating API keys, dispatching tasks to queues.

Worker

Process that executes specific network device operations, including: - Node Worker: Node worker process, manages device connections - Fifo Worker: FIFO queue worker process - Pinned Worker: Device-bound worker process, supports connection reuse

Queue

Data structure for storing pending tasks, supports two strategies: - FIFO Queue: First-In-First-Out, suitable for one-time operations - Pinned Queue: Device-bound, supports connection reuse

Driver

Component for connecting and managing specific types of network devices: - Netmiko: Universal SSH driver - NAPALM: Cross-vendor standardized driver - PyEAPI: Arista-specific driver

Scheduler

Component for managing task scheduling, supports: - least_load: Least load scheduling - load_weighted_random: Load weighted random scheduling

Plugin

Component for extending NetPulse functionality, including: - Driver plugins: Support new device types - Template plugins: Custom template engines - Scheduler plugins: Custom task scheduling - Webhook plugins: Event notifications

Template

Template files for generating configuration or parsing output: - Jinja2: Configuration template engine - TextFSM: Text parsing template - TTP: Configuration parsing template

Long Connection

Maintains persistent connection with network devices, reduces connection establishment time, improves command execution efficiency.

Job

Specific operation executed in NetPulse, contains task ID, status, parameters, results, and other information.

Technical Terms

Redis

In-memory database, used for task queues and state storage.

RESTful API

API design conforming to REST architecture style, uses standard HTTP methods.

SSH

Secure Shell protocol, used for remote connection to network devices.

TTL

Time To Live for connections or cache, unit: seconds.

Webhook

Event notification mechanism, sends notifications when tasks complete or status changes.