0 / 0 / 0
Регистрация: 22.05.2017
Сообщений: 4
|
|
1 | |
Could not create SSL/TLS secure channel22.05.2017, 10:57. Показов 2874. Ответов 7
Добрый день! Следующая проблема: есть служба, есть объект httpwebrequest, создаем TLS соединение и отправляем данные. Служба работает для нескольких провайдеров услуг, запросов проходит очень много, но на одном провайдере (на одном и том же сертификате) периодически (ну может раз в месяц) валится ошибка Could not create SSL/TLS secure channel. Других исключений при этом нет, трассировку включить возможности тоже нет. После этого помогает только рестарт ОС, не службы, а именно ОС. Такое ощущение, что происходит "зависание" на сетевом уровне. Может у кого-то появятся идеи в какую сторону копать? Ошибка вываливается на функции httpWebRequest.GetResponse()
0
|
22.05.2017, 10:57 | |
Ответы с готовыми решениями:
7
The driver could not establish a secure connection to SQL Server by using Secure Sockets Layer (SSL) enc SMTP, SSL, TLS SSL, TLS и POP3 Чем отличаются TLS и SSL |
2756 / 2059 / 384
Регистрация: 22.07.2011
Сообщений: 7,781
|
|
22.05.2017, 11:25 | 2 |
а httpWebRequest и Response диспозятся ?
0
|
0 / 0 / 0
Регистрация: 22.05.2017
Сообщений: 4
|
|
22.05.2017, 11:56 [ТС] | 3 |
Да, все объекты освобождаются. Есть подозрение, что у поставщика неустойчивый канал, частые разрывы связи, но и при разрыве объект Response должен корректно завершаться.
0
|
2756 / 2059 / 384
Регистрация: 22.07.2011
Сообщений: 7,781
|
|
22.05.2017, 13:33 | 4 |
А как же тогда уведомить пользователя о "внешних" проблемах ? - вот он и бросает исключение , нужно просто его обработать. Ну и что касается зависаний , при которых перезапуск приложения не помогает , то тут , очевидно , не в приложении дело. - ошибка на уровне httpWebRequest лишь свидетельствует о внешних проблемах.
0
|
0 / 0 / 0
Регистрация: 22.05.2017
Сообщений: 4
|
|
22.05.2017, 13:54 [ТС] | 5 |
Я имею в виду что при разрыве связи со стороны провайдера, в теории объект Response должен закрывать сокет открытый, даже если данные не до конца переданы. А так исключение обрабатывается, но ошибка неинформативна, только Could not create SSL/TLS secure channel.
Ваша мысль о внешних проблемах понятна, но только как доказать, что это проблема на более низком уровне? В исходники лезть и пытаться в них разобраться? Спасибо.
0
|
2756 / 2059 / 384
Регистрация: 22.07.2011
Сообщений: 7,781
|
|
22.05.2017, 14:09 | 6 |
В исходниках ничего полезного не увидите , там обращение к win api функциям системы. , на выходе у которых , с такой же степенью детализации , код ошибки.
Если все ресурсы освобождаете , то больше рычагов то в целом у вас и нет. - вызвать функцию , получить тот или иной результат. Можно посмотреть системные логи , на предмет смежных ошибок , которые как то могут влиять. Вообще , SSL соединение , на уровне TCP выполняется в несколько шагов , чередой запрос/ответ , так что , если на одном из этапов произошел какой либо сбой - ну например тот же разрыв связи , то получаем общую ошибку подобного плана.
1
|
0 / 0 / 0
Регистрация: 22.05.2017
Сообщений: 4
|
|
22.05.2017, 14:13 [ТС] | 7 |
А почему только перезагрузка ОС помогает? Просто получается - один раз ошибка выпала и потом по этому адресу при попытке отправить данные опять та же самая ошибка... рестарт сервиса при этом эффекта не дает. Получается, что это где-то может быть баг в .net? Какие-то ресурсы на уровне платформы не освобождаются?
0
|
2756 / 2059 / 384
Регистрация: 22.07.2011
Сообщений: 7,781
|
|
22.05.2017, 14:27 | 8 |
В NET баг наврядли ) , то что ОС виснет - либо баги в самой ОС накопились , либо , все же в приложении где то что то некорректно делаете , возможно даже в совсем другом месте завязанном на сеть.
Поскольку приложение юзает апи , которое задействует внешние по отношению к нему ресурсы , то его выгрузка никак не освобождает эти ресурсы. , в итоге накопление мелких ошибок и системный сбой. - погоняйте приложение на тестовом стендне на максимуме запросов , если подобной проблемы не возникнет , значит проблема на рабочей машине.
1
|
22.05.2017, 14:27 | |
22.05.2017, 14:27 | |
Помогаю со студенческими работами здесь
8
Принцип работы сертификатов SSL / TLS Использование SSL и TLS в WinInet.dll Ssl/Tls криптография, перехват пакетов SSL или TLS - кодировка (протокол) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |