bg

Справка онлайн | TCP Splitter

О программе

Обзор программы

 

TCP Splitter это утилита, которая позволяет разделить поток данных через TCP или UDP порт на 2 или 3 части, что позволяет обрабатывать входящие данные в нескольких приложениях одновременно. Например, вы можете передавать данные NMEA 0183 в навигационную программу, и одновременно протоколировать их с помощью одного из наших логгеров.

 

Наша программа позволяет построить распределенные системы мониторинга, с дублированием или резервированием данных.

 

Характеристики:

 

Вы можете настроить разделение потока для нескольких портов одновременно.

Каждый порт может иметь свои собственные настройки разделения данных.

Программа поддерживает протоколы TCP и UDP, как в локальной сети, так и через Internet.

Программа может преобразовывать протокол из TCP в UDP и наоборот.

В сети Internet программа может работать с динамическими IP адресами, используя доменное имя.

Вы можете создавать локальные соединения в пределах одного компьютера.

При работе в режиме TCP сервера программа может принимать данные от множества клиентов.

В каждом разделенном потоке данных создается отдельное подключение для каждого клиента.

Программа может автоматически запускаться как служба и устанавливать сетевые соединения еще до логина пользователя в систему.

 

Типовое использование:

 

В отдельном разделе описаны 4 типовых способа использования TCP Splitter.

 

ОТВЕТСТВЕННОСТЬ:

Мы не несем никакой ответственности за любой ущерб, нанесенный этим продуктом.

 

Пользователь имеет двадцать один день, чтобы опробовать это программное обеспечение в демонстрационной версии. При этом может быть создано только два соединения на одном компьютере, и на трафик через каждое соединение ограничен 56 килобайтами.

 

Сайт компании: https://www.aggsoft.ru/

Системные требования

Для запуска программы необходима одна из следующих ОС:

 

Windows 2000 SP 4 - Windows 11 (платформы x86 и x64, серверные и настольные операционные системы).

 

Вам будут необходимы права администратора для инсталляции и регистрации программы.

Необходим, по меньшей мере, один свободный COM-порт, не занятый никаким другим устройством (например, мышью), для того, чтобы подключить внешнее устройство.

Процесс инсталляции

Если на Вашем компьютере была установлена другая бета-версия, удалите ее.

 

Выйдите на время установки из работающей программы TCP Splitter.

 

Запустите файл установки.

 

По умолчанию, TCP Splitter будет установлен в папку "\Programs Files\TCP Splitter" вашего системного диска, но вы можете указать свой путь.

 

В стандартной поставке TCP Splitter отсутствуют файлы дополнительных модулей, которые вы можете скачать с нашего сайта.

Введение

Основные моменты:

 

Не требуется перезагрузка. Создание, подключение и удаление соединений происходят в реальном времени;

Вы можете одновременно разделять потоки для нескольких IP портов;

TCP Splitter может запускаться как служба, и как настольное приложение. Если служба уже запущена, то вторая копия программы на рабочем столе будет запущена в режиме редактора конфигурации. При этом статистика передачи данных отображаться не будет.

 

Как только программа будет запущена, откроется главное окно программы (Рис. 1). Это - окно конфигурации. Изображение ниже показывает экран TCP Splitter с его различными частями.

 

1.Главное меню - команды Меню, описаны в разделе "Меню" этого файла помощи;
2.Список соединений - содержит список созданных соединений и их статус;
3.Тип старта - позволяет настроить автоматический запуск TCP Splitter в момент загрузки Windows или оставить ручной режим запуска. При старте программы автоматически создаются необходимые виртуальные порты.

 

 

main-window

Рис.1 Главное окно программы

 

В зоне главного меню расположены следующие команды – Файл, Устройства, Вид и Справка. Каждый пункт в этих меню описан ниже. Некоторые функции меню могут быть также активизированы с помощью комбинаций клавиш на клавиатуре, ("Hotkeys", см. в этом разделе Справки). Соответствующие клавиши клавиатуры и кнопки панели инструментов указаны в каждом пункте меню.

 

После добавления нового соединения и нажатия OK в окне настройки параметром соединения будут автоматически применены все изменения. В колонке "Состояние" будет отображаться краткая информация о состоянии подключения для входящего потока и всех активированных направлений, на которые разделяется поток.

 

Обратите внимание, что активность программы может быть блокирована вашим файерволом. Если вы увидите запрос на разрешение подключения, то сделайте правильный выбор (рис. 2). Если запрос не появляется, то проверьте настройки вашего файервола.

 

firewall-ask

Рис.2 Запрос на разрешение подключений

Меню "Устройства"

Добавить

Hotkey: Ctrl+N

Вызов меню - Щелчок правой кнопкой

 

Это пункт меню используется для того, чтобы создать новое соединение.

 

Конфигурация

Hotkey: Ctrl+C

Вызов меню - Щелчок правой кнопкой

 

Эта команда открывает окно изменения параметров ранее созданного соединения. Этот пункт меню доступен, только если в списке выбрано одно из соединений.

 

Удалить

Hotkey: Ctrl+X

Вызов меню - Щелчок правой кнопкой

 

Эта команда удалит выбранное соединение из списка. При этом будет закрыто соединение и удален виртуальный порт (если в свойствах соединения было указано создавать виртуальный COM порт). Этот пункт меню доступен, только если в списке выбрано одно из соединений.

 

Удалить все

Вызов меню - Щелчок правой кнопкой

 

Эта команда полностью очистит список соединений.

Параметры соединения

После того, как вы выбрали этот пункт меню, появится окно настройки параметров соединения (рис. 1).

 

parameters-source

Рис.1. Параметры соединения с источником

 

IP (источник)

На данной закладке настраиваются параметры соединения для входящих данных. Именно эти данные будут делится на параллельные потоки и передавать заданным получателям.

 

Типы протоколов

 

TCP - это проверенный и надежный протокол, который на сегодняшний день, наверное, самый широко используемый протокол в сетях IP. Достоинствами этого протокола является то, что он позволяет поддерживать и контролировать соединение между компьютерами. TCP также имеет внутренние средства контроля целостности передачи данных. К относительным недостаткам TCP следует отнести избыточность передаваемых данных и дополнительное время, которое тратится на установление соединения.

 

UDP - это протокол, который не требует установки соединения для передачи данных. Как и TCP, UDP работает как верхний слой IP сетей. Но в отличие от TCP, UDP не помогает при доставке данных и не имеет средств по контролю ошибок. Зато протокол предлагает возможность прямой отправки и приема пакетов данных, что позволяет приложениям самим контролировать целостность данных и повторно посылать данные по необходимости. Одно из применений этого - отправка широковещательных пакетов данных малого размера. При использовании этого протокола программа работает по принципу "отправил и забыл".

 

Соединение

 

Каждое соединение в TCP Splitter может работать как:

 

1.Клиент. Вам необходимо указать IP адрес и порт удаленного компьютера, на котором работает сервер TCP/IP, и к которому вы хотите подсоединиться. IP адрес, который укажите в TCP Splitter во время конфигурации, может быть и доменным именем (типа www.yourserver.com) или именем компьютера в локальной сети. Например, если вы хотите соединиться с компьютером в локальной сети, который имеет имя "Plant1", вы можете просто указать "Plant1" в поле ввода IP адреса, вместо самого IP адреса. Это бывает полезно, когда вы настраиваете TCP Splitter как клиента, и IP адреса в вашей сети выдаются динамически. Поэтому удобнее использовать имя вместо IP адреса;
2.Сервер. В этом режиме вы должны указать IP адрес компьютера, на котором работает программа, а также порт, который будет прослушиваться. Если ваш компьютер имеет несколько сетевых карт или сетевых интерфейсов, тогда TCP Splitter будет отображать список IP адресов для каждого сетевого интерфейса (NIC), установленного на вашем компьютере. Поэтому вы должны выбрать IP адрес того интерфейса, который вы хотите использовать. Для того чтобы TCP Splitter мог работать как сервер необходимо, чтобы имел хотя бы одну сетевую карту, с присвоенным ей IP адресом. В Microsoft Windows, протокол TCP/IP может быть настроен на автоматическое получение IP адреса для компьютера. В этом случае вам необходимо связаться с администратором и попросить присвоить вашему компьютеру статический IP адрес и установить данный IP адрес выбранному сетевому интерфейсу. Также в качестве IP адреса можно указать специальное значение вида 0.0.0.0, которое будет означать, что программы будет прослушивать (listen) все IP адреса, присвоенные этому компьютеру.

 

Имя - название вашего соединения, которое будет отображаться в списке, в главном окне программы.

 

IP адрес и порт - указывается адрес и порт удаленного сервера (в режиме клиента) или локальный IP адрес и порт (в режиме сервера).

 

Таймаут отправки - опция позволяет задать интервал времени, в течение которого данные будут "группироваться" и отправляться одним IP пакетом. Это позволяет ускорить передачу данных, если через COM порт часто поступают мелкие порции данных.

 

Следующие опции эффективны только для протокола TCP/IP в режиме сервера или клиента:

 

Режим keep-alive TCP (режим поддержания связи) - при активации этой опции программа будет периодически, с указанным интервалом, отсылать служебные пакеты. Если в течение указанного таймаута не будет получен ответ от клиента или сервера, то программа автоматически разорвет соединение, поскольку отсутствие ответа будет означать, что связь с сервером или клиентом была потеряна. Если будет выбран "Системный" режим keep-alive, то программа будет использовать системные значения интервала и таймаута, используемые Windows.

 

Режим сервера

Данная группа параметров (рис.2) применима, только если соединение с источником работает в режиме сервера.

 

parameters-server

Рис.2. Дополнительные параметры сервера

 

Макс. клиентов - можно задать лимит одновременно подключенных клиентов к серверу. Это позволяет оптимизировать нагрузку на сервер при большом количестве клиентов. Значение равное нулю означает, что количество подключений не лимитируется.

 

Разрешенные IP адреса - Эта опция активна в режиме сервера и позволяет определить один или несколько адресов, для которых разрешено подсоединяться к серверу. Соединения с IP адреса, который не указан в списке, будут отклонены. Эта опция очень полезна, если вы передаете данные через Интернет соединение или сервер подсоединен к большой корпоративной сети. Вы можете указать несколько разрешенных адресов - один адрес в строке. Если вы оставите поле пустым, то TCP Splitter будет принимать соединения со всех IP адресов.

 

IP (получатель)

На данной закладке (рис. 3) настраиваются параметры соединения с получателями. Подключение к получателям всегда осуществляется в режиме клиента. Если для получателя не указать IP адрес или порт, то данных получатель будет отключен.

 

IP адрес и порт - указывается адрес и порт удаленного сервера.

 

Тип протокола - можно выбрать TCP или UDP. Тип протокола источника и получателя могут не совпадать.

 

Поток данных - вы можете разрешить или запретить передачу данных в одном из направлений, от источника к получателю или наоборот. Если галочка установлена, то передача данных в указанном направлении разрешена.

 

Обратите внимание, что если вы разделяете поток данных, в котором присутствуют пакеты, на которые получатель должен отправить подтверждение, то отправка такого подтверждения от второго или третьего получателя может вызвать рассинхронизацию передачи данных. В этом случае рекомендуется отключать передачу данных от второстепенных получателей к источнику.

 

Источник → Получатель. Отправлять только в последнее активное подключение - вы можете использовать эту опцию если получатель инициирует передачу данных от источника к получателю. Например, получатель отправляет запрос и ожидает ответ. При активации этой опции, все данные, которые программа примет от источника будут отправлены только получателю, который отправил запрос. Через указанный промежуток времени данное условие будет отменено. Данные условие сработает снова при получении очередного запроса от получателя.

 

parameters-destination

Рис.3. Параметры соединения с получателями

 

Дополнительные параметры

На данной закладке (рис. 4) настраиваются дополнительные параметры связи с получателями. Данные параметры будут работать только если получателем будет выступать TCP Splitter, например, в сценарии использования "Обход NAT".

 

Шифровать сетевые данные - при включении данной опции все передаваемые данные будут шифроваться.

 

Дополнительные пакеты поддержания связи - при включении данной опции программа будет функцию keep-alive TCP соединения. Это бывает необходимо, когда стандартные пакеты "keep-alive" не проходят через роутеры или маршрутизаторы.

 

Передавать нули - если данная опция включена, то в качестве специального пакета поддержания связи будет передаваться один байт с кодом равным нулю.

 

parameters-advanced

Рис.4. Дополнительные параметры

 

Как это работает?

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

 

При возникновении проблем с подключением с получателем программа сохраняет во внутреннем буфере до 1 МБ данных для каждого подключения. При возобновлении связи данные из буфера будут отправлены в первую очередь. При переполнении буфера из него будут вытесняться наиболее старые данные.

 

При пропадании связи с источником программа автоматически разрывает соответствующее соединение с получателями. При этом данные из внутреннего буфера безвозвратно теряются.

Меню "Вид"

Иконки

 

Есть четыре способа отображения иконок в TCP Splitter - Большие иконки, Маленькие иконки, Список и Таблица. В табличном режиме дополнительно отображается статус сетевого соединения.

 

Автоматически сортировать иконки

 

Способ размещения иконок, что может помочь сориентироваться.

 

Параметры командной строки

-f "C:\file.ini"

При старте программа импортирует все настройки из указанного INI файла. Будет полностью очищен список существующих соединений. Новые соединения будут добавлены из INI файла.

 

-i "C:\file.ini"

Импортировать настройки одного соединения из указанного INI файла.

 

-d 0

-d "New connection"

Удалить подключение с указанным индексом или именем.

 

Удалить все подключения из списка.

 

-s0

Не показывать сообщения.

 

-s1

Записать сообщения в файл регистрации событий Windows.

 

-s2

Показывать окно с сообщениями (по умолчанию).

 

Примечание: Порядок указания параметров очень важен. Для примера, следующая команда загрузит конфигурацию из INI файла без каких либо сообщений:

 

tcpsplitter -s0 -f "C:\file.ini" 

 

 

FAQ и известные проблемы

Q: Я хочу программно управлять (создавать и удалять) своими соединениями.

A: Вы можете сделать это с помощью командной строки.

 

Q: У меня запущена служба TCP Splitter. Когда я запускаю программу на рабочем столе статистика не отображается. Почему?

A: Вы запускаете вторую копию программы в режиме редактора конфигурации. Она не может получить статистику из службы.

Типовые применения программы

TCP Splitter может быть использован для решения разных задач. Наиболее типичные сценарии рассмотрены ниже.

 

1. Разделение TCP потока на два или три параллельных потока.

 

Разделение TCP потока применяется в системах, в которых необходима параллельная и независимая обработка входящих данных. Такая необходимость может возникнуть при использовании существующей системы, для расширения ее функционала, или при проектировании новых систем, чтобы минимизировать затраты на аппаратные средства.

 

Типовые примеры использования TCP Splitter в этом сценарии:

 

Пример 1: две навигационные системы должны получать показания одного датчика. Без разделения потока данных эта задача решается только установкой второго датчика, что может быть невозможно.

 

Пример 2: показания датчика в автоматизированной системе управления производством необходимо протоколировать, но эта функция не заложена в "родной" системе. В этом случае устанавливает дополнительное ПО и поток разделяется на две части: в "родную" систему и логгер.

 

Пример 3: необходимо временно протоколировать данные, для выявления нештатных ситуаций.

 

Пример 4: система мониторинга производственной линии, которая работает в закрытой локальной сети предприятия. Необходимо "выпустить" часть данных в Интернет, при этом не снижая безопасность всей внутренней сети.

 

Пример 5: необходимо обеспечить устойчивую связь между сегментами сети, датчиками или системами сбора данных, соединение между которыми нестабильно. Например, связь через мобильную сеть в удаленных районах.

 

Выгода от использования TCP Splitter на компьютере увеличивается, если необходимо разделять несколько TCP/IP соединений одновременно от нескольких источников. Для построения отказоустойчивых систем TCP Splitter умеет следить за состоянием соединения, восстанавливать его при обрыве, а также помещать данные в буфер на время, пока соединение отсутствует.

 

2. Разделение UDP потока на два или три параллельных потока.

 

Он аналогичен предыдущему сценарию использования, но при этом вы можете обеспечить конвертацию протокола из UDP в TCP. Например, когда целевая система может принимать данные только по протоколу TCP.

 

3. Обход NAT.

 

В этом сценарии TCP сервер-источник расположен в локальной сети, и подключен к интернету через роутер или файервол. Подключение к этому серверу напрямую запрещено на роутере, или такое соединение нельзя настроить. Если при этом исходящие подключения к интернету разрешены, то тогда TCP Splitter, установленный на компьютере в локальной сети, рядом с сервером-источником, может инициировать подключение с источником и получателем и образовать линию связи.

 

4. Переназначение TCP/IP порта

 

В этом сценарии порт источника не совпадает с портом получателя и достаточно настроить соединение только с одним получателем.

Выбор номера TCP/IP порта

TCP Splitter позволяет выбрать любой номер порта TCP/IP при настройке соединений TCP/IP. Диапазон возможных номеров от 1 до 65535. Однако порты от 1 до 1000 могут использоваться операционной системой и другими служебными утилитами. TCP/IP порты с номерами больше 1000 могут использоваться свободно. Поэтому мы рекомендуем назначать порты более 1000.

 

Следует также учесть, что другие приложения также могут использовать выбранный вами порт. Два приложения одновременно не могут использовать один и тот же порт. Даже если во время настройки порт будет свободным, то это не значит, что позднее другая программа не будет его использовать.

 

Если вы столкнетесь с проблемой использования выбранного вами порта другой программой, то просто смените номер TCP/IP порта.

Настройка программы на работу в режиме службы

ПО TCP Splitter может быть настроено на запуск в режиме сервиса во всех операционных системах, начиная с Windows 2000. Это позволяет устанавливать соединения и создавать виртуальные COM порты автоматически при запуске Windows, еще до логина пользователя в систему. В этом режиме программа работает в фоновом режиме и обычно не видима для пользователя. Для настройки программы на запуск в режиме службы необходимо:

 

1. Запустить TCP Splitter и настроить все необходимые соединения.

2. Выбрать режим запуска "Служба Windows" в главном окне программы.

3. Проверить правильную работу всех соединений.

4. Закрыть программу, кликнув по кнопке "Выход", согласившись с тем, что все активные соединения будут закрыты.

5. При перезагрузке компьютера служба будет запущена автоматически. Также вы можете запустить службу вручную без перезагрузки компьютера: "Панель управления - Администрирование - Службы - TCP Splitter".

6. Проверить, что служба успешно запустилась и работает можно в диспетчере задач. В списке процессов должен быть файл tcpsplitter.exe

 

Для изменения параметров соединений или для добавления новых соединений необходимо:

 

1. Запустить TCP Splitter, используя иконку на рабочем столе или в группе "Старт - Программы".

2. Согласиться с тем, что программа будет запущена в ограниченном режиме, поскольку служба уже выполняется в фоновом режиме.

3. Изменить настройки программы по вашему желанию.

4. Перейти в "Панель управления - Администрирование - Службы" и перезапустить службу TCP Splitter.

 

Для отключения режима службы необходимо:

1. Перейти в "Панель управления - Администрирование - Службы".

2. Остановить службу TCP Splitter.

3. Открыть окно параметров службы TCP Splitter.

4. Изменить тип запуска службы на "Вручную".

Контроль состояния службы

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

 

С:\ProgramData\Tcp Splitter\tcpsplitter.log

 

В этом файле фиксируются все важные события и ошибки.

 

Файл автоматически очищается и его размер ограничен 10 мегабайтами.

Использование программы для передачи данных через Internet

Вы можете настроить TCP Splitter на передачу данных через Интернет. Возможно, что для обеспечения возможности передачи данных потребуется изменить настройки сети вашего компьютера и/или роутера в вашей сети.

 

Большинство компьютеров не подключены к Интернет напрямую. Поэтому другие компьютеры из Интернета не могут напрямую подключиться к вашему компьютеру и передавать данных.

 

Как узнать, подключен ли ваш компьютер напрямую или нет?

 

Если ваш сетевой адрес находится в одном из диапазонов ниже, то это значит, что ваш компьютер находится в локальной приватной сети и подключение происходит через роутер:

 

10.0.0.0 - 10.255.255.255

172.16.0.0 - 172.31.255.255

192.168.0.0 - 192.168.255.255

 

Более подробно: https://en.wikipedia.org/wiki/Private_network

 

Ваш публичный IP адрес в сети Интернет может быть совершенно другим. Вы можете узнать его с помощью Google:

 

https://www.google.com/search?q=my+ip+address

 

Если вы настраиваете соединение в TCP Splitter в режиме клиента, то вам достаточно знать публичный IP адрес другого компьютера в сети Интернет.

 

Если вы настраиваете соединение в TCP Splitter в режиме сервера, то вам потребуется настройка перенаправления портов (Port Forwarding) на вашем роутере. Функция перенаправления портов на роутере позволяет перенаправлять все входящие на указанный публичный IP адрес и порт данные на локальный IP адрес.

 

Например: Ваш адрес в локальной сети 192.168.1.12. Ваш публичный IP адрес 66.249.75.147. Все клиенты будут отсылать данные только на публичный IP адрес. Роутер же будет перенаправлять данные на 192.168.1.12, обеспечивая незаметную связь вашего локального IP адреса и публичного IP адреса.

 

Внимание: Для работы TCP Splitter в режиме сервера необходимо, чтобы компьютер, на котором установлена программа, имел статический локальный IP адрес. Поскольку роутер настраивается на перенаправление данных на строго определенный адрес.

 

Как настроить роутер на перенаправление данных?

 

1. Необходимо зайти в панель управления роутером. Обычно управление осуществляется через веб-браузер. Попробуйте набрать в нем адрес http://192.168.1.1/.

2. В панели управления найдите функцию "Port Forwarding" или "Virtual Server".

3. Добавьте в нем правило перенаправления данных

 

Например:

 Local port: 10232

 Local IP address: 192.168.1.12

 Remote port: 10232

 

4. Сохраните изменения и перезапустите роутер.

 

На следующем сайте вы можете найти информацию как настроить "port forwarding" для большинства моделей роутеров всех производителей: https://www.portforward.com/. Если именно вашей модели нет в списке, то вы можете прочитать инструкции для других моделей и найти похожие.

 

Динамический публичный IP адрес

 

Динамический публичный IP адрес может помешать работе TCP Splitter в режиме сервера. При каждом соединении с Интернетом или после обрыва связи ваш публичный IP адрес может постоянно меняться. В этом случае удаленный компьютер не сможет подключаться по заранее заданному IP адресу. Уточнить тип вашего IP адреса вы можете у вашего интернет-провайдера.

 

Для решения этой проблемы существуют службы dynamic DNS, которые обеспечивают привязку динамического IP адреса к постоянному доменному имени. Такие как:

https://www.noip.com/

https://www.dnsdynamic.org/

https://www.changeip.com/

 

Зарегистрировавшись на сайте, вы получите постоянное доменное имя, а установив специальную утилиту от поставщика услуги на ваш компьютер, вы сможете автоматически обновлять привязку вашего динамического IP адреса к доменному имени.

 

Во многих современных роутерах уже встроена функция поддержки служб dynamic DNS.

 

Firewall

 

Другое обстоятельство, которое может затруднить передачу данных через Интернет это файервол (брандмауэр). Задача файервола защищать от несанкционированной передачи данных. Во всех современных операционных системах имеется встроенный файервол. Также файервол имеется во всех комплексных средствах антивирусной защиты.

 

Встроенный файервол Windows выдает запрос при первой попытке использования TCP Splitter любого TCP порта. Необходимо при этом запросе разрешить соединения по сети для TCP Splitter. Пример такого диалога показан на рис. 1.

 

firewall-ask

Рис.1. Запрос на разрешение доступа

 

Сторонние файерволы могут настраиваться по-другому для разрешения работы программ по сети. Обратитесь к инструкции по настройке вашего файервола и добавьте TCP Splitter в список исключений.