Клиент-сервер в HL и CS
Коммуникации клиент-серверКлиент - программа Half-life используемая игроком для подключения к серверу. Сервер Half-Life - центральная программа, к которой могут подключаться клиенты для игры в Half-Life и его модификации, например Counter-Strike. Клиенты не общаются друг с другом, только с сервером. Сервер следит за тем, что делаеткаждый клиент и как они влияют друг на друга и сообщает клиентам то, что им необходимознать. Если представить картинку схематично, то мы получим что-то вроде звезды, с сервером в середине и расходящимися от него соединениями к клиентам в виде лучей. При общении сервера с клиентом используются два основных понятия - ширина канала (bandwidth) и задержка (latency). В идеальном мире, общение клиент-сервер должно быть мгновенным, не должно быть никаких ограничений по количеству передаваемых данных и сама передача должна быть моментальной. В результате, клиент всегда имел бы ту же информацию о происходящем, что и сервер. В реальности, существует лимит данных, которые можно передать между клиентом и сервером за секунду - ширина канала и время, за которое эти данные передаются - задержка. Ограничение ширины канала происходит двумя способами. Во-первых, на сервере выставляется настройка, ограничивающая максимальное значениеширины канала, которое сервер может использовать для общения с одним клиентом. Врезультате, даже если клиент соединяется через выделенный канал или xDSL, пропускнаяспособность которого не меньше 64 килобайт в секунду, сервер все равно будет передаватьсо скоростью не более чем 8 килобайт в секунду (стандартное значение, которое однакоможет меняться в зависимости от сервера). Это - ограничение со стороны сервера. Это делается потому, что большое количество "скоростных" клиентов "съедят" слишкомбольшой объем трафика, за который соответственно необходимо платить. Выставление болеевысокого лимита имеет легко предсказуемые финансовые последствия. Во-вторых, клиенты с менее скоростным соединением (56k модемы) обычно не имеютдостаточной ширины канала для достижения максимума, выставленного на сервере. В данномслучае работает ограничение со стороны клиента. Задержка в основном зависит от типа соединения клиента (56k модем, ISDN, xDSL и т.д.).Чем больше задержка, тем больше времени требуется для передачи данных. Чем меньшезадержка, тем лучше.
Тип соединения | Ширина канала | Задержка | 56k модем | Низкая | Высокая | ISDN | Низкая | Низкая | xDSL | Высокая | Низкая | Спутник | Высокая | Высокая |
Заметьте, что задержка никак не зависит от ширины канала. Именно поэтому напримеродноканальный ISDN имеет ту же задержку, что и двухканальный ISDN, а спутниковый канал -хотя и способен передавать мегабайты в секунду - бесполезен для игр в реальном временииз-за задержки в районе 2000 миллисекунд (ms). Newbie, newbie@nashalife.ru
Коммуникации клиент-серверКлиент - программа Half-life используемая игроком для подключения к серверу. Сервер Half-Life - центральная программа, к которой могут подключаться клиенты для игры в Half-Life и его модификации, например Counter-Strike. Клиенты не общаются друг с другом, только с сервером. Сервер следит за тем, что делаеткаждый клиент и как они влияют друг на друга и сообщает клиентам то, что им необходимознать. Если представить картинку схематично, то мы получим что-то вроде звезды, с сервером в середине и расходящимися от него соединениями к клиентам в виде лучей. При общении сервера с клиентом используются два основных понятия - ширина канала (bandwidth) и задержка (latency). В идеальном мире, общение клиент-сервер должно быть мгновенным, не должно быть никаких ограничений по количеству передаваемых данных и сама передача должна быть моментальной. В результате, клиент всегда имел бы ту же информацию о происходящем, что и сервер. В реальности, существует лимит данных, которые можно передать между клиентом и сервером за секунду - ширина канала и время, за которое эти данные передаются - задержка. Ограничение ширины канала происходит двумя способами. Во-первых, на сервере выставляется настройка, ограничивающая максимальное значениеширины канала, которое сервер может использовать для общения с одним клиентом. Врезультате, даже если клиент соединяется через выделенный канал или xDSL, пропускнаяспособность которого не меньше 64 килобайт в секунду, сервер все равно будет передаватьсо скоростью не более чем 8 килобайт в секунду (стандартное значение, которое однакоможет меняться в зависимости от сервера). Это - ограничение со стороны сервера. Это делается потому, что большое количество "скоростных" клиентов "съедят" слишкомбольшой объем трафика, за который соответственно необходимо платить. Выставление болеевысокого лимита имеет легко предсказуемые финансовые последствия. Во-вторых, клиенты с менее скоростным соединением (56k модемы) обычно не имеютдостаточной ширины канала для достижения максимума, выставленного на сервере. В данномслучае работает ограничение со стороны клиента. Задержка в основном зависит от типа соединения клиента (56k модем, ISDN, xDSL и т.д.).Чем больше задержка, тем больше времени требуется для передачи данных. Чем меньшезадержка, тем лучше.
Тип соединения | Ширина канала | Задержка | 56k модем | Низкая | Высокая | ISDN | Низкая | Низкая | xDSL | Высокая | Низкая | Спутник | Высокая | Высокая |
Заметьте, что задержка никак не зависит от ширины канала. Именно поэтому напримеродноканальный ISDN имеет ту же задержку, что и двухканальный ISDN, а спутниковый канал -хотя и способен передавать мегабайты в секунду - бесполезен для игр в реальном временииз-за задержки в районе 2000 миллисекунд (ms).
|
|
2003 © Наша-Life http://www.nashalife.ru/subjects-page103.html |