ICQ - система для общения и поиска друзей

Аббревиатура ICQ произносится как ⌠ай си кью■, что по звучанию эквивалентно английскому I Seek You - ⌠я ищу тебя■. Это довольно точно отражает назначение системы - способствовать поиску друзей и общению между ними. ICQ - это общемировая система общения в реальном времени через Internet; количество ее абонентов летом 1998 года было около двенадцать миллионов, осенью - двадцать, в начале 1999 года перевалило за тридцать, а мае достигло сорока.

Система ICQ разработана в 1996 году израильской компанией Mirabilis Ltd., которая летом 1998 года была приобретена американской компанией America Online (AOL) и переименована в ICQ Inc.

В 1998 году использовалась версия ICQ 98a, в феврале 1999 года была выпущена новая версия - 99a Beta, которая существенно полнее и удобнее предыдущей. В этой серии статей будет рассматриваться только версия 99a.

По своему устройству сеть ICQ напоминает телефонную, в которой абоненты имеют интеллектуальные телефонные и факсовые аппараты. Каждый абонент имеет свой уникальный номер (UIN - Universal Internet Number, универсальный номер в Интернет), который служит идентификатором абонента в сети ICQ, и по которому можно связаться с ним. В целях защиты каждый UIN снабжается паролем, без которого невозможно как войти в сеть ICQ, так и изменить учетную информацию.

Для удобства каждый абонент может создать себе список основных партнеров (Contact List), в который заносит тех, с кем общается регулярно (аналог кнопок прямого вызова на телефонном аппарате), а также адресную книгу (Address Book), в которую заносятся сведения о редко вызываемых людях.

Основная форма общения по ICQ - обмен короткими сообщениями почти в реальном времени (аналог пересылки факсовых сообщений); попутно поддерживаются пересылка файлов и прямая беседа в реальном времени (Chat), в которой могут участвовать как два, так и более абонентов.

От традиционной электронной почты ICQ выгодно отличается тем, что позволяет каждому абоненту иметь "свое лицо" в сети. Если обычный электронный адрес ничего не может сказать о его обладателе, то со своим UIN можно связать самые разнообразные сведения о себе - прозвище (Nick Name), реальное имя, пол, возраст, профессию, места проживания и работы, телефоны, краткие данные, фрагменты биографии, перечень интересов. Эти сведения становятся доступными для остальных абонентов с момента их внесения в учетную карточку (White Page), которую затем можно либо получить напрямую по номеру, либо найти по запросу, который может содержать сразу несколько критериев отбора. Таким образом, ICQ позволяет не только общаться тем, кто уже знает UIN друг друга, но и эффективно находить в сети нужных и интересных людей.

Дополнительный сервис ICQ - рассылка сообщений группе абонентов, пересылка полученных от одних абонентов сообщений другим, работа с обычной электронной почтой, передача между абонентами фрагментов списка контактов, ссылок на ресурсы Internet (URL), поздравительных открыток, голосовых сообщений, ведение протокола переписки и бесед (History). В версии 99a добавлены блоки автоматических напоминаний (Reminder), плана ближайших действий (ToDo) и блокнота для заметок (Notes). Блок напоминаний автоматически уведомляет о приближении дней рождения тех абонентов из основного списка, кто указал дату своего рождения в своей учетной карточке.

Для ICQ разработано множество программ-сателлитов, среди которых наиболее популярны средства голосовых разговоров в реальном времени - Rave, Speak Freely, BuddyPhone и т.п.

На данный момент пользование ICQ бесплатно - так называемая Time Limited Free Beta. Это означает, что система находится в стадии тестирования, и в этот период разработчик не несет никакой ответственности на ее работоспособность надежность. С выпуском полноценной версии (Release) свободное использование Beta√версий может быть юридически или программно запрещено.

Установить ICQ может любой пользователь Internet - достаточно лишь наличия соединения с сетью на все время работы программы. Некоторые трудности, тем не менее, могут возникать у пользователей ⌠неполноценных■ локальных сетей (Intranet), которые имеют доступ в Internet через промежуточный, "перевалочный" узел. В одних случаях этот узел защищает локальную сеть от вторжений извне и носит название Firewall, в других - организует выход пользователей локальной сети в Интернет и называется сетевым транслятором (NAT) или Proxy√сервером. В таких случаях придется прибегнуть к помощи системного администратора.

Работает система по принципу "клиент-сервер". Разработчиками создан и поддерживается так называемый ICQ√сервер - узел Internet, воспринимающий запросы клиентов - обычных абонентов ICQ. На самом деле серверов ICQ больше одного, но для удобства используется одно имя - icq.mirabilis.com. На сервере хранится мировая база данных - полный список всех абонентов сети и их учетные карточки. В сети ICQ сервер выполняет примерно ту же роль, что и станция в обычной телефонной сети.

При запуске пользовательской программы (клиента) ICQ она первым делом устанавливает связь с сервером ICQ. Если этот абонент еще не имеет своего UIN - ICQ запрашивает у него основные сведения, после чего регистрирует его в базе данных сервера и возвращает полученный UIN. Если же UIN уже назначен - ICQ сразу переходит к регистрации "пользователя на связи" (Online User), для чего сообщает серверу IP√адрес своего компьютера, который тот заносит в базу данных, отмечая, что пользователь "вошел в сеть".

После того, как IP√адрес пользователя занесен в базу данных, прочие абоненты ICQ, содержащие его в основном списке, получают уведомление о его появлении в сети. С этого момента между любыми двумя абонентами в Online возможна прямая связь - ICQ одного получает с сервера IP√адрес другого, после чего устанавливает с ним связь обычным для Интернет способом. Когда возможна прямая связь между абонентами, доступны все возможности ICQ - длинные (свыше 450 символов) сообщения, пересылка файлов, беседы и голосовые переговоры.

Состояние Online имеет несколько разновидностей, отражающих доступность абонента для общения - просто в сети, доступен для случайного вызова, отошел, ушел, занят, не беспокоить, невидим. Первые отображаются различными значками на индикаторе ICQ самого абонента и напротив его имени - в списках остальных, а в режиме невидимости сервер не сообщает остальным от наличии абонента в сети, позволяя ему при этом "видеть" всех остальных абонентов.

В ряде случаев компьютер, на котором запущен клиент ICQ, не имеет "честного" IP√адреса - например, если он связан с Интернет посредством Proxy√сервера или сетевого транслятора. В этих случаях ICQ пересылает короткие (до 450 символов) сообщения через свой сервер, однако этот способ менее надежен и требует большего времени на пересылку. Пересылка через сервер применяется и тогда, когда один из абонентов отключен от сети - сообщения для него запоминаются сервером, и передаются после его подключения к сети ICQ.

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

Для обеспечения безопасности (Security) и уединения (Privacy) абонентов система предоставляет широкий набор средств - возможность отказа от публикации любых сведений о себе, игнорирование сообщений или невидимость для избранных абонентов или, наоборот - видимость для отдельных абонентов при невидимости для всех остальных. Любой абонент может указать, что для занесения его в основной список другого абонента необходимо его явное разрешение (Authorization).

Однако, поскольку система создавалась для обычного общения, она уязвима для ряда методов сетевых атак (Nukes), использующих сканирование портов или имитирующих сообщения от сервера ICQ или другого абонента. Для борьбы с такими атаками разработан ряд сторожевых программ (Anti-Nuke). Кроме этого, ICQ пересылает все сообщения в открытом виде, не гарантируя их секретности - в ряде случаев они могут быть перехвачены квалифицированным злоумышленником, находящимся на пути прохождения сообщения.

На одном компьютере может быть установлена только одна копия программы ICQ, однако она поддерживает работу нескольких пользователей в разное время, позволяя активизировать на выбор одного из них. Для каждого пользователя на компьютере поддерживается свой набор локальных данных, включая настройки программы, архив событий и сообщений (Event/Message History), блокноты, напоминания и т.п..

Разработчики ICQ поддерживают обширный WWW√сервер www.icq.com, на котором можно получить справочную информацию, ответы на часто задаваемые вопросы (FAQ), новые версии программы, узнать о состоянии сети ICQ, а также пользоваться частью функций ICQ, не имея самой программы - найти нужного пользователя ICQ, просмотреть его учетную информацию, отправить сообщение.

Клиенты ICQ разработаны для множества платформ - Windows 95/98/NT, Windows 3.1, Windows CE, Windows NT 3.51, Mac (68K/Power), UNIX (mICQ), JAVA, PalmPilot.

Последняя на середину мая 1999 года версия ICQ - 99a 2.21 #1800, получить ее можно на www.icq.com/download.

Евгений Музыченко, специально для VR Magazine.