9 Repos
Implementations of binary formats for encoding data structures for efficient network transmission.
Distinct from Network Protocol Implementations: Focuses on the serialization format (Erlang Term Format) rather than the general network transport protocol.
Explore 9 awesome GitHub repositories matching networking & communication · Binary Serialization Protocols. Refine with filters or upvote what's useful.
Tars is a distributed systems platform that provides a high-performance remote procedure call (RPC) framework, service discovery, and a centralized administration platform for building and managing microservice-based applications. At its core, it offers a custom binary protocol for efficient serialization and communication between services, along with a name service that dynamically resolves service endpoints for RPC routing. The platform distinguishes itself by supporting multi-language microservice development, enabling services to be written in C++, Java, Node.js, PHP, and Go using a share
Implements a custom binary protocol for efficient serialization and low-latency communication between services.
MobileIMSDK is an open-source instant messaging framework that provides reliable real-time message delivery across iOS, Android, Java, HarmonyOS, and web platforms. At its core, it offers a unified communication layer that transparently supports UDP, TCP, and WebSocket transports, enabling developers to send and receive messages without managing protocol differences or connection state. The framework includes an automatic reconnection engine that detects network outages and restores connections without manual intervention, with built-in message retransmission and deduplication to guarantee exa
Encodes messages into a compact binary format to minimize bandwidth and parsing overhead on mobile and embedded clients.
nghttp2 ist eine Suite von Low-Level-C-Bibliotheken und Tools für die Implementierung des HTTP/2-Protokolls. Sie bietet eine speichereffiziente Implementierung der Kernlogik des Protokolls, einschließlich Framing, Stream-Multiplexing und Flusskontrolle. Das Projekt enthält eine dedizierte Bibliothek für HPACK-Header-Kompression und -Dekompression zur Reduzierung der Netzwerkbandbreite. Zudem bietet es ein Toolset zur Analyse des Netzwerkverkehrs und zum Benchmarking der Serverleistung, einschließlich Messungen von Durchsatz und Latenz. Die breiteren Funktionen decken die Protokollimplementierung und das Traffic-Management ab, einschließlich ALPN-Verbindungsaushandlung, Anforderungspriorisierung und Validierung von Header-Komponenten. Die Bibliothek unterstützt benutzerdefinierte Protokollerweiterungen über ein Callback-basiertes Ereignissystem und enthält Dienstprogramme für Speicherverwaltung und Fehlercode-Übersetzung. Das Projekt umfasst Build-Unterstützung und Konfigurationsskripte für das Cross-Compiling von Binärdateien für die Android-Plattform.
Implements the binary wire format serialization required for HTTP/2 framing and network transmission.
This is a Go client library and protocol implementation for interacting with message brokers using the AMQP 0.9.1 standard. It serves as an asynchronous messaging toolkit and message queue client for implementing producer and consumer patterns. The library provides a programmatic interface for managing the full message lifecycle, including publishing, consumption, and delivery acknowledgments. It supports reliable delivery mechanisms such as publishing confirmations and atomic transactions. The project covers the administration of routing topologies through the declaration and binding of que
Encapsulates AMQP messages into binary frames for efficient transmission over TCP.
php-amqplib ist eine PHP-Bibliothek, die das AMQP-Protokoll implementiert, um die Kommunikation zwischen Anwendungen und Message-Brokern zu ermöglichen. Sie bietet die notwendigen Tools zur Integration von PHP-Anwendungen mit RabbitMQ für das Senden und Empfangen von Nachrichten über entkoppelte Dienste hinweg. Die Bibliothek unterstützt ein breites Spektrum an Messaging-Mustern, einschließlich asynchroner Aufgabenverarbeitung, ereignisgesteuerter Architekturen und Remote Procedure Calls (RPC) unter Verwendung von Korrelations-IDs. Sie verwaltet den gesamten Nachrichtenlebenszyklus durch Publishing, Queue-Deklaration und flexible Konsummodelle unter Verwendung von entweder Push-basierten Abonnements oder Pull-basiertem Polling. Das Projekt deckt Routing- und Topologie-Management über Exchange-Bindings ab und bietet Zuverlässigkeitsfunktionen wie dauerhafte Queues, persistentes Publishing und explizite Nachrichtenbestätigungen. Zudem enthält es Traffic-Management-Funktionen wie die Begrenzung von Message-Prefetch und virtuelles Channel-Multiplexing zur Optimierung der Ressourcennutzung. Verbindungsstabilität wird durch Multi-Host-Unterstützung und signalgesteuertes Heartbeat-Management gehandhabt.
Translates high-level message objects into binary frames for efficient network transmission via the AMQP protocol.
Chrono is a Rust date and time library used for managing calendar dates, clock times, and timezone conversions. It functions as a high-precision timestamp tool and temporal data serializer for converting date and time objects into structured formats. The library includes a timezone conversion engine to translate timestamps between different geographical zones and manage local time configurations. Its broader capabilities cover date string formatting, high-precision timing, and the serialization of temporal data for database storage or network transmission.
Implements serialization traits to convert temporal objects into structured formats for network or database storage.
This project provides the formal network protocol standards and technical specifications for HTTP/2. It defines the requirements for binary framing structures, the HPACK compression standard for header fields, and the general behaviors necessary to ensure consistent data exchange and interoperability between network clients and servers. The specification covers the mechanisms for binary frame multiplexing and the HPACK standard to reduce network bandwidth and latency. It details the rules for session establishment, including connection preface handshaking and protocol negotiation. The projec
Defines the binary frame structures essential for managing streams, flow control, and priority.
pypush is a Python client library and programmatic interface for the Apple Push Notification service. It provides the necessary tools to send and receive push notification messages and functions as an iMessage client implementation. The library enables the registration of devices with Apple services to receive push notifications and interact with internal application interfaces. It achieves this by emulating the handshake and identity of physical Apple devices to authenticate with proprietary push notification servers. The system manages communication through binary frame serialization, sess
Encodes and decodes custom binary packets to match the data structures expected by internal Apple APIs.
Dieses Repository dient als strukturierter Lehrplan und Übungsplattform für Software Engineering und bietet technische Spezifikationen und architektonische Anforderungen für den Aufbau komplexer, datenintensiver Webanwendungen. Es wurde entwickelt, um Entwickler durch die End-to-End-Implementierung von Full-Stack-Systemen zu führen, wobei der Schwerpunkt auf der praktischen Anwendung fortgeschrittener Engineering-Konzepte liegt. Das Projekt zeichnet sich dadurch aus, dass es kuratierte Projektziele bietet, die die Integration verschiedener Technologien erfordern, wie z. B. die Anbindung externer KI-Dienste, die Verwaltung sicherer Cross-Chain-Token-Verteilungen und die Entwicklung leistungsstarker Handelssysteme. Diese Spezifikationen fordern Entwickler heraus, die Synchronisation von Zuständen in Echtzeit und die Koordination verteilter Komponenten zu meistern. Der Lehrplan deckt ein breites Spektrum an Fähigkeiten ab, einschließlich der Implementierung socketbasierter Kommunikation für Multiplayer-Umgebungen, der Durchsetzung von Zugriffskontrollrichtlinien und der Verwendung von Message Queuing für die asynchrone Aufgabenverarbeitung. Er adressiert zudem die Anforderungen an eine effiziente Datenserialisierung und Service-Routing, um eine zuverlässige Systemleistung zu gewährleisten.
Implements binary serialization protocols to optimize network latency and payload size for distributed system communication.