failed sub-association request with MOVESCU

All other questions regarding DCMTK

Moderator: Moderator Team

Post Reply
Message
Author
dhaval1981
Posts: 7
Joined: Fri, 2005-03-18, 05:09

failed sub-association request with MOVESCU

#1 Post by dhaval1981 »

Hi
I am trying to use movescu application to transfer
images from 1 AE to 2 AE .
I have modified my imagectn.cfg as
///////
HostTable BEGIN
echoscu = (ECHOSCU, 152.19.105.73, 10000)
findscu = (FINDSCU, 152.19.105.73, 10000)
movescu = (MOVESCU, 152.19.105.73, 10000)
storescu = (STORESCU, 152.19.105.73, 10000)
storescp = (STORESCP, 152.19.105.73, 10000)
SERVICE = echoscu, findscu, movescu, storescu, storescp
HostTable END

AETable BEGIN

COMMON /usr/local/dicom/db/COMMON R (200, 1024mb) ANY
DHAVAL_STORE /usr/local/dicom/db/DHAVAL_STORE RW (9, 1024mb) SERVICE
AETable END
/////////////
When i run
./movescu -v -d -aec COMMON -P -k 0008,0052="PATIENT" -k 0010,0020="*" 152.19.105.73 10000

I get the following output
///////////////////
Requesting Association
Association Accepted (Max Send PDV: 16372)
================================
Sending query
Move SCU RQ: MsgID 1
Request:

# Dicom-Data-Set
# Used TransferSyntax: UnknownTransferSyntax
(0008,0052) CS [PATIENT] # 8, 1 QueryRetrieveLevel
(0010,0020) LO [*] # 2, 1 PatientID
C-Move RSP: MsgID: 1 [Status=Refused: OutOfResourcesSubOperations]
AffectedSOPClassUID: =MOVEPatientRootQueryRetrieveInformationModel
Data Set: Present
NumberOfCompletedSubOperations: 0
NumberOfFailedSubOperations: 3
NumberOfWarningSubOperations: 0
Response Identifiers:

# Dicom-Data-Set
# Used TransferSyntax: LittleEndianExplicit
(0008,0058) UI [1.2.840.113619.2.25.1.1762157631.873231884.157\1.2.840.113619.2.1.2411.1031152382.365.1.736169244\1.2.840.113619.2.25.1.1762157631.873231884.166] # 144, 3 FailedSOPInstanceUIDList
Releasing Association
/////////////////////////

while at the imagectn side, this is the output
//////////
Releasing Sub-Association
imagectn: moveSCP: Sub-Association Release Failed:
0006:0106 ASC Caller passed in a NULL key
Move SCP Response 1 [status: Refused: OutOfResourcesSubOperations]
Association Release
Cleaned up after child (2498) Mon Mar 28 19:31:29 2005
///////////
The FAQ for this entry says
" A failed sub-association request usually means that ImageCTN is unable to create the second DICOM connection from ImageCTN to the target "
I have specified the correct IP address and port in imagectn.cfg, still i dont understand why i am getting this error.
Any Pointers/Suggestions on this issue are greatly appreciated.
Thanks
Dhaval

hamlet
Posts: 13
Joined: Tue, 2004-11-16, 09:53

#2 Post by hamlet »

I think you could try to add +P 10000 params.
If don't work, add -aem MOVESCU -aet MOVESCU. (Althoug it is default...)
If don't work, delete echoscu findscu storescu storescp on imagectn.cfg.
I don't think open the same network port on the same PC is a good idea.

dhaval1981
Posts: 7
Joined: Fri, 2005-03-18, 05:09

#3 Post by dhaval1981 »

Thanks Hamlet
I have it working now...
I made the following changes.
./movescu -v -aec COMMON -aet MOVESCU -aem DHAVAL1 +P 10001 -P -k 0008,0052="PATIENT" -k 0010,0020="*" 152.19.105.73 10000
I changed the port number of MOVESCU to 10001 from 10000.
So i have my MOVESCU and IMAGECTN running on different ports.
But in an earlier FAQ
viewtopic.php?t=97&highlight=movescu,
somebody posted that the port number of the movescu and storescp, they most be the same.
Let me know why i cant run them on the same ports. Also have to tried to transfer images to a different directory. The images gets stored by Default where the movesacu application seems to be running.
Thanks
Dhaval

hamlet
Posts: 13
Joined: Tue, 2004-11-16, 09:53

#4 Post by hamlet »

Hi,
echoscu = (ECHOSCU, 152.19.105.73, 10000)
findscu = (FINDSCU, 152.19.105.73, 10000)

I think echoscu and findscu mean that if ImageCtn want transfer image to echoscu or findscu, they open 10000 port to listen to receive image.
If echoscu and findscu run at same time, maybe one of them fail to listen.

You could find "static void storeSCPCallback" in movescu source code.

Code: Select all

OFCondition cond = cbdata->dcmff->saveFile(fileName, xfer, opt_sequenceType, opt_groupLength, opt_paddingType, (Uint32)opt_filepad, (Uint32)opt_itempad, !opt_useMetaheader);
filename is set by : const char* fileName = cbdata->imageFileName;

Code: Select all

static OFCondition storeSCP(...)
.
.
.
sprintf(imageFileName, "%s.%s",
    dcmSOPClassUIDToModality(req->AffectedSOPClassUID),
    req->AffectedSOPInstanceUID);
If you want change moved dir, modify sprintf statement. That will be ok.

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

#5 Post by Jörg Riesmeier »

dhaval1981 wrote:
somebody posted that the port number of the movescu and storescp, they most be the same.
I guess that he/she wanted to emphasize that the port number of the selected move target (see "HostTable" in imagectn.cfg) and the receiver (in this case storescp) must be identical. See imagectn documentation for details.

Of course, only a single application per host should open a particular port in order to listen to it.

If you want to store the received files in a different directory you should use storescp with option --output-directory.

Post Reply

Who is online

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