Профессиональная свадебная видеосъёмка в Симферополе, Феодосии и по Крыму. Свадебное видео, Оператор на свадьбу, Недорого, Фотограф
Профессиональная оцифровка видео в Симферополе, Феодосии на диск или флешку

Регистрация | Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » Direct connect » Общие вопросы » DC - принцип работы сети (принцип работы сети)
DC - принцип работы сети
PerspectДата: Ср, 12.08.2009, 14.25 | Сообщение # 1
Генерал-лейтенант
Группа: Администраторы
Сообщений: 667
Награды: 4
Статус: Оффлайн
Большая часть проблем новичков в DC++ подстерегает из-за банального непонимания происходящего.

Для решения большинства проблем с режимами работы и стандартными ошибками достаточно понимать основные приципы DC++, кои и постараюсь описать далее.

Принцип работы:

Клиенты А, B и С подключены к хабу. Клиент A захотел скачать файл N.
На поисковый запрос клиенты B и C ответили что файл N находится в шаре у клиента B.
Далее начинается самое интересное:

DC++ использует входящее соединение. Это значит, что клиент А просит клиента B: "хей! я хочу файл N. я открыл для тебя порт 411. Мой адрес 192.168.1.5".
Клиент B устанавливает соединение с клиентом A используя переданную информацию, после чего начинает передачу. Соединение устанавливается напрямую между клиентам минуя хаб.

Данный случай является идеальным, к несчастью в реальности нас могут подстерегать следующие проблемы:

У пользователя А установлен файрвол, который в автоматическом режиме считает все попытки установить соединение с компьютером атакой (даже встроенный в Windows файрвол делает это). Естественно игнорируя все попытки клиента B подключится. Это - типичная проблема серии: "У меня все качают а я не могу!".
Решение - настроить файрвол корректно или отключить.

Пользователь А может находится за шлюзом NAT (Gateway). (см топологию С)

В этом случае все соединения устанавливаемые клиентом А обрабатываются шлюзом, но соединится с ним снаружи - невозможно без использования технологии о которой скажу ниже. Если пользователь А установит в клиенте "Активный режим работы" - возникнет таже самая проблема: Отдача файлов возможна (тк соединится с В не проблема), а получение нет.
Причина - при попытке установить соединение клиент В будет использовать внешний адрес шлюза. Аналогичная проблема возникнет при использовании Ethernet ADSL модема - он выступает в качестве шлюза, выдавая пользователю "внутренний IP адрес".

Какие IP адреса типично используются провайдерами как внутренние?
192.168.*.*
10.*.*.*
172.[16-31].*.*

В этом случае также возможна следующая проблема - внутренние хабы сети прекрасно работают, а внешние нет. (Соединения между клиентами внутри сети возможны, а снаружи подключится нельзя)

Клиент обычно вопит в этот момент: "время ожидания ответа истекло".

Что делать?

вариант 1 - самый распространенный: Пользователь переходит в пассивный режим:
DC++ начинает использовать ТОЛЬКО исходящие соединения:

Компьютер А посылает компьютеру В запрос (через хаб): "Хей! я хочу файл N! Открой мне порт" - "На тебе порт 666". Клиент А соединяется с Б используя эту информацию и начинает передачу.
Результат - вы можете соединятся только с теми кто может принят ваш запрос. те с Активными клиентами. Связь пассив - пассив невозможна по этойже причине.

вариант 2 - настройка шлюза.
Для преодоления подобный проблем была разработана технология перенаправления портов:

Шлюзу(модему) говорится примерно следующее: "все запросы на порт 666 перенаправляй на клиента А". Как итог - Клиент В теперь может совершенно спокойно соединится с А.

В настройках клиента А выставляется принудительное использование порта и ip-адреса. (вместо локального ip там указывается внешний ip шлюза)

Как работает поиск: (хотя тема подробно рассмотрена тут немного повторюсь)
Если вы используете активный режим то поисковые запросы идут непосредственно пользователям.
Если пассивный - поисковые запросы разруливает хаб.

Поиск и связь в активном режиме используют разные протоколы! для корректной работы, необходимо открыть для использования ОБА.

Когда поиск ничего не находит сначала, а через 10 минут находит то что искали, несмотря на то, что новые клиенты на хаб не заходили:
Файл у юзера С.

Юзер А запуская поиск ищет чтото, послыая несколько запросов (+автопоиск альтернативных источников). Результат: Клиет С получает от А 6-9 запросов почти одновременно. после чего решает: "этот негодяй пытается использовать спам поиска!" бан на 2 минуты на все поисковые запросы."

 
Форум » Direct connect » Общие вопросы » DC - принцип работы сети (принцип работы сети)
  • Страница 1 из 1
  • 1
Поиск: