---
title: کاربرد و نحوه عملکرد MUX 
comments: false
---

<div dir="rtl" markdown="1">

# کاربرد و نحوه عملکرد MUX

## MUX چیست؟
Multiplexing که معمولاً به عنوان MUX شناخته می شود، به عنوان یک جزء حیاتی در پروتکل های VPN (شبکه خصوصی مجازی) عمل می‌کند و امکان انتقال همزمان جریان های داده‌های متعدد را از طریق یک کانال ارتباطی واحد فراهم می کند. در حوزه VPN ها، مالتی‌پلکس نقشی اساسی در بهینه سازی انتقال داده ایفا می‌کند. با تعریف مجموعه‌ای از جریان‌ها برای MUX در پروتکل VPN، جلساتی برای تسهیل عبور همه ترافیک از طریق این جریان‌ها ایجاد می‌شوند. این رویکرد نه تنها فرآیند انتقال را ساده می‌کند، بلکه اقدامات امنیتی را با پنهان کردن الگوهای انتقال افزایش می‌دهد، بنابراین رهگیری یا دستکاری داده ها را برای نهادهای غیرمجاز چالش برانگیزتر می کند.

## پروتکل‌های MUX
ماکس عموما از ۳ کتابخانه برای مالتی‌پلکس کردن استفاده می‌کند که به ترتیب توضیحات مختصری درباره هر کدام ارائه می‌گردد.

#### SMUX
Smux (Simple MUltipleXing) یک کتابخانه مالتی پلکسی برای Golang است. برای ارائه قابلیت اطمینان و سفارش، مانند TCP یا KCP، به یک اتصال اساسی متکی است و مالتی پلکسی جریان محور را فراهم می کند. هدف اصلی این کتابخانه قدرت مدیریت اتصال برای kcp-go است. [بیشتر بخوانید](https://github.com/xtaci/smux)

#### YAMUX
یک کتابخانه دیگر برای Golang است که قابلیت اطمینان‌پذیری و سفارشی‌سازی بالایی دارد و بر مبنای پروتکل TCP است. [بیشتر بخوانید](https://github.com/hashicorp/yamux)
#### H2MUX
در این الگوریتم که برمبنای HTTP2 است، پروتکل مقاوم‌تری برای مالتی‌پکس نمودن ارائه می‌شود که بر روی Golang نسخه 1.6 به بعد کار می‌کند. [بیشتر بخوانید](https://pkg.go.dev/golang.org/x/net/http2)

## ماکزیمم اتصالات MUX
حداکثر تعداد کانکشنی که هنگام مالتی‌پلکس در استریم‌ها برقرار می‌گردد را تعین می‌کند.
## مینیمم تعداد استریم MUX
هنگامی که مالتی‌پلکس برقرار می‌شود، یک تعداد کانال به مقصد برثرار می‌شود به این کانال‌ها استریم می‌گویند و همه کانکشن‌های TCP از درون این کانال‌ها ارسال می‌گردند. این پارامتر حداقل تعداد استریم را در MUX معین می‌کند.
## ماکزیمم تعداد استریم MUX
این پارامتر حداکثر تعداد استریم را در MUX معین می‌کند.
## MUX Padding
این پارامتر زمانی که فعال می‌شود، کانکشن‌های بدون پد ریجکت می‌شوند.
## MUX Brutal
الگوریتم کنترل ترافیک TCP است که کمک می‌کند در زمانی که نویز روی ترافیک اعمال می‌شود (فیلترینگ)، کاهش سرعت محسوس نباشد. بدین صورت وقتی ترافیک به عنوان مثال تا ۱۰مگابیت بر ثانیه افزایش می‌یابد، موقع ارتباط مجدد، سرعت از صفر شروع نمی‌شود بلکه از ۱۰ مگابیت بر ثانیه آغاز می‌شود و این کمک می‌کند کاهش سرعت بر اثر نویز محسوس نباشد.


</div>
