WO2002009357A2 - Routing and storage within a computer network - Google Patents

Routing and storage within a computer network Download PDF

Info

Publication number
WO2002009357A2
WO2002009357A2 PCT/US2001/023186 US0123186W WO0209357A2 WO 2002009357 A2 WO2002009357 A2 WO 2002009357A2 US 0123186 W US0123186 W US 0123186W WO 0209357 A2 WO0209357 A2 WO 0209357A2
Authority
WO
WIPO (PCT)
Prior art keywords
data
information
network
medical imaging
routing
Prior art date
Application number
PCT/US2001/023186
Other languages
French (fr)
Other versions
WO2002009357A3 (en
Inventor
David P. Gendron
Dale P. Kingsbury
Jeffrey A. Romatoski
Larry R. Sitka
Original Assignee
Acuo Technologies, Llc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Acuo Technologies, Llc filed Critical Acuo Technologies, Llc
Priority to CA002416783A priority Critical patent/CA2416783A1/en
Priority to AU2001276028A priority patent/AU2001276028A1/en
Priority to EP01953595A priority patent/EP1303951B1/en
Priority to DE60109621T priority patent/DE60109621T2/en
Publication of WO2002009357A2 publication Critical patent/WO2002009357A2/en
Publication of WO2002009357A3 publication Critical patent/WO2002009357A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/60ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H30/00ICT specially adapted for the handling or processing of medical images
    • G16H30/20ICT specially adapted for the handling or processing of medical images for handling medical images, e.g. DICOM, HL7 or PACS
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/60ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
    • G16H40/67ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices for remote operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/564Enhancement of application control based on intercepted application data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/26Special purpose or proprietary protocols or architectures

Definitions

  • the invention relates to routing and storage within a computer network.
  • a computer network includes a variety of computing devices that communicate and share resources and data.
  • a medical imaging environment may include a number of networked devices including a medical imaging modality that generates medical images of a patient, a diagnostic view station for displaying the images, an output device for printing the images on film or other media, and an archive system for storing the images. These devices are often collectively referred to as a Picture Archival and Retrieval System (PACS), and may communicate using a number of protocols.
  • PACS Picture Archival and Retrieval System
  • PACS Picture Archival and Retrieval System
  • the American College of Radiology and National Electrical Manufacturers Association for example, developed one such protocol referred to as Digital Imaging and Communications in Medicine (DICOM).
  • DICOM defines vendor-independent data formats and data transfer services for digital medical images.
  • the devices communicate over a packet-based network by dividing the data into small blocks called packets, which are individually routed across the network from a source device to a destination device.
  • the destination device extracts the data from the packets and assembles the data into its original form. Dividing the data into packets enables the source device to resend only those individual packets that may be lost during transmission.
  • Certain devices referred to as routers, maintain routing information that describes routes through the network.
  • a "route" can generally be defined as a path between two locations on the network.
  • the router Upon receiving an incoming packet, the router examines information within the packet to identify the destination for the packet. Based on the destination, the router forwards the packet in accordance with the routing information.
  • the routers often maintain the routing information, typically in the form of one or more routing tables.
  • the form and contents of the routing tables often depends on the routing algorithm implemented by the router.
  • networked medical imaging systems make use of general-purpose routers that perform the routing functions without knowledge of the particular medical images and associated patient data.
  • the invention is directed to a router that provides for seamless communication and distribution of medical images and other patient data between the medical modalities and other various medical imaging devices.
  • the router implements certain protocols and file formats to treat network communications as a self-describing "assets" that encapsulate medical imaging data.
  • a self-describing asset may include patient data, session data, study data, medical image data, private asset information, and the like.
  • the invention is directed to a router that includes a computer-readable medium storing routing information mapping destinations to routes within a medical imaging network, and storing a set of routing rules.
  • a routing module executing within an operating environment provided by the router selects a route from the routing information based on destination information of a network communication and a comparison of medical imaging data of the network communication to the set of routing rules.
  • the module parses the medical imaging data to identify a set of DICOM tags and corresponding data; and assesses the routing rules based on the DICOM tags and corresponding data.
  • the invention is directed to a method comprising receiving examination information for a patient, examining routing information within a network router to identify storage systems within a network, and retrieving medical imaging data from the identified storage systems prior to an examination of the patient.
  • the invention is directed to a method comprising receiving a request for an asset; determining a global unique identifier (GUID) associated with the requested asset; examining routing information to identify storage systems within a network, issuing queries to the storage system to determine which storage systems have a local copy of the requested asset, wherein the queries include the associated GUID, and selectively retrieving one of the local copies of the requested asset.
  • GUID global unique identifier
  • the invention is directed to a method comprising receiving user input defining routing information, generating a rule in Extensible
  • XML Markup Language
  • FIG. 1 is a block diagram illustrating an example system for communication and storage of medical imaging data in accordance with the principles of the invention.
  • FIG. 2 is a block diagram illustrating an example department having a number of medical imaging devices coupled by routers.
  • FIG. 3 is a block diagram illustrating an example embodiment of a router according to the principles of the invention.
  • FIG. 4 is a flowchart providing a high-level overview of the routing process.
  • FIG. 5 is a flowchart illustrating the integration of routing and storage functionality to manage medical imaging assets within a medical imaging system.
  • FIG. 6 is a flowchart illustrating a mode of operation in which a router uses routing information to facilitate the pre-fetching of storage assets.
  • FIG. 7 is a flowchart illustrating the integration of multiple medical imaging departments.
  • FIG. 8 illustrates a unique communication format for exchanging and interchanging data.
  • FIG. 9 is a flow chart illustrating routing of assets according to routing information and an extensible markup language (XML) based rule set.
  • XML extensible markup language
  • FIG. 10 illustrates an example user interface presented by a router by which an operator hierarchically defines routing logic and constructs a rule for a rule set.
  • FIGS. 11-17 illustrates example user interfaces for reconciling errors within medical imaging data.
  • FIGS. 18-19 illustrate example user interfaces for managing patient information.
  • FIG. 20 illustrates an example display presented by such a tool for debugging and configuring a medical imaging environment.
  • FIG. 1 is a block diagram illustrating a system 2 for communication and storage of medical imaging data.
  • system 2 includes a health care facility having a number of departments 6 interconnected by router 10.
  • Each department 6 may include a number of medical imaging devices.
  • Departments 6 may include, for example, medical modalities of different types, such as magnetic resonance (MR), computed tomography (CT), digital radiography (DR) or ultrasound.
  • MR magnetic resonance
  • CT computed tomography
  • DR digital radiography
  • Each medical modality may have different imaging characteristics and features, and may generate substantially different patient data and associated medical images.
  • Each department 6 may also include other medical imaging devices, such as a number of view stations for displaying and annotating medical images, an output device for printing the medical images, and a local archive for storing medical images.
  • router 10 provides for seamless communication and distribution of medical images and other patient data between the medical modalities and other various medical imaging devices of departments 6.
  • the medical modalities and other various medical imaging devices communicate medical imaging "assets" to router 10 for routing to other devices within system 2.
  • router 10 implements certain protocols and file formats to treat network communications as a self-describing "assets" that encapsulate medical imaging data.
  • a self-describing asset may include patient data, session data, study data, medical image data, private asset information, and the like.
  • Router 10 provides additional interfaces to other systems including a Hospital Information System / Radiology Information System (HIS/RIS) 8 that stores patient data, and a central storage system 12 that provides a central repository for the storage of medical assets.
  • HIS/RIS Hospital Information System / Radiology Information System
  • Router 10 also provides for remote communication of medical imaging assets over network 14 to remote clinic 16 and, for example, a remote physician 18 wishing to remotely view medical assets.
  • Network 14 may be any Local Area Network (LAN) or Wide Area Network (WAN) or may be a global network such as the Internet.
  • LAN Local Area Network
  • WAN Wide Area Network
  • Router 10 also provides for remote communication of medical imaging assets over network 14 to remote clinic 16 and, for example, a remote physician 18 wishing to remotely view medical assets.
  • Network 14 may be any Local Area Network (LAN) or Wide Area Network (WAN) or may be a global network such as the Internet.
  • LAN Local Area Network
  • WAN Wide Area Network
  • router 10 may be used in systems for managing assets generally, such as photographic assets, insurance information, billing and accounting information.
  • the medical imaging devices of system 2 communicate the assets over network 14 using a suitable network protocol.
  • the medical modalities and other devices may, for example, exchange data and information using a data communications protocol developed by the American College of Radiology (ACR) and the National Electrical Manufacturers Association (NEMA) known as the Digital Imaging and Communications in Medicine (DICOM) protocol.
  • ACR American College of Radiology
  • NEMA National Electrical Manufacturers Association
  • DICOM Digital Imaging and Communications in Medicine
  • the DICOM protocol may be implemented using TCP/IP connections between medical devices over a network, as illustrated in FIG. 1, or using a point-to-point communication medium.
  • router 10 integrates routing, network management and storage functionality.
  • Router 10 receives assets and intelligently routes the assets to medical devices within system 2 in accordance with routing information.
  • router 10 provides interfaces to storage systems by implementing, for example, a set of storage "classes" required by the DICOM protocol. In this manner, router 10 provides all functionality needed to seamlessly couple high-end imaging modalities and other medical devices directly to storage devices within a networked environment.
  • FIG. 2 is a block diagram illustrating an example department 6A having a number of medical imaging devices coupled to network 14 by department router 10A and facility router 10B in accordance with the principles of the invention.
  • Department router 10A routes images locally between, for example, medical modality 24, view station 26, local archive 20, and output device 28.
  • Facility router 10B couples department 6A to department 6B and network 14, which may be a private or public network.
  • routers 10 integrate multiple medical imaging departments 6. Each department 6 may, for example, comprise a different DICOM "domain” having a set of DICOM Application Entities (AEs), each having an AE Title. In this manner, routers 10 allow medical professionals to perform collaborative studies on images, even when the professionals may be in different facilities, even across the country. More particularly, router 10A provides DICOM CFIND and CMOVE services to department 6A, and may be configured with a single AE for modality 24. In addition, router 10A may be configured to search for storage assets on local archive 20. Router 10B may be configured to forward CFIND and CMOVE requests to remote locations, including router 10A, remote clinic 16, remote physician 18 and one or more routers within department 6B.
  • AEs DICOM Application Entities
  • routers 10 manage the bandwidth consumed by medical imaging data as assets are routed between departments 6 and network 14. Medical imaging data is inherently large compared with other network communications, such as electronic mail (email), that may also be present within system 2. To minimize any negative impact on the other network communications, routers 10 controls and "throttles" medical imaging communications.
  • routers 10 present user interfaces by which an operator can limit maximum bandwidth consumption for medical imaging network communications.
  • the operator may indicate, for example, that such communications should consume no more than 60% of the available network bandwidth.
  • the routers 10 monitor the rates at which outbound data packets are transmitted, and insert sufficient time delays between transmissions to ensure the available bandwidth is reserved.
  • a link may be any physical connection between two devices in a network.
  • the operator may define, for example, times at which the link is available, or cost per megabyte of data on the link.
  • router 10 may automatically detect the bandwidth of links to adjacent nodes within system 2, typically by requesting such information from an operating system, such as WindowsTM 2000, or one or more device drivers. Based on this information, routers
  • 10 may select particular links and schedule network communications to minimize cost.
  • FIG. 3 is a block diagram illustrating an example embodiment of router 10 according to the principles of the invention.
  • router 10 receives inbound network communication 32, often in the form of a storage asset communicated in one or more data packets, and forwards the network communication in accordance with routing information 34, which describes the topology of system 2.
  • routing information 34 describes routes between the networked medical imaging devices within system 2.
  • routing module 36 may arrange routing information 34 to map DICOM "AENames" to default routes within system 2. Furthermore, routing information 34 may define a number of communication ports of the router, and within each port a set of acceptable AENames. This configuration can be particularly useful in enforcing security between medical imaging devices within the system 2.
  • router 10 may support a number of unique Internet Protocol (IP) addresses. For each IP address, therefore, routing information 34 may define a number of ports, and a number of corresponding AENames. In this manner, routing module 36 arranges routing information 34 to provide access to the available AEs within one or more DICOM domains, thereby allowing router 10 to present a multiple AE interface to a DICOM domain with which medical imaging devices of system 2 can readily communicate.
  • IP Internet Protocol
  • routing information 34 includes two database tables to map a "called" AEName to a list of destinations. More specifically, routing module 36 maintains a "Basic Connection Information" table within routing information 34 to identify other devices within system 2 that need to receive a copy of an inbound asset.
  • the Basic Connection Information table contains the following Information:
  • Request Type Designates the type of request - i.e. "Store, Query, or Move"
  • o Type Store (Transfer information to Archive (s) ) ⁇ List of routers to receive data on store requests from this request name. This may be a list of 1-n Router Names .
  • o Type Query (Transfer Query to Archive (s) )
  • a "Local Destination" table within routing information 34 stores the data necessary for router 10 to form connections with the other devices in the network.
  • the Local Destination table contains the following information: • Called AE Name - Name used to uniquely target (restrict) access to specific destinations.
  • Router 10 may also maintain a set of rules 38 to further control routing of inbound network communications 32.
  • Routing module 36 may use rules 38 to redirect a network communication to a different route, to evoke an additional action, such as deleting the data or reconciling the data, or to send the network communication to one or more additional destinations.
  • router 10 may implement a two-tier routing system in which routing module 36 first examines destination information within an inbound network communication 32, and then applies rules 38 to the incoming data to determine the ultimate route(s). In this manner, routing module 24 may inspect at least a portion of the encapsulated non-pixel data before forwarding the asset to one or more destinations. Rules 38 may also be used to map or correct tagged data prior to routing. Router 10 may parse the incoming data, and use rules 38 to map a tag to a new meaning or format. A rule may be created, for example, to automatically reformat patient identifiers as received from a medical imaging modality. Furthermore, the rules may be used to selectively propagate or filter messages or particular commands, such as DICOM commands, along one or more specific routes.
  • routing information 34 describes each route as either "local” or "external.” External routes may be further qualified as “direct” or "batch.”
  • a local route descriptor causes routing module 36 to route an inbound asset to local database 40.
  • an external route descriptor causes routing module 36 to route an asset to a networked device within system 2.
  • a "direct" external route descriptor causes router 10 to immediately forward the asset to the destination. Router 10 waits until receiving an acknowledgement from the destination before sending an acknowledgement back to the source modality. In this manner, the asset is stored in multiple locations, and router 10 guarantees storage of the asset to the modality with a single acknowledgement.
  • a "batch" descriptor for an external route causes router 10 to store the asset locally and immediately acknowledges the source modality. At a later point in time, router 10 batch transfers the buffered assets to their respective destinations. This mode may advantageously increase patient throughput at the modalities.
  • Connection manager 42 receives storage asset of inbound network communication 32, typically from a medical modalities upon completion of an exam, and initiates the routing process of router 10. In particular, connection manager 42 listens to a well-known communication port for communications from any network device. Upon receiving a message from such a device, connection manager 42 immediately invokes two software modules, such as by instantiating two threads, for parallel processing the inbound storage asset. Connection manager 42 instantiates storage manager 44, which is responsible for receiving and buffering an incoming asset to local storage 49, and verification module 46, responsible for validating the non-pixel data encapsulated within the storage asset.
  • connection manager 42 directs the inbound communications to a new socket, and passes a handle to the socket to each of storage manager 44 and verification module 46.
  • storage manager 44 and verification module 46 receive data of an inbound asset in parallel, each processing selected portions of the asset. Consequently, router 10 may be able to achieve higher utilization of network bandwidth by ensuring that assets are quickly and efficiently retrieved from network 14. This is particularly advantageous in the medical imaging environment where the data portions can be significantly large.
  • storage manager 44 and verification module 46 make use of a ringtail buffer that stores data of the inbound asset as router 10 receives the from the network.
  • Storage manager 44 receives the asset, including tagged data and pixel data, and stores the asset to local storage 49 at a high rate. In one embodiment, storage manager 44 streams the incoming asset to a file located on a high-speed computer readable medium within the router, such as a hard disk.
  • Verification module 46 receives and process the non-pixel data within the asset to verify and validate all syntactical and semantical information. Within a medical imaging environment, for example, verification module may verify and validate all syntactical and semantical information of the encapsulated patient information, session information, study information and image information.
  • Verification manager 46 extracts non-pixel data associated with each image, and stores the non-pixel data in temporal database 40A, permanent database 40B, or both, thereby allowing an operator to retrieve the information during a subsequent examination.
  • temporal database 40A is configured to automatically prune assets after a period of time.
  • verification module 46 issues a reconciliation event 37 to patient manager 48, which provides for the reconciliation of medical imaging data, such as patient information, session information and the like.
  • router 10 does not forward storage assets to destinations, such as central storage system 12, until the encapsulated data has been fully reconciled.
  • verification module 46 maintains a DICOM dictionary within local database 40 for storing "private" (user-defined) DICOM tags that are defined by modalities and other devices within the system.
  • verification module 46 collects and stores all pertinent information related to the private tag including, for example, a UID, a version, and a source for the tag. In this manner, router 10 builds the DICOM data dictionary in "real-time.” Based on this information, router 10 can uniquely identify where the private tags originate.
  • routing module 36 Upon validation of the encapsulated data by verification module 46, routing module 36 examines non-pixel medical image data from message queues 41 , determines the appropriate route, and enqueues a network communication within output queues 48 for transmission to a destination by output interface 47.
  • the queued outbound network communication contains pointers to corresponding non- pixel data within message queues 41 and portions of the pixel data stored on local storage 49.
  • routing module 36 may ready a storage asset for output communication, even prior to storage manager 44 writing the entire pixel data of the asset to the local storage 49. Consequently, router 10 may commence an outbound network communication 45 of an asset prior to receiving all of the asset data from inbound network communication 32. While outputting the communication to the network, output interface 47 uses the pointers to read the messages from message queues 41 and extracts the corresponding pixel data from the local storage 49 to form an outbound communication.
  • routing module 36 and output interface 47 are capable of sending storage assets to multiple destinations in parallel such that the assets are available when needed by medical professionals. If a particular doctor works in two hospitals and a clinic, for example, routing module 36 may route the assets generated from an examination to multiple devices at both hospitals and the clinic. Output interface 47 communicates the assets to the multiple destinations in parallel.
  • verification module 46 issues a reconciliation event 37 when encapsulated data of an inbound network communication 32 is invalid or missing.
  • patient manager 48 examines routing information 34 to identify network destinations that may store relevant patient information, and queries the remote destinations in an attempt to automatically reconcile the data.
  • Patient manager 48 may, for example, invoke HIS/RIS interface 39 to retrieve patient data from a remote HIS/RIS system 8. In this manner, patient manager 48 may leverage routing information 34 to identify the available data sources within the system 2.
  • patient manager 48 provides a user interface by which an operator can manually query the remote network resources and reconcile the non-pixel data within a storage asset, such as the demographical information for a patient.
  • Patient manager 48 performs a number of quality control functions in addition to reconciling data, including asset reprocessing, patient management, and prefetching assets prior to an examination of a patient.
  • the patient management functionality allows an operator to update patient information, delete a patient, or otherwise manage patient data stored within the local database or a master database.
  • patient manager 48 facilitates system wide searching by leveraging routing information 34. By interacting with a user interface presented by patient manager 48, an operator can search local database 40 for images, or direct patient manager 48 to send search requests to other medical devices in accordance with routing information 34.
  • FIG. 4 is a flowchart providing a high-level overview of the routing process carried out by router 10.
  • router 10 stores routing information 34 that describes routes between the networked medical imaging devices within system 2 (50), and stores a set of rules 38 to further control routing of network communications (52).
  • FIG. 5 is a flowchart illustrating the integration of routing and storage functionality to manage medical imaging assets within a medical imaging system.
  • router 10 Upon receiving a new asset from a source modality (60), such as upon completion of an examination of a patient, router 10 queries central storage system 12 for a new global unique identifier (GUID) (61). Upon receiving the new GUID for the asset, router 10 forwards the asset to one ore more storage devices, such as a local archive 20 and central storage system 12 (62). In this manner, system 2 maintains unique global identifiers for each copy of a storage asset.
  • GUID global unique identifier
  • This technique has many advantages, including simplifying routing assets between multiple storage systems and medical imaging devices. An operator, such as a physician, may periodically wish to view stored assets.
  • router 10 Upon receiving a subsequent request for the stored asset (63), router 10 examines routing information 34 to identify storage systems within system 2 (64). In other words, router 10 leverages routing information 34 to facilitate identification of potential locations within system 2 for a requested asset. Upon identifying the locations, router 20 queries the storage system to locate the requested asset (65). Router 10 may, for example, issue one or more "CFIND" commands to the storage systems to determine which storage systems are currently storing the requested asset, or copies thereof.
  • Router 10 selects one of the storage systems based on a variety of criteria (66), including bandwidth of network connections between the storage systems and the requesting device, speed and type of media used by the storage system, and whether the requested asset is immediately accessible by the storage systems, or must be retrieved from an offline storage medium, such as tape. Upon selecting one of the storage systems, router 10 issues a move command to the selected storage system to move the requested asset to the requesting medical imaging device (67).
  • FIG. 6 is a flowchart illustrating a mode of operation in which router 10 uses routing information 34 to facilitate the pre-fetching of storage assets, thereby making the assets immediately available physicians and other operators.
  • Router 10 may, for example, pre-fetch storage assets for a patient prior to a follow-up examination of the patient.
  • HIS/RIS system 8 will interact with the HIS/RIS system 8 and schedule an examination of a patient.
  • HIS/RIS system 8 will issue a scheduling event (70) through a standard communication protocol such as HL7.
  • router 10 examines routing information 34 (72) to identify available routes within system 2, and issues queries, such as CFIND commands according to the DICOM protocol, to locate the assets related to a particular patient (74).
  • router 10 After locating the assets, router 10 updates a pre-fetch schedule based on the locations of the assets, the scheduled time for the examination, and characteristics of the links within system 2 including availability and cost (76).
  • router 10 may present a user interface by which an operator can identify and select the particular patient information to be pre-fetched prior to the examination. By interacting with the interface, the user can view patient information and schedule prefetching the corresponding assets.
  • router 10 initiates the cooperative pre-fetching and movement of the assets by issuing 1 to N move commands to move the assets from storage devices to the modality scheduled to perform the patient examination and imaging session (80).
  • a batch move software module operating on router 10 examines the pre-fetch schedule, and moves the assets as needed to an appropriate temporal storage within one or more departments 6.
  • router 10 selects the relevant assets to move in accordance with rule set 25.
  • Router 10 may, for example, move a subset of the located assets based on the modality type, patient ID, examination area of a patient, and the like. In this manner, router 10 may not necessarily move all of the assets for a given patient, but only those assets relevant to the scheduled examination.
  • Router 10 performs similar operations upon receiving a CFIND request from another medical imaging device within system 10, such as another router.
  • router 10 examines routing information 34 to map the designated AEName to a route, and then to one or more locations. Router 10 then issues CFIND requests to the identified locations in accordance with routing information 34 in order to locate all of the assets associated with a particular find request.
  • router 10 enforces security and other policies to provide secure access to patient data.
  • FIG. 7 is a flowchart illustrating the integration of multiple departments 6 via router 10 in further detail.
  • each department 6 may include a number of different types of devices including an archive manager, a clinical view station, and a number of imaging modalities.
  • DICOM protocol proper communication with each of these devices requires a remote device to have knowledge of, and correctly use, a number of unique identifiers specific to the DICOM "domain" of each department.
  • a DICOM compliant device may be identified by, for example, a unique identifier, a version, and an AETtitle.
  • router 10 can operate in an emulation mode in which router 10 detects the identifiers, and translates inbound and outbound network communications to the department in accordance with the identifiers.
  • router 10 may establish a temporary connection, referred to as an "association" by the DICOM protocol, with one or more of the devices of the department (81), typically causing one of the devices to respond with a unique identifier (UID), a version number, an AETitle.
  • Router 10 extracts the domain identifiers from the response (82) and builds a translation table for translating inbound and outbound communications from the department 6 (83).
  • router 10 Upon receiving an inbound or output network communication (84), router 10 parses the network communication and translates the encapsulated domain identifiers in accordance with the translation table (85). Upon translating the identifiers, router 10 forwards the network communication based on routing information 34 (86). In this manner, router 10 presents dual interfaces that map external identifiers to the assumed domain identifiers of a department or other medical imaging domain and, thereby, allows external devices to seamlessly communicate with the devices within the assumed domain. In other words, remote medical imaging devices need not know the specific domain identifiers of medical imaging devices within a department in order to communicate with the devices.
  • FIG. 8 illustrates a unique communication format 86 supported by router 10 for exchanging and interchanging data.
  • format 86 includes asset meta information 87A, medical imaging information 87B, pixel data 87C, thumbnail data 87D, patch data 87E, and error correction and detection information 87F
  • Header information 87A includes all routing information necessary for router 10 to route the asset within system 2.
  • Medical imaging information 87B includes raw data received from the modality that describes the recent examination, including the patient information, session information, study information and image information. Medical imaging information 87B may include, for example, related DICOM tags and messages.
  • Pixel data 87C includes the medical images generated by the examination, while thumbnail data 87D includes low-resolution versions of the images for quick display.
  • Thumbnail data 87D contains data that router 10 has extracted from the pixel data 87C, and stored for quick access by view stations. This allows for the "pre- building" and retention of thumbnail data so that the data can be quickly retrieved and displayed.
  • Patch data 87E includes all modifications to medical imaging information 87B, which was originally generated by the source modality. In other words, the original data is not modified. Rather, the asset includes patch data 87E that stores all of the updated data and, in particular, a revision history including the date and time of the change, and operator that made the change. In other words, during the reconciliation process, patient manager 48 stores all updates and modifications of an asset within the patch data 87E of the exchange format 86. In this manner, exchange format 86 facilitates compliance with regulations that require change tracking and revision histories and furthermore, facilitates storages of the information within a single self-describing data asset.
  • Error detection and correction information 87F such as a cyclical redundancy check (CRC)
  • CRC cyclical redundancy check
  • the following description provides further details an example file format 86 for use with DICOM storage assets.
  • the contents of the header information 87A is defined to document ownership and version control, and to provide a mechanism to gain efficient access to other parts of the format. The contents may be as follows:
  • Medical imaging information 87B contains tags defined within the DICOM as "Group 0" tags. These tags are part of Command Request/Response information that must be present with each DICOM Message. Medical imaging information 87B may also contain DICOM data tags that defined within the DICOM Standard from Group 0002, Element 0000 through Group 7FE0 Element 0000. These tags are considered the "payload" of a DICOM compliant message and contain a wide range of information relating to the patient, physician, image characteristics, and the like. These tags may be saved within the a file and arranged as follows: ⁇ tag (group/element) > ⁇ Length> ⁇ Data>
  • Pixel data 87C contains the DICOM data tag group 7FE0 Element 0010 that designates the pixel data of the DICOM image(s). This tag and the corresponding pixel data are stored within pixel data 87C, which may be a "byte-for-byte" copy of the data as received by router 10 from an imaging modality. Patch data 87E may be arranged as follows:
  • FIG. 9 is a flow chart illustrating routing of assets according to routing information 34 and an XML-based rule set 38.
  • routing module 36 implements a two-tier routing scheme in which routing module 36 first examines destination information within a network communication, such as an AEName, and then applies rules 38 to the incoming data to determine the ultimate route(s).
  • routing module 24 maintains the rule set in extensible Markup Language format (XML) by which the user can easily create a complex grammar for routing assets.
  • XML extensible Markup Language format
  • the user may create rules for routing assets based on patient ID, modality, referring physician and the like.
  • the user may define any number of tags to control routing of assets by router 10.
  • router 10 presents a user interface by which a user defines a set of routing rules (90).
  • the user interacts with the user interface to define a grammar and logic for a rule for routing assets within system 2.
  • router 10 Based on the received input, router 10 generates a rule in XML format (91) and updates rule set 24 (92).
  • routine module 10 applies the XML- based rules to network communications.
  • router 10 receives a network communication (93), such as an asset containing medical imaging data, assesses the rules of rule set 24 based on the network communication, and routes the network communication accordingly (94).
  • a network communication such as an asset containing medical imaging data
  • FIG. 10 illustrates an example user interface 95 presented by router 10 by which an operator hierarchically defines routing logic and constructs a rule for rule set 38.
  • the operator can input a rule name 97, and hierarchically define specific data tags, 95, logical operators 98 and corresponding data values 99 for the rule as a complex grammar.
  • FIG. 11 illustrates an example user interface presented by patient manager 48 upon detecting errors within medical imaging data received from the various departments 6.
  • user interface 100 displays a list of reconciliation events that have been generated by router 10 upon receiving and detecting mismatched or otherwise invalid data.
  • interface 100 displays event list
  • interface 100 displays an identifier for the medical imaging tag corresponding to the data in error, a source medical imaging modality, an event identifier, a date and time of the event, a patient identifier, a study identifier, a series identifier, and an image identifier.
  • the use may select and highlight the event and elect to view the properties of the event.
  • FIG. 12 illustrates an example user interface 104 displayed by patient manager 48 when the user elects to view the properties of a particular reconciliation event.
  • user interface 104 displays the data associated with the event in hierarchical fashion.
  • User interface 104 displays patient data 106, study data 108, series data 110, and image data 112 that relate to the event.
  • user interface 104 highlights the tag 114 for which patient manager 48 has identified missing or invalid data.
  • user interface 104 displays window 116 by which the user can reconcile the data.
  • the user may elect to edit the data directly, or search a number of resources within system 2, including a DICOM database storing medical imaging information, as well as an HIS/RIS database.
  • patient manager 48 polls the selected resource and displays any identified relevant data in order to assist the operator in reconciling the missing data in the storage asset.
  • FIG. 13 illustrates an example user interface 120 displayed by patient manager 48 when the user elects to edit data element directly.
  • user interface 120 displays an edit window 122 within which the operator may enter the relevant data, thereby reconciling and clearing the event.
  • patient manager 48 verifies that the data has been entered in the correct format.
  • FIG. 14 illustrates an example user interface 124 displayed by patient manager 48 upon retrieving patient information from a network resource such as a DICOM database.
  • patient manager 48 queries a network resource in order to identify and retrieve any relevant patient information that may assist the operator in reconciling the mismatched data of the current medical imaging session, and presents the information to the user.
  • the operator may direct patient manager 48 to automatically update the missing or invalid data of the current medical imaging session.
  • FIGS. 15, 16 and 17 illustrate similar user interfaces 126, 128, 130 displayed by patient manager 48 when the operator reconciles image information, series information and study information, respectively.
  • FIG. 18 illustrates an example user interface 132 displayed by patient manager 48 with which the operator interacts to batch process reconciliation events.
  • user interface 132 allows the user to group similar events, i.e., events originating from the same imaging session in which similar data is mismatched. In this manner, the operator can reconcile common mismatched or invalid data, such as a misspelled patient name, and immediately correct and reconcile the data throughout all of the assets related to a common session.
  • FIG. 19 illustrates an example interface 134 displayed by patient manager 48.
  • user interface 134 provides an interface to searching functionality and patient management functionality. The operator can enter a variety of search criteria within input area 136, directing router 10 to examine the routing information, identify remote storage devices within system 2, and retrieve patient information from the storage devices or other systems such as HIS/RIS system 14. Upon retrieving relevant patient information, user interface 134 allows the operator to manipulate and otherwise maintain the patient information including initiating a new study, editing an existing patient, deleting a patient, viewing relevant patient data, and merging a number of patients into a common patient information.
  • Router 10 includes tracing functionality to aid in configuring, debugging and testing a medical imaging system 2.
  • router 10 captures binary data received in an inbound network communication and stores the data locally prior to processing and forwarding the asset.
  • the trace output can be "piped" into debugging tools running on a local workstation or other computing device, for simulation and debugging.
  • FIG. 20 illustrates an example display 138 presented by such a tool, including the raw hexadecimal data as well as the raw data translated into DICOM commands.

Abstract

A router includes a computer-readable medium storing routing information mapping destinations to routes within a network. A storage manager software module executing within an operating environment provided by the router receives a network communication including an asset having a pixel data and non-pixel data, and stores the asset to a storage device. A validation software module validates the non-pixel data in parallel with the storage of the asset. A routing module forwards the storage asset to a network destination in accordance with the routing information upon the validation of the non-pixel data.

Description

ROUTING AND STORAGE WITHIN A COMPUTER NETWORK
TECHNICAL FIELD
The invention relates to routing and storage within a computer network.
BACKGROUND
A computer network includes a variety of computing devices that communicate and share resources and data. A medical imaging environment, for example, may include a number of networked devices including a medical imaging modality that generates medical images of a patient, a diagnostic view station for displaying the images, an output device for printing the images on film or other media, and an archive system for storing the images. These devices are often collectively referred to as a Picture Archival and Retrieval System (PACS), and may communicate using a number of protocols. The American College of Radiology and National Electrical Manufacturers Association, for example, developed one such protocol referred to as Digital Imaging and Communications in Medicine (DICOM). In general, DICOM defines vendor-independent data formats and data transfer services for digital medical images.
In many conventional networks, the devices communicate over a packet-based network by dividing the data into small blocks called packets, which are individually routed across the network from a source device to a destination device. The destination device extracts the data from the packets and assembles the data into its original form. Dividing the data into packets enables the source device to resend only those individual packets that may be lost during transmission. Certain devices, referred to as routers, maintain routing information that describes routes through the network. A "route" can generally be defined as a path between two locations on the network. Upon receiving an incoming packet, the router examines information within the packet to identify the destination for the packet. Based on the destination, the router forwards the packet in accordance with the routing information.
The routers often maintain the routing information, typically in the form of one or more routing tables. The form and contents of the routing tables often depends on the routing algorithm implemented by the router. Typically, networked medical imaging systems make use of general-purpose routers that perform the routing functions without knowledge of the particular medical images and associated patient data.
SUMMARY
In general, the invention is directed to a router that provides for seamless communication and distribution of medical images and other patient data between the medical modalities and other various medical imaging devices. As described in detail below, the router implements certain protocols and file formats to treat network communications as a self-describing "assets" that encapsulate medical imaging data.
For example, a self-describing asset may include patient data, session data, study data, medical image data, private asset information, and the like.
In one embodiment, the invention is directed to a router that includes a computer-readable medium storing routing information mapping destinations to routes within a medical imaging network, and storing a set of routing rules. A routing module executing within an operating environment provided by the router selects a route from the routing information based on destination information of a network communication and a comparison of medical imaging data of the network communication to the set of routing rules. The module parses the medical imaging data to identify a set of DICOM tags and corresponding data; and assesses the routing rules based on the DICOM tags and corresponding data.
In another embodiment, the invention is directed to a method comprising receiving examination information for a patient, examining routing information within a network router to identify storage systems within a network, and retrieving medical imaging data from the identified storage systems prior to an examination of the patient.
In another embodiment, the invention is directed to a method comprising receiving a request for an asset; determining a global unique identifier (GUID) associated with the requested asset; examining routing information to identify storage systems within a network, issuing queries to the storage system to determine which storage systems have a local copy of the requested asset, wherein the queries include the associated GUID, and selectively retrieving one of the local copies of the requested asset.
In another embodiment, the invention is directed to a method comprising receiving user input defining routing information, generating a rule in Extensible
Markup Language (XML) format based on the routing information, storing the XML- based rule in a rule set, receiving a network communication comprising medical imaging data, assessing the XML-based rule based on at least a portion of the medical Imaging data, and routing the network communication based on the assessment of the XML-based rule.
The details of one or more embodiments of the invention are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of the invention will be apparent from the description and drawings, and from the claims.
BRIEF DESCRIPTION OF DRAWINGS FIG. 1 is a block diagram illustrating an example system for communication and storage of medical imaging data in accordance with the principles of the invention. FIG. 2 is a block diagram illustrating an example department having a number of medical imaging devices coupled by routers.
FIG. 3 is a block diagram illustrating an example embodiment of a router according to the principles of the invention.
FIG. 4 is a flowchart providing a high-level overview of the routing process. FIG. 5 is a flowchart illustrating the integration of routing and storage functionality to manage medical imaging assets within a medical imaging system. FIG. 6 is a flowchart illustrating a mode of operation in which a router uses routing information to facilitate the pre-fetching of storage assets.
FIG. 7 is a flowchart illustrating the integration of multiple medical imaging departments.
FIG. 8 illustrates a unique communication format for exchanging and interchanging data. FIG. 9 is a flow chart illustrating routing of assets according to routing information and an extensible markup language (XML) based rule set.
FIG. 10 illustrates an example user interface presented by a router by which an operator hierarchically defines routing logic and constructs a rule for a rule set. FIGS. 11-17 illustrates example user interfaces for reconciling errors within medical imaging data.
FIGS. 18-19 illustrate example user interfaces for managing patient information.
FIG. 20 illustrates an example display presented by such a tool for debugging and configuring a medical imaging environment.
DETAILED DESCRIPTION
FIG. 1 is a block diagram illustrating a system 2 for communication and storage of medical imaging data. In particular, system 2 includes a health care facility having a number of departments 6 interconnected by router 10. Each department 6 may include a number of medical imaging devices. Departments 6 may include, for example, medical modalities of different types, such as magnetic resonance (MR), computed tomography (CT), digital radiography (DR) or ultrasound. Each medical modality may have different imaging characteristics and features, and may generate substantially different patient data and associated medical images. Each department 6 may also include other medical imaging devices, such as a number of view stations for displaying and annotating medical images, an output device for printing the medical images, and a local archive for storing medical images.
In general, router 10 provides for seamless communication and distribution of medical images and other patient data between the medical modalities and other various medical imaging devices of departments 6. In particular, the medical modalities and other various medical imaging devices communicate medical imaging "assets" to router 10 for routing to other devices within system 2. As described in detail below, router 10 implements certain protocols and file formats to treat network communications as a self-describing "assets" that encapsulate medical imaging data. For example, a self-describing asset may include patient data, session data, study data, medical image data, private asset information, and the like. Router 10 provides additional interfaces to other systems including a Hospital Information System / Radiology Information System (HIS/RIS) 8 that stores patient data, and a central storage system 12 that provides a central repository for the storage of medical assets. Router 10 also provides for remote communication of medical imaging assets over network 14 to remote clinic 16 and, for example, a remote physician 18 wishing to remotely view medical assets. Network 14 may be any Local Area Network (LAN) or Wide Area Network (WAN) or may be a global network such as the Internet.
Although illustrated within a medical imaging enviromnent, many of the features and advantages of router 10 can be applied to a variety of environments, and to routing and data storage generally. For example, router 10 may be used in systems for managing assets generally, such as photographic assets, insurance information, billing and accounting information.
The medical imaging devices of system 2 communicate the assets over network 14 using a suitable network protocol. The medical modalities and other devices may, for example, exchange data and information using a data communications protocol developed by the American College of Radiology (ACR) and the National Electrical Manufacturers Association (NEMA) known as the Digital Imaging and Communications in Medicine (DICOM) protocol. Typically, the DICOM protocol may be implemented using TCP/IP connections between medical devices over a network, as illustrated in FIG. 1, or using a point-to-point communication medium.
As described in detail below, router 10 integrates routing, network management and storage functionality. Router 10, for example, receives assets and intelligently routes the assets to medical devices within system 2 in accordance with routing information. In addition, router 10 provides interfaces to storage systems by implementing, for example, a set of storage "classes" required by the DICOM protocol. In this manner, router 10 provides all functionality needed to seamlessly couple high-end imaging modalities and other medical devices directly to storage devices within a networked environment.
FIG. 2 is a block diagram illustrating an example department 6A having a number of medical imaging devices coupled to network 14 by department router 10A and facility router 10B in accordance with the principles of the invention. Department router 10A routes images locally between, for example, medical modality 24, view station 26, local archive 20, and output device 28. Facility router 10B couples department 6A to department 6B and network 14, which may be a private or public network.
As illustrated, routers 10 integrate multiple medical imaging departments 6. Each department 6 may, for example, comprise a different DICOM "domain" having a set of DICOM Application Entities (AEs), each having an AE Title. In this manner, routers 10 allow medical professionals to perform collaborative studies on images, even when the professionals may be in different facilities, even across the country. More particularly, router 10A provides DICOM CFIND and CMOVE services to department 6A, and may be configured with a single AE for modality 24. In addition, router 10A may be configured to search for storage assets on local archive 20. Router 10B may be configured to forward CFIND and CMOVE requests to remote locations, including router 10A, remote clinic 16, remote physician 18 and one or more routers within department 6B.
In one embodiment, routers 10 manage the bandwidth consumed by medical imaging data as assets are routed between departments 6 and network 14. Medical imaging data is inherently large compared with other network communications, such as electronic mail (email), that may also be present within system 2. To minimize any negative impact on the other network communications, routers 10 controls and "throttles" medical imaging communications.
More specifically, to facilitate bandwidth management, routers 10 present user interfaces by which an operator can limit maximum bandwidth consumption for medical imaging network communications. The operator may indicate, for example, that such communications should consume no more than 60% of the available network bandwidth. As each of routers 10 output network communications, the routers 10 monitor the rates at which outbound data packets are transmitted, and insert sufficient time delays between transmissions to ensure the available bandwidth is reserved.
Furthermore, the operator may define additional information for a "link" within system 2. Generally, a link may be any physical connection between two devices in a network. The operator may define, for example, times at which the link is available, or cost per megabyte of data on the link. In addition, router 10 may automatically detect the bandwidth of links to adjacent nodes within system 2, typically by requesting such information from an operating system, such as Windows™ 2000, or one or more device drivers. Based on this information, routers
10 may select particular links and schedule network communications to minimize cost.
FIG. 3 is a block diagram illustrating an example embodiment of router 10 according to the principles of the invention. In general, router 10 receives inbound network communication 32, often in the form of a storage asset communicated in one or more data packets, and forwards the network communication in accordance with routing information 34, which describes the topology of system 2. In particular, routing information 34 describes routes between the networked medical imaging devices within system 2. Although illustrated within a medical imaging environment for exemplary purposes, the techniques described herein are not so limited. Many of the features and advantages of router 10 can be applied to a variety of environments, and to routing and data storage generally.
With respect to medical imaging enviromnents that implement the DICOM protocol, routing module 36 may arrange routing information 34 to map DICOM "AENames" to default routes within system 2. Furthermore, routing information 34 may define a number of communication ports of the router, and within each port a set of acceptable AENames. This configuration can be particularly useful in enforcing security between medical imaging devices within the system 2. In addition, router 10 may support a number of unique Internet Protocol (IP) addresses. For each IP address, therefore, routing information 34 may define a number of ports, and a number of corresponding AENames. In this manner, routing module 36 arranges routing information 34 to provide access to the available AEs within one or more DICOM domains, thereby allowing router 10 to present a multiple AE interface to a DICOM domain with which medical imaging devices of system 2 can readily communicate.
Consequently, the AEName mapping supported by router 10 facilitates "collaborative" archiving in which requests are automatically forwarded to a number of appropriate destinations. In particular, router 10 maps an AEName and a type of request to a list of destinations within system 2. In one embodiment, routing information 34 includes two database tables to map a "called" AEName to a list of destinations. More specifically, routing module 36 maintains a "Basic Connection Information" table within routing information 34 to identify other devices within system 2 that need to receive a copy of an inbound asset. In one embodiment, the Basic Connection Information table contains the following Information:
• Called AE Name - A name used to uniquely target (restrict) access to specific destinations.
• Request Type - Designates the type of request - i.e. "Store, Query, or Move" o Type = Store (Transfer information to Archive (s) ) ■ List of routers to receive data on store requests from this request name. This may be a list of 1-n Router Names . o Type = Query (Transfer Query to Archive (s) )
" List of 1 to N routers to receive request information for a query request from this request name. o Type = Move (Transfer "Move Request" to Archive)
■ Router to request specific archive to retrieve data.
• HostName/IP address - Address used to form a connection to this Router. A zero in this field indicates that this router is a "Destination" for this data.
• Port Number - Port number used for connection to this router
• Encryption - Enumerated field with the type of encryption to be used on the connection. (i.e. Public/Private key encryption.)
• Compression - Enumerated field with the type of compression to be used in this connection.
In addition, a "Local Destination" table within routing information 34 stores the data necessary for router 10 to form connections with the other devices in the network. In one embodiment, the Local Destination table contains the following information: • Called AE Name - Name used to uniquely target (restrict) access to specific destinations.
• New Called AE Name (Used by the Storage SCU agent as the "Calling AE Name" . ) • Instance UID (To specifically identify an instance of an application running on the target SCP system. )
• HostName/IP address - Name/Address of the DICOM System to receive the data. (A 0 in this field indicates that the data is destined for an archive that is locally defined. • Port Number - Port number used to connect to the Locally (LAN) attached DICOM Device.
Router 10 may also maintain a set of rules 38 to further control routing of inbound network communications 32. Routing module 36 may use rules 38 to redirect a network communication to a different route, to evoke an additional action, such as deleting the data or reconciling the data, or to send the network communication to one or more additional destinations.
Consequently, router 10 may implement a two-tier routing system in which routing module 36 first examines destination information within an inbound network communication 32, and then applies rules 38 to the incoming data to determine the ultimate route(s). In this manner, routing module 24 may inspect at least a portion of the encapsulated non-pixel data before forwarding the asset to one or more destinations. Rules 38 may also be used to map or correct tagged data prior to routing. Router 10 may parse the incoming data, and use rules 38 to map a tag to a new meaning or format. A rule may be created, for example, to automatically reformat patient identifiers as received from a medical imaging modality. Furthermore, the rules may be used to selectively propagate or filter messages or particular commands, such as DICOM commands, along one or more specific routes. In one embodiment, routing information 34 describes each route as either "local" or "external." External routes may be further qualified as "direct" or "batch." A local route descriptor causes routing module 36 to route an inbound asset to local database 40. Conversely, an external route descriptor causes routing module 36 to route an asset to a networked device within system 2. Furthermore, a "direct" external route descriptor causes router 10 to immediately forward the asset to the destination. Router 10 waits until receiving an acknowledgement from the destination before sending an acknowledgement back to the source modality. In this manner, the asset is stored in multiple locations, and router 10 guarantees storage of the asset to the modality with a single acknowledgement. A "batch" descriptor for an external route, however, causes router 10 to store the asset locally and immediately acknowledges the source modality. At a later point in time, router 10 batch transfers the buffered assets to their respective destinations. This mode may advantageously increase patient throughput at the modalities.
Connection manager 42 receives storage asset of inbound network communication 32, typically from a medical modalities upon completion of an exam, and initiates the routing process of router 10. In particular, connection manager 42 listens to a well-known communication port for communications from any network device. Upon receiving a message from such a device, connection manager 42 immediately invokes two software modules, such as by instantiating two threads, for parallel processing the inbound storage asset. Connection manager 42 instantiates storage manager 44, which is responsible for receiving and buffering an incoming asset to local storage 49, and verification module 46, responsible for validating the non-pixel data encapsulated within the storage asset.
After invoking storage manager 44 and verification module 46, connection manager 42 directs the inbound communications to a new socket, and passes a handle to the socket to each of storage manager 44 and verification module 46. In this manner, storage manager 44 and verification module 46 receive data of an inbound asset in parallel, each processing selected portions of the asset. Consequently, router 10 may be able to achieve higher utilization of network bandwidth by ensuring that assets are quickly and efficiently retrieved from network 14. This is particularly advantageous in the medical imaging environment where the data portions can be significantly large. In one embodiment, storage manager 44 and verification module 46 make use of a ringtail buffer that stores data of the inbound asset as router 10 receives the from the network. The use of a single buffer allows verification module 46 and storage manager 44 to avoid multiple copies of the asset, which saves processing time, memory space, and can reduce errors and discrepancies. Storage manager 44 receives the asset, including tagged data and pixel data, and stores the asset to local storage 49 at a high rate. In one embodiment, storage manager 44 streams the incoming asset to a file located on a high-speed computer readable medium within the router, such as a hard disk. Verification module 46 receives and process the non-pixel data within the asset to verify and validate all syntactical and semantical information. Within a medical imaging environment, for example, verification module may verify and validate all syntactical and semantical information of the encapsulated patient information, session information, study information and image information. Verification manager 46 extracts non-pixel data associated with each image, and stores the non-pixel data in temporal database 40A, permanent database 40B, or both, thereby allowing an operator to retrieve the information during a subsequent examination. In one embodiment, temporal database 40A is configured to automatically prune assets after a period of time. Upon detecting missing or invalid data within an incoming asset, verification module 46 issues a reconciliation event 37 to patient manager 48, which provides for the reconciliation of medical imaging data, such as patient information, session information and the like. In one mode of operation, router 10 does not forward storage assets to destinations, such as central storage system 12, until the encapsulated data has been fully reconciled.
In one embodiment, verification module 46 maintains a DICOM dictionary within local database 40 for storing "private" (user-defined) DICOM tags that are defined by modalities and other devices within the system. When verification module 46 encounters a new private tag, verification module 46 collects and stores all pertinent information related to the private tag including, for example, a UID, a version, and a source for the tag. In this manner, router 10 builds the DICOM data dictionary in "real-time." Based on this information, router 10 can uniquely identify where the private tags originate.
Upon validation of the encapsulated data by verification module 46, routing module 36 examines non-pixel medical image data from message queues 41 , determines the appropriate route, and enqueues a network communication within output queues 48 for transmission to a destination by output interface 47. The queued outbound network communication contains pointers to corresponding non- pixel data within message queues 41 and portions of the pixel data stored on local storage 49. In this manner, routing module 36 may ready a storage asset for output communication, even prior to storage manager 44 writing the entire pixel data of the asset to the local storage 49. Consequently, router 10 may commence an outbound network communication 45 of an asset prior to receiving all of the asset data from inbound network communication 32. While outputting the communication to the network, output interface 47 uses the pointers to read the messages from message queues 41 and extracts the corresponding pixel data from the local storage 49 to form an outbound communication.
Furthermore, routing module 36 and output interface 47 are capable of sending storage assets to multiple destinations in parallel such that the assets are available when needed by medical professionals. If a particular doctor works in two hospitals and a clinic, for example, routing module 36 may route the assets generated from an examination to multiple devices at both hospitals and the clinic. Output interface 47 communicates the assets to the multiple destinations in parallel.
As discussed above, verification module 46 issues a reconciliation event 37 when encapsulated data of an inbound network communication 32 is invalid or missing. Upon receiving a reconciliation event 37, patient manager 48 examines routing information 34 to identify network destinations that may store relevant patient information, and queries the remote destinations in an attempt to automatically reconcile the data. Patient manager 48 may, for example, invoke HIS/RIS interface 39 to retrieve patient data from a remote HIS/RIS system 8. In this manner, patient manager 48 may leverage routing information 34 to identify the available data sources within the system 2. In addition, as illustrated below, patient manager 48 provides a user interface by which an operator can manually query the remote network resources and reconcile the non-pixel data within a storage asset, such as the demographical information for a patient.
Patient manager 48 performs a number of quality control functions in addition to reconciling data, including asset reprocessing, patient management, and prefetching assets prior to an examination of a patient. In general, the patient management functionality allows an operator to update patient information, delete a patient, or otherwise manage patient data stored within the local database or a master database. In addition, patient manager 48 facilitates system wide searching by leveraging routing information 34. By interacting with a user interface presented by patient manager 48, an operator can search local database 40 for images, or direct patient manager 48 to send search requests to other medical devices in accordance with routing information 34.
FIG. 4 is a flowchart providing a high-level overview of the routing process carried out by router 10. As described above, router 10 stores routing information 34 that describes routes between the networked medical imaging devices within system 2 (50), and stores a set of rules 38 to further control routing of network communications (52).
Upon receiving a network communication comprising one or more medical imaging assets (54), router 10 validates the encapsulated non-pixel medical imaging data (55) and buffers the pixel data to a local storage (56) in parallel. Upon validating the data, or upon reconciling and invalid or missing data (57), router 10 identifies destination information within the assets, and compares the non-pixel medical imaging data encapsulated within the assets to the set of rules 38 (58). Router 10 forwards the network communications in accordance with the destination information and the results of the comparisons (59). FIG. 5 is a flowchart illustrating the integration of routing and storage functionality to manage medical imaging assets within a medical imaging system. Upon receiving a new asset from a source modality (60), such as upon completion of an examination of a patient, router 10 queries central storage system 12 for a new global unique identifier (GUID) (61). Upon receiving the new GUID for the asset, router 10 forwards the asset to one ore more storage devices, such as a local archive 20 and central storage system 12 (62). In this manner, system 2 maintains unique global identifiers for each copy of a storage asset. This technique has many advantages, including simplifying routing assets between multiple storage systems and medical imaging devices. An operator, such as a physician, may periodically wish to view stored assets.
Upon receiving a subsequent request for the stored asset (63), router 10 examines routing information 34 to identify storage systems within system 2 (64). In other words, router 10 leverages routing information 34 to facilitate identification of potential locations within system 2 for a requested asset. Upon identifying the locations, router 20 queries the storage system to locate the requested asset (65). Router 10 may, for example, issue one or more "CFIND" commands to the storage systems to determine which storage systems are currently storing the requested asset, or copies thereof.
Because multiple copies of the asset may exist within system 2, one or more of the storage systems may respond to queries. Router 10 selects one of the storage systems based on a variety of criteria (66), including bandwidth of network connections between the storage systems and the requesting device, speed and type of media used by the storage system, and whether the requested asset is immediately accessible by the storage systems, or must be retrieved from an offline storage medium, such as tape. Upon selecting one of the storage systems, router 10 issues a move command to the selected storage system to move the requested asset to the requesting medical imaging device (67).
FIG. 6 is a flowchart illustrating a mode of operation in which router 10 uses routing information 34 to facilitate the pre-fetching of storage assets, thereby making the assets immediately available physicians and other operators. Router 10 may, for example, pre-fetch storage assets for a patient prior to a follow-up examination of the patient.
Typically, an operator will interact with the HIS/RIS system 8 and schedule an examination of a patient. In response, HIS/RIS system 8 will issue a scheduling event (70) through a standard communication protocol such as HL7. Upon receiving the event, router 10 examines routing information 34 (72) to identify available routes within system 2, and issues queries, such as CFIND commands according to the DICOM protocol, to locate the assets related to a particular patient (74).
After locating the assets, router 10 updates a pre-fetch schedule based on the locations of the assets, the scheduled time for the examination, and characteristics of the links within system 2 including availability and cost (76). In particular, router 10 may present a user interface by which an operator can identify and select the particular patient information to be pre-fetched prior to the examination. By interacting with the interface, the user can view patient information and schedule prefetching the corresponding assets.
At the scheduled time (78), router 10 initiates the cooperative pre-fetching and movement of the assets by issuing 1 to N move commands to move the assets from storage devices to the modality scheduled to perform the patient examination and imaging session (80). Typically, a batch move software module operating on router 10 examines the pre-fetch schedule, and moves the assets as needed to an appropriate temporal storage within one or more departments 6. In particular, router 10 selects the relevant assets to move in accordance with rule set 25. Router 10 may, for example, move a subset of the located assets based on the modality type, patient ID, examination area of a patient, and the like. In this manner, router 10 may not necessarily move all of the assets for a given patient, but only those assets relevant to the scheduled examination.
Router 10 performs similar operations upon receiving a CFIND request from another medical imaging device within system 10, such as another router. In response to receiving a CFIND request, for example, from another router, router 10 examines routing information 34 to map the designated AEName to a route, and then to one or more locations. Router 10 then issues CFIND requests to the identified locations in accordance with routing information 34 in order to locate all of the assets associated with a particular find request. During prefetching operations, router 10 enforces security and other policies to provide secure access to patient data.
FIG. 7 is a flowchart illustrating the integration of multiple departments 6 via router 10 in further detail. As described above, each department 6 may include a number of different types of devices including an archive manager, a clinical view station, and a number of imaging modalities. According to the DICOM protocol, proper communication with each of these devices requires a remote device to have knowledge of, and correctly use, a number of unique identifiers specific to the DICOM "domain" of each department. A DICOM compliant device may be identified by, for example, a unique identifier, a version, and an AETtitle. In order to facilitate communications with a variety of network devices, router 10 can operate in an emulation mode in which router 10 detects the identifiers, and translates inbound and outbound network communications to the department in accordance with the identifiers.
In particular, router 10 may establish a temporary connection, referred to as an "association" by the DICOM protocol, with one or more of the devices of the department (81), typically causing one of the devices to respond with a unique identifier (UID), a version number, an AETitle. Router 10 extracts the domain identifiers from the response (82) and builds a translation table for translating inbound and outbound communications from the department 6 (83).
Upon receiving an inbound or output network communication (84), router 10 parses the network communication and translates the encapsulated domain identifiers in accordance with the translation table (85). Upon translating the identifiers, router 10 forwards the network communication based on routing information 34 (86). In this manner, router 10 presents dual interfaces that map external identifiers to the assumed domain identifiers of a department or other medical imaging domain and, thereby, allows external devices to seamlessly communicate with the devices within the assumed domain. In other words, remote medical imaging devices need not know the specific domain identifiers of medical imaging devices within a department in order to communicate with the devices.
FIG. 8 illustrates a unique communication format 86 supported by router 10 for exchanging and interchanging data. In the illustrated embodiment, format 86 includes asset meta information 87A, medical imaging information 87B, pixel data 87C, thumbnail data 87D, patch data 87E, and error correction and detection information 87F
Header information 87A includes all routing information necessary for router 10 to route the asset within system 2. Medical imaging information 87B includes raw data received from the modality that describes the recent examination, including the patient information, session information, study information and image information. Medical imaging information 87B may include, for example, related DICOM tags and messages. Pixel data 87C includes the medical images generated by the examination, while thumbnail data 87D includes low-resolution versions of the images for quick display. Thumbnail data 87D contains data that router 10 has extracted from the pixel data 87C, and stored for quick access by view stations. This allows for the "pre- building" and retention of thumbnail data so that the data can be quickly retrieved and displayed.
Patch data 87E includes all modifications to medical imaging information 87B, which was originally generated by the source modality. In other words, the original data is not modified. Rather, the asset includes patch data 87E that stores all of the updated data and, in particular, a revision history including the date and time of the change, and operator that made the change. In other words, during the reconciliation process, patient manager 48 stores all updates and modifications of an asset within the patch data 87E of the exchange format 86. In this manner, exchange format 86 facilitates compliance with regulations that require change tracking and revision histories and furthermore, facilitates storages of the information within a single self-describing data asset.
When a view station presents the data to an operator, patch data 87E overrides the medical imaging 87B. However, the operator may always view the revision history and the original medical imaging data 87B. Error detection and correction information 87F, such as a cyclical redundancy check (CRC), includes additional data useful for detecting changes to data encapsulated by an asset, or errors during transmission. The following description provides further details an example file format 86 for use with DICOM storage assets. For use in a DICOM compliant environment, the contents of the header information 87A is defined to document ownership and version control, and to provide a mechanism to gain efficient access to other parts of the format. The contents may be as follows:
Version [25] - Documents the version of this File." Format VI.00" CopyRight [120] - Legal Statement identifying the ownership of this format . StartOfHeader - Offset from beginning of file to start of Header
(Normally 0) EndOfHeader - Offset from beginning of file to End of Header StartOfCommand - Offset from beginning of file to Start of DICOM
Command Data EndOfCommand - Offset from beginning of file to End of DICOM Command
Data StartOfData - Offset from beginning of file to Start of DICOM Data EndOfData - Offset from beginning of file to End of DICOM Data StartOfPixel - Offset from beginning of file to Start of Pixel Data EndOfPixel - Offset from beginning of file to End of Pixel Data StartOfThu bnail - Offset from beginning of file to Start of Thumbnail Data
EndOfThumbnail - Offset v End of Thumbnail Data
StartOfPatches - Offset from beginning of file to Start of Patch Data EndOfPatches - Offset from beginning of file to End of Patch Data DestinationAPTitle [DILIB_VR_LENGTH_AE + 1] - Called AE Name in DICOM Association (Target for Storage of this Image) ImageGUID [DILIB_GUIDLENGTH] - Image GUID within ADA Database SeriesGUID [DILIB_GUIDLENGTH] Series Folder GUID within ADA Database StudyGUID [DILIB_GUIDLENGTH] - Study Folder GUID within ADA Database PatientGUID [DILIB_GUIDLENGTH] - Patient Folder GUID within ADA Database ADASeriesToStudyGUID [DILIB_GUIDLENGTH] - Series to Study GUID within
ADA Database ADAStudyToPatientGUID [DILIB_GUIDLENGTH] - Study to patient GUID (Link) within ADA Database
Checksum - Checksum computed when data arrives at an archive Port - Port number used when data was transmitted TransferSyntax - Transfer Syntax used to transfer this data ApplicationContextName [DILIB_VR_LENGTH_PN + 1] - Application Name (If Present) of device that stored this data to an archive.
CallingAPTitle [DILIB_VR_LENGTH_AE + 1] - Calling AE Name used by calling device to create association CalledAPTitle [DILIB_VR_LENGTH_AE + 1] - Called AE Name used by calling device to create association RespondingAPTitle [DILIB_VR_LENGTH_AE + 1] - Responding AE Name when Association was internally generated. MaxPDU - Max PDU Size as negotiated on the Association. Result - DDL Result captured when Image Arrived ResultSource - DUL ResultSource captured when Image Arrived Diagnostic - DUL Diagnostic Value captured when Image Arrived CallingPresentationAddress [DILIB_VR_LENGTH_UI + 1] - Calling
HostName/IP address for association CalledPresentationAddress [DILIB_VR_LENGTH_UI + 1] Called HostName/IP address for association MaximumOperationsInvoked - Maximum Operations Invoked from association information MaximumOperationsPerformed - Maximum Operations Performed from association information CallinglmplementationClassUID [DICOM_UI_LENGTH + 1] - Implementation
Class UID of Calling Software - captured during Association
Negotiation Callinglmple entationVersionName [DILIB_MAXIMPNAMELENGTH + 1]
Implementation Name of Calling Software - captured during Association Negotiation
CalledlmplementationClassUID [DICOM_UI_LENGTH + 1] - Implementation
Class UID of Called Software - captured during Association
Negotiation Calledlmple entationVersionName [DILIB_VR_LENGTH_SH + 1] - Implementation Name of Called Software - captured during
Association Negotiation PeerMaxPDU - Max PDU for transmission to Peer Device - captured during Association Negotiation EsopLength - Extended SOP Length - captured during Association Negotiation
Medical imaging information 87B contains tags defined within the DICOM as "Group 0" tags. These tags are part of Command Request/Response information that must be present with each DICOM Message. Medical imaging information 87B may also contain DICOM data tags that defined within the DICOM Standard from Group 0002, Element 0000 through Group 7FE0 Element 0000. These tags are considered the "payload" of a DICOM compliant message and contain a wide range of information relating to the patient, physician, image characteristics, and the like. These tags may be saved within the a file and arranged as follows: <tag (group/element) > <Length> <Data>
<tag (group/element) > <Length> <Data> <tag (group /element) > <Length> <Data>
<tag (group/element) > <Length> <Data> Pixel data 87C contains the DICOM data tag group 7FE0 Element 0010 that designates the pixel data of the DICOM image(s). This tag and the corresponding pixel data are stored within pixel data 87C, which may be a "byte-for-byte" copy of the data as received by router 10 from an imaging modality. Patch data 87E may be arranged as follows:
<tag (group/element) > <Length> <DataXChange Timestamp><Operator>
<tag (group/element) > <Length> <Data><Change TimestampXOperator> <tag (group/element) > <Length> <DataXChange
Timestampxθperator>
<tag (group/element) > <Length> <DataXChange
Timestamp><Operator>
FIG. 9 is a flow chart illustrating routing of assets according to routing information 34 and an XML-based rule set 38. As described above with reference to FIG. 3, routing module 36 implements a two-tier routing scheme in which routing module 36 first examines destination information within a network communication, such as an AEName, and then applies rules 38 to the incoming data to determine the ultimate route(s). Advantageously, routing module 24 maintains the rule set in extensible Markup Language format (XML) by which the user can easily create a complex grammar for routing assets. For example, the user may create rules for routing assets based on patient ID, modality, referring physician and the like. In addition, the user may define any number of tags to control routing of assets by router 10.
Initially, router 10 presents a user interface by which a user defines a set of routing rules (90). In particular, the user interacts with the user interface to define a grammar and logic for a rule for routing assets within system 2. Based on the received input, router 10 generates a rule in XML format (91) and updates rule set 24 (92). Once router 10 has updated rule set 38, routine module 10 applies the XML- based rules to network communications. In particular, router 10 receives a network communication (93), such as an asset containing medical imaging data, assesses the rules of rule set 24 based on the network communication, and routes the network communication accordingly (94).
FIG. 10 illustrates an example user interface 95 presented by router 10 by which an operator hierarchically defines routing logic and constructs a rule for rule set 38. In particular, the operator can input a rule name 97, and hierarchically define specific data tags, 95, logical operators 98 and corresponding data values 99 for the rule as a complex grammar.
FIG. 11 illustrates an example user interface presented by patient manager 48 upon detecting errors within medical imaging data received from the various departments 6. In particular, user interface 100 displays a list of reconciliation events that have been generated by router 10 upon receiving and detecting mismatched or otherwise invalid data. In the illustrated example, interface 100 displays event list
102 having three events. For each event, interface 100 displays an identifier for the medical imaging tag corresponding to the data in error, a source medical imaging modality, an event identifier, a date and time of the event, a patient identifier, a study identifier, a series identifier, and an image identifier. For each event, the use may select and highlight the event and elect to view the properties of the event.
FIG. 12 illustrates an example user interface 104 displayed by patient manager 48 when the user elects to view the properties of a particular reconciliation event. In particular, user interface 104 displays the data associated with the event in hierarchical fashion. User interface 104, for example, displays patient data 106, study data 108, series data 110, and image data 112 that relate to the event. In addition, user interface 104 highlights the tag 114 for which patient manager 48 has identified missing or invalid data. Upon selecting the tag, user interface 104 displays window 116 by which the user can reconcile the data. In particular, the user may elect to edit the data directly, or search a number of resources within system 2, including a DICOM database storing medical imaging information, as well as an HIS/RIS database. Upon selecting one of the resources, patient manager 48 polls the selected resource and displays any identified relevant data in order to assist the operator in reconciling the missing data in the storage asset.
FIG. 13 illustrates an example user interface 120 displayed by patient manager 48 when the user elects to edit data element directly. During this process user interface 120 displays an edit window 122 within which the operator may enter the relevant data, thereby reconciling and clearing the event. After receiving the data from the operator, patient manager 48 verifies that the data has been entered in the correct format.
FIG. 14 illustrates an example user interface 124 displayed by patient manager 48 upon retrieving patient information from a network resource such as a DICOM database. In other words, patient manager 48 queries a network resource in order to identify and retrieve any relevant patient information that may assist the operator in reconciling the mismatched data of the current medical imaging session, and presents the information to the user. Upon viewing user interface 124, the operator may direct patient manager 48 to automatically update the missing or invalid data of the current medical imaging session. FIGS. 15, 16 and 17 illustrate similar user interfaces 126, 128, 130 displayed by patient manager 48 when the operator reconciles image information, series information and study information, respectively.
FIG. 18 illustrates an example user interface 132 displayed by patient manager 48 with which the operator interacts to batch process reconciliation events. In particular, user interface 132 allows the user to group similar events, i.e., events originating from the same imaging session in which similar data is mismatched. In this manner, the operator can reconcile common mismatched or invalid data, such as a misspelled patient name, and immediately correct and reconcile the data throughout all of the assets related to a common session.
FIG. 19 illustrates an example interface 134 displayed by patient manager 48. In particular, user interface 134 provides an interface to searching functionality and patient management functionality. The operator can enter a variety of search criteria within input area 136, directing router 10 to examine the routing information, identify remote storage devices within system 2, and retrieve patient information from the storage devices or other systems such as HIS/RIS system 14. Upon retrieving relevant patient information, user interface 134 allows the operator to manipulate and otherwise maintain the patient information including initiating a new study, editing an existing patient, deleting a patient, viewing relevant patient data, and merging a number of patients into a common patient information.
Router 10 includes tracing functionality to aid in configuring, debugging and testing a medical imaging system 2. In particular, upon enabling tracing, router 10 captures binary data received in an inbound network communication and stores the data locally prior to processing and forwarding the asset. The trace output can be "piped" into debugging tools running on a local workstation or other computing device, for simulation and debugging. In this manner, a remote technical service personnel can assist in the proper configuration of router 10 within a medical imaging system 2. FIG. 20 illustrates an example display 138 presented by such a tool, including the raw hexadecimal data as well as the raw data translated into DICOM commands.
Various embodiments of the invention have been described. These and other embodiments are within the scope of the following claims.

Claims

CLAIMS:
1. A method comprising: storing routing information mapping destinations to routes within a network; storing a set of routing rules; receiving a network communication comprising destination information and data; comparing at least a portion of the data to the set of routing rules; selecting a route from the routing information based on the destination information of the network communication and a result of the comparison; and forwarding the network communication according to the selected route.
2. The method of claim 1 , wherein the network comprises a medical imaging network and the network communication complies with the DICOM protocol, and further wherein storing routing information comprises storing routing information mapping Application Entity Names (AENames) to routes within the medical imaging network.
3. The method of claim 2, wherein selecting a route from the routing information comprises comparing an AEName defined within the network communication to the
AEName defined within the routing information.
4. The method of claim 1 , wherein the network communication complies with the DICOM protocol, and further wherein comparing at least a portion of the medical imaging data comprises: parsing the medical imaging data to identify a set of DICOM tags and corresponding data; and assessing a routing rule from the set of routing rules based on the DICOM tags and corresponding data.
5. The method of claim 1 , wherein storing a set of routing rules comprises storing an XML-based set of rules, wherein the rules conform to a user-defined grammar for routing the medical imaging data.
6. The method of claim 5, further comprising presenting an interface for receiving user input that defines the user-defined grammar.
7. A router comprising: a computer-readable medium storing routing information mapping destinations to routes within a medical imaging network, and storing a set of routing rules; and a routing module that selects a route from the routing information based on destination information of a network communication and a comparison of medical imaging data of the network communication to the set of routing rules.
8. The router of claim 7, wherein the routing information maps DICOM Application Entity Names (AENames) to routes within the medical imaging network.
9. The router of claim 7, wherein the routing module parses the medical imaging data to identify a set of DICOM tags and corresponding data, and assesses the routing rules based on the DICOM tags and corresponding data.
10. The router of claim 7, wherein the set of rules includes rules defined by the extensible Markup Language (XML), and which conform to a user-defined grammar for routing the medical imaging data.
11. The router of claim 10, further comprising a user interface for presenting an interface for receiving user input that defines the user-defined grammar and the rules.
12. A computer-readable medium storing data comprising routing information mapping destinations to routes within a medical imaging network, wherein the routing information maps DICOM Application Entity Names (AENames) to routes within the medical imaging network.
13. The computer-readable medium of claim 12, further storing a set of routing rules, wherein the set of rules includes rules defined by the extensible Markup
Language (XML), and which conform to a user-defined grammar for routing the medical imaging data.
14. A computer-readable medium having instructions thereon to cause a programmable processor to : store routing information mapping destinations to routes within a medical imaging network; store a set of routing rules; receive a network communication comprising destination information and medical imaging data; compare at least a portion of the medical imaging data to the set of routing rules; select a route from the routing information based on the destination information of the network communication and a result of the comparison; and forward the network communication according to the selected route.
15. The computer-readable medium of claim 14, wherein the network communication complies with the DICOM protocol, and further wherein the instructions cause the processor to store routing information mapping Application Entity Names (AENames) to routes within the medical imaging network.
16. The computer-readable of claim 15, wherein the instructions cause the processor to compare an AEName defined within the network communication to the AEName defined within the routing information.
17. The computer-readable of claim 16, wherein the instructions cause the processor to: parse the medical imaging data to identify a set of DICOM tags and corresponding data; and assess the routing rules based on the DICOM tags and corresponding data.
18. A method comprising: receiving user input defining routing information; generating a rule in Extensible Markup Language (XML) format based on the routing information; storing the XML-based rule in a rule set; receiving a network communication comprising medical imaging data; assessing the XML-based rule based on at least a portion of the medical imaging data; and routing the network communication based on the assessment of the XML- based rule.
19. The method of claim 18, wherein the user input defines a grammar for routing medical images within a medical imaging environment.
20. The method of claim 18, wherein the user input defines tags including a patient identifier, an imaging modality.
22. A method comprising: detecting medical imaging application information for a first domain within a medical imaging network; receiving a network message having a destination within the first domain; translating application information within the network message to the application information for the first network domain; and forwarding the network message to the destination.
23. The method of claim 22, wherein detecting medical imaging application information includes establishing a temporary association with a medical imaging device within the first domain.
24. The method of claim 22, wherein detecting the medical imaging application information includes detecting an Application Entity Title (AETitle), a DICOM version and a unique identifier (UID).
25. The method of claim 22, wherein translating the application information includes parsing data within the network message to identify the application information of network message.
26. A method comprising: receiving examination information for a patient; examining routing information within a network router to identify storage systems within a network; and retrieving medical imaging data from the identified storage systems prior to an examination of the patient.
27. The method of claim 26, wherein retrieving the medical imaging data comprises issuing move commands requesting the identified storage systems move the medical imaging data to a destination device.
28. The method of claim 27, wherein the destination device comprises a medical imaging modality.
29 The method of claim 26, wherein retrieving the medical imaging data comprises: scheduling a pre-fetch operation based on the exam information; and issuing move commands based on the scheduled pre-fetch operation.
30. The method of claim 29, further comprising issuing queries to the identified storage systems to locate storage assets relating to a patient.
31. The method of claim 30, wherein issuing queries comprises issuing CFIND commands according to the DICOM protocol.
32. The method of claim 30, further comprising selecting at least on of the storage systems based on characteristics of a network link between the selected storage system and a destination device.
33. A router comprising: a computer-readable medium storing routing information mapping destinations to routes within a medical imaging network; and a patient management module to receive examination information for a patient, and to retrieve medical imaging data prior to an examination of the patient based on the routing information.
34. The router of claim 34, wherein the patient management module examines the routing information to identify storage systems within the medical imaging network.
35. The router of claim 34, wherein the patient management module schedules a pre-fetch operation based on the examination information, and issues move commands based on the scheduled pre-fetch operation.
36. The router of claim 35, wherein the patient management module issues queries to the identified storage systems to locate storage assets relating to a patient.
37. The router of claim 36, wherein the patient management module issues
CFIND commands according to the DICOM protocol.
38. A method comprising: receiving a request for an asset; determining a global unique identifier (GUID) associated with the requested asset; examining routing information to identify storage systems within a network; issuing queries to the storage system to determine which storage systems have a local copy of the requested asset, wherein the queries include the associated GUID; and selectively retrieving one of the local copies of the requested asset.
39. The method of claim 38, further comprising: receiving a new storage asset from a medical imaging modality; and assigning the global unique identifier (GUID).
40. The method of claim 38, wherein selectively retrieving the requested asset comprises issuing a DICOM MOVE command to one of the storage systems.
41. The method of claim 38, wherein selectively retrieving the patient information comprises selecting one of the storage systems based on a characteristic of a connection between the storage system and a requesting device.
42. A method comprising: receiving a network communication including an asset having a pixel data and non-pixel data; storing the asset and validating the non-pixel data in parallel; and forwarding the storage asset upon validating the non-pixel data
43. The method of claim 42, wherein receiving a network communication comprises: storing the asset in a ringtail buffer while receiving the network communication; and instantiating a validation software module and a storage manager software module, wherein the validation software module and the storage manager receive the asset from the ringtail buffer in parallel.
44. The method of claim 42 further comprising: receiving the network communication with multiple software modules; and storing the asset and validating the non-pixel data with different software modules.
45. The method of claim 42, wherein the non-pixel data comprises medical data and the pixel data comprises medical images.
46. The method of claim 45, wherein the medical asset data comprises patient information, session information and study information
47. The method of claim 45, wherein validating the non-pixel data comprises syntactically and semantically validating a number of DICOM tags within the non- pixel data.
48. The method of claim 42, wherein validating the non-pixel data includes issuing a reconciliation event when the non-pixel data is invalid.
49. The method of claim 42, wherein storing the pixel data comprises buffering the storage asset to a local storage medium.
50. The method of claim 42, wherein forwarding the network communication upon validating the asset comprises initiating and outbound network communication prior to receiving all of the pixel data.
51. The method of claim 42, wherein receiving the network communication comprises receiving a number of packets from a network, and where storing the pixel data and validating the non-pixel data commences after receiving a first portion of the packets.
52. The method of claim 42, wherein forwarding the network communication comprises forwarding the network communication to a plurality of storage systems in parallel.
53. A method comprising: receiving a number of packets with multiple software modules listening to a single communication socket of a TCP/IP -based network, wherein the packets contain a storage asset having a pixel data and non-pixel data; selectively process the non-pixel data and the pixel data with separate software modules to store the asset and validate the non-pixel data in parallel as the packets are received; and forwarding the storage asset to a network destination upon validating the non- pixel data and prior to receiving all of the pixel data.
54. The method of claim 53, wherein the non-pixel data comprises medical data and the pixel data comprises medical images
55. The method of claim 54, wherein the medical asset data comprises patient information, session information and study information
56. The method of claim 55, wherein validating the non-pixel data comprises semantically and syntactically validating a number of DICOM tags within the non- pixel data.
57. A router comprising: a computer-readable medium storing routing information mapping destinations to routes within a network; and a storage manager software module that receives a network communication including an asset having a pixel data and non-pixel data, and stores the asset to a storage device; a validation software module that validates the non-pixel data in parallel with the storage of the asset; and a routing module that forwards the storage asset to a network destination in accordance with the routing information upon the validation of the non-pixel data.
58. The router of claim 57 further including a computer-readable medium buffering the network communication in a ringtail buffer, wherin the storage manager software module and the validation software module read the network communication from the ringtail buffer.
59. The router of claim 57, wherein the non-pixel data comprises medical data and the pixel data comprises medical images.
60. The router of claim 59, wherein the medical asset data comprises patient information, session information and study information
61. The router of claim 59, wherein the validation software module syntactically and semantically validates a number of DICOM tags within the non-pixel data.
62. The router of claim 57, wherein the validation software module issues a reconciliation event when the non-pixel data is invalid.
63. The router of claim 57, wherein the routing module forwards the network communication to a plurality of storage systems in parallel.
64. A method comprising: storing routing information mapping destinations to routes within a network; receiving a network communication comprising destination information and a storage asset; storing a plurality of outbound network communications in a plurality of queues, wherein the outbound network communications include references to the storage asset; selecting a plurality of routes from the routing information; and forwarding the network communications according to the selected routes in parallel.
65. The method of claim 64, wherein selecting a plurality of routes comprises selecting routes to a plurality of archive systems.
66. The method of claim 64, further comprising: storing a set of routing rules; comparing at least a portion of the data to the set of routing rules; and selecting a plurality of routes from the routing information based on the destination information and a result of the comparison.
67. The method of claim 64, wherein the network comprises a medical imaging network and the network communication complies with the DICOM protocol, and further wherein storing routing information comprises storing routing information mapping Application Entity Names (AENames) to routes within the medical imaging network.
68. The method of claim 67, wherein selecting a plurality of routes from the routing information comprises comparing an AEName defined within the network communication to the AEName defined within the routing information.
69. The method of claim 64, wherein the network communication complies with the DICOM protocol, and further wherein comparing at least a portion of the medical asset data comprises: parsing the medical asset data to identify a set of DICOM tags and corresponding data; and assessing a routing rule from the set of routing rules based on the DICOM tags and corresponding data.
70. The method of claim 64, wherein storing a set of routing rules comprises storing an XML-based set of rules, wherein the rules conform to a user-defined grammar for routing the medical asset data.
71. The method of claim 70, further comprising presenting an interface for receiving user input that defines the user-defined grammar.
72. A computer-readable medium having a storage asset therein comprising: a first data structure that stores asset meta information to control routing of the asset through a medical imaging network; a second data structure that stores medical imaging information received from a medical imaging modality; a third data structure that stores pixel data received from the medical imaging modality; a fourth data structure that stores patch data that includes modifications to the medical imaging information; and a fifth data structure that stores error detection and correction information.
73. The computer-readable medium of claim 72, wherein the medical imaging information includes patient information, session information, study information and image information.
74. The computer-readable medium of claim 72, wherein the medical imaging information includes DICOM tags and messages.
75. The computer-readable medium of claim 72, a fourth data structure that stores thumbnail data generated from the pixel data.
76. The computer-readable medium of claim 75, wherein the thumbnail data includes a low-resolution version of the pixel data and is generated by a router within the medical imaging network.
77. The computer-readable medium of claim 72, wherein the patch data includes, for each modification, a revision history having a date, a time, and an operator associated the respective modification.
78. The computer-readable medium of claim 72, wherein the error detection and correction information comprises a cyclical redundancy check (CRC),
79. A method comprising: storing routing information mapping destinations to routes within a network; receiving a storage asset comprising: (i) asset meta information, (ii) original medical imaging information received from a medical imaging modality, and (iii) patch data that includes modifications to the medical imaging information; selecting a route from the routing information based on the asset meta information; and forwarding the network communication according to the selected route.
80. The method of claim 79, wherein the storage asset further comprises pixel data received from the medical imaging modality.
81. The method of claim 79, wherein the storage asset further comprises error detection and correction information.
82. The method of claim 79, further comprising: storing a set of routing rules; comparing a portion of the medical imaging data or a portion of the patch data to the set of routing rules; and selecting the route from the routing information based in part on a result of the comparison.
83. The method of claim 79, wherein the asset meta information comprises a target Application Entitiy Name (AEName), and further wherein storing routing information comprises storing routing information mapping AENames to routes within the medical imaging network.
84. The method of claim 83, wherein selecting a route from the routing information comprises comparing an AEName defined within the network communication to the AEName defined within the routing information.
85. The method of claim 82, wherein the storage asset further comprises thumbnail data generated from the pixel data.
86. The method of claim 82, wherein the thumbnail data includes a low-resolution version of the pixel data and is generated by a router within the medical imaging network.
87. The method of claim 82, wherein the patch data includes, for each modification, a revision history having a date, a time, and an operator associated the respective modification.
88. The method of claim 83 , further including: updating the medical imaging information based on the patch data; and displaying the corrected medical imaging information on a diagnostic view station.
89. A router comprising: a computer-readable medium storing routing information mapping destinations to routes within a medical imaging network; and a routing module to route a storage asset comprising: (i) asset meta information, (ii) original medical imaging information received from a medical imaging modality, and (iii) patch data that includes modifications to the medical imaging information, wherein the routing module selects a route based on the asset meta information to the routing information.
90. The router of claim 89, wherein wherein the asset meta information comprises a target Application Entitiy Name (AEName), and further wherein the routing information maps AENames to routes within the medical imaging network.
91. A router comprising: a computer-readable medium storing routing information for destination within a network; a verification module to validate data of a network communication; a reconciliation manager that displays a user interface for reconciling any invalid data; and a routing module to forward the network communication to a destination according to the routing information.
92. The router of claim 91 , wherein the data comprises medical data, and the reconciliation manager comprises a patient manager.
93. The router of claim 92, wherein the medical imaging data comprises patient information, session information and study information
94. The router of claim 91 , wherein the verification module semantically and syntactically validates the data, and issues a reconciliation event to the reconciliation manager based on the validation.
95. The router of claim 91 , wherein the routing module forwards the network communication upon reconciliation by the reconciliation manager.
96. The router of claim 91 , wherein the verification module issues a reconciliation event to the reconciliation manager based on the validation.
97. The router of claim 96, wherein the user interface displays an event list listing reconciliation events received from the verification module.
98. The router of claim 96, wherein for each reconciliation event, the user interface displays an identifier for the corresponding invalid data, a source medical imaging modality producing the network communication, and a date and time of the event.
99. The router of claim 98, wherein for each reconciliation event, the user interface further displays, an event identifier, a patient identifier, a study identifier, a series identifier, and an image identifier.
100. The router of claim 98, wherein the user interface provides an input area by which an operator can edit the data of the network communication prior to forwarding the network communication.
101. The router of claim 91 , wherein the reconciliation manager queries the destinations of the network based on the routing information to reconcile the invalid data.
102. The router of claim 91 , further including a Hospital Information System / Radiology Information System (HIS/RIS) interface, and further wherein the reconciliation manager queries the HIS/RIS to reconcile the invalid data.
103. The router of claim 91 , wherein the reconciliation manager displays information received from the HIS/RIS for selection by a user.
104. The router of claim 91 , wherein the verification module maintains a database of tags defined by the data of the network communication.
105. The router of claim 104, wherein for each tag, the verification module stores a source medical imaging modality producing the network communication, and a unique identifier for the tag.
106. A method comprising: storing routing information describing routes within a network; receiving a network communication comprising data and destination information; identifying invalid data of the network communication; displaying a user interface for reconciling the invalid data; upon reconciling the data, forwarding the network communication according to the routing information.
107. The method of claim 106, wherein receiving a network communication comprises receiving a network communication according to the DICOM protocol.
108. The method of claim 106, wherein identifying invalid data comprises semantically and syntactically validating the data.
109. The method of claim 106, further including issuing a reconciliation event based on the identification.
110. The method of claim 109, wherein displaying a user interface includes displaying a list of reconciliation event.
111. The method of claim 106, wherein displaying a user interface includes displaying an identifier for the corresponding invalid data, a source medical imaging modality producing the network communication, and a date and time of network communication.
112. The method of claim 111, wherein displaying a user interface includes displaying a patient identifier, a study identifier, a series identifier, and an image identifier.
113. The method of claim 106, further including: receiving input from a user via the user interface; and updating the data of the network communication prior to forwarding the network communication.
114. The method of claim 106, further including: querying destinations of the network based on the routing information; and updating the data of the network communication based on responses to the queries.
115. The method of claim 114, wherein querying destinations of the network comprises querying a Hospital Information System / Radiology information System (HIS/RIS).
116. The method of claim 106, wherein receiving a network communication includes receiving a network communication according to the DICOM protocol, the method further including maintaining a database of DICOM tags defined by the data of the network communication.
117. The method of claim 116, further including storing in the database a source medical imaging modality producing the network communication.
118. A system comprising: router that receives network communications according to the DICOM protocol, and routes the network communication, wherein the router includes a tracing module to buffer the network communications to a computer-readable medium; and a debug software module executes on a computing environment to receive the buffered network communications from the router, wherein the debug software module displays data encapsulated by the network communications and corresponding DICOM commands.
119. The system of claim 118, wherein the network communications include assets having routing information, original medical imaging data, and patch data, and further wherein the debug software displays the assets in hexadecimal format as wells as corresponding DICOM commands decoded into an English-readable format.
PCT/US2001/023186 2000-07-25 2001-07-24 Routing and storage within a computer network WO2002009357A2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CA002416783A CA2416783A1 (en) 2000-07-25 2001-07-24 Routing medical images within a computer network
AU2001276028A AU2001276028A1 (en) 2000-07-25 2001-07-24 Routing and storage within a computer network
EP01953595A EP1303951B1 (en) 2000-07-25 2001-07-24 Routing and storage within a computer network
DE60109621T DE60109621T2 (en) 2000-07-25 2001-07-24 Routing and saving within a computer network

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US22058600P 2000-07-25 2000-07-25
US60/220,586 2000-07-25

Publications (2)

Publication Number Publication Date
WO2002009357A2 true WO2002009357A2 (en) 2002-01-31
WO2002009357A3 WO2002009357A3 (en) 2002-08-01

Family

ID=22824122

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2001/023186 WO2002009357A2 (en) 2000-07-25 2001-07-24 Routing and storage within a computer network

Country Status (6)

Country Link
US (4) US20020023172A1 (en)
EP (1) EP1303951B1 (en)
AU (1) AU2001276028A1 (en)
CA (1) CA2416783A1 (en)
DE (2) DE60109621T2 (en)
WO (1) WO2002009357A2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2196137A1 (en) * 2007-09-28 2010-06-16 Canon Kabushiki Kaisha Medical diagnosis support system
US8261067B2 (en) 2008-08-07 2012-09-04 Asteris, Inc. Devices, methods, and systems for sending and receiving case study files

Families Citing this family (90)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7885822B2 (en) * 2001-05-09 2011-02-08 William Rex Akers System and method for electronic medical file management
AU2001295942A1 (en) * 2000-10-18 2002-04-29 Arkray, Inc. Input assisting system
JP4144177B2 (en) * 2000-11-24 2008-09-03 コニカミノルタホールディングス株式会社 Radiation imaging system
JP3766033B2 (en) * 2001-04-25 2006-04-12 富士写真フイルム株式会社 Image processing method, apparatus, and program
US7171457B1 (en) * 2001-09-25 2007-01-30 Juniper Networks, Inc. Processing numeric addresses in a network router
US7418480B2 (en) * 2001-10-25 2008-08-26 Ge Medical Systems Global Technology Company, Llc Medical imaging data streaming
US7516198B1 (en) * 2001-10-30 2009-04-07 Cisco Technology, Inc. Arrangement for providing content-based quality of service for a service flow based on parsing XML tags detected from a server response to a client request
GB2382962A (en) * 2001-12-07 2003-06-11 Altio Ltd Data routing without using an address
US20030135556A1 (en) * 2001-12-14 2003-07-17 International Business Machines Corporation Selection of communication strategies for message brokers or publish/subscribe communications
US6950985B2 (en) * 2001-12-27 2005-09-27 Koninklijke Philips Electronics, N.V. Specifying DICOM semantic constraints in XML
DE10211950B4 (en) * 2002-03-18 2006-01-26 Siemens Ag A medical planning facility that can be subdivided into a planning medical system and a medical planable medical system
US7536644B2 (en) * 2002-06-27 2009-05-19 Siemens Medical Solutions Usa, Inc. Method and system for facilitating selection of stored medical images
DE10230878B4 (en) * 2002-07-09 2008-05-08 Siemens Ag Method and computer system for automatically processing studies of imaging examination systems
US7373596B2 (en) * 2002-08-01 2008-05-13 Koninklijke Philips Electronics N.V. Precise UML modeling framework of the DICOM information model
US7624158B2 (en) * 2003-01-14 2009-11-24 Eycast Inc. Method and apparatus for transmission and storage of digital medical data
AU2003902423A0 (en) * 2003-05-19 2003-06-05 Intellirad Solutions Pty. Ltd Apparatus and method
EP1629357A4 (en) * 2003-06-04 2008-02-06 Univ Pennsylvania Ndma scalable archive hardware/software architecture for load balancing, independent processing, and querying of records
CA2528492A1 (en) * 2003-06-04 2005-01-06 The Trustees Of The University Of Pennsylvania Ndma db schema dicom to relational schema translation and xml to sql query translation
AU2004252829A1 (en) * 2003-06-04 2005-01-06 The Trustees Of The University Of Pennsylvania NDMA socket transport protocol
DE10351317B4 (en) * 2003-10-31 2009-08-27 Siemens Ag Access method for a picture retrieval system in a client / server-based data transmission network, and image retrieval system
US8732332B2 (en) * 2003-11-19 2014-05-20 Alcatel Lucent Content switching with user-defined policies
US7526493B2 (en) * 2003-12-19 2009-04-28 Solace Systems, Inc. Meta-tagging in content routed networks
US7958225B2 (en) * 2004-02-12 2011-06-07 Avaya Inc. Method and apparatus for monitoring the transportation of medical images on a communication network
JP2005250856A (en) * 2004-03-04 2005-09-15 Fuji Photo Film Co Ltd Examination appointment method, server and program
WO2005098730A2 (en) * 2004-03-26 2005-10-20 Siemens Medical Solutions Health Services Corporation A system supporting exchange of medical data and images between different executable applications
US7801965B2 (en) * 2004-03-31 2010-09-21 Siemens Aktiengesellschaft Method and apparatus for processing data, and medical appliance system for processing data
US7810103B2 (en) * 2004-04-30 2010-10-05 Microsoft Corporation System and method for validating communication specification conformance between a device driver and a hardware device
JP4117889B2 (en) * 2004-11-08 2008-07-16 インターナショナル・ビジネス・マシーンズ・コーポレーション Computer and method for controlling communication for executing web application
US8156172B2 (en) * 2004-11-10 2012-04-10 Sap Ag Monitoring and reporting enterprise data using a message-based data exchange
US20060242144A1 (en) * 2005-03-24 2006-10-26 Esham Matthew P Medical image data processing system
EP1866780A4 (en) * 2005-03-30 2013-07-31 Welch Allyn Inc Communication of information between a plurality of network elements
JP2006285376A (en) * 2005-03-31 2006-10-19 Toshiba Corp Medical diagnostic device, medical network system, and control method of medical diagnostic device
US20070003050A1 (en) * 2005-06-15 2007-01-04 Ebling Maria R Method and system for call to role
US20070016686A1 (en) * 2005-07-13 2007-01-18 Hollebeek Robert J Retrieval system and retrieval method for retrieving medical images
US8554826B2 (en) * 2005-08-30 2013-10-08 General Electric Company Method and system for XML message based transactions on a medical diagnostic system
US20070101017A1 (en) * 2005-10-31 2007-05-03 Caterpillar Inc. System and method for routing information
US20070112796A1 (en) * 2005-11-17 2007-05-17 Jung Edward K Research in providing assistance related to health
US20070119928A1 (en) * 2005-11-17 2007-05-31 Jung Edward K Generating a nutraceutical request from an inventory
US20070112592A1 (en) * 2005-11-17 2007-05-17 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Payments in providing assistance related to health
US10042980B2 (en) * 2005-11-17 2018-08-07 Gearbox Llc Providing assistance related to health
US20070112589A1 (en) * 2005-11-17 2007-05-17 Searete Llc, A Limited Liability Corporation Of The State Of Delaware User interface for providing assistance related to health
US8532938B2 (en) * 2005-11-17 2013-09-10 The Invention Science Fund I, Llc Testing-dependent administration of a nutraceutical
US7853621B2 (en) * 2005-11-23 2010-12-14 Oracle International Corp. Integrating medical data and images in a database management system
US20080040460A1 (en) * 2006-06-29 2008-02-14 General Electric Company Method and system for communication
US9535912B2 (en) * 2006-09-15 2017-01-03 Oracle International Corporation Techniques for checking whether a complex digital object conforms to a standard
EP2074542A2 (en) 2006-10-04 2009-07-01 Welch Allyn, Inc. Dynamic medical object information base
US20080109367A1 (en) * 2006-11-02 2008-05-08 General Electric Company Method and apparatus for self-licensing data
US8307114B2 (en) * 2007-05-22 2012-11-06 International Business Machines Corporation High availability message transmission
WO2009009738A1 (en) * 2007-07-11 2009-01-15 Pharmaceutical Product Development, Lp Ubiquitous document routing enforcement
JP2009022368A (en) * 2007-07-17 2009-02-05 Toshiba Corp Medical image observation supporting system
US8850057B2 (en) * 2007-09-20 2014-09-30 Intel Corporation Healthcare semantic interoperability platform
US8156440B2 (en) * 2007-11-08 2012-04-10 Siemens Aktiengesellschaft User interface for a DICOM transfer configuration
US8935753B1 (en) * 2008-02-22 2015-01-13 Healthcare Interactive, Inc. Network based healthcare management system
US7899850B2 (en) * 2008-02-22 2011-03-01 Bycast, Inc. Relational objects for the optimized management of fixed-content storage systems
FR2931570B1 (en) * 2008-05-26 2010-07-30 Etiam Sa METHODS FOR CONVERTING MEDICAL DOCUMENTS, DEVICES AND CORRESPONDING COMPUTER PROGRAMS
US8082312B2 (en) * 2008-12-12 2011-12-20 Event Medical, Inc. System and method for communicating over a network with a medical device
US8898267B2 (en) * 2009-01-19 2014-11-25 Netapp, Inc. Modifying information lifecycle management rules in a distributed system
DE102009022681A1 (en) * 2009-05-26 2011-04-28 Siemens Aktiengesellschaft A method of communicating a communication request concerning a DICOM medical image
US8261033B1 (en) 2009-06-04 2012-09-04 Bycast Inc. Time optimized secure traceable migration of massive quantities of data in a distributed storage system
US8171094B2 (en) * 2010-01-19 2012-05-01 Event Medical, Inc. System and method for communicating over a network with a medical device
US8893120B2 (en) * 2010-01-29 2014-11-18 Howard Pinsky Controlled use medical applicaton
US10734115B1 (en) 2012-08-09 2020-08-04 Cerner Innovation, Inc Clinical decision support for sepsis
US11398310B1 (en) 2010-10-01 2022-07-26 Cerner Innovation, Inc. Clinical decision support for sepsis
US10431336B1 (en) 2010-10-01 2019-10-01 Cerner Innovation, Inc. Computerized systems and methods for facilitating clinical decision making
US20120089421A1 (en) 2010-10-08 2012-04-12 Cerner Innovation, Inc. Multi-site clinical decision support for sepsis
US8935431B2 (en) 2010-12-17 2015-01-13 International Business Machines Corporation Highly scalable and distributed data sharing and storage
US10628553B1 (en) 2010-12-30 2020-04-21 Cerner Innovation, Inc. Health information transformation system
US8949427B2 (en) 2011-02-25 2015-02-03 International Business Machines Corporation Administering medical digital images with intelligent analytic execution of workflows
US20120221346A1 (en) * 2011-02-25 2012-08-30 International Business Machines Corporation Administering Medical Digital Images In A Distributed Medical Digital Image Computing Environment
US9704207B2 (en) 2011-02-25 2017-07-11 International Business Machines Corporation Administering medical digital images in a distributed medical digital image computing environment with medical image caching
US9836485B2 (en) 2011-02-25 2017-12-05 International Business Machines Corporation Auditing database access in a distributed medical computing environment
WO2012150514A1 (en) * 2011-05-03 2012-11-08 Koninklijke Philips Electronics N.V. Method and system for image acquisition workflow.
EP4224329A3 (en) 2011-06-27 2023-10-04 Fisher & Paykel Healthcare Limited Data capture and routing system and method
US9779376B2 (en) 2011-07-13 2017-10-03 International Business Machines Corporation Dynamically allocating business workflows
US9104985B2 (en) 2011-08-17 2015-08-11 International Business Machines Corporation Processing system using metadata for administering a business transaction
US8856156B1 (en) 2011-10-07 2014-10-07 Cerner Innovation, Inc. Ontology mapper
US10140420B2 (en) * 2011-10-12 2018-11-27 Merge Healthcare Incorporation Systems and methods for independent assessment of image data
US9355120B1 (en) 2012-03-02 2016-05-31 Netapp, Inc. Systems and methods for managing files in a content storage system
US10249385B1 (en) 2012-05-01 2019-04-02 Cerner Innovation, Inc. System and method for record linkage
US10769241B1 (en) 2013-02-07 2020-09-08 Cerner Innovation, Inc. Discovering context-specific complexity and utilization sequences
US11894117B1 (en) 2013-02-07 2024-02-06 Cerner Innovation, Inc. Discovering context-specific complexity and utilization sequences
US10946311B1 (en) 2013-02-07 2021-03-16 Cerner Innovation, Inc. Discovering context-specific serial health trajectories
US9385935B2 (en) * 2013-03-06 2016-07-05 Microsoft Technology Licensing, Llc Transparent message modification for diagnostics or testing
US11581092B1 (en) 2013-08-12 2023-02-14 Cerner Innovation, Inc. Dynamic assessment for decision support
US10483003B1 (en) 2013-08-12 2019-11-19 Cerner Innovation, Inc. Dynamically determining risk of clinical condition
US10521559B1 (en) 2013-10-18 2019-12-31 Advanced Health Communications, L.L.C. Advanced healthcare information routing and delivery systems and methods of use and doing business
JP6494340B2 (en) * 2015-03-12 2019-04-03 サクサ株式会社 Communication apparatus and communication system
US10341415B2 (en) 2015-12-10 2019-07-02 Slingshot Technologies, Inc. Electronic information tree-based routing
CN109872801B (en) * 2019-03-11 2023-10-24 上海联影医疗科技股份有限公司 Information synchronization method, device, equipment and storage medium
US11730420B2 (en) 2019-12-17 2023-08-22 Cerner Innovation, Inc. Maternal-fetal sepsis indicator

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5517405A (en) * 1993-10-14 1996-05-14 Aetna Life And Casualty Company Expert system for providing interactive assistance in solving problems such as health care management
US5655084A (en) * 1993-11-26 1997-08-05 Access Radiology Corporation Radiological image interpretation apparatus and method
US5671353A (en) * 1996-02-16 1997-09-23 Eastman Kodak Company Method for validating a digital imaging communication standard message
WO1999001859A1 (en) * 1997-07-02 1999-01-14 Imige Incorporated Mobile telecommunication device for simultaneously transmitting and receiving sound and image data

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5231572A (en) * 1986-10-20 1993-07-27 Fuji Photo Film Co., Ltd. Radiation image storage and reproduction system
JP2543862B2 (en) * 1986-12-03 1996-10-16 株式会社東芝 Image data management system
EP0325384B1 (en) * 1988-01-15 1993-09-29 Quantel Limited Data processing and communication
US5105424A (en) * 1988-06-02 1992-04-14 California Institute Of Technology Inter-computer message routing system with each computer having separate routinng automata for each dimension of the network
EP0487110B1 (en) * 1990-11-22 1999-10-06 Kabushiki Kaisha Toshiba Computer-aided diagnosis system for medical use
US5465331A (en) * 1992-12-23 1995-11-07 International Business Machines Corporation Apparatus having three separated and decentralized processors for concurrently and independently processing packets in a communication network
US5642513A (en) * 1994-01-19 1997-06-24 Eastman Kodak Company Method and apparatus for multiple autorouter rule language
JPH085797A (en) * 1994-06-10 1996-01-12 Agfa Gevaert Nv System to supply processed radiograph picture to remote device
US6195465B1 (en) * 1994-09-21 2001-02-27 Ricoh Company, Ltd. Method and apparatus for compression using reversible wavelet transforms and an embedded codestream
US5740428A (en) * 1995-02-07 1998-04-14 Merge Technologies, Inc. Computer based multimedia medical database management system and user interface
US5778882A (en) * 1995-02-24 1998-07-14 Brigham And Women's Hospital Health monitoring system
US5835735A (en) * 1995-03-03 1998-11-10 Eastman Kodak Company Method for negotiating software compatibility
US5668998A (en) * 1995-04-26 1997-09-16 Eastman Kodak Company Application framework of objects for the provision of DICOM services
US6037940A (en) * 1995-10-20 2000-03-14 Araxsys, Inc. Graphical user interface in a medical protocol system having time delay rules and a publisher's view
US5886693A (en) * 1995-10-20 1999-03-23 Araxsys, Inc. Method and apparatus for processing data across a computer network
US6006191A (en) * 1996-05-13 1999-12-21 Dirienzo; Andrew L. Remote access medical image exchange system and methods of operation therefor
US5813972A (en) * 1996-09-30 1998-09-29 Minnesota Mining And Manufacturing Company Medical perfusion system with data communications network
WO1998024212A1 (en) * 1996-11-29 1998-06-04 Micromedical Industries Limited Telemedicine system
US5987345A (en) * 1996-11-29 1999-11-16 Arch Development Corporation Method and system for displaying medical images
US5883985A (en) * 1996-12-10 1999-03-16 General Electric Company Method for compensating image data to adjust for characteristics of a network output device
US5960201A (en) * 1997-03-17 1999-09-28 Tritech Microelectronics, Ltd Numeric intensive development environment
US5960085A (en) * 1997-04-14 1999-09-28 De La Huerga; Carlos Security badge for automated access control and secure data gathering
US5881225A (en) * 1997-04-14 1999-03-09 Araxsys, Inc. Security monitor for controlling functional access to a computer system
US5826835A (en) * 1997-11-24 1998-10-27 Learning Curve International, L.L.C. Toy vehicle switch track
US20040039606A1 (en) * 1997-12-01 2004-02-26 Andrew Loch Telemedicine system
US6032120A (en) * 1997-12-16 2000-02-29 Acuson Corporation Accessing stored ultrasound images and other digital medical images
US5971923A (en) * 1997-12-31 1999-10-26 Acuson Corporation Ultrasound system and method for interfacing with peripherals
US6252857B1 (en) * 1998-03-04 2001-06-26 At&T Corp. Method and apparatus for provisioned and dynamic quality of service in a communications network
US6260021B1 (en) * 1998-06-12 2001-07-10 Philips Electronics North America Corporation Computer-based medical image distribution system and method
US6065073A (en) * 1998-08-17 2000-05-16 Jato Technologies, Inc. Auto-polling unit for interrupt generation in a network interface device
US6598011B1 (en) * 1998-11-25 2003-07-22 Ianne Mae Howards Koritzinsky Medical diagnostic system services interface
US6424996B1 (en) * 1998-11-25 2002-07-23 Nexsys Electronics, Inc. Medical network system and method for transfer of information
US6574629B1 (en) * 1998-12-23 2003-06-03 Agfa Corporation Picture archiving and communication system
US7028182B1 (en) * 1999-02-19 2006-04-11 Nexsys Electronics, Inc. Secure network system and method for transfer of medical information
US6366683B1 (en) * 1999-03-16 2002-04-02 Curtis P. Langlotz Apparatus and method for recording image analysis information
US6762763B1 (en) * 1999-07-01 2004-07-13 Microsoft Corporation Computer system having a distributed texture memory architecture
US6532455B1 (en) * 1999-12-22 2003-03-11 Sequoia Software Corporation Method and system for content-based document security, routing, and action execution
US20010041991A1 (en) * 2000-02-09 2001-11-15 Segal Elliot A. Method and system for managing patient medical records
US7965408B2 (en) * 2000-05-19 2011-06-21 Cyrus Kurosh Samari Medical data recording system
US6678703B2 (en) * 2000-06-22 2004-01-13 Radvault, Inc. Medical image management system and method
US6661228B2 (en) * 2000-11-06 2003-12-09 Ge Medical Systems Global Technology Company, Llc Data transfer system in multi-server medical imaging systems
US6348793B1 (en) * 2000-11-06 2002-02-19 Ge Medical Systems Global Technology, Company, Llc System architecture for medical imaging systems
JP4250476B2 (en) * 2003-07-03 2009-04-08 キヤノン株式会社 Radiation image processing apparatus, radiation image processing method, computer program, and recording medium therefor

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5517405A (en) * 1993-10-14 1996-05-14 Aetna Life And Casualty Company Expert system for providing interactive assistance in solving problems such as health care management
US5655084A (en) * 1993-11-26 1997-08-05 Access Radiology Corporation Radiological image interpretation apparatus and method
US5671353A (en) * 1996-02-16 1997-09-23 Eastman Kodak Company Method for validating a digital imaging communication standard message
WO1999001859A1 (en) * 1997-07-02 1999-01-14 Imige Incorporated Mobile telecommunication device for simultaneously transmitting and receiving sound and image data

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
MANOLIS TSIKNAKIS, DIMITRIS KATEHAKIS, STELIOS C. ORPHANOUDAKIS: "Intelligent Image Management in a Distributed PACS and Telemedicine Environment" IEEE COMMUNICATIONS MAGAZINE, 1996, pages 1-21, XP002199640 Hellas, Greece *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2196137A1 (en) * 2007-09-28 2010-06-16 Canon Kabushiki Kaisha Medical diagnosis support system
EP2196137A4 (en) * 2007-09-28 2012-04-11 Canon Kk Medical diagnosis support system
US10068056B2 (en) 2007-09-28 2018-09-04 Canon Kabushiki Kaisha Medical diagnosis support system
US8261067B2 (en) 2008-08-07 2012-09-04 Asteris, Inc. Devices, methods, and systems for sending and receiving case study files

Also Published As

Publication number Publication date
DE60109621D1 (en) 2005-04-28
US20020028007A1 (en) 2002-03-07
US20020023172A1 (en) 2002-02-21
AU2001276028A1 (en) 2002-02-05
US20020038381A1 (en) 2002-03-28
EP1303951B1 (en) 2005-03-23
WO2002009357A3 (en) 2002-08-01
US7640171B2 (en) 2009-12-29
CA2416783A1 (en) 2002-01-31
EP1303951A2 (en) 2003-04-23
US20020035638A1 (en) 2002-03-21
DE60125414T2 (en) 2007-10-04
DE60109621T2 (en) 2006-01-19
DE60125414D1 (en) 2007-02-01

Similar Documents

Publication Publication Date Title
EP1303951B1 (en) Routing and storage within a computer network
US9961156B2 (en) Healthcare semantic interoperability platform
US20090177637A1 (en) Ndma db schema, dicom to relational schema translation, and xml to sql query translation
US8015256B2 (en) Method and apparatus for parallel sequencing of messages between disparate information systems
US20070124410A1 (en) Delivering Dicom Data
US20110106564A1 (en) Electronic medical records interoperability
EP1763812A2 (en) Generalized approach to structured medical reporting
US20090157837A1 (en) Ndma socket transport protocol
WO2002031743A1 (en) Method and system of managing the information for a hospital
US8775210B2 (en) Enterprise imaging worklist server and method of use
EP1351455B1 (en) Routing and storage within a computer network
CA2440730A1 (en) Reconciling assets within a computer network
KR20050000735A (en) Database based system for forming and transmitting Health Level 7 messages in real-time and method thereof
JP5148357B2 (en) Image data communication apparatus and image data communication system
CN113778560B (en) Method, system, equipment and medium for custom development and execution of hospital treatment process
US20040078226A1 (en) Medical data processing system
Yiu et al. Network management for picture archiving and communication systems
TW202336775A (en) Method and apparatus for clinical data integration
TW200422908A (en) DICOM processing server

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
AK Designated states

Kind code of ref document: A3

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

WWE Wipo information: entry into national phase

Ref document number: 2416783

Country of ref document: CA

WWE Wipo information: entry into national phase

Ref document number: 2001953595

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2001953595

Country of ref document: EP

REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

WWG Wipo information: grant in national office

Ref document number: 2001953595

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: JP