Кіріспе

Трансмиссияны басқару протоколы арқылы деректерді өңдеу жылдамдығын арттыру әдістері. TCP параметрін реттеу әдістері жоғары өткізгіштік күшін және үлкен кешігуі бар желілердегі Трансмиссияны басқару протоколы (TCP) қосылымдарының желілік қанағаттандыру параметрлерін бейімдейді. Дұрыс реттелген желілер кейбір жағдайларда 10 есе жылдам жұмыс істей алады. Дегенмен, олардың нақты салдарына түсінбестен нұсқауларды салғырт орындау өнімділіктің төмендеуіне әкелуі мүмкін.

Жарық ені мен кідірісі көбейтіндісі (BDP)

Жарық ені кідірісі көбейтіндісі (BDP) – негізінен TCP протоколымен қолданылатын термин. Ол TCP «жолын» толтыруға қажетті байттар санын көрсетеді, яғни жіберуші мен қабылдаушы арасында бір уақытта тасымалданатын биттердің максималды санына тең. Жоғары өнімді желілерде өте үлкен BDP мәні болады. Мысал ретінде, 0,5 секундтық оралу уақыты (немесе RTT) және 10 Гбит/с ені бар геостационарлық спутниктік байланыс арқылы байланыс жасайтын екі түйінде 0,5×10 Гбит, яғни 5 Гбит расталмаған дерек бір мезгілде тасымалдануы мүмкін. Спутниктік байланыстарға қарағанда төмен жалатыну деңгейіне ие болғанымен, тіпті құрлықтағы талшықты байланыстар да жоғары сыйымдылығының арқасында өте жоғары BDP мәніне ие болуы мүмкін. Желілер бұрын баяу болған кезде бірнеше жыл бұрын жасалған операциялық жүйелер мен протоколдар, қолжетімді өнімділікке әсер ететін, әлдеқайда кішкентай BDP мәндеріне бейімделген.

Буферлер

TCP-нің бастапқы конфигурациялары 65535 (64 KiB 1) байтқа дейін қабылдау терезесінің мөлшерін қамтитын буферлерді қолдады, бұл баяу байланыстар немесе кішкентай RTT-сі бар байланыстар үшін жеткілікті болды. Төменде сипатталған жоғары өнімділік опциялары үшін үлкен буферлер қажет. Жоғары өнімді желі жүйелерінде жүйедегі кешігулерді басқару үшін буферлеу қолданылады. Әдетте, буфердің мөлшері кез келген уақытта "жолдағы" деректер көлеміне пропорционалды түрде өзгертілуі керек. Желідегі кешігулерге төзімді, өте жоғары өнімділік қолданбалары үшін, аяқтан аяқ жүйеде аралық дерек сақтау нүктелерін орналастыру арқылы үлкен буферлік кешігулерді енгізуге болады, содан кейін деректерді соңғы пункттеріне жеткізу үшін автоматтандырылған және жоспарланған, нақты уақытқа қатысты емес деректерді беруді пайдалануға болады.

TCP жылдамдық шектері

Бір TCP қосылымы үшін ең жоғары қол жетімді өткізу қабілеті әр түрлі факторлармен анықталады. Бір қарапайым шектеу – жолдағы ең баяу байланыстың ең жоғары өткізу қабілеті. Бірақ TCP өткізу қабілеті үшін басқа, көзғазбайтын шектеулер де бар. Биттік қателер де, RTT де қосылым үшін шектеу тудыруы мүмкін.

Терезенің өлшемі

Компьютерлік желілерде RWIN (TCP қабылдау терезесі) – компьютер жіберушінің растауын күтпестен қабылдай алатын деректердің көлемі. Егер жіберуші алғашқы жіберілген пакетке растау алмаса, ол тоқтап, күтеді, ал егер осы күту белгілі бір шектен асып кетсе, тіпті қайта жіберуі мүмкін. Осылайша TCP деректерді сенімді жеткізуді қамтамасыз етеді. Желіде пакеттер жоғалмаса да, терезелеу өткізуді шектей алады. TCP деректерді терезе өлшеміне дейін жібереді, сондықтан желінің толық ені әрқашан толыққанды пайдаланылмайды. Терезе өлшемімен байланысты шектеуді келесідей есептеуге болады:

мұнда RWIN – TCP қабылдау терезесі, ал RTT – маршруттың (жолдың) тұйық циклдік уақыты. Кез келген уақытта TCP қабылдау жағынан жарияланған терезе осы қосылымға бөлінген бос қабылдау жадының мөлшеріне сәйкес келеді. Әйтпесе, орын жетіспеуіне байланысты алынған пакеттерді жоғалту қаупі туындайды. Жақсы өнімділік үшін жіберуші жағы қабылдаушы жағы сияқты жад көлемін бөлуі керек. Себебі, деректер желіде жіберілгеннен кейін де, жіберуші тарап оны сәтті қабылданғаны расталғанға дейін жадында сақтауы тиіс, егер оны қайта жіберу қажет болса. Егер қабылдаушы алыс болса, растаулардың келуіне көп уақыт кетеді. Егер жіберу жады шағын болса, ол толып, жіберуді тоқтатуы мүмкін. Қарапайым есептеу жоғарыда көрсетілген қабылдау жадының мөлшеріне тең, оптималды жіберу жадының мөлшерін береді.

Пакеттер жоғалды

Желіде пакеттер жоғалған кезде қосылымға қосымша шектеу қойылады. TCP жылдамдығы қанағаттандыру алгоритмімен шектелген кезде, пакеттердің аз немесе орташа мөлшерде жоғалтуы болғанда, шектеу мына формула бойынша есептелуі мүмкін (Mathis, et al.):

мұнда MSS – ең үлкен сегмент мөлшері, ал Ploss – пакеттердің жоғалту ықтималдығы. Егер пакеттердің жоғалтуы тым сирек болса және TCP терезесі үнемі толыққандай кеңейсе, бұл формула қолданылмайды.

Жоғары өнімділік үшін TCP опциялары

Жылдар бойы TCP-ге жылдам, жоғары RTT байланыстарында ("ұзын майлы желілер" немесе LFNs) оның тиімділігін арттыру үшін бірнеше кеңейтулер енгізілді. TCP уақыт белгілері (RFC 1323) екі мақсатқа қызмет етеді: олар 32 биттік реттік нөмір өрісінің айналып өтуінен туындаған қатысушылықты болдырмайды және бір RTT ішінде бірнеше жоғалту болған жағдайда RTT-ні дәлірек бағалауға мүмкіндік береді. Осы жетістіктердің арқасында TCP терезесін 64 кБ-тан асыру мүмкін болады, бұл терезе өлшемді кеңейту опциясын (RFC 1323) қолдану арқылы іске асырылады. TCP селективті мойындау опциясы (SACK, RFC 2018) TCP қабылдағышына TCP жіберушісіне қандай сегменттер жоғалғанын нақты хабарлауға мүмкіндік береді. Бұл жоғары RTT байланыстарында, бір терезенің ішінде бірнеше жоғалту мүмкін болғанда тиімділікті арттырады. Path MTU Discovery желіде фрагментация қажеттілігін жояды, пакеттер жоғалған жағдайда тиімділікті арттырады.