Это минимальные шаги, необходимые для обмена данными между двумя хостами по UDP.
Этот пример иллюстрирует, как можно использовать объекты UDP для связи между двумя выделенными хостами. В этом примере вы знаете имена обоих хостов и портов, которые они используют для связи друг с другом. Имя одного хоста doejohn.dhpc
, с использованием локального порта 8844
, а другой хост doetom.dhpc
, с использованием локального порта 8866
.
Создайте объекты интерфейса - Создайте объект UDP на каждом хосте, ссылаясь на другой как удаленный хост.
На хост- doejohn.dhpc
, создать u1
. Конструктор объекта задает имя локального порта, используемого на компьютере, на котором создается этот объект.
u1 = udpport("LocalPort",8844)
u1 = UDPPort with properties: IPAddressVersion: "IPV4" LocalHost: "0.0.0.0" LocalPort: 8844 NumBytesAvailable: 0 Show all properties, functions
На хост- doetom.dhpc
, создать u2
. Конструктор объекта задает имя локального порта и локального хоста, которые будут использоваться на компьютере, на котором создается этот объект.
u2 = udpport("LocalPort",8866,"LocalHost","doetom.dhpc")
u2 = UDPPort with properties: IPAddressVersion: "IPV4" LocalHost: "172.31.42.41" LocalPort: 8866 NumBytesAvailable: 0 Show all properties, functions
Запись и чтение данных - связь между двумя хостами теперь является вопросом отправки и приема данных. Написание сообщения от doejohn.dhpc
на doetom.dhpc
.
На хост- doejohn.dhpc
, записать данные на удаленный хост через u1
:
write(u1,"Ready for data transfer.","string","doetom.dhpc",8866)
На хост- doetom.dhpc
, считайте данные, поступающие с удаленного хоста через u2
:
read(u2,u2.NumBytesAvailable,"string")
ans = "Ready for data transfer."
Отсоедините и очистите - когда вам больше не нужно u1
на хост- doejohn.dhpc
, вы должны очистить объект.
clear u1
Когда вам больше не нужно u2
очистить объект на узле doetom.dhpc
.
clear u2