Jump to content
Калькуляторы

Simple Queue. Приоритезация RDP трафика.

Прошу совета, как грамотно дать RDP трафику высший приоритет. Может я сделал не грамотно :mrgreen:
Преамбула.
Есть ЛВС 40 ПК(Unutu + RDP клиент Remmina), канал передачи данный 50 Мбит. Шлюз Mikrotik RB3011UiAS. Часть ПК находятся в складском корпусе, который соединен с административным выделенным каналом 100 Мбит. Основная работа происходит на удаленном RDP сервере. Так же между офисом и сервером поднят PPTP туннель через который подключены офисные и складские принтеры. Т. к. Linux + Remmina + проброс принтеров по RDP - это боль.
Особенно в разрезе того, что печатают, ну очень много. 3-4 тысячи страниц за рабочий день. А часто больше.

Длительное время наблюдалась следующая картина: Регулярные внезапные обрывы RDP сессии. Причем, в складском корпусе это происходило чаще, чем в "офисе". И с каждым годом ситуация ухудшалась. Т. е. если 3 года назад RDP на складе рвалось 2-4 раза в день. То на октябрь 2023 15-20 раз. Пользователи "завыли". Понять их можно... Короче, партия сказала разобраться, комсомол ответил есть.

Для начала был проверен выделенный канал, т. к. первое, что пришло в голову, проблемы с ним. Но, нет. Скорость соответствует заявленной, потерь нет.
Позвонил провайдеру. Само собой говорящая голова из тех. поддержки начала меня уверять, что все просто отлично, они лично контролируют каждый пакет, составляют акт с печатью и т. д. Но, я таки продавил и меня перевели на уровень, где обитают профессионалы).
Пообщавшись с инженером, ситуация начала прояснятся. В течение рабочего дня очень часто полностью выбирается ширина канала, в работу вступает шейпер провайдера и начинает дропать пакеты. А т. к. RDP чувствителен к потере пакетов, сервер тупо разрывает соединение...
Ну, а, поскольку, объем передаваемой информации из года в год растет, проблема прогрессирует вслед за ним. Обрывы сессии на складе происходят чаще, т. к. раундтрип складских пакетов больше и их потери чаще.

Амбула.
Решил построить систему ограничения траффика на простых очередях(Simple Queue), т. к. деревья в данном случае, совершенно избыточны.
Что сделал.
Создал 2 правила в цепочке mange для маркировки RDP Трафика(ip address + port). Первое маркирует соединение, второе пакеты этого соединения.

Создал родительскую очередь(main) с типом PFIFO и размером 100 пакетов. Ограничение скорости 47500 Kbit(5% от ширины канала).

Для приоритезации RDP траффика.
Создал очередь потомка main (RDP) - Max. Limit 47500 Kbit, Limit At 0, Priority 1, Queue Type PCQ, размер очереди 100 пакетов. Общий размер 5000Kib.

Все остальное.
Создал очередь потомка main (ALL) - Max. Limit 47500Kibt, Limit At 4Mbit, Priority 2, Queue Type PCQ, размер очереди 50 пакетов. Общий размер 2500Kib.

Идея всего этого заключается в следующем. Пакеты не должны дропаться "моим" шейпером. Путь лучше будет задержка, чем потери. Для этого увеличил размер основной очереди и очереди RDP. На остальной трафик "пофиг". Выбирать трусы на ягодках можно и так...
Смущают следующие моменты, в следствие того, что я, таки не профессиональный сетевой инженер.

Тип главной очереди и ее длина. Насколько понимаю, работает так. Пакет попадает в главную очередь, и если ее размер меньше заданного, ждет передачи дальше. Если очередь забита, пакет отбрасывается.

Далее пакет попадает в очередь RDP и если он правильно помечен, обрабатывается в ней по алгоритму PCQ с высшим приоритетом. Если очередь забита, пакет отбрасывается.

Если пометки нет. Пакет попадает в ALL и обрабатывается уже там.

Вопросы такие. Насколько правильно выбран тип очередей?
Насколько правильно выбраны размеры очередей?
Насколько адекватно все то, что я понаписали сделал? :mrgreen:

Share this post


Link to post
Share on other sites

AndrK189100, здравствуйте.

 

 

Извиняюсь, что отвечаю не по теме QoS.

 

 

Хотел уточнить, если со стороны сервера используется MS Windows 2022/2019/2016 Server, для работы RDP возможно использование UDP соединения (порт 3389) - RDP версия 8.1. В TCP соединении передаются клавиатура и мышь клиента, в нескольких UDP соединениях передаются медиа-данные от сервера.

 

Опыта работы с Remmina у меня нет, поэтому не могу сказать, поддерживает данный RDP клиент UDP соединение?

 

Если поддержка есть, то возможно канал занимается UDP соединениями поступающими от сервера к клиенту?

 

Можно попробовать отключить поддержку UDP соединения на стороне сервера. Правда, это ухудшит получаемое с сервера качество изображения.

Share this post


Link to post
Share on other sites

6 часов назад, AndrK189100 сказал:

UDP нет. Там под капотом freerdp. 

Разобрался уже и все настроил. Проблема решена...

Для будущих вопрошающих опишите свой конфиг, поможет наверняка кому нибудь 

Share this post


Link to post
Share on other sites

Да тут не в конфиге дело. А в нюансах работы очередей. Я все правильно сделал изначально, но, не было уверенности).

Позже постараюсь эти нюансы описать.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.