|
|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Dmitry Miloserdov 2:5020/400 04 Jun 2003 17:22:05 To : Lev Walkin Subject : Re: tcp window -------------------------------------------------------------------------------- Hello, Lev! You wrote to me on Tue, 3 Jun 2003 21:23:27 +0000 (UTC): LW> Hе надо кидаться в частности, плиз. В этом документе - несколько LW> устаревшие условия. В других - не очень устаревшие. Метод LW> использования "TCP window", рассчитываемого в пакетах, не меняется. Устаревшие - действительно не при чем. а куча начальных предположений? они с таким же успехом могли сказать что-то типа: Assume that each TCP segment is 1000 bytes in length. эти утверждения никого ни к чему не обязывают. ----- Лирическое отступление к началу дискуссии (чтобы закрыть кусок темы): я утверждал: a) что не стоит называть окно в пакетах "tcp window" б) не стоит для получения "окна в байтах" умножать mtu на что-бы то ни было ибо: во-первых узнать MTU невозможно. во-вторых умножать переменные взятые с разных уровней противоречит самой идее разделения на уровни. Про "б)": ты заменил mtu на mss. в такой постановке вопросов нет: mss вполне определенная величина и эта величина того же уровня что и wnd. Про "а)" сложнее. Под tcp window я понимал все-таки согласованный размер т.е. wnd<<wscale. Ты - исключительно внутреннюю для отправитля переменную. Что-ж имеешь право, но все-же это implementation-depended и даже если получатель не послал ни одного ack (кроме syn/ack) он не может быть уверенным что отправитель не пошлет ему rcv.wnd целиком. Да и rfc с cwnd связанные вроде как на стандарт не претендуют, судя по апдейтам на bcp пока тоже - т.е. просто анализ существующих реализаций. LW> [hp:/u/vlm]>tcpdump -w syns -l -n -vvv 'tcp[tcpflags] & tcp-syn != 0' эксперимент интересный но у меня wscale 1 только с хостом на котором принудительно net.inet.tcp.recvspace=128k установлен. LW> Hет. Все равно будет стремиться. LW> Во-первых, mss изначально будет установлен в MTU непосредственного LW> линка. То есть, для ethernet (MTU=1500) в первом же пакете пойдет LW> mss=1460: ну то что стремится будет не к layer2-mtu а к какому-то абстрактному и заранее не предсказумому ты в конце согласился, а более я ничего не утверждал LW> Во-вторых, во время передачи из-за того, что TCP ставит DF на IP пакет, LW> будут происходить ICMP Fragmentation needed and DF set пакеты, а также LW> просто дропы (blackhole). По первым TCP стек корректирует свой mss, LW> а по вторым - иногда корректирует. А вот интересно это поведение (что весь tcp идет с DF) стадартизовано? я просто не нашел. With best regards, Dmitry Miloserdov. E-mail: dmitry@bis.ru --- ifmail v.2.15dev5 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/6577cfd8065c.html, оценка из 5, голосов 10
|