NNTP () — представляет собой сетевой протокол распространения, запрашивания, размещения и получения групп новостей при взаимодействии между сервером групп новостей и клиентом.

Введение

NNTP — протокол, разработанный для обмена сообщениями в телеконференциях. По строению этот протокол во многом схож с протоколом приёма и передачи электронной почты SMTP.

Существует вариация протокола NNTP, называемая NNRP (Network News Readers Protocol). Она отличается только набором поддерживаемых команд, и предназначена для чтения конференций с сервера новостей клиентским ПО в режиме онлайн. Функционально NNTP ориентирован на то, что статьи отправляются подписчикам при их появлении на сервере, а NNRP — по запросу клиента. Соответственно, NNTP используется для обмена сообщениями между серверами новостей, а NNRP — для чтения сообщений с ньюссервера и создания новых сообщений.

За NNTP закреплён TCP-порт 119. При подключении к NNTP-серверу по SSL (т. н. NNTPS) используется порт 563.

NNTP предполагает, что серверы новостей имеют постоянное IP-подключение. Когда онлайн-технологии были менее распространены, серверы новостей обменивались новостями посредством uucp.

Протокол NNTP, как и SMTP, является текстовым, то есть все команды и ответы на них являются обычными текстовыми строками. Важной особенностью протокола NNTP является его эффективность в случае сложных графов связей между серверами новостей. Чтобы одно и то же сообщение не передавалось многократно, обычно отправляющий сервер сначала сообщает идентификатор нового сообщения, а само сообщение отправляет только после подтверждения принимающей стороны о том, что этого сообщения там ещё нет. В случае расширения stream NNTP эта концепция развивается ещё дальше: отправляющая сторона шлёт список идентификаторов новых статей, не дожидаясь ответа на каждый из них, и сами статьи, если принимающая запросила их по идентификаторам.

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

Пример NNTP-сессии A: — отвечающая сторона, O: — вызывающая сторона

A: (ожидает соединения) O: (Подключается к порту 119 сервера) A: 200 news.company.tld InterNetNews server INN 2.3.0 ready O: IHAVE <ident@message> A: 435 Duplicate O: IHAVE <[email protected]> A: 335 O: Newsgroups: test.group O: Subject: test O: Message-Id: <[email protected]> O: From: Some Persone <[email protected]> O: Date: Wed, 25 Apr 2007 14:18:31 +0300 O: O: message body O: . A: 235 O: QUIT A: 205 . A: (закрывает соединение)

Клиенты групп новостей и серверы групп новостей Иногда говорят «клиент групп новостей» вместо «NNTP-клиент». Следует понимать, что NNTP-клиенты поддерживают протокол NNTP не в полной мере, а лишь его вариацию NNRP. На сегодняшний день доступны следующие клиентские программы:

НазваниеОперационные системыИнтерфейсПримечание Microsoft WindowsUNIXMac OS XAndroidiOSГПИТПИ Claws MailФорк Sylpheed. Работает также на Maemo. :en:Forté Agent Forté Agent — настройка для русского NNTP GnusРасширение для Emacs. WanderlustРасширение для Emacs. en:KNodeВходил в состав KDE до версии 4 включительно. Mozilla ThunderbirdЕсть сторонняя сборка под OS/2. SeaMonkey MyGateРасширение для The Bat!. Opera MailВходит в состав Opera. Outlook Express Для программы Outlook Express существует надстройка под названием Fidolook. Она значительно расширяет возможности Outlook Express и нередко используется пользователями Фидонета.Есть версия под Mac OS 9. en:PanВходит в состав GNOME. slrnРаботает также на иных платформах (BeOS, OS/2, OpenVMS). Sylpheed tinРаботает также под OpenVMS. PiaoHong.Usenet.ClientЕсть платная версия NewsTap

Из серверного программного обеспечения известно:

НазваниеОперационные системыПримечание Microsoft WindowsUNIXMac OS X :en:Apache JamesНаписан на Java. en:InterNetNews (INN)Самый известный сервер, разрабатываемый en:ISC. :en:LeafnodeПрокси-сервер. :en:Cyrus IMAP serverE-Mail сервер с расширенной функциональностью.

Другие реализации можно попытаться найти в ODP.

Группы новостей

Большинство групп новостей, распространяемых при помощи NNTP, принадлежит сети Usenet. В Интернете существуют однако и другие группы новостей: предоставляемые шлюзами других сетей, частные и т. п.

См. также Клиенты групп новостей Usenet MIME uucp SCTP Интернет-сообщества

Примечания

Категория:Протоколы прикладного уровня