Receive UDP packets from network
UDPReceiver object receives UDP packets
from the network.
To receive UDP packets from the network:
Define and set up your UDP receiver. See Construction.
step to receive the UDP packets
according to the properties of
step is specific to each object in the
Starting in R2016b, instead of using the
H = dsp.UDPReceiver returns
a UDP receiver System object,
H, that receives
UDP packets from a specified port.
H = dsp.UDPReceiver(' returns a window object,
each property set to the specified value.
Local port on which to receive data
Specify the port on which to receive data. The default is
Address from which data was sent
Specify the remote IP address from which to receive data. The
Maximum size of internal buffer
Specify the size of the buffer that receives UDP packets, in
bytes. The default is
Maximum size of output message
Specify the size of the output message. If received packets
exceed the specified value, their contents are truncated. The default
Data type of the message
Specify the data type of the message as |
|clone||Create UDP receiver object with same property values|
|getNumInputs||Number of expected inputs to step method|
|getNumOutputs||Number of outputs of step method|
|isLocked||Locked status for input attributes and nontunable properties|
|release||Allow property value and input characteristics changes|
|step||Receive UDP packet|
Note: This example runs only in R2016b or later. If you are using an earlier release, replace each call to the function with the equivalent
step syntax. For
dsp.UDPReceiver System object™, myObject() becomes step(myObject). For all other objects, myObject(x) becomes step(myObject,x).
Send some UDP packets, and calculate the number of successfully transmitted bytes:
hudpr = dsp.UDPReceiver('LocalIPPort',31000); hudps = dsp.UDPSender('RemoteIPPort',31000); % To prevent the loss of packets, call the |setup| method % on the object before the first call to the |step| method. setup(hudpr); bytesSent = 0; bytesReceived = 0; dataLength = 128; for k = 1:20 dataSent = uint8(255*rand(1,dataLength)); bytesSent = bytesSent + dataLength; hudps(dataSent); dataReceived = hudpr(); bytesReceived = bytesReceived + length(dataReceived); end release(hudps); release(hudpr); fprintf('Bytes sent: %d\n', bytesSent); fprintf('Bytes received: %d\n', bytesReceived);
Bytes sent: 2560 Bytes received: 2560
This object implements the algorithm, inputs, and outputs described on the UDP Receive block reference page. The object properties correspond to the block parameters, except:
The Output variable-size signal parameter is not included in the System object.
The Sample time parameter is not included in the System object.