Алгоритм работы ускорителя SlonAx 3G Имеется ли в открытом доступе, информация об алгоритме работы ускорителя SlonAx 3G ? Небольшая информация: SlonAx 3G - так называемый ускоритель трафика. Насколько я понимаю он занимается тунелизированием трафика с определенной компрессией и фактически при работе через SlonAx, весь трафик клиента сжимается и отправляется по UDP туннелю на сервера SlonAx, а уже оттуда, в обычном виде поступает на нужный сервер. таким же образом, пакеты идут и в обратную сторону. В качестве тунеля, используется UDP протокол, зашифрованный и сжатый неизвестным методом. При этом используются стандартные IP и UDP заголовки. Если говорить о SkyGate, то сервера слонакса расположены в подсети 77.94.34.x Первые 2 байта, представляют собой идентификатор протокола и имеют значение: \x33\x47 , в ASCII выглядящие как: 3G 3 байт, предположительно, всегда имеет значение 0. 4, 5, 6, 7 байты, идентификатор пакета, с каждым новым пакетом, значение увеличивается на 1 13, 14, 15, 16 байты, похожий счетчик. 19, 20 байты - предположительно, размер данных, без заголовка.
Нашел информацию, что трафик шифруется алгоритмами TwoFish и BlowFish и сжимается библиотекой libz но по принципу мультиплексирования сессий.
Составил структуру заголовка пакетов SlonAx 3G PHP: struct slonaxhdr_t { byte ident[3]; int counter1; short test1; short test2; short counter2; short test3; short test4; short test5; short sizedata; //pack size = sizeof(slonaxhdr_t) + sizedata }; Параметр counter1 имеет сетевой порядок расположения байтов, для конвертирования в нормальный формат, используйте функцию htonl.
Небольшая поправка структуры: PHP: byte ident[2]; byte flags; Выше опубликованная структура, подходит только для флага 00