2017-02-16 57 views
3

我计划实施存储承诺服务以验证以前发送到存储的文件是否安全存储。存储承诺服务(推送模式):我如何将结果返回给我的SCU?

我的架构非常简单直接,我的SCU发送了一些二级捕获图像到存储器,我想确保它们在删除之前安全存储。

我要采取推送模式,我不知道什么步骤/功能,我需要实现来完成服务

我明白了什么是

  • 我需要发出N- ACTION请求SOP类UID 1.2.840.10008.1.20.1并向请求添加事务标识符以及引用的SOP类UID的列表 - 引用的SOP 实例UID,其中引用的SOP实例UID是UID我先前发送给在我的情况下引用SOP类UID存储和 的 次级捕获的图像是表示二次采集图像
  • 等待我的N-ACTION响应,看是否N-ACTION请求成功的皂类标识符 或不
  • 获得从存储在N-EVENT-REPORT

    但当形式的反应?存储如何将结果返回给N-EVENT-REPORT?我的SCP AE是否实现了一些 SCP特性?或者我需要发出N-EVENT请求才能获得 N-EVENT-REPORT?

回答

2

看一看从here下面的图片复制: Image copied from Roni's Blog

现在,关于你的问题,以下是假设相同的关联将被用于整个通信解释。有关多个关联的通信,请参阅Roni上面的文章。

但是什么时候?

立即。在相同的连接/关联。在收到NAction响应后,您应该等待应用程序中配置的超时。在超时过期之前,您应该获得NEventReport。

存储如何让我回到N-EVENT-REPORT以及结果?

当您收到来自SCP的NAction回复时,这意味着SCP会说:“好的,我明白您想要什么。现在等待我获取你的数据......“,所以你等待,当SCP准备好所有的数据(检查列表)时,它只需通过NEventReport以相同的关联发回它。并向SCP发送回复说:“好;我跟你做“,并关闭该协会

请问我的SCP AE实现了一些SCP功能

没有(在大多数情况下);?你不需要执行任何SCP (单关联/多关联)的情况,你应该在上面提到的关联上获得NEventReport,DICOM在TCPIP上工作,TCP中的客户/服务器概念只限于谁建立连接和谁监听连接。连接建立后,任何人都可以在套接字上读写数据。

在极少数情况下,S CP通过自己发起新的关联来发送NEventReport。在这种情况下,SCU需要实施SCP功能。就我所知,这个模型没有被使用。 SCP和SCU都很难实现这个模型。它也需要每个人都倾向于避免的多种配置。所以,这可能被忽略。 我称这种罕见的,因为我从来没有(至少到目前为止)遇到这样的实现。但是,是的;这是有效的理由。

或者我需要发出N-EVENT请求来获得N-EVENT-REPORT?

否;如上所述。请参阅this

J.3.3通知
声称符合本SOP类作为SCP应调用N-EVENT-REPORT请求的DICOM的AE。声称符合此SOP级别作为SCU的DICOM AE应能够接收N-EVENT-REPORT请求。

也就是说,SCU应该能够进程 NEventReport。它不会发布它。

+0

很好的答案,但我不同意一点:通过由SCP发起的单独关联发布存储承诺响应并不罕见。我在这里描述的场外深层存档http://stackoverflow.com/questions/42220918/storage-commitment-service-why-i-really-need-a-what-is-the-real-purpose/42221883#42221883表现完全如此(出于显而易见的原因)。什么是非常罕见的国际海事组织是SCP发布对SCU发起的单独联合的初步请求的回应(Roni名单中的情况3)。 –

+0

@kritzel_sw:同意其有效的案件和有正当理由。我说这是不常见的,因为我从来没有遇到过这样的实现。稍微编辑我的答案以澄清它。 –

1

有三种不同的事件序列可能。我可以在这里描述它们,但这篇文章非常出色:Roni's DICOM blog

我没有什么可以添加到那里写的东西。