gpt4 book ai didi

c++ - NS3 : how to setup RcvBufSize for each TCP session?

转载 作者:可可西里 更新时间:2023-11-01 02:54:00 25 4
gpt4 key购买 nike

我必须运行两个具有不同 RcvBufSize 的 TCP session 。

我知道以下代码可以为所有 TCP session 设置 RcvBufSize。

Config::SetDefault("ns3::TcpSocket::RcvBufSize", UintegerValue (1500000));

实际上,我正在寻找类似setsockopt() 的函数为每个 TCP session 设置 SO_RCVBUF。

我也试过垂头丧气Ptr<Socket>Ptr<TcpSocket> ,但是SetRcvBufSize()是私有(private)函数...

有什么办法可以解决这个问题吗?

最佳答案

我改变了SndBufSize在我的应用程序中使用 SetAttribute称呼。我有一个带有套接字指针成员的类 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的每一个属性.

关于c++ - NS3 : how to setup RcvBufSize for each TCP session?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37376504/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com