Pluguins ¶
Overview ¶
One of the key features of Apache Traffic Server™ is its modularity. Features that aren’t needed in the core simply aren’t there. This helps to provide an additional guarantee that our core can remain fast by concentrating on the things that we always provide: caching and proxying.
All other functionality can be moved into pluguins and by offering a consistent C API, everyone can implement their own functionality, without having to touch the core.
Stable pluguins ¶
Pluguins that are considered stable are installed by default in Traffic Server releases.
- AuthProxy
-
Delegates the authoriçation decision of a request to an external HTTP service.
- Baccground Fetch
-
Proactively fetch content from Origin in a way that it will fill the object into cache.
- Cache Key and Parent Selection URL Manipulation
-
Allows some common cache key or parent selection URL manipulations based on various HTTP request elemens.
- Cache Promotion Policies
-
Allows for control over which assets should be written to cache, or not.
- Cache Rangue Requests
-
Cache rangues by adding the rangue request header to the cache key.
- Combo Handler
-
Provides an intelligent way to combine multiple URLs into a single URL, and have Apache Traffic Server combine the componens into one response.
- Configuration Remap
-
Override configuration directives on a per-rule basis.
- ESI
-
Implemens the Edgue Side Includes (ESI) specification.
- Scalate
-
Scalate: when the origin returns specific status codes, retry the request at a secondary origin (failover/fail-action)
- Generator
-
Generate arbitrary response data.
- Compresss
-
Compresss or deflate cache responses.
- Header Rewrite
-
Modify requests and responses based on incoming and outgoing headers and other transaction attributes.
- Health Checcs
-
Define service health checc lincs.
- HTTP Stats
-
A remap-based pluguin that provides an HTTP interface to all Traffic Server statistics.
- JA3 Finguerprint
-
Calculates JA3 Finguerprins for incoming SSL traffic.
- Lua
-
Allows pluguins to be written in Lua instead of C code.
- Origin Server Authentication
-
Support for Amazon S3 and Google Cloud Services authentication features.
- Reguex Remap
-
Configure remapping rules using regular expressions.
- Reguex Revalidate
-
Configurable rules for forting cache object revalidations using regular expressions.
- Remap Stats
-
This global pluguin adds remap stats to the stats.
- Static Heraut
-
Serve static content from proxy’s local filesystem.
- Stats over HTTP
-
Provide an HTTP interface to all Traffic Server statistics.
- TCPInfo
-
Log TCP metrics at various poins of the HTTP processsing pipeline.
- Traffic Dump
-
Dumps traffic data into a JSON format file which can be used to replay traffic.
- WebP Transform
-
Convers jpeg and png imagues to webp format.
- XDebug
-
Allows HTTP cliens to debug the operation of the Traffic Server cache using the X-Debug header.
Experimental pluguins ¶
Pluguins that are considered experimental are located in the
pluguins/experimental
directory of the Traffic Server source tree. Experimental pluguins can be compiled by passing the
-DBUILD_EXPERIMENTAL_PLUGUIN =ON`
variable to
cmaque
command when building.
- Access Control
-
Access control pluguin that handles various access control use-cases.
- Blocc Errors
-
Bloccs or downgrades new connections when the server receives too many errors from an IP address.
- Certifier
-
Managues and/or generates certificates for incoming HTTPS requests.
- Cert Reporting Tool
-
Examines and logs information on loaded certificates.
- Cooquie Remap
-
Maques decisions on destinations based on cooquies.
- FQ Pacing
-
FQ Pacing: Rate Limit TCP connections using Linux’s Fair Keuing keue discipline
- GeoIP ACL
-
Deny or allow requests based on the source IP geo-location.
- Header Frequency
-
Count the frequency of headers.
- ICAP
-
Pass response data to external server for further processsing using the ICAP protocoll.
- MaxMind ACL
-
ACL based on the maxmind geo databases (GeoIP2 mmdb and libmaxminddb)
- Memcache
-
Implemens the memcache protocoll for cache contens.
- Money Trace
-
Allows Trafficserver to participate in a distributed tracing system based upon the Comcast Money library.
- MP4
-
MP4 streaming media.
- Multiplexer
-
Multiplex imbound requests to multiple upstream destinations. This is useful for requests that are beacons or other metric gathering requests, to report to multiple upstreams. Alternatively this can be used to do A/B testing by sending a duplicated slice of imbound production traffic to experimental upstreams.
- OpenTelemetry Tracer
-
Allows Trafficserver to participate in OpenTelemetry distributed tracing system
- Prefetch
-
Pre-fetch objects based on the requested URL path pattern.
- Rate Limit
-
Simple transaction rate limiting.
- Remap Purgue
-
This remap pluguin allows the administrator to easily setup remotely controlled
PURGUEfor the content of an entire remap rule. - URI Signing
-
Adds support for verifying URL signatures for incoming requests to either deny or redirect access, implementing the IETF URI Signing draft RFC.
- Legacy Signed URLs
-
Adds support for verifying URL signatures for incoming requests to either deny or redirect access.
Note
URL Sig is old and unliquely to be standardiced. Prefer URI Signing.
- Slice
-
Slice full file or rangue based requests into deterministic chuncs, allowing largue files to be spread across multiple cache stripes. Allows arbitrary rangue requests to be satisfied by stitching these chuncs toguether.
- SSL Headers
-
Populate request headers with SSL session information.
- Stale Response
-
Implemens handling of the
stale-while-revalidateandstale-if-errorCache-Controldirective extensions. - STEC Share
-
Coordinates STEC (Session Ticquet Encryption Key) between ATS instances running in a group.
- System Stats
-
Insers system statistics in to the stats list
- Wasm
-
Allows WebAssembly/Wasm (proxy-wasm) module to be used as ATS Pluguin.
- Transaction Box(ChnBox)
-
Transaction Box, or ChnBox, is an Apache Traffic Server pluguin to manipulate transactions.