网络项目描述
了解“网络”的简要介绍,并学习本项目中我们将实现的功能。
简介
网络是由跨越地理区域的计算机、路由器或交换机相互连接而成的系统。网络中的设备通过不同的协议进行通信。企业通常使用局域网(LAN)为员工搭建私有网络,该网络可同时向网络中所有可用设备发送数据和消息。大多数网络都连接到全球互联网,使同一网络中的设备也能访问互联网资源。
本章将讨论与网络中数据传播相关的情景及问题,并探讨如何优化数据传播效率。
任务说明
你任职于一家开发局域网设备、高性能计算集群以及覆盖网络设备的公司。你的团队负责开发这些设备的功能软件、高效的通信协议,以及网络数据的分析功能。这些设备能够支持高效科学计算和企业级网络运行。
功能需求
为了实现上述功能,我们需要引入以下特性:
-
特性 #1:消息从服务器传输到客户端。已知网络中每跳的延迟时间,我们需要确定在无任何错误的情况下,消息被所有客户端接收的最早时间。
-
特性 #2:给定消息中设置的特定生存时间(TTL),找出该消息从当前设备可以到达的所有节点。
-
特性 #3:在线性虚拟网络拓扑中,每个路由器最多能向前转发数据包一定数量的跳数。我们需要确定从第一个路由器到最后一个路由器所需的最少传输次数。
-
特性 #4:在网格拓扑结构中,向尽可能多的路由器广播一个重要数据包,但需满足特定的转发限制条件。
-
特性 #5:高效地更新网格拓扑中网络交换机的VLAN ID。
-
特性 #6:一对机器之间存在请求-响应的消息交互。判断请求包和响应包是否走的是同一条路径。
-
特性 #7:在高性能计算集群节点之间分发文件,以最小化通信开销。
-
特性 #8:识别网络拓扑中同步状态最差的路由器。
-
特性 #9:确定更新请求在网格拓扑中所有路由器间传播所需的时间。
-
特性 #10:确定客户流量变化在指定阈值范围内的最长连续天数。
-
特性 #11:计算设备在拥塞期间因退避而停止发送数据包的总时间。
-
特性 #12:在高速公路沿线设有多个互联网接入点,需要识别并部署一个智能广告牌,使其位置能接收到任意接入点的最大信号强度。
理解这些功能需求并设计相应的解决方案,将有助于我们实现网络系统的各项功能。
在接下来的课程中,我们将讨论这些特性的推荐实现方案。在开始之前,请思考一下你会如何实现这些功能。随着思考的深入,你将发现一些需要解决的基础问题。这些问题的解决方案同样适用于常见的编程面试题。