8 مستودعات
Building both client and server applications that communicate over TCP and UDP using sockets.
Distinct from TCP Socket Programming: Distinct from TCP Socket Programming: covers both TCP and UDP client-server development, not just TCP socket lifecycle.
Explore 8 awesome GitHub repositories matching networking & communication · Client-Server Implementations. Refine with filters or upvote what's useful.
This is an open-source, crowd-sourced wiki textbook that teaches Linux system programming in C. It covers the core operating system concepts of process management through the fork-exec-wait model, dynamic memory allocation using implicit free list heap allocators, inode-based file systems, inter-process communication via pipes and shared memory, POSIX threads with synchronization primitives, signal-based asynchronous notification, virtual memory with page table translation, and runtime diagnostics using Valgrind and GDB. The textbook distinguishes itself by providing practical, implementation
Provides tutorials on building TCP and UDP client-server applications with sockets and epoll.
Arduino CLI هي واجهة سطر أوامر لتجميع ورفع وإدارة المكتبات ونواة اللوحات للأجهزة المتوافقة مع Arduino. تعمل كمدير لسلسلة أدوات المتحكمات الدقيقة وأداة برمجة للأجهزة، حيث توفر أدوات لاكتشاف وتثبيت تعريفات المنصات والمجمعات المطلوبة لمختلف معماريات الأجهزة. يتميز المشروع بخادم تطوير يدعم RPC يسمح للبرامج الخارجية بتشغيل عمليات الأداة الداخلية وإدارة سير عمل الإلكترونيات المؤتمت برمجياً. كما يتضمن مصحح أخطاء للأجهزة تفاعلي لاستكشاف الأخطاء وإصلاحها في الوقت الفعلي للكود الذي يعمل على الأجهزة الفعلية. تغطي الأداة إدارة اللوحات والمكتبات، بما في ذلك تحليل التبعيات، ومزامنة الفهارس، ودمج مستودعات الطرف الثالث. تشمل قدرات البناء والنشر تجميع الكود المصدري، ورفع الملفات الثنائية، وتثبيت محمل الإقلاع (bootloader)، مدعومة بمراقبة مخرجات المنفذ التسلسلي واكتشاف الأجهزة المتصلة. توفر الأداة ميزة الإكمال التلقائي في الصدفة (shell completion) وتدير إعدادات البيئة من خلال نظام تهيئة يعتمد على الملفات.
Implements a gRPC server that allows the CLI to operate as a background process for handling remote requests.
AndroRAT هي أداة إدارة عن بعد وإطار عمل مراقبة لأجهزة Android. تتكون من خادم أوامر قائم على Python وعميل Java ينشئ اتصالات مقبس (socket) مستمرة لتمكين التحكم عن بعد واستخراج البيانات. يتضمن المشروع مولد حمولة لإنشاء حزم تثبيت موقعة مهيأة بعناوين شبكة ومنافذ محددة للنشر. بمجرد تنشيطه، يوفر إطار العمل واجهة مركزية لإدارة أجهزة متعددة متصلة، مع الحفاظ على الوصول عبر خدمة خلفية تعيد التشغيل عند إقلاع الجهاز. يغطي النظام الإدارة عن بعد من خلال تنفيذ shell تفاعلي ونقل بيانات النظام. كما يوفر قدرات مراقبة لاسترداد سجلات الاتصالات، واستخراج معلومات الجهاز وبيانات الموقع، والتقاط الصوت والفيديو والصور عن بعد.
Implements persistent TCP socket connections for bidirectional communication between the Python server and Java client.
هذا المشروع عبارة عن إطار عمل gRPC لـ Node.js يُستخدم لتنفيذ استدعاءات الإجراءات البعيدة عالية الأداء. يوفر مكتبة اتصال بين العميل والخادم تستخدم HTTP/2 للبث، وتعدد الإرسال، والتأطير الثنائي، إلى جانب تنفيذ مخازن البروتوكول (protocol buffers) لتعريف البيانات المنظمة وإنشاء كعب الخدمة (service stubs). يتضمن إطار العمل سلسلة أدوات لتجميع ملفات مخازن البروتوكول إلى كائنات خاصة باللغة ويدعم إنشاء تعريفات نوع TypeScript ثابتة للتحقق من الكائنات في وقت التشغيل. تغطي المكتبة شبكات الأنظمة الموزعة واتصالات الخدمات المصغرة، بما في ذلك تشفير SSL/TLS، وضغط الرسائل، وموازنة التحميل. تدير دورة حياة الطلب من خلال المواعيد النهائية، وإعادة المحاولات، واستعادة الاتصال، وإلغاء المكالمات. تشمل الإمكانيات الإضافية بث البيانات ثنائي الاتجاه، وانعكاس الخدمة للاكتشاف البرمجي، وخدمات فحص الصحة القياسية.
Provides the core server implementation to host gRPC services and respond to remote procedure calls.
Goravel هو هيكل تطوير متكامل وإطار عمل لبناء تطبيقات الويب، وREST APIs، وخدمات gRPC باستخدام لغة البرمجة Go. ينفذ معمارية النموذج-العرض-المتحكم (MVC) ويوفر مجموعة أدوات شاملة لخوادم وعملاء استدعاء الإجراءات البعيدة (RPC) عالية الأداء. يتميز إطار العمل بنظامه البيئي المتكامل الواسع، والذي يتضمن أداة تعيين كائنات علائقية (ORM) سلسة لإدارة قواعد البيانات ومجموعة أدوات واجهة سطر أوامر مخصصة لأتمتة الإدارة وهيكلة المشاريع. يتميز بتجريد الخدمة القائم على المحركات (Driver-based) الذي يسمح للمطورين بتبديل التخزين، وذاكرة التخزين المؤقت، وخلفيات الجلسات دون تغيير منطق التطبيق. تغطي المنصة سطحاً واسعاً من قدرات التطبيقات، بما في ذلك معالجة المهام غير المتزامنة مع الطوابير الموزعة، وإدارة الهوية الآمنة عبر المصادقة القائمة على الرموز (Tokens)، وطبقة أمان قوية مع التشفير والتحكم في الوصول. كما توفر أدوات لتوطين المحتوى، وعرض القوالب، وبنية تحتية للاختبار المؤتمت مع محاكاة التبعيات.
Implements a high-performance gRPC server that handles remote procedure calls through controllers and registered routes.
هذا المشروع عبارة عن قاعدة تعليمية وتطبيق شبكي غير متزامن لخادم وعميل متوافق مع Redis. يعمل كعرض توضيحي لوقت تشغيل Tokio غير المتزامن، ويوفر مخزناً للمفاتيح والقيم عبر الشبكة ونظام مراسلة. يطبق المشروع بروتوكول تسلسل Redis (RESP) للتواصل بين العملاء والخوادم باستخدام تدفقات البايت. ويتميز بنظام مراسلة للنشر والاشتراك (pub-sub) يسمح للعملاء بالاشتراك في قنوات مسماة وتلقي تحديثات في الوقت الفعلي. يغطي التطبيق برمجة الشبكات غير المتزامنة، بما في ذلك معالجة اتصالات TCP المتزامنة وتحليل إطارات تدفق البايت. كما يتضمن إدارة حركة المرور من خلال تحديد الاتصالات وعملية لإيقاف الخادم بشكل آمن.
Provides a basic implementation of a Redis-compatible server and client for educational purposes.
Redka هو مخزن مفتاح-قيمة مدعوم بـ SQL ينفذ واجهة متوافقة مع Redis. يعمل كجسر بيانات علائقي، حيث يترجم أوامر البروتوكول غير العلائقية إلى استعلامات علائقية لتوفير الاستمرارية ومعاملات ACID باستخدام قاعدة بيانات SQL. يسمح النظام باستبطان البيانات العلائقية من خلال كشف بيانات مفتاح-قيمة الداخلية كعرض SQL، مما يتيح الاستعلام المباشر والتحليل عبر بناء الجملة العلائقي. يمكن نشره كخادم شبكة مستقل أو كمكتبة مضمنة داخل تطبيق Go. يدعم المشروع مجموعة متنوعة من هياكل البيانات، بما في ذلك السلاسل، والقوائم، والهاش، والمجموعات غير المرتبة، والمجموعات المرتبة. يوفر قدرات لإدارة دورة حياة المفتاح مع بيانات وصفية لوقت البقاء (TTL)، وعمليات رقمية ذرية، وجبر المجموعات. لإدارة الأداء والوصول، يتضمن وضع تخزين في الذاكرة ووضع اتصال للقراءة فقط.
Implements a Redis-compatible API interface that translates non-relational commands into relational SQL queries.
هذا المشروع هو تطبيق .NET لإطار عمل gRPC، يوفر نظاماً لتنفيذ الوظائف على خوادم بعيدة كما لو كانت استدعاءات محلية. يعمل كإطار عمل لاستدعاء الإجراءات البعيدة (RPC) عالي الأداء يستخدم HTTP/2 لاتصال الخدمة وبروتوكولات الاتصال الثنائية لضمان تبادل فعال للبيانات. يتضمن التطبيق وكيل gRPC-Web، الذي يعمل كطبقة ترجمة لتمكين التطبيقات القائمة على المتصفح من التواصل مع خدمات gRPC من خلال طلبات متوافقة مع الويب. كما يدعم إنشاء شبكات خدمة HTTP/2 لربط الخدمات المصغرة الموزعة بزمن انتقال منخفض. يغطي إطار العمل مجموعة واسعة من القدرات، بما في ذلك التسلسل الثنائي عبر Protobuf، وتوليد العقود المكتوبة بقوة، ودعم أنماط RPC الأحادية والمتدفقة. ويوفر ميزات استضافة خادم وإدارة عميل شاملة، إلى جانب أدوات إدارة حركة المرور مثل موازنة التحميل من جانب العميل وإعادة محاولة الاستدعاء التلقائية. يتم توفير دعم تشغيلي إضافي من خلال أمان نقل TLS، والتحكم في الوصول على مستوى الطريقة، وأدوات المراقبة بما في ذلك مراقبة صحة الخدمة وتسجيل التشخيص.
Implements high-performance servers that handle remote procedure calls over a binary protocol.