LINUX.ORG.RU

Таймаут при ETIMEDOUT


0

0

Привет!

Из man 7 tcp:

ETIMEDOUT
  The other end didn't acknowledge retransmitted data after some time.

Ситуация простая:
1) В сокет через write пишутся данные (write сразу возвращает 
управление, если в выходном буфере есть место).
2) Сразу же у peer'а выдергивается Ethernet jack.
3) TCP Stack, не получая ACK'ов пытается переотправить данные
несколько раз.
4) В конце концов даже TCP Stack задалбывается.
5) read возвращает ETIMEDOUT.

Вроде так в книжках пишут.

Вопрос такой - как узнать сколько раз TCP будет пересылать данные?
Или есть какой-то таймаут?
Где это задаётся В КОНКРЕТНОЙ СИСТЕМЕ?

P.S.
Вопрос на самом деле несколько шире.
В книгах по сетевому программированию часто пишут, что на одной 
системе таймаут такой-то, на другой такой-то, и т.п.
Параметров у протоколов и сокетов куча.
Есть ли утилитки, которые выводят все параметры стека TCP/IP?
Ответ на: комментарий от birdie

2birdie: тебе же сказали, свой английский оставить при себе!?

пиши: линукс/сеть/ИП версси 4/пуп.ха

А то умничаешь тут... ;-)

logIN
()

> Есть ли утилитки, которые выводят все параметры стека TCP/IP?

есть /proc/sys/net/ipv4 и Documentation/networking/ip-sysctl.txt :)

tailgunner ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.