Установите параметры TCP для непривилегированного сокета (не сырого) в программе Linux C

Какие параметры TCP я могу установить для исходящих пакетов TCP на непривилегированном сокете (не необработанном) в программе Linux C? Я имею в виду параметры TCP в заголовке TCP.

Я проверил http://linux.die.net/man/7/tcp. так что пока я могу добавить/отредактировать:

MSS, Timestamp, Window Scale, Sack, Fast Open (см. ответ ниже)

Есть ли способ добавить другие параметры? Меня особенно интересует Multipath, но любой вариант будет полезен.

Спасибо!


person the structure    schedule 03.11.2015    source источник


Ответы (1)


TCP Fast Open можно использовать с флагом MSG_FASTOPEN, например:

sendto(fd, data, len, MSG_FASTOPEN, ...

Обратите внимание, что это должно поддерживаться на стороне сервера — в Linux это можно сделать с помощью:

echo 2 > /proc/sys/net/ipv4/tcp_fastopen

Удобная ссылка здесь

person superTyphoon    schedule 03.11.2015
comment
Я должен был еще немного погуглить, но спасибо superTyphoon. - person the structure; 04.11.2015
comment
Извините, у меня недостаточно баллов, чтобы проголосовать. Я мог бы просто принять ответ. - person the structure; 06.11.2015