TCP ышанычлылык
Без барыбыз да TCP протоколы белән ышанычлы транспорт протоколы итеп таныш, ләкин ул транспортның ышанычлылыгын ничек тәэмин итә?
Ышанычлы тапшыруга ирешү өчен, мондый факторлар каралырга тиеш, мәсәлән, мәгълүмат коррупция, югалту, кабатлау һәм заказ бирү. Әгәр дә бу проблемалар чишеп булмый, ышанычлы тапшыруга ирешеп булмый.
Шуңа күрә TCP эшли торган механизмнарда эшли торган механизмнар эшли, танылу җавапны таный, ышанычлы тапшыруга ирешү өчен тәрәзә белән идарә итүне җибәрегез.
Бу кәгазьдә без Слайд тәрәзәсенә, Агым контроле һәм TCP контроле белән танышачакбыз. RESTRANUSISSITE механизмы киләсе бүлектә аерым карала.
Челтәр агымы белән идарә итү
Челтәр агымы белән идарә итү яки челтәр юл хәрәкәте белән идарә итү - чыннан да җитештерүчеләр һәм кулланучылар арасындагы нечкә мөнәсәбәтнең чагылышы. Сез, мөгаен, бу сценарийны эштә яки интервьюда очратасыз. Әгәр җитештерүче курчакның кулланучының куллану сәләтеннән зур булса, бу чиратка мәңге үсәр. Serridитәлү очрагында сез белә аласыз, RABBITMQ хәбәрләре артык торгач, бу MQ серверының эш урынын бозуга китерергә мөмкин. TCP өчен дә шулай; Челтәрне тикшерсә, бик күп хәбәрләр кертелсә, кулланучылар үз көчен арттырырлар, һәм җитештерүчеләр челтең чыгышына зур йогынты ясаячак.
Бу күренешне чишү өчен, TCP кабул итү кабул итү мөмкинлеге нигезендә җибәрелгән мәгълүматлар күләмен тәэмин итә, ул агым белән идарә итүе дип атала. Алучының тәрәзәсе тәрәзәсе, җибәрүче тәрәзәсен алып бара. Әйтергә кирәк, бу тәрәзәләр бер TCP тоташу өчен генә, барлык бәйләнешләр дә тәрәзә бүлешми.
TCP тәрәзә өчен үзгәрүчене кулланып агым контроле бирә. Алынган тәрәзә җибәрүче җибәрүчегә кэш мәйданының күпме булуын күрсәтә. Алучының кабул итүченең фактик кабул итү куюы буенча җибәрелгән җибәрүче мәгълүмат күләмен контрольдә тота.
Кабул итүче хуҗа алган мәгълүматның күләмен җибәрүчегә хәбәр итә, һәм җибәрүче бу лимитка кадәр җибәрә. Бу лимит тәрәзә күләмен, TCP башын исегездә тотыгызмы? Алучы байрагын күрсәтү өчен кулланыла торган тәрәзә кыры бар, аны кабул итүче санын күрсәтә ала.
Алучының хуҗасы вакыт-вакыт тәрәзә тикшерү пакетын җибәрәчәк, ул кабул итүче хуҗасының әле дә мәгълүматны кабул итә аламы-юкмы икәнен ачыклау өчен кулланыла. Алыпартучы буферы ташып китү куркынычы астында булганда, тәрәзә күләме җибәрүчегә җибәрелгән мәгълүмат күләмен контрольдә тоту өчен кечерәк кыйммәткә куелган.
Менә челтәр агымы контроль схемасы:
Челтәр токымнары белән идарә итү
Тугашу контроле белән танышканчы, без аңларга тиеш, шуңа күрә без аңларга тиеш, шулай ук тыгылу тәрәзәсе бар, ул, нигездә, җибәрүчегә тәрәзәгә мәгълүмат җибәрә башлый. Шуңа күрә тыгызлык тәрәзәсе TCP җибәрүче тарафыннан алып барыла. Безгә күпме мәгълүмат җибәрү кирәклеген сайлау өчен алгоритм кирәк, чөнки бик аз яки артык күп мәгълүмат җибәргәннән бирле идеаль түгел, шуңа күрә димәк, тыгызлык тәрәзәсе төшенчәсен.
Элеккеге челтәр агымы контроледә җибәрүче кабул итүче кабул итүчеләрне мәгълүмат белән тутырган булса, ләкин без челтәрдә нәрсә булганын белмәдек. Гадәттә, компьютер челтәрләре уртак мохиттә. Нәтиҗәдә, башка хуҗалар арасындагы аралашу аркасында челтәр тыгасы булырга мөмкин.
Челтәр тыгыз булганда, күп санлы пакетлар җибәрелгән булса, ул пакетлар тоткарлану һәм югалту кебек проблемалар тудырырга мөмкин. Бу вакытта TCP мәгълүматны кире чыгарачак, ләкин ретранспорт чарасы челтәрдәге йөкне арттырачак, нәтиҗәдә зур тоткарлыклар һәм пакет югалтулары китерә. Бу явыз циклга кереп, зурракны дәвам итә ала.
Шулай итеп, TCP челтәрдә булганны санга сукмый. Челтәр тыгыз булганда, TCP корбаннар аның җибәргән мәгълүмат күләмен киметеп.
Шуңа күрә, тыелган контроль тәкъдим ителә, бу максатны җибәрүчедән мәгълүмат белән тутырудан качарга. Senge җибәрүче җибәрергә тиешле мәгълүмат күләмен көйләү өчен, TCP тыгызлык тәрәзәсенә шалтыраткан концепцияне билгели. Тугыштыру белән идарә итү Алгоритм челтәрнең зурлыгын челтәрнең тыгызлык дәрәҗәсенә карап, җибәрүче җибәрелгән мәгълүмат күләмен контрольдә тоту өчен тыгызлык тәрәзәсе зурлыгын көйләячәк.
Тогыш тәрәзәсе нәрсә ул? Бу җибәрү тәрәзәсе белән нәрсә эшләргә?
Тугыш тәрәзәсе - җибәрүче җибәрә алган мәгълүматлар күләмен билгеләгән җибәрүче. Тышкы тимер тәрәзә челтәрнең тыгызлык дәрәҗәсе буенча динамик рәвештә үзгәрә.
Тәрәзә җибәрү тәрәзәсе җибәрүче һәм кабул итүче арасында тәрәзә күләмен җибәрүче һәм кабул итүче арасында килешенгән, кабул итүче мәгълүмат күләмен ала алган мәгълүматлар күләмен ала ала. Тугыш тәрәзәсе һәм тәрәзә җибәрү тәрәзәсе белән бәйле; Тәрәзә гадәттә тыгынлыктан, тәрәзәләр алу белән тигез, ягъни swnd = мин (cwnd, rwnd).
Тыгызлык тәрәзәсе түбәндәгечә үзгәрә:
Челтәрдә тыгызлык булмаса, ягъни репенциаль вакыт үтүкләнә, тыелган тәрәзә арта.
Челтәрдә тыгызлык булса, тыгызлык тәрәзәсе кими.
Enderибәрүче челтәрнең Ack танылган пакетны билгеләнгән вакыт эчендә алынганмы-юкмы икәнен күзәтә. Әгәр җибәрүчене билгеле бер вакытта танкуны танымаса, челтәр тыелган дип санала.
Тугыш тәрәзәсенә өстәп, TCP тыгызлык белән идарә итү алгоритм турында сөйләшергә вакыт. TCP тыгызлык белән идарә итү алгоритмы өч төп өлештән тора:
Әкрен башлану:Башта Cwnd тыгыз тыгызлык тәрәзәсе чагыштырмача кечкенә, һәм җибәрүче челтәр тәрәзәсен тиз арада челтәр сәләтенә яраклаша.
Тырышлыктан саклану:Тугыш тәрәзәсе билгеле бер бусагадан арткач, җибәрүче тыгызлык тәрәзәсенең үсеш темпларын әкренләтеп, челтәрне артык йөкләмәс өчен сызыклы тимер юлны арттыра.
Тиз торгызу:Әгәр дә тыгызлык килеп чыкса, җибәрүче тыгызлык тәрәзәсен ясый һәм челтәрне торгызу урынын билгеләргә кертә, аннары тыгызлык тәрәзәсен арттыруны дәвам итә.
Әкрен башлану
TCP тоташуы урнаштырылганда, тыелган тәрәзә башта минимум mss (максималь сегмент күләмен) кыйммәтенә куелган. Шул рәвешле, башлангыч җибәрү дәрәҗәсе MSS / RTT байтлары / икенче. Мөмкин булган киңлек киңлеге гадәттә MSS / RTT-тан күпкә зуррак, шуңа күрә TCP оптималь җибәрү ставкасын табарга тели, ул әкрен башлау ярдәмендә оптималь җибәрү ставкасын табарга тели.
Акрын башлау өчен тыелган тәрәзә бәясе 1 МССны башлап җибәрәчәк, һәм тапшырылган пакетның бәясе бер мсның кыйммәте бер МСС арттырачак, бу Квндның бәясе 2 мс булачак. Аннан соң, петен сегментын уңышлы тапшыру өчен CWND кыйммәте икеләтә арттырыла, һ.б. Конкрет үсеш процессы түбәндәге рәсемдә күрсәтелә.
Ләкин, җибәрү ставкасы һәрвакыт үсә алмый; үсеш кайчандыр тәмамланырга тиеш. Шулай итеп, җибәрү ставкасы кайчан бетә? Акрын башлау гадәттә, җибәрү ставкасының артуын берничә яктан тәмамлый:
Беренче ысул - җибәрү процессы вакытында пакет югалту очрагы. Пакет югалтуда булганда, TCP җибәрүченең токымын 1гә куя һәм әкрен башлау процессын яңадан башлап җибәрә. Бу вакытта әкрен башлангыч бусага төшү төшенчәсе ССТРеш керде, аның башлангыч бәясе, пакетның югалту кыйммәтенең яртысы. Ягъни, тыгылу ачыклангач, ССТРешның кыйммәте тәрәзә кыйммәтенең яртысы.
Икенче ысул - турыдан-туры башлау бусагад стрешының кыйммәте белән турыдан-туры корреляция. SSTREH кыйммәте тыгыз булганда тәрәзә кыйммәтенең яртысы - токым югалтуда, капчык югалтуы SSTRESH-тан зуррак булганда, пакетны югалту белән булырга мөмкин. Шуңа күрә Cwnd-SSTresh-ка SSTREh'ка урнаштыру иң яхшысы, бу TCP тыгызлык режимына күчү һәм әкрен башлау.
Акрын башлау ахыры бетәчәгенең соңгы ысулы - өч артык артык өстәмә акча табылса, TCP тиз рестрансонция башкара һәм торгызу торышына керә. (Өч АКК Пакет бар икән, нигә ул ачык булмаса, ул ретен чыгару механизмында аерым аңлатылачак.)
Тыгызлыктан саклану
TCP тыгызлык белән идарә итү штатына керә, CWND тыгызлык бусагада бусагадан яртыга куелган. Димәк, пакет сегменты алынган саен CWND кыйммәтен икеләтә арттырып булмый дигән сүз. Киресенчә, чагыштырмача консервицион алым Квидның бәясе бер MSS арткан (максималь пакет сегмент озынлыгы), һәр тапшыру тәмамланганнан соң. Мәсәлән, 10 пакет сегментлары танылса да, CWND кыйммәте бер MSS тарафыннан гына артачак. Бу сызыклы үсеш моделе һәм аның үсешенә югары бәйләнгән. Пакет югалгач, Квендның кыйммәте МССка үзгәртелде, һәм ССТРешның кыйммәте Cwnd'ның яртысына куелган. Яисә ул шулай ук 3 артык кеше җаваплары килгәндә, мс үсешен туктатачак. Cwnd'ның кыйммәтен туктатканнан соң, ССТРешның кыйммәте Cwndның кыйммәтенең яртысы итеп язылган, һәм тиз торгызу торышы кертелгән.
Тиз торгызу
Тиз торгызу өлкәсендә, тыелган тәрәзә бәясе Cwnd-ның һәрберсе бер MSS артты, чөнки һәрберсе бер мс, ягъни эзлеклелеккә килми. Бу челтәрдә тиз таралган пакет сегментларын куллану, алга җибәрү эффективлыгын мөмкин кадәр яхшырту.
Lostгалтылган пакет сегменты килеп җиткәч, TCP CWND кыйммәтен киметкәндә, аннары тыгызлыктан качу штатына керә. Бу тыгызлык тәрәзәсенең зурлыгын контрольдә тоту, челтәр тыгыннарын арттырудан саклану.
Әгәр дә тыгызлык белән идарә итү штатыннан соң булган очракта, челтәр торышы җитдирәк һәм TCP тыгызлыктан качуның әкрен башлау халәтеннән күченә. Бу очракта, тыелган тәрәзә бәясе 1 МССка, максималь пакетның максималь сегмент озынлыгы, һәм әкрен башлау бусагадан ссритрехның кыйммәте Cwnd'ның яртысына куелган. Моның максаты - челтәрнең тапшыру ставкасын һәм челтәр тыгынлык дәрәҗәсен тигезләү өчен тогмалар тәрәзәсенең зурлыгын яңадан әкренләп арттыру.
Аннотация
Ышанычлы транспорт протоколы буларак, TCP эзлеклелеге номеры, танылу, репетраны контрольдә тоту, тоташу белән идарә итү, тоташу белән идарә итү һәм тәрәзә белән идарә итү. Алар арасында агым белән идарә итү механизмы җибәрүче җибәрүче тарафыннан җибәрелгән мәгълүматлар күләмен контрольдә тота, бу челтәр тыгызлыгы һәм башкару проблемаларын булдырмый. Тугыш белән идарә итү механизмы җибәрүче җибәргән мәгълүматлар күләмен көйләп челтәр тыгыннарын булдырып кача. Тырышлык тәрәзәсе төшенчәләре бер-берсе белән бәйле, һәм җибәрүчедәге мәгълүматлар күләме тыгызлык тәрәзәсенең зурлыгын динамик контрольдә тоталар. Акрын башлау, тыгызлыктан качу һәм тиз торгызу - TCP тыгызлык белән идарә итүнең өч төп өлеше, челтәрнең потенциал дәрәҗәсенә һәм тыгыз стратегия дәрәҗәсенә китерә торган төр стратегияләр аша тыгылган тәрәзә күләмен көйләү.
Киләсе бүлектә без TCP размерларын җентекләп тикшерәчәкбез. Retransenductionsionз -ләштерү механизмы - ышанычлы тапшыру өчен TCPның мөһим өлеше. Ул югалган, бозылган яки тоткарланган мәгълүматларны яңадан әзерләү белән ышанычлы тапшыру. Ретен чишмә механизмының принцибы һәм стратегиясе кертеләчәк һәм киләсе бүлектә җентекләп анализланачак. Куда калыгыз!
Пост вакыты: 24 февраль-24-2025