如何将Boost :: ASIO与用户空间网络堆栈集成?

时间:2018-06-12 06:57:12

标签: c++ boost asio dpdk

有没有办法将Boost :: ASIO与用户网络堆栈(如F-stack或DPDK)集成?

我正在寻找一种获得userland堆栈性能优势的方法,但是维护Boost :: ASIO的API能够使用随它编写的所有库等。

1 个答案:

答案 0 :(得分:2)

基本上,如果不存在这样的包装器,则必须实现低级接口和套接字,I。那些使用boost :: asio套接字(基本上在IO服务中)抽象TCP和UDP细节的那些。

我不知道您要使用的库。所以,这可能是一些努力。

看一下boost :: asio basic_datagram套接字,解析器,端点和service。您至少需要翻译重要部分(性能),如发送和接收。如果库具有通过该句柄发送和接收的接口,您可以通过boost访问套接字的本机句柄,您可能只需要覆盖所有发送和接收函数。只需处理外部发送/接收。