只有在关联的C-STORE完成后才能收到C-MOVE成功消息吗?

时间:2013-10-23 17:00:56

标签: dicom clearcanvas

我们有一个客户端向PACS服务器发出C-MOVE请求。我的理解是,在关闭C-MOVE协会并返回成功状态之前,将打开辅助关联并完成C-STORE操作。

对于一个特定的PACS,我们只有在实际发生了C-STORE子操作之后才接收到C-MOVE成功完成状态。成功消息的状态表明它们都已发生。

(0000,0002) UI =Study Root Query/Retrieve Information Model - MOVE #   28 Affected SOP Class UID 1
(0000,0100) US 32801                                    #    2 Command Field 1
(0000,0120) US 1                                        #    2 Message ID Being Responded To 1
(0000,0800) US 257                                      #    2 Data Set Type 1
(0000,0900) US 0                                        #    2 Status 1
(0000,0902) LO (no value available)                     #    0 Error Comment 1
(0000,1020) US (no value available)                     #    0 Number of Remaining Sub-operations 1
(0000,1021) US 248                                      #    2 Number of Completed Sub-operations 1
(0000,1022) US 0                                        #    2 Number of Failed Sub-operations 1
(0000,1023) US 0                                        #    2 Number of Warning Sub-operations 1

在我们收到此状态后,剩余的C-STORE操作就完成了。

根据我对DICOM标准第7部分的理解,在所有C-STORE子操作实际完成之前,我们不应该收到成功状态的C-MOVE响应。我是否正确地解释了这个PACS是否遵循标准?

如果这是正常的,那么C-MOVE请求者如何知道传输何时成功完成?

1 个答案:

答案 0 :(得分:5)

C-MOVE SCP应该等到C-STORE子操作完成后再回复最终的C-MOVE-RSP。虽然在DICOM标准的第4部分中没有明确说明这一点,但是这样的陈述暗示最终状态是在子操作完成后发送的:

PS 3.4, C.4.2.3.1

“当剩余子操作的数量达到零时,SCP将生成状态等于成功,警告,失败或拒绝的最终响应。该响应应指示已完成的子操作的数量,该数量失败的子操作,以及带有警告状态的子操作的数量。“

也许您遇到问题的PACS有一个架构可以将请求排队,也许在它确保请求排队后,它会返回,但是谁知道。

在任何情况下,关于如何确定何时完成所有操作,成功操作的数量返回的计数是否正确?您可以将此计数与C-STORE-SCP收到的实例数相关联,并确保计数等于知道何时完成所有操作。如果您的C-MOVE目的地是第三方服务器,这不起作用,但如果您控制C-MOVE-SCU和C-STORE-SCP,它应该可以工作。或者,如果您的目的地C-STORE-SCP也是C-FIND-SCP,您可以查询它以检查正在移动的研究的实例计数(即,检查研究相关实例数量标签)以确保计数匹配