Назад | Перейти на главную страницу

TCP: адрес уже используется исключение - возможные причины для порта клиента? ОТСУТСТВИЕ ПОРТОВ

глупая проблема. Я получаю их от клиента, подключающегося к серверу. К сожалению, установка усложняется, что усложняет отладку - и у нас заканчиваются опции.

Среда: * Система клиент / сервер, оба работают на одном компьютере. На самом деле клиент - это служба, выполняющая некоторые манипуляции с базой данных в определенное время. * Связь исходит от C #, проходящего через OleDb, к драйверу EasySoft JDBC и специально написанному серверу JDBC, который затем размещает логику на C ++. Да, compelx, но сторонний поставщик решил раскрыть механизмы расширения для своего сервера через интерфейс JDBC. Здесь мало что можно сделать;)

Симптом: Через регулярные промежутки времени мы получаем сообщение «Адрес уже используется: подключитесь», полученный от драйвера JDBC. Кажется, они исходят от одной конкретной службы, которую мы запускаем.

Я прочитал все об исчерпании портов. Вот почему у нас сейчас работает небольшой инструмент, который ежеминутно считает порты и их состояние. В прошлый раз, когда это произошло, у нас было поразительное количество используемых портов - 370, и количество портов увеличилось примерно до 900 ПОСЛЕ ошибки. Мы уже исправили реестр (это машина с Windows), чтобы разрешить более 5000 стандартных клиентских портов, но даже в этом случае мы далеки от этого предела для начала.

Вот почему я спрашиваю здесь. Ayneone an ide, что еще может вызвать это?

Это машина с Windows 2003 Server, 64 бит. Единственное, что я вижу, что может вызвать это (но эта функция предположительно отключена), - это Symantec Endpoint Protection, установленный на сервере и способный действовать как брандмауэр, он может перехватывать сетевой трафик. Я не хочу открывать банку червей, преждевременно указывая на Symantec (если указание на Symantec может когда-либо рассматриваться как таковое). Итак, кто-нибудь знает, что еще может быть причиной?

Спасибо

Особо выделяются три вещи:

на специально написанный сервер JDBC

и

Symantec Endpoint Protection

и

Система клиент / сервер, оба работают на одном компьютере

Вопрос 1: Как сервер выбирает порты? Может ли быть так, что клиент и сервер (которые находятся на одной машине) каким-то образом синхронизируются с нерегулярными интервалами и выбирают один и тот же порт?

Вопрос 2: Вы пробовали выключить SEP? Если нет, выключите и посмотрите, что произойдет. Вам нужно исключить возможность того, что он мешает.

Вопрос 3: Что значит netstat сказать во время ошибок?