exponenta event banner

Связь 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