10 рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рдиреЗрдЯрд╡рд░реНрдХ рдбреНрд░рд╛рдЗрд╡рд░ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреА рддреБрд▓рдирд╛

рдЬрд░реНрдорди рд╡рд┐рд╢реНрд╡рд╡рд┐рджреНрдпрд╛рд▓рдпреЛрдВ рдХреЗ рд╢реЛрдзрдХрд░реНрддрд╛рдУрдВ рдХрд╛ рдПрдХ рд╕рдореВрд╣ рдкреНрд░рдХрд╛рд╢рд┐рдд рдирд┐рд╖реНрдХрд░реНрд╖ рдкреНрд░рдпреЛрдЧ, рдЬрд┐рд╕рдХреЗ рджреМрд░рд╛рди рд╡рд┐рднрд┐рдиреНрди рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ 10-рдЧреАрдЧрд╛рдмрд┐рдЯ рдЗрдВрдЯреЗрд▓ Ixgbe (X10xx) рдиреЗрдЯрд╡рд░реНрдХ рдХрд╛рд░реНрдб рдХреЗ рд▓рд┐рдП рдорд╛рдирдХ рдбреНрд░рд╛рдЗрд╡рд░ рдХреЗ 5 рд╕рдВрд╕реНрдХрд░рдг рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдП рдЧрдП рдереЗред рдбреНрд░рд╛рдЗрд╡рд░ рдпреВрдЬрд░ рд╕реНрдкреЗрд╕ рдореЗрдВ рдЪрд▓рддрд╛ рд╣реИ рдФрд░ рд╕реА, рд░рд╕реНрдЯ, рдЧреЛ, рд╕реА#, рдЬрд╛рд╡рд╛, рдУрдХреИрдорд▓, рд╣рд╛рд╕реНрдХреЗрд▓, рд╕реНрд╡рд┐рдлреНрдЯ, рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдкрд╛рдпрдерди рдореЗрдВ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХреЛрдб рд▓рд┐рдЦрддреЗ рд╕рдордп, рдореБрдЦреНрдп рдзреНрдпрд╛рди рдкреНрд░рддреНрдпреЗрдХ рднрд╛рд╖рд╛ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рд╕рд░реНрд╡реЛрддреНрддрдо рд╕рдВрднрд╡ рдкреНрд░рджрд░реНрд╢рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдкрд░ рдерд╛ред рд╕рднреА рд╡рд┐рдХрд▓реНрдк рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдореЗрдВ рд╕рдорд╛рди рд╣реИрдВ рдФрд░ рдЗрдирдореЗрдВ рдХреЛрдб рдХреА рд▓рдЧрднрдЧ 1000 рдкрдВрдХреНрддрд┐рдпрд╛рдБ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╡рд┐рдХрд╛рд╕ рдлреИрд▓рд╛рдирд╛ рдмреАрдПрд╕рдбреА рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреЗ рддрд╣рдд.

рдбреНрд░рд╛рдЗрд╡рд░ рдХрд╛ рд░рд╕реНрдЯ рд╕рдВрд╕реНрдХрд░рдг рд╕реА рднрд╛рд╖рд╛ рдореЗрдВ рд╕рдВрджрд░реНрдн рдбреНрд░рд╛рдЗрд╡рд░ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдмрд╣реБрдд рдХрд░реАрдм рдирд┐рдХрд▓рд╛ред 32 рдкреИрдХреЗрдЯ рдХреЗ рдмреНрд▓реЙрдХ рдХреЛ рдПрдХ рд╕рд╛рде рднреЗрдЬрдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдб рдХреЗ рддрд╣рдд, рд░рд╕реНрдЯ рдбреНрд░рд╛рдЗрд╡рд░ рдереЛрдбрд╝рд╛ рдкреАрдЫреЗ рдерд╛, рд▓реЗрдХрд┐рди рдкреНрд░рддрд┐ рдмреНрд▓реЙрдХ 32 рд╕реЗ рдЕрдзрд┐рдХ рдкреИрдХреЗрдЯ рд╡рд╛рд▓реЗ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдореЗрдВ, рдЧрддрд┐ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рд╕реА рдбреНрд░рд╛рдЗрд╡рд░ рд╕реЗ рдЕрд▓рдЧ рдирд╣реАрдВ рдереА рдФрд░ 28 рдорд┐рд▓рд┐рдпрди рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕реНрддрд░ рдкрд░ рдкреНрд░рджрд░реНрд╢рди рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдпрд╛ред Xeon CPU E3-1230 v2 3.3 GHz рд╡рд╛рд▓реЗ рд╕рд░реНрд╡рд░ рдкрд░ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб рдкреИрдХреЗрдЯред

10 рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рдиреЗрдЯрд╡рд░реНрдХ рдбреНрд░рд╛рдЗрд╡рд░ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреА рддреБрд▓рдирд╛

рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЕрдЧрд▓рд╛ рд╕реНрдерд╛рди рдЧреЛ рдФрд░ рд╕реА# рднрд╛рд╖рд╛рдУрдВ рдХреЗ рдбреНрд░рд╛рдЗрд╡рд░реЛрдВ рджреНрд╡рд╛рд░рд╛ рд▓рд┐рдпрд╛ рдЧрдпрд╛, рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдХрд╛рдлреА рдХрд░реАрдмреА рдкрд░рд┐рдгрд╛рдо рджрд┐рдЦрд╛рдП (рдЧреЛ рдбреНрд░рд╛рдЗрд╡рд░ рдиреЗ 16 рдкреИрдХреЗрдЯ рддрдХ рдХреЗ рдмреНрд▓реЙрдХ рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдгреЛрдВ рдореЗрдВ рдЬреАрдд рд╣рд╛рд╕рд┐рд▓ рдХреА, рдФрд░ 16 рд╕реЗ рдЕрдзрд┐рдХ рдкреИрдХреЗрдЯ рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдгреЛрдВ рдореЗрдВ рдереЛрдбрд╝рд╛ рд╣рд╛рд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛) рдПрдХ рдмреНрд▓реЙрдХ рдореЗрдВ)ред рдкреНрд░рддрд┐ рдмреНрд▓реЙрдХ 256 рдкреИрдХреЗрдЯ рдХреЗ рд╕рд╛рде, C# рдбреНрд░рд╛рдЗрд╡рд░ рдХрд╛ рдЪрд░рдо рдкреНрд░рджрд░реНрд╢рди рд▓рдЧрднрдЧ 28 рдорд┐рд▓рд┐рдпрди рдкреИрдХреЗрдЯ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб рдерд╛, рдФрд░ рдЧреЛ рдбреНрд░рд╛рдЗрд╡рд░ рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рд▓рдЧрднрдЧ 25 рдорд┐рд▓рд┐рдпрди рдкреИрдХреЗрдЯ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб рдерд╛ред

рдЗрд╕рдХреЗ рдмрд╛рдж, рдХрд╛рдлреА рдХрд░реАрдмреА рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рд╕рд╛рде, рдбреНрд░рд╛рдЗрд╡рд░ рдереЗ
рдЬрд╛рд╡рд╛, рдУрдХреИрдорд▓ рдФрд░ рд╣рд╛рд╕реНрдХреЗрд▓, рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╡рд┐рдЪрд╛рд░ рдХрд┐рдП рдЧрдП рд╡рд┐рдХрд▓реНрдкреЛрдВ рд╕реЗ рдХрд╛рдлреА рдкреАрдЫреЗ рдереЗ рдФрд░ 12 рдорд┐рд▓рд┐рдпрди рдкреИрдХреЗрдЯ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб рдмрд╛рд░ рдХреЛ рдкрд╛рд░ рдирд╣реАрдВ рдХрд░ рд╕рдХреЗред рд╕реНрд╡рд┐рдлреНрдЯ рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдбреНрд░рд╛рдЗрд╡рд░реЛрдВ рдиреЗ рдФрд░ рднреА рдЕрдзрд┐рдХ рдЕрдВрддрд░рд╛рд▓ рджрд┐рдЦрд╛рдпрд╛, рдЬреЛ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб 5 рдорд┐рд▓рд┐рдпрди рдкреИрдХреЗрдЯ рдХреЗ рд╕реНрддрд░ рдкрд░ рд╕реНрдЯреНрд░реАрдо рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдереЗред

рд╢реАрд░реНрд╖ рд░реИрдВрдХрд┐рдВрдЧ рдкрд╛рдпрдерди рдбреНрд░рд╛рдЗрд╡рд░ рджреНрд╡рд╛рд░рд╛ рдкреВрд░реА рдХреА рдЧрдИ, рдЬреЛ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб рдХреЗрд╡рд▓ 0.14 рдорд┐рд▓рд┐рдпрди рдкреИрдХреЗрдЯ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред рдкрд╛рдпрдерди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рдЙрдкрдпреЛрдЧ JIT рдХреЗ рдмрд┐рдирд╛ рдФрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЕрдиреБрдХреВрд▓рди рдХреЗ рдмрд┐рдирд╛ рджреБрднрд╛рд╖рд┐рдпреЛрдВ рдХреА рдЧрддрд┐ рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ (рдХреЛрдб CPython 3.7 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ PyPy рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рдирд╣реАрдВ рдерд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдбреЗрдЯрд╛ рднрдВрдбрд╛рд░рдг рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рдЕрдиреБрдХреВрд▓рди рд╕реЗ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд▓рдЧрднрдЧ 10 рдЧреБрдирд╛ рд╕реБрдзрд╛рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ) ).

рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдмрдлрд░рд┐рдВрдЧ рдХреА рдкреНрд░рднрд╛рд╡рд╢реАрд▓рддрд╛ рдФрд░ рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣рдХрд░реНрддрд╛ рдХреЗ рдкреНрд░рднрд╛рд╡ рдХреЛ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд▓рдВрдмрддрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдП рдЧрдПред рдкрд░реАрдХреНрд╖рдг рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдкреИрдХреЗрдЯ рдХреЛ рдбреНрд░рд╛рдЗрд╡рд░ рджреНрд╡рд╛рд░рд╛ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд┐рдП рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж рдЙрд╕рдХреЗ рднреЗрдЬреЗ рдЬрд╛рдиреЗ рдХреЗ рд╕рдЯреАрдХ рд╕рдордп рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд╡рд┐рд▓рдВрдмрддрд╛ рдХреЛ рдорд╛рдкрд╛ рдЧрдпрд╛ред рдиреЗрддрд╛ рдЕрднреА рднреА рд╕реА рдФрд░ рд░рд╕реНрдЯ рдбреНрд░рд╛рдЗрд╡рд░ рдереЗ, рдЬрд┐рдирдХреЗ рдкрд░рд┐рдгрд╛рдо рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб 1 рдорд┐рд▓рд┐рдпрди рдкреИрдХреЗрдЯ (рд▓рдЧрднрдЧ 20 ╬╝s) рдХреЗ рдкреНрд░рд╡рд╛рд╣ рдХреЗ рд▓рд┐рдП рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдЕрдкреНрд░рднреЗрджреНрдп рдереЗред рдЧреЛ рдбреНрд░рд╛рдЗрд╡рд░ рдиреЗ рдЕрдЪреНрдЫрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдпрд╛, рд╡рд╣ рдиреЗрддрд╛рдУрдВ рд╕реЗ рдереЛрдбрд╝рд╛ рд╣реА рдкреАрдЫреЗ рд░рд╣рд╛ рдФрд░ 20 ╬╝s рдХреЗ рд╕реНрддрд░ рдкрд░ рднреА рдмрдирд╛ рд░рд╣рд╛ред C# рдбреНрд░рд╛рдЗрд╡рд░ рдиреЗ рд▓рдЧрднрдЧ 50 ╬╝s рдХреА рджреЗрд░реА рджрд┐рдЦрд╛рдИред
рд╕рдмрд╕реЗ рд▓рдВрдмреА рджреЗрд░реА рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдФрд░ рдЬрд╛рд╡рд╛ рдбреНрд░рд╛рдЗрд╡рд░реЛрдВ (300 ╬╝s рд╕реЗ рдЕрдзрд┐рдХ рдХреА рд╡рд┐рд▓рдВрдмрддрд╛) рджреНрд╡рд╛рд░рд╛ рджрд┐рдЦрд╛рдИ рдЧрдИ рдереАред

10 рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдореЗрдВ рдиреЗрдЯрд╡рд░реНрдХ рдбреНрд░рд╛рдЗрд╡рд░ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреА рддреБрд▓рдирд╛

рд╕реА рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдбреНрд░рд╛рдЗрд╡рд░ рдФрд░ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдШрдЯрдХреЛрдВ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХрд╛ рдЖрдХрд▓рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзреНрдпрдпрди рдЖрдпреЛрдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рд▓рд┐рдирдХреНрд╕ рдореЗрдВ 39 рдореЗрдВ рд╕реЗ 40 рдореЗрдореЛрд░реА рд╕рдорд╕реНрдпрд╛рдПрдВ рдбреНрд░рд╛рдЗрд╡рд░реЛрдВ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЕрдзрд┐рдХ рд╕реБрд░рдХреНрд╖рд┐рдд рднрд╛рд╖рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдФрд░ рдбреНрд░рд╛рдЗрд╡рд░реЛрдВ рдХреЛ рдХрд░реНрдиреЗрд▓ рд╕реЗ рдмрд╛рд╣рд░ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реНрдерд╛рди рдореЗрдВ рд▓реЗ рдЬрд╛рдиреЗ рдХреА рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдмрдиреЗ рд░рд╣реЗрдВ рдФрд░ рдирд┐рд░реНрдорд╛рддрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕ рджрд┐рд╢рд╛ рдореЗрдВ рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рдкреНрд░рдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, Google рдиреЗ рдУрдПрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдЯреАрд╕реАрдкреА рд╕реНрдЯреИрдХ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рд╣реИ рдзреВрдорд▓ рдЧреЛ рднрд╛рд╖рд╛ рдореЗрдВ, CloudFlare рдХрдВрдкрдиреА рдмрдирд╛рдпрд╛ рдерд╛ рд░рд╕реНрдЯ рдореЗрдВ QUIC рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдмрд╛рдж, Apple рдиреЗ рдореЛрдмрд╛рдЗрд▓ рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ TCP рд╕реНрдЯреИрдХ рдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реНрдерд╛рди рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ рд╣реИ)ред

рдХрд╛рд░реНрдп рдХреЗ рджреМрд░рд╛рди, рдпрд╣ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓рд╛ рдЧрдпрд╛ рдХрд┐ рд░рд╕реНрдЯ рднрд╛рд╖рд╛ рдбреНрд░рд╛рдЗрд╡рд░ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдЙрдореНрдореАрджрд╡рд╛рд░ рд╣реИред рд░рд╕реНрдЯ рдХреА рдХреНрд╖рдорддрд╛рдПрдВ рд╕реА рдбреНрд░рд╛рдЗрд╡рд░реЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд▓рдЧрднрдЧ 2% рд╕реЗ 10% рдкреНрд░рджрд░реНрд╢рди рд╣рд╛рдирд┐ рдХреА рдХреАрдордд рдкрд░ рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рдореЗрдореЛрд░реА рдкреНрд░рдмрдВрдзрди рд╕реЗ рдЬреБрдбрд╝реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдЦрддреНрдо рдХрд░рддреА рд╣реИрдВред рдЧреЛ рдФрд░ рд╕реА# рдХреЛ рдЙрди рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рд╕рд┐рд╕реНрдЯрдо рдШрдЯрдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдЙрдкрдпреБрдХреНрдд рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣рдг рдХреЗ рдХрд╛рд░рдг рдЙрдк-рдорд┐рд▓реАрд╕реЗрдХрдВрдб рд╡рд┐рд▓рдВрдмрддрд╛ рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИред

рд╕реНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╝реЗрдВ