تکنیک‌های **تنظیم TCP**، پارامترهایی هستند که تراکم شبکه را در اتصالات پروتکل کنترل انتقال (TCP) درشبکه‌های با پهنای باند و تأخیر بالا تنظیم می‌کند. شبکه‌های خوب تنظیم شده می‌توانند در بعضی موارد تا ۱۰ برابر بهتر عمل کنند. با این حال، پیروی از ناآگاهانه دستورالعمل‌ها بدون درک عواقب واقعی آنها می‌تواند به عملکرد آسیب برساند.

ویژگی‌های شبکه و سیستم
----------------------

### محصول تأخیر در پهنای باند (BDP)

محصول تأخیر در پهنای باند (BDP) اصطلاحی است که در اصل در رابطه با TCP به کار می‌رود تا به تعداد بایتهای لازم برای پر کردن یک «مسیر» TCP اشاره شود، یعنی برابر است با حداکثر تعداد بیت‌های همزمان در انتقال بین فرستنده و گیرنده.

شبکه‌های با کارایی بالا دارای BDP بسیار بزرگ هستند. به یک مثال عملی، دو گره ارتباطی بیش از یک ماهواره لینک با زمان رفت و برگشت تأخیر (و یا زمان رفت و برگشت، RTT) از ۰٫۵ ثانیه و پهنای باند 10 Gbit / s و می‌تواند به 0.5 × 10 10 دارند تا بیت یعنی ۵ گیگابایت = ۶۲۵ مگابایت داده غیرقابل شناسایی در پرواز. علی‌رغم داشتن تأخیرهای بسیار کمتری نسبت به لینکهای ماهواره ای، حتی پیوندهای فیبر زمینی می‌توانند دارای BDP بسیار بالایی باشند زیرا ظرفیت پیوند آنها بسیار زیاد است. سیستم‌های عامل و پروتکل‌های طراحی شده به تازگی چند سال پیش هنگامی که شبکه‌ها کندتر بودند برای آرایش از سفارش‌ها با قدر کوچکتر تنظیم شده‌اند و پیامدهای آن برای عملکرد قابل دستیابی محدود است.

### بافر

تنظیمات اصلی TCP پشتیبانی *TCP از* بافر *اندازه پنجره* حداکثر ۶۵۵۳۵ (۶۴ KiB - 1) بایت دریافت می‌کند، که برای لینک‌های کند یا پیوند با RTTهای کوچک کافی بود. بافرهای بزرگتر توسط گزینه‌های با کارایی بالا که در زیر شرح داده می‌شود مورد نیاز است.

از بافر در سیستم‌های شبکه با کارایی بالا برای مقابله با تأخیر در سیستم استفاده می‌شود. به‌طور کلی، اندازه بافر باید متناسب با مقدار داده «در پرواز» در هر زمان تقسیم شود. برای برنامه‌های بسیار کارآمد که نسبت به تأخیرهای شبکه حساس نیستند، می‌توان با قرار دادن نقاط ذخیره‌سازی داده‌های میانی در یک سیستم انتهایی تا پایان، تأخیرهای بافر پایان بزرگ را به پایان رساند و سپس از خودکار و برنامه‌ریزی شده غیر واقعی استفاده کرد. انتقال داده‌ها برای بدست آوردن داده‌ها به نقاط پایانی نهایی خود.

محدودیت سرعت TCP
----------------

حداکثر توان قابل دستیابی برای اتصال TCP تنها توسط عوامل مختلفی تعیین می‌شود. یک از محدودیت‌های بی‌اهمیت حداکثر پهنای باند با کمترین لینک در مسیر است. محدودیت‌های مهم‌تر و واضح تری مثل خطاهای بیت وجود دارد که می‌تواند محدودیتی برای اتصال و همچنین RTT ایجاد کند.

### اندازه پنجره

در شبکه‌های رایانه ای، **RWIN** (TCP Receive Window) مقدار داده‌ای است که یک کامپیوتر می‌تواند بدون تأیید فرستنده آن را بپذیرد. اگر فرستنده تائیدیه ای برای اولین بسته‌ای که ارسال کرده‌است دریافت نکرده، متوقف می‌شود و منتظر می‌ماند و اگر این انتظار از حد مشخصی فراتر رود، حتی ممکن است مجدداً ارسال شود. اینگونه است که TCP به انتقال داده‌های معتبر دست می‌یابد.

حتی اگر هیچ از دست دادن بسته در شبکه وجود دارد، پنجره می‌توانید محدود توان. از آنجا که TCP قبل از انتظار برای تأیید، داده‌ها را به اندازه پنجره منتقل می‌کند، ممکن است پهنای باند کامل شبکه همیشه مورد استفاده قرار نگیرد. محدودیت ناشی از اندازه پنجره به شرح زیر قابل محاسبه است:

{\displaystyle \mathrm {Throughput} \leq {\frac {\mathrm {RWIN} }{\mathrm {RTT} }}\,\!}

جایی که RWIN TCP Receive Window است و RTT زمان سفر دور برای مسیر است.

در هر زمان معین، پنجره تبلیغ شده توسط طرف دریافت کننده TCP با میزان حافظه دریافتی رایگان که برای این اتصال اختصاص داده شده، مطابقت دارد. در غیر این صورت به دلیل کمبود فضای، احتمال رها کردن بسته‌های دریافتی خطرناک خواهد بود.

طرف ارسال کننده *نیز* باید همان مقدار حافظه را به عنوان سمت دریافت کننده برای عملکرد خوب اختصاص دهد. دلیل این امر این است که، حتی پس از ارسال داده‌ها به شبکه، طرف ارسال کننده باید آن را در حافظه نگه دارد تا اینکه به عنوان دریافت شده با موفقیت پذیرفته شود، فقط در صورت نیاز به ارسال مجدد. اگر گیرنده خیلی دور باشد، تأییدها برای رسیدن به مدت طولانی طول می‌کشد. اگر حافظه ارسال کوچک باشد، می‌تواند اشباع شود و انتشار را مسدود کند. یک محاسبه ساده همان اندازه مطلوب حافظه ارسال را برای اندازه حافظه دریافت شده در بالا می‌دهد.

### از دست دادن بسته

هنگامی که از دست دادن بسته در شبکه رخ می‌دهد، محدودیت اضافی بر اتصال اعمال می‌شود. در مورد از دست رفتن بسته به سبک تا متوسط، هنگامی که میزان TCP با الگوریتم اجتناب از احتقان محدود باشد، می‌توان حد مجاز را مطابق فرمول محاسبه کرد (ماتیس، و همکاران).):

{\displaystyle \mathrm {Throughput} \leq {\frac {\mathrm {MSS} }{\mathrm {RTT} {\sqrt {P\_{\mathrm {loss} }}}}}}

که در آن MSS حداکثر اندازه قطعه و از دست دادن *P* احتمال از دست دادن بسته‌است. اگر از دست دادن بسته به حدی نادر باشد که پنجره TCP به‌طور منظم تمدید شود، این فرمول کاربرد ندارد.

گزینه‌های TCP برای کارایی بالا
------------------------------

برای افزایش عملکرد آن در طی پیوندهای پر سرعت RTT ("شبکه‌های طولانی چربی" یا LFN)، طی سالها تعدادی برنامه افزودنی به TCP انجام شده‌است.

*زمانهای* TCP (RFC 1323) نقش مضاعف ایفا می‌کنند: آنها به دلیل پیچیدن رشته شماره شماره توالی ۳۲ بیتی از ابهامات جلوگیری می‌کنند، و در صورت وجود تلفات متعدد در هر RTT، امکان ارزیابی دقیق RTT را فراهم می‌کنند. با این پیشرفت‌ها، افزایش پنجره TCP فراتر از ۶۴ کیلوبایت، معقول است که می‌تواند با استفاده از گزینه *مقیاس گذاری پنجره* (RFC 1323) انجام شود.

گزینه *تأیید انتخابی* TCP (SACK , RFC 2018) به یک گیرنده TCP اجازه می‌دهد تا دقیقاً از فرستنده TCP در مورد اینکه کدام بخش‌ها گم شده‌اند اطلاع دهد. در صورت امکان چندین ضرر در هر پنجره، این کار باعث افزایش عملکرد در لینک‌های RTT بالا می‌شود.

Path MTU Discovery از لزوم تکه‌تکه شدن در شبکه جلوگیری می‌کند و عملکرد را در صورت از دست دادن بسته افزایش می‌دهد.

منابع
-----

1. ↑  "High Performance SSH/SCP - HPN-SSH". *Psc.edu*. Retrieved 2020-01-23.
2. ↑  "The Macroscopic Behavior of the TCP Congestion Avoidance Algorithm". *Psc.edu*. Archived from the original on 2012-05-11. Retrieved 2017-01-03.