Pull to refresh
2
0
Send message

Как учить протоколы без чтения RFC: как сэкономить время при разработке

Reading time7 min
Views8.6K


Если вы разрабатывает приложение, работающее по сети, или проводите отладку работы такого приложения, доскональное знание работы сетевых протоколов сильно облегчит вашу задачу. Первоисточником подобного знания являются RFC и, к счастью, они с давних времен находятся в открытом доступе. Более того, прочитать их можно даже консольных браузером links, так как кроме текста в них ничего не содержится.

Тем не менее, скорее всего большинство читателей Хабра никогда не читали полностью текст хотя бы одного RFC, даже RFC-2616. Помимо зубодробительного стиля бюрократических документов, помехой может служить языковой барьер. К тому же чаще всего нужно понять какой-то определенный аспект архитектуры протокола: длину и тип полей, код возврата, расположение внутри заголовка. Для этого вовсе не обязательно читать все от корки до корки.

Как раз для этого случая написан Protocol, довольно простое консольное приложение, написанное на Python. Оно имеет двоякое назначение.

  • Предоставить разработчикам и инженерам возможность легко и просто увидеть диаграмму заголовков самых распространенных сетевых протоколов прямиком из командной строки.
  • Предоставить исследователям и инженерам возможность быстро создавать ASCII диаграммы заголовков, для своих собственных пользовательских протоколов.
Читать дальше →

Все врут: эпопея с NVMe-серверами и Hi-CPU

Reading time8 min
Views31K
Diskspd лучше использовать вместо CrystalDiskMark, потому что код первой на стыке с GUI второй даёт забавный баг

У нас, в RUVDS, не хватало в линейке NVMe-сервера, чтобы побыстрее и помощнее… Потому что в последний год пошла мода разворачивать на таких Битрикс и 1С. Спрос на услугу есть, у других хостингов она тоже есть и заказывается — в общем, всё шло к тому, что надо просто выбрать конфигурацию и конкретные варианты железа и закупиться во все 11 локаций по миру. А тут надо сказать, что мы поддерживаем сейчас только две конфигурации: побыстрее и помедленнее. Потому что ЗИП, потому что поддержка, потому что софт и так далее — это одна из частей политики адекватных цен. То есть добавится третья, и поменять там что-то можно будет года так через четыре.

У нас везде стоят SSD RAID (даже там, где показывается HDD по тарифу), но мы хотели сильнее, выше и быстрее.

Первое, что мы узнали, — что NVMe не объединяется в RAID нормальными способами, то есть в итоге надёжных дисков ждать не стоит. Второе — в этот же сервер мы хотели запихнуть Hi-CPU и с удивлением установили, что частота 4,5 ГГц — это не серверное, а домашнее десктопное железо и серверных решений такой частоты просто физически не бывает в природе пока.

Плюс по дороге наш админ нашёл фатальный баг в утилите тестирования. В общем, давайте расскажу с тестами, на что именно похоже NVMe-решение в VDS-хостинге.

Сразу скажу, что, возможно, мы что-то не так делали, и если кто-то понимает что — буду очень благодарен.
Читать дальше →

Хватит везде делать микросервисы

Reading time3 min
Views30K

Микросервисы — это не всегда хорошо и не нужно их применять бездумно. Меня бомбит от того, что все хотят себе микросервисы. Не понимают зачем, но хотят. Даже в компаниях из двух человек многие разработчики хотят втянуть раздробить свой продукт на десяток микросервисов. Не надо.


image

И вот почему...

Wi-Fi высокой плотности не существует

Reading time8 min
Views14K

В качестве дисклеймера: я обязан предупредить, что эта статья не слишком уж и техническая, однако про технику и шестерёнки 802.11 мы, несомненно, поговорим. Но в основном — поговорим про плотность.

Я люблю элементарные вопросы, потому что они (прямо как элементарные частицы) на пути в собственные глубины приводят к бесконечности. Когда мы встречаем фразу «Wi-Fi высокой плотности», то так и хочется задать дополнительный вопрос — про какую плотность идёт речь? Плотность чего высока? Ответ, как всегда, не так однозначен, как может показаться.

Читать далее

Hack the hackers: полное руководство по прохождению квеста

Reading time15 min
Views9.6K
Котика разбили, рояль спасли… точнее, наоборот: котика скачали с сервера, роялю поломали ножки, но в целом он бодрячком. И сегодня был последний день, когда все желающие могли попробовать свои силы в скачивании NFT-гифки с танцующим котиком, хотя ноутбук уже пять дней как двинул лапти за печь. А теперь мы вскрываем все карты и рассказываем обо всех загадках и их решениях.
Посмотреть разбор

Glupteba – скрытая угроза: как мы нашли вредонос, который больше двух лет прятался в инфраструктуре заказчика

Reading time9 min
Views16K
2020 год для Solar JSOC CERT оказался непростым, но и 2021-й не отстает, постоянно подкидывая нам интересные кейсы. В этом посте мы расскажем, как обнаружили вредонос (даже целую сеть вредоносов) по, казалось бы, несвойственной ему активности. Он незаметно «жил» в инфраструктуре больше двух лет, втихаря обновлялся и без препятствий собирал ценные данные в инфраструктуре жертвы.


Читать дальше →

Какой рейтинг VPS выбрать?

Reading time4 min
Views12K

Для поиска подходящей VPS многие пользуются различными рейтингами. Там представлено большое количество хостеров среди которых пользователи начинают выбирать подходящего. Но можно ли им доверять? Возможно что этот рейтинг просто проплачен. Поэтому попробуем найти подходящее место для выбора VPS.

Читать далее

14 Python-пакетов, про которые вы скорее всего не знали

Reading time6 min
Views30K


Язык Python предоставляет всем пользователям возможность создавать свои пакеты и делиться ими со всем сообществом. Так появлялись очень популярные библиотеки для работы с данными (Pandas, Numpy, Matplotlib), для машинного обучения (TensorFlow, PyTorch), для веб разработки. Но есть много смешных, полезных или интересных пакетов, про которые вы вероятно никогда не слышали. Именно про них и пойдёт речь дальше.

Читать дальше →

Внутри материнской платы: анализ технологий, лежащих в основе компонентов ПК

Reading time15 min
Views62K

Сейчас уже едва ли не у каждого дома, на работе или на учебе есть свой настольный ПК. Кто-то использует его для составления налоговых деклараций, кто-то для гейминга, а кто-то и сам собирает компьютеры. Но насколько хорошо вы знакомы с компонентами, что находятся внутри ПК? Возьмем, к примеру, скромную материнскую плату: она ​​сидит себе там, внутри, тихо поддерживает все в рабочем состоянии и редко получает столько же внимания, как, скажем, процессор или видеокарта.

Однако материнские платы не менее важны для работы компьютера — и имеют не менее впечатляющую начинку. Давайте же посмотрим, что находится у них внутри, изучим их, проанализируем, декомпозируем и узнаем, за что отвечает каждый бит.

Читать далее

Камера против эвакуаторов, угонщиков, дачных «гостей»

Reading time6 min
Views22K


Есть понимание, что видеокамера, доступная по цене и функционально несложная поможет решить некоторые вопросы как автолюбителей, так и дачников.

В статье не будет затрагиваться этическая сторона вопроса продукта формата DIY (сделай сам) и кому он больше пригодится — нарушителям или законопослушным гражданам. Вместо этого, предлагается сконцентрироваться на технической стороне решения, которое наверняка будет интересно в ситуациях, вынесенных в заголовок статьи.

Итак, что будет делать камера, которую предлагается собрать бюджетно и не сильно погружаясь в технические аспекты вопроса.

Алгоритм работы следующий. Камера после включения «поднимает соединение» через usb 3G модем, соединяется с VPN, мониторит картинку и, при появлении движения на ней, делает фото и, заодно, отправляет фото в телеграм-канал владельца. Из опций — возможность записывать timelapse, видео и… возможность «покрутить головой» удаленно, то есть поуправлять камерой и посмотреть «что к чему». Нейросетей здесь нет, все достаточно просто.
Читать дальше →

Практическое руководство по анонимности в онлайне

Reading time9 min
Views215K

Направленная антенна для удалённого доступа к публичному Wi-Fi

Обеспечить собственную безопасность (анонимность) в онлайне — тяжкий труд, требующий массивного объёма знаний. Даже лучшие профессионалы не всегда справляются.

Но это возможно.

Предупреждение. Для усвоения информации в полном объёме требуется несколько недель.
Читать дальше →

Лучшие CDN для работы в России и в мире: сравнительный обзор

Reading time13 min
Views29K
image

Введение


Сети доставки контента (CDN) в наши дни получили широкое распространение. Это вполне понятно: растёт число интернет-сервисов с глобальной аудиторией, и почти все такие сервисы так или иначе связаны с доставкой тяжелого (фото-, аудио-, видео- и не только) контента.


Число пользователей Интернета, в особенности — мобильного, растёт с каждым днём, и создатели сайтов и приложений вполне закономерно задумываются об обеспечении быстрой работы в любой точке мира. Спрос рождает предложение — и количество компаний, предлагающих услуги CDN, тоже постоянно растёт. Достаточно набрать в Гугле соответствующий запрос — и в поисковой выдаче будет представлено огромное количество рекламных объявлений.


Как выбрать действительно качественного провайдера CDN? На что обратить внимание в первую очередь?


Читать дальше →

Выживание Windows XP x32 на современных ПК c процессором Intel

Reading time7 min
Views66K

Речь пойдет про платы периода 2016-2021+, т.е. процессоры Skylake и выше. На платформах AMD почти те-же проблемы, но их меньше. Статья не является "пошаговой инструкцией", в основном теория и способы решения проблем

Читать полностью

Хабр, давай поштурмим

Reading time5 min
Views7.9K
Мы написали почти 1800 статей в свой блог на Хабре: профессиональных авторских переводов, серий, статей, фан-контента, спецпроектов. Со стороны может показаться, что это очень просто: нашёл удачную идею и написал, нашёл классный пост и перевёл. Делов-то. Но кто писал на Хабр, тот в Форбсе не смеётся: важно провести фактчекинг, проверить корректность всех формулировок подобрать заголовок и изображение, сверстать, выпустить и F5, F5, F5 в ожидании плюсов минусов, комментариев, багрепортов в личку. И знаете, что самое интересное? Даже спустя пять лет эти ощущения не отпускают: каждый раз как в первый раз.

В общем, идеи начинают иссякать. Поэтому мы просим вас нам помочь.


Читать дальше →

DDoS атаки на 7 уровень — защита сайтов

Reading time6 min
Views11K
DDoS атаки на 7 уровень (на уровень приложения) наиболее простой способ привести в нерабочее состояние сайт и навредить бизнесу. В отличие от атак на другие уровни, когда для отказа сайта необходимо организовать мощный поток сетевого трафика, атаки на 7 уровень могут проходить без превышения обычного уровня сетевого трафика. Как это происходит, и как от этого можно защищаться я рассмотрю в этом сообщении.
Читать дальше →

Некоторые уязвимости цифрового общества

Reading time9 min
Views4.5K

Цифровизация стремительно охватывает важнейшие сферы общественной жизни – от получения социальных услуг, оформления кредита до обмена квартиры или покупки автомобиля. Сейчас уже трудно представить жизнь без портала гос. услуг, мобильного банкинга или интернет-магазинов. Такие услуги стали возможными благодаря технологиям цифровой идентификации, скоростной мобильной связи, централизации баз данных гос. органов и конечно же модернизации нормативно-правовых регламентов. Но как и другие технологии они не лишены критических уязвимостей, от скорейшего устранения которых зависит защищенность и безопасность будущего цифрового общества.

Давайте попробуем рассмотреть некоторые уязвимости, которые могут создать прямой материальный ущерб для рядовых граждан – от потери денежных средств и имущества до кражи идентификатора личности и биометрического профиля.

Читать далее

Используем GPU для повышения производительности JavaScript

Reading time7 min
Views17K
image

Мы, разработчики, всегда стремимся искать возможности повышения производительности приложений. Когда речь идёт о веб-приложениях, то улучшения обычно вносятся только в код.

Но думали ли вы об использовании мощи GPU для повышения производительности веб-приложений?

В этой статье я расскажу о библиотеке ускорения JavaScript под названием GPU.js, а также покажу вам, как повысить скорость сложных вычислений.

Что такое GPU.js и почему его стоит использовать?


Если вкратце, GPU.js — это библиотека ускорения JavaScript, которую можно использовать для любых стандартных вычислений на GPU при работе с JavaScript. Она поддерживает браузеры, Node.js и TypeScript.

Кроме повышения производительности есть и множество других причин, по которым я рекомендую использовать GPU.js:

  • В основе GPU.js лежит JavaScript, что позволяет использовать синтаксис JavaScript.
  • Библиотека берёт на себя задачу автоматической транспиляции JavaScript на язык шейдеров и их компиляции.
  • Если в устройстве отсутствует GPU, она может «откатиться» к обычному движку JavaScript. То есть вы ничего не потеряете, работая с GPU.js.
  • GPU.js можно использовать и для параллельных вычислений. Кроме того, можно асинхронно выполнять множественные вычисления одновременно и на CPU, и на GPU.

Учитывая всё вышесказанное, я не вижу никаких причин не пользоваться GPU.js. Давайте узнаем, как его освоить.
Читать дальше →

Как я обогреваю свой дом при помощи майнинга криптовалют

Reading time5 min
Views140K
После создания собственного смарт-электросчётчика из деталей за 4 доллара я начал ежедневно проверять уровень потребления электричества в доме, благодаря чему понял, насколько дорого обходится его обогрев. Особенно потому, что всё отопление и горячая вода в моём доме с низким энергопотреблением создаётся электричеством. У меня на крыше установлены солнечные панели пиковой мощностью 4,8 кВт, но зимой они по понятным причинам покрывают не так много затрат.


В холодные дни я плачу за электричество до 6 евро в день

Что у меня есть и как это улучшить



Nilan Compact P: нагревает воздух, а также имеет бойлер на 200 литров

Мой дом обогревается (и охлаждается) центральной системой вентиляции с тепловым насосом. По сути, мой тепловой насос втягивает холодный воздух снаружи, обогревает его и выдувает его во все комнаты, а также нагревает воду. Также на случай очень холодных дней у меня в каждой комнате есть инфракрасные панели.
Читать дальше →

Что запрещает принцип Паули?

Reading time7 min
Views29K

Принцип запрета Паули с однозначной многочастичной волновой функцией эквивалентен требованию, чтобы волновая функция была антисимметричной по отношению к обмену частицами. Как это объяснить на пальцах? Легко - ткните пальцем в стол, в монитор, во что-нибудь твердое. Глубоко пронзили материю? Удалось достичь перекрывания атомных электронных облаков пальца и стола? Нет? Не удивительно. Читайте дальше, если хотите узнать, почему так.

Читать далее

Fiddler = удобный сниффер + прокси сервер

Reading time8 min
Views149K

Привет. В данной статье расскажу как и зачем можно изменять HTTP пакеты при отправке на сервер и при получении ответов от сервера.
В статье много практических примеров.

Читать далее

Information

Rating
5,368-th
Registered
Activity