3.1.1 Abstract Data Model

This section describes a conceptual model of possible data organization that an implementation maintains to participate in this protocol. The organization is provided to explain how the protocol behaves. This document does not mandate that implementations adhere to this model, as long as their external behavior is consistent with that described in this document.

ChannelId: A unique ID that the server generates and sends in a DVC Create Request PDU (section 2.2.2.1). The ChannelId is valid until the server or client issues a Closing a DVC PDU (as specified in section 2.2.4); afterwards, the ChannelId value can be reused in another DVC Create Request PDU.

Listener: A logical object identified by its name which consists of a string of ANSI encoded characters. The server uses the listener name to initiate channel connection by using a DVC Create Request PDU. The client maintains a list of active listeners and uses that list to send a DVC Create Response PDU (section 2.2.2.2). The client MAY change the list at any time without notifying the server. Changing the list content MUST NOT result in any change in the existing DVC state.

Priority Class: This field identifies how much bandwidth needs to be allocated for a particular class of channels. The bandwidth used by all channels with the same Priority Class MUST have a predetermined allocation, as described in section 2.2.1.1.2. Priority Class of value 0 will use the bandwidth calculated from PriorityCharge0, Priority Class of 1 will use PriorityCharge2, and so on.

Version: The number exchanged between clients in DVC Capabilities Request/Response packets, see section 2.2.1.1. It is used by both sides to determine what features the protocol supports as described in section 3.2.3.1.