The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Предложение по включению режима TCP_NODELAY по умолчанию, opennews (??), 10-Май-24, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


1. "Предложение по включению режима TCP_NODELAY по умолчанию"  +20 +/
Сообщение от Аноним (1), 10-Май-24, 09:18 
Наконец-то хоть кто-то не поленился поднять эту тему
Ответить | Правка | Наверх | Cообщить модератору

2. "Предложение по включению режима TCP_NODELAY по умолчанию"  +/
Сообщение от Аноним (2), 10-Май-24, 09:24 
Что мешает вставить в ядро одну строчку кода?
Ответить | Правка | Наверх | Cообщить модератору

3. "Предложение по включению режима TCP_NODELAY по умолчанию"  +8 +/
Сообщение от An (??), 10-Май-24, 09:32 
Торвальдс
Ответить | Правка | Наверх | Cообщить модератору

6. "Предложение по включению режима TCP_NODELAY по умолчанию"  +7 +/
Сообщение от Аноним (6), 10-Май-24, 10:27 
Лол благодаря ему эта строчка вообще существует. А отключать опцию или нет это дело пользователя.
Ответить | Правка | Наверх | Cообщить модератору

4. "Предложение по включению режима TCP_NODELAY по умолчанию"  +1 +/
Сообщение от хрю (?), 10-Май-24, 09:49 
Зачем? Если кому это действительно надо отключают сей алгоритм и давно - "что уже давно делается в таких проектах, как Node.js и curl." Гражданин вещает с позиций AWS, а позиция обычных смертных может быть немного отличаться.
Ответить | Правка | К родителю #2 | Наверх | Cообщить модератору

5. "Предложение по включению режима TCP_NODELAY по умолчанию"  +7 +/
Сообщение от Аноним (6), 10-Май-24, 10:25 
Просто aws хочет ценник за трафик больше получить.  
Ответить | Правка | Наверх | Cообщить модератору

104. "Предложение по включению режима TCP_NODELAY по умолчанию"  +/
Сообщение от Abra (?), 11-Май-24, 22:02 
Простите, а за счёт чего? Данные просто будут переданы быстрее, и только. Но объем должен быть тот же
Ответить | Правка | Наверх | Cообщить модератору

8. "Предложение по включению режима TCP_NODELAY по умолчанию"  +1 +/
Сообщение от Аноним (2), 10-Май-24, 10:32 
Если вдруг обычному пользователю захочется форсировать данный флаг глобально. Чтобы в игрушках были минимальные задержки, например...
Ответить | Правка | К родителю #4 | Наверх | Cообщить модератору

25. "Предложение по включению режима TCP_NODELAY по умолчанию"  +/
Сообщение от Banned (?), 10-Май-24, 12:40 
Типичный кээсер. Реальная выгода хоть есть?
Ответить | Правка | Наверх | Cообщить модератору

34. "Предложение по включению режима TCP_NODELAY по умолчанию"  +5 +/
Сообщение от Аноним (34), 10-Май-24, 13:49 
А разве игрушки не UDP пользуются для минимализации латентности?
Ответить | Правка | К родителю #8 | Наверх | Cообщить модератору

45. "Предложение по включению режима TCP_NODELAY по умолчанию"  –4 +/
Сообщение от Аноним (2), 10-Май-24, 15:17 
К сожалению, нет.
Ответить | Правка | Наверх | Cообщить модератору

56. "Предложение по включению режима TCP_NODELAY по умолчанию"  +4 +/
Сообщение от Аноним (56), 10-Май-24, 17:29 
Правильнее было бы сказать: "Не все".
Unreal Engine - UDP.
Unity - UDP.
Godot - HTTPS поверх TCP (пздц) по дефолту для ленивых. TCP или UDP для всех остальных.
Но нужно учесть тот факт что на Godot игор нет.
Ответить | Правка | Наверх | Cообщить модератору

83. "Предложение по включению режима TCP_NODELAY по умолчанию"  –3 +/
Сообщение от Аноним (2), 11-Май-24, 04:56 
Фактически, сказал тоже самое, но в более краткой форме. Разумеется, есть игры которые используют UDP, но встречаются они крайне редко.
Ответить | Правка | Наверх | Cообщить модератору

99. "Предложение по включению режима TCP_NODELAY по умолчанию"  +/
Сообщение от Аноним (99), 11-Май-24, 15:26 
Чушь несёшь. Игры в основном используют TCP для согласования и прочей мелочи. И UDP для RT трафика в игре. Если, конечно, речь о играх где важен FPS и задержки. Так было ещё со времён CS
Ответить | Правка | Наверх | Cообщить модератору

102. "Предложение по включению режима TCP_NODELAY по умолчанию"  +/
Сообщение от Аноним (2), 11-Май-24, 16:50 
Найдите мне MMORPG с UDP протоколом.
Ответить | Правка | Наверх | Cообщить модератору

125. "Предложение по включению режима TCP_NODELAY по умолчанию"  +1 +/
Сообщение от rshadow (ok), 13-Май-24, 19:36 
Очень забавное наблюдение. Погуглил. В среднем так: если игра без автотаргета, по факту ближе к шутеру, то UDP. Если просто клацать мышкой (Линейка, вовка, ева и т.д.) то TCP. Ну и плюс всякая медийка (внутриигровые войс чаты) тоже UDP.

Например https://valheim.fandom.com/wiki/Dedicated_servers#Networking

Ответить | Правка | Наверх | Cообщить модератору

7. "Предложение по включению режима TCP_NODELAY по умолчанию"  +1 +/
Сообщение от Аноним (7), 10-Май-24, 10:31 
любой дистрибутив может сделать это по своему желанию.
если нет то сами себе сделайте.
Ответить | Правка | К родителю #2 | Наверх | Cообщить модератору

10. "Предложение по включению режима TCP_NODELAY по умолчанию"  +/
Сообщение от Аноним (2), 10-Май-24, 11:28 
Уже давно...
Ответить | Правка | Наверх | Cообщить модератору

39. "Предложение по включению режима TCP_NODELAY по умолчанию"  +8 +/
Сообщение от timur.davletshin (ok), 10-Май-24, 14:27 
Погодите, панове, а что мешает использовать TCP_NODELAY при открытии сокета? Разве не так задумано было? Нужен интерактив? - Тогда используй соотв. опцию при открытии соединения.

Для сомневающихся, советую поиграться с SSH и попробовать заоверрайдить умолчальные TCP_NODELAY. Консолька интересной становится.

Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

75. "Предложение по включению режима TCP_NODELAY по умолчанию"  +/
Сообщение от Ivan_83 (ok), 11-Май-24, 03:20 
Консольке от флага приятно не не более того.
В качестве аргумента скажу что консолька часто нормально себя ощущает при RTT 50-150мс, подозреваю что ОС без TCP_NODELAY на столько пакет не задерживает.
Ответить | Правка | Наверх | Cообщить модератору

97. "Предложение по включению режима TCP_NODELAY по умолчанию"  +1 +/
Сообщение от timur.davletshin (ok), 11-Май-24, 13:49 
> Консольке от флага приятно не не более того.
> В качестве аргумента скажу что консолька часто нормально себя ощущает при RTT
> 50-150мс, подозреваю что ОС без TCP_NODELAY на столько пакет не задерживает.

Патчить кривой софт надо, а не менять то, что потенциально может много проблем создать.

Ответить | Правка | Наверх | Cообщить модератору

89. "Предложение по включению режима TCP_NODELAY по умолчанию"  +/
Сообщение от Аноним (89), 11-Май-24, 09:38 
>а что мешает использовать TCP_NODELAY при открытии сокета?

Тем что не все это знают, а те кто знают те забывают. Признаюсь честно, я делал что то типа прокси-туннеля и запускал VNC через нее и думал что задержки курсора это комп или сеть тормозит. А потом вспомнил про TCP_NODELAY.
Лучше бы имхо было наоборот, флаг TCP_DELAY_LEGACY_FOR_TELNET.

Ответить | Правка | К родителю #39 | Наверх | Cообщить модератору

94. "Предложение по включению режима TCP_NODELAY по умолчанию"  +/
Сообщение от Ivan_83 (ok), 11-Май-24, 12:44 
Так оно нужно только для отдельных применений.
У меня вот есть msd - оно стримит IPTV, там свой огромный буффер из которого рассылает клиентам, и от TCP_NODELAY ничего не изменится совсем, потому что у клиента тоже буфера.

Ответить | Правка | Наверх | Cообщить модератору

112. "Предложение по включению режима TCP_NODELAY по умолчанию"  –1 +/
Сообщение от pda (ok), 12-Май-24, 20:45 
Наверное то, что приложению по хорошему неоткуда знать нужно ему использовать этот флаг или нет. Так понимаю, он был актуален во времена медленных каналов, вроде модемных. На них экономия могла иметь смысл, на широкополосных нет. По этому его и выносили в конфиг.
Но теперь модемных каналов не осталось и по идее нет нужды требовать от приложений устанавливать его явно.

Вообще это решение выглядит таким себе. По идее механизм управления потоком стоило привязывать к интерфейсу.

Ответить | Правка | К родителю #39 | Наверх | Cообщить модератору

115. "Предложение по включению режима TCP_NODELAY по умолчанию"  +1 +/
Сообщение от timur.davletshin (ok), 13-Май-24, 07:43 
> Наверное то, что приложению по хорошему неоткуда знать нужно ему использовать этот
> флаг или нет.

А кто об этом должен знать, как не приложение? Вы бредите или это такой юмор?

> Вообще это решение выглядит таким себе. По идее механизм управления потоком стоило
> привязывать к интерфейсу.

А... это после воскресенья такое. Бывает.


Ответить | Правка | Наверх | Cообщить модератору

118. "Предложение по включению режима TCP_NODELAY по умолчанию"  –2 +/
Сообщение от pda (ok), 13-Май-24, 12:55 
> А кто об этом должен знать, как не приложение? Вы бредите или
> это такой юмор?

Откуда приложению знать (да ещё и на этапе компиляции) в каких условиях его будут использовать? Модемный канал или нет?

> А... это после воскресенья такое. Бывает.

Вы про себя что ли? Ну, просыхайте. Может перечитаете и поймёте.

Ответить | Правка | Наверх | Cообщить модератору

119. "Предложение по включению режима TCP_NODELAY по умолчанию"  +1 +/
Сообщение от timur.davletshin (ok), 13-Май-24, 13:33 
> Откуда приложению знать (да ещё и на этапе компиляции) в каких условиях
> его будут использовать? Модемный канал или нет?

Вы просто не поняли, для чего TCP_NODELAY делался. К ширине канала это имеет очень небольшое отношение. А вот приложение прекрасно знает, что ему нужно больше - интерактив или пропускная способность. Но ты сильно не расстраивайся, не плакай там. Не ты один такой, вон Mozilla (да и Chrome) до сих пор не умеет помечать ToS в пакетах канала данных WebRTC. Багрепортам уже не помню сколько лет.

> какая-то тухлая эскапада на предмет моей некомпетентности

Воспользуйся моим советом выше и поиграйся с SSH. Если они смогли, то что мешает другим?

Ответить | Правка | Наверх | Cообщить модератору

121. "Предложение по включению режима TCP_NODELAY по умолчанию"  –1 +/
Сообщение от pda (ok), 13-Май-24, 14:40 
> А вот приложение прекрасно знает, что ему нужно больше - интерактив или пропускная способность.

Вы текст-то новости прочли? "RFC для алгоритма Нейгла принят в 1984 году и он не рассчитан на параметры современных высокоскоростных сетей и серверов в датацентрах, что приводит к возникновению проблем с отзывчивостью." Так откуда приложению знать в современной оно сети работает или нет?

>> какая-то тухлая эскапада на предмет моей некомпетентности
> Воспользуйся моим советом выше и поиграйся с SSH. Если они смогли, то
> что мешает другим?

Простите, вы там кого от моего имени процитировали? У меня в посте таких слов нет. Вы ChatGPT, у вас галлюцинации? Если нет и отвечаете кому-то другому - вот идите к нему в ветку и отвечайте.

И что по вашему я должен был добиться "игранием с SSH"? Понимания, что неправильный алгоритм управления может ухудшить работу? Спасибо за гениальное наставление, сам бы я точно до этого не догадался.

Ответить | Правка | Наверх | Cообщить модератору

122. "Предложение по включению режима TCP_NODELAY по умолчанию"  +/
Сообщение от timur.davletshin (ok), 13-Май-24, 14:55 
> Понимания, что неправильный алгоритм управления может ухудшить работу? Спасибо за гениальное наставление, сам бы я точно до этого не догадался.

Наоборот, ты наконец поймёшь, что СТОИТ читать не новости, а RFC... и экспериментировать. Если человек из новости не пишет о том, что ядро предоставляет интерфейс для управления поведением сетевого стека, то он а) некомпетентен или б) ангажирован. Я ставлю на второе. В твоём же случае очевидна первая причина.

Прежде чем продолжить тухлую пикировку, давай определимся с твоим тезисом о том, что приложение "не знает о ширине канала". Имеются ли давно внедрённые алгоритмы, которые позволяют определить эту самую полосу? Имеются ли минимальные требования к работе приложения (я, надеюсь, мы не будем разговаривать о запуске VoIP через 1200 baud packet radio?)?

Потом вернёмся к тому, насколько ты понимаешь, чем и зачем TCP_NODELAY используется сейчас.

А потом мы по пунктикам разберём, где выступивший с инициативой пан слукавил (или соврал). Я очень люблю, когда ссылаются на "старость" RFC без учёта реализаций.

Ответить | Правка | Наверх | Cообщить модератору

132. "Предложение по включению режима TCP_NODELAY по умолчанию"  +/
Сообщение от Аноним (132), 16-Май-24, 02:35 
Nagle занимается тем, что буферизует данные, записываемые в TCP-сокет, вместо нерадивых приложений которые делают write(2) по паре байт, чтобы без Nagle-а приводило бы к куче мелких пакетов с пейлоадом в эти самые пары байт.

Потому кроме приложений, которые и дергают write(2)-ы, никто и не может знать, нужен Nagle им, потому что написаны они левой пяткой без нормальной буферизации данных, или нет, потому что у программиста есть мозг, и он им подумал о том, что будет происходить с отправляемыми данными на уровне TCP/IP стека.

Ответить | Правка | К родителю #112 | Наверх | Cообщить модератору

57. "Предложение по включению режима TCP_NODELAY по умолчанию"  +/
Сообщение от timur.davletshin (ok), 10-Май-24, 17:54 
Хороший такой детектор получился из плюсующих данный комментарий.
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

63. "Предложение по включению режима TCP_NODELAY по умолчанию"  +/
Сообщение от violation (?), 10-Май-24, 20:49 
Можно вопрос к знатоку Firefox?
Sandbox: seccomp sandbox violation: pid 2247, tid 2250, syscall 441, args 13 140541341901696 32 0 0 8.
[warn] epoll_wait: Function not implemented
Firefox 115.10 esr Gentoo
Решается через
export MOZ_DISABLE_CONTENT_SANDBOX=1
Работает,но 100500 строчек  с ошибкой все время бегут друг за другом без остановки в терминале и чтобы остановить закрываю эмулятор терминала.
Может быть можно решить по-нормальному?

Ответить | Правка | Наверх | Cообщить модератору

64. "Предложение по включению режима TCP_NODELAY по умолчанию"  +/
Сообщение от Аноним (64), 10-Май-24, 21:38 
Нашел такой вариант без export,но ошибки сыпятся все равно.
about:config
security.sandbox.content.level to 0
Ответить | Правка | Наверх | Cообщить модератору

98. "Предложение по включению режима TCP_NODELAY по умолчанию"  +/
Сообщение от timur.davletshin (ok), 11-Май-24, 13:50 
> Можно вопрос к знатоку Firefox?
> Sandbox: seccomp sandbox violation: pid 2247, tid 2250, syscall 441, args 13
> 140541341901696 32 0 0 8.
> [warn] epoll_wait: Function not implemented
> Firefox 115.10 esr Gentoo
> Решается через
> export MOZ_DISABLE_CONTENT_SANDBOX=1
> Работает,но 100500 строчек  с ошибкой все время бегут друг за другом
> без остановки в терминале и чтобы остановить закрываю эмулятор терминала.
> Может быть можно решить по-нормальному?

Знатоки Firefox в Bugzilla. Без шуток, туда лучше сразу иди.

Ответить | Правка | К родителю #63 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру