/network/peer - команды управления настройками транспортного протокола
В текущем разделе описываются команды настройки и просмотра транспортных протоколов.
peer - описание/настройки транспортного протокола
Ниже описаны общие команды для настройки и просмотра транспортных протоколов.
declare
Команда используется для создания нового peer-а в системе ECSS-10.
Путь команды:
/network/peer/declare
Синтаксис:
declare <NAME> <PROTOCOL> <PROTOCOL_ARGS> <MODE> [<NODE_PARAMS_1> [ <NODE_PARAMS_2> [...]]]
Параметры:
<NAME> - имя peer-а, уникальное на уровне системы;
<PROTOCOL> - sctp | udp | tcp;
<PROTOCOL_ARGS> - для sctp протокола: <IN_STREAMS> <OUT_STREAMS>; для остальных протоколов параметры отсутствуют;
<IN_STREAMS> :: 1..65535 - желаемое количество входящих SCTP потоков;
<OUT_STREAMS> :: 1..65535 - желаемое количество исходящих SCTP потоков;
<MODE> - client | server. server - в этом случае на уровне системы подымается listen интерфейс, и мы ожидаем что сторонние системы будут подключаться к нам; client - в этом случае мы подключаемся к удаленной стороне;
<NODE_PARAMS_N> :: <NODE_N> <IP_1>[, <IP_2> [...]] <PORT>;
<NODE_N> - имя ноды, к которой привязан IPs/Port. Для режима mode = client так же возможно значение any;
<IP_N> - в случае mode = server IP адрес и порт на котором подымает listen интерфейс (для mode = server); в случае mode = client
IP адрес или имя хоста и порт, к которому в рамках данного peer-а будет транспорт с указанной ноды
Пример:
support@[mycelium1@ecss1]:/$ /network/peer/declare smg_224 sctp 10 10 server core1@ecss1 192.168.23.100 2909 core1@ecss2 192.168.23.101 2909 Peer smg_224 successfully created. support@[mycelium1@ecss1]:/$ /network/peer/declare smg_224 sctp 10 10 server core1@ecss1 192.168.23.100 2909 core1@ecss2 192.168.23.101 2909 Error: peer smg_224 already declared.
remove
Команда используется для удаление ранее созданного peer-а из системы ECSS-10.
Путь команды:
/network/peer/remove
Синтаксис:
remove <NAME>
Параметры:
<NAME> - имя peer-а
Пример:
support@[mycelium1@ecss1]:/$ /network/peer/remove smg_224 Peer smg_224 successfully removed. support@[mycelium1@ecss1]:/$ /network/peer/remove smg_224 Error: peer smg_224 used in applications: smg_224_m2ua, smg_224_diameter. Change applications parameters before remove current peer. support@[mycelium1@ecss1]:/$ /network/peer/remove smg_224 Error: peer smg_224 not exists.
info
Команда используется для просмотра информации о ранее созданном peer-е (всех peer-ов) в системе ECSS-10.
Путь команды:
/network/peer/info
Синтаксис:
info [--extended] [<NAME>]
Параметры:
<NAME> - имя peer-а;
--extended - показать расширенную информацию по peer-у (включая расширенные настройки).
Пример:
support@[mycelium1@ecss1]:/$ /network/peer/info --extended smg_224 ┌────────┬──────────┬─┬───────────┬───────────────────┬───────────────────────────┬───────────────────┐ │ Name │ Protocol │M│ Node │ IP:Port │ Description │ Options │ ├────────┼──────────┼─┼───────────┼───────────────────┼───────────────────────────┼───────────────────┤ │smg_224 │sctp │S│core1@ecss1│192.168.23.100:2909│Peer to SMG 192.168.23.224 │ dscp = 0 │ │ │ │ │core1@ecss2│192.168.23.101:2909│ │ dontroute = false │ │ │ │ │ │ │ │ instreams = 10 │ │ │ │ │ │ │ │ outstreams = 10 │ └────────┴──────────┴─┴───────────┴───────────────────┴───────────────────────────┴───────────────────┘ Total: 1 Legend: M - mode of peer: S - server; C - client support@[mycelium1@ecss1]:/$ /network/peer/info smg_225 ┌────────┬──────────┬─┬───────────┬───────────────────┬───────────────────────────┐ │ Name │ Protocol │M│ Node │ IP:Port │ Description │ ├────────┼──────────┼─┼───────────┼───────────────────┼───────────────────────────┤ └────────┴──────────┴─┴───────────┴───────────────────┴───────────────────────────┘ Total: 0 support@[mycelium1@ecss1]:/$ /network/peer/info ┌──────────┬──────────┬─┬───────────┬───────────────────┬────────────────────────────────────┐ │ Name │ Protocol │M│ Node │ IP:Port │ Description │ ├──────────┼──────────┼─┼───────────┼───────────────────┼────────────────────────────────────┤ │smg_224 │sctp │S│core1@ecss1│192.168.23.100:2909│Peer to SMG 192.168.23.224 │ │ │ │ │core1@ecss2│192.168.23.101:2909│ │ │smg_115_1 │sctp │S│core1@ecss1│192.168.23.100:2909│Peer to SMG 192.168.23.115 for SCTP │ │ │ │ │core1@ecss2│192.168.23.101:2909│protocol. │ │smg_115_2 │tcp │C│core1@ecss1│192.168.23.115:3868│Peer to SMG 192.168.23.115 for TCP │ │ │ │ │ │ │(DIAMETER) protocol. │ │ │ │ │core1@ecss2│192.168.23.116:3868│ │ └──────────┴──────────┴─┴───────────┴───────────────────┴────────────────────────────────────┘ Total: 3 Legend: M - mode of peer: S - server; C - clien
set
Команда используется для изменения свойств для ранее созданного peer-а системы ECSS-10.
Путь команды:
/network/peer/set
Синтаксис:
set <NAME> <KEY> <VALUE>
Параметры:
<NAME> - имя peer-а;
<KEY> :: proto | mode | node-ip | description | max_down | <PROTOCOL_SPECIFIC_KEY>:
proto :: sctp | udp | tcp - тип протокола;
mode :: client | server - режим работы;
node-ip :: * | <NODE_N> <IP_1>[, <IP_2> [...]] <PORT> - новый список IP-адресов для определенной ноды и порт;
max_down :: - время в секундах после закрытия сокета. По истечении этого времени соединение восстанавливается;;
description - описание данного peer-а;
<NODE> - имя ноды;
<PROTOCOL_SPECIFIC_KEY> - специфичные настройка для определенного протокола.
Для протокола STCP:
instreams :: 1..65535 - желаемое количество входящих потоков SCTP;
out stream :: 1..65535 - желаемое количество исходящих потоков SCTP;
sctp_autoclose :: - Определяет время в секундах, после которого незанятая ассоциация автоматически закрывается. 0 означает, что ассоциация никогда не закрывается автоматически;
sctp_disable_fragments :: - Выключение фрагментации SCTP пакетов.;
sctp_i_want_mapped_v4_addr :: Включает | отключает автоматическое сопоставление адресов IPv4 с адресами IPv6 (если семейство адресов сокетов AF_INET6);
sctp_maxseg :: Определяет максимальный размер фрагмента, если используется фрагментация сообщения. Если 0, размер порции ограничен только MTU;
sctp_nodelay :: Включает / выключает алгоритм объединения небольших пакетов в более крупные.;
sctp_rtoinfo :: Определяет параметры времени ожидания повторной передачи в миллисекундах:
min - Минимальный таймаут (>= 0);
max - Максимальный таймаут (>= 0);
sctp_peer_addr_params ::Определяет различные параметры адреса для ассоциации;
hbinterval - интервал Heartbeat сообщений в миллисекундах;
pathmaxrxt - Максимальное количество повторных передач до того, как этот адрес будет считаться недоступным;
pathmtu - Параметр MTU, если автоматическое обнаружение отключено;
sackdelay - Задержка , в миллисекундах, для SAC сообщений;
Флаги:
hb_enable - включить Heartbeat;
hb_disable - выключить Heartbeat;
hb_demand - Инициировать Heartbeat немедленно;
pmtud_enable - Включает автоматическое обнаружение MTU размера;
pmtud_disable - Выключает автоматическое обнаружение MTU размер;
sackdelay_enable - Включить SAC задержку;
sackdelay_disable - Выключить SAC задержку;
Для протоколов SCTP/UDP/TCP:
broadcast :: Включает / отключает разрешение на отправку широковещательных сообщений;
buffer :: Размер буфера пользовательского уровня, используемого драйвером;
dontroute ::Включает / отключает обход маршрутизации для исходящих сообщений;
high_msgq_watermark :: Размер очереди сообщений сокета. По умолчанию до 8 кБ;
keepalive - Включает / отключает периодическую передачу по подключенному разъему, когда никакие другие данные не передаются. По умолчанию false;
low_msgq_watermark :: Значение, при котором статус очереди сообщений устанавливается как активный. По умолчанию 4 кБ;
linger - Определяет время ожидания в секундах для сброса неотправленных данных, когда сокет закрыт;
nodelay - Небольшие объемы данных отправляются немедленно;
packet_size - Устанавливает максимально допустимую длину тела пакета;
priority - Устанавливает приоритет на платформах, где реализован данный функционал;
read_packets - Устанавливает максимальное количество пакетов UDP для чтения без вмешательства со стороны сокета, когда данные доступны. По умолчанию 5;
recbuf - Минимальный размер приемного буфера для использования в сокете;
reuseaddr - Разрешает или запрещает локальное повторное использование номеров портов. По умолчанию false;
sndbuf - Минимальный размер буфера отправки, используемый для сокета;
send_timeout - Указывает самое длительное время ожидания операции отправки, которая будет принята базовым стеком TCP. По умолчанию до бесконечности;
send_timeout_close - Используется вместе с send_timeout, чтобы указать, должен ли сокет автоматически закрываться, когда операция send возвращает {error, timeout}. По умолчанию false;
show_econnreset - Если для этой опции задано значение false, которое является значением по умолчанию, RST, полученный от однорангового узла TCP, рассматривается как нормальное закрытие;
tos - Устанавливает параметры IP-уровня IP_TOS на платформах, где это реализовано. Поведение и допустимый диапазон варьируются в зависимости от системы.;
tclass - Устанавливает параметры IP-уровня IPV6_TCLASS на платформах, где это реализовано. Поведение и допустимый диапазон варьируются в зависимости от системы.;
ttl - Время жить пакета;
recvtos - Если установлено значение true, активирует возврат полученного значения TOS на платформах, которые реализуют опцию протокола IPPROTO_IP IP_RECVTOS для сокета;
recvttl - Если установлено значение true, активирует возврат полученного значения TTL на платформах, которые реализуют опцию протокола IPPROTO_IP IP_RECVTTL для сокета;
recvtclass - Если задано значение true, активирует возврат полученного значения TCLASS на платформах, реализующих опцию протокола IPPROTO_IPV6 IPV6_RECVTCLASS или IPV6_2292RECVTCLASS для сокета;
<VALUE> - новое значение свойства
Пример:
support@[mycelium1@ecss1]:/$ /network/peer/set smg_224 node-ip core1@ecss3 192.168.23.102 192.168.23.103 2909 Property node-ip for peer smg_224 successfully changed. support@[mycelium1@ecss1]:/$ /network/peer/set smg_224 mode client Error: peer smg_224 not exists.
clean
Команда используется для удаления/скидывания на дефолт свойств для ранее созданного peer-а системы ECSS-10.
Путь команды:
/network/peer/clean
Синтаксис:
clean <NAME> <KEY>
Параметры:
<NAME> - имя peer-а;
<KEY> :: proto | mode | node-ip <NODE> | description | max_down | <PROTOCOL_SPECIFIC_KEY>;
<NODE> - имя ноды;
<PROTOCOL_SPECIFIC_KEY> - специфичные настройка для определенного протокола. На текущей момент доступны значения: buffer | description | dontroute | heartbeat_interval | high_msgq_watermark | instreams | linger | low_msgq_watermark | mode | node-ip | outstreams | priority | proto | recbuf | recvtclass | recvtos | recvttl | reuseaddr | sctp | sctp_disable_fragments | sctp_i_want_mapped_v4_addr | sctp_maxseg | sctp_nodelay | sndbuf | tclass | tos | ttl
Пример:
support@[mycelium1@ecss1]:/$ /network/peer/clean smg_224 node-ip core1@ecss3 Property node-ip for peer smg_224 successfully cleaned. support@[mycelium1@ecss1]:/$ /network/peer/clean smg_224 mode Error: peer smg_224 not exists.