【问题标题】:Singlethreaded OpenSSL - OK to read/write on several ports?单线程 OpenSSL - 可以在多个端口上读/写吗?
【发布时间】:2015-02-26 16:31:30
【问题描述】:

在多线程程序中使用 OpenSSL 时,需要实现某些锁定回调。

当使用单线程程序但使用非阻塞套接字时,我需要考虑这一点吗?我的意思是,如果多个端口同时进行 SSL_read/write 和连接,这是一个问题吗?与具有阻塞 swocket 的单线程程序相比,其中一个操作必须在下一个操作之前完成。 但是对于我的非阻塞应用程序,可以尝试 SSL_read 并且必须再次调用它,在重试另一个连接之前也会调用 SSL_read...

【问题讨论】:

    标签: ssl openssl nonblocking


    【解决方案1】:

    并行使用多个非阻塞套接字并并行执行 TCP 接受、连接和 SSL 握手、读取、写入都不是问题。我这样做了很多年,而且非常稳定。而且由于一次只能进行一次 SSL 操作,因此您不需要任何类型的锁定。

    【讨论】:

    • 虽然只有一个正在执行,但可以有几个正在进行的 SSL 操作。
    • 是的,但同时进行多次握手或传输也不是问题。每个 SSL 对象都维护相关状态。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-29
    • 2015-09-22
    • 2015-04-18
    • 2020-09-03
    • 2013-04-04
    • 1970-01-01
    相关资源
    最近更新 更多