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

в 20:07, , рубрики: Интернет вещей, истории из жизни, Разработка для интернета вещей, Сетевые технологии, юмор

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

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

Дело в том, что в стране далёкой и богатой многие фирмы берут мультифункциональные устройства сканер-копир-принтер — причём не мелочь пузатую, каковую хозяева радушные на стол гордо ставят, а такие, каковые сами со стол размером, и ценятся у торговца хитромудого как несколько годовых зарплат — в аренду. И позволяет это фирме малой, незначительной, во-первых, не вываливать суммы такие сразу, а, во-вторых, не заморачиваться покупкой расходников, техобслуживанием и проч.: от арендодателя такого девайса раз в какое-то время приходит специально обученный человек, открывает аппарат, засыпает тонер, смазывает что дОлжно, ну и так далее. Кроме всего прочего, этот человек считывает с аппарата показания счётчиков — сколько было отпечатано листов, сколько израсходовано тонера и т. п. — и записывает эти показания в свою книжечку. В своём центральном офисе он эти показания докладывает, и арендодатель выставляет арендатору счёт вида "Вы в прошлом месяце напечатали 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" и "фрагментация пакетов", и про священные гарантии великого протокола IP.

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

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

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

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

Автор:
Wesha

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js