Linux 网络库
在进行 Linux 网络编程时,虽然 Linux 提供了系统调用接口(BSD socket)进行网络编程,例如 socket、recv、send 等等。但如果想快速开发优秀的网络应用,使用现成的 Linux 网络库是一个好方法。
下面介绍一些适用于 Linux 系统的优秀的 C/C++ 开源网络库。
Aggregated List of Libraries
- Boost.Asio is really good.
- Asio is also available as a stand-alone library.
- ACE is also good, a bit more mature and has a couple of books to support it.
- C++ Network Library
- POCO
- Qt
- Raknet
- ZeroMQ (C++)
- nanomsg (C Library)
- nng (C Library)
- Berkeley Sockets
- libevent
- Apache APR
- yield
- Winsock2(Windows only)
- wvstreams
- zeroc
- libcurl
- libuv (Cross-platform C library)
- SFML's Network Module
- C++ Rest SDK (Casablanca)
- RCF
- Restbed (HTTP Asynchronous Framework)
- SedNL
- SDL_net
- OpenSplice|DDS
- facil.io (C, with optional HTTP and Websockets, Linux / BSD / macOS)
- GLib Networking
- grpc from Google
- GameNetworkingSockets from Valve
- CYSockets To do easy things in the easiest way
- yojimbo
- GGPO
- ENet
- SLikeNet is a fork of Raknet
- netcode
- photon is closed source, requires to use their sdk