Перейти к содержимому

Поиск по сайту

Результаты поиска по тегам 'network'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип публикаций


Блоги

  • Робот Байт
  • Fingercomp's Playground
  • 1Ridav' - блог
  • Totoro Cookies
  • Блог cyber01
  • IncluderWorld
  • KelLiN' - блог
  • Крутой блог
  • eutomatic blog
  • Programist135 Soft
  • Сайт в сети OpenNet
  • PieLand
  • Очумелые ручки
  • Блог недоблоггера
  • В мире Майнкрафт
  • LaineBlog
  • Квантовый блог
  • Блог qwertyMAN'а
  • some blog name
  • Дача Игоря
  • Путешествия Xytabich'а
  • Рецепты программирования

Форумы

  • Программирование
    • Программы
    • База знаний
    • Разработчикам
    • Вопросы
  • Игровой раздел
    • Игровые серверы
    • Моды и плагины
    • Жалобы
    • Ивенты и конкурсы
    • Файлы
  • Общение
    • Задать вопрос
    • Обратная связь
    • Беседка
    • Шкатулка
  • Технический раздел
    • Корзина

Группы продуктов

Нет результатов для отображения.


Искать результаты в...

Искать результаты, которые...


Дата создания

  • Начать

    Конец


Последнее обновление

  • Начать

    Конец


Фильтр по количеству...

Зарегистрирован

  • Начать

    Конец


Группа


AIM


MSN


Сайт


ICQ


Yahoo


Jabber


Skype


ВКонтакте


Gtalk


Facebook


Twitter


Город


Интересы

Найдено 7 результатов

  1. HoverHelm — сетевые диски для тех, у кого нет жёсткого: дронов, микроконтроллеров. Вставляем диск в сервер — через модемы клиенты получают к нему доступ. И пару вкусных фич вдобавок. Фичи и преимущества по сравнению с голым EEPROM Сетевой жесткий диск: можно забыть про ограничение в 4кБ можно делать программы модульными легко обновить программу, не нужно перешивать каждого дрона за всю игру может понадобиться скрафтить только один жесткий диск Удаленный терминал: не нужны клава и моник, больше слотов в роботах централизованное управление всех ваших дронов Обратная совместимость: старые программы работают без изменений Какие-то другие очевидные плюсы, про которые я забыл Прогресс разработки Система запускается и работает Виртуальный диск с доступом к папке на жестком диске сервера Удаленный терминал для запуска программ на устройствах Конфигурация Логирование Связь через сетевую и связанную карту Инсталлятор Виртуальный гпу Связь через интернет-карту (Stem) Сохранение имен устройств Удаленные терминалы Минимальные системные требования Конечное устройство Сервер Инструкция по установке Установка сервера: Установите OpenOS Выполнить команду pastebin run xh61Yx8a Отредактируйте открывшийся конфиг Добавьте желаемые к использования сетевые и связанные карты по образцу Можно настроить пути расположения пользовательских папок и папки клиентского ядра Установка клиента: Запустите HoverHelm server Выполните команду prepare_eeprom <имя устройства> <адрес серверного модема> <порт> <адрес клиентского модема> Если на сервере одна сетевая карта, вместо адреса её можно вписать тип (modem или tunnel). Адрес клиентского модема можно убрать вообще, если на клиенте только одна сетевая карта. Инструкция по использованию Запустите сервер HoverHelm командой hoverhelm/main.lua Запустите устройства, просто включив их при первом запуске каждого устройства будет создана его пользовательская папка в /home/hoverhelm/devices/<deviceName>/ можно смонтировать по этому пути отдельный диск средствами OpenOS в терминале сервера и в файле лога устройства повится строка <deviceName> started, сигнализирующая о готовности устройства файлы, общие для всех устройств лежат в /home/hoverhelm/device_core/ (coreRootFolder в конфиге) файлы, специфичные для конкретного устройства лежат в /home/hoverhelm/devices/<deviceName>/ (userRootFolder в конфиге) В терминале сервера выполните deviceName>device-program-name args, чтобы выполнить на устройстве deviceName программу device-program-name с аргументом args программа с именем test будет искаться по пути /test.lua и /programs/test.lua, относительно виртуальной фс устройства Из коробки пока доступна только программы reboot и lua В терминале сервера выполните hide, чтобы свернуть HoverHelm server не прерывая его работу можно будет открыть его той же командой для продолжения работы с терминалом Ссылки Гитхаб: https://github.com/hohserg1/HoverHelm
  2. Посетила меня идея,а не создать сеть под OC,реализовано 2/3 от того что я задумал,скоро будет закрытый тест. Реализовано на mac-адресах Сетевых плат,но в системе все компьютеры имею ip адрес,для удобства что бы запомнить можно было,и короче был. Вот поле ,на нём 2 роутера ,и 4 клиента. ip адрес состоит из первого и второго числа,первое адрес роутера,второе число компьютера,а всё вместе адрес компьютера. Компьютер ip=1.2 передает сообщение компьютеру 2.6 Роутер ловит сообщение Второй роутер принимает пакет от первого Конечная цель ,компьютер с адресом ip=2.6 принимает пакет от 1.2 Не реализовано еще дин.маршрутизация.
  3. Пытаюсь реализовать следующую идею: запуск OpenOS на устройстве без локального жесткого диска. Сделать это хочу так(псевдокод): Программа на EEPROM, клиент [ Связывается по связанной плате с другим компом, у которого есть жесткий диск Просит адрес компонента filesystem сообщением "component.primary" При помощи vcomponent добавляет виртуальный компонент filesystem, который является отражением удаленного hdd Каждое обращение к функциям этого компонента отправляет сообщения "component.invoke" по сети и ждет ответа Дальше обычный lua_bios ] Программа на сервере для обычной OpenOS [ Ждем сообщений Реагируем соответствующим образом component.primary=>send(адрес компонента) component.invoke=>send(результат вызова функции компонента) ] Также стоит отметить, что при работе с filesystem header файла является userdata, его нельзя сериализовать(насколько я понял), поэтому вместо передачи его по сети передается объект, который можно однозначно сопоставить хедеру на сервере: таблица вида {special = <id>} Сделал, но в результате OpenOS не грузится дальше загрузочного экрана, консоль не появляется. Подскажите, где я ошибся? Исходники: Client Server Тестировал при помощи bibi
  4. Раннее я уже делал обзор того, как можно пересылать данные по сундуку из EnderStorage Получилось неплохо: 12 байт в секунду Но в какой-то момент стало понятно, что 12 байт в секунду - это очень маленькая скорость передачи, поэтому я решил попробовать увеличить это значение И у меня получилось! Теперь ender-net передает данные в 42666 раз быстрее(на самом деле можно увеличить скорость передачи до космических значений, можно сделать в 42666*27 раз быстрее, но мне лень). Неплохая прибавка к скорости, я считаю! Я бы уже давно реализовал систему именно с такой скоростью передачи данных, если бы я мог видеть очевидные вещи сразу. А очевидная вещь вот какая: зачем кодировать данные стаками блоков если есть ДИСКЕТЫ!!! Это настолько очевидно! Дискеты вмещают 512КБ данных, поэтому я решил использовать их для отправки сообщений. В обновленной версии ender-net теперь понадобится дисковод для считывания данных Вот так выглядит комп, подключенный к сети(при подключении к сети дискета обязательно должна быть вставлена в дисковод) Вот так выглядят компы, подключенные к одной сети *ДЕМКА* В настоящий момент система с багами и вообще еще не доработана. Может быть потом выложу ссылку на доработанную библиотеку в комменты. Я написал демо-скрипт test-ender-net.lua, который осуществляет пересылку сообщений между участниками сети. Пусть у нас есть 3 компа: Запустим на одном из них скрипт test-ender-net.lua Сеть определила адрес КОМПА -- 4 Теперь пойдем к другим двум компам и на каждом запустим этот же скрипт. Для двух других компов выбраны адреса 6 и 8 Пойдем к компу 4 и напишем с этого компа сообщение на комп 8 Потом пойдем к компу 6 и тоже что-нибудь напишем компу под номером 8 (пикчи нет) Теперь пойдем к компу номер 8 и ответим компу номер 6 "хватит спамить!" Если подойти к компу номер 6, будет видно что пришло сообщение Получилось что-то вроде чатика. Вот в общем-то и все. Если кого-то заинтересовала эта тема, то я могу постараться допилить библиотеку ender-net чтобы не было никаких багов в работе сети. Чтобы поближе посмотреть, как работает ender-net через дискеты, скачайте мое сохранение с компами и потестите. (Я там пару подсказок оставил на экранах мониторов). Нужно распокавать архив и положить папку "comp" в папку с сохранениями игры Ссылка: https://www.dropbox.com/s/0h1kc0dhc6vew78/comp.zip?dl=0 Ссылки на библиотеки и другие скрипты не буду выкладывать, пока не доработаю ender-net ИТОГИ Главное отличие ender-net от сети на связанных картах: возможность соединить в одну сеть более чем 2 компа. Преимущества: почти не тратит энергию, очень быстрая скорость передачи данных. Недостатки: возможны баги Забавная особенность: при частом обмене сообщениями дисковод издает просто дьявольские звуки, транспозер пищит, а комп мигает!
  5. Передача данных по EnderStorage-сундуку Важно: В статье идет речь именно о сундуках из мода EnderStorage, а не о ванилла-эндерсундуках Сундуки из EnderStorage могут быть очень полезны не только потому что с их помощью можно иметь доступ к хранилищу ресурсов находясь на большом расстоянии от дома(или вообще в другом измерении), но и потому, что существует возможность передавать информацию на любое расстояние используя эти сундуки. Дело в том, что есть способ 'синхронизировать' несколько сундуков(достаточно покрасить полоски этих сундуков в одинаковые цвета), и тогда эти сундуки будут иметь общее хранилище и ресурсы положенные сундук моментально окажутся во в остальных сундуках 'синхронизированных' с этим сундуком. Используя данные о том, сколько предметов лежит в том или ином слоте сундука можно получать информацию. Например, если в первый трех слотах лежит 30, 24 и 58 камня, то компьютер сможет "прочитать" из этого сундука ровно 3 числа - 30, 24, 58 Меняя количество предметов в разных слотах, можно "отправлять" информацию. Пример: 1) компьютер№1 положил в первые 4 слота по 10, 0, 1, 63 камня 2) через некоторое время компьютер№2 прочитал из сундука числа 10, 0, 1, 63 ИТОГ: компьютер№1 передал компьютеру№2 4 числа Важное условие: сундуки у компьютера№1 и у компьютера№2 должны быть синхронизированы, т.е. иметь одинаковые цвета полос, чанки должны быть прогружены Далее я буду описывать свою систему для обмена данными, построенную на связанных эндер-сундуках Для начала нам нужно построить вот такую конструкцию: Важное условие: транспозер ОБЯЗАТЕЛЬНО должен находиться под эндер-сундуком, а адаптер может быть подсоединен к любой из оставшихся сторон сундука Подключаем все это дело к компьютеру: Подобная конструкция(эндер-сундук, адаптер, транспозер) должна быть присоеденена к каждому компу, который участвует(или будет участвовать) в обмене данными Далее открываем эндер-сундук и заполняем первые 27 слотов любыми блоками в количестве 64 штуки ЕСЛИ ЭТО НЕ СДЕЛАТЬ ИЛИ ПОЛОЖИТЬ 26 СТАКОВ ВМЕСТО 27, ТО СИСТЕМА РАБОТАТЬ НЕ БУДЕТ На этом настройка системы заканчивается, теперь нужно скачать исходный код моей библиотеки ender-net.lua: pastebin get qYiQWtb0 /lib/ender-net.lua Документация библиотеки ender-net: Главное правило пользования этой системой: не лезть руками в сундук во время передачи/отправки сообщений, иначе все сломается нафиг Простейший(базовый) пример использования сети Мы можем передавать по такой сети короткие сообщения(24 числа = 1 число на msgType и 23 числа на message) Но что нам делать, если мы хотим передать по этой сети файл в несколько килобайт? Для этого нужно писать сетевые драйвера с конвертацией передаваемых данных в числа от 1 до 64 (формат base64) и разбиением ваших данных на части по 24 числа в каждой. Чтобы моя разработка не оставалась совсем-уж бесполезной( стандартные возможности сети позволяют передавать всего лишь 24 числа за сообщение ) я решил написать для нее сетевой драйвер передачи файлов Описание драйвера для передачи файлов Важно: Для работы драйвера необходимо установить библиотеку base64:pastebin get 0xDgW35R /lib/ender-net-base64.lua Драйвер состоит из двух программ 1) waitFile.lua (установить можно командой pastebin get aD20ZF4q /bin/waitFile.lua) 2) sendFile.lua (установить можно командой pastebin get wHA6QzH6 /bin/sendFile.lua) Использование:waitFile <fileName> Ожидает пока кто-то начнет передавать файл по сети. После окончания передачи файл будет сохранен под именем <fileName>. fileName - абсолютный путь sendFile <fileName> Передает файл <fileName> другим участникам сети. fileName - абсолютный путь Пример: Предположим, мы хотим передать файл /home/secret.txt с компа1 на комп2 и сохранить полученный файл под именем /home/hehehe.txt на компе2 Все просто: 1) Идем к компу2 и запустив команду "waitFile /home/hehehe.txt" заставляем его ждать, пока по сети придет файл hehehe.txt 2) Идем к компу1 и отправляем файл secret.txt в нашу сеть. Для этого пишем команду "sendFile /home/secret.txt" Как только выполнили оба шага в правильной последовательности, комп1 начнет посылать сообщения в сеть, а комп2 будет их принимать Передача файла размером 299 байт заняла около 30 секунд: Как мы можем видеть, файл действительно передан с одного компа на другой Итог всей этой статьи Используя мою библиотеку ender-net вы сможете передавать данные по сети, основанной на эндер-сундуках Данные эти должны иметь маленький размер(помещаться в 24 числа), иначе придется ломать голову над созданием сетевого дравера Эта сеть подойдет для обмена числами между двумя компами(пример: мониторинг температуры реакторов, которые находятся ОЧЕНЬ далеко) Положительные стороны ender-net: 1) передача данных куда угодно, на какое угодно расстояние, даже между измерениями 2) передача данных с помощью ender-net практически не тратит энергию, в то время как связанные сетевые карты из OpenComputers тратят очень много 3) в сеть возможно подключить более чем двух участников и делать рассылку каких-нибудь сообщений Недостатки: 1) Недостаточная для некоторых задач скорость передачи данных ( 10-12 байт в секунду ) 2) Дороговизна, т.к. придется тратиться на эндер-сундук, транспозер и адаптер 3) Библиотека ender-net еще не доведена да совершенства, поэтому возможны баги Окончательный итог: получился крутой эксперимент с эндер-сундуками, но пока трудно организовать обмен полноценными сообщениями используя библиотеку ender-net
  6. Привет all. (после публикации заметил ошибку в названии темы и тегах, код для OpenComputers а не для ComputerCraft, я их постоянно путаю) код 204 байта: _=component;m=_.proxy(_.list('modem')())m.open(7)u=table.unpack::r::e={computer.pullSignal()}if e[1]=='modem_message'then;_={load(e[6])}if _[1]then;_={pcall(_[1],u(e,7))}end;m.send(e[3],7,u(_));end;goto r или код 231 байт: ::r::pcall(load("_=component;m=_.proxy(_.list('modem')())m.open(7)u=table.unpack::r::e={computer.pullSignal()}if e[1]=='modem_message'then;_={load(e[6])}if _[1]then;_={pcall(_[1],u(e,7))}end;m.send(e[3],7,u(_));end;goto r"));goto r Записать в EEPROM любого устройства имеющего сетевую карту, и включить устройство. На отдельном компьютере выполняющем роль сервера выполнить код примера: modem.open(7) modem.broadcast(7, "return 'Hello ', _VERSION, ...", true, 42, 'bebebe') Прочитать ответ от модема, и понять что произошло. ============================================= Дополнительные примеры: broadcast(7, 'bebebe') broadcast(7, 'bebebe()') broadcast(7, 'return {}') broadcast(7, true) broadcast(7) broadcast(7, 'return computer.pullSignal()' ) code=[[ --my super puper long program nice code ]]; broadcast(7, сode) broadcast(7, 'component.proxy(component.list("eeprom")()).set(...)', codeforflashing) и прочие извращения 1,2 покажут обработку ошибок на стадии компиляции и выполнения; 3,4,5 покажут различие в коде 204 и 231 и ограничения передачи данных; 6,... - некоторые возможности Для самых бегемотов: Можно Хранить код 204 в setData Можно добавить аутентиикацию, чтоб вражина за стенкой не broadcast-ил нам тут с планшета Можно построить SCADA-систему из дронов, роботов, контроллеров и компьютеров. Что-то еще... ЗЫ mods/OpenComputers-MC1.7.10-1.5.12.26-universal.jar примеры не проверял, писал здесь сходу.
  7. Сканер проводной сети,сканирует сети на включенные в нее устройства с помощью модема.P.S пока очень сырая утилита. http://pastebin.com/ZM6d9cqx Можно к кому-то подключиться не заметно ,найти компьютеры и ломануть их.
×
×
  • Создать...