» Новости
» Регистрация :: Вход
» Форумы сайта :: IRC-чат
» Файловый архив
» Все статьи :: Все обзоры
» Галерея
» Поиск
 
Клиент-сервер в HL и CS, Newbie e-mail автора
Коммуникации клиент-сервер
.: Просмотров: 3174 :: Печатать текущую страницу :: Печатать все страницы :.
Предыдущая страница Все страницы: Следующая страница

" Перевод: Newbie

" Оригинал статьи

Коммуникации клиент-сервер

Клиент - программа Half-life используемая игроком для подключения к серверу. Сервер Half-Life - центральная программа, к которой могут подключаться клиенты для игры в Half-Life и его модификации, например Counter-Strike.

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

Если представить картинку схематично, то мы получим что-то вроде звезды, с сервером в середине и расходящимися от него соединениями к клиентам в виде лучей.

При общении сервера с клиентом используются два основных понятия - ширина канала (bandwidth) и задержка (latency).

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

В реальности, существует лимит данных, которые можно передать между клиентом и сервером за секунду - ширина канала и время, за которое эти данные передаются - задержка.

Ограничение ширины канала происходит двумя способами.

Во-первых, на сервере выставляется настройка, ограничивающая максимальное значениеширины канала, которое сервер может использовать для общения с одним клиентом. Врезультате, даже если клиент соединяется через выделенный канал или xDSL, пропускнаяспособность которого не меньше 64 килобайт в секунду, сервер все равно будет передаватьсо скоростью не более чем 8 килобайт в секунду (стандартное значение, которое однакоможет меняться в зависимости от сервера). Это - ограничение со стороны сервера.

Это делается потому, что большое количество "скоростных" клиентов "съедят" слишкомбольшой объем трафика, за который соответственно необходимо платить. Выставление болеевысокого лимита имеет легко предсказуемые финансовые последствия.

Во-вторых, клиенты с менее скоростным соединением (56k модемы) обычно не имеютдостаточной ширины канала для достижения максимума, выставленного на сервере. В данномслучае работает ограничение со стороны клиента.

Задержка в основном зависит от типа соединения клиента (56k модем, ISDN, xDSL и т.д.).Чем больше задержка, тем больше времени требуется для передачи данных. Чем меньшезадержка, тем лучше.

Тип соединения Ширина канала Задержка
56k модем Низкая Высокая
ISDN Низкая Низкая
xDSL Высокая Низкая
Спутник Высокая Высокая

Заметьте, что задержка никак не зависит от ширины канала. Именно поэтому напримеродноканальный ISDN имеет ту же задержку, что и двухканальный ISDN, а спутниковый канал -хотя и способен передавать мегабайты в секунду - бесполезен для игр в реальном временииз-за задержки в районе 2000 миллисекунд (ms).

Предыдущая страница Все страницы: Следующая страница
Реклама

 
Наша-Life
Свяжитесь с нами
Экспорт новостей в RSS 2.0