IRC

Поделись знанием:
Перейти к: навигация, поиск
Об IRC в Википедии смотрите страницу Википедия:IRC.
IRC
Название:

Internet Relay Chat

Уровень (по модели OSI):

Прикладной

Семейство:

TCP/IP

Создан в:

1988 г.

Порт/ID:

194/TCP, 6667/TCP

Назначение протокола:

Доступ к чат-серверам

Спецификация:

RFC 1459, RFC 2810, RFC 2811, RFC 2812, RFC 2813

Основные реализации (клиенты):

irssi, KVIrc, mIRC, X-Chat, WeeChat, Miranda IM, x3irc, Pidgin

Основные реализации (серверы):

[www.unrealircd.com UnrealIRCd], ircnet-ircd, hybrid-ircd, [freenode.net/seven.shtml ircd-seven]

IRC (англ. Internet Relay Chat) — протокол прикладного уровня для обмена сообщениями в режиме реального времени.

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

IRC использует транспортный протокол TCP и криптографический TLS (опционально).

IRC начало завоевывать особенную популярность после операции «Буря в пустыне» (1991), когда сообщения со всего мира собирались в одном месте и в режиме «on-line» транслировались в IRC[1].

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





История и спецификации

IRC был разработан в 1988 в качестве замены программы MultiUser Talk.

Основная спецификация — RFC 1459 (1993).

Её дополняют несколько спецификаций 2000 года:

  • RFC 2810 — Internet Relay Chat: Architecture
  • RFC 2811 — Internet Relay Chat: Channel Management
  • RFC 2812 — Internet Relay Chat: Client Protocol
  • RFC 2813 — Internet Relay Chat: Server Protocol

IRC-сеть

Согласно спецификациям протокола, IRC-сеть — это группа серверов, соединённых между собой. Простейшей сетью является одиночный сервер.

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

Клиентом называется всё, что подключено к серверу, кроме других серверов. Различают два типа клиентов:

  • пользовательские;
  • сервисные.

Пересылка сообщений в IRC-сети

IRC предоставляет возможность как группового, так и приватного общения.

Для группового общения существует несколько возможностей.

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

Более эффективным является использование каналов. В этом случае сообщение отправляется непосредственно серверу, а сервер отправляет его всем пользователям в канале.

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

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

Роли пользователей

По отношению к серверу IRC пользователи могут быть IRC-операторами сервера (англ. IRCops), канала (англ. chanops) и обычными пользователями[2].

Клиентские приложения для IRC-сетей

Наиболее популярные приложения для различных ОС:

Windows:

mIRC, Miranda IM, Trillian, Pidgin, KVIrc, XChat

Unix и Linux:

Quassel, Kopete, Irssi, BitchX, XChat, Konversation, KVIrc, Pidgin, ircII, WeeChat

Mac OS X:

Snak, Ircle, Adium, Colloquy, KVIrc, LimeChat

AmigaOS:

AmIRC, AIRcOS, WookieChat, BenderIRC, BitchX, BlackIRC

Android:

androIRC, Andchat, DaraIRC, fIRC chat, IRC radio, Yaaic, AiCiA, Droid-Life IRC

MIDP:

JmIrc

Специфика русскоязычного IRC

К:Википедия:Статьи без источников (тип: не указан)

Использование русского языка в IRC не опирается ни на какой стандарт.

Однако, имеется ряд обычаев и соглашений, возникших в процессе эволюции различных русскоязычных IRC-сообществ.

История вопроса

Первые русскоговорящие каналы возникли ещё в 1990-х годах в международных сетях, таких как DALnet и IRCNet. Первоначально, под влиянием UNIX-культуры, было принято кодировать буквы русского алфавита в KOI-8.

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

Данное противоречие вызвало много конфликтов.

Стихийно возникшее в те времена соглашение помещало вопрос о кодировках в ве́дение конкретных каналов.

Это было очень неудобно для пользователей, однако на тот момент иного выхода не было.

Отчасти именно эта проблема стимулировала примерно с 2000 года усиленное формирование отдельных русскоязычных сетей, где вопросы кодировки могли бы решаться централизованно.

Обычаи современных русскоязычных сетей

Традиционно, в международных IRC-сетях клиенты посылают и принимают сообщения, состоящие из байтов; при этом вопрос об интерпретации не ASCII-байтов оставляется на усмотрение клиентов.

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

То есть, если правильно настроенный клиент отправляет на канал букву «Ы», то все подключенные к каналу правильно настроенные клиенты будут принимать тоже букву «Ы», независимо от того, как каждый из них предпочитает её кодировать.

На практике это обычно реализуется наличием на сервере нескольких TCP-портов, на каждом из которых используется определённая кодировка. Список этих портов принято помещать в MOTD (приветствие сервера).

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

Иногда (хотя и не обязательно), серверное ПО позволяет переключить кодировку без отсоединения от сервера — хотя по ряду причин такое изменение кодировки работает неаккуратно.

Как правило, каждая сеть использует свою внутреннюю кодировку (чаще всего это Windows-1251 и почти никогда UTF-8; почему — см. ниже), при этом данные, передаваемые или принимаемые клиентами, с кодировками отличными от внутренней, подвергаются перекодировке (немедленной при приёме, проводимой в момент формирования входящего сообщения — при передаче).

Ники

Исторически использование букв кириллицы в никах было невозможно.

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

UTF-8 — за и против

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

По стандарту, сообщение IRC не может иметь длину больше 510 байтов, из которых собственно на текст приходится никак не больше 499 (по нереалистично завышенной оценке).

Следовательно, отправить в одном сообщении больше 249 русских букв оказывается невозможно.

Ограничение размера сообщений вызывает ещё одну неприятность: при попытке превысить установленный предел сервер обрезает сообщения.

Если срез пройдёт посередине русской буквы (то есть будет передан первый её байт, но отброшен второй), то получившаяся последовательность байтов перестанет, с точки зрения UTF-8, быть правильной строкой.

Ряд клиентов (например, Xchat или mIRC) отобразят такое сообщение как 8-битное (например, в Latin-1 или Windows-1251), что сделает его полностью нечитаемым и занимающим к тому же много места на экране.

Единственным несомненным преимуществом использования UTF-8 для кодировки русского языка является возможность свободно цитировать тексты на других языках, а также использовать экзотические символы наподобие «→» и «☺».

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

Пока, однако, неизвестны многоязычные сети, явно оговаривающие необходимость использования только UTF-8, использующие UTF-8 в качестве внутренней кодировки, или каким-либо иным образом упорядочивающие кодировку символов клиентами (за исключением IRC-сервера внутри сети I2P).

См. также

Напишите отзыв о статье "IRC"

Примечания

  1. [www.ibiblio.org/pub/academic/communications/logs/Gulf-War/ Логи на сайте ibiblio.org]
  2. Hossein Bidgoli. [books.google.com/books?id=gZ9srwU_9xMC&pg=PA314 The Internet Encyclopedia, A–O]. — John Wiley & Sons. — Т. 2. — P. 314–. — ISBN 978-0-471-68996-6.

Ссылки

  • [dreamterra.net/IRCdocs Актуальные авторские статьи по установке и настройке IRC-софта]
  • [irchelp.org/ irchelp.org] (англ.) — документация по IRC
  • [www.ircnet.su/ ircnet.su] — помощь и статьи об IRC
  • [www.rus-net.org/ rus-net.org] — всё о русском IRC
  • [searchirc.com/ Статистическая информация по различным IRC-сетям] (англ.)
  • [irc.netsplit.de/networks/ Статистическая информация по различным IRC-сетям] (англ.)
  • Юрий Меркулов. [www.ixbt.com/soft/irc.shtml Путеводитель по IRC-клиентам]. iXBT.com (18 июля 2006). Проверено 25 апреля 2008. [www.webcitation.org/616XSQ6D7 Архивировано из первоисточника 21 августа 2011]. — Путеводитель по IRC-клиентам

Отрывок, характеризующий IRC

– Ежели бы не было великодушничанья на войне, то мы шли бы только тогда, когда стоит того идти на верную смерть, как теперь. Тогда не было бы войны за то, что Павел Иваныч обидел Михаила Иваныча. А ежели война как теперь, так война. И тогда интенсивность войск была бы не та, как теперь. Тогда бы все эти вестфальцы и гессенцы, которых ведет Наполеон, не пошли бы за ним в Россию, и мы бы не ходили драться в Австрию и в Пруссию, сами не зная зачем. Война не любезность, а самое гадкое дело в жизни, и надо понимать это и не играть в войну. Надо принимать строго и серьезно эту страшную необходимость. Всё в этом: откинуть ложь, и война так война, а не игрушка. А то война – это любимая забава праздных и легкомысленных людей… Военное сословие самое почетное. А что такое война, что нужно для успеха в военном деле, какие нравы военного общества? Цель войны – убийство, орудия войны – шпионство, измена и поощрение ее, разорение жителей, ограбление их или воровство для продовольствия армии; обман и ложь, называемые военными хитростями; нравы военного сословия – отсутствие свободы, то есть дисциплина, праздность, невежество, жестокость, разврат, пьянство. И несмотря на то – это высшее сословие, почитаемое всеми. Все цари, кроме китайского, носят военный мундир, и тому, кто больше убил народа, дают большую награду… Сойдутся, как завтра, на убийство друг друга, перебьют, перекалечат десятки тысяч людей, а потом будут служить благодарственные молебны за то, что побили много люден (которых число еще прибавляют), и провозглашают победу, полагая, что чем больше побито людей, тем больше заслуга. Как бог оттуда смотрит и слушает их! – тонким, пискливым голосом прокричал князь Андрей. – Ах, душа моя, последнее время мне стало тяжело жить. Я вижу, что стал понимать слишком много. А не годится человеку вкушать от древа познания добра и зла… Ну, да не надолго! – прибавил он. – Однако ты спишь, да и мне пера, поезжай в Горки, – вдруг сказал князь Андрей.
– О нет! – отвечал Пьер, испуганно соболезнующими глазами глядя на князя Андрея.
– Поезжай, поезжай: перед сраженьем нужно выспаться, – повторил князь Андрей. Он быстро подошел к Пьеру, обнял его и поцеловал. – Прощай, ступай, – прокричал он. – Увидимся ли, нет… – и он, поспешно повернувшись, ушел в сарай.
Было уже темно, и Пьер не мог разобрать того выражения, которое было на лице князя Андрея, было ли оно злобно или нежно.
Пьер постоял несколько времени молча, раздумывая, пойти ли за ним или ехать домой. «Нет, ему не нужно! – решил сам собой Пьер, – и я знаю, что это наше последнее свидание». Он тяжело вздохнул и поехал назад в Горки.
Князь Андрей, вернувшись в сарай, лег на ковер, но не мог спать.
Он закрыл глаза. Одни образы сменялись другими. На одном он долго, радостно остановился. Он живо вспомнил один вечер в Петербурге. Наташа с оживленным, взволнованным лицом рассказывала ему, как она в прошлое лето, ходя за грибами, заблудилась в большом лесу. Она несвязно описывала ему и глушь леса, и свои чувства, и разговоры с пчельником, которого она встретила, и, всякую минуту прерываясь в своем рассказе, говорила: «Нет, не могу, я не так рассказываю; нет, вы не понимаете», – несмотря на то, что князь Андрей успокоивал ее, говоря, что он понимает, и действительно понимал все, что она хотела сказать. Наташа была недовольна своими словами, – она чувствовала, что не выходило то страстно поэтическое ощущение, которое она испытала в этот день и которое она хотела выворотить наружу. «Это такая прелесть был этот старик, и темно так в лесу… и такие добрые у него… нет, я не умею рассказать», – говорила она, краснея и волнуясь. Князь Андрей улыбнулся теперь той же радостной улыбкой, которой он улыбался тогда, глядя ей в глаза. «Я понимал ее, – думал князь Андрей. – Не только понимал, но эту то душевную силу, эту искренность, эту открытость душевную, эту то душу ее, которую как будто связывало тело, эту то душу я и любил в ней… так сильно, так счастливо любил…» И вдруг он вспомнил о том, чем кончилась его любовь. «Ему ничего этого не нужно было. Он ничего этого не видел и не понимал. Он видел в ней хорошенькую и свеженькую девочку, с которой он не удостоил связать свою судьбу. А я? И до сих пор он жив и весел».
Князь Андрей, как будто кто нибудь обжег его, вскочил и стал опять ходить перед сараем.


25 го августа, накануне Бородинского сражения, префект дворца императора французов m r de Beausset и полковник Fabvier приехали, первый из Парижа, второй из Мадрида, к императору Наполеону в его стоянку у Валуева.
Переодевшись в придворный мундир, m r de Beausset приказал нести впереди себя привезенную им императору посылку и вошел в первое отделение палатки Наполеона, где, переговариваясь с окружавшими его адъютантами Наполеона, занялся раскупориванием ящика.
Fabvier, не входя в палатку, остановился, разговорясь с знакомыми генералами, у входа в нее.
Император Наполеон еще не выходил из своей спальни и оканчивал свой туалет. Он, пофыркивая и покряхтывая, поворачивался то толстой спиной, то обросшей жирной грудью под щетку, которою камердинер растирал его тело. Другой камердинер, придерживая пальцем склянку, брызгал одеколоном на выхоленное тело императора с таким выражением, которое говорило, что он один мог знать, сколько и куда надо брызнуть одеколону. Короткие волосы Наполеона были мокры и спутаны на лоб. Но лицо его, хоть опухшее и желтое, выражало физическое удовольствие: «Allez ferme, allez toujours…» [Ну еще, крепче…] – приговаривал он, пожимаясь и покряхтывая, растиравшему камердинеру. Адъютант, вошедший в спальню с тем, чтобы доложить императору о том, сколько было во вчерашнем деле взято пленных, передав то, что нужно было, стоял у двери, ожидая позволения уйти. Наполеон, сморщась, взглянул исподлобья на адъютанта.
– Point de prisonniers, – повторил он слова адъютанта. – Il se font demolir. Tant pis pour l'armee russe, – сказал он. – Allez toujours, allez ferme, [Нет пленных. Они заставляют истреблять себя. Тем хуже для русской армии. Ну еще, ну крепче…] – проговорил он, горбатясь и подставляя свои жирные плечи.
– C'est bien! Faites entrer monsieur de Beausset, ainsi que Fabvier, [Хорошо! Пускай войдет де Боссе, и Фабвье тоже.] – сказал он адъютанту, кивнув головой.
– Oui, Sire, [Слушаю, государь.] – и адъютант исчез в дверь палатки. Два камердинера быстро одели его величество, и он, в гвардейском синем мундире, твердыми, быстрыми шагами вышел в приемную.
Боссе в это время торопился руками, устанавливая привезенный им подарок от императрицы на двух стульях, прямо перед входом императора. Но император так неожиданно скоро оделся и вышел, что он не успел вполне приготовить сюрприза.
Наполеон тотчас заметил то, что они делали, и догадался, что они были еще не готовы. Он не захотел лишить их удовольствия сделать ему сюрприз. Он притворился, что не видит господина Боссе, и подозвал к себе Фабвье. Наполеон слушал, строго нахмурившись и молча, то, что говорил Фабвье ему о храбрости и преданности его войск, дравшихся при Саламанке на другом конце Европы и имевших только одну мысль – быть достойными своего императора, и один страх – не угодить ему. Результат сражения был печальный. Наполеон делал иронические замечания во время рассказа Fabvier, как будто он не предполагал, чтобы дело могло идти иначе в его отсутствие.
– Я должен поправить это в Москве, – сказал Наполеон. – A tantot, [До свиданья.] – прибавил он и подозвал де Боссе, который в это время уже успел приготовить сюрприз, уставив что то на стульях, и накрыл что то покрывалом.
Де Боссе низко поклонился тем придворным французским поклоном, которым умели кланяться только старые слуги Бурбонов, и подошел, подавая конверт.
Наполеон весело обратился к нему и подрал его за ухо.
– Вы поспешили, очень рад. Ну, что говорит Париж? – сказал он, вдруг изменяя свое прежде строгое выражение на самое ласковое.
– Sire, tout Paris regrette votre absence, [Государь, весь Париж сожалеет о вашем отсутствии.] – как и должно, ответил де Боссе. Но хотя Наполеон знал, что Боссе должен сказать это или тому подобное, хотя он в свои ясные минуты знал, что это было неправда, ему приятно было это слышать от де Боссе. Он опять удостоил его прикосновения за ухо.
– Je suis fache, de vous avoir fait faire tant de chemin, [Очень сожалею, что заставил вас проехаться так далеко.] – сказал он.
– Sire! Je ne m'attendais pas a moins qu'a vous trouver aux portes de Moscou, [Я ожидал не менее того, как найти вас, государь, у ворот Москвы.] – сказал Боссе.
Наполеон улыбнулся и, рассеянно подняв голову, оглянулся направо. Адъютант плывущим шагом подошел с золотой табакеркой и подставил ее. Наполеон взял ее.