Джингл (XEP-0166): Проходят ли какие-либо мультимедийные данные через мой сервер, и если нет, кому выставляются счета за данные?

Я использую сервер Openfire на экземпляре AWS EC2 и могу подключаться к серверу со своих мобильных устройств и отправлять сообщения туда и обратно. Конечно, поскольку XMPP является протоколом на основе клиент-сервер, я несу расходы по пропуску этого трафика через сервер AWS. Однако в большинстве случаев эта стоимость совсем не очень высока, так как нормальные строфы XMPP редко превышают ок. 1 кб, так что с этого конца все ок.

Теперь я хотел бы включить возможность отправки изображений от одного клиента другому. Одним из способов может быть использование HTTP-сервера, на который пользователь A загружает изображение, а затем отправляет URL-адрес изображения пользователю B через XMPP, чтобы пользователь мог теперь получить изображение через HTTP. Есть также несколько других способов отправки изображений через XMPP. Тем не менее, я заинтересован в том, чтобы сделать это через Джингл.

Насколько я понимаю, Jingle является внеполосным одноранговым расширением XMPP. Мой простой вопрос заключается в том, что, поскольку Jingle взаимодействует однорангово, то есть без использования сервера, для мультимедийного аспекта сеанса, буду ли я даже нести какую-либо стоимость данных на AWS для передачи мультимедиа от одного клиента другому с помощью Jingle? Или, иначе говоря, если Jingle одноранговый, какие-либо данные передаются через мой сервер AWS с использованием Jingle (кроме разделов инициирования сеанса, подтверждения, завершения сеанса)? Если нет, то по какому маршруту идут эти данные и как можно выставить счет за такую ​​стоимость трафика, если она одноранговая?

1 ответ

Jingle - это механизм согласования, и есть несколько разных транспортов, с которыми он может договориться о передаче файла. Наиболее распространенный транспорт - это одноранговые потоки, определенные в http://xmpp.org/extensions/xep-0260.html - здесь единственным трафиком, который вы увидите через сервер, будет согласование джингла, которое является аналогом объем другого трафика XMPP). В http://xmpp.org/extensions/xep-0261.html есть также внутриполосный транспортный поток байтов, который будут использовать некоторые клиенты - обычно для небольших передач, поскольку он неэффективен, но имеет преимущество работы во враждебных сетях с NAT и брандмауэры. Если вы контролируете клиентов, просто не поддерживая IBB, лучше всего убедиться, что трафик не проходит через сервер. Если вы этого не сделаете, я бы предложил настроить ваш сервер для блокирования трафика IBB.

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

Существует также широко распространенный http://xmpp.org/extensions/xep-0343.html внеполосный транспорт.

Другие вопросы по тегам