Skip to main content

A diameter stack implemented in python

Project description

Python Diameter Stack

This Python package provides tools to create and parse Diameter Messages and AVPs, to communicate with diameter peers using the diameter base protocol and to write diameter applications, as defined in the Diameter Base rfc6733.

The diameter stack supports transports over both TCP and SCTP.

The provided Application and Node implementations handle the majority of the basic protocol-level operations automatically, such as managing peer tables, sending CER/CEA, DWR/DEA and disconnecting with DPR/DPA.

Installation

The latest version can be installed from PyPI as python-diameter:

~# pip install python-diameter

SCTP support provided by an optional depency on pysctp.

Functional overview

The package contains an extensive AVP dictionary and allows constructing AVPs and Diameter messages either manually, or by parsing network-received bytes. Message AVPs can be accessed directly as instance attributes.

The diameter package provides tools for:

Supported applications

The diameter stack has inbuilt support for Diameter Base, Gy, Rf, Ro and Sy applications and a generic implementation of application types that allows working even with unsupported application types.

Supported diameter application commands

The diameter stack provides a Python command class for the following application message types:

Diameter Base Protocol rfc3588, rfc6733

  • Abort-Session
  • Accounting
  • Capabilities-Exchange
  • Device-Watchdog
  • Disconnect-PeerConnection
  • Re-Auth
  • Session-Termination

Diameter Mobile IPv4 rfc4004

  • AA-Mobile-Node
  • Home-Agent-MIP

Diameter Network Access Server rfc4005, rfc7155

  • AA
  • Abort-Session
  • Accounting
  • Re-Auth
  • Session-Termination

Diameter Credit Control rf4006, rfc6733, 3GPP TS 32.299

  • Credit-Control, with full 3GPP specification support

Diameter Extensible Authentication Protocol (EAP) rfc4072

  • Diameter-EAP

Diameter Policy and charging control 3GPP TS 29.219

  • Spending-Limit
  • Spending-Status-Notification

The stack includes also a generic fallback Python class for every other message.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python_diameter-0.7.3.tar.gz (237.9 kB view details)

Uploaded Source

Built Distribution

python_diameter-0.7.3-py3-none-any.whl (220.4 kB view details)

Uploaded Python 3

File details

Details for the file python_diameter-0.7.3.tar.gz.

File metadata

  • Download URL: python_diameter-0.7.3.tar.gz
  • Upload date:
  • Size: 237.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for python_diameter-0.7.3.tar.gz
Algorithm Hash digest
SHA256 af6516d7e0842db9ab96c1120055d92bfd819c640d1a4b01e5e1b6607745850f
MD5 6b251164d7d7664af35aaad91e4cbd8d
BLAKE2b-256 f169478f4f62eaa47883c518c224041d5ece50e68d7d7e74b358732f698930a2

See more details on using hashes here.

File details

Details for the file python_diameter-0.7.3-py3-none-any.whl.

File metadata

File hashes

Hashes for python_diameter-0.7.3-py3-none-any.whl
Algorithm Hash digest
SHA256 15f4e4323b0fd512121c5fc74ea01f81f3e091a46f9a1b987924e86682916ee9
MD5 a515e8d0769d3d7edeb0f08d1fe71f42
BLAKE2b-256 fce56dd958bd9b593dbb6bb791d26c585b2874abe74446795270c9572b414e26

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page