setsockopt

    1热度

    1回答

    如何在原始套接字上设置套接字选项以启用QDISC_BYPASS?我在C中看到了一些例子,但无法清楚地知道如何在Python中实现它。 我用AF_PACKET和SOCK_RAW设置构造了套接字。 我明白我需要使用socket.setsockopt()方法,但我不知道如何在这种情况下正确调用它。

    0热度

    1回答

    我收到以下链接:SOL_SOCKET in getsockopt() 但是这对我来说真的很让人困惑。一个答复说SOL_SOCKET意味着套接字层。什么是套接字层?有没有其他选项可用于该参数? 如果我们通过SOL_SOCKET参数,SOL代表什么,会发生什么? 我正在使用UNIX。

    0热度

    1回答

    我尝试使用setsockopt函数向接口的多播地址列表添加一个地址,但使用errno EINVAL失败。我把一些的printk在内核代码和它看起来像错误号最终被内核packet_setsockopt功能,因为通过了optlen值小于packet_mreq结构的大小设置。对于我的生活,我无法弄清楚为什么会发生这种情况。下面是相关代码: 您的括号 int addMulticastAddress(int

    0热度

    1回答

    我要问的东西时,我想设置与特定的套接字我调用这个函数 void Server::setReceiveTimeout(unsigned int timeout, SOCKET clientSocket) { if (setsockopt(clientSocket, SOL_SOCKET, SO_RCVTIMEO, (char*)&timeout, sizeof(timeout)))

    0热度

    1回答

    我想从以前添加到接口的别名IP发送数据到多播组。我使用IP_MULTICAST_IF和别名IP调用setsockopt()。但数据总是从该接口的默认IP发送。为了解释,我提供了一些代码。 ip addr show命令给出ens33界面以下输出: 2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state U

    3热度

    1回答

    我试图将默认套接字发送缓冲区大小更改为小尺寸, 以查看UDP吞吐量如何影响小型UDP数据报。 为此,我使用setsockopt函数与选项SO_SNDBUF和 我试图将缓冲区大小设置为64个字节。我也用getsockopt来看 setsockopt函数的结果。 这里是我使用的代码: int sock_fd; struct sockaddr_in server_addr; static int t

    0热度

    1回答

    我想写一个简单的UDP服务器,它在多播组上发布它的服务端口,但我无法让多播工作。我试着在Microsoft文档中四处查看,并复制/粘贴了他们的一些代码,但它不起作用。这里是有问题的代码: this->port = srvc_port; //11129 in my example this->mcast_port = mcast_port; //11130 in my example

    4热度

    1回答

    我继承了一些所谓的TCP代码: bind(tcpSocket, (struct sockaddr*)&server_addr, sizeof(server_addr)); 该呼叫之前 setsockopt(tcpSocket, SOL_SOCKET, SO_REUSEADDR, &yes, sizeof(int)); 毫不奇怪,这导致了信息:“地址已在使用”。只需交换呼叫顺序即可解决问题。

    0热度

    1回答

    我正在创建一个Linux C++/Qt5应用程序,它为出站连接(到远程服务器)打开一个TCP套接字。我创建了一个与QTcpSocket,然后尝试设置sockopt的选项如下: m_tcpSocket = new QTcpSocket(this); int fd = m_tcpSocket->socketDescriptor(); int enableKeepAlive = 1; // Enab

    0热度

    1回答

    如何在C中设置UNIX套接字文件描述符的套接字缓冲区大小? 我明白setsockopt可能是涉及的系统调用... 任何人都可以举一个如何使用它的例子,我找到的人不解释如何设置缓冲区大小?