fetch image problem

  • Quote from uril

    PACS server Conquest DICOM software 1.4.13 on server side and DCMTK on client side. I have installed DCMTK client on fedora core 7 and have the same problem. "Host 'TON' did not accept the connection". I have turned off firewall on fedora core 7.
    What you think should be my next step?


    Forgive me for interfering with your discussion, but since you have the DCMTK tools installed on your
    client anyway, I would maybe run the command `storescp -v 10004 -od /tmp ´ in a terminal window
    on the client side. This invokes a simple SCP for the Storage Service Class on the client side, which
    listens on port 10004 for incoming association requests and writes the received files to the /tmp
    directory.


    Then you can try to connect to this port from the server with `telnet name 10004´ where name
    is the hostname of your client. If the connection request already fails at this stage you have definitely
    a problem on the networking level, most probably a firewall blocking the port.


    Best regards - Juergen

  • Hi Marcel,


    I have the same problem with the new fedora 7 Dicom client. I have installed wireshark on fedora 7. I got the next strange message from wireshark :



    No. Time Source Destination Protocol Info
    728 4.666883 172.24.11.174 172.24.1.24 DCM DCM Data[Packet size limited during capture]


    Frame 728 (78 bytes on wire, 78 bytes captured)
    Ethernet II, Src: Xensourc_22:19:1e (00:16:3e:22:19:1e), Dst: TyanComp_05:c3:d1 (00:e0:81:05:c3:d1)
    Internet Protocol, Src: 172.24.11.174 (172.24.11.174), Dst: 172.24.1.24 (172.24.1.24)
    Transmission Control Protocol, Src Port: 39113 (39113), Dst Port: 50082 (50082), Seq: 374, Ack: 228, Len: 12
    DICOM
    [Packet size limited during capture: dicom truncated]


    No. Time Source Destination Protocol Info
    729 4.666900 172.24.11.174 172.24.1.24 DCM DCM Continuation[Unreassembled Packet [incorrect TCP checksum]]


    Frame 729 (166 bytes on wire, 166 bytes captured)
    Ethernet II, Src: Xensourc_22:19:1e (00:16:3e:22:19:1e), Dst: TyanComp_05:c3:d1 (00:e0:81:05:c3:d1)
    Internet Protocol, Src: 172.24.11.174 (172.24.11.174), Dst: 172.24.1.24 (172.24.1.24)
    Transmission Control Protocol, Src Port: 39113 (39113), Dst Port: 50082 (50082), Seq: 386, Ack: 228, Len: 100
    DICOM
    [Unreassembled Packet [incorrect TCP checksum]: dicom]



    Thank you,


    Uril.

  • Hi Marcel,


    What do you mean run as a server? DCMTK is the DICOM ToolKit. I would like use DCMTK to fetch images from my Conquest DICOM software 1.4.13 server. I have installed DCMTK on my linux computer(Fedora 6) and I can fetch images from Conquest server using DCMTK movescu command. I have installed DCMTK on another clients: FreeBSD 4.9, 5.3 and Fedora 7 but failed to get images.


    Thanks,


    Uril.

  • I guess Marcel meant with "Is the DCMTK actually running as a server" that you have to run either movescu (includes a store SCP to receive the images) or storescp on your 2nd client (fedora 7) in case the originator of the move request is not the 2nd client itself. After the compilation and install of the DCMTK it will just create the binaries but you have to explicitly start the individual tools. Also keep in mind to use different AE title for each client.
    Both DCMTK tools (movescu and storescp) have a powerful logging system. Check the two man files of the tools and consider to use the paramter "-v" - verbose and "-d" - debug. This will give you more information if anything arrives at all or what the problem is.

  • Hi Marcel,


    No, DCMTK is a client.


    I am using the same command on two different clents: URI which is fedora 6 and TON is fedora 7. On both clients I turned of the firewall. On fedora 6 I can fetch images and on fefora 7 I can't.


    ./movescu -v -d --move URI +P 50082 --study -k 0008,0052=SERIES -k 0010,0020=1350922 -k 0020,000D=2.16.840.1.113662.4.1961541835284.1191349291.388510345264450 -k 0020,000E=2.16.840.1.113662.4.1961541835284.1191350119.390990377848662 172.24.1.24 50082


    ./movescu -v -d --move TON +P 50082 --study -k 0008,0052=SERIES -k 0010,0020=1350922 -k 0020,000D=2.16.840.1.113662.4.1961541835284.1191349291.388510345264450 -k 0020,000E=2.16.840.1.113662.4.1961541835284.1191350119.390990377848662 172.24.1.24 50082


    I have the next two associated lines in the PACS configuration file:


    URI 172.24.11.85 50082 un
    TON 172.24.11.174 50082 un


    I have the next error message from the conquest serverstatus.log


    Mon Sep 15 10:37:07 2008 Called Application Title : "ANY-SCP "
    Mon Sep 15 10:37:07 2008 Application Context : "1.2.840.10008.3.1.1.1"
    Mon Sep 15 10:37:07 2008 Presentation Context 0 "1.2.840.10008.5.1.4.1.2.2.1"
    Mon Sep 15 10:37:07 2008 Presentation Context 1 "1.2.840.10008.5.1.4.1.2.2.2"
    Mon Sep 15 10:37:07 2008 C-Move Destination: "TON "
    Mon Sep 15 10:37:07 2008 Number of Images to send: 27
    Mon Sep 15 10:37:08 2008 Host 'TON' did not accept the connection
    Mon Sep 15 10:37:08 2008 C-Move (StudyRoot)
    Mon Sep 15 10:37:08 2008 UPACS THREAD 585: ENDED AT: Mon Sep 15 10:37:08 2008
    Mon Sep 15 10:37:08 2008 UPACS THREAD 585: TOTAL RUNNING TIME: 1 SECONDS


    and the next from the DCMTK:


    Our Implementation Class UID: 1.2.276.0.7230010.3.0.3.5.4
    Our Implementation Version Name: OFFIS_DCMTK_354
    Their Implementation Class UID:
    Their Implementation Version Name:
    Application Context Name: 1.2.840.10008.3.1.1.1
    Calling Application Name: MOVESCU
    Called Application Name: ANY-SCP
    Responding Application Name: resp AP Title
    Our Max PDU Receive Size: 16384
    Their Max PDU Receive Size: 0
    Presentation Contexts:
    Context ID: 1 (Proposed)
    Abstract Syntax: =FINDStudyRootQueryRetrieveInformationModel
    Proposed SCP/SCU Role: Default
    Accepted SCP/SCU Role: Default
    Proposed Transfer Syntax(es):
    =LittleEndianExplicit
    =BigEndianExplicit
    =LittleEndianImplicit
    Context ID: 3 (Proposed)
    Abstract Syntax: =MOVEStudyRootQueryRetrieveInformationModel
    Proposed SCP/SCU Role: Default
    Accepted SCP/SCU Role: Default
    Proposed Transfer Syntax(es):
    =LittleEndianExplicit
    =BigEndianExplicit
    =LittleEndianImplicit
    Requested Extended Negotiation: none
    Accepted Extended Negotiation: none
    Requesting Association
    Constructing Associate RQ PDU
    PDU Type: Associate Accept, PDU Length: 221 + 6 bytes PDU header
    02 00 00 00 00 dd 00 01 00 00 41 4e 59 2d 53 43
    50 20 20 20 20 20 20 20 20 20 4d 4f 56 45 53 43
    55 20 20 20 20 20 20 20 20 20 00 00 00 00 00 00
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    00 00 00 00 00 00 00 00 00 00 10 00 00 15 31 2e
    32 2e 38 34 30 2e 31 30 30 30 38 2e 33 2e 31 2e
    31 2e 31 21 00 00 1b 01 00 00 00 40 00 00 13 31
    2e 32 2e 38 34 30 2e 31 30 30 30 38 2e 31 2e 32
    2e 31 21 00 00 1b 03 00 00 00 40 00 00 13 31 2e
    32 2e 38 34 30 2e 31 30 30 30 38 2e 31 2e 32 2e
    31 50 00 00 3e 51 00 00 04 00 00 40 00 52 00 00
    22 31 2e 32 2e 38 32 36 2e 30 2e 31 2e 33 36 38
    30 30 34 33 2e 32 2e 31 33 35 2e 31 30 36 36 2e
    31 30 31 55 00 00 0c 31 2e 34 2e 31 33 2f 4f 54
    48 45 52
    Association Parameters Negotiated:
    Our Implementation Class UID: 1.2.276.0.7230010.3.0.3.5.4
    Our Implementation Version Name: OFFIS_DCMTK_354
    Their Implementation Class UID: 1.2.826.0.1.3680043.2.135.1066.101
    Their Implementation Version Name: 1.4.13/OTHER
    Application Context Name: 1.2.840.10008.3.1.1.1
    Calling Application Name: MOVESCU
    Called Application Name: ANY-SCP
    Responding Application Name: ANY-SCP
    Our Max PDU Receive Size: 16384
    Their Max PDU Receive Size: 16384
    Presentation Contexts:
    Context ID: 1 (Accepted)
    Abstract Syntax: =FINDStudyRootQueryRetrieveInformationModel
    Proposed SCP/SCU Role: Default
    Accepted SCP/SCU Role: Default
    Accepted Transfer Syntax: =LittleEndianExplicit
    Context ID: 3 (Accepted)
    Abstract Syntax: =MOVEStudyRootQueryRetrieveInformationModel
    Proposed SCP/SCU Role: Default
    Accepted SCP/SCU Role: Default
    Accepted Transfer Syntax: =LittleEndianExplicit
    Requested Extended Negotiation: none
    Accepted Extended Negotiation: none
    Association Accepted (Max Send PDV: 16372)
    ================================
    Sending query
    Move SCU RQ: MsgID 1
    Request:


    # Dicom-Data-Set
    # Used TransferSyntax: UnknownTransferSyntax
    (0008,0052) CS [SERIES] # 6, 1 QueryRetrieveLevel
    (0010,0020) LO [1350922] # 8, 1 PatientID
    (0020,000d) UI [2.16.840.1.113662.4.1961541835284.1191349291.388510345264450] # 60, 1 StudyInstanceUID
    (0020,000e) UI [2.16.840.1.113662.4.1961541835284.1191350119.390990377848662] # 60, 1 SeriesInstanceUID
    DIMSE Command To Send:


    # Dicom-Data-Set
    # Used TransferSyntax: UnknownTransferSyntax
    (0000,0000) UL 0 # 4, 1 CommandGroupLength
    (0000,0002) UI =MOVEStudyRootQueryRetrieveInformationModel # 28, 1 AffectedSOPClassUID
    (0000,0100) US 33 # 2, 1 CommandField
    (0000,0110) US 1 # 2, 1 MessageID
    (0000,0600) AE [TON] # 4, 1 MoveDestination
    (0000,0700) US 0 # 2, 1 Priority
    (0000,0800) US 1 # 2, 1 DataSetType
    DIMSE sendDcmDataset: sending 100 bytes
    DIMSE sendDcmDataset: sending 166 bytes
    DIMSE receiveCommand
    DIMSE receiveCommand: 1 pdv's (128 bytes), presID=3
    DIMSE Command Received:


    # Dicom-Data-Set
    # Used TransferSyntax: LittleEndianImplicit
    (0000,0002) UI =MOVEStudyRootQueryRetrieveInformationModel # 28, 1 AffectedSOPClassUID
    (0000,0100) US 32801 # 2, 1 CommandField
    (0000,0120) US 1 # 2, 1 MessageIDBeingRespondedTo
    (0000,0800) US 257 # 2, 1 DataSetType
    (0000,0900) US 49157 # 2, 1 Status
    (0000,1020) US 0 # 2, 1 NumberOfRemainingSuboperations
    (0000,1021) US 0 # 2, 1 NumberOfCompletedSuboperations
    (0000,1022) US 0 # 2, 1 NumberOfFailedSuboperations
    (0000,1023) US 0 # 2, 1 NumberOfWarningSuboperations
    C-Move RSP: MsgID: 1 [Status=Failed: UnableToProcess]
    AffectedSOPClassUID: =MOVEStudyRootQueryRetrieveInformationModel
    Data Set: Not Present
    NumberOfRemainingSubOperations: 0
    NumberOfCompletedSubOperations: 0
    NumberOfFailedSubOperations: 0
    NumberOfWarningSubOperations: 0
    Releasing Association


    Any clue?


    Thank you,


    Uril.

  • Hi Marcel,


    I am analyzing two reports from the command movescu and first difference that I found :


    fedora 6 (working)


    # Dicom-Data-Set
    # Used TransferSyntax: UnknownTransferSyntax
    (0008,0052) CS [SERIES] # 6, 1 QueryRetrieveLevel
    (0010,0020) LO [1350922] # 8, 1 PatientID
    (0020,000d) UI [2.16.840.1.113662.4.1961541835284.1191349291.388510345264450] # 60, 1 StudyInstanceUID
    (0020,000e) UI [2.16.840.1.113662.4.1961541835284.1191350119.390990377848662] # 60, 1 SeriesInstanceUID
    DIMSE Command To Send:


    # Dicom-Data-Set
    # Used TransferSyntax: UnknownTransferSyntax
    (0000,0000) UL 0 # 4, 1 CommandGroupLength
    (0000,0002) UI =MOVEStudyRootQueryRetrieveInformationModel # 28, 1 AffectedSOPClassUID
    (0000,0100) US 33 # 2, 1 CommandField
    (0000,0110) US 1 # 2, 1 MessageID
    (0000,0600) AE [URI] # 4, 1 MoveDestination
    (0000,0700) US 0 # 2, 1 Priority
    (0000,0800) US 1 # 2, 1 DataSetType
    DIMSE sendDcmDataset: sending 100 bytes
    DIMSE sendDcmDataset: sending 166 bytes
    PDU Type: Associate Request, PDU Length: 217 + 6 bytes PDU header
    01 00 00 00 00 d9 00 01 00 00 55 52 49 20 20 20
    20 20 20 20 20 20 20 20 20 20 41 44 49 6c 61 62
    5f 70 61 63 73 20 20 20 20 20 00 00 00 00 00 00
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    00 00 00 00 00 00 00 00 00 00 10 00 00 15 31 2e
    32 2e 38 34 30 2e 31 30 30 30 38 2e 33 2e 31 2e
    31 2e 31 20 00 00 36 a9 00 00 00 30 00 00 19 31
    2e 32 2e 38 34 30 2e 31 30 30 30 38 2e 35 2e 31
    2e 34 2e 31 2e 31 2e 34 40 00 00 11 31 2e 32 2e
    38 34 30 2e 31 30 30 30 38 2e 31 2e 32 50 00 00
    3e 51 00 00 04 00 00 40 00 52 00 00 22 31 2e 32
    2e 38 32 36 2e 30 2e 31 2e 33 36 38 30 30 34 33
    2e 32 2e 31 33 35 2e 31 30 36 36 2e 31 30 31 55
    00 00 0c 31 2e 34 2e 31 33 2f 4f 54 48 45 52
    Constructing Associate AC PDU
    DIMSE receiveCommand
    DIMSE receiveCommand: 1 pdv's (180 bytes), presID=169
    DIMSE Command Received:



    fedora 7 (not working)


    # Dicom-Data-Set
    # Used TransferSyntax: UnknownTransferSyntax
    (0008,0052) CS [SERIES] # 6, 1 QueryRetrieveLevel
    (0010,0020) LO [1350922] # 8, 1 PatientID
    (0020,000d) UI [2.16.840.1.113662.4.1961541835284.1191349291.388510345264450] # 60, 1 StudyInstanceUID
    (0020,000e) UI [2.16.840.1.113662.4.1961541835284.1191350119.390990377848662] # 60, 1 SeriesInstanceUID
    DIMSE Command To Send:


    # Dicom-Data-Set
    # Used TransferSyntax: UnknownTransferSyntax
    (0000,0000) UL 0 # 4, 1 CommandGroupLength
    (0000,0002) UI =MOVEStudyRootQueryRetrieveInformationModel # 28, 1 AffectedSOPClassUID
    (0000,0100) US 33 # 2, 1 CommandField
    (0000,0110) US 1 # 2, 1 MessageID
    (0000,0600) AE [TON] # 4, 1 MoveDestination
    (0000,0700) US 0 # 2, 1 Priority
    (0000,0800) US 1 # 2, 1 DataSetType
    DIMSE sendDcmDataset: sending 100 bytes
    DIMSE sendDcmDataset: sending 166 bytes
    DIMSE receiveCommand
    DIMSE receiveCommand: 1 pdv's (128 bytes), presID=3
    DIMSE Command Received:


    Any clue?


    Thanks,


    Uril.

  • Hi Marcel,


    Actually, I don't need movescu. I now PatientID, StudyInstanceUID and SeriesInstanceUID from findscu. With these parameters I can go to the PACS server and get DICOM files.
    Using MAGDevice0 field from dicom.ini I can get dicom directory.


    Using command rsync host MAGDevice0/PatientID/StudyInstanceUID/SeriesInstanceUID/* to source directory I can get all series dicom files.


    Is it right?


    Thank you for your help!!!


    Uril.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!