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.)

Protocol Data Units Structure and Encoding

Figure 9-1. Protocol Data Units Structure and Encoding


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.