基于TCP/IP协议的多床位多参数中心监护系统
提 要:通信是中心监护系统所必须解决的主要问题之一。文中提出的中心监护系统,以TCP/IP协议为网络通信协议,以Windows NT4.0为平台,构成医院内部的Intranet监护网,并深入讨论了床边监护站与中心监护站的网络通信等问题,提出了基于TCP/IP协议的医用中心监护协议——HCMP用于传递监护数据,利用现有的通信子网,可以很容易地实现远程监护。
分类号:TP915.04 文献标识码:A
文章编号:1000-6974(2000)02-0067-06
Multi-bed & Multi-parameter Central Monitoring System Based on TCP/IP Protocol
LIAN Shi-jun HU Da-ke ZHAO Ming-he TANG Li-hui
(Institute of Life Science and Biomedical Engineering,Zhejiang University)
Abstract:Communication is one of the key problems to a central monitoring system.In this paper we put forward a central monitoring system using TCP/IP as the network protocol,Windows NT4.0 as the platform,forming a Intranet in a hospital.We also discussed the communication problem between the bed-side monitoring station and the central monitoring station in detail and then put forward a new protocol——Hospital Central Monitor Protocol (HCMP)based on TCP/IP to transfer monitoring data.It is easy to achieve tele-monitoring through the current communication subsystem.
Key Words:Bed-side monitoring;Central monitoring; Network; TCP/IP▲
中心监护系统是目前应用较广、功能较强、使用方便的辅助诊断设备,为大中型医院危重病房所普遍采用,目前监护系统一般采用专用器件,形成一个独立系统。这种系统往往造价昂贵,功能单一,不能进行远程监护,且不提供与外部系统的接口。随着计算机网络在医院的普及,医院各科室之间共享数据的要求将会越来越强烈。因此,在通用的微机系统上开发一套监护系统,不仅可以满足数据共享的要求,而且可以降低开发成本,或利用医院现有的微机、网络设备,根据实际需要灵活配置,使大部分中、小型医院也可以拥有自己的监护系统。
1 系统简介
1.1 设计原则:
● 充分利用先进的网络技术和可靠的工作平台,降低成本。
● 各床边监护仪既可独立工作,又可连成网络,构成医院的中心监护网。
● 通过现有的通讯手段,可以很方便地实现远程监护,无须修改程序,即远程监护站同本地监护站的地位是平等的。
● 不同的医院通过高速数据专线可以互相联网,构成更大的监护网。
基于以上设计原则,我们选择Windows NT为工作平台,选取TCP/IP协议为网络通讯协议,构成医院内部的Intranet监护网络。
我们的中心监护系统中有三种相对独立的工作站:床边监护站、中心监护站和中心诊断站。三种工作站用局域网相连,如果网络的拓扑结构为总线型,则系统结构如图1所示。
床边监护站一般位于病人床边,负责采集病人的生理参数。如果某种参数出现异常,则以各种形式报警(如发声、字体闪轹),提醒医务人员采取相应措施。同时保存各种数据。床边监护站可以单独使用,本地将保存24小时的数据,同时,通过ODBC接口,数据还可以保存到系统数据库上(如果有的话),用于查询及归档等。回放时,可显示任意时间段的波形。各类报警事件也将保存,医务人员可指定查看任意类的事件。床边监护站既可单独使用,也可加入监护系统中,作为网上的工作站,床边监护站还提供“它床观测”功能,该功能可以实现将别床的数据在本床显示。
中心监护站主要功能是便利于医生同时观察多个床边的情况。中心监护站根据医生设置,将各床边数据收集显示,如果有报警事件,通知值班人员。中心监护站可配置一台或多台。医务人员可根据需要选择观察多个床边的部分波形和参数,也可选择观察一个床边的所有数据。中心监护站可监护网上的任何床边监护站,但由于屏幕大小的限制,目前每个中心监护站最多同时显示8个床边的数据。
中心诊断站负责管理系统数据库,作一些后期的辅助诊断,同时提供病历生成等功能。医生还可以用软盘将数据拷贝出来,或打印病历等。
2 医用中心监护协议—HCMP
用TCP/IP协议传输实时监护数据是一次新的尝试,TCP/IP协议本不是为实时通信设计的,有些数据,尤其是波形类的数据如ECG,BP,PULSE等不仅要求有一定的实时性,而且对传输过程中的抖动(即相邻两个数据报之间的时间间隔不固定)要求较高,因此必须采取相应措施加以解决。
目前为止,尚无基于TCP/IP协议的标准应用层协议用于传输诸如ECG、BP、PULSE等数据,因此我们只能根据自己开发的中心监护系统定义一个协议——HCMP(Hospital Central Monitor Protocol),即医用中心监护协议。
在设计该协议时,我们既要考虑医用中心监护系统的特点,即中心监护站与床边监护与床边监护站须实时传输,但允许有一定的延时;又要考虑网络的负载与效率,因此采用定长数据报格式,并且采取“简洁至上”的原则来设计,使网络上尽可能地传输有用数据,同时考虑到系统的开放性,即将来很有可能增加数据种类,应该很容易地把新种类的数据加进HCMP中。
在中心监护系统中,要求数据实时显示,但中心监护站与床边监护站是在不同的地方,有3-4秒的延迟,医生感觉不出来,而且是可以忍受的;因此床边没有必要每采样一次就向中心发送一个数据,这样只能降低效率,增加网络负担,床边每隔1秒钟发送一次数据已经足够满足监护需要。
目前,我们的中心监护系统可以监护如下生理参数,见表1。
表1 监护系统中的主要检测单元
编号 检测单元 数据长度 采样速率
编号 检测单元 数据长度 采样速率
1 单道ECG(ECG) 1 250sps
2 双道ECG(ECG1/2) 2 500sps
3 三道ECG(ECG1/2/3) 3 750sps
4 Pulse(Pir,Pred) 1 25ps
5 Temp(Temp) 1 单次
6 NIBP((pd,ps) 2 单次
7 BP 2 单次
8 Resp(Resp) 1 10sps
根据表1可以计算出最多的数据是心电,每秒250个字节,其他数据加起来不到100个字节,可以用一个报文传输,因此数据报文定义如下:
2.1 数据报文:
数据报文长度固定为256字节,包括心电报文、复合报文两种,心电报文用于传递心电数据,包括ECG1,ECG2,ECG3.格式如下:
心电报文:
Type:T_ECG1,T_ECG2,T_ECG3
Length:数据长度,小于253。
复合报文:
复合报文主要用于传输数据量比较小的波形数据及参数,如RESP,PULSE,BP等,前半部分用于传输其余的波形数据:RESP,PULSE,BP。
复合报文从第128个字节开始,用于传输参数数据,数据类型占一字节,数据值占4字节。
2.2 控制报文
网络中除传输数据报文以外,还需要传输一些控制报文,以实现双方信息的交流。控制报文长度固定为256字节,控制报文有如下几种:
● ALL_DATA:中心发此报文,询问床边能提供的所有数据,格式如下:
床边对此报文的响应报文格式如下:
byDataKind是一个预先定义的BYTE型数组,标志各类参数和波形是否存在,如果存在,则byDataKind[i]为1,否则为0。
Len为数组长度,Len=Sizeof(byDataKind)
● DISP_DATA:用于他床观测,发送者发出此报文,询问床边正在显示的数据,
格式如下:
接收者对此报文的响应报文格式如下:
PatientID:病人ID,4字节整数。
WaitTime:中心收到第一个数据报以后,等待多长时间开始显示。
收者发出此报文后,即开始发送本床正在显示的所有数据。
● NEED_DATA:中心发此报文,告知床边中心所需要的数据,
格式如下:
床边对此报文的响应如下:
WaitTime:中心收到第一个数据报以后,等待多长时间开始显示。
同样以byDataKind的值来标注某种数据是否存在。
从上面的HCMP协议的数据报文格式可以看出,第一个字节用于标识数据类型,因此共可标识255种不同的数据类型(本来应该是256种,但被控制报文占去一种)。如果数据量比较小,还可以采用复合报文来传输,控制报文也是占单独一个字节,共可以有256种控制报文。因此可以容纳足够多的参数及控制消息,适应将来的监护需求。
2.3 传输层协议选择:TCP还是UDP
我们所定义的HCMP协议位于应用层,与FTP、SMTP、TELNET等协议处于同一层,因此,在传输层有两种协议供选择:TCP及UDP协议[1]。
TCP传送控制协议(Transmission Control Protocol),这是一种提供给用户进程的可靠的全双工字节流面向连接的协议。它要为用户进程提供虚电路服务,并为数据可靠传输建立检查。大多数网络用户程序使用TCP。
UDP用户数据报协议(User Datagram Protocol),这是提供给用户进程的无连接协议,用于传送数据而不执行正确性检查。
如果只考虑在某个医院内部建立一个监护网,那么UDP协议已经足够满足监护数据传输的需要,因为现在的局域网的传输介质已经非常好,即使不对数据执行正确性检查,其出错的概率也很小,而且,基于UDP协议的网络程序设计要相对简单些。但是如果考虑到远程监护以及将来不同医院的监护网的互联,UDP协议则不太合适,因为:
● 远程监护时通信线路较长,易受干扰而引起数据错误或丢失。
● 不同医院的监护网互联后,两个医院的监护网之间可能有许多条路由供选择,可能引起相邻数据报沿不同路由传输,从而导致接受方收到的数据与发送方发出的数据先后顺序不一致,这对诸如心电等波形数据来说是不能容忍的,容易引起误报警、误诊等事故。
因此,我们选择TCP协议作为HCMP协议在传输层的协议,它通过检错纠错、超时重发、滑动窗口等措施保证提供给用户进程可靠的全双工字节流,不会出现数据出错、丢失、收发顺序不一致等现象。
2.4 网络负载估算:
控制报文只是在通讯开始时发送一次,不会对网络负荷造成很大的影响,因此可以忽略不计。
从上面的数据报文格式可以看出:床边监护站所采集的所有数据共计4个256字节长的数据报。数据在网络中传递时,会经过层层打包,如图2所示:其中:TCP报头:20字节[2]:IP报头:20字节[2]。这样,一个床边监护站的全部数据都在网上传输时,每秒实际的最大数据量为:
4×(256+20+20)=1184字节
1184×8比特=9472比特
即每个床边监护站约占用10kbps的网络带宽,对于如果采用10Mbps的以太网,即使考虑50%的效率和余量,每个网段可容纳5M/10K=500个床边监护站。
以太网上500个站点同时工作,每秒传输1184字节的数据,其效率还是很高的,约在0.85左右,即使传输256字节,其效率仍可达0.6左右[2],实际上没有哪家医院会有500台床边监护站同时工作,而且,每个床并非把所有的数据都传到中心站,即使若干年后超过500台,也可以通过中间加网关增加网段,或采用如100M快速以太网,ATM等高速传输网加以扩充,程序不需要作任何改动,而现阶段10M以太网已经足够满足需要。
3 波形连续性的保证
要保证波形数据的连续性就是要克服TCP/IP协议的抖动性,在局域网上,抖动问题不是很明显,但对于远程监护,就必须加以认真考虑。TCP提供了面向连接的流式服务,连接建立后,发送端发送数据,接收端以同样顺序接收数据,但TCP协议并不对数据的实时性提供保证,这表现在它网络数据传输速率的波动,即TCP协议并不以恒定速率来传输数据,当网络繁忙时,传输速率会下降。表现在中心监护站上,波形显示将出现短暂的停顿,这是不允许的。为了避免这一问题的出现,我们在中心监护站中开辟出一定缓冲区,缓冲区设计成一个队列,采用先进先出机制,当数据到达时,并不是立即显示,而是先进入缓冲区。从床边来的数据源源不断的由一端进入,而中心监护站则以恒定速率从另一端取出。由于开始显示前一定时间的延迟,缓冲区内已经积累了一定量的数据,所以即使某一时刻的数据不能按时到达,也不会影响中心波形显示的平滑。
缓冲区大小不能随便开,大了医生会感到有明显的延迟,小了起不到缓冲作用。由于中心监护站与床边监护站允许有3-4秒左右的延迟,我们将缓冲区大小定为2秒,可以满足需要。
4 系统可靠性
对于一个医用系统来说可靠性是很重要的,虽然TCP/IP协议在低层提供了可靠的数据传输,但当网络出现突发性故障时,尚不能完全保证数据接收的正确性及系统的正常工作。比如:床边与中心建立连接后,在正常情况下,一方退出时,另一方将收到对方发送的关闭消息,从而关闭该连接,释放所占用的资源。如果由于某种原因(如:HUB故障或网线断开),一方断开而另一方却没有收到消息而依然保持连接状态。如果断开的是发送数据方,那么接收方将在原来的端口上继续等待,却无法收到数据,除非强行终止原来的连接并建立新的连接。如果断开的是接收方,其结果将导致发送方企图在一条并不存在的链路上发送数据,引发未知的系统错误。
这种故障的发生是随机的、不可预测的,当故障发生时,任何设计完美的软件及协议都无法保证正常的通讯过程。我们所能做的只能是:故障发生后,床边监护站及中心监护站必须在短时间内检测到故障,及时终止收发过程,并作好日志,通知网络管理员排除故障;故障排除后,能够迅速恢复到故障前的状态,进行正常的数据传递,无须人工干预。
无论什么原因引起的通讯异常,在发送方,表现为数据不能发送出去;在接受方,表现为收不到数据或收到无效数据,利用这一特点,我们很容易检测到通讯异常的发生,为此,在软件设计时借鉴了硬件电路设计中常用的“看门狗”技术,增加一监控函数,监视网络通讯。具体作法如下:
在接收方增加两个计数器count1,count2,分别统计收到的数据报数和无效的数据报数,每收到一个报文,如果是HCMP协议规定的报文,则count1加1,否则count2加1,监视函数每隔几秒钟(我们的程序中是8秒)检查count1及count2的值,检查后将它们清零。正常情况下count1的值应该是8,count2为零,如果count1小于5或count2大于5,则认为发生了网络故障,系统作好日志,并报警,同时断开连接,并尝试建立新的连接;这样,一旦网络恢复正常,中断了的通信可以在十几秒之内恢复,无须人工干预。
对于发送端,当发生网络异常时,其突出表现是发送不出数据,因此,当发送端在3秒内无法发送数据时,将关闭当前连接,但继续监听原端口,以接受新的连接请求。
采取以上措施后,经运行测试,系统运行良好、可靠,波形显示连续稳定,达到设计要求。
5 未来与展望—远程监护
远程监护作为远程医疗的一个重要组成部分之一,必将随着远程通信技术的不断发展而发展。我们所讨论的每一步,都为实现远程监护作了考虑,因此,只要远程通信网能保证每个站点至少10kbps的传输速率,实现远程监护是水到渠成的事。图1所示的结构图为一种简单可行的模式,远程中心或床边监护站通过电话线和MODEM连到拨号服务器上,进入监护网,现在的56kMODEM上行传输速率在42-56kbps之间,下行速率为33.6kbps[3],远大于10kbps,可以满足要求。
对于医院间的互联,可以参考Internet模型,用ISDN(综合业务数字网)或DDN(数字数据服务)专线,建立专门的远程监护网,只是价格要贵一些。另一个可以考虑的远程通信网是中国金卫医疗网以及Internet,但目前为止拥挤繁忙的Internet尚无法保证10kbps的传输速率和较小的时延抖动(小于1秒钟),既不能保证远程监护所需要的服务质量(QOS)。金卫医疗网尚在建设中,其带宽及时延要好于Internet,但在网络负载较重时也不能保证监护所需要的QOS,其原因是传统的TCP/IP协议(IPv4)根本不提供对QOS的保证。为使Internet能够更好地满足这些应用的需求,人们提出了许多新的协议,如RSVP(资源预约与保留协议)、RTP(实时传输协议)等[4][5],通过这些新的协议,建立连接前首先预约一定的资源如带宽、时延等,并由所经过的路由器得以保证,这样就可以满足远程监护的通信需求。TCP/IP协议的下一代——IPv6也提供了对QOS的支持,但要真正得到普及,还须得到广大网络硬件制造商及电信部门的支持。■
作者简介:廉世俊,赵明鹤,唐李卉,硕士研究生。
胡大可,副教授.
参考文献:
[1]蒋东兴、林鄂华.Windows Sockets网络程序设计指南.第1版.北京:清华大学出版社,1995.5~6
[2]Andrew S.Tanenbaum.Computer Networks.Third Edition.北京:清华大学出版社,1997.413,526,285
[3]陈小平、史烈.几种宽带接入网技术介绍.计算机与通信.1998.9∶1~4
[4]潘建平、顾冠群、沈苏彬.高速集成服务分组网络支持多媒体应用的通信服务和协议.电信科学.1997.13(7)∶10~15
[5]虞勇超.IP技术——未来通信网络基础.计算机与通信.1998.7∶1~4
- 两性
- 男人
- 女性
- 母婴
|
· 处女座的特点 · 处女座最佳配对星座 · 2010年处女座运势 · 处女座女人的爱情 · 如何追处女座女人 · 处女座女人的特点 · 处女座女人 · 处女座男人喜欢的女人 · 如何对付处女座男人 |
|
· 怎样看待遗精 · 什么是滑精 · 什么是梦遗 · 什么是干燥性闭塞性龟头炎? · 前列腺炎检查 · 包皮手术过后多久可以性生活 · 早泄是不是跟包皮过长有关? · 早泄等于射精过快吗? · 体外射精有什么害处 |
|
· 女性经期切记将绿茶挡在门外 · 生命中的一次婚外恋 · 一个流氓和妓女的故事 · 最唯美的10首中国情诗 · 娇妻玩合租 结果引火烧身 · 男人必须了解女人的一些事 · 当女朋友被领导叫去陪酒 · 易让男人退避三舍的10类女人 · 老男人为什么招小女人的喜欢? |
|
· 春季合理喂养婴儿健康指南 · 如何正确使用空调保证健康 · 让宝宝接受保姆的三大招 · 哪些产妇需做会阴侧切 · 导致分娩时难产4因素 · 看美国准妈人性化孕产经历 · 准妈妈如何预防春季感冒? · 胎盘和脐带的功能与重要性 · 烟、酒和咖啡对胎儿的影响 |