Пятница, 29.11.2024
Мой сайт
Меню сайта
Статистика

Онлайн всего: 48
Гостей: 48
Пользователей: 0
Главная » 2017 » Август » 9 » Связь
23:36
Связь

Связь

Для передачи информации логично использовать радиосигналы. Единственный телефон, который я в своей жизни сделала был из двух коробков и одной нитки, потому не знаю я ни теории ни практики.
Зато знаю, что обычные рации работают в режиме коротких волн:
http://akostina76.ucoz.ru/blog/2016-03-29-2789

Расплата за это – относительно небольшой радиус действия. Ещё более короткий Wi-Fi вообще только в соседней комнате работает. Плюс коротких волн – их большое количество. Чем больше волн в единицу времени прибегает тем больше информации можно в них упаковать.
Я… допускаю, что телефон это штука информационно прожорливая. Я так думаю, потому что файл с музыкой больше текстового файла. Могу ошибаться. Повторюсь, что практики я не знаю. Так вот, если вместо голоса гонять текст (чем собственно и является любая страница хоть в формате HTML хоть в виде TXT) то возможно проблема пропускной способности линии будет не столько серьёзной.
Что у нас ещё есть: У нас есть обилие памяти, а то время как телефон (классический) это средство трансформации механических колебаний в электрические и потом обратно в режиме реального времени. Если обмениваться сообщениями, то задержка даже в секунды незаметна. Сам принцип общения отличается от разговора по телефону. Сенсорные панели (т.е клавиатура) и мониторы (для вывода сообщений) цепляются к процессору с достаточным объемом памяти и умеющему что-то делать довольно легко.
Полное описание сетевых протоколов тут:
http://www.qnx.spb.ru/TCPIP/index.html

У сети есть сервера, которые передают пришедшие пакеты дальше. Это – инфраструктура, от которой хотелось бы отказаться также как от вышек мобильной связи.
Ведь нужна своя сеть «телефонов» на 20. Или пусть 100 чтобы номер местного IP был трёхсимвольным с запасом. Пусть люди хотят общаться в пределах города но чтобы гарантированно, без сбоев, вторжений, и той самой зависимости от прочей инфраструктуры. Вопросы безопасности решаются автоматом, той самой передачей как угодно закодированного сигнала. Своё программное обеспечение – что захотим то напишем.
Первый, с моей точки зрения важный вопрос: Можно ли использовать средние волны поскольку может быть интересен не столько город по размеру сколько область размера например XMAО. И нужно ли? Т.е летает это всё на такие расстояния в реальных условиях или нет? Вопрос размера и веса не очень важен. Это скорее на машину чем в карман, а вот мощный передатчик вроде для здоровья не очень полезен. Вот эти все вопросы неплохо бы узнать вместе с пропускной способностью такой «линии».
Следующий момент: Есть идея использовать для ретрансляции сигнала самих пользователей сети, болтающихся по территории. Ведь в руках штука с процессором и памятью. Ну так пусть она и сервером, передающим пакеты дальше работает. Тоже вопрос: антенны обычно висят высоко на зданиях, а висящие в небе спутники GPS вообще позволяют ловить поступающий с них коротковолновый сигнал. Насколько возможно использовать как ретрансляторы ездящие по земле машины? Расстояние там реальное какое, на котором разные  диапазоны будут работать?
Определившись с расстояниями можно понять что можно получить силами тех самых 20 человек, которые хотят, например, гарантированно общаться между собой завися только от законов физики.
Чисто технические вопросы: понятно, что должна быть возможность менять частоту работы и скорее всего там какой-то мотор должен крутить какой-то конденсатор. И понятно, что работу сервера (т.е переброску выловленных пакетов) должна выполнять программа. А вот что должно создавать сам пакет, т.е кодировать информацию в грубо говоря «морзянку» непонятно. Операция с программной точки зрения примитивная как и структура пакета, но программа работает медленнее спаянной микросхемы. Может какие-то настраиваемые микросхемы есть для подобных задач. 
Теперь по организации сети, тоже очень прикидочно, уровень бреда. Пусть я из Бокситогорска хочу что-то отправить в Выборг. А ещё есть люди в Луге и Кировске.

У Интернета нет проблемы. Я общаюсь с ближайшим сервером, а у сервера есть таблица маршрутизации, в которой просто прописано куда дальше отправлять пакеты конкретного диапазона IP. Это всё хозяйство, которое как-то кем-то поддерживается и обновляется. Мой сигнал – пакет, адресованный Выборгу примут две телефона – сервера (в Луге и Кировске) просто потому что радиосигнал едёт (вроде бы) сразу во все стороны. При этом сервером логично работать только Кировску. Луга должна получить пакт и выкинуть его. Или не должна? Или должна переслать его на всякий случай Кировску? Довольно сложно что-то говорить о программировании когда не знаешь как работает материальная часть, но видимо на серверах – телефонах вместо таблиц маршрутизации придётся хранить местоположение отправителей и получателей сигналов с того же GPS полученное. Или есть какой-то радио – способ. Запеленговать-то сигнал, т.е понять откуда он прилетел можно, вроде бы.
Пример, команда ping, т.е просто отправка сообщения на некий номер (IP) и ожидание ответа:
http://www.qnx.spb.ru/TCPIP/glava7.html

Пусть у Выборга »номер телефона» - «001», у Луги «002», у Кировска «003», у Бокситогорска «004».
Значит, от Бокситогорска должно отправиться в эфир «004001004004ping», первые три символа (004) «от кого», следующие (001) – «кому», следующие (004) через кого (пока начальный отправитель) следующие (004) – размер пакета, и наконец содержание пакета – слово «ping».
Постоянно слушающие эфир телефоны должны это выловить. Допускаю, что сообщений мало и они не перемешиваются. С перемншиванием разными способами можно бороться, например молчать пока что-то слышно. Ведь, не телефон, задержки с передачей информации возможны. Итак, информация выловлена и её внутренняя согласованность проверена (согласованность это похожесть первых байт на номера «телефонов», и равенство переданной длины сообщения длине слова «ping»). Из внутренней таблицы узнано местоположение отправителя, получателя и прочих участников. Луга, поняв, что на связи есть Кировск проигнорировала сигнал.
Кировск, поняв что ему быть «сервером»-передатчиком выдаёт в эфир «004001003004ping» поменяв в пакете только того кто перенаправил это пакет. Пакет слышат все. Бокситогорск его сразу игнорирует, увидев себя в качестве отправителя (004) и поняв что это какая-то пересылка информации. Луга его игнорирует как и раньше поняв, что передачей информации от 004 к 001 не ей заниматься. А вот Выборг это слышит и видит, что это ему (т.е в 001). Ещё он видит команду «ping», т.е пожелание послать что-то от себя. Пусть он и посылает что-то типа «001004001007ping_ok». Вернуться это должно через тот же Кировск обратно в Бокситогорск.
Над IP протоколом есть ещё надстройка TCP. Она проверяет целостность информации, пересылаемой несколькими пакетами.
http://www.qnx.spb.ru/TCPIP/glava17.html

Информация может теряться, искажаться. Это для примера проверяется размер переданного сообщения. Обычно есть контрольная сумма или что-то подобное, вычисляемое по информации. Если одно не соответствует другому, то выловлено что-то ошибочное. Если «ping» был получен как «pkng» то можно это проигнорировать подождав когда пользователь запустит ping ещё раз, поняв что возник сбой.
Но пусть кто-то передаёт длинный текст. Пусть это 50 байт, разбитых в 5 пакетов по 10 байт. Тогда каждый пакет имеет номер.
Из Бокситогорска во всё тот же Выборг:
Первый пакет:
«004001004004TCP!@#005001010info1_78901234567890»
Второй:
«004001004004TCP!@#005002010info2_78901234567890»
004 – от кого
001 – кому
004 – кто последний переслал
TCP – кодовое слово, означающее передачу информации с проверкой
«!@#» - некий набор символов, уникальный «номер» информации
005 – планируется пересылка 5 пакетов (т.е сколько из надо выловить)
001 – номер переданного пакета
010 – байт в пакете
«info1_78901234567890» - содержание первого пакета»
Выловив первый пакет Кировск отправляет запрос на следующий пакет, который ему нужен. Пусть так:
003004003PCT!@# 002
PCT – это TCP в обратном направлении и означает запрос следующего пакета.
И т.д. Когда вся информация накопится в Кировске её можно пересылать в Выборг. Но пусть Бокситогорск пакет №2 отправил, но он дошёл с ошибкой. Тогда надо просто ещё раз запросить тот же пакет той же командой. Тоже самое если информация не получена например за секунду. Это скорее всего означает, то Бокситогорск не понял запроса, выловив из эфире не PCT а PPT например.
Точно также можно передавать любую информацию. Будет этих пакетов не 5 а 5000. Это не имеет значения.  

Просмотров: 386 | Добавил: akostina76 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
Форма входа
Поиск
Календарь
Архив записей
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Copyright MyCorp © 2024
    Бесплатный конструктор сайтов - uCoz