NS3:如何为每个TCP会话设置RcvBufSize
NS3: how to setup RcvBufSize for each TCP session?
我必须使用不同的RcvBufSize运行两个TCP会话。
我知道以下代码可以为所有TCP会话设置RcvBufSize。
Config::SetDefault("ns3::TcpSocket::RcvBufSize", UintegerValue (1500000));
实际上,我正在寻找像setsockopt()
这样的功能来为每个TCP会话设置SO_RCVBUF。
我也试图将Ptr<Socket>
降到Ptr<TcpSocket>
,但SetRcvBufSize()
是私人功能......
有没有办法解决这个问题?
我使用SetAttribute
调用更改了应用程序中的SndBufSize
。我有一个带有套接字指针成员的类ns3::Ptr<ns3::Socket> m_pSocket
,要更改发送缓冲区大小,我这样做:
// create tcp socket
m_pSocket = ns3::Socket::CreateSocket( GetNode(), ns3::TcpSocketFactory::GetTypeId() );
m_pSocket->SetAttribute("SndBufSize", ns3::UintegerValue(4096000));
因此,在您的情况下,您必须致电:
yourSocket->SetAttribute("RcvBufSize", ns3::UintegerValue(1500000));
通过这种方式,您可以设置 ns3::TcpSocket 的每个属性。
相关文章:
- 为多个会话保留XPtr
- 通过套接字[TCP]传输数据 如何在C / C ++中打包多个整数并使用send() recv()传输数据
- VSOMEIP-2个设备之间的通信(TCP/UDP)不工作
- 是否可以用"iostream"包装现有的TCP/OOpenSSL会话
- 如何修复 Onnx运行时会话>运行问题?
- 我可以与 python 服务器而不是 c++ 客户端建立 tcp/ip 套接字吗?
- 提升 Asio TCP 服务器 处理多个客户端
- 通过TCP的PvP通信问题
- 为什么 KMS drmModeSetCrtc() 在 X11 会话中运行时会失败并被拒绝权限?
- C++ boost::asio::ip::tcp::acceptor 有时不接受连接器?
- AWS IoT 开发工具包:通过 TCP 端口 443 使用 MQTT
- 计算出有多少客户端可以连接到我正在使用的一些tcp服务器代码
- 如何在带有 gdb GUI 前端的 ARM gdbserver 的 PC 上执行远程 gdb 会话?
- 通过单独的 tcp 流建立 http 连接
- 读取 TCP 标头并使用RAW_SOCKET管理 TCP 连接
- C++ TCP 套接字通信 - 连接按预期工作,几秒钟后失败,没有收到新数据,read() 和 recv() 块
- grpc 的 ServerBuilder::AddListeningPort() 总是返回 TCP 端口零
- TCP 服务器的异步读取使用 boost::asio 打印客户端套接字发送的数据
- NS3:如何为每个TCP会话设置RcvBufSize
- 如何找出libcurl在tcp会话中使用的源tcp端口