- 四、设计题(每小题20分,共1小题,计20分;用中文作答。)
29.在电网物联网(Grid Internet of Things, GIoT)中,为及时处理源网荷储(即发电/输电/用电/储能)各环节的异常事件应采用怎样的软件体系结构?为防止赛博(Cyber)攻击,GIoT的软件体系结构应做怎样的安全增强设计?
在电网物联网(Grid Internet of Things, GIoT)中,及时处理源网荷储各环节的异常事件并防止 cyber 攻击,需要设计一个健壮、高效且安全的软件体系结构。以下是一个可能的解决方案:
### 1. 软件体系结构设计
#### 1.1 事件驱动架构(EDA)
事件驱动架构(Event-Driven Architecture, EDA)适用于实时处理源网荷储各环节的异常事件。在这种架构中,事件的生成、传输、处理和响应都是异步进行的,能够快速响应和处理异常事件。
- **事件生成器**:负责检测和生成事件,如传感器、监控设备等。
- **事件总线**:负责传输和路由事件,如消息队列(Kafka, RabbitMQ)。
- **事件处理器**:负责处理事件,如异常检测、故障定位等。
- **事件响应器**:负责执行相应的响应动作,如断路器操作、负荷转移等。
#### 1.2 微服务架构(MSA)
微服务架构将系统分解为一组小型、自治的服务,每个服务负责特定的业务功能。这种架构有利于系统的扩展性和维护性,并且可以针对不同的服务进行独立的升级和扩展。
- **源服务**:管理电源数据和控制。
- **网服务**:管理电网数据和控制。
- **荷服务**:管理负荷数据和控制。
- **储服务**:管理储能设备数据和控制。
- **事件管理服务**:负责事件的收集、处理和响应。
#### 1.3 分层架构
分层架构将系统划分为多个层次,每个层次负责不同的功能,层次之间通过接口进行通信。
- **感知层**:负责数据采集和设备控制。
- **网络层**:负责数据传输和通信。
- **平台层**:负责数据处理、存储和分析。
- **应用层**:负责业务逻辑和用户交互。
### 2. 安全增强设计
#### 2.1 多层次安全机制
为了防止 cyber 攻击,GIoT 的软件体系结构应采用多层次的安全机制,包括但不限于:
- **身份认证与访问控制**:确保只有授权的设备和用户才能访问系统。可以采用基于角色的访问控制(RBAC)和多因素认证(MFA)。
- **数据加密**:在数据传输和存储过程中采用加密技术,如 TLS/SSL、AES 等,保护数据的机密性。
- **入侵检测与防御系统(IDS/IPS)**:实时监控网络流量,检测和阻止恶意攻击。
- **安全审计与日志管理**:记录系统的操作日志,并进行定期审计,及时发现和响应安全事件。
- **安全补丁管理**:及时更新和修补系统中的安全漏洞。
#### 2.2 安全通信协议
在 GIoT 中,设备和系统之间的通信应采用安全的通信协议,如:
- **MQTT-TLS**:在 MQTT 协议基础上添加 TLS 加密,确保消息传输的安全性。
- **CoAP-DTLS**:在 CoAP 协议基础上添加 DTLS 加密,适用于资源受限的 IoT 设备。
- **HTTPS**:在 Web 服务中采用 HTTPS,确保数据传输的安全性。
#### 2.3 安全中间件
在软件体系结构中引入安全中间件,负责处理安全相关的功能,如:
- **安全代理**:负责身份认证、授权和审计。
- **安全网关**:负责过滤恶意流量,保护内部网络。
- **安全服务**:提供加密、签名、认证等安全服务。
#### 2.4 安全事件管理
建立安全事件管理系统,实时监控系统的安全状态,及时发现和响应安全事件。
- **安全事件收集**:收集来自各个设备和系统的安全事件日志。
- **安全事件分析**:利用机器学习和大数据分析技术,识别潜在的安全威胁。
- **安全事件响应**:制定应急预案,及时响应和处理安全事件。
### 3. 总结
在 GIoT 中,采用事件驱动架构、微服务架构和分层架构可以有效处理源网荷储各环节的异常事件。为了防止 cyber 攻击,应采用多层次的安全机制,包括身份认证、数据加密、入侵检测、安全审计等,并采用安全的通信协议和安全中间件。此外,建立安全事件管理系统,实时监控和响应安全事件,确保系统的安全性。
二、安全增强设计
- 身份认证与访问控制(Authentication and Access Control)
- 原因:确保只有授权的设备和用户才能访问系统,防止未授权的访问。
- 具体设计:
- 多因素认证(MFA):结合用户名密码、短信验证码、生物识别等多种认证方式,提高安全性。
- 基于角色的访问控制(RBAC):根据用户的角色分配不同的权限,确保用户只能访问其职责范围内的资源。
- 数据加密(Data Encryption)
- 原因:防止数据在传输和存储过程中被窃取或篡改。
- 具体设计:
- 传输加密:使用TLS/SSL等协议对数据传输进行加密,确保数据在传输过程中的安全性。
- 存储加密:对存储在数据库中的敏感数据进行加密,防止数据泄露。
- 入侵检测与防御系统(Intrusion Detection and Prevention System, IDPS)
- 原因:实时监测系统的安全状况,及时发现和阻止潜在的攻击。
- 具体设计:
- 入侵检测系统(IDS):监控网络流量和系统日志,检测异常行为。
- 入侵防御系统(IPS):在检测到攻击时,自动采取措施阻止攻击,如阻断恶意IP地址。
- 安全审计与日志管理(Security Auditing and Log Management)
- 原因:记录系统的操作日志,便于事后追溯和分析。
- 具体设计:
- 日志记录:记录系统的各种操作日志,包括用户登录、数据访问、系统配置变更等。
- 日志分析:定期分析日志,发现潜在的安全威胁。
- 日志存储:将日志存储在安全的地点,防止日志被篡改或删除。
- 安全网关与防火墙(Security Gateway and Firewall)
- 原因:在系统边界设置安全网关和防火墙,过滤恶意流量,保护内部系统安全。
- 具体设计:
- 安全网关:部署在GIoT的边界,对进出网络的数据进行安全检查。
- 防火墙:设置规则,过滤恶意流量,只允许合法的流量进入内部网络。
- 安全评估与漏洞管理(Security Assessment and Vulnerability Management)
- 原因:定期评估系统的安全性,及时发现和修补系统漏洞。
- 具体设计:
- 安全评估:定期对系统进行安全评估,包括渗透测试、漏洞扫描等。
- 漏洞管理:建立漏洞管理流程,及时修补发现的漏洞,降低系统被攻击的风险。
- 1. There are several fine-grained concepts of software architecture except (....)
A. Composition
B. Component
C. Connector
D. Configuration
- 2. Typical architectural patterns exclude (....
- A. state-logic-display
- B. model-view-controller-
- C. sensor-computer-actuator
- D. sense-compute-control-
- 3. Which one is not the typical application of mobile code style?
- A. macros in Office documents
- B. scripts in web pages
- C. offload in edge computing
- D. perception in IoT.
- 4. What are core properties of peer-to-peer style?
- A. robustness + distribution
- B. scalability + decentralization
- C. decentralization + privacy
- D. robustness + scalability
- 5. Which relationship between style and resulting architecture (arch) is incorrect?
- A. different style results in different arch
- B. same style certainly results in same arch..
- C. same style may result in different arch
- D. same style defines same discourse domain
- 6. When controlling the design strategy, which task is unnecessary?
- A. warn wrong decisions
- B. insulate uncertain decisions
- C. continuously re-evaluate decisions
- D. identify and review critical decisions
- 7. Which role is the main role associated with software connectors?
- A. Coordination
- B. Conversion
- C. Facilitation
- D. Communication
- 8. Which software connector does not play communication role?
- A. Procedure Call
- B. Linkage
- C. Stream
- D. Events
- 9. Which mechanism in the notification dimension of event is periodic?
- A. general dispatch
- B. publish
- C. central update
- D. publish/subscribe
- 10. Which is the key issue of software connectors?
- A. model arbitrarily complex interactions
- B. connector flexibility aids system evolution
- C. tasked performance and flexibility
- D. connector interchange affect functionality
- 11. What does the Semantic Interconnection model fail to do at the architectural level?
- A. Large components
- B. Robustness of interactions
- C. Heterogeneity
- D. Component reuse
- 12. What does the REST style principles not include?
- A. Representation can be extended
- B. Methods are global to all REST instantiations
- C. All interactions are context-dependent
- D. Idempotent operations are encouraged
- 二、英文问答题(每小题6分,共5小题,计30分;用中英文件答均可。)
- 21. Please draw a diagram to show refined experience of architecture designs, and give essential explanation one by one.
- 22. There are several architectural lessons from Google. Please list them in turn.
- 23. Please draw a diagram to show where connection are in software system, and explain four roles of software connectors.
- 24. Please draw three diagrams to explain traditional SE, architecture-based SE and DSSE.
- 25. Please list both challenges and guidelines of designing for NFPx.
- 三、中文问答题(每小题10分,共3小题,计30分;用中文作答。)
26. 微服务架构自提出之后不断演进。请绘图解释其中两代微服务架构的特性。
27. 云原生技术ServiceMesh和Serverless分别具有怎样的技术特点?
28. 请给出边缘计算的定义及关键特性(可以绘图)。
- 四、设计题(每小题20分,共1小题,计20分;用中文作答。)
29.在电网物联网(Grid Internet of Things, GIoT)中,为及时处理源网荷储(即发电/输电/用电/储能)各环节的异常事件应采用怎样的软件体系结构?为防止赛博(Cyber)攻击,GIoT的软件体系结构应做怎样的安全增强设计?