Комментарии 3
Классная, познавательная статья, о потрошках Linux, торт!
Вот, разве что, не самый широкий круг программистов сталкиваются с сетевым стеком на таком уровне (драйвера да embedded кмк). Сам люблю и уважаю подобные ковыряния, но кроме как на голом энтузиазме не доводилось лично, увы
Вот, разве что, не самый широкий круг программистов сталкиваются с сетевым стеком на таком уровне (драйвера да embedded кмк). Сам люблю и уважаю подобные ковыряния, но кроме как на голом энтузиазме не доводилось лично, увы
+1
конечно может быть дело в том, что на часах 4 утра, но, по-моему, статья ужасная.
если читаешь англоязычные статьи, то там всегда чётко соблюдается структура, в частности в начале статьи всегда есть abstract.
Аннотация – это мини-версия статьи. Американский национальный институт стандартов говорит: «Хорошо подготовленная аннотация позволяет читателям быстро и точно определить основное содержание документа, определить ее соответствие их интересам и, таким образом, решить, нужно ли им читать статью целиком» (ANSI 1979). Поэтому крайне важно, чтобы аннотация была написана четко.
+2
Скорее всего, это 4 утра.
Сама эта статья, это мини выжимка того, что следовало бы написать. Именно поэтому я не вдаюсь в подробности работы даже tcp стека. И использую такие слова, как «это Не важно» и пропускаю кучу ВАЖНЫХ моментов. Пишу «и тд.»
Пишу так:
И не описываю подробно, почему такие значения корректны, да и примеры не привожу, которые по сути то нужны.
Не привожу примеры значений end_seq rcv_nxt при этапе tcp-рукопожатия! А следовало бы. Там на «втором шаге» (при отправке на сервер второго пакета c флагом ack) раздолье для действий. (Да и при закрытии соединения тоже)
Следовало бы, пройтись по каждому этапу хотябы сетевой обработки tcp. Вот тут "Как мы раскрыли 24-летний баг в ядре Linux" Рассматривается что-то похожее.
Рассмотреть как можно действовать с временными метками. Ведь они тоже ручками подсчитываются.И в зависимости от их значений, идёт разная обработка пакетов.
Можно было рассмотреть mptcp с его коллизиями в самом протоколе. (он использует tcp стек, но также является «обёрткой» над… в общем, не важно.)
Хотя, может Вы и правы.
Можно пример? В пару строк. Подходящей аннотация для этой статьи. (Яб добавил их в начале, для структуры)
Сама эта статья, это мини выжимка того, что следовало бы написать. Именно поэтому я не вдаюсь в подробности работы даже tcp стека. И использую такие слова, как «это Не важно» и пропускаю кучу ВАЖНЫХ моментов. Пишу «и тд.»
Пишу так:
Например такой пакет будет корректен. seq = 0xfffffc6e размером в 1000 байт
И не описываю подробно, почему такие значения корректны, да и примеры не привожу, которые по сути то нужны.
Не привожу примеры значений end_seq rcv_nxt при этапе tcp-рукопожатия! А следовало бы. Там на «втором шаге» (при отправке на сервер второго пакета c флагом ack) раздолье для действий. (Да и при закрытии соединения тоже)
Следовало бы, пройтись по каждому этапу хотябы сетевой обработки tcp. Вот тут "Как мы раскрыли 24-летний баг в ядре Linux" Рассматривается что-то похожее.
Рассмотреть как можно действовать с временными метками. Ведь они тоже ручками подсчитываются.И в зависимости от их значений, идёт разная обработка пакетов.
Можно было рассмотреть mptcp с его коллизиями в самом протоколе. (он использует tcp стек, но также является «обёрткой» над… в общем, не важно.)
Хотя, может Вы и правы.
Можно пример? В пару строк. Подходящей аннотация для этой статьи. (Яб добавил их в начале, для структуры)
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Как найти 0day