Sierra Wireless DART 300 Modem User Manual


 
User’s Guide Protocols and Packet Assembly Features
2110212 Rev 1.0 Page 39
use UDP work well in a local environment but often fail in dramatic ways on a more global
network.
The DART 300 is capable of acting as a client – originating sessions by “dialing” a remote IP and
port, or as a server – opening a session when a packet arrives from a remote client. Most
telemetry applications use a server configuration, allowing the device to answer a poll.
Once a session is open, the modem’s Packet Assembly and Disassembly services are used to send
and receive data. These services are described in Section 6.6 below.
When the session is no longer needed it should be closed as described below in Section 6.2.3. It is
permissible to leave a UDP session open at all times in CDPD, as you are only using the service
when packets are actively being exchanged. If this is done, client sessions will only exchange data
with the dialed client address and port; server sessions can be set up to serve one or more clients in
a single session as detailed below.
6.2.1. UDP Server Features
When acting as a server, the modem can restrict connections to specified “friendly” IP addresses
(Section 5.1 above). Server sessions can be answered automatically or under AT command
control from the local host. The DART 300 also supports a UDP Server Receive Lock. This
allows the modem to serve requests from multiple clients in a single session, by queuing incoming
packets from differing clients until previous requests have been responded to or a timeout expires.
The modem will listen to a specific port (set in +WS212) for client requests. All callers must
send packets to the modem’s IP address (NEI) and this port number. Packets addressed to a
different port will be discarded.
6.2.1.1. Answering UDP Server Sessions
Server sessions are opened when the modem answers a calling client. The modem can be set to
auto-answer (S0=1), the default, or have the host control answering (S0=0). When a packet
arrives to open a UDP session, the modem notifies the host with the Ring Indicator (RI) signal and
RING message, under the flow control described in Section 4.4.2 above. When answered, the
modem sends the CONNECT message and asserts the DCD signal.
When a session is opened, the modem handles packet assembly and disassembly for outgoing and
incoming data respectively. For details on packet assembly and forwarding see Section 6.6 below.
The session belongs to the calling client IP address and port under the rules of the UDP Server
Receive Lock. Host replies will be forwarded to the client that originated the last message
delivered to the host.
6.2.1.2. UDP Server Receive Lock
A server can receive calls from multiple client devices. Note that each call from a specific
computer can appear as different clients because different source ports are used for each session.
The server modem can only save one client address and port for sending any replies; the one that
was extracted from the last datagram received. For this reason, if multiple clients are expected,
the serving DART modem must use receive locking to delay accepting subsequent datagrams until
a response is sent to the source of the prior datagram.
The modem can be set to have sessions belong exclusively to one individual client where packets
from other clients are quietly discarded until the current session is closed; or the modem can use a
single server session to respond to multiple clients. This feature is controlled with register
+WS217.
Details
When register +WS217=0 (the default), the receive lock is disabled. In this case, the modem will
only accept packets from the first calling client until the local session is closed. Packets from