Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

.NET Sockets - Дядя Билли опять облажался.......

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Компилируемые языки] >> .NET Sockets - Дядя Билли опять облажался.......
Имя
Сообщение << Старые топики   Новые топики >>
.NET Sockets - Дядя Билли опять облажался....... - 2006-12-03 17:33:13.810000   
AzazelMazikin

Сообщений: 137
Оценки: 0
Присоединился: 2006-12-03 17:16:04.420000
Как определить в .NET что удаленный хост отвалился? Есть хоть один надежный способ? Свойство Connected не работает по определению, аж в МСДНе написано что на него полагатся нельзя потому что возвращает значение которое было в момент последней операции…. Делаю и Poll и Read перед этим, не помогает…. Ишо в буржуйских доках намек на то что хост должен отключится по всем правилам, знать бы что оно значит (gracefully). Но по спецификации моего приложения должны учитываться и такие зверские ситуевины как выдергивание кабеля. Проверку на отсылку данных или пинг удаленного хоста не предлагать - отсылать что то лишнее нельзя а пинг может попросту отсекатся

Проверено на обоих версиях .NET - один хрен….
Post #: 1
RE: .NET Sockets - Дядя Билли опять облажался....... - 2006-12-03 18:41:54.920000   
rgo

Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
в tcp/ip не заложены механизмы мониторинга состояния соединения. так что… надо делать это на верхних уровнях.
в протоколе irc, например, заложена команда PING, специально для того, чтобы и сервак и клиент могли бы посмотреть умерло соединение или нет.
так что билл здесь не причём.
Post #: 2
RE: .NET Sockets - Дядя Билли опять облажался....... - 2006-12-03 19:01:07.970000   
AzazelMazikin

Сообщений: 137
Оценки: 0
Присоединился: 2006-12-03 17:16:04.420000
Вообщето если соединение умерло то через пару секунд netstat вместо надписи ESTABILISHED выдает какую нить другую….

А в Дельфи вообще есть событие OnDisconnect у сокета, тоже не работает, но может я что то не то делаю, за VCL давно не садился….
Post #: 3
RE: .NET Sockets - Дядя Билли опять облажался....... - 2006-12-03 19:12:23.860000   
rgo

Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
quote:

ORIGINAL: AzazelMazikin

Вообщето если соединение умерло то через пару секунд netstat вместо надписи ESTABILISHED выдает какую нить другую….

это когда его закрывать начали, и не закончили. ну, linux'вый netstat по крайней мере так делает.
а вообще, если очень хочется, то можно спуститься уровнем ниже – под ip: выяснить через какой интерфейс сокет гоняет пакеты, и отслеживать состояние интерфейса. но тут ты, возможно, умучаешься там ведь может быть ppp, eth и пр, всякие там соединения через com, usb…
Post #: 4
Страниц:  [1]
Все форумы >> [Компилируемые языки] >> .NET Sockets - Дядя Билли опять облажался.......







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.