Связь UDP между двумя хостами

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

Этот пример иллюстрирует, как можно использовать объекты UDP связаться между двумя специализированными хостами. В этом примере вы знаете имена обоих хостов и портов, которые они используют для связи друг с другом. Один хост имеет имя doejohn.dhpc, с помощью локального порта 8844; и другим хостом является doetom.dhpc, с помощью локального порта 8866. Обратите внимание на то, что каждый хост рассматривает порт другого хоста как RemotePort:

  1. Создайте интерфейсные объекты — Создают объект UDP на каждом хосте, ссылаясь на другой как на удаленный хост.

    На хосте doejohn.dhpc создайте u1. Конструктор Object задает имя удаленного хоста, удаленного порта на том другом хосте и локального порта, чтобы использовать на машине, где этот объект создается:

    u1 = udp('doetom.dhpc', 'RemotePort', 8866, 'LocalPort', 8844)

    На хосте doetom.dhpc создайте u2:

    u2 = udp('doejohn.dhpc', 'RemotePort', 8844, 'LocalPort', 8866)
  2. Соединитесь объекты — Открывают оба объекта UDP, так, чтобы каждый мог связаться с другим хостом.

    На хосте doejohn.dhpc откройте u1:

    fopen(u1)

    На хосте doetom.dhpc откройте u2:

    fopen(u2)
  3. Запишите и считайте данные — Связь между двумя хостами является теперь вопросом отправки и получения данных. Запишите сообщение от doejohn.dhpc до doetom.dhpc.

    На хосте doejohn.dhpc запишите данные к удаленному хосту через u1:

    fprintf(u1, 'Ready for data transfer.')

    На хосте doetom.dhpc считайте данные, входящие из удаленного хоста через u2:

    fscanf(u2)
    ans =
    Ready for data transfer.
  4. Разъединитесь и вымойтесь — Когда вам больше не нужен u1 на хосте doejohn.dhpc, необходимо отключить его и удалить его из памяти и из рабочей области MATLAB®.

    fclose(u1)
    delete(u1)
    clear u1

    Когда вы больше не нуждаетесь в u2, выполняете подобную очистку на хосте doetom.dhpc.

    fclose(u2)
    delete(u2)
    clear u2