With the sat-nms software, the device communication protocol handles the low level communication between MNC and device. There are trivial protocols which simply put a newline character at the end of each message and more sophisticated ones dealing with start/end characters, checksums, device addresses and more.
The sat-nms software comes with a bunch of predefined protocol definitions. If none of these protocol definitions matches, the chapter Device communication protocols describes to write your own protocol definition.
The communication protocol used for a certain device (for a certain serial interface, more exactly spoken) is defined with the equipment setup which you can configure a the graphical user interface. The device driver defines a preferred communication protocol. This means, in the device driver you state the communication protocol this driver is designed for. At the equipment setup screen of the software you still are able to choose a different protocol for a device of this type, however, you will be warned by the software. The preferred communication protocol for a device driver is defined with the PROTOCOL statement:

The protocol definition this statement refers to must exist in the protocols subdirectory of the software. On standard installations this is the directory /home/satnms/drivers.
Example
PROTOCOL Miteq-MOD95
This example, taken from NDSatCom-KuBand-Upconverter device driver, defined the Miteq-MOD95 protocol as the preferred one for the driver.
Some communication protocols may be configured in some aspects of their functionality by applying protocol parameters to them. This is done with the PROTOCOLPARAMETER statement:

There may multiple PROTOCOLPARAMETER statements in on device driver file, each defining one aspect of the communication protocol. The key defines the parameter to set, value is the value to be assigned to this parameter. Please refer to the documentation of the protocol you are using (usually given in the comment section of the *.proto file) if there are configurable parameters for this protocol and if you need to set them for your application.
Protocol parameters may be set either in the protocol definition file (thus defining the parameter for all uses of the protocol) or in the device driver. A definition in the device driver overwrites the setting in the protocol file.
ATTENTION: If you have multiple devices in the same device thread (INTERFACE) using different device drivers, the result is unpredictable if the drivers do not make exactly the same protocol parameter settings.
Example
PROTOCOLPARAMETER "post.content.type=application/xml"