protocol

See Predefined Protocol Types

Global Context Commands

protocol <name-or-type> <base-type-name> … end_protocol
protocol <name-or-type> <base-type-name>
...
end_protocol
Comm and Comm Type Scope Commands
add protocol <name-or-type> <base-type-name> … end_protocol
edit protocol <name> … end_protocol
delete protocol <name> end_protocol
add protocol <name-or-type> <base-type-name>
...
end_protocol

edit protocol <name>
...
end_protocol

delete protocol <name> end_protocol

Overview

A (comm) protocol is an abstract representation of a particular comm capability. It can provide or restrict functionality from the norm, and may alter many of the layer processes on the comm with which it is associated. Any activity that is defined within the logic of the comm model OSI 7-layer implementations may be modified to the extent of the protocol API. As such, every layer in all existing comm models in AFSIM query all attached protocols in the receive/send protocol stack during normal comm operation, giving each protocol an opportunity to modify the execution of message processing.

At a more general level, this allows capabilities to be defined external to the comm object, and added or removed as seen fit by the user. Any number of protocol types may be defined, but only one of each type can be used. Assuming that each protocol is compatible (dependent on the implementation), they can all function to the degree that they wish to cooperate (i.e. multiple transport layer protocols can’t all control how a message is split into packets; one of them has to be primary).

Again, note that each comm should only have one of each type. In the current version of AFSIM, no protocols are used by default.