我有一个基于 IOCP 的服务器,我们已经使用了很长时间。现在我们需要为此添加 SSL 支持。我正在努力寻找一个干净的解决方案。我发现其他两个线程中建议的两个选项 -
1) 使用 openssl Memory BIO - 但在网上没有找到任何与 IOCP 端口一起使用的示例,这些示例解释了由于 IOCP 的多线程性质而将出现的问题。2) 将 Boost ASIO 与 ssl 一起使用——我认为它在内部使用 IOCP。但是没有示例显示如何存储每个连接状态数据 - 例如,在我们的服务器中,为每个连接的客户端存储状态信息,此状态信息用于识别客户端并相应地解析客户端发送的数据。
如果您能建议解决上述两个问题或任何其他对您有用的解决方案,我将不胜感激。
更新:我正在使用 Simple C 在 winsock2 库中实现 IOCP。
最好的问候尼拉德里