软件定义网络的发展及其在医院网络中的应用

周晨烁,魏德健,曹慧

山东中医药大学 理工学院,山东 济南 250355

[摘 要]随着网络技术的发展,医院的网络系统也趋于复杂,主要存在管理困难、安全性低、更新复杂等问题。软件定义网络(Software Defined Network,SDN)通过使数据平面和控制平面分离,提高了网络的灵活性和扩展性,把SDN应用到医院网络中能很好的解决医院网络的问题。因此,本文首先对SDN体系进行了简单的介绍,包括SDN的基本体系与关键组件。其次,结合国内外的研究进展,本文综述了SDN在医院网络中的应用现状,并总结了医院网络现存的问题以及解决办法。最后,本文对未来SDN在医院中的应用做出了展望。

[关键词]软件定义网络;OpenFlow交换机;医院网络;网络安全;SDN控制器

引言

现如今,网络已经成为医院、商业、家庭、学校等地方的一个重要基础设施。传统的网络结构较为僵化,由大量的网络硬件设备组成,如路由器、交换机、防火墙等,这些设备都具有许多复杂的协议,控制平面和数据平面都紧密耦合在这些网络设备上[1],网络工程师需要配置策略来应对各种网络事件和应用场景,而他们只能通过非常有限的工具来完成这些复杂的任务。因此,网络管理控制和性能调优具有很大的挑战性并且出错率较高。

另一方面,现在网络更新换代非常快,更换大量硬件会耗费许多时间和精力,而如果能用软件来定义网络,只需要升级软件就能完成对网络的更新,所以为了解决现有网络的僵化问题,软件定义网络(Software De fined Network,SDN)技术应运而生。2006年,SDN诞生于美国GENI项目资助的斯坦福大学Clean Slate课题[2],以斯坦福大学Nick McKeown教授为首的研究团队提出了OpenFlow的概念,用于校园网络的试验创新,后续基于OpenFlow给网络带来可编程的特性,SDN的概念被提出。Clean Slate项目的最终目的是要重新配置互联网,仅仅改变设计并不能满足当前发展,且难以进化发展现有的网络基础架构。

2009年,SDN概念入围Technology Review年度十大前沿技术[3]。2011年,在Nick Mckeown教授等人的推动下,开放网络基金会(Open Networking Foundation,ONF)[4]成立,ONF主要引导最新的SDN的研究,致力于推动SDN架构、技术的发展工作,规范SDN架构的关键元素如OpenFlow等。这种新型的网络架构将网络把数据平面与控制平面分离开来,数据平面主要负责数据的转发,而控制平面负责制定相应的转发规则并指导数据平面。通过使流量和接口具有编程性,SDN网络可以比传统网络更加的灵活和有效。把SDN应用到医疗系统中,医院或其他机构的网络系统能获得前所未有的可编程性、自动化和网络控制,也使他们能够构建高度可伸缩的、灵活的网络,迅速适应不断变化的业务需求。本文先介绍了SDN的结构及组成,然后探讨了其在医院网络中的应用,最后对SDN的发展做出了展望。

1 SDN体系

有研究者对SDN的整体结构做出了具体的调查研究[5-7]。目前主流SDN技术是以OpenFlow为基础的,OpenFlow是第一个专门为SDN所设计的标准化接口,它能提供高性能和细粒度的流量控制。

1.1 SDN的基本结构

SDN的基本结构主要分为3层:最上层是应用层,中间是控制层,最下层是基础设施层,SDN的框架,见图1[6]

图1 SDN的框架

应用层包括各种不同的业务和应用;控制层包含SDN控制器,主要负责处理数据平面资源的编排,维护网络拓扑、状态信息等;基础设施层负责基于流表的数据处理、转发和状态收集,由网络元素和装置组成,包含了特定的转发平面抽象。在此结构中网络信息被集中在SDN控制器的软件上,控制器可以维护网络的全局视图。应用SDN,企业和运营商可以获得独立于供应商的一个单一逻辑点来控制整个网络,从而大大简化了网络设计及操作。同时,SDN也简化了网络设备本身,因为它们不再需要处理成千上万的协议标准,只需要SDN控制器的指令就可以了[7]

除了这3大层面,SDN的整体结构中还包含两个接口[8]:北向接口和南向接口。连接控制层与应用层的是北向API(Application Program Interface)接口,它是应用层上各种业务的运营商控制网络的渠道,运营商能以软件编程网络的形式调用网络资源,同时它也是控制器向上层业务应用开放的接口,通常称为开放的API接口,SDN向上提供网络资源,上层网络的业务应用可以通过北向接口控制整个网络资源的状态。连接控制层与基础设施层的是南向接口,ONF在SDN的南向接口上定义了开放的OpenFlow协议,允许交换机与控制器间的通信,南向接口除了OpenFlow,还有ForCES[9]、POF[10]、OpenState[11]等。

1.2 SDN的关键组件

SDN的关键组件有两个:一个是OpenFlow交换机;另一个是SDN控制器。

1.2.1 OpenFlow交换机

OpenFlow交换机是基于以太网的交换机,它内部带有流表和一个用来增加或删除流条目的标准化接口。OpenFlow交换机负责数据的转发,主要由3部分组成:流表、安全信道和OpenFlow协议[12]

流表告诉交换机如何产生流量;安全信道是连接交换机与控制器的接口,可以使指令和数据包在控制器与交换机之间传送;OpenFlow协议则是提供控制器与交换机的交流方法,用来描述控制器和OpenFlow交换机之间交互信息的接口标准。它们之间的关系是交换机运行OpenFlow协议,基于流表转发数据,并通过安全信道连接控制器。每个流表由很多流条目组成,它由头域、计数器和操作组成。头域有10个元祖,是流条目的标识,计数器用来收集不同流的统计信息,操作可以将数据包转发到指定的端口,头域用作流表的查找,当每个数据包匹配到流条目时,计数器就会随之更新。

1.2.2 SDN控制器

控制器可以添加或 移除流表的流条目,它是SDN的核心,负责对底层网络设备的统一控制,访问底层设备的所有资源,当传入的数据包在交换机上和一个流条目相匹配时,交换机会更新计数器并应用相应的动作,如果数据包没有匹配到流条目,它将会被送到控制器去处理。对于不同的业务,控制器也会给不同的业务给予不同粒度的访问权限,从而对流进行不同程度的处理,实现对流的操作。

NOX是斯坦福大学在2008年提出的最早的OpenFlow控制器,它有C++和Python这两种语言,相比早期版本的NOX,现在的NOX由于增加了多线程的支持,其性能得到极大的提升[13]。控制器提供相应的编程接口,开发人员可以使用C++或者Python语言在这些接口上实现自己的应用。NOX整体结构是由一组OpenFlow交换机,一个运行NOX控制器的服务器和一个包含整个网络视图的数据库组成,NOX软件在这些服务器上运行,它可以构建网络视图,并且决定是否转发流量,如果转发流量,然后决定选择哪个协议。NOX的网络视图包括交换层面的拓扑结构,用户位置,主机和其它网络元素,还有一些所提供的服务。

目前,控制器除了NOX还有Maestro[14]、Beacon[15]、Onix[16]等,但应用最广泛的还是NOX。在应用NOX的OpenFlow中,OpenFlow是操作实体,NOX是控制核心,能对网络进行更好的管理,为OpenFlow网络提供通用的API基础控制平台。

2 SDN在医院网络中的应用

2.1 国内医院网络现状

国内医院的网络大体分为两块,分别是内网和外网[17]。内网主要是完整的医疗信息系统,它是医院网络的核心,包括医院信息系统、实验室信息管理系统、医学影像存档与通讯系统和放射信息管理系统。内网是承载医院信息化业务应用系统的网络,为医疗系统提供基本的网络环境,是关键业务网络。外网是指一般的互联网,是为医护人员、患者提供互联网接入服务的网络,用于浏览网页和资料查询等,它是非关键业务网络。医院的内外网有两种模式,分别是内外合一和内外分离[18],这两种模式都有各自的优缺点。内外网合一是指医院的内网和外网被设为一个整体,这一整套网络包含着医院的医疗信息业务,同时为工作人员和病人提供互联网接入服务。它的优点是网络建设方便,不需要复杂的设施,防火墙等设备也不用分开布置,节约成本,进行维护维修时也比较方便。但同样的它的缺点也比较明显,因为与外网合并,内网存在的网络信息安全风险要比单一的内网大许多。内外网分离指的是内网与外网作为两套网络相互独立的存在,分别提供各自的服务,两套网络都有自己的交换机、路由器等设备。这种模式最大的优点就是保护了医院数据信息的安全,内网只供本院工作人员及医护人员使用,外人无法访问此网络。缺点是独立建设两套网络成本开销增加,路由器等关键设备得分别配备,后期维护也比另一种模式更为复杂。

因为医疗数据信息需要极大的保护,目前国内大部分医院采用的是内外网分离模式,内网仅供本院的医护工作人员使用。但由于移动医疗的发展,网上挂号、远程会诊等技术的出现,医院网络还需考虑病患等外部人员的接入,整个网络的接入情况随之变得复杂,安全问题也变得极其重要。国内医院对网络安全问题作出了相应的解决措施,如虚拟局域网(VLAN)划分[19],按地理位置业务功能等进行VLAN划分,并控制它们之间的访问;引入CA认证服务[20],在医院信息系统内实现数字签名服务,对医疗数据进行加密、认证,加强了信息安全;引用虚拟化技术[21],应用了虚拟化的网络系统,数据信息不经过授权是无法访问的,确保数据的安全性。此外,医院网络趋于复杂,也就越来越难管理,会出现网络连接故障和网络堵塞等问题[22]。医院设备不断更新补足,新设备连接到网络需要进行复杂的设置和重新布线[23],增加了管理工作量也提高了成本。

2.2 医院网络问题的解决方法

综合以上问题及解决措施,把SDN应用到医院网络,是解决医院网络问题的一个很好的方法(图2)。

图2 应用SDN的医院网络

在此结构中,每个科室部门都可以创建自己的虚拟局域网络(Virtual Local Area Network,VLAN),对科室进行基于端口的VLAN划分,由于一个端口就是一个独立的局域网,所以当数据在网络中传输的时候,交换机就不会把数据包转发给其他的端口,如果用户需要将数据发送到其他的虚拟局域网中,就需要先由交换机发往路由器,再由路由器发往其他端口,这样就对数据信息加强了保护。整个网络基础设施可以形象化,加强了网络的管控和监控,给医院网络带来高度的灵活性和安全性。在新设备进行连接时,OpenFlow交换机能应用适当的协议,不必进行复杂的设置,实现了连接的通用性,简便了设备更新时所带来的问题。

2012年,日本的Kanazawa University Hospital在他们医院新建的临床科室和教员室内引进了SDN网络,作为医院的内部局域网,OpenFlow交换机和控制器由NEC公司所提供,此外,NEC公司还在Nagoya City University Hospital及Keio University Hospital这两家医院内应用了SDN网络[24]。在国内,华为公司是第一个提出把SDN应用到医院网络中的公司,他们设计了敏捷网络[25-27],在医疗机构的有线、无线、外网3张网上面增加了敏捷控制器,控制器的出现将网络的管理和数据转发分层,控制器能够管理全网的设备,所有的网络虚拟成一台超级交换机,接入层的交换机零配置部署。敏捷网络能够为不同的用户、不同的设备、不同的接入地点定制不同的接入权限、带宽、服务质量等。华为敏捷网络已应用于国内多家三甲医院,并不断推动创新,为医疗卫生事业提供更好的解决方案。

SDN在医院网络的应用综合了内外网合一与分离两种模式的优点,它提升了医院网络的灵活性和安全性,在逻辑上实现了网络的集中控制与管理。我们对它作出以下两方面的展望:一方面SDN将会提高硬件资源效率,运营商可以部署通用的硬件和软件来代替传统的价格昂贵的设备,对网络进行更新换代时也不必进行大量的硬件设备的升级,这样可以节省运营商的一大笔开销并提高效率;另一方面SDN将会提高服务的灵活性,用软件来定义服务,控制层与数据层的分离,使网络能够灵活的提供各种服务。但随着应用范围的不断扩大和网络流量的增加,网络拥塞、带宽不足等问题也会随之出现,这将降低医疗应用的质量。国内SDN技术还处于初级研究阶段,同时医院的数字化也不够普遍,所以使SDN广泛的应用于医院网络还需要一定的时间。

3 总结与展望

无论在校园、企业、医院网络中,SDN技术的广泛应用都给我们的生活带来许多便利,它是一种新兴的网络架构,它的集中控制和软件编程特性给网络带来巨大的变革,但由于SDN技术发展不久,很多方面都需要完善提高,如OpenFlow协议的完善、传统网络与SDN网络的共存问题等等。SDN在医院网络中的成功应用,也使得它在医疗的发展中有着光明前景,不过目前SDN在医疗系统中还没有形成统一的规范,SDN如果想广泛的应用到医院网络,也有许多要改进的地方,如网络安全、可兼容性、可扩展性等问题。我们要发挥好SDN的优势,不断提高它的安全性和灵活性,使其更好的在医院网络中发展。

[参考文献]

[1] Pan J,Paul S,Jain R.A survey of the research on future internet architectures[J].IEEE Commun Mag,2011,49(7):26-36.

[2] Feamster N,Rexford J,Zegura E.The road to SDN: an intellectual history of programmable networks[J].Comput Commun Rev, 2014,44(2):87-98.

[3] MIT Technology Review.10 breakthrough technologies, TR10: Software-defined networking[EB/OL].(2009).http://www2. technologyreview.com/article/412194/tr10-software-definednetworking/.

[4] Gitta MC.Open Networking Foundation[M].Menlo Park, California2012.

[5] Lara A,Kolasani A,Ramamurthy B.Network innovation using OpenFlow: A survey[J].IEEE Commun Surv Tut,2014,16(1):493-512.

[6] Nunes BAA,Mendonca M,Nguyen XN,et al.A survey of software-defined networking: Past, present, and future of programmable networks[J].IEEE Commun Surv Tut,2014,16(3): 1617-1634.

[7] Jarraya Y,Madi T,Debbabi M.A survey and a layered taxonomy of software-defined networking[J].IEEE Commun Surv Tut, 2014,16(4):1955-1980.

[8] Fundation ON.Software-de fined networking: The new norm for networks[J].ONF White Paper,2012,2:2.6-6.1.

[9] Casado M,Foster N,Guha A.Abstractions for software-de fined networks[J].ACM,2014,57(10):86-95.

[10] Azodolmolky S.Software De fined Networking with OpenFlow[M]. Birmingham:Packt Publishing Ltd,2013.

[11] Khasnabish B,Haleplidis E,Ed JHS.Forwarding and control element separation (ForCES) logical functional block (LFB) subsidiary management[J].Blood,2015,95(4):31-34.

[12] Song H.Protocol-oblivious forwarding: unleash the power of SDN through a future-proof forwarding plane[A].ACM SIGCOMM Workshop on Hot Topics in Software Defined NETWORKING[C].New York:ACM,2013:127-132.

[13] Bianchi G,Bonola M,Capone A,et al.OpenState: programming platform-independent stateful OpenFlow applications inside the switch[J].Comput Commun Rev,2014,44(2):44-51.

[14] Mckeown N,Anderson T,Balakrishnan H,et al.OpenFlow: enabling innovation in campus networks[J].Comput Commun Rev,2008,38(2):69-74.

[15] Gude N,Koponen T,Pettit J,et al.NOX: towards an operating system for networks[J].Comput Commun Rev,2008,38(3):105-110.

[16] Cai Z,Cox AL,Ng TSE.Maestro: A system for scalable OpenF-low control[J].Cs.rice.edu,2011.

[17] Erickson D. The beacon OpenFlow controller[A].Proceedings of the Second ACM SIGCOMM Workshop on Hot Topics in Software Defined Networking[C].New York:ACM,2013: 13-18.

[18] Koponen T,Casado M,Gude N,et al.Onix: a distributed control platform for large-scale production networks[A].Usenix Conference on Operating Systems Design and Implementation[C]. USENIX Association,2010:351-364.

[19] 张新龙,牛彩云.关于医院内外网融合网络架构探讨[J].中国数字医学,2015,10(11):108-110.

[20] 梁富宏,柯金伟,陈玲莉,等.医院网络建设内外网合与分之优化方案[J].智能建筑与城市信息,2015,(7):75-79.

[21] 卢长伟,赵浩宇,李景波.医院网络安全管理方案与措施[J].中国医院管理,2017,37(2):56-57.

[22] 申宝明,徐浩,辛海燕.医院信息化中的数字认证设计与实施[J].中国医疗设备,2015,30(5):83-85.

[23] 龚海,陈国强,许强,等.利用虚拟化技术增强医院网络安全[J].中国数字医学,2010,5(12):99-100.

[24] 杨金辉.医院网络管理的意义及其存在的问题和维护[J].科技创新导报,2014,(23):178.

[25] 赵书臣,李文平,应立刚,等.医疗设备更新需考虑的几个因素[J].医疗卫生装备,2016,37(2):141-142.

[26] Nagase K.Software defined network application in hospital[J]. Inimpact J Innov Impact,2016,6(1):1-11.

[27] 李海阳.华为、IDC共同携手北大医院展现无线移动医疗成功应用[J].中国数字医学,2013,8(11):109.

本文编辑 王婷

Development and Application of Software De fined Network in Hospital Network

ZHOU Chenshuo, WEI Dejian, CAO Hui
Institute of Science and Technology, Shandong University of Traditional Chinese Medicine, Jinan Shandong 250355, China

Abstract:With the development of network technology, the hospital network system tends to be complex, which raises a series of problems, such as the management dif ficulty of hospital network, low safely, update complexity and so on. Software de fined network (SDN) improved the flexibility and extensibility of the network by making the data plane and control plane separation. The problems of network can be solved well as SDN is applied to hospital network. In the present study, first of all, the SDN system, including the basic system and key components of SDN, was brie fly introduced. Secondly, based on the research progress of SDN at home and abroad, this paper stated the application status of SDN in hospital network, and summarized the existing problems and solving methods of the hospital network. Finally, this paper made an outlook on the application situation of the SDN in the future.

Key words:software de fined network; OpenFlow interchanger; hospital network; network security; SDN controller

[中图分类号]TP393

[文献标识码]A

doi:10.3969/j.issn.1674-1633.2017.09.026

[文章编号]1674-1633(2017)09-0103-04

收稿日期:2017-03-15

修回日期:2017-03-26

基金项目:国家自然基金面上项目(81473708);山东省高校科研发展计划项目(J15LN21)

通讯作者:曹慧,教授,主要研究方向为医学虚拟现实,医学信息处理与分析。

通讯作者邮箱:2971128627@qq.com