awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
skywind3000 avatar

skywind3000/kcp

0
View on GitHub↗
16,786 stars·2,615 forks·C·MIT·25 views

Kcp

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 timeouts.

The protocol covers broad networking capabilities including stream multiplexing, packet fragmentation and merging, and session identification via conversation identifiers. It also provides tools for network resilience testing through the simulation of packet loss and variable transmission delays.

The implementation is written in C and supports custom memory allocation for application-level memory management.

Features

  • Low-Latency Data Transmission - Provides a low-latency transport protocol using ARQ over UDP to minimize network delays and jitter.
  • UDP Transport Implementations - Implements a custom reliable transport protocol over UDP designed for low-latency and guaranteed delivery.
  • Flow Control Mechanisms - Provides a pluggable mechanism to replace flow control logic and manage throughput without modifying the core protocol.
  • Keep-Alive Signaling - Implements a keep-alive signaling system that sends periodic heartbeats to prevent UDP NAT translation timeouts.
  • NAT Keep-Alive Signaling - Sends periodic heartbeat packets over UDP to prevent address translation timeouts and keep communication paths active.
  • Network Protocol Implementations - Implements an ARQ-based network protocol to ensure reliable data transmission over unreliable transports.
  • Network Reliability - Ensures guaranteed data delivery and connection stability over unreliable network conditions.
  • Network Transport Protocols - Implements a specialized network transport protocol prioritizing timeliness for fast-action games and streaming.
  • Congestion Controllers - Provides a pluggable congestion controller to dynamically adjust transmission rates based on network feedback.
  • Retransmission Mechanisms - Provides an automatic repeat request mechanism for tracking and recovering lost packets to ensure reliability.
  • Adaptive Retransmission Triggers - Implements adaptive timeout calculations that dynamically adjust retransmission triggers to minimize network jitter.
  • Pluggable Congestion Controllers - Allows swapping congestion control algorithms via a pluggable interface to optimize for specific network environments.
  • Transmission Window Buffering - Manages transmission throughput and memory usage via configurable window-based buffering for send and receive queues.
  • Session Identifiers - Uses unique conversation identifiers in packet headers to route data to session objects without formal handshakes.
  • Data Throughput Optimizers - Adjusts window sizes and flow control parameters to minimize round trip time and accelerate data delivery.
  • High-Fidelity Streaming - Optimizes data delivery to decrease video playback interruptions and buffering for high-performance streaming.
  • Fallback Mechanisms - Provides automated strategies to switch between UDP and TCP transport layers to ensure service availability.
  • Connection Multiplexing - Bundles multiple reliable and raw data streams over a single physical connection using channel identifiers.
  • Immediate Acknowledgment Modes - Improves latency for time-sensitive applications by bypassing congestion control algorithms and allowing immediate acknowledgments.
  • Packet Fragmentation and Merging - Splits large data blocks into smaller units and merges them based on a configurable maximum transmission unit.
  • Packet Constraint Configurations - Sets maximum transmission units and window sizes for sending and receiving packets to optimize network throughput.
  • Game State Synchronization - Provides a low-latency synchronization mechanism for replicating game entity positions and actions between clients.
  • Packet Fragmentation and Reassembly - Splits large data blocks into smaller units and merges fragments based on a configurable maximum transmission unit.
  • Real-Time Synchronization - Enables low-latency synchronization of game states between clients and servers for real-time multiplayer gameplay.
  • Stream Multiplexers - Implements channel-based stream multiplexing to combine multiple reliable and raw data streams over a single connection.
  • Transport Layers - Allows adjustment of window sizes and flow control parameters to optimize transport layer throughput.
  • Heartbeat-Driven NAT Maintenance - Uses periodic heartbeat packets over UDP to prevent address translation timeouts and maintain active communication paths.
  • Runtime Parameter Tuning - Allows adjustment of transmission units, window sizes, and timeout intervals during execution for performance tuning.
  • Networking - Fast reliable ARQ protocol.
  • Game Networking Libraries - Fast and reliable ARQ protocol for low latency.
  • Network Libraries - Fast and reliable ARQ protocol for low-latency communication.
  • Networking Libraries - Fast and reliable ARQ protocol for low-latency communication.

Star history

Star history chart for skywind3000/kcpStar history chart for skywind3000/kcp

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with Kcp

These projects share indexed features with Kcp. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • quic-go/quic-goquic-go avatar

    quic-go/quic-go

    11,661View on GitHub↗

    This project is a high-performance implementation of the QUIC transport protocol, providing a library for establishing multiplexed, low-latency network connections over UDP. It serves as a foundational networking stack for building modern web servers and clients, with native support for HTTP/3 and WebTransport standards. The library distinguishes itself through advanced connection management, including the ability to maintain stable sessions across changing network paths or IP addresses using connection identifiers. It optimizes data throughput by employing packet batching to reduce kernel ov

    Gogogolanghttp3
    View on GitHub↗11,661
  • systemsapproach/bookSystemsApproach avatar

    SystemsApproach/book

    3,298View on GitHub↗

    This project is a comprehensive computer networking textbook and instructional resource. It serves as a technical guide for the design and implementation of network layers, protocols, and hardware architecture, covering the spectrum from physical links to application-layer protocols. The content provides a detailed study of standards for congestion control, reliable data delivery, and internetwork routing. It includes specialized technical material on network security, public-key infrastructure, and the operation of modern cloud infrastructure and data centers. The material covers a broad ra

    Python
    View on GitHub↗3,298
  • cloudflare/quichecloudflare avatar

    cloudflare/quiche

    11,563View on GitHub↗

    This project is a memory-safe implementation of the QUIC transport protocol and HTTP/3, designed for high-throughput and efficient network communication. It provides a comprehensive toolkit for building secure, low-latency network applications by managing the full lifecycle of transport connections, including protocol negotiation, stream data exchange, and connection state management. The library distinguishes itself through a focus on performance and protocol integrity. It utilizes a formal state machine to enforce strict adherence to transport rules and employs zero-copy buffer management t

    Rusthttp3network-programmingprotocol
    View on GitHub↗11,563
  • valvesoftware/gamenetworkingsocketsValveSoftware avatar

    ValveSoftware/GameNetworkingSockets

    9,705View on GitHub↗

    GameNetworkingSockets is a UDP networking library providing secure transport, peer discovery, and traffic control systems. It implements a networking layer for reliable and unreliable messaging over UDP, including tools for message fragmentation and reassembly. The project features a peer-to-peer NAT traversal tool for establishing direct host-to-host connections by punching through firewalls and network address translation layers. It secures network traffic through encrypted transport and secure key exchange. The library includes a traffic manager to organize data into prioritized lanes to

    C++game-developmentnetworkingpeer-to-peer
    View on GitHub↗9,705
Compare all 30 related projects→

Frequently asked questions

What does skywind3000/kcp do?

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.

What are the main features of skywind3000/kcp?

The main features of skywind3000/kcp are: Low-Latency Data Transmission, UDP Transport Implementations, Flow Control Mechanisms, Keep-Alive Signaling, NAT Keep-Alive Signaling, Network Protocol Implementations, Network Reliability, Network Transport Protocols.

Which projects share features with skywind3000/kcp?

Projects with overlapping indexed features include: quic-go/quic-go — This project is a high-performance implementation of the QUIC transport protocol, providing a library for establishing… systemsapproach/book — This project is a comprehensive computer networking textbook and instructional resource. It serves as a technical… cloudflare/quiche — This project is a memory-safe implementation of the QUIC transport protocol and HTTP/3, designed for high-throughput… valvesoftware/gamenetworkingsockets — GameNetworkingSockets is a UDP networking library providing secure transport, peer discovery, and traffic control… pion/webrtc — This project is a cross-platform implementation of the WebRTC standard, providing a comprehensive library for building… ithewei/libhv — libhv is a high-performance C/C++ network library and event-driven I/O framework used to build TCP, UDP, SSL, HTTP,…