Расписание работы порта опроса

Здравствуйте!

У нас наши GPRS модемы со встроенным TCP/IP стеком работают в режиме клиента постоянно, в них не зашит временной интервал для установления соединения. Соответственно в среднем каждые 10 минут происходит обрыв сессии оператором и округление трафика, в результате чего в конце месяца получается приличный перерасход. Собственно такая просьба: сделайте в “порту опроса” поле с временным ограничением для установления сессий. В результате, раз соединения нет, то и округлять будет нечего.

Я правильно вас понял, вы хотите, чтобы порт опроса в определённое время перестал принимать подключения?

Трафик в любом случае может идти, поскольку модем будет передавать на компьютер сервера пакеты инициализации TCP-подключения и получать обратно пакеты с отказом. Всё зависит от того как работает биллинг вашего оператора связи.

Да, все верно. Я смотрел детализацию, там сессии в несколько секунд ни как не тарифицировались, поэтому думаю если и будет потребление, то минимальное.

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

Мы используем модемы Fargo Maestro 100 и SprutNet Pro (http://gprs-system.com/catalog/gsmgprs-modemi/8/10/) они не позволяют задавать расписание. Даже если нам изменят прошивку, ехать на все 300 объектов не вариант, тем более они у нас не только в городе, но и за пределами. Ну и в этих модемах нет real-time контроллера, задать временное окно корректно так же не получится.
Согласен с вами, если бы у нас была такая возможность, мы бы так и сделали.

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

Пообщавшись с Вами по телефону, понял, что задача эта не приоритетная и реализована будет не скоро. По причине большого объема работ. А если немного упростить задачу, вариант: запуск службы опроса по расписанию с параметрами, планировщиком. В таком случае интерфейс дорабатывать не придется. Возможна ли реализация такого варианта?

В принципе, это возможно. В планировщик можно добавить задачи на остановку и запуск службы опроса.
Для старта
net start LersPollService
Для остановки
net stop LersPollService

Это понятно. Я имел в виду другое. Если остановить службу опроса полностью, она потянет за собой все, в т.ч. и опрос по CSD. Мне бы хотелось передать параметры при запуске и остановке, например: net start LersPollService -параметр запуска1 … -параметр запускаN. Служба работать должна, но не полностью. CSD-должен работать. Ну и в идеале запретить некоторые порты опроса, не все.

Это будет очень сложная и неявная логика. Да и встраивание такого функционала ничуть не легче чем расписание порта опроса.

Возможно, вам стоит вынести службу опроса, которая работает с GPRS-модемами на отдельный компьютер?

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

Неявная логика пугает нас. Еще вариант - виртуальная машина.

Спасибо, но решение проблемы таким способом для нас не приемлемо. Попробую другим способом, например блокировать TCP порты на компьютере или роутере.

Блокировка порта TCP-порта решит вашу проблему. Есть еще вариант с выключением/включением порта опроса через скрипт/утилиту (например, на PowerShell и Lers Framework).

Прошло некоторое время, повторю просьбу. В настоящее время есть возможность реализовать функционал для настройки расписания порта опроса?

Есть, я уже предлагал вам решение с использованием Powershell.

Мы подготовим пример скрипта в ближайшее время.

Во вложении пример скрипта для выключения/включения порта опроса.

Отключение: powershell .lockport.ps1 -portName 'имя порта’
Включение: powershell .lockport.ps1 -portName ‘имя порта’ -enable
blockport.zip (1.28 KB)

Спасибо!

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

Не сложно, но позже.