Windows 용 고성능 소켓 라이브러리
문제
Poco Library의 소켓에 아주 좋은 도서관을 보았습니다. 이는 Linux 및 Windows 시스템에서 작동하는 "클래식"방식을 사용하여 주로 기본 접근 방식을 선택합니다.
고성능 프록시 / SOCKS 서버에서 사용하려는 비동기 IO (완료 포트?)를 사용하는 Windows에 특정한 것이 있는지 알고 싶습니다.
해결책
부스트 :: Asio는 당신이 찾고있는 것입니까?
다른 팁
내 오픈 소스의 일부로 "Nofollow"> Badvpn 소프트웨어 프로젝트 이벤트를 개발했습니다. CIVINE (단일 스레드) C 언어를위한 크로스 플랫폼 네트워크 프로그래밍 프레임 워크. Windows에서 Linux 및 IOCP에서 Epoll을 사용합니다.
몇 가지 중요한 부분 :
- Breactor (이벤트 루프)
- Bconnection (TCP의 추상화)
- Bdatagram (UDP의 추상화)
흐름 기반 프로그래밍 의 무거운 사용을 가능하게합니다. 예를 들어, TCP의 추상화는 StreampassInterface를 사용합니다. 및 STREAMRECVINTERFACE 범용 스트림 I / O 인터페이스. 이것은 매우 유용합니다. 예를 들어 응용 프로그램에 SSL 지원을 추가 해야하는 경우 bconnection 맨 위에있는 bsslconnection 개체.
대부분의 프레임 워크는 잘 문서화되어 있지만 아직 사용하는 방법에 대한 안내서를 제공하지 않습니다. 이 기본 프로그램 시작으로 사용할 수 있습니다. 포인트. 학습을 위해 의도 된 것은 아니지만
Tun2Socks 프로그램 및 특히 동반되는 더 작은 UDPGW 프로그램 유용 할 수 있습니다. 양말을 언급 한 이래로 내 프레임 워크에서 Tun2Socks에서 사용하는 매우 간단한 Socks5 클라이언트 (인증 없음)
네트워크 게임을 위해 내가 쓴 C 라이브러리를 제안 할 수 있습니다.이 라이브러리는 높은 볼륨 동시 TCP 연결을위한 것입니다. 비동기식 ePoll, kqueues, iocp 또는 동기 스레드를 사용합니다. 인터페이스는 매우 간단하며 Node.js가 작동하는 방식으로 콜백을 통해 추상화됩니다. 에코 서버로서, 초당 60K 요청을 처리 할 수 있습니다. https://github.com/freedib/gasio