Аватар для C17H19NO3
218 / 212 / 63
Регистрация: 17.04.2012
Сообщений: 382

Отправка сообщения (одним) сервером многим клиентам

20.02.2013, 02:12. Показов 11022. Ответов 25
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Столкнулся с одним проблематичным заданием.

Есть приложение клиент-сервер. Нужно с сервера отправить сообщение всем клиентам ОДНОВРЕМЕННО по заданому времени.

Написал уже не одно подобное приложение через протокол TCP. Но суть его заключается в том, что сервер слушает запрос клиента и потом отправляет данные. У каждого клиента свое время и оно, пускай даже на несколько секунд, не совпадает.
Пробовал через протокол UDP, без проблем, если общатся один клиент - один сервер. Или если все компьютера находятся в одной доменной сети - то все работает очень хорошо, на всех машинах.
А что же делать если они не соеденены одной доменной сетью?? Пробовал груповую рассылку, подключения к группе на которую идет рассылка, но метод JoinMulticatsGroup() поддерживает диапазон IP адрессов с 224.0.0.0 до 239.255.255.255

подскажите как можно отправить одно сообщение с сервера ВСЕМ клиентам по заданому времени. И желательно чтоб не клиент запрашивал сообщение, а сервер сам решал когда хочет послать это самое сообщение.

извините, не в ту вкладку написал. переместите пожалуйста тему во вкладку C# Windows Forms.
1
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.02.2013, 02:12
Ответы с готовыми решениями:

Отправка сообщения всем клиентам
Пишу (пробую) чат на сокетах. Клиент на андроиде. И не могу уже день разобратся с проблемой отправки сообщения всем клиентам. Я пробовал...

Заголовок сообщения: Отправка SOAP request сервером
Добрый день! Не могу разобраться с вопросом. Есть веб-сервис работающий по протоколу SOAP. На нём региструется клиент. При первом...

Передача сообщения всем подключенным клиентам
есть класс сервера package simplenetserver; /* * To change this template, choose Tools | Templates * and open the template...

25
 Аватар для n1l
136 / 138 / 18
Регистрация: 26.07.2010
Сообщений: 911
21.02.2013, 19:30
Студворк — интернет-сервис помощи студентам
Я не пользовался поиском по сайту. Я просто внимательно читал и искал информацию о терминах которые не знаю. Вот в один прекрасный момент мне попалась ссылка на cyberforum.
В принципе осталось узнать детали т.з. определить интерфейсы через которые будет работать приложение и все.
0
 Аватар для Димон_
136 / 104 / 9
Регистрация: 30.01.2011
Сообщений: 699
21.02.2013, 21:19
Интересная тема получилась.

n1l, Я имел ввиду скорость, потому что "Нужно с сервера отправить сообщение всем клиентам ОДНОВРЕМЕННО по заданому времени. "
Я так понимаю, что было бы нормально, если через один порт вылетело бы 500 сообщений за ничтожно малое время, тогда было бы почти "одновременно". Но если рассылка крупная, то разница между первым и последним будет значительна. Именно её я и думал считать и отправлять клиентам.
К примеру, если все клиенты по команде должны что-либо сделать.

P.S. Давайте еще всю модель OSI разберем)
0
 Аватар для n1l
136 / 138 / 18
Регистрация: 26.07.2010
Сообщений: 911
21.02.2013, 22:36
Цитата Сообщение от Димон_ Посмотреть сообщение
Интересная тема получилась.

n1l, Но если рассылка крупная, то разница между первым и последним будет значительна. Именно её я и думал считать и отправлять клиентам.
К примеру, если все клиенты по команде должны что-либо сделать.
Вы можете поэкспериментировать. Я уверен , что результаты вас удивят.

Цитата Сообщение от Димон_ Посмотреть сообщение
P.S. Давайте еще всю модель OSI разберем)
Как то вы не логично мыслите. Какая связь между OSI и сетевыми протоколами в контексте данной темы?
Я лично не вижу никакой.
0
 Аватар для Димон_
136 / 104 / 9
Регистрация: 30.01.2011
Сообщений: 699
21.02.2013, 22:48
n1l, нелогично из-за отсутствия знаний.
А экспериментировать сейчас некогда, а жаль. Потом обязательно почитаю - попробую.
0
 Аватар для C17H19NO3
218 / 212 / 63
Регистрация: 17.04.2012
Сообщений: 382
22.02.2013, 01:48  [ТС]
для начала скажу всем спасибо за усилия и старания.

Остановился на TCP из-а того, что он отвечает за доставку пакета.

И так про UDP. Если рассылать сообщения всем клиентам, в одной сети, тогда проблем нету. Допустим, есть айпи адресс 12.23.4.134, мы просто указываем (вместо 134) 255 и сообщения попадают всем клиентам кто слушает порт по которому отправлялись данные.

протокол IGMP поддерживает определенный диапазон айпишников.

а вот про broadkast нужно порыть. n1l, ваше сообщение по поводу broadkast, не плохое, но он , на сколько я понимаю, аналогично UDP, работает внутри одной сети. Вот на википедии написали

пакеты данных могут быть посланы из-за пределов сегмента, в который будет осуществлено широковещание (например, передача пакета на широковещательный IP-адрес через маршрутизатор из-за пределов сети)
но я пока еще не понял как это работает и как его реализовать.
0
 Аватар для n1l
136 / 138 / 18
Регистрация: 26.07.2010
Сообщений: 911
22.02.2013, 14:39
тут говорится другое
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.02.2013, 14:39

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

Отправка всем клиентам
Что бы с сервера - server=socket.socket() отправить всем клиентам сообщение нужно использовать server.send()?

Отправка сообщений всем клиентам
Здравствуйте. Создал многопоточный сервер, но никак не могу разобраться с тем, чтобы сервер отправлял сообщение всем клиентам а не только...

Консольный чат. Почему сервер не пересылает сообщения клиентам?
пожалуйста помогите понять почему не работает мой консольный чат! сервер using System; using System.Collections.Generic; using...

Сервер рассылает сообщения в определенное время определенным клиентам
Помогите выставить время отправки сообщений. Сервер. package network; import java.net.*; import java.io.*; import...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
26
Ответ Создать тему
Опции темы

Новые блоги и статьи
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства. Жизнь действительно предъявляет каждому. . .
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины". За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html Задача: . . .
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru