file transmission speed

All other questions regarding DCMTK

Moderator: Moderator Team

Post Reply
Message
Author
7554753
Posts: 11
Joined: Tue, 2008-07-15, 05:38

file transmission speed

#1 Post by 7554753 »

i have a question. While i am using the storescp to receive the .dcm files in the server. The transfer speed is much lower than i am directly copying the files to the server. How can i fully use the network bandwidth, or how can i transfer the file as much faster as i am directly copying the file?
Last edited by 7554753 on Thu, 2011-02-03, 22:55, edited 2 times in total.

7554753
Posts: 11
Joined: Tue, 2008-07-15, 05:38

#2 Post by 7554753 »

i mean use dicomSender tools to send hunders of files at one time.
Does much of the time is wasted at connecting and disconnecting? And how can i solve this problem in the storescp source code?
Last edited by 7554753 on Thu, 2011-02-03, 22:55, edited 2 times in total.

Marco Eichelberg
OFFIS DICOM Team
OFFIS DICOM Team
Posts: 1459
Joined: Tue, 2004-11-02, 17:22
Location: Oldenburg, Germany
Contact:

#3 Post by Marco Eichelberg »

The answer to your question depends very much on how you are using storescp, and on the sending tool (storescu). Make sure that you
  • run storescp in --bit-preserving mode
  • use the latest snapshot and not DCMTK 3.5.4 release if you are using storescu as a sender
  • Send all images using a single call to storescu, not a separate call for each image, which would cause a separate network connection to be negotiated each time
There is still one bottleneck in the DICOM network protocol, that is, the C-STORE-RSP messages that need to be sent by storescp after each incoming image. A further speed-up would be possible if the so-called asynchronous window negotiation would be supported both by the sender and by the user - this permits the sender to start sending the second image befor the acknowledge for the first image has been received and processed and thus de-couples both directions of transmission. This, however, requires non-trivial changes in the implementation of both sender and receiver.

7554753
Posts: 11
Joined: Tue, 2008-07-15, 05:38

#4 Post by 7554753 »

Then how to changes the receiver or storescp, do you mean i can only process received images one by one?
I just want to save the received images' information into database. if i can only process one image eacn time, that means i'll waste much in connecting database.
Last edited by 7554753 on Thu, 2011-02-03, 22:55, edited 2 times in total.

Marco Eichelberg
OFFIS DICOM Team
OFFIS DICOM Team
Posts: 1459
Joined: Tue, 2004-11-02, 17:22
Location: Oldenburg, Germany
Contact:

#5 Post by Marco Eichelberg »

The policy of how many images are transmitted in a single network connection is defined by the client (SCU), not by the server. The server receives incoming objects and needs to acknowledge each receipt with a C-STORE-RSP message. Other than that, the local behaviour of the receiver is not mandated by the standard, i.e. is largely implementation specific.

7554753
Posts: 11
Joined: Tue, 2008-07-15, 05:38

#6 Post by 7554753 »

Thanks for your answer.
If i transmit 100 images in a single network connection, the storescp will generate 1 C-STORE-RQ message or 100 C-STORE-RQ messages?
Last edited by 7554753 on Thu, 2011-02-03, 22:55, edited 2 times in total.

Michael Onken
DCMTK Developer
Posts: 2054
Joined: Fri, 2004-11-05, 13:47
Location: Oldenburg, Germany
Contact:

#7 Post by Michael Onken »

Hi,

for transmitting 100 images, exactly 100 C-STORE-RQ messages are being transmitted in DICOM, in DCMTK's case from _storescu_ to storescp which again responds with 100 C-STORE-RSP messages. There is no way around that.

You can send all images on one connection (e. g. every start of storescu always starts only one connection = DICOM association); or you could run storescu multiple times to send 100 images on 100 connections which then produces association negotiation overhead.

Regards,
Michael

7554753
Posts: 11
Joined: Tue, 2008-07-15, 05:38

#8 Post by 7554753 »

storescu ScpIP 104 1. dcm 2.dcm
i use the dcmtk scu to send 2 images like above, then the storescu will start one network connection or two network connection? Should I make some changes in storescu source code?
Last edited by 7554753 on Thu, 2011-02-03, 22:55, edited 2 times in total.

Jörg Riesmeier
ICSMED DICOM Services
ICSMED DICOM Services
Posts: 2217
Joined: Fri, 2004-10-29, 21:38
Location: Oldenburg, Germany

#9 Post by Jörg Riesmeier »

The answer is one. This is what my colleague meant with "You can send all images on one connection (e. g. every start of storescu always starts only one connection = DICOM association)".

Post Reply

Who is online

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