- PVSM.RU - https://www.pvsm.ru -

Сказки дiда Панаса. Первая серия

Сiдайте у гурток, малятки. Сейчас дiд Панас расскаже вам казочку.

Фирма, в которой дiд Панас работал году так в 2003, разрабатывала девайсы, которые сейчас, наверное отнесли бы к IoT.

Дело в том, что в стране далёкой и богатой многие фирмы берут мультифункциональные устройства сканер-копир-принтер [1] — причём не мелочь пузатую, каковую хозяева радушные на стол гордо ставят, а такие, каковые сами со стол размером, и ценятся у торговца хитромудого как несколько годовых зарплат — в аренду. И позволяет это фирме малой, незначительной, во-первых, не вываливать суммы такие сразу, а, во-вторых, не заморачиваться покупкой расходников, техобслуживанием и проч.: от арендодателя такого девайса раз в какое-то время приходит специально обученный человек, открывает аппарат, засыпает тонер, смазывает что дОлжно, ну и так далее. Кроме всего прочего, этот человек считывает с аппарата показания счётчиков — сколько было отпечатано листов, сколько израсходовано тонера и т. п. — и записывает эти показания в свою книжечку. В своём центральном офисе он эти показания докладывает, и арендодатель выставляет арендатору счёт вида "Вы в прошлом месяце напечатали 4560 листов, оплатите $45.60".

Так вот, фирма, в которую позвали работать дiда Панаса, родила мышь мысль: "А зачем арендодателям каждый месяц гонять специально обученного человека? Пусть человек ходит только туда, где что-то реально сломалось. А узнавать мы это будем при помощи специально обученной запрограммированной коробочки, которая одним кабелем подключится к этому самому устройству очень-много-функциональному, а другим — к Интернету. Коробочка диагностику всю прочитает, на наш сервер передаст, и доложит арендодателю, к какому конкретно клиенту слать специально обученного человека с бутылью смазки али коробкой тонера, а к какому — всего-навсего счёт в конвертике малом, бумажном."

И сел дiд Панас писать серверную часть, с которой коробочка должна была соединяться и передавать информацию. А саму коробочку — и железо, и софт — фирма аутсорснула в далёкую и загадочную страну Кетай.

Долго ли, коротко ли, прошли годы месяцы, и пришла из далёкой страны коробочка. И подключили её к серверам, и зажужжали тестовые ксероксопринтеры, и заморгала заморская коробочка, и потекли по проводам байтики, и прожевали их написанные дiдом Панасом со товарищи сервера, и выплюнули счета, и возрадовались и CIO, и CTO, и CEO, и shareholder-ы, и выпустили коробочки в продакшн. А дiда Панаса отправили... нет, не на пенсию — на все четыре стороны отправили (слава богу, что с выходным пособием), ибо всем известно: дiд сделал своё дело — дiд может уходить.

Вот только неувязочка вышла: как пошла коробочка по рукам клиентов — оказалось, что ж-ж-ж — неспроста: не всегда отзывались коробочки на призывы серверов своих, а коли отзывались, то не признавали командиров своих, а коли признавали, то несли в ответ ерунду несусветную. А как привозили коробочки в офис фирмы с намерением устроить им допрос с пристрастием — так прекращали коробочки выкобениваться сий же час, и работать начинали без нареканий, аки доктор дiд Панас в спецификации прописал.

И пошли и CEO, и CTO, и CIO, и shareholder-ы нет, shareholder-ы никуда не пошли — не барское это дело — к дiду Панасу на поклон. И встал дiд Панас со своей завалинки, взял в руки посох свой крепкий, деревянный, и молвил: "Помогу я вам, сынки, посмотрю на вашу проблему. Но за таксу не простую, а золотую."

И взошёл дiд Панас в свой пыльный офис, и сел за свой пыльный компьютер, и призвал он демонов, именуемых словами страшными, колдовскими — trafshow(1) и tcpdump(8), и медитировал он над тем, что сказали ему демоны о продакшене. И дошло до дiда Панаса, почему работали коробочки в офисе фирмы, да не всегда работали в продакшне, и вспомнил он заклинания заветные: "maximum transmission unit [2]" и "фрагментация пакетов", и про священные гарантии великого протокола IP.

В офисе, где использовалась сеть быстрая, Ethernet-овая, и jumbo-кадры [3] по ней бродили непуганые — первый же пакет пересылаемый гарантированно всё необходимое в себя вмещал. Когда же привозили коробочку к клиенту неблизкому, путь данных от сервера к ней (и обратно) тернист был и извилист, и коли встречали пакеты жирные на пути своём интерфейсы с MTU невеликими, то плакали интерфейсы сии горючими слезами, и фрагментировали пакеты, и пропихивали фрагменты свозь себя в уверенности полной, что сторона принимающая соберёт пакет исходный из кусочков, в соответствии полном с заветами Винтона Серфа [4] и Боба Кана [5] великих, что в книгу не особо тайную записаны, из листов многих, RFC [6] зовущихся. Но не чтили заветов Серфа и Кана кетайцы ушлые, и обрабатывала коробочка ихняя из приходящих к ней пакетов-кусочков тот только лишь, каковой первым по проводам прибежать успел и не потерялся по дороге — и чихала звучно на все остальные с высоты своей невеликой. А из-за того, что не гарантирует великий протокол IP порядка, а доставку токмо (ибо ежели кому порядок и целостность нужны, тот сынка его призывает, TCP), и видели коробочки вместо стройных сообщений от сервера мусор всякий.

И указал дiд Панас перстом своим, от клавиатуры заскорузлым, на чушь сию несусветную заказчикам. И бил CTO челом о ладонь свою да со всей силы, и закручинился CIO, и вырвал попросил CEO вежливо у дiда Панаса посох его крепкий, деревянный, и умчался на крыльях люминиевых, боинговых, в далёкую страну Кетай, обещав напоследок чего-то раздать ушлым кетайцам — только ветер донёс что-то про "...юлей", и shareholder-ы нет, shareholder-ы никуда не пошли — не барское это дело.

Скоро сказка сказывается, но и ...юли тоже не долго раздаются — не прошло и нескольких недель, как пришли из далёкой страны Кетай коробочки с исправленной прошивкой, и всё за...тряслось, запыхтело, и сервера зажужжали, и полились данные в глубокие закрома баз соответственных, и потекли денежки зелёные стремительным домкратом в карманы shareholder-ов (и теперь-то они уж точно никуда не пошли: вот это — барское дело).

И я там был, только пива не пил — горькое оно. И вообще, сказка — ложь, да в ней намёк, добру молодцу про уровни модели OSI урок, не любо — не слушай, а семинар проводить не мешай.

Автор:
Wesha

Источник [7]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/yumor/370142

Ссылки в тексте:

[1] мультифункциональные устройства сканер-копир-принтер: https://ru.wikipedia.org/wiki/%D0%9C%D0%BD%D0%BE%D0%B3%D0%BE%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D0%BE%D0%BD%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D1%83%D1%81%D1%82%D1%80%D0%BE%D0%B9%D1%81%D1%82%D0%B2%D0%BE

[2] maximum transmission unit: https://ru.wikipedia.org/wiki/Maximum_transmission_unit

[3] jumbo-кадры: https://ru.wikipedia.org/wiki/Jumbo-%D0%BA%D0%B0%D0%B4%D1%80

[4] Винтона Серфа: https://ru.wikipedia.org/wiki/%D0%A1%D0%B5%D1%80%D1%84,_%D0%92%D0%B8%D0%BD%D1%82%D0%BE%D0%BD

[5] Боба Кана: https://ru.wikipedia.org/wiki/%D0%9A%D0%B0%D0%BD,_%D0%A0%D0%BE%D0%B1%D0%B5%D1%80%D1%82_%D0%AD%D0%BB%D0%BB%D0%B8%D0%BE%D1%82

[6] RFC: https://ru.wikipedia.org/wiki/RFC

[7] Источник: https://habr.com/ru/post/592663/?utm_source=habrahabr&utm_medium=rss&utm_campaign=592663