ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
29 марта
915632 Топик полностью
Nikolay_Po (12.04.2019 22:36, просмотров: 292) ответил Гудвин на UDP в сотовых сетях. На виртуальный сервер в сети с внешним IP приходит практически 100% отсылаемых пакетов. Если же в начале сеанса предварительно послать короткий "установочный" пакетик, то пакеты с данными гарантированно приходят на сервер.
Можно рассчитывать на близкую к 100% доставку исходящих от мобильного абонента пакетов UDP, но нельзя рассчитывать на обратное, за исключением покупки выделенного IP-адреса. Обычно провайдеры выделяют один белый IP сразу нескольким абонентам одновременно. Так ушли от проблемы недостатка адресов IPv4. Поэтому, в общем случае, нельзя рассчитывать, что поступающий на "белый" IP пакет UDP будет маршрутизирован "серому" абоненту. Такая маршрутизация возможна лишь для некоторых популярных приложений, использующих UDP. Трафик анализируется NAT'ом оператора и если, NAT правильно засёк стандартную процедуру установления соединения известного ему приложения, проброс портов сработает, входящие UDP будут маршрутизирваться куда надо. В этой схеме, без выделенного хотя бы одной стороне белого IP, невозможно обеспечить соединение между двумя мобильными абонентами. Ни по UDP, ни по TCP. Некуда маршрутизировать первый пакет сессии. Исключением может быть счастливый случай, когда абонент чудом оказался единственным на данном белом IP. Чтобы мобильный абонент получал данные извне, не имея выделенного IP адреса, нужно использовать TCP и держать сеанс, периодически обмениваясь пакетами. Только так NAT оператора будет держать сопоставление портов серому IP. Если нужно работать именно с UDP, нужно имитировать обмен популярного приложения или популярный протокол. К примеру, пара отечественных производителей гибких мультиплексоров, имитируют звонок VoIP. Одна из сторон шлёт SIP INVITE. В блоках описания сессии (SDP) явно согласуются порты. NAT оператора, будучи свидетелем этого, точно знает, какой "белый" порт UDP на какой "серый" IP пробросить. Но это для регулярно поступающих данных. Если будут большие паузы, проброс портов может развалиться. Ещё можно покопать в сторону UPnP NAT traversal. У меня нет информации, может ли такое работать в случае с оператором, тем более поверх PPP? Но не исключаю, что операторский NAT отзовётся на UPnP и согласиться пробросить порт.