Пользовательский Дейтаграммный Протокол (UDP или UDP/IP) является транспортным протоколом, разделенным на уровни сверху межсетевого протокола (IP). UDP является протоколом без установления соединения. Приложение с помощью UDP готовит пакет и отправляет его в адрес приемника без первой проверки, чтобы видеть, готов ли приемник получить пакет. Если приемный конец не готов получить пакет, пакет потерян.
Если вы испытываете затруднения при соединении с или передаче с сокетом UDP, следуете этим советам поиска и устранения неисправностей.
UDP поддерживается на этих платформах:
Linux®
macOS
Windows® 10
Интерфейс UDP поддерживается на тех же платформах как MATLAB®. Для обновлений списка в настоящее время поддерживаемых платформ смотрите Системные требования.
configureMulticast
функция только поддерживается на Windows и не поддержала Linux или macOS.
Убедитесь, что можно создать объект UDP с udpport
функция.
Несмотря на то, что UDP является связью не сохраняющей состояние, создавая объект UDP с недопустимым локальным хостом, или локальный порт генерирует ошибку. При определении локального порта, который используется в другом месте или порт с совместным использованием порта, отключенным также, генерирует ошибку. Можно сконфигурировать значения свойств во время создания объекта, такие как LocalPort
свойство, если вы будете использовать объект считать данные. Например, создайте udpport
объект сопоставлен с локальным портом 3533
.
u = udpport("LocalPort",3533)
u = UDPPort with properties: IPAddressVersion: "IPV4" LocalHost: "0.0.0.0" LocalPort: 3533 NumBytesAvailable: 0 Show all properties, functions
Если компьютер или хост не будут существовать, вы получите предупреждение. Можно попытаться проверить с помощью ping-запросов компьютер, чтобы видеть, отвечает ли он.
!ping 127.0.0.1
Когда вы соединились, можно связаться с устройством. Если отправка и получение не работают, можно проверять следующее:
Убедитесь адрес назначения и параметры целевого порта для отправки данных с write
и writeline
допустимы или существуют. Попробуйте !ping [destinationAddress]
.
Убедитесь целевой порт и LocalPort
правильны. Целевой порт является портом на другом компьютере, в который отправляются данные. LocalPort
порт на локальном компьютере что udpport
объект связан с.
UDP не является надежным протоколом, и пакеты могут быть пропущены. Вы, возможно, должны попытаться отправить или получить многократно.
Смотрите Запись и Считанные Данные о ASCII По UDP и Запись и Считанные Двоичные данные По UDP для примеров коммуникации по UDP и информации об использовании свойств.