Поиск и устранение проблем Интерфейс сервера TCP/IP

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

Проблема

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

Возможные решения

Поддерживаемые платформы

TCP/IP поддерживается на этих платформах:

  • Linux®

  • macOS

  • Windows® 10

Интерфейс сервера TCP/IP поддерживается на тех же платформах как MATLAB®. Для обновлений списка в настоящее время поддерживаемых платформ смотрите Системные требования.

Настройка и связь

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

t = tcpserver("172.28.200.145",4000);
  1. Проверяйте, что IP-адрес, который вы задаете, доступен на вашей машине. Чтобы видеть допустимые IP-адреса для вашей машины, запустите следующую команду в MATLAB на Windows.

    !ipconfig
  2. Если вы задаете имя хоста вместо IP-адреса хоста, можно также проверить, что это - допустимое имя хоста при помощи resolvehost. Если выход пуст, заданное имя хоста недопустимо.

    resolvehost("hostname","address")
    ans =
    
        '172.28.200.145'
    
    
  3. Убедитесь, что вы не задаете порт, который уже используется. Кроме того, можно только создать один серверный объект для данного адреса и комбинации портов.

  4. Убедитесь, что ваш сетевой адаптер включен и соединен.

Коммуникация

  1. Прежде, чем читать из или записать в серверный объект, проверяйте Connected свойство убедиться, что клиент соединяется с ним. Если клиент успешно соединился, значением этого свойства является 1 TRUE).

    t.Connected

    ClientAddress и ClientPort свойства также предоставляют информацию о клиенте, который соединяется с серверный объектом. Значение ClientAddress должен совпадать со значением ServerAddress.

  2. Убедитесь правильный тип данных, такой как int16uint16, или double используется с read и write. Используйте совпадающий тип данных в качестве клиента. При чтении и записывании данные типы кроме uint8 или int8, убедитесь ByteOrder правильно.

Смотрите также

Похожие темы