powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Широковещалка на TCPServer
3 сообщений из 28, страница 2 из 2
Широковещалка на TCPServer
    #33541648
kolobok0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
--null--почему? Целостность считанных данных как раз гарантируется. Как и целостность данных, приходящих по IP.
Скажем, контроллеры SCSI учитывают четность, контрольную сумму и время ожидания. И при проблемах - способны повторить чтение и снизить скорость передачи. Во всяком случае так в описаниях SCSI пртокола.

т.к. протокольный уровень - енто уровень ядра(драйвера, сама ось и прочее), и данный уровень ведёт себя не по закону(протокол) - то мона ожидать урезание (искажение) функционала и в другом месте данного ядра. Логично ? (как говорит одна девочка). Чтение с диска не ограничивается применяемым железом и протоколом нижнего уровня (уровня железа). Над ним ышо много всяких телодвижений. Например ось может положить на такую функциональность как чтение-после-записи. И всё. Вроде как быстро - меньше телодвижений. Вроде как работает.... но до первого сбоя...


лано...возвращаясь к баранам...
если идёт речь о серваке приложения - то существует такая вещь как регистрация/разрегистрация. Правда тут нуна оговориться, что это зависит от политики самого сервака. Но предположим, что такие фазы существуют. Тогда нам никто не мешает известить клиентов об изменениях оперируя учётными записями. Речь мона вести и об оптимизации данного функционала.

Что использовать на нижнем уровне - думаю тут предпочтение у каждого своё.

Говорить о БД, как о средстве синхронизации в данной схеме - мягко говоря странно. Первичен сервак приложения, а уж потом БД. И завязываться на реализацию более нижнего уровня (БД), на мой взгляд - сужение потенциальных возможностей. Нафига тоды вооще городить сервак приложения ?

с уважением
(круглый)
...
Рейтинг: 0 / 0
Широковещалка на TCPServer
    #33547707
Фотография webus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да!!!!
Давно я тут не был :) Столько разных мнений... Но все же раскрываю карты! Операционка на сервере Windows 2003 (в дальныйшем скорее всего переведем на Slackware Linux), операционка клиента - Windows XP :) Количество клиентов относительно не большое (максимум 10 машин). Поэтому нагрузка сети не особо возрастет при широковещательных пакетах. Хотя было хорошо подмечено, на клиентах стоят FireWall'ы. Не известно как они к этим пакетам отнесуться :) Идея на счет таблицы активных пользователей очень хорошо, тоже была такая мысля но тут она доработана. Тем более что ip-адреса клиентов известны. Всем спасибо, но тема пока еще не закрыта! Что же лучше UDP или TCP/IP ???
...
Рейтинг: 0 / 0
Широковещалка на TCPServer
    #33547745
--null--
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторна клиентах стоят FireWall'ы. Не известно как они к этим пакетам отнесуться
как настроите - так и отнесутся :-)

авторЧто же лучше UDP или TCP/IP не лучше - разные просто.

Лучше tcp в плане надежности. Но если широковещание - выбора нет.
UDP ненадежен по приведенным причинам. Хотя тот же checksum - конечно, kolobok0 совершенно правильно о нем сказал, но увы - его использование не гарантировано. Надо тестить, смотреть сниффером.
В некоторых стеках можно им управлять (опция сокета SO_NO_CHECK), не помню, есть ли оно в winsock.
Но по идее - в одном сегменте можно действительно этим пренебречь - Ethernet тоже вычисляет сумму и отбросит кривой пакет.
А вот оповещение о доставке точно самому надо делать, UDP за Вас это не сделает :-( Ну и если размер сообщения - упаси Аллах - превысит mtu - то придется и об очередности доставки заботиться.
...
Рейтинг: 0 / 0
3 сообщений из 28, страница 2 из 2
Форумы / C++ [игнор отключен] [закрыт для гостей] / Широковещалка на TCPServer
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]