部署图是一种结构图 ,显示了系统的体系结构,作为部署目标的软件工件的部署(分发)。
工件表示物理世界中的具体元素,是开发过程的结果。工件的例子有可执行文件、库、档案、数据库模式、配置文件等。
部署目标通常由一个节点来表示,该节点可以是硬件设备,也可以是一些软件执行环境。节点可以通过通信路径连接,以创建任意复杂的网络系统。
注意,组件被直接部署到UML 1.x部署图中的节点。在UML 2.x中,工件被部署到节点,工件可以显示(实现)组件。组件通过工件间接部署到节点。
部署图可以描述规范级别(也称为类型级别)或实例级别的架构(类似于类图和对象图)。
规范级部署图显示了将工件部署到部署目标的一些概述,而没有引用工件或节点的特定实例。
实例级部署图、展示实体实例到具体的节点实例的部署情况。它可以用于展示不同部署之间的差异。例如,开发和生产环境的部署可以通过具体的名字或ID(这里指的是具体的构建、部署服务器、或设备)加以区分。
常用的部署图有如下几种:
- 通过工件实现(展现)组件;;
- 规范级别的部署图;
- 实例级别的部署图;
- 系统网络架构图;
通过工件实现(展现)组件;(Manifestation of Components by Artifacts)
虽然组件图显示了组件和组件与分类器之间的关系,而部署图——工件到部署目标的部署,但是一些缺少的中间图是显示图,用于通过工件和工件的内部结构来显示组件的显示(实现)。
由于表示形式图不是由UML 2.4规范定义的,因此可以使用组件图或部署图来显示组件按工件的表示。
通过工件表现组件。
规范级别部署图(Specification Level Deployment Diagram)
规范级(也称为类型级)部署图显示了将工件部署到部署目标的一些概述,而不引用工件或节点的特定实例。
实例级部署图(Instance Level Deployment Diagram)
实例级部署图显示将工件实例部署到部署目标的特定实例。例如,它可以用于显示部署与具有特定部署服务器或设备的名称/ID的开发、分段或生产环境之间的差异。
在下面的示例中,Web应用程序部署到应用程序服务器wsrv-01,几个数据库模式部署到数据库服务器dbsrv-14。
实例级部署图 - 部署到Tomcat JSP服务器和数据库模式的Web应用程序 - 到数据库系统。
系统网络架构图(Specification Level Network Architecture)
部署图可用于显示系统的逻辑或物理 网络架构 。网络体系结构图可以根本不显示任何工件或部署,也可以仅显示主要部件。
网络架构图
UML标准没有单独的图来描述网络架构,也没有提供与网络相关的特定元素。部署图可以用于此目的,通常带有一些额外的网络原型。网络架构图通常会显示网络节点和它们之间的通信路径。
下面的网络图示例显示了配置为“双防火墙非军事区”的网络体系结构。非军事区(DMZ)是一个主机或网段,位于Internet和组织内部网(专用网)之间的“中立区”。它防止外部用户直接访问一个组织的内部网络,而不直接向Internet公开web、电子邮件或DNS服务器。
网络体系结构图概述-网络设备和通信。
注意,这个图使用的网络图标不是UML标准的一部分。UML的节点或设备标准是一个立方体的三维视图。
网络设备
Windows服务器系统参考体系结构(WSSRA)(请参阅Microsoft网络体系结构蓝图[MSNAB 05])使用以下网络设备来显示整个网络体系结构:
- 开关设备
- 路由器设备
- 负载平衡设备
- 防火墙设备
- 虚拟专用网(VPN)设备
这些设备都没有在UML标准中定义,所以下面的大多数描述和示例使用了网络图标和微软提供的描述作为蓝图的一部分。
集线器
集线器是一种网络设备,在OSI第1层(L1)连接工作站和服务器等网络组件。集线器包含每个网络设备的端口,并将在一个端口上接收到的数据复制到每个其他端口(无论是否需要)。由于这个原因,数据传输很可能发生冲突。
如果连接到集线器的两个设备同时开始传输,则会发生冲突。因此,错误帧将复制到连接到集线器的所有设备。随着网络活动的增加,冲突变得更加频繁。
在Microsoft WSSRA中,集线器不再被视为网络组件(请参阅Microsoft网络设备蓝图[MSNAB 05]),因为它们基本上已被交换机取代。
在某些情况下,集线器仍然可以使用,例如支持集群节点心跳机制的服务器集群成员之间的网络。
交换机(Switch)
交换机是一个网络设备,它在OSI的第2层将网络数据包从一个设备转移到另一个设备。交换设备可以通过监控网络流量来确定数据包目的地设备的MAC地址。一旦确定了目标地址,交换机就可以将特定的数据包发送到端口,该端口使用特定的MAC地址连接到网络适配器。(集线器将每个数据包发送到所有端口。)
企业级交换机可以在OSI第三层的网络段之间路由数据包,因此可以用作路由器。
网络交换机。
路由器(Router)
路由器是一种网络设备,它基于OSI的第三层地址将数据包从一个网络段移动到另一个网络段。路由设备能够与网络上的其他路由器交换信息,以确定从一个设备到另一个设备的最有效路径。
网络路由器。
负载均衡器(Load Balancer)
负载均衡器是一种促进水平集群的网络设备,其中多个服务器被配置为在网络上执行相同的功能。负载平衡功能可以由软件或硬件设备以以下两种方式之一提供:
- 分布式——集群中的每个节点接收发送到集群的每个包。
- 路由-负载均衡器接收发送到集群的每个入站包,并确定将包发送到集群中的哪个主机
网络路由器。
防火墙功能(Firewall)
防火墙是一种网络设备,它使用OSI第三层地址控制网络段之间的流量,以满足安全需求。防火墙服务可以由专用的硬件设备(特别是为了保护内部网络和Internet之间的边界)来实现,也可以由运行软件防火墙的网络主机来实现。
网络防火墙。
防火墙具有一组规则,允许执行防火墙服务角色的设备确定允许通过哪些通信,或者相反地,确定不允许通过哪些通信。大多数防火墙都有一个“隐式拒绝”规则,因此如果一个规则不允许请求,则请求被拒绝。
网段(Network Segments)
网段被定义为在OSI第2层(L2)使用L2 LAN连接设备彼此通信的两个或多个设备,它们之间在L3没有路由。(微软网络架构蓝图[MSNAB 05])
网段可以是物理的或逻辑的(虚拟的)。逻辑段称为虚拟局域网(VLAN)。
L2 LAN连接设备正在同一网段上的主机或设备之间移动OSI第2层的数据包。此功能通常由交换机提供。
L3局域网连接设备正在多个网段之间移动OSI第3层的数据包。此功能通常由路由器或负载平衡器提供。
局域网(LAN)是通过二级LAN连接设备连接多个网络主机或使用三级LAN连接设备连接多个网段而创建的。L2和L3 LAN连接设备的导线通常归组织所有。网段上的主机和设备之间或局域网上网段之间的连接速度通常为10兆位/秒(Mbps)、100兆位/秒或1 Gbps。
广域网是通过广域网设备和技术连接一个或多个局域网而形成的。端点广域网连接设备通常归组织所有,但介于两者之间的设备通常归电话运营商所有。
主干(Backbone)
主干是连接多个交换机的链路。
网络骨干网示例。
主干网通常被扩展以允许网络计算机和服务器之间的多个同时对话,以匹配其上设备的速度和数量。例如,骨干网的大小可以为每秒1千兆比特(Gbps),以允许在骨干网上以100mbps的速度在客户端计算机和连接到交换机的服务器之间发生多个100mbps的会话。
多链路(Multihoming)
多主机服务器是指在同一台服务器上使用多个网络适配器,或在同一台服务器上使用多个IP地址(可以与一个或多个网络适配器一起使用)。使用多个网络适配器意味着使用多个IP地址。
同一设备上的多个网络适配器允许分离流量以获得更好的性能或/和更强的安全性。多宿主的示例包括具有单独网络接口的公共防火墙(用于应用安全规则和路由),以及具有多个网络接口的外围web服务器(用于分隔外围和内部通信),并允许前端接口用于负载平衡。 |