Editing XEP-0065: SOCKS5 Bytestreams
From JaWiki (Jabber/XMPP wiki)
Warning: The database has been locked for maintenance, so you will not be able to save your edits right now. You may wish to copy and paste your text into a text file and save it for later.
The administrator who locked it offered this explanation: MediaWiki upgrading
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 73: | Line 73: | ||
== Введение == | == Введение == | ||
− | [[XMPP]] разработан для пересылки сравнительно малых кусков [[XML]] между [[entity|сетевыми сущностями]] (см. «[[XMPP Core|Основы XMPP]]») и не предназначен для пересылки двоичных данных. Тем не менее, иногда требуется передать двоичные данные другой сущности, найденной в сети XMPP (например, передать файл). Поэтому в сообществе Jabber многие признают, что было бы полезно иметь общий протокол для пересылки двоичных данных между двумя произвольными сущностями в сети. Основным приложением такой технологии передачи была бы [[file transfer|передача файлов]], для которой в настоящее время есть несколько несовместимых протоколов (что выливается в отсутствие совместимости). Тем не менее, возможны и другие приложения, из-за которых важно разработать общий протокол, а не ограниченный частным применением, таким, передача файлов. Этот документ определяет протокол, удовлетворяющий следующим условиям: | + | [[XMPP]] разработан для пересылки сравнительно малых кусков [[XML]] между [[entity|сетевыми сущностями]] (см. «[[RFC 3920: XMPP Core|Основы XMPP]]») и не предназначен для пересылки двоичных данных. Тем не менее, иногда требуется передать двоичные данные другой сущности, найденной в сети XMPP (например, передать файл). Поэтому в сообществе Jabber многие признают, что было бы полезно иметь общий протокол для пересылки двоичных данных между двумя произвольными сущностями в сети. Основным приложением такой технологии передачи была бы [[file transfer|передача файлов]], для которой в настоящее время есть несколько несовместимых протоколов (что выливается в отсутствие совместимости). Тем не менее, возможны и другие приложения, из-за которых важно разработать общий протокол, а не ограниченный частным применением, таким, передача файлов. Этот документ определяет протокол, удовлетворяющий следующим условиям: |
* Байтовые потоки устанавливаются поверх стандартных соединений [[w:TCP|TCP]] (RFC 793) или [[w:UDP|UDP]] (RFC 768), причём поддержка TCP ОБЯЗАТЕЛЬНА, а поддержка UDP НЕОБЯЗАТЕЛЬНА. | * Байтовые потоки устанавливаются поверх стандартных соединений [[w:TCP|TCP]] (RFC 793) или [[w:UDP|UDP]] (RFC 768), причём поддержка TCP ОБЯЗАТЕЛЬНА, а поддержка UDP НЕОБЯЗАТЕЛЬНА. | ||
* [[w:Сокет|Сокеты]] могут быть прямыми (peer-to-peer) или опосредованными (устанавливаемыми через передающий сервис). | * [[w:Сокет|Сокеты]] могут быть прямыми (peer-to-peer) или опосредованными (устанавливаемыми через передающий сервис). | ||
Line 175: | Line 175: | ||
Перед попыткой создания канала передачи данных Инициатору надо найти посредника (прокси). Он может сделать это, используя [[Service Discovery|обнаружение сервисов]] следующим образом: | Перед попыткой создания канала передачи данных Инициатору надо найти посредника (прокси). Он может сделать это, используя [[Service Discovery|обнаружение сервисов]] следующим образом: | ||
− | <b id="Example_3">Пример 3. Инициатор посылает серверу запрос [[Service Discovery|обнаружения сервисов ( | + | <b id="Example_3">Пример 3. Инициатор посылает серверу запрос [[Service Discovery|обнаружения сервисов (Servce Discovery).]]</b> |
<iq type='get' | <iq type='get' | ||
from='initiator@host1/foo' | from='initiator@host1/foo' | ||
Line 198: | Line 198: | ||
=== Инициатор спрашивает посредника, является ли он посредником === | === Инициатор спрашивает посредника, является ли он посредником === | ||
+ | {{todo|Что автор хотел этим сказать? // [[User:Juriks|Сыр Российский]] 19:42, 25 October 2007 (CEST)}} | ||
− | Инициатор должен | + | Каждый элемент списка результатов disco#items Инициатор должен запросить, является ли он посреднико передачи данных. Он может сделать это, используя [[Service Discovery|обнаружение сервисов (Service Discovery)]] следующим образом: |
<b id="Example_5">Пример 5. Инициатор посылает посреднику запрос обнаружения сервисов.</b> | <b id="Example_5">Пример 5. Инициатор посылает посреднику запрос обнаружения сервисов.</b> | ||
Line 209: | Line 210: | ||
</iq> | </iq> | ||
− | Посредник вернёт сведения о себе. Инициатору СЛЕДУЕТ исследовать | + | Посредник вернёт сведения о себе. Инициатору СЛЕДУЕТ исследовать каждую {{fixme|личность}} и посмотреть, содержится ли в этих сведениях {{fixme|личность}} категории "proxy" (свойство 'category') и типа "bytestreams" (свойство 'type'). |
<b id="Example_6">Пример 6. Сервер отвечает на запрос обнаружения сервисов.</b> | <b id="Example_6">Пример 6. Сервер отвечает на запрос обнаружения сервисов.</b> |