Рубрика «сетевые протоколы»

image

Здравствуйте, дорогие друзья!

Что общего, между ретро-сетью ИОЛА и канонической тест-игрой DOOM? Правильно: мультиплеер, игра по сети. В данном очерке вы увидите настройку 8-ми битной сетевой ISA-платы от отечественного производителя, сети ИОЛА и мультиплеер DOOM. А не увидите вы следующего: не будет никаких Windows (ну или самую малость), Linux и xBSD, сегодня только чистый-светлый MS-DOS 6.22.

В статье используются процессоры Am386 SX-33. Приготовьтесь к крайне медленному отображению игрового процесса, это сделано намеренно, ведь процессор 80386, первый в своем поколении, способный протянуть сквозь себя вышеописанную игру, хочется напомнить, как это было, ретро ведь.

Кто не равнодушен к ретро-железу и ретро-геймингу, добро пожаловать под кат, вас ждут фото, конфиги и видеодемонстрация процесса, следуйте за мусье.Читать полностью »

Что ты такое, dhclient? - 1

Сетевой стек Linux не прост даже на первый взгляд: приложение — в юзерспейсе, а всё, что после сокета, — в ядре операционки. И там тысяча реализаций TCP. Любое взаимодействие с сетью — системный вызов с переключением контекста в ядре.

Чтобы лишний раз не дёргать ядро прерываниями, придумали DMAЧитать полностью »

image

Откройте любую статью с обзором HTTP/1.1. Скорее всего, там найдётся хотя бы один пример запроса и ответа, допустим, такие:

GET / HTTP/1.1
Host: localhost

HTTP/1.1 200 OK
Date: Sat, 09 Oct 2010 14:28:02 GMT
Server: Apache
Content-Length: 38
Content-Type: text/html; charset=utf-8

<!DOCTYPE html>
<h1>Привет!</h1>

Теперь откройте статью с обзором HTTP/2 или HTTP/3. Вы узнаете о мультиплексировании запросов, о сжатии заголовков, о поддержке push-технологий, но вряд ли увидите хоть одно конкретное сообщение. Ясно, почему так: HTTP/1.1 — текстовый протокол, тогда как сиквелы к нему бинарные. Это очевидное изменение открывает дорогу ко множеству оптимизаций, но упраздняет возможность просто и доступно записать сообщения.

Поэтому в этой статье предлагаю покопаться в кишках у HTTP/2: разобрать алгоритмы установки соединения, формат кадров, примеры взаимодействия клиента с сервером.Читать полностью »

image

В Китае жизнь превратилась в компьютерную игру. Или даже в эпизод «Черного зеркала». Там с 01.01.2021 принят новый гражданский кодекс, официально узаконивший «Систему социального кредита». Теперь каждому гражданину присваивается стартовый рейтинг в 1000 баллов. Благодаря вездесущим камерам видеонаблюдения, Единый информационный центр анализирует каждого по 160 тысячам различных параметров из 142 учреждений. Если рейтинг больше 1050 баллов, то это образцовый гражданин и маркируется индексом ААА. С 1000 баллов можно рассчитывать на А+, а с 900 – на B. Если рейтинг упал ниже 849 – это уже «мутная личность» из категории C, кого запросто могут уволить из государственных и муниципальных структур. Те, у кого меньше 600 баллов попадают в группу D, это сравнимо с «чёрной меткой». Люди с рейтингом D не могут устроиться на нормальную работу, им не дают кредиты, не продают билеты на транспорт и даже могут отказать в аренде велосипеда. Для сравнения, человеку с рейтингом А+ велосипед в аренду дадут бесплатно и еще разрешат полчаса кататься на нем без единого юаня. Человек со средним рейтингом С велосипед дадут только под залог в 200 юаней.

В Китае аналогичный принцип ранжирования людей применяют и в Интернете. А компания Huawei решила пойти дальше и разработала новый стек протоколов, с которым провайдеры могут блокировать доступ в Сеть любого пользователя с низким рейтингом.

New IP — следующий этап развития Интернета или ужесточение контроля над пользователями - 2

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

Формат RFC существует с 1969 года — его представили во время обсуждения ARPANET. Тогда инженер Стив Крокер написал RFC 1 о работе программного обеспечения хоста.

С тех пор прошло более 50 лет, но Request for Comments все еще в ходу — опубликовано ~9 тыс. документов по сетевым протоколам, моделям хранения данных и алгоритмам шифрования.

В этом многообразии встречаются RFC, у которых нет практического применения. Их написали по большей части ради шутки. Сегодня расскажем о некоторых находках из этой области.

«Шутки ради»: пара занимательных RFC - 1Читать полностью »

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

Как работает атака TCP Reset - 1

Эта атака имела последствия и в реальном мире. Опасения её использования вызвали внесение изменений в сам протокол TCP. Считается, что атака является важнейшим компонентом Великого китайского файрвола («Золотого щита»), который используется китайским правительством для цензурирования Интернета за пределами Китая. Несмотря на её впечатляющую биографию, для понимания механизмов этой атаки необязательно обладать глубокими знаниями работы TCP. Разумеется, понимание её тонкостей способно многому научить вас об особенностях реализации протокола TCP, и, как мы вскоре убедимся, вы даже сможете провести эту атаку против себя при помощи одного только ноутбука.

В этом посте мы:

  • Изучим основы протокола TCP
  • Узнаем, как работает атака
  • Проведём атаку против себя при помощи простого скрипта на Python.

Прежде чем приступать к анализу механики атаки, давайте сначала посмотрим, как она используется в реальном мире.Читать полностью »

Это — подборка материалов о перспективных сетевых протоколах Roughtime и Dat, методах построения радиорелейной Wi-Fi-сети и способах обнаружения брутфорса в сети провайдера.

Сетевой дайджест: ИБ, протоколы и квантовый интернет - 1Читать полностью »

В нашем блоге мы часто говорим об устройстве различных сетевых протоколов. Сегодня расскажем об ONPC, который расширяет возможности Wi-Fi-сетей. Под катом о том, как он работает.

«Stayin' alive, stayin' alive»: новый протокол увеличит радиус возможного использования Wi-Fi на 60 метров - 1Читать полностью »

Введение

Наша компания Leaning Technologies предоставляет решения по портированию традиционных desktop-приложений в веб. Наш компилятор C++ Cheerp генерирует сочетание WebAssembly и JavaScript, что обеспечивает и простое взаимодействие с браузером, и высокую производительность.

В качестве примера его применения мы решили портировать для веба многопользовательскую игру и выбрали для этого Teeworlds. Teeworlds — это многопользовательская двухмерная ретро-игра с небольшим, но активным сообществом игроков (в их числе и я!). Она мала как с точки зрения скачиваемых ресурсов, так и требований к ЦП и GPU — идеальный кандидат.

Портируем многопользовательскую игру с С++ на веб c Cheerp, WebRTC и Firebase - 1

Работающая в браузере Teeworlds
Читать полностью »

image

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

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

В целом существует два основных типа сетевых архитектур: peer-to-peer и клиент-серверная. В архитектуре peer-to-peer (p2p) данные передаются между любыми парами подключенных игроков, а в клиент-серверной архитектуре данные передаются только между игроками и сервером.

Хотя архитектура peer-to-peer по-прежнему используется в некоторых играх, стандартом является клиент-серверная: она проще в реализации, требует канал меньшей ширины и облегчает защиту от читерства. Поэтому в этом руководстве мы сосредоточимся на клиент-серверной архитектуре.
Читать полностью »


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