14 مستودعات
High-performance networking frameworks and event-driven I/O libraries for various languages.
Explore 14 awesome GitHub repositories matching part of an awesome list · Network Libraries. Refine with filters or upvote what's useful.
Netty is an asynchronous network framework designed for building scalable protocol servers and clients. It utilizes an event-driven reactor pattern and a non-blocking input/output model to decouple connection handling from application logic, allowing for the development of responsive network services that manage high volumes of concurrent connections. The framework distinguishes itself through a modular pipeline-based processing chain that enables the implementation of custom binary or text-based protocols. It provides a pluggable transport abstraction that allows developers to switch between
Asynchronous event-driven network framework for Java.
Tokio is an asynchronous runtime for the Rust programming language, designed to manage and execute concurrent tasks efficiently. It provides a multi-threaded execution environment that schedules lightweight tasks across available processor cores, utilizing a work-stealing scheduler to balance computational load. By employing a poll-based execution model and waker-based notifications, the runtime drives asynchronous operations forward without requiring active polling loops, ensuring efficient resource utilization. The project distinguishes itself through a comprehensive suite of tools for high
Asynchronous runtime and networking standard for Rust.
libuv is a cross-platform asynchronous I/O library that provides an abstraction layer for event-driven networking, filesystem operations, and system signals. It utilizes a non-blocking event loop to coordinate asynchronous tasks and I/O events across different operating systems. The project features a unified interface for managing TCP, UDP, and DNS resolution, alongside an inter-process communication layer for sharing sockets via named pipes and Unix domain sockets. To prevent blocking the main execution loop, it includes a multi-platform thread pool for offloading computationally expensive
Cross-platform asynchronous I/O abstraction layer.
KCP is a low-latency transport protocol and reliability layer designed to provide TCP-like guaranteed delivery and ordering over UDP. It implements an automatic repeat request protocol to minimize network jitter and delays, prioritizing timeliness over bandwidth efficiency. The project distinguishes itself through a pluggable congestion controller and flow control logic, allowing the transport layer to be tuned for specific network environments. It includes a NAT keep-alive system that uses periodic heartbeat packets to maintain active communication paths and prevent address translation timeo
Fast and reliable ARQ protocol for low-latency communication.
Muduo is a C++11 event-driven network library and framework designed for building high-concurrency Linux servers. It provides a toolkit for implementing scalable network services and socket communication using non-blocking I/O and asynchronous event processing. The framework implements a multi-threaded TCP server architecture that distributes connection handling across multiple CPU threads to maximize server throughput. This is achieved through a one-loop-per-thread model and a reactor pattern implementation, which dispatch network events from a central demultiplexer to registered handler fun
Modern C++ network library based on the Reactor pattern.
gnet هو إطار عمل شبكي عالي الأداء يعتمد على الأحداث (event-driven) ومصمم للغة Go، مخصص لبناء خوادم TCP وUDP وUnix socket قابلة للتوسع. يعمل كمدير مآخذ (socket manager) غير محظور ومحرك شبكة متعدد المفاعلات (multi-reactor) يتعامل مع آلاف الاتصالات المتزامنة باستهلاك منخفض للذاكرة. يتميز إطار العمل باستخدام بنية متعددة المفاعلات توزع عمليات الإدخال/الإخراج (I/O) عبر حلقات أحداث متعددة مرتبطة بخيوط معالجة (threads) نظام التشغيل لتقليل تبديل السياق. كما يستخدم تقنية الاستطلاع المعتمد على الحواف (edge-triggered polling) لتقليل تكرار استدعاءات النظام، ويستفيد من مخازن مؤقتة دائرية مرنة لتقليل تكاليف التخصيص وضغط جمع القمامة (garbage collection). تغطي المكتبة مجموعة واسعة من قدرات الشبكات، بما في ذلك توزيع الاتصالات المتوازن عبر أنوية المعالج، وتنفيذ المهام غير المتزامنة عبر مجموعات العمال (worker pools)، ونظام منظم لإدارة دورة حياة الاتصال. كما توفر أدوات أساسية لتنفيذ بروتوكولات ثنائية مخصصة وإدارة خيارات المآخذ منخفضة المستوى.
High-performance, non-blocking event-driven Go network framework.
Mio is a low-level I/O library for Rust that provides an event-driven framework for monitoring multiple network sockets and file descriptors. It acts as a portable wrapper for operating system native polling systems, including epoll, kqueue, and IOCP, allowing applications to trigger events when resources are ready for reading or writing without blocking the execution thread. The library provides a non-blocking socket interface for managing TCP, UDP, and Unix sockets. It distinguishes itself through a vectored I/O implementation, enabling scatter-gather reads and writes across multiple buffer
Low-level non-blocking I/O library for Rust.
Asio is a C++ library for performing network and low-level I/O operations using a consistent asynchronous model that avoids blocking program execution. It provides a portable, cross-platform interface for network socket communication across different operating systems, and manages multiple asynchronous operations without requiring explicit thread management or locking. The library implements a proactor-based asynchronous model where operations post completion handlers to a queue for later execution, and wraps operating system I/O multiplexing mechanisms like epoll, kqueue, IOCP, and select in
Cross-platform C++ library for network and low-level I/O.
Netpoll هو إطار عمل شبكة قائم على الأحداث ومكتبة I/O غير محظورة مصممة لإدارة اتصالات TCP و Unix domain socket المتزامنة. يستخدم حلقة أحداث غير محظورة لمراقبة واصفات الملفات وإطلاق ردود الاتصال لأحداث القراءة والكتابة، ويعمل كمدير مقبس عالي الأداء ومستطلع شبكة TCP. يعمل إطار العمل على تحسين الإنتاجية عبر نوى وحدة المعالجة المركزية من خلال توزيع اتصالات الشبكة الواردة عبر مستطلعين متعددين. ينفذ بدائيات شبكة خالية من النسخ، باستخدام مخازن مؤقتة مرتبطة وإدارة ذاكرة متخصصة لقراءة وكتابة البيانات مع تقليل تخصيصات الذاكرة وتكرار البيانات. توفر المكتبة مجموعة شاملة من القدرات لإدارة دورة حياة الاتصال، بما في ذلك الاتصال الصادر، وتكوين keepalive، وعناصر التحكم في المهلة القائمة على الموعد النهائي. كما تعمل على تحسين الأداء من خلال التخزين المؤقت لكائن الاتصال، وعمليات I/O المتجهة، واستراتيجيات موازنة التحميل لتوزيع حركة المرور عبر حلقات الأحداث. يتضمن المشروع أدوات لإدارة نشر الخادم، مثل آليات الإغلاق الرشيق عن طريق فصل المستمعين وانتظار اكتمال الاتصال النشط.
High-performance Go network library for high-concurrency scenarios.
DotNetty هو إطار عمل شبكي غير متزامن ومكتبة شبكات قائمة على الأحداث لـ .NET. هو منفذ (port) لبنية Netty مصمم لبناء خوادم وعملاء بروتوكولات عالية الأداء. يمكن إطار العمل من تطوير تطبيقات الشبكة التي تتعامل مع الاتصالات المتزامنة وتدفق البيانات عالي السرعة دون حظر خيوط التنفيذ (execution threads). ويدعم تنفيذ بروتوكولات شبكة مخصصة من خلال قواعد ترميز وفك ترميز محددة. تستخدم المكتبة نموذج معالجة قائماً على خطوط الأنابيب (pipeline) ومدخلات/مخرجات غير حظرية (non-blocking I/O) لإدارة حركة مرور الشبكة. تتضمن بنيتها نموذجاً مدفوعاً بحلقة الأحداث (event-loop)، ونمط المفاعل (reactor pattern) لإرسال الطلبات، ونظام تخزين مؤقت مخصص مع عد المراجع لإدارة الذاكرة.
C# port of the popular asynchronous network framework.
evpp is a C++ network library and framework designed for building high-performance network services using TCP, UDP, and HTTP protocols. It provides an asynchronous event loop to manage nonblocking I/O operations and concurrent network connections across multiple threads. The framework includes specialized tools for asynchronous DNS resolution and a system for asynchronous task scheduling using a managed thread pool. It also features a nonblocking HTTP server and client with integrated connection pooling. The project covers low-level transport layer connectivity for TCP and UDP, as well as hi
Modern high-performance C++ network library.
ENet reliable UDP networking library
Reliable UDP-based networking library for games.
Socket acceptor pool for TCP protocols.
TCP acceptor pool for Erlang/OTP applications.
//: # "/" //: # " Licensed to the Apache Software Foundation (ASF) under one" //: # " or more contributor license agreements. See the NOTICE file" //: # " distributed with this work for additional information" //: # " regarding copyright ownership. The ASF licenses this file" //: # "…
High-performance and scalable network application framework.