DCMTK + Conquest DICOM Server 环境测试
更进一步
Conquest 服务器安装
DCMTK 测试
命令参数示例:
1 | echoscu.exe -v -aet DebugTest -aec MGIUSDICOM 192.168.28.128 5678 |
注意事项:
- movescu.exe 测试时需 storescp.exe 配合。
【C-MOVE请求发出后,服务端反向建立连接发送C-STORE请求】 - movescu.exe 也可以自己作为 StoreSCP,这样就不需要启动 storescp.exe 来处理
C-STORE请求。
【 -P 参数用于设置监听端口,来响应新的 TCP 连接】 - PDU
Protocol Data Unit小于服务端时,数据传输异常。
【通过 -pdu 调整 pdu 的最大值】 C-GET与C-MOVE的最大不同点
【C-GET在同一关联中处理C-STORE,而C-MOVE需要建立新的关联,并在新的关联中处理C-STORE】
Query/Retrieve 信息模型
Query/Retrieve 信息模型的分层结构
- Patient Root Query/Retrieve 信息模型
- Study Root Query/Retrieve 信息模型
- Patient/Study Root Query/Retrieve 信息模型
每种信息模型按照分层的形式进行组织,DICOM 标准根据实体-关系模型(Entity-Relation Model)将其分为不同级别,由 Query/Retrieve Level 属性指明所请求的级别。
tag: (0x0008,0x0052)
| 信息模型 | 等级 |
|---|---|
| Patient Root Query/Retrieve | Patient Level Study Level Series Level Composite Object Instance Level |
| Study Root Query/Retrieve | Study Level Series Level Composite Object Instance Level |
| Patient/Study Root Query/Retrieve | Patient Level Study Level |
DCMTK 源码中定义的等级:(dcmqrdbi.h)PATIENT_LEVELSTUDY_LEVELSERIES_LEVELIMAGE_LEVEL
1 | enum DB_LEVEL |
消息服务元素
- DIMSE:DICOM Message Service Element(DICOM 消息服务元素)
- DIMSE-C:DICOM Message Service Element-Composite(复合 DICOM 消息服务元素)
- DIMSE-N:DICOM Message Service Element-Normalized(标准化的 DICOM 消息服务元素)
| 元素类型 | 描述 |
|---|---|
| C-ECHO | 回显服务,验证两端通信是否成功。 |
| C-FIND | 查询服务,查询满足条件的一组属性的复合 SOP 实例。 |
| C-GET | 获取服务,查询并返回满足条件的一组属性的复合 SOP 实例,仅限同一实体,触发 C-STORE,同一个 Association。 |
| C-MOVE | 转移服务,查询并取回满足条件的一组属性的复合 SOP 实例,同一或多个应用实体,触发 C-STORE,不同 Association。 |
| C-STORE | 存储服务,存储一个复合 SOP 实例。 |
| C-CANCEL | 取消服务,取消之前发出的请求。 |
| 元素类型 | 描述 |
|---|---|
| N-EVENT-REPORT | 报告一个事件 |
| N-SET | 请求属性值修改 |
| N-GET | 取回属性值 |
| N-ACTION | 请求一个操作 |
| N-CREATE | 请求创建新的托管 SOP 实例 |
| N-DELETE | 请求删除一个托管 SOP 实例 |