Skip to main content

A fast and simple packet creation and parsing lib for Python, currently nothing more then a proof of concept. Inspired by both the python pypacker library and Rust’s pnet,

Design

Built around trying to minimize copying data by taking advantage of memoryviews for fast slicing and zero copy memory operations.

This library takes either a bytes or bytearray object and parses out various protocols in a similar fashion to the Rust library. The resulting packet objects can be inspected, or, in the case its backed by a bytearray, also written to. In this case, the backing memory is immediately updated.

Instead of mapping packet fields to attributes, I expose them instead with a collection-like API. This is my personal taste, as I don’t like how autogenerated attributes end up with akward names that can overlap with Python keywords.

Performance

Initial testing on my machine has shown that this library is about twice as fast at parsing packets, but I haven’t determined yet if this can be attributed to design differences, or if I’m just simply doing less.

TODO

This is one part of a slew of network inspecting code I’m releasing.

  • rich BPF support and mini-language

  • asyncio support for raw sockets and packet capturing

  • asyncio based dhcp server and client library

Release files for pnet 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pnet 0.0.1
File Size Uploaded
pnet-0.0.1.tar.gz 9.6 kB Details

Release files / pnet-0.0.1.tar.gz

Download URL pnet-0.0.1.tar.gz
Size 9.6 kB
Tags Source
SHA-256 checksum
How to use checksums
16bbc1c550c7170b4990a6bee33921c093e1df59a8e57aa0e09d15a76d621a02
BLAKE2b-256 checksum
How to use checksums
c3a326e2a4b1998a76ad846ffcf403f60231adda327412e321a4f535a74dd9c4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.0.1 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page