Сто дней лабораторных работ vol.5

Пятый день

В понедельник не получилось ничего написать -  навалилась работа.


Сегодня в программе:

EVE-NG, ROS и QoS;

С++  - делим на ноль;

Python  - иду по книге.


EVE-NG и простые очереди "Simple Queue" в RouterOS:

Сто дней лабораторных работ vol.5 IT, Самообразование, C++, Python, Network, Длиннопост

Есть три типа QoS -  Best Effort, IntServ, DiffServ

Пикачу DiffServ, я выбираю тебя!


Сегодня будет ГУЙ.

Сто дней лабораторных работ vol.5 IT, Самообразование, C++, Python, Network, Длиннопост

Лицензия CHR у меня уровня Free - поэтому ограничение скорости 1Mb/s на порт. Суммарная емкость локальной сети  Traf_Gen1+Traf_Gen2+Traf_Gen3 = 3Mb/s

Выход в мир (Traf_Client)  -  1Mb/s  - жадный, жадный арендодатель.


Про HTB, CIR, MIR  и в где в Packetflow Diagram находится QoS в следующих частях попробую остановиться подробнее.


Действующие лица:

Router_lan - корневой маршрутизатор в сети арендодателя. Через него проходят в мир все соединения из локальной сети. Firewall, Conntrack, NAT, DHCP-Server, QoS  вот это вот все.

Traf_gen1..3 - Представляют собой граничные маршрутизаторы, допустим, арендаторов.

Traf_Client - пусть будет весь интернет.

Сто дней лабораторных работ vol.5 IT, Самообразование, C++, Python, Network, Длиннопост

Сначала запускаю без очередей Bandwidth test:

1 устройство - ожидаемо съело весь канал

Сто дней лабораторных работ vol.5 IT, Самообразование, C++, Python, Network, Длиннопост

Три устройства ожидаемо делят канал +/-  поровну:

Сто дней лабораторных работ vol.5 IT, Самообразование, C++, Python, Network, Длиннопост

Но Traf_Gen1 денег платит больше за интернет, занес админу пиво. Поэтому даем ему гарантированно 600 kb/s, а Traf_Gen2 получит 200 kb/s по договору, а Traf_Gen3 админа в лес послал, поэтому получает в нос 100kb/s.

Включаю родителя очередей. И гвоздиком прибиваю потребителей трафика к скоростям:


Как и ожидалось все устройства получили выход в "мир" согласно купленным билетам:

Сто дней лабораторных работ vol.5 IT, Самообразование, C++, Python, Network, Длиннопост

Сейчас все очень просто. Мало потребителей, руками прибитые лимиты.  Вообще не интересно.

В следующей лабе настрою динамические "Simple Queue" по DHCP Lease - подключился, получил адрес, получил свою очередь. Можно поиграть с типами очередей. Потом можно попробовать приоритезацию по типу трафика: sip, http(s) итд. Потом дерево очередей там не обойтись без mangle.


С++


Делить на 0 нельзя, так сказал калькулятор

Сто дней лабораторных работ vol.5 IT, Самообразование, C++, Python, Network, Длиннопост

Читаю про "точка останова" и условия

Далее много текста про отладку и выполнение кода построчно.

Сто дней лабораторных работ vol.5 IT, Самообразование, C++, Python, Network, Длиннопост

Вроде работает:

Сто дней лабораторных работ vol.5 IT, Самообразование, C++, Python, Network, Длиннопост

Последняя строчка ломает программу:

Сто дней лабораторных работ vol.5 IT, Самообразование, C++, Python, Network, Длиннопост
Сто дней лабораторных работ vol.5 IT, Самообразование, C++, Python, Network, Длиннопост

В шестой части планирую это исправить.


Python.

IPython!

Установил, знакомлюсь:

Сто дней лабораторных работ vol.5 IT, Самообразование, C++, Python, Network, Длиннопост

Знакомлюсь...

Сто дней лабораторных работ vol.5 IT, Самообразование, C++, Python, Network, Длиннопост

По питону пока никакого вывода. Продолжу про него писать когда пойдут базовые скрипты и GNS3 с эмуляцией оборудования Cisco.


Всем не жадных арендодателей! :)