purebasic.info

PureBasic forum
Текущее время: Вт янв 16, 2018 2:03 pm

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 21 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Вт мар 19, 2013 2:30 am 
Не в сети
профессор
Аватар пользователя

Зарегистрирован: Чт дек 17, 2009 4:49 pm
Сообщений: 1230
Откуда: г. Ангарск
Благодарил (а): 2 раз.
Поблагодарили: 15 раз.
Пункты репутации: 10
SereZa
Пинг увеличится, не спорю, но уйдут головняки. В любом случае выбор за тобой :wink:

_________________
.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт мар 19, 2013 11:55 am 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11077
Благодарил (а): 4 раз.
Поблагодарили: 384 раз.
lakomet писал(а):
я сделал бы иначе. А именно - посылал пакет заголовка и пакет тела раздельно, т.е. отправляем 4-ре байта заголовка(размер и тип), ждём от клиента подтверждение
Для игры не пойдет - сильно вырастет пинг.

lakomet писал(а):
В данном виде уходит необходимость делить и собирать из частей пакеты
Но необходимо помнить какой пакет был оправлен и ждать подтверждения. Меняем шило на мыло. :D
ИМХО делить и собирать пакеты будет проще. :)
Это не так сложно и есть пример кода, выполняющий эти манипуляции.

lakomet писал(а):
плюс к этому легче организовать проверку доставки пакетов(если пакет не дошёл то перепосылаем пакет)

Вообще, подобное делают используя UDP протокол, а с TCP, это излишнее, т. к. проверка доставки пакета выполняется на уровне протокола.
Не думаю что SereZa использует UDP протокол.

_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт мар 19, 2013 12:12 pm 
Не в сети
профессор
Аватар пользователя

Зарегистрирован: Чт дек 17, 2009 4:49 pm
Сообщений: 1230
Откуда: г. Ангарск
Благодарил (а): 2 раз.
Поблагодарили: 15 раз.
Пункты репутации: 10
Пётр
Я всё это понимаю. Я ж невкурсах чего он там сочиняет. Я предложил вариант, подписал "имхо". Всегда лучше, когда есть из чего выбрать :wink:

_________________
.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт мар 26, 2013 9:25 pm 
Не в сети
профессор
Аватар пользователя

Зарегистрирован: Чт июн 25, 2009 1:02 pm
Сообщений: 2241
Откуда: Russia — Belarus
Благодарил (а): 0 раз.
Поблагодарили: 67 раз.
Пункты репутации: 11
Делаю сервер-клиент приложение. Клиент подключается к серверу и отсылает "запрос", который может иметь параметры, т.е. грубо говоря, клиент пересылает "запрос", состоящий из INT'ов:
  • INT : уникальное число, говорящее о том, что это запрос (типа GET в HTTP)
  • INT : параметр
  • INT : параметр
  • INT : параметр

Как теперь все это разобрать серверу? Он ведь должен считывать все то, что к нему приходит. После каждого #PB_NetworkEvent_Data эвента сервер должен принимать данные и тут же проходиться по ним со смещением в 1 байт (или в 4, ибо INT'ы, не важно), пока не наткнется на уникальное число (начало пакета)? Не слишком ли ресурсоёмко?

_________________
EnableExplicit User


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт мар 26, 2013 10:02 pm 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11077
Благодарил (а): 4 раз.
Поблагодарили: 384 раз.
qpAHToMAS, если длина пакета известна, то зачем искать его начало? Дели принимаемые данные на куски по 4*4 байт.

_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср мар 27, 2013 1:16 am 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11077
Благодарил (а): 4 раз.
Поблагодарили: 384 раз.
Сделал пример обмена данными по сети с разделением на пакеты. http://purebasic.info/phpBB2/viewtopic.php?t=3035

_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 21 ]  На страницу Пред.  1, 2

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group (блог о phpBB)
Сборка создана CMSart Studio
Русская поддержка phpBB