9.3 DICOM Upper Layer Protocol for TCP/IP Data Units Structure
Prev | 9 DICOM Upper Layer Protocol for TCP/IP | Next

## 9.3 DICOM Upper Layer Protocol for TCP/IP Data Units Structure

### 9.3.1 General

The Protocol Data Units (PDUs) are the message formats exchanged between peer entities within a layer. A PDU shall consist of protocol control information and user data. PDUs are constructed by mandatory fixed fields followed by optional variable fields that contain one or more items and/or sub-items.

Items of unrecognized types shall be ignored and skipped. Items shall appear in an increasing order of their item types. Several instances of the same item shall be acceptable or shall not as specified by each item.

The DICOM UL protocol consists of seven Protocol Data Units:

1. A-ASSOCIATE-RQ PDU

2. A-ASSOCIATE-AC PDU

3. A-ASSOCIATE-RJ PDU

4. P-DATA-TF PDU

5. A-RELEASE-RQ PDU

6. A-RELEASE-RP PDU

7. A-ABORT PDU

The encoding of the DICOM UL PDUs is defined as follows (Big Endian byte ordering) :

### Note

The Big Endian byte ordering has been chosen for consistency with the OSI and TCP/IP environment. This pertains to the DICOM UL PDU headers only. The encoding of the PDV message fragments is defined by the Transfer Syntax negotiated at association establishment.

1. Each PDU type shall consist of one or more bytes that when represented, are numbered sequentially, with byte 1 being the lowest byte number.

2. Each byte within the PDU shall consist of eight bits that, when represented, are numbered 7 to 0, where bit 0 is the low order bit.

3. When consecutive bytes are used to represent a string of characters, the lowest byte numbers represent the first character.

4. When consecutive bytes are used to represent a binary number, the lower byte number has the most significant value.

5. The lowest byte number is placed first in the transport service data flow.

6. An overview of the PDUs is shown in Figure 9-1 and Figure 9-2. The detailed structure of each PDU is specified in the following sections.

### Note

A number of parameters defined in the UL Service are not reflected in these PDUs (e.g., service parameters, fixed values, values not used by DICOM Application Entities.)

Figure 9-1. Protocol Data Units Structure and Encoding

Figure 9-2. Protocol Data Units Structure and Encoding

### 9.3.2 A-ASSOCIATE-RQ PDU Structure

An A-ASSOCIATE-RQ PDU shall be made of a sequence of mandatory fields followed by a variable length field. Table 9-11 shows the sequence of the mandatory fields.

The variable field shall consist of one Application Context Item, one or more Presentation Context Items, and one User Information Item. Sub-Items shall exist for the Presentation Context and User Information Items.

Table 9-11. ASSOCIATE-RQ PDU Fields

PDU bytes | Field name | Description of field
--- | --- | ---
1 | PDU-type | 01H
2 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
3-6 | PDU-length | This PDU-length shall be the number of bytes from the first byte of the following field to the last byte of the variable field. It shall be encoded as an unsigned binary number
7-8 | Protocol-version | This two byte field shall use one bit to identify each version of the DICOM UL protocol supported by the calling end-system. This is Version 1 and shall be identified with bit 0 set. A receiver of this PDU implementing only this version of the DICOM UL protocol shall only test that bit 0 is set.
9-10 | Reserved | This reserved field shall be sent with a value 0000H but not tested to this value when received.
11-26 | Called-AE-title | Destination DICOM Application Name. It shall be encoded as 16 characters as defined by the ISO 646:1990-Basic G0 Set with leading and trailing spaces (20H) being non-significant. The value made of 16 spaces (20H) meaning "no Application Name specified" shall not be used. For a complete description of the use of this field, see Section 7.1.1.4.
27-42 | Calling-AE-title | Source DICOM Application Name. It shall be encoded as 16 characters as defined by the ISO 646:1990-Basic G0 Set with leading and trailing spaces (20H) being non-significant. The value made of 16 spaces (20H) meaning "no Application Name specified" shall not be used. For a complete description of the use of this field, see Section 7.1.1.3.
43-74 | Reserved | This reserved field shall be sent with a value 00H for all bytes but not tested to this value when received
75-xxx | Variable items | This variable field shall contain the following items: one Application Context Item, one or more Presentation Context Items and one User Information Item. For a complete description of the use of these items see Section 7.1.1.2, Section 7.1.1.13, and Section 7.1.1.6.

#### 9.3.2.1 Application Context Item Structure

An Application Context Item shall be made of a sequence of mandatory fields followed by a variable length field. Table 9-12 shows the sequence of the mandatory fields.

Table 9-12. Application Context Item Fields

Item bytes | Field name | Description of field
--- | --- | ---
1 | Item-type | 10H
2 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
3-4 | Item-length | This Item-length shall be the number of bytes from the first byte of the following field to the last byte of the Application-context-name field. It shall be encoded as an unsigned binary number.
5-xxx | Application-context-name | A valid Application-context-name shall be encoded as defined in Annex F. For a description of the use of this field see Section 7.1.1.2. Application-context-names are structured as UIDs as defined in PS3.5 (see Annex A for an overview of this concept). DICOM Application-context-names are registered in PS3.7.

#### 9.3.2.2 Presentation Context Item Structure

The Presentation Context Item shall be made of a sequence of mandatory fixed length fields followed by a variable field. Table 9-13 shows the sequence of the mandatory fields.

The variable field shall consist of one Abstract Syntax Sub-Item followed by one or more Transfer Syntax Sub-Items.

Table 9-13. Presentation Context Item Fields

Item bytes | Field name | Description of field
--- | --- | ---
1 | Item-type | 20H
2 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
3-4 | Item-length | This Item-length shall be the number of bytes from the first byte of the following field to the last byte of the last Transfer Syntax Item. It shall be encoded as an unsigned binary number.
5 | Presentation-context-ID | Presentation-context-ID values shall be odd integers between 1 and 255, encoded as an unsigned binary number. For a complete description of the use of this field see Section 7.1.1.13.
6 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
7 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
8 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
9-xxx | Abstract/Transfer Syntax Sub-Items | This variable field shall contain the following sub-items: one Abstract Syntax and one or more Transfer Syntax(es). For a complete description of the use and encoding of these sub-items see Section 9.3.2.2.1 and Section 9.3.2.2.2.

##### 9.3.2.2.1 Abstract Syntax Sub-Item Structure

The Abstract Syntax Sub-Item shall be made of a sequence of mandatory fixed length fields followed by a variable field. Table 9-14 shows the sequence of the mandatory fields.

Table 9-14. Abstract Syntax Sub-Item Fields

Item bytes | Field name | Description of field
--- | --- | ---
1 | Item-type | 30H
2 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
3-4 | Item-length | This Item-length shall be the number of bytes from the first byte of the following field to the last byte of the Abstract-syntax-name field. It shall be encoded as an unsigned binary number.
5-xxx | Abstract-syntax-name | This variable field shall contain the Abstract-syntax-name related to the proposed presentation context. A valid Abstract-syntax-name shall be encoded as defined in Annex F. For a description of the use of this field see Section 7.1.1.13. Abstract-syntax-names are structured as UIDs as defined in PS3.5 (see Annex B for an overview of this concept). DICOM Abstract-syntax-names are registered in PS3.4.

##### 9.3.2.2.2 Transfer Syntax Sub-Item Structure

The Transfer Syntax Sub-Item shall be made of a sequence of mandatory fixed length fields followed by a variable field. Table 9-15 shows the sequence of the mandatory fields.

Table 9-15. Transfer Syntax Sub-Item Fields

Item bytes | Field name | Description of field
--- | --- | ---
1 | Item-type | 40H
2 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
3-4 | Item-length | This Item-length shall be the number of bytes from the first byte of the following field to the last byte of the Transfer-syntax-name field(s). It shall be encoded as an unsigned binary numbers
5-xxx | Transfer-syntax-name(s) | This variable field shall contain the Transfer-syntax-name proposed for this presentation context. A valid Transfer-syntax-name shall be encoded as defined in Annex F. For a description of the use of this field see Section 7.1.1.13. Transfer-syntax-names are structured as UIDs as defined in PS3.5 (see Annex B for an overview of this concept). DICOM Transfer-syntax-names are registered in PS3.5.

#### 9.3.2.3 User Information Item Structure

The User Information Item shall be made of a sequence of mandatory fixed length fields followed by a variable field. Table 9-16 shows the sequence of the mandatory fields.

The variable field shall consist of one or more User-Data Sub-Items.

### Note

The User-Data Sub-Items may be present in any order within the User-Information Item. No significance should be placed on the order of User-Data Sub-Items within the User Information Item. Sending applications should be aware that some older applications might expect Sub-Items to be encoded in ascending order of Item-type within the enclosing Item.

Table 9-16. User Information Item Fields

Item bytes | Field name | Description of field
--- | --- | ---
1 | Item-type | 50H
2 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
3-4 | Item-length | This Item-length shall be the number of bytes from the first byte of the following field to the last byte of the User-data field(s). It shall be encoded as an unsigned binary number.
5-xxx | User-data | This variable field shall contain User-data sub-items as defined by the DICOM Application Entity. The structure and content of these sub-items is defined in Annex D.

### 9.3.3 A-ASSOCIATE-AC PDU Structure

An A-ASSOCIATE-AC PDU shall be made of a sequence of mandatory fields followed by a variable length field. Table 9-17 shows the sequence of the mandatory fields.

The variable field consist of one Application Context Item, one or more Presentation Context Items, and one User Information Item. Sub-Items shall exist for the Presentation Context and User Information Items.

Table 9-17. ASSOCIATE-AC PDU Fields

PDU bytes | Field name | Description of field
--- | --- | ---
1 | PDU-type | 02H
2 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
3-6 | PDU-length | This PDU-length shall be the number of bytes from the first byte of the following field to the last byte of the variable field. It shall be encoded as an unsigned binary number.
7-8 | Protocol-version | This two byte field shall use one bit to identify each version of the DICOM UL protocol supported by the calling end-system. This is Version 1 and shall be identified with bit 0 set. A receiver of this PDU implementing only this version of the DICOM UL protocol shall only test that bit 0 is set.
9-10 | Reserved | This reserved field shall be sent with a value 0000H but not tested to this value when received.
11-26 | Reserved | This reserved field shall be sent with a value identical to the value received in the same field of the A-ASSOCIATE-RQ PDU, but its value shall not be tested when received.
27-42 | Reserved | This reserved field shall be sent with a value identical to the value received in the same field of the A-ASSOCIATE-RQ PDU, but its value shall not be tested when received.
43-74 | Reserved | This reserved field shall be sent with a value identical to the value received in the same field of the A-ASSOCIATE-RQ PDU, but its value shall not be tested when received.
75-xxx | Variable items | This variable field shall contain the following items: one Application Context Item, one or more Presentation Context Item(s) and one User Information Item. For a complete description of these items see Section 7.1.1.2, Section 7.1.1.14, and Section 7.1.1.6.

#### 9.3.3.1 Application Context Item Structure

An Application Context Item shall be made of a sequence of mandatory fields followed by a variable length field. Table 9-12 shows the sequence of mandatory fields.

#### 9.3.3.2 Presentation Context Item Structure

The Presentation Context Item shall be made of a sequence of mandatory fixed length fields followed by a variable field. Table 9-18 shows the sequence of the mandatory fields.

The variable field shall consist of one Transfer Syntax Sub-Item.

Table 9-18. Presentation Context Item Fields

Item bytes | Field name | Description of field
--- | --- | ---
1 | Item-type | 21H
2 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
3-4 | Item-length | This Item-length shall be the number of bytes from the first byte of the following field to the last byte of the Transfer Syntax Sub-Item. It shall be encoded as an unsigned binary number.
5 | Presentation-context-ID | Presentation-context-ID values shall be odd integers between 1 and 255, encoded as an unsigned binary number. For a complete description of the use of this field see Section 7.1.1.13.
6 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
7 | Result/Reason | This Result/Reason field shall contain an integer value encoded as an unsigned binary number. One of the following values shall be used: 0 - acceptance 1 - user-rejection 2 - no-reason (provider rejection) 3 - abstract-syntax-not-supported (provider rejection) 4 - transfer-syntaxes-not-supported (provider rejection)
8 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
9-xxx | Transfer syntax sub-item | This variable field shall contain one Transfer Syntax Sub-Item. When the Result/Reason field has a value other than acceptance (0), this field shall not be significant and its value shall not be tested when received. For a complete description of the use and encoding of this item see Section 9.3.3.2.1.

##### 9.3.3.2.1 Transfer Syntax Sub-Item Structure

The Transfer Syntax Sub-Item shall be made of a sequence of mandatory fixed length fields followed by a variable field. Table 9-19 shows the sequence of the mandatory fields.

Table 9-19. Transfer Syntax Sub-Item Fields

Item bytes | Field name | Description of field
--- | --- | ---
1 | Item-type | 40H
2 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
3-4 | Item-length | This Item-length shall be the number of bytes from the first byte of the following field to the last byte of the Transfer-syntax-name field. It shall be encoded as an unsigned binary number.
5-xxx | Transfer-syntax-name | This variable field shall contain the Transfer-syntax-name proposed for this presentation context. A valid Transfer-syntax-name shall be encoded as defined in Annex F. For a description of the use of this field see Section 7.1.1.14. Transfer-syntax-names are structured as UIDs as defined in PS3.5 (see Annex B for an overview of this concept). DICOM Transfer-syntax-names are registered in PS3.5.

#### 9.3.3.3 User Information Item Structure

The User Information Item shall be made of a sequence of mandatory length fields followed by a variable field. Table 9-20 shows the sequence of the mandatory fields.

The variable field shall consist of one or more User-Data Sub-Items.

### Note

The User-Data Sub-Items may be present in any order within the User-Information Item. No significance should be placed on the order of User-Data Sub-Items within the User Information Item. Sending applications should be aware that some older applications might expect Sub-Items to be encoded in ascending order of Item-type within the enclosing Item.

Table 9-20. User Information Item Fields

Item bytes | Field name | Description of field
--- | --- | ---
1 | Item-type | 50H
2 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
3-4 | Item-length | This Item-length shall be the number of bytes from the first byte of the following field to the last byte of the User-data-information field(s). It shall be encoded as an unsigned binary number.
5-xxx | User-data | This variable field shall contain User-data sub-items as defined by the DICOM Application Entity. The structure and content of these sub-items is defined in Annex D.

### 9.3.4 A-ASSOCIATE-RJ PDU Structure

An A-ASSOCIATE-RJ PDU shall be made of a sequence of mandatory fields. Table 9-21 shows the sequence of the mandatory fields.

Table 9-21. ASSOCIATE-RJ PDU Fields

PDU bytes | Field name | Description of field
--- | --- | ---
1 | PDU-type | 03H
2 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
3-6 | PDU-length | This PDU-length shall be the number of bytes from the first byte of the following field to the last byte of the Reason/Diag. field. In the case of this PDU, it shall have the fixed value of 00000004H encoded as an unsigned binary number.
7 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
8 | Result | This Result field shall contain an integer value encoded as an unsigned binary number. One of the following values shall be used: 1 - rejected-permanent 2 - rejected-transient
9 | Source | This Source field shall contain an integer value encoded as an unsigned binary number. One of the following values shall be used: 1 - DICOM UL service-user 2 - DICOM UL service-provider (ACSE related function) 3 - DICOM UL service-provider (Presentation related function)
10 | Reason/Diag. | This field shall contain an integer value encoded as an unsigned binary number. If the Source field has the value (1) "DICOM UL service-user", it shall take one of the following: 1 - no-reason-given 2 - application-context-name-not-supported 3 - calling-AE-title-not-recognized 4-6 - reserved 7 - called-AE-title-not-recognized 8-10 - reserved If the Source field has the value (2) "DICOM UL service provided (ACSE related function)", it shall take one of the following: 1 - no-reason-given 2 - protocol-version-not-supported If the Source field has the value (3) "DICOM UL service provided (Presentation related function)", it shall take one of the following: 0 - reserved 1 - temporary-congestio 2 - local-limit-exceeded 3-7 - reserved ### Note The reserved fields are used to preserve symmetry with OSI ACSE/Presentation Services and Protocols.

### 9.3.5 P-DATA-TF PDU Structure

A P-DATA-TF PDU shall be made of a sequence of mandatory fixed length fields followed by a variable length field. Table 9-22 shows the sequence of the mandatory fields.

The variable data field shall contain one or more Presentation-Data-Value Items.

Table 9-22. P-DATA-TF PDU Fields

PDU bytes | Field name | Description of field
--- | --- | ---
1 | PDU-type | 04H
2 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
3-6 | PDU-length | This PDU-length shall be the number of bytes from the first byte of the following field to the last byte of the variable field. It shall be encoded as an unsigned binary number.
7-xxx | Presentation-data-value Item(s) | This variable data field shall contain one or more Presentation-data-value Items(s). For a complete description of the use of this field see Section 9.3.5.1

#### 9.3.5.1 Presentation Data Value Item Structure

The Presentation Data Value Item shall be made of a sequence of mandatory fixed length fields followed by one variable length field. Table 9-23 shows the sequence of the fields.

The variable field shall consist of one Presentation-Data-Value.

Table 9-23. Presentation-Data-Value Item Fields

Item bytes | Field name | Description of field
--- | --- | ---
1-4 | Item-length | This Item-length shall be the number of bytes from the first byte of the following field to the last byte of the Presentation-data-value field. It shall be encoded as an unsigned binary number.
5 | Presentation-context-ID | Presentation-context-ID values shall be odd integers between 1 and 255, encoded as an unsigned binary number. For a complete description of the use of this field see Section 7.1.1.13.
6-xxx | Presentation-data-value | This Presentation-data-value field shall contain DICOM message information (command and/or data set) with a message control header. For a complete description of the use of this field see Annex E.

### 9.3.6 A-RELEASE-RQ PDU Structure

An A-RELEASE-RQ PDU shall be made of a sequence of mandatory fields. Table 9-24 shows the sequence of the fields.

Table 9-24. A-RELEASE-RQ PDU Fields

PDU bytes | Field name | Description of field
--- | --- | ---
1 | PDU-type | 05H
2 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
3-6 | PDU-length | This PDU-length shall be the number of bytes from the first byte of the following field to the last byte of the Reserved field. In the case of this PDU, it shall have the fixed value of 00000004H encoded as an unsigned binary number.
7-10 | Reserved | This reserved field shall be sent with a value 00000000H but not tested to this value when received.

### 9.3.7 A-RELEASE-RP PDU Structure

An A-RELEASE-RP PDU shall be made of a sequence of mandatory fields. Table 9-25 shows the sequence of the fields.

Table 9-25. A-RELEASE-RP PDU Fields

PDU bytes | Field name | Description of field
--- | --- | ---
1 | PDU-type | 06H
2 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
3-6 | PDU-length | This PDU-length shall be the number of bytes from the first byte of the following field to the last byte of the Reserved field. In the case of this PDU, it shall have the fixed value of 00000004H encoded as an unsigned binary number.
7-10 | Reserved | This reserved field shall be sent with a value 00000000H but not tested to this value when received.

### 9.3.8 A-ABORT PDU Structure

An A-ABORT PDU shall be made of a sequence of mandatory fields. Table 9-26 shows the sequence of the fields.

The A-ABORT PDU shall support both the A-ABORT Service (user initiated) and the A-P-ABORT Service (provider initiated).

Table 9-26. A-ABORT PDU Fields

PDU bytes | Field name | Description of field
--- | --- | ---
1 | PDU-type | 07H
2 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
3-6 | PDU-length | This PDU-length shall be the number of bytes from the first byte of the following field to the last byte of the Reserved field. In the case of this PDU, it shall have the fixed value of 00000004H encoded as an unsigned binary number.
7 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
8 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
9 | Source | This Source field shall contain an integer value encoded as an unsigned binary number. One of the following values shall be used: 0 - DICOM UL service-user (initiated abort) 1 - reserved 2 - DICOM UL service-provider (initiated abort)
10 | Reason/Diag., | This field shall contain an integer value encoded as an unsigned binary number. If the Source field has the value (2) "DICOM UL service-provider", it shall take one of the following: 0 - reason-not-specified1 - unrecognized-PDU 2 - unexpected-PDU 3 - reserved 4 - unrecognized-PDU parameter 5 - unexpected-PDU parameter 6 - invalid-PDU-parameter value If the Source field has the value (0) "DICOM UL service-user", this reason field shall not be significant. It shall be sent with a value 00H but not tested to this value when received. ### Note The reserved fields are used to preserve symmetry with OSI ACSE/Presentation Services and Protocol.

Prev | Up | Next
9.2 DICOM Upper Layer Protocol for TCP/IP State Machine | Home | 10 Conformance