このセクションでは、QOS 構造の ProviderSpecific フィールドに含まれる ATM のプロトコル固有のサービス品質 (QOS) 構造について説明します。 この ATM 固有の QOS 構造の使用は、Windows ソケット 2 クライアントでは省略可能であり、汎用 FLOWSPEC 構造体を適切な Q.2931 情報要素にマップするには、ATM サービス プロバイダーが必要であることに注意してください。 ただし、汎用 FLOWSPEC 構造と ATM 固有の QOS 構造の両方を指定する場合は、ATM 固有の QOS 構造体で指定された値が競合する必要があります。 QoS プロビジョニングと FLOWSPEC 構造の詳細については、Windows ソケット 2 API 仕様セクション 2.7 参照してください。
ATM のプロトコル固有の QOS 構造体は、次のテキストで定義されている Q.2931 情報要素 (IE) 構造体を連結したものです。 アプリケーションで UNI 3.x で義務付けられている IE が省略されている場合、サービス プロバイダーは適切な既定値を挿入し、該当する場合は、FLOWSPEC 構造体の情報を考慮する必要があります。
繰り返される IEs の処理は、IE 自体に依存します。 IE が繰り返され、ATM フォーラム UNI 仕様に従って繰り返し許可されている場合、プロバイダーはそれを適切に処理する必要があります。 この場合、リスト内の順序が優先順序を決定し、リストの前に表示された要素がより優先されます。 IE が繰り返され、ATM フォーラム UNI 仕様に従って許可されていない場合、プロバイダーはクライアントからの要求を失敗させるか (優先オプション)、または検出されたその種類の最後の IE を使用する可能性があります。
個々の IE 構造体は、次のように書式設定され、IEType フィールドによって識別されます。
typedef struct {
Q2931_IE_TYPE IEType;
ULONG IELength;
UCHAR IE[1];
} Q2931_IE;
IEType フィールドの有効な値は、次のように定義されます。
typedef enum {
IE_AALParameters,
IE_TrafficDescriptor,
IE_BroadbandBearerCapability,
IE_BHLI,
IE_BLLI,
IE_CalledPartyNumber,
IE_CalledPartySubaddress,
IE_CallingPartyNumber,
IE_CallingPartySubaddress,
IE_Cause,
IE_QOSClass,
IE_TransitNetworkSelection,
} Q2931_IE_TYPE;
IE フィールドは特定の IE 構造体によって重ねられ、IELength フィールドは、IEType フィールドや IELength フィールド 含む IE 構造体の合計長 (バイト単位) です。 これらの IE 構造体の各要素のセマンティクスと法的な値は、ATM UNI 3.x 仕様に従います。 SAP_FIELD_ABSENTは、ATM UNI 3.x 仕様に従って、特定の IE 構造に対して省略可能な要素に使用できます。