ΠΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½Π° Π²Π΅ΡΡΠΈΡ Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° LibreQoS 1.4, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π·Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠΏΡΠ°Π²Π΅Π΄Π»ΠΈΠ²ΠΎ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° Π½Π°Π»ΠΈΡΠ½Π°ΡΠ° ΡΠ΅ΡΡΠΎΡΠ½Π° Π»Π΅Π½ΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ ΠΈ Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ Π½Π° Π½Π΅Π³Π°ΡΠΈΠ²Π½ΠΈΡΠ΅ Π΅ΡΠ΅ΠΊΡΠΈ, ΠΏΡΠΎΠΈΠ·ΡΠΈΡΠ°ΡΠΈ ΠΎΡ ΠΌΠ΅ΠΆΠ΄ΠΈΠ½Π½ΠΎΡΠΎ Π±ΡΡΠ΅ΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ (Bufferbloat) ΠΎΡ ΠΌΡΠ΅ΠΆΠΎΠ²ΠΎΡΠΎ ΠΎΠ±ΠΎΡΡΠ΄Π²Π°Π½Π΅. ΠΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΎΡ Π΄ΠΎΡΡΠ°Π²ΡΠΈΡΠΈ ΠΈΠ»ΠΈ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΈ Π½Π° ΡΠ°ΡΡΠ½ΠΈ ΠΌΡΠ΅ΠΆΠΈ Π·Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ°ΡΠΈΠΊΠ°, ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½Π΅ Π½Π° ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΎ Π½ΠΈΠ²ΠΎ Π½Π° Π·Π°ΠΊΡΡΠ½Π΅Π½ΠΈΠ΅ ΠΈ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΡΡΠΎΡΠ½Π°ΡΠ° Π»Π΅Π½ΡΠ° Ρ ΠΎΠ³Π»Π΅Π΄ Π½Π° ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠΈΡΠ΅. ΠΠΎΠ΄ΡΡ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Π΅Π·ΠΈΡΠΈ C, Python ΠΈ Rust ΠΈ ΡΠ΅ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΡΠ²Π° ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π· GPLv2. ΠΡΠΎΠ΅ΠΊΡΡΡ ΡΠ΅ ΡΠ°Π·Π²ΠΈΠ²Π° ΠΏΠΎΠ΄ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎΡΠΎ Π½Π° ΠΠ΅ΠΉΠ² Π’Π°Ρ Ρ (Dave Taht), ΡΡΠΎΡΠ½ΠΎΠ²Π°ΡΠ΅Π» Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° Bufferbloat, ΡΡΠ·Π΄Π°ΡΠ΅Π» Π½Π° Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΡΠ° CeroWrt ΠΈ Π°Π²ΡΠΎΡ Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ RFC, ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΠΎΠΏΠ°ΡΠΊΠΈ.
LibreQoS ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ Π½Π° Π·Π°ΠΊΡΡΠ½Π΅Π½ΠΈΡΡΠ° ΠΈ ΡΠ²Π΅Π»ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎΡΡΡΠ° Π½Π° ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΈ ΡΠ΅ΡΠΈΠΈ, ΠΈΠ³ΡΠΈ, ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ Π·Π° ΠΎΠ½Π»Π°ΠΉΠ½ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅, VoIP ΡΡΠ°ΡΠΈΠΊ ΠΈ Π²ΠΈΠ΄Π΅ΠΎΠ²ΠΈΠ·ΠΈΡΠΈ Π² ΡΡΠ»ΠΎΠ²ΠΈΡ Π½Π° Π³ΠΎΠ»ΡΠΌΠΎ Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ Π½Π° ΠΌΡΠ΅ΠΆΠ°ΡΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π°ΡΠ°Π΄ΠΈ ΠΈΠ·ΡΠ΅Π³Π»ΡΠ½Π΅ Π½Π° ΡΠΈΠ»ΠΌΠΈ ΠΎΡ Π½ΡΠΊΠΎΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ Π² Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΏΠΎΡΠΎΠΊΠ° ΠΈΠ»ΠΈ Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡ Π½Π° Π»ΡΠ±ΠΈΡΠ΅Π»ΠΈ Π½Π° ΡΠΎΡΠ΅Π½ΡΠΈ (LibreQoS ΡΠ΅ΡΠ°Π²Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Ρ Π·Π°Π΅ΠΊΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π²ΠΈΠ΄Π΅ΠΎΠ²ΠΈΠ·ΠΈΡΠΈΡΠ΅, ΠΊΠΎΠ³Π°ΡΠΎ Π½ΡΠΊΠΎΠΉ Π² ΡΡΡΠ°ΡΠ° ΠΌΡΠ΅ΠΆΠ° Π·Π°ΠΏΠΎΡΠ½Π΅ Π΄Π° ΠΈΠ·ΡΠ΅Π³Π»Ρ 4K Π²ΠΈΠ΄Π΅ΠΎ). ΠΡΠΈΠ»Π°Π³Π°Π½Π΅ΡΠΎ Π½Π° LibreQoS Π½Π°ΠΌΠ°Π»ΡΠ²Π° Π½Π°Π»ΠΈΡΠ½Π°ΡΠ° ΠΏΠΈΠΊΠΎΠ²Π°ΡΠ° ΡΠ΅ΡΡΠΎΡΠ½Π° Π»Π΅Π½ΡΠ° Π·Π° Π΅Π΄ΠΈΠ½ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π», Π½ΠΎ Π΄Π°Π²Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π΄Π° ΡΠ΅ Π½Π°ΠΌΠ°Π»ΡΡ Π·Π°ΠΊΡΡΠ½Π΅Π½ΠΈΡΡΠ° ΠΈ ΡΠΏΡΠ°Π²Π΅Π΄Π»ΠΈΠ²ΠΎ Π΄Π° ΡΠ΅ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»ΡΡ ΡΠ΅ΡΡΡΡΠΈΡΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ Π²ΡΠΈΡΠΊΠΈ ΡΡΠ°ΡΡΠ½ΠΈΡΠΈ Π² ΠΎΠ±ΠΌΠ΅Π½Π° Π½Π° Π΄Π°Π½Π½ΠΈ. Π ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ ΡΠ΅ΡΡ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° LibreQoS Π΅ Π½Π°ΠΌΠ°Π»ΠΈΠ»ΠΎ Π·Π°ΠΊΡΡΠ½Π΅Π½ΠΈΡΡΠ° ΠΏΡΠΈ ΠΏΡΠΈΠ΅ΠΌ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ 106 Π½Π° 9 ΠΌΡ, Π° ΠΏΡΠΈ ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ ΠΎΡ 517 Π½Π° 23 ΠΌΡ, Π½Π° ΡΠ΅Π½Π°ΡΠ° Π½Π° Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ Π½Π° ΡΠΊΠΎΡΠΎΡΡΡΠ° Π½Π° Π½Π΅ΠΏΡΠ΅ΠΊΡΡΠ½Π°ΡΠΎ ΠΈΠ·ΡΠ΅Π³Π»ΡΠ½Π΅ ΠΎΡ 74 Π½Π° 25 Mbps ΠΈ ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ ΠΎΡ 29 Π½Π° 8 Mbps.
Π ΠΎΡΠ½ΠΎΠ²Π°ΡΠ° Π½Π° LibreQoS ΡΡΠΎΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈΡΠ΅ ΠΎΠΏΠ°ΡΠΊΠΈ CAKE (Common Applications Kept Enhanced) ΠΈ ΠΏΠ»Π°Π½ΠΈΡΠ°ΡΠΈΡ ΠΏΠ°ΠΊΠ΅Ρ fq_codel (Fair Queuing Controlled Delay), Π° ΡΡΡΠΎ ΡΠ°ΠΊΠ° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° eBPF ΠΈ XDP (Express Data Path) Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ Π½Π° Π½ΠΈΠ²ΠΎ Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ² Π΄ΡΠ°ΠΉΠ²Π΅Ρ Ρ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΡΠΊ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ DMA Π±ΡΡΠ΅ΡΠ° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈΡΠ΅. ΠΠ»Π³ΠΎΡΠΈΡΡΠΌΡΡ CAKE Π΅ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠ°Π½ Π΄Π° Π·Π°ΠΌΠ΅ΡΡΠΈ ΠΈ ΠΎΠΏΡΠΎΡΡΠΈ ΡΠ»ΠΎΠΆΠ½Π°ΡΠ° ΠΉΠ΅ΡΠ°ΡΡ ΠΈΡ Π½Π° Π΄ΠΈΡΡΠΈΠΏΠ»ΠΈΠ½ΠΈΡΠ΅ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠ½ΠΈ ΠΎΠΏΠ°ΡΠΊΠΈ, ΡΠΏΠΎΡΠΎΠ±Π΅Π½ Π΅ Π΄Π° ΠΈΠ·Π²Π»Π΅ΡΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½Π°ΡΠ° Π²ΡΠ·ΠΌΠΎΠΆΠ½Π° ΡΠ΅ΡΡΠΎΡΠ½Π° Π»Π΅Π½ΡΠ° ΠΈ Π΄Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΎ Π½ΠΈΠ²ΠΎ Π½Π° Π·Π°ΠΊΡΡΠ½Π΅Π½ΠΈΠ΅ Π΄ΠΎΡΠΈ Π½Π° Π½Π°ΠΉ-Π±Π°Π²Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΠΊΠ°Π½Π°Π»ΠΈ Ρ Π΄ΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° ΠΈ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ° Π½Π° ΡΠ»Π°Π±ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°. LibreQoS
LibreQoS ΠΏΡΠ΅Π΄Π»Π°Π³Π° ΠΈ ΡΡΠ΅Π΄ΡΡΠ²Π° Π·Π° ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅ Π½Π° Π·Π°Π±Π°Π²ΡΠ½ΠΈΡΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ ΠΈΠ·ΠΏΡΠ°ΡΠ°Π½Π΅ΡΠΎ Π½Π° Π·Π°ΡΠ²ΠΊΠ° ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΎΡΠ³ΠΎΠ²ΠΎΡ (RTT, round-trip time), ΡΠ²ΡΡΠ·Π°Π½ΠΎ Ρ ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ, ΡΠΎΡΠΊΠΈ Π·Π° Π΄ΠΎΡΡΡΠΏ ΠΈ ΡΠ°ΠΉΡΠΎΠ²Π΅. ΠΠ° Π°Π½Π°Π»ΠΈΠ·Π° Π½Π° ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ΡΠΎ Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ΅Π½ ΡΠ΅Π± ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, ΠΊΠΎΠΉΡΠΎ Π΄Π°Π²Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° Π²ΠΈΠ·ΡΠ°Π»Π½Π° ΠΎΡΠ΅Π½ΠΊΠ° Π½Π° ΡΡΠ°ΡΠΈΠΊΠ° Π² ΠΌΡΠ΅ΠΆΠ°ΡΠ°, ΠΏΡΠΎΡΠ»Π΅Π΄ΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ΡΠΎ ΠΈ Π·Π°Π±Π°Π²ΡΠ½ΠΈΡΡΠ°, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π·Π° ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠ°Π½Π΅ Π½Π° Π½Π°ΠΉ-Π°ΠΊΡΠΈΠ²Π½ΠΈΡΠ΅ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ. ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° Π³ΡΠ²ΠΊΠ°Π²ΠΈ ΠΉΠ΅ΡΠ°ΡΡ ΠΈΡΠ½ΠΈ ΡΡ Π΅ΠΌΠΈ Π·Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° ΡΡΠ°ΡΠΈΠΊΠ° ΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ UISP ΠΈ Splynx Π·Π° ΠΊΠ°ΡΡΠΎΠ³ΡΠ°ΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠΎΠΏΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ.
LibreQoS ΡΠ΅ ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ° Π½Π° ΡΡΡΠ²ΡΡ, ΡΠ°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ ΠΌΠ΅ΠΆΠ΄Ρ Π³ΡΠ°Π½ΠΈΡΠ½ΠΈΡ ΡΡΡΠ΅Ρ Π½Π° Π΄ΠΎΡΡΠ°Π²ΡΠΈΠΊΠ° ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡ ΡΡΡΠ΅Ρ Π½Π° Π»ΠΎΠΊΠ°Π»Π½Π°ΡΠ° ΠΌΡΠ΅ΠΆΠ°. ΠΠ΄ΠΈΠ½ ΡΡΡΠ²ΡΡ Ρ LibreQoS ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·Π²ΡΡΡΠ²Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° ΡΡΠ°ΡΠΈΠΊΠ° Π·Π° Ρ ΠΈΠ»ΡΠ΄ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΡΠ²ΡΡ Ρ 16-ΡΠ΄ΡΠ΅Π½ CPU Xeon Gold Π΅ Π΄ΠΎΡΡΠ°ΡΡΡΠ΅Π½ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΡΡΠ°ΡΠΈΠΊΠ° Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠΈΡΠ΅ Π½Π° ISP Ρ ΠΊΠ°ΠΏΠ°ΡΠΈΡΠ΅Ρ ΠΎΡ 11 gbit/s.
Π Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ:
- ΠΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΠ΅ Π½ΠΎΠ²Π° Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠ°, Π±Π°Π·ΠΈΡΠ°Π½Π° Π½Π° Π±Π΅ΠΊΠ΅Π½Π΄, Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Rust. ΠΠ΅ΠΊΠ΅Π½Π΄ΡΡ Π²ΠΊΠ»ΡΡΠ²Π°:
- Π€ΠΎΠ½ΠΎΠ² ΠΏΡΠΎΡΠ΅Ρ lqosd, ΠΎΡΠ³ΠΎΠ²Π°ΡΡΡ Π·Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° eBPF ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ, ΠΈΠ·Π²Π»ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ ΠΎΡ eBPF ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅ΡΠΎ Π½Π° ΡΠΈΠ½Π° Π·Π° ΠΎΠ±ΠΌΠ΅Π½ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈΡΠ΅.
- ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ° lqtop Π·Π° ΠΏΡΠ΅Π³Π»Π΅Π΄ Π½Π° ΡΠ΅ΠΊΡΡΠ°ΡΠ° Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡ.
- ΡΠ΅Π± ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ lqos_node_manager Π·Π° ΠΊΠ°ΡΠ΅Π³ΠΎΡΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ°ΡΠΈΠΊΠ°, ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³, ΠΎΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° ΠΈ Π°Π½Π°Π»ΠΈΠ· Π½Π° ΡΠ΅ΠΊΡΡΠ°ΡΠ° Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡ.
- ΠΎΠ±Π²ΠΈΠ²ΠΊΠ°ΡΠ° lqos_python Π·Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΡΠΈΠ½Π°ΡΠ° ΠΎΡ ΡΠΊΡΠΈΠΏΡΠΎΠ²Π΅ Π½Π° Python.
- Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ° Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ lqos_setup.
- ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° Π°Π²ΡΠ΅Π½ΡΠΈΠΊΠ°ΡΠΈΡ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ lqos_users.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΡΡΠΊΠΎΡΠΈΡΠ΅Π» Π·Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΠΌΠΎΡΡΠΎΠ²Π΅ Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° XDP Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½Π°ΡΠ° ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ° Π½Π° ΡΠ΄ΡΠΎΡΠΎ bridge. Π ΡΠΎΠ·ΠΈ ΡΠ΅ΠΆΠΈΠΌ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΠΎΡΡΠΈΠ³Π½Π΅ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Ρ 30%.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π°Π½Π°Π»ΠΈΠ· Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΈ ΠΏΠΎΡΠΎΡΠΈ ΡΡΠ°ΡΠΈΠΊ.
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΡΠ°Π±ΠΎΡΠ° Single-interface, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π΅Π΄ΠΈΠ½ ΠΌΡΠ΅ΠΆΠΎΠ² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΈ VLAN-ΠΎΠ²Π΅ Π·Π° Π²ΡΠ½ΡΠ΅Π½ (Π΄ΠΎΡΡΠ°Π²ΡΠΈΠΊ) ΠΈ Π²ΡΡΡΠ΅ΡΠ΅Π½ (Π»ΠΎΠΊΠ°Π»Π½Π° ΠΌΡΠ΅ΠΆΠ°) ΡΡΠ°ΡΠΈΠΊ.
- ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ Π΅ Π½ΠΎΠ² ΡΠ΅Π± ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Ρ ΠΏΠΎ-Π³ΠΎΠ»ΡΠΌ Π±ΡΠΎΠΉ Π½ΠΎΠ²ΠΈ Π³ΡΠ°ΡΠΈΠΊΠΈ.




ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
