C.4 Networking
Prev | C Conformance Statement Sample DICOMRis Interface (Informative) | Next

## C.4 Networking

### C.4.1 Implementation Model

#### C.4.1.1 Application Data Flow

Figure C.4.1-1. DICOM Standard Interface

The DICOMRis DICOMSRV application provides access to Scheduled Procedure information, supports updating of the RIS database as procedures are performed. The various flows in the diagram above are described as follows

DICOMSRV accepts associations for Verification from Verification SCUs and responds automatically with Success status

DICOMSRV accepts Association Requests for Modality Worklist from MWL SCUs and responds to queries from these SCUs. When a query is received DICOMSRV engages in local real-world activity Scheduled Procedure Queries. This results in a set of matching responses that DICOMSRV returns to the MWL SCU.

DICOMSRV accepts Association Requests for Modality Performed Procedure Step from MPPS SCUs and responds to N-CREATE and N-SET Requests from these SCUs. When an N-CREATE or N-SET is received DICOMSRV engages in local real-world activity Update Procedure. This results in updates to the DICOMRis Database per the contents of the received message. DICOMSRV then returns N-SET or N-CREATE status to the MPPS SCU.

#### C.4.1.2 Functional Definition of AEs

##### C.4.1.2.1 Functional Definition of DICOMSRV Application Entity

DICOMSRV is a background process running on a Unix server. A single instance of DICOMSRV is started at System boot but multiple instances may be running at any one time as a result of forking of additional processes. The application may be started/restarted interactively via a utility. In addition, there is a monitoring process that may be configured to restart the application automatically should it crash. Events are logged to application-specific log files with a time stamp. Multiple logging levels are supported. At the lowest logging level the following are logged:

- The AE Title of the remote AE when the Association is created

- The status of each DICOM Service Request

- Any updates to the DICOMRis Database

Higher levels of logging can be configured to cause dumping of the contents of DICOM Service and Association messages..

DICOMSRV will listen for connection requests at the Presentation Address configured for its AE Title. This application is an implementation of a concurrent server; it forks a new process for each connection request it receives. Each forked process exists for the life of a single association and then exits. DICOMSRV will accept Presentation Contexts for the Modality Worklist, Modality Performed Procedure Step and Verification SOP Classes. Validation of DICOM Service Request messages is configurable using command-line parameters and may return Failure status in the event of an invalid Service Request according to the specifications in the standard. Upon receipt of a Verification Request DICOMSRV will respond with a successful Verification response. When a MWL query is received DICOMSRV will query the DICOMRis database for a list of Scheduled Procedure Steps matching the query and will return a pending C-Find response for each match. Before DICOMRis can include patient and order information in response to a Modality Worklist query, patients must be registered and there must be orders for those patients in the DICOMRis database.. Registration and order information is typically interfaced to DICOMRis from a HIS but can also be entered directly into DICOMRis using DICOMRis's registration and order entry applications. Reception of an MPPS N-Create or N-Set Request may result in updates to various tables in the DICOMRis database and may result in changes to the procedure state of the Requested Procedure(s) referenced within the message. If an MPPS message containing non-matching demographic data is received, this will be logged, an exception document generated and an entry added to an exception table in the database.

#### C.4.1.3 Sequencing of Real World Activities

Figure C.4.1-2. Sequencing Constraints

Under normal circumstances the sequencing depicted above applies:

1. The Modality queries for a worklist of Scheduled Procedure Steps

2. DICOMSRV searches its database and returns matches to the query

3. The Modality begins performance of a Procedure Step and sends the MPPS N-CREATE

4. The Modality completes or discontinues the procedure and sends the MPPS N-SET with status of COMPLETE or DISCONTINUED

The workflow above is not the only one possible. For example, in a Trauma or unscheduled flow there may be no worklist query prior to the performance of the procedure and the sending of MPPS messages. The flow would also be altered if the Modality did not support both Modality Worklist and MPPS. The Description and Sequencing of Activities and the SOP Specific Conformance sections below for the respective Real World Activities provide additional detail

### C.4.2 AE Specifications

#### C.4.2.1 DICOMSRV AE Specification

This application provides Standard Conformance to the following DICOM V3.0 SOP Classes:

##### C.4.2.1.1 SOP Classes

Table C.4.2-1. SOP Classes for AE DICOMSRV

SOP Class Name | SOP Class UID | SCU | SCP
--- | --- | --- | ---
Verification | 1.2.840.10008.1.1 | No | Yes
Modality Worklist | 1.2.840.10008.5.1.4.31 | No | Yes
Modality Performed Procedure Step | 1.2.840.10008.3.1.2.3.3 | No | Yes

##### C.4.2.1.2 Association Policies

###### C.4.2.1.2.1 General

The Application Context Name for DICOM 3.0 is the only Application Context proposed.

Table C.4.2-2. DICOM Application Context

Application Context Name | 1.2.840.10008.3.1.1.1

###### C.4.2.1.2.2 Number of Associations

DICOMSRV will support as many simultaneous associations as SCP as are requested by Workflow SCUs up to a configurable maximum. DICOMSRV limits the number of concurrent associations to a given Workflow SCU as described below.

Table C.4.2-3. Number of Associations as an SCP for AE DICOMSRV

Maximum number of simultaneous associations | Configurable value. Maximum of 3 simultaneous associations to a given SCU

###### C.4.2.1.2.3 Asynchronous Nature

Asynchronous communication (multiple outstanding transactions over a single association) is not supported.

###### C.4.2.1.2.4 Implementation Identifying Information

Table C.4.2-4. DICOM Implementation Class and Version for DICOMSRV

Implementation Class UID | xxxxxxx.yyy.etc.ad.inf.usw
Implementation Version Name | DICOMRis_260

##### C.4.2.1.3 Association Initiation Policy

DICOMSRV does not initiate Associations.

##### C.4.2.1.4 Association Acceptance Policy

DICOMSRV will accept associations for the MWL, MPPS and Verification SOP Classes as an SCP. The job runs in the background and forks a new process for each connection request from a Remote AE

###### C.4.2.1.4.1 Activity - Configured AE Requests MWL Query

###### C.4.2.1.4.1.1 Description and Sequencing of Activities

When Modality Worklist SCUs query DICOMSRV the queries run against the Scheduled Procedure Step Worklist (referred to hereafter as the 'SPS Worklist' or 'Worklist') in the DICOMRis database. There is a configurable mapping between the Universal Service ID contained in the HL7 Order messages (see Table C.8.1-4) and one or more Requested Procedures within the DICOMRis database. A Requested Procedure may, in turn, map to 1 or more Scheduled Procedure Steps though the relation is usually 1-to-1. This mapping is also site-configurable. The relation between Accession Number (0008,0050) and Requested Procedure ID (0040,1001) is 1-to-1 within DICOMRis and these attributes have the same value in all MWL responses. Scheduled Procedure Step entries are added and removed from the Worklist as follows:

- Add Scheduled Procedure Step Entries Normal Pathway - As orders are received from the HIS via HL7 or entered using DICOMRis' Ordering and Scheduling application, additions are made to the SPS Worklist in the DICOMRis database per the mapping specified above.

- Add Scheduled Procedure Step Entries Exception Pathway - Users can interactively create additional Scheduled Procedure Step entries for a given Requested Procedure using the Procedure Update application. It may be necessary to create additional entries under certain conditions such as when it is discovered that a procedure must be redone after having previously been marked as completed. This does not apply to canceled procedures

- Remove Scheduled Procedure Step Entries Normal Pathway - An SPS entry is removed from the SPS Worklist under the following circumstances:

- As mentioned previously, DICOMRis supports common RIS function to set the state of the procedure as it progresses from being ordered to being resulted and signed. Setting the procedure state may be initiated interactively via the Procedure Update application or as a result of various events. An entry in the SPS Worklist is removed when the Requested Procedure that is the parent of the SPS is set to a configured status. This configuration is system-wide applying equally to all procedures.

- If configured to change the state of a Requested Procedure on receipt of an MPPS N-CREATE or N-SET referencing the procedure then the change in state may result in removal of SPS entries related to the procedure as described above

- Remove Entries Exception Pathway - When a procedure is canceled all SPS entries related to that procedure are removed from the Worklist.

Remove Entries Maintenance Pathway - SPS entries that are still in the Worklist a configurable time after their scheduled start date/time will be removed by a day-end maintenance job.

In the table below the following applies:

- To cause a given action to occur, MPPS messages must reference the parent Requested Procedure related to the SPS entry and applicable configuration must be in place.

Table C.4.2-5. Scheduled Procedure Step Entry Actions Table

Events | Scheduled Procedure Step Entry Actions
--- | ---
Order received from HIS or entered using DICOMRis application | Add one or more Entries to Worklist
User adds SPS entry interactively | Add Entry to Worklist
MPPS message received that changes procedure state of parent procedure to status configured for removal of child SPS entry from Worklist | Remove Entry from Worklist
Current time exceeds SPS scheduled time by a Worklist configured time interval | Remove Entry from Worklist
Parent procedure canceled | Remove one or more Entries from Worklist
Parent procedure set to a state that causes removal of child SPS entries from Worklist | Remove one or more Entries from Worklist

Figure C.4.2-1. Sequencing Diagram for Activity: Configured AE Requests MWL Query

The figure above is a possible sequence of messages between a Modality Worklist SCU and DICOMSRV.

1. The Modality opens an Association with DICOMSRV for the purpose of querying for a Modality Worklist

2. The Modality sends an MWL C-FIND query to DICOMSRV

3. DICOMSRV queries its database using the attributes from the C-FIND Request and returns 0 to N C-FIND responses depending on matches returned from the database. DICOMSRV checks for a C-FIND Cancel Request after a configured number of responses are sent. If a Cancel is received then no further Pending responses are sent.

4. DICOMSRV sends the final C-FIND response

5. The Modality closes the Association

###### C.4.2.1.4.1.2 Accepted Presentation Contexts

Table C.4.2-6. Acceptable Presentation Contexts for AE DICOMSRV and Real-World Activity 'Configured AE Requests MWL Query'

Presentation Context Table
Abstract Syntax | Transfer Syntax | Role | Extended Negotiation
--- | --- | --- | ---
Name | UID | Name List | UID List
Modality Worklist Information Model - FIND | 1.2.840.10008.5.1.4.31 | Implicit VR Little Endian | 1.2.840.10008.1.2 | SCP | None
Explicit VR Little Endian | 1.2.840.10008.1.2.1

###### C.4.2.1.4.1.2.1 Presentation Context Acceptance Criterion

Depending on configuration, DICOMSRV may or may not accept multiple Presentation Contexts containing the same Abstract Syntax.

###### C.4.2.1.4.1.2.2 Transfer Syntax Selection Policy

Transfer Syntaxes in addition to the default Implicit VR Little Endian may be configured for a given Abstract Syntax. DICOMSRV's preferred Transfer Syntax is Explicit VR Little Endian and this will be selected if offered.

###### C.4.2.1.4.1.3 SOP Specific Conformance for Modality Worklist SOP Class

DICOMSRV does not support matching on any optional matching key attributes.

DICOMSRV supports case-insensitive matching on the following Person Name Value Representation elements:

Patient Name (0010,0010)

DICOMSRV supports optional return key attributes as described in the table below.

Table C.4.2-7. Modality Worklist Optional Return Keys Supported

Description/Module | Tag | Remark
--- | --- | ---
Scheduled Procedure Step
>Scheduled Protocol Code Sequence | (0040,0008) |
>>Code Meaning | (0008,0104) |
>Comments on the Scheduled Procedure Step | (0040,0400) | This attribute, if valued, will contain details of the protocol to be used in carrying out this step. The attribute could contain a full description of the protocol or simply indicate modifications to the protocol designated by the Scheduled Protocol Code Sequence
>Requested Contrast Agent | (0032,1070) |
Requested Procedure
Reason for the Requested Procedure | (0040,1002) |
Requested Procedure Comments | (0040,1400) |
Imaging Service Request
Reason for the Imaging Service Request | (0040,2001) |
Imaging Service Request Comments | (0040,2400) |
Requesting Service | (0032,1033) |
Issuing Date of Imaging Service Request | (0040,2004) |
Issuing Time of Imaging Service Request | (0040,2005) |
Placer Order Number / Imaging Service Request | (0040,2016) |
Filler Order Number / Imaging Service Request | (0040,2017) |
Order entered by | (0040,2008) |
Order Enterer's Location | (0040,2009) |
Visit Status
Patient's Institution Residence | (0038,0400) |
Visit Admission
Referring Physician's | (0008,0090) |
Referring Physician's Address | (0008,0092) |
Referring Physician's Phone Numbers | (0008,0094) |
Admitting Diagnosis Description | (0008,1080) |
Admitting Date | (0038,0020) |
Admitting Time | (0038,0021) |
Patient Identification
Issuer of Patient ID | (0010,0021) |
Patient Demographic
Occupation | (0010,2180) |
Patient's Address | (0010,1040) |
Country of Residence | (0010,2150) |
Patient's Telephone Numbers | (0010,2154) |
Ethnic Group | (0010,2160) |
Patient's Religious Preference | (0010,21F0) |
Patient Comments | (0010,4000) |
Patient Medical
Smoking Status | (0010,21A0) |
Last Menstrual Date | (0010,21D0) |

DICOMSRV returns C-FIND response statuses as specified below.

Table C.4.2-8. MWL C-FIND Response Status Reasons

Service Status | Further Meaning | Error Code | Reasons
--- | --- | --- | ---
Success | Matching is complete | 0000 | The response status code and meaning are logged in the job log file.
Failure | Out of resources | A700 | If the number of matches exceeds a configurable maximum this error code is returned. An error comment describing the error is also returned. The response status code and meaning are logged in the job log file.
Identifier does not match SOP class | A900 | This status is returned if the C-FIND request specifies query or Return keys that are not specified as part of the Modality Worklist Information Model - FIND SOP Class. The response status code and meaning are logged in the job log file.
Unable to process | C001 | This status is returned due to internal errors within DICOMSRV such as a processing failure response on a query of the DICOMRis database. The response status code and meaning are logged in the job log file.
Canceled | Matching terminated due to cancel request | FE00 | This status is returned if a Cancel Request is received from the SCU during the processing of a Modality Worklist request. The response status code and meaning are logged in the job log file.
Pending | Matching is continuing | FF00 | The status is returned with each matching response. A message is logged for each pending response.
Matching is continuing - Current match is supplied and any optional keys were supported in the same matter as required keys | FF01 | The status is returned with each matching response if one or more optional matching or return keys are not supported for existence. A message is logged for each pending response.

###### C.4.2.1.4.2 Activity - Configured AE Makes Procedure Step Request

When a configured remote AE sends a conformant association request including one of the Modality Performed Procedure Step Presentation Contexts in the table below then DICOMSRV will accept the Association.

###### C.4.2.1.4.2.1 Description and Sequencing of Activities

As mentioned above, DICOMSRV is started at system boot time and is thus ready to process MPPS messages at any time thereafter. The sequencing diagram below specifies a common flow of messages related to this activity. Prior to this sequence of messages it is necessary that orders have been received from the HIS interface or created via DICOMRis Ordering and Scheduling application. Attributes from the orders and created procedures, usually queried using MWL, will be included in the MPPS messages the Modality sends to DICOMSRV. Key attributes in the MPPS N-CREATE and N-SET, specified below, are extracted and matched against values in the DICOMRis database. A match allows full update of all applicable DICOMRis database tables.

Figure C.4.2-2. Sequencing Diagram for Activity: Configured AE Makes Procedure Step Request

The figure above is a possible sequence of messages and events for the Configured AE Makes Procedure Step Request activity.

1. The Modality opens an Association to update DICOMSRV using MPPS

2. The Modality sends an N-CREATE Request to indicate that it is performing one or more Requested Procedures

3. The Modality performs all or part of the procedure(s)

4. DICOMSRV stores the MPPS and executes the matching algorithm described in the conformance section below. If a successful match is found, then updates to various tables per the N-CREATE are performed. See Table C.4.2-10 for additional detail. In the matching case, the procedure state of the procedure(s) referenced in the MPPS is updated if so configured

5. The Modality sends an N-SET setting the status of the MPPS to COMPLETED

6. DICOMSRV stores the MPPS. If the N-CREATE for this step matched then updates are performed as specified in step 4

7. The Modality closes the Association

DICOMSRV also supports the 5 IHE Unidentified Patient Use Cases. Cases 1, 2 and 4 are transparent to the MPPS SCU and follow the normal flow. In case 3, the patient upon whom a given procedure must be immediately performed has been registered on the HIS and has a valid Patient ID but has no order specifying the applicable procedure. DICOMSRV recognizes this case when an MPPS N-CREATE is received with a matching Patient ID, zero-length Accession Number (0008,0050) and Requested Procedure ID (0040,1001). If the MPPS SCU is configured for support of IHE Trauma cases, DICOMSRV will order a procedure corresponding to the code contained in the Procedure Code Sequence (0008,1032), if this code is recognized, or will order a default procedure based on configuration. If the default procedure is ordered then a user may modify the procedure using DICOMRis Ordering and Scheduling application.

In case 5, there is no existing registration or order for a patient on whom a procedure must be immediately performed. Values are entered on the Modality identifying the patient and procedure. DICOMSRV recognizes this case when an MPPS N-CREATE is received containing a Patient ID within a configured range. This range will never contain Patient IDs created in the normal flow. If the MPPS SCU is configured for support of IHE Trauma cases, DICOMSRV will register the patient with the Patient ID provided and will order a procedure as described above.

###### C.4.2.1.4.2.2 Accepted Presentation Contexts

Table C.4.2-9. Acceptable Presentation Contexts for AE DICOMSRV and Real-World Activity "Configured AE Makes Procedure Step Request"

Presentation Context Table
Abstract Syntax | Transfer Syntax | Role | Extended Negotiation
--- | --- | --- | ---
Name | UID | Name List | UID List
Modality Performed Procedure Step SOP Class | 1.2.840.10008.3.1.2.3.3 | Implicit VR Little Endian | 1.2.840.10008.1.2.1 | SCP | None
Explicit VR Little Endian | 1.2.840.10008.1.2.1

DICOMSRV's preferred Transfer Syntax is Explicit VR Little Endian and this will be selected if offered.

###### C.4.2.1.4.2.3 SOP Specific Conformance for MPPS SOP Class

The table below lists all Modality Performed Procedure Step attributes, whether they may be created by N-CREATE and updated by N-SET and what parts of the DICOMRis database they are used to update. All MPPS messages and thus their attributes are stored for the configurable Purge Period described below. The 'Database Updates' column considers updates separate from the storage of MPPS messages. If no value is present this indicates that there are is no update to the database associated with the given element.

Table C.4.2-10. Supported N-SET/N-CREATE Attributes for MPPS

Attribute Name | Tag | N-Create | N-Set | Database Updates
--- | --- | --- | --- | ---
SOP Common Module
Specific Character Set | (0008,0005) | Y | N |
Performed Procedure Step Relationship Module
Scheduled Step Attribute Sequence | (0040,0270) | Y | N | Y
>Study Instance UID | (0020,000D) | Y | N | Overwrite existing value if different from received value
>Referenced Study Sequence | (0008,1110) | Y | N |
>>Referenced SOP Class UID | (0008,1150) | Y | N |
>>Referenced SOP Instance UID | (0008,1155) | Y | N |
>Accession Number | (0008,0050) | Y | N |
>Placer Order Number/Imaging Service Request | (0040,2006) | Y | N |
>Filler Order Number/Imaging Service Request | (0040,2007) | Y | N |
>Requested Procedure ID | (0040,1001) | Y | N |
>Requested Procedure Description | (0032,1060) | Y | N |
>Scheduled Procedure Step ID | (0040,0009) | Y | N |
>Scheduled Procedure Step Description | (0040,0007) | Y | N |
>Scheduled Protocol Code Sequence | (0040,0008) | Y | N |
>>Code Value | (0008,0100) | Y | N |
>>Coding Scheme designator | (0008,0102) | Y | N |
>>Code Meaning | (0008,0104) | Y | N |
Patient Name | (0010,0010) | Y | N |
Patient ID | (0010,0020) | Y | N |
Patient's Birth Date | (0010,0030) | Y | N |
Patient's Sex | (0010,0040) | Y | N |
Referenced Patient Sequence | (0008,1120) | Y | N |
>Referenced SOP Class UID | (0008,1150) | Y | N |
>Referenced SOP Instance UID | (0008,1155) | Y | N |
Performed Procedure Step Information
Performed Procedure Step ID | (0040,0253) | Y | N |
Performed Station AE Title | (0040,0241) | Y | N |
Performed Station Name | (0040,0242) | Y | N |
Performed Location | (0040,0243) | Y | N |
Performed Procedure Step Start Date | (0040,0244) | Y | N |
Performed Procedure Step Start Time | (0040,0245) | Y | N |
Performed Procedure Step Status | (0040,0252) | Y | Y |
Performed Procedure Step Description | (0040,0254) | Y | Y |
Performed Procedure Type Description | (0040,0255) | Y | Y |
Procedure Code Sequence | (0008,1032) | Y | Y |
>Code Value | (0008,0100) | Y | Y |
>Coding Scheme Designator | (0008,0102) | Y | Y |
>Code Meaning | (0008,0104) | Y | Y |
Performed Procedure Step End Date | (0040,0250) | Y | Y |
Performed Procedure Step End Time | (0040,0251) | Y | Y |
Comments on the Performed Procedure Step | (0040,0280) | Y | Y |
Image Acquisition Results
Modality | (0008,0060) | Y | N |
Study ID | (0020,0010) | Y | N |
Performed Protocol Code Sequence | (0040,0260) | Y | Y | If valued, stored with current and historical procedure records
>Code Value | (0008,0100) | Y | Y
>Coding Scheme Designator | (0008,0102) | Y | Y
>Code Meaning | (0008,0104) | Y | Y
Performed Series Sequence | (0040,0340) | Y | Y | Y
>Performing Physician's Name | (0008,1050) | Y | Y | Y
>Protocol Name | (0018,1030) | Y | Y | Stored with current and historical tables
>Operator's Name | (0008,1070) | Y | Y | If automatic setting of procedure states is enabled, stored in current and historical procedure tables to indicate who modified the state of the procedure
>Series Instance UID | (0020,000E) | Y | Y |
>Series Description | (0008,103E) | Y | Y |
>Retrieve AE Title | (0008,0054) | Y | Y |
Referenced Image Sequence | (0008,1140) | Y | Y |
>>Referenced SOP Class UID | (0008,1150) | Y | Y |
>>Referenced SOP Instance UID | (0008,1155) | Y | Y |
>Referenced Standalone SOP Instance Sequence | (0040,0220) | Y | Y |
>>Referenced SOP Class UID | (0008,1150) | Y | Y |
>>Referenced SOP Instance UID | (0008,1155) | Y | Y |
Radiation Dose
Anatomic Structure, Space or Region Sequence | (0008,2229) |  |  |
>Code Value | (0008,0100) | Y | Y |
>Coding Scheme Designator | (0008,0102) | Y | Y |
>Code Meaning | (0008,0104) | Y | Y |
Total Time of Fluoroscopy | (0040,0300) | Y | Y | Stored in Procedure Techniques table
Total Number of Exposures | (0040,0301) | Y | Y | Stored in Procedure Techniques table
Distance Source to Detector | (0018,1110) | Y | Y | Stored in Procedure Techniques table
Distance Source to Entrance | (0040,0306) | Y | Y | Stored in Procedure Techniques table
Entrance Dose | (0040,0302) | Y | Y | Stored in Procedure Techniques table
Entrance Dose in mGy | (0040,8302) | Y | Y |
Exposed Area | (0040,0303) | Y | Y | Stored in Procedure Techniques table
Image Area Dose Product | (0018,115E) | Y | Y | Stored in Procedure Techniques table
Comments on Radiation Dose | (0040,0310) | Y | Y |
Billing and Material Management Code
Billing Procedure Step Sequence |  |  |  |
>Code Value | (0008,0100) | Y | Y |
>Coding Scheme Designator | (0008,0102) | Y | Y |
>Code Meaning | (0008,0104) | Y | Y |
Film Consumption Sequence | (0040,0321) | Y | Y |
> Number of Films | (2100,0170) | Y | Y | Updates Supply and Film-Procedure Tables
> Medium Type | (2000,0030) | Y | Y
> Film Size ID | (2010,0050) | Y | Y
Billing Supplies and Devices Sequence | (0040,0384) | Y | Y |
>Billing Item Sequence | (0040,0296) | Y | Y |
>>Code Value | (0008,0100) | Y | Y | Updates Supply table if Coding Scheme Designator for Billing Item Sequence is DICOMRIS_SUPPLY and the Code Value is a value from this Code Set
>>Coding Scheme Designator | (0008,0102) | Y | Y
>>Code Meaning | (0008,0104) | Y | Y
>Quantity Sequence | (0040,0293) | Y | Y
>>Quantity | (0040,0294) | Y | Y
>>Measuring Units Sequence | (0040,0295) | Y | Y
>>>Code Value | (0008,0100) | Y | Y
>>>Coding Scheme Designator | (0008,0102) | Y | Y
>>>Code Meaning | (0008,0104) | Y | Y

The list below details the behavior of DICOMSRV on occurrence of certain MPPS events and with respect to the coercion of attributes and duration of storage of MPPS messages:

- Reception of a New MPPS Instance - The MPPS message is stored in the database. DICOMSRV will then extract the Patient ID (0020,0010) and as many Accession Numbers (0008,0050) as there are items in the Scheduled Step Attribute Sequence (0040,0270) from the N-CREATE and try to match these values against the Patient Medical Record Number and one or more Accession Numbers in the DICOMRis database. If a non-matching N-CREATE is received, it and any following N-SETs will be marked as exceptions. These exceptions can be reconciled using the RisView application. Otherwise, DICOMSRV will:

- Update its database with values contained in the N-CREATE per table above.

- Update the state of each referenced procedure if so configured.

- Update of MPPS to 'DISCONTINUED' or 'COMPLETED' - The N-SET is stored in the database. If the preceding N-CREATE matched then the following is done:

- The attribute values in the N-SET will be used to update the DICOMRis database per table above.

- Update the state of each referenced procedure if so configured.

- Coercion of Attributes - DICOMSRV will coerce attributes as specified in Table C.8.1-3. This coercion may occur when a given step is set to the 'IN PROGRESS' or 'COMPLETED' or 'DISCONTINUED'

- Storage Duration for MPPS Messages - MPPS messages are purged from the DICOMRis database after a configurable period of time has elapsed since the step has been set to a final state or was last updated.

Table C.4.2-11. MPPS N-CREATE/N-SET Response Status Reasons

Service Status | Further Meaning | Error Code | Reasons
--- | --- | --- | ---
Success | Successful completion of the N-SET or N-CREATE Request | 0000 | The response status code and meaning are logged in the job log file.
Failure | Processing Failure | 0110 | Internal error within DICOMSRV. The response status code and meaning are logged in the job log file.
Duplicate SOP Instance | 0111 | This status is returned when the SCU has attempted to N-CREATE a SOP Instance that has already been created. The response status code and meaning are logged in the job log file
No such SOP Instance | 0112 | Status returned when the SCU is trying to SET a SOP instance that has not been created. The response status code and meaning are logged in the job log file
Missing Attribute | 0120 | This status is returned if an attribute required to be sent in the N-CREATE or required to be sent before completion of the Procedure Step has not been sent. The response status code and meaning are logged in the job log file.

###### C.4.2.1.4.3 Activity - Configured AE Requests Verification

###### C.4.2.1.4.3.1 Description and Sequencing of Activities

A remote AE sends an Echo Request to verify that DICOMSRV is awake and listening. DICOMSRV responds with success status as long as the request can be parsed.

###### C.4.2.1.4.3.2 Accepted Presentation Contexts

Table C.4.2-12. Acceptable Presentation Contexts for AE DICOMSRV and Real-World Activity Configured AE Requests Verification

Presentation Context Table
Abstract Syntax | Transfer Syntax | Role | Extended Negotiation
--- | --- | --- | ---
Name | UID | Name List | UID List
Verification SOP Class | 1.2.840.10008.1.1 | Implicit VR Little Endian | 1.2.840.10008.1.2 | SCP | None
Explicit VR Little Endian | 1.2.840.10008.1.2.1

###### C.4.2.1.4.3.3 SOP Specific Conformance

DICOMSRV provides Standard conformance to the DICOM Verification service class.

###### C.4.2.1.4.3.4 Presentation Context Acceptance Criterion

Depending on configuration, DICOMSRV may or may not accept multiple presentation contexts containing the same abstract syntax.

###### C.4.2.1.4.3.5 Transfer Syntax Selection Policy

Transfer Syntaxes in addition to the default Implicit VR Little Endian may be configured for a given Abstract Syntax using DICOM Tool's configuration files. When this is done, the first Transfer Syntax encountered in the configuration file, which matches a Transfer Syntax offered for a given Presentation Context, will be selected as the accepted Transfer Syntax for that Presentation Context.

### C.4.3 Network Interfaces

#### C.4.3.1 Physical Network Interface

The DICOMRis DICOM applications are indifferent to the physical medium over which TCP/IP executes.

#### C.4.3.2 Additional Protocols

DHCP support can be configured using the Configuration application. If DHCP is not configured a static IP address is assigned.

If DNS support exists on the local network, then DNS is used for address resolution. The address of the DNS server is retrieved using DHCP if the DHCP option is enabled. If DNS is not supported then the hostnames and addresses are configured in the local hosts file.

#### C.4.3.3 IPv4 and IPv6 Support

This product supports both IPv4 and IPv6. It does not utilize any of the optional configuration identification or security features of IPv6.

### C.4.4 Configuration

#### C.4.4.1 AE Title/Presentation Address Mapping

The AE Title and port of DICOMSRV is configurable by the user from a GUI-based configuration application. The IP Address is picked by the site and may be changed by a Field Engineer.

##### C.4.4.1.1 Local AE Titles

Table C.4.2-13. AE Title Configuration Table

Application Entity | Default AE Title | Default TCP/IP Port
--- | --- | ---
DICOMSRV | Must be configured | 104

##### C.4.4.1.2 Remote AE Title/Presentation Address Mapping

The AE Titles, host names, port numbers and supported Presentation Contexts of remote applications are configured in file DICOMSRV.cfg. This file is referenced by DICOMTool's software when API calls are made to create Associations to remote AEs

#### C.4.4.2 Parameters

DICOMSRV configuration parameters related to DICOM communications are below. A blank cell under the 'Default Value' heading indicates that there is no default value for the specific configuration attribute.

Table C.4.2-14. Configuration Parameters Table

Parameter | Configurable | Default Value
--- | --- | ---
General Parameters
Time-out waiting for acceptance or rejection Response to an Association Open Request | Yes | 30 Seconds
Time-out waiting for response to TCP/IP connect() request. | Yes | 15 Seconds
Time-out for waiting for data between TCP/IP packets. (Low-level timeout) | Yes | 15 Seconds
Time-out waiting for a response to a DIMSE Request | Yes | 30 Seconds
Time-out waiting for the next DIMSE Request | Yes | 60 Seconds
Debugging Capabilities
Hex Dump DIMSE Messages | Yes | Off
Hex Dump Association Messages | Yes | Off
TCP/IP Settings
TCP/IP Send Buffer | Yes | 65535 Bytes
TCP//IP Receive Buffer | Yes | 65535 Bytes
PacketFilter | Yes | On. This option enables running of tcpdump utility from the command line to capture TCP packet headers/contents
DICOMSRV Parameters
Maximum Number of Simultaneous Associations | Yes | 20
Maximum Number of Associations to a given device | Yes | 3
Maximum PDU size the AE can receive | Yes | 65536 Bytes
Maximum PDU size the AE can send | No | The lower of the value above and the max PDU size specified by the Remote AE in the Association Request
Validation of DICOM Service Messages | Yes | Validate messages and log validation errors. Do not automatically return error for all validation errors
Modality Worklist Parameters
Maximum Number of Matches for an MWL Request | Yes | 100
Time period after Scheduled Date/Time to leave SPS entries in the SPS Worklist | Yes | 2880 min
State of Parent Procedure that causes deletion of child SPS Entries | Yes | PROCEDURE STARTED
Supported Transfer Syntaxes | Yes | Explicit VR Little Endian Implicit VR Little Endian
Modality Performed Procedure Step Parameters
Generate charges based on supplies specified in MPPS transactions | Yes | Off
Purge Period for MPPS transactions in final state | Yes | 30 days
State to automatically set procedures to for a given AE on receipt of matching N-CREATE | Yes |
State to automatically set procedures to for a given AE on receipt of matching N-SET COMPLETED | Yes |
State to automatically set procedures to for a given AE on receipt of matching N-SET DISCONTINUED | Yes |
Flag specifying support for IHE Trauma cases for a given AE | Yes | false
Patient ID Range to be used for Patient Registration for IHE Trauma case | Yes |
Default Procedure Code to be used for orders for IHE Trauma cases | Yes |
Supported Transfer Syntaxes | Yes | Explicit VR Little Endian Implicit VR Little Endian

Prev | Up | Next
C.3 Introduction | Home | C.5 Media Interchange