Change proposal: Allow per-instance configuration of DcmSCU connection timeout

All other questions regarding DCMTK

Moderator: Moderator Team

Post Reply
Message
Author
jogerh
Posts: 28
Joined: Mon, 2022-02-28, 08:55

Change proposal: Allow per-instance configuration of DcmSCU connection timeout

#1 Post by jogerh » Thu, 2022-06-23, 11:55

Hi OFFIS team,

I just created https://github.com/DCMTK/dcmtk/pull/61. This change makes it possible to configure the DcmSCU TCP connection timeout per instance, instead of using the global dcmConnectionTimeout parameter.

In a multi-service executable, that for example supports QR, Worklist, and Storage, storage may be executed in parallel with Worklist and QR. This is a typical pattern on some DICOM modalities, where the user can do QR or Worklist queries while images are being sent in the background. A global TCP connection timeout does not work well in this scenario, because two different services may modify the global connection timeout simultaneously.

It is then beneficial to be able to configure different TCP connect timeouts for each individual service. A typical example could be a multi-site institution where the storage server is far away and requires a long TCP connection timeout, whereas the Worklist server could be on site and require a short TCP connection timeout.

This becomes particularly important for mobile devices, where the device may have access to a storage server, temporarily not have access to the worklist server. We would then like to have a short worklist timeout to quickly fall back to an offline worklist.

A side effect of the change is that once an DcmSCU is created, changes to the global dcmConnectionTimeout parameter will no impact the DcmSCU.

Please have a look, and let me know if this change could be relevant, and if you have other design suggestions to solve this problem.

Post Reply

Who is online

Users browsing this forum: Google [Bot], jogerh and 1 guest