Ethernet бардык жерде жана он миңдеген өндүрүүчүлөр аны колдогон жабдууларды чыгарышат. Бирок, бул түзмөктөрдүн дээрлик бардыгынын бир жалпылыгы бар -
$ ip l
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp5s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 state UP
link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
MTU (Maximum Transmission Unit) бир маалымат пакетинин максималдуу өлчөмүн аныктайт. Жалпысынан, сиз LANдагы түзмөктөр менен билдирүүлөрдү алмашканыңызда, MTU 1500 байт тартибинде болот, жана дээрлик бүт Интернет да 1500 байтта иштейт.Бирок бул коммуникация технологиялары чоңураак пакеттерди өткөрө албайт дегенди билдирбейт. .
Мисалы, 802.11 (көбүнчө WiFi катары белгилүү) 2304 байт MTUга ээ жана тармагыңыз FDDI колдонсо, анда сиздин MTU 4352 байт. Ethernetтин өзүндө "гиганттык кадрлар" түшүнүгү бар, мында MTUга 9000 байтка чейинки өлчөм ыйгарылган (бул режимди NIC, өчүргүчтөр жана роутерлер колдогондо).
Бирок, Интернетте бул өзгөчө зарыл эмес. Интернеттин негизги магистралдары негизинен Ethernet туташууларынан куралгандыктан, башка түзмөктөрдө пакеттердин фрагментацияланышын болтурбоо үчүн де-факто расмий эмес максималдуу пакеттин өлчөмү 1500B деп коюлган.
1500 санынын өзү кызык - компьютер дүйнөсүндөгү константалар, мисалы, эки күчкө негизделет деп күтүүгө болот. Анда 1500B кайдан келген жана эмне үчүн биз аны дагы деле колдонобуз?
Сыйкырдуу сан
Ethernetтин дүйнөдөгү биринчи чоң ачылышы стандарттар түрүндө болду.
Ал кезде көптөгөн атаандаш протоколдор бар болгондуктан жана аппараттык камсыздоодо чектөөлөр болгондуктан, форматтын жаратуучусу 1500 сыйкырдуу санынын пайда болушунда пакеттик буфердин эстутум талаптары роль ойногонун моюнга алат:
Артка карап көрсөк, чоңураак максимум жакшыраак чечим болмок, бирок биз NICтердин баасын эртелеп жогорулаткан болсок, бул Ethernetтин кеңири жайылышына тоскоол болмок.
Бирок, бул бүт окуя эмес. IN
Сегменттерде билдирүүлөрдү жөнөтүүдө өтө чоң кечиктирүүгө алып келбей турган (кээде бир топ бош эмес) жана ошол эле учурда пакеттердин санын ашыкча көбөйтпөгөн санды тандоо керек болчу.
Кыязы, ошол кездеги инженерлер эң “коопсуз” вариант катары 1500 В санын (болжол менен 12000 бит) тандашкан.
Андан бери башка ар кандай билдирүү системалары келип кетти, бирок алардын арасында Ethernet 1500 байт менен эң төмөнкү MTU маанисине ээ болгон. Тармактагы минималдуу MTU маанисинен ашып кетүү же пакеттин фрагментациясын же PMTUD менен алектенүүнү билдирет [максималдуу пакет өлчөмүн табуу тандалган жол үчүн]. Эки варианттын тең өздөрүнүн өзгөчө көйгөйлөрү бар болчу. Кээде ири OS өндүрүүчүлөр MTU баасын андан да төмөн түшүрүшкөн болсо да.
Натыйжалуулук фактору
Биз азыр Интернет MTU 1500B менен чектелгенин билебиз, бул негизинен эски күтүү көрсөткүчтөрүнө жана аппараттык чектөөлөргө байланыштуу. Бул интернеттин натыйжалуулугуна канчалык таасир этет?
Эгерде биз чоң Интернет-трафик алмашуу пунктунан алынган маалыматтарды карасак, анда биз берилген пакеттердин 20% дан кем эмес максималдуу өлчөмүнө ээ экенин көрөбүз. Сиз ошондой эле жалпы LAN трафигин карай аласыз:
Эгер сиз эки графикти тең бириктирсеңиз, сиз төмөнкүдөй нерсени аласыз (ар бир пакет өлчөмү диапазону үчүн трафиктин болжолдору):
Же, эгерде биз бардык ушул аталыштардын трафигин жана башка кызмат маалыматын карасак, башка масштабдагы бир эле графикти алабыз:
Өткөрүү жөндөмдүүлүгүнүн кыйла чоң бөлүгү эң чоң класстагы пакеттердин аталыштарына жумшалат. Трафиктин эң жогорку чегинде 246 ГБ/с болгондуктан, эгер биз баарыбыз "жумбо алкактарга" өткөндө, мындай опция дагы деле бар болсо, анда бул кошумча чыгым болжол менен 41 ГБ/сек болот деп болжолдоого болот.
Бирок менин оюмча, бүгүн интернеттин эң чоң бөлүгү үчүн поезд буга чейин эле кетип калган. Кээ бир провайдерлер 9000 MTU менен иштешсе да, көпчүлүгү аны колдобойт жана Интернетте глобалдуу бир нерсени өзгөртүүгө аракет кылуу кайра-кайра өтө кыйын болуп чыкты.
Source: www.habr.com