
Open, High-Level language for developing feature-rich
solutions for programmable networking platforms
Networking platforms have steadily become more programmable in response to today’s increasingly complex networks with rapidly changing requirements.
At the same time, there is a recognition that the language used to program them needs to provide a rich set of constructs that balance the need for efficient implementation and high-level abstractions for ease of programming. The result is NPL.
NPL is an open language for use by the community. It is designed to express the behavior of high performance, feature-rich networking platforms. It has sophisticated features that promote:
Customized table pipelines
Intelligent action processing
Parallelism
Advanced logical table capabilities
An integrated instrumentation plane
Simple, intuitive control flow
The Reasons You’ll Love NPL’s Unique Features
Advanced Logical Table Capabilities
• Eliminates need for multiple copies of on-chip databases
• Increases parallelism, reduces latency and power consumption
Function Primitives
• Enables table-independent actions
• Efficient usage of on-chip resources
• Eases development of modular building blocks
Runtime Programmability
• Field upgrades: new functionality without recompiling NPL program
• Provides quick responses to changing operational needs
Strength Based Resolution
• Allows dynamic action prioritization
• Enables high degree of parallelism
• Avoids unnecessary and inefficient usage of tables
Advanced Instrumentation
• Attachment of custom monitors/counters to logical tables
• User Defined Packet and Traffic Monitoring