Описание тега setsockopt

2 ответа

Что означает блокировка в параметре setsockopt SO_RCVTIMEO

Когда я взглянул на setsockopt из MSDN ссылки. я наткнулся на параметр SO_RCVTIMEO, его описание: "Устанавливает время ожидания в миллисекундах для блокировки входящих вызовов." Я думал, что операция прослушивания сокета управляется событиями, что о…
10 янв '13 в 01:43
2 ответа

Воспроизведение трафика http с исходным адресом источника

Я хочу создать испытательный стенд, включающий в себя клиент и веб-сервер, где я могу воспроизвести некоторые зарегистрированные запросы http get на веб-сервер. Поэтому я планирую точно симулировать фактический трафик с запросами с их исходным адрес…
16 янв '13 в 03:32
3 ответа

Настройка окна получения TCP в C и работа с tcpdump в Linux

Я использую Linux-систему 2.6.9-55.ELsmp, x86_64. Я пытаюсь установить окно получения TCP с помощью функции setsockopt() с помощью C. Я пытаюсь сделать следующее: rwnd = 1024; setsockopt(sock, SOL_SOCKET, SO_RCVBUF, (char *)&rwnd, sizeof(rwnd));…
08 фев '10 в 18:17
1 ответ

QDISC_BYPASS в Python (необработанные сокеты)

Как мне установить параметры сокета в необработанном сокете, чтобы включить QDISC_BYPASS? Я видел примеры в C, но не мог ясно понять, как реализовать это в Python. Я построил сокет с настройками AF_PACKET и SOCK_RAW. Я понимаю, что мне нужно использ…
30 сен '14 в 08:13
2 ответа

Недопустимый аргумент в sendto при использовании имени интерфейса для установки IP_MULTICAST_IF

Я пишу небольшую программу, которая отправляет и получает многоадресные пакеты. Мне нужно установить исходящий интерфейс с его именем (например, eth0), а не его адрес. Поэтому я должен использовать struct ip_mreqn (а не struct in_addr), чтобы я мог …
12 июн '12 в 09:33
1 ответ

Размер буфера сокета не увеличивается

int n = 0; if ( 0 != getsockopt(iSockFd,SOL_SOCKET,SO_RCVBUF, &n, sizeof(n))) { printf("Get socket option failed, errno: %d\n",errno); } else { printf("Current socket buff len = %d\n", n); } n = 225280; if(0 != setsockopt(iSockFd, SOL_SOCKET, SO…
18 ноя '15 в 09:07
1 ответ

SO_BINDTODEVICE Сбой для виртуального интерфейса

Я пытаюсь запустить сервер PTPDV2 (протокол точной синхронизации), который привязывается к интерфейсу для настройки многоадресной рассылки. У меня есть следующий виртуальный интерфейс eth1:0 Link encap:Ethernet HWaddr 00:00:50:A0:42:BD inet addr:10.…
19 мар '13 в 14:29
0 ответов

Настройка DSCP на основе сокетов

Есть несколько примеров использования iptable для установки поля DSCP IP-пакетов. Я пытаюсь не использовать iptables, а установить поле DSCP только на нескольких выбранных сокетах. Чтением man 7 ipЯ узнал, что я могу использовать что-то ссылку int t…
09 янв '19 в 09:19
1 ответ

setsockopt SO_BROADCAST на сокете TCP

В существующей сетевой библиотеке, над которой мне поручено работать, есть призыв к setsockopt чего я не понимаю Здесь вы можете увидеть начало создания сокета TCP: [socket] fd(11) domain(2:AF_INET) type(1:SOCK_STREAM) protocol(0:default) Сразу посл…
26 июл '16 в 16:44
2 ответа

Как мне установить `SO_RCVTIMEO` для сокета в Perl?

Если я попытаюсь так: my $sock = IO::Socket::INET->new( … ) or die "no socket for you"; defined $sock->setsockopt(SOL_SOCKET, SO_RCVTIMEO, 30) or die "setsockopt: $!"; тогда мой скрипт подвергается смерти от "setsockopt: Неверный аргумент в [с…
27 ноя '11 в 07:28
1 ответ

Почему IP_TTL и IP_MULTICAST_TTL являются отдельными опциями сокетов?

При отправке UDP multicast вы можете использовать IP_MULTICAST_TTL установить TTL. Но в противном случае вы бы использовали IP_TTL, Почему эти два разных варианта в глазах setsockopt() а также getsockopt()? Есть ли ситуации, в которых установка их п…
26 мар '18 в 09:15
2 ответа

Как отправить многоадресные данные с определенного IP?

Я пытаюсь отправить данные в группу многоадресной рассылки с псевдонима IP, ранее добавленного в интерфейс. Я вызываю setsockopt() с IP_MULTICAST_IF и псевдонимом IP. Но данные всегда отправляются с IP-адреса по умолчанию этого интерфейса. Для объяс…
03 сен '14 в 09:54
2 ответа

getockopt SO_RECVBUF после выполнения набора показывает удвоенное значение в Linux?

При вызове setsockopt с SO_RECVBUF, затем оборачиваясь и вызывая getsockopt с SO_RECVBUF, кажется, он говорит мне, что он устанавливает размер буфера в два раза больше, чем я просил его установить. Кто-нибудь знает, почему это может быть? рассматрив…
15 янв '14 в 19:55
1 ответ

Установка sockopt для клиентского сокета, возвращенного из accept()

Я пытаюсь установить параметры сокета для клиентского сокета, возвращенного из accept() функция. Но они не устанавливаются правильно. Моя цель - установить время ожидания клиента после определенного периода бездействия. Но сервер все еще должен быть…
07 сен '16 в 04:03
2 ответа

Сецокопт Windows не работает?

Я хочу иметь возможность повторно использовать некоторые порты, и поэтому я использую setsockopt в моих сокетах со следующим кодом: sock.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1) Тем не менее, это на самом деле не работает. Я также не полу…
28 апр '09 в 09:14
2 ответа

Как можно иметь тайм-аут отправки на неблокирующем сокете?

У меня есть некоторые проблемы с пониманием работы сокетов в Linux. setsockopt(sockfd, SOL_SOCKET, SO_SNDTIMEO, &timeout, sizeof(int)); write = write(sockfd, buf, len); В приведенном выше коде, поскольку записи буферизуются, тайм-аут отправки не…
26 ноя '12 в 00:04
0 ответов

Членство в многоадресной группе с каналом RAW

Я создал сокет с sock_raw = socket( AF_PACKET , SOCK_RAW , htons(ETH_P_ALL)) Я хочу добавить членство в многоадресной группе с многоадресным адресом 224.0.0.139 [для ref. только]. Для этого я использовал setsockopt setsockopt( raw_sock, SOL_PACKET, …
0 ответов

Как правильно использовать опцию адреса с сокетом

Я прямо сейчас отлаживаю свое сокетное приложение, которое включает в себя запуск и последовательное отключение. Моя проблема в том, что когда я запускаю и выключаю его, а затем снова запускаю, я получаю код ошибки 10048, указывающий адрес, который …
15 ноя '13 в 19:49
1 ответ

Присоединиться к многоадресной группе на DatagramSocket?

Я хочу получать сетевые данные, переданные другим приложением через сокет AIR UDP (DatagramSocket). В других языках программирования это достигается путем вызова (Java) "sock.joinMulticastGroup (group)". В C это простой вызовsetsockopt. Я не могу на…
08 июн '11 в 23:28
0 ответов

Эффекты кэширования из-за SO_BINDTODEVICE в setsockopt

От SO_BINDTODEVICE Опция сокета Мы могли бы установить сокет на один из сетевых интерфейсов, также если мы используем две карты NIC и если мы хотим установить сокет на одну из карт NIC, SO_BINDTODEVICE поможет. если мы установим сокет к eth1 в setso…
01 окт '14 в 04:11