У меня есть программа, которая работает в Windows и сканирует акции на Netapp filer над CIFS. Когда сканер работает на W2K3 и выходит из него, запуск сеансов cifs -c на фиде Netapp показывает, что сеанс исчез. Когда один и тот же сканер работает на W2K8 и выходит, вышеуказанная команда Netapp показывает, что сеанс все еще жив. Приложение сканера уже вышло, поэтому больше не должно быть трафика на сеансе.Как я могу повторно использовать существующий сеанс CIFS или явно оканчивать один программным способом (W2K8 на Netapp)?
Что я сделал до сих пор: 1) ждал (более) cifs.idle_timeout количество секунд, чтобы увидеть, уходит ли сеанс. Это не. 2) проанализированы трассировки пакетов для обмена данными между W2K3-> Netapp и W2K8-> Netapp. Трассировка W2K3 показывает TREE_CONNECT и TREE_DISCONNECT, но трассировка W2K8 показывает только запрос TREE_CONNECT. Я проверю это, но думаю, что TREE_DISCONNECT на W2K3 сопровождается запросом LOGOFF (что приводит к завершению сеанса, я бы поверила?). 3) Чтобы посмотреть, как все будет выглядеть, когда Netapp не находится на картинке - с машины W2K8-client я получил доступ через windows-explorer \\ C $. Это вызывает запрос TREE_CONNECT на провод. Теперь я закрыл окно проводника, и машина W2K3-сервера закрыла сеанс, хотя на проводнике, создаваемом клиентом W2K8, не было TREE_DISCONNECT.
Похоже, что Netapp ожидает чего-то, что W2K8 не отправляет.
Вопрос: Существует ли конкретный API, который я могу использовать в своем приложении для сканера для i) отправить явный запрос LOGOFF SMB, когда я закончил сканирование? ii) или повторить использование существующего сеанса с W2K8-клиентом и фильтром Netapp для нового сканирования? ii) Кто-нибудь сталкивается с этим или подобными сценариями?
Заранее спасибо.