BCDC数据中心网络性质演示系统.docx

上传人:温桑 文档编号:52475232 上传时间:2022-10-23 格式:DOCX 页数:35 大小:1.57MB
返回 下载 相关 举报
BCDC数据中心网络性质演示系统.docx_第1页
第1页 / 共35页
BCDC数据中心网络性质演示系统.docx_第2页
第2页 / 共35页
点击查看更多>>
资源描述

《BCDC数据中心网络性质演示系统.docx》由会员分享,可在线阅读,更多相关《BCDC数据中心网络性质演示系统.docx(35页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、苏州大学本科生毕业设计(论文)本 科 毕 业 设 计(论 文)学院(部)题 目年 级专业班 级学号姓 名指导老师职称论文提交日期目 录前 言3第一章 绪论41.1课题的背景41.2 BCDC网络的相关介绍51.3主要工作51.4组织结构6第二章 预备知识及技术简介72.1 Crossed Cube网络的定义72.2 Crossed Cube网络的基本性质92.3 BCDC网络的定义和构造92.4 BCDC网络的基本性质102.5独立生成树的定义102.6独立生成树的研究意义112.7独立生成树的构造112.7.1在Crossed Cube上构造IST的算法112.7.2在BCDC上构造IST算

2、法122.8 JSP、JavaScript和Sigma.j的介绍122.8.1 JSP+HTML5标签的使用介绍122.8.2 Javascript简介132.8.3 Sigma.js简介14第三章 需求分析153.1功能性需求153.2非功能性需求16第四章 系统设计174.1概要设计174.2详细设计18第五章 系统实现205.1 菜单模块205.2 Crossed Cube和BCDC的网络拓扑215.3 Crossed Cube和BCDC的IST构造展示24第六章 总结与展望286.1课题总结286.2后续工作展望29参考文献30致谢322摘 要上世纪六十年代到七十年代,计算机网络诞生。

3、网络架构也一并发展,与时俱进。当今社会已经全面迈进互联网时代,一个网络内同时有上亿的用户在收发数据,如此庞大的数据通信量对整个网络的架构的性能和鲁棒性提出了非常高的要求。本文涉及的BCDC网络就是在这样的时代背景下,为了处理大数据而提出一种网络架构。BCDC 网络是一种高性能,以数据为中心的网络,它的原型来自常见的超立方体网络模型。BCDC网络需要适用于多种路由场景,例如,一对一路由,一对多路由,一对所有或广播)或所有对所有路由。 BCDC能够做到在这几种模式下都能实现高效,安全的通信。本文首先简要介绍有关BCDC网络的拓扑性质和课题的研究背景。其次,描述BCDC数据网络上拓扑图形的生成和独立

4、生成树的构造。包括本系统提出的BCDC网络的构造算法,独立生成树的构造算法。最后着重于网络性质的演示系统。在设计这个网络性质演示系统的之前,首先进行了需求分析,提出了总体目标,接着,参照前人的经验,将需要演示的各个模块划分,得出一份详细设计的方案。本文的最后就是本文所设计的系统的展示。本系统采用了一个跨平台的技术JSP+JavaScript,来实现页面的展示与动态交互。关键词:Crossed Cube;BCDC;独立生成树;JSP;JavaScriptAbstractIn the 1960s and 1970s, computer networks were born. The network

5、 architecture is also developing and advancing with The Times. In todays society has fully into the Internet age, there are hundreds of millions of users at the same time a network in the sending and receiving data, so huge data traffic for the whole network architecture performance and robustness o

6、f the very high requirements are put forward. The BCDC network involved in this paper is to propose a network architecture in order to deal with big data.The BCDC network is a high-performance, data-centric network based on the common hypercube network model. BCDC networks need is suitable for vario

7、us application scenarios, such as: such as one to one, one to many (for example, a distributed file system), one to all (such as application data broadcast) or all to all of this type of data transmission and communication. BCDC tries to achieve efficient communication in these modes.In this paper,

8、the topological properties and research background of BCDC network are briefly introduced. Second, describe the generation of topological graphs on BCDC data network and the construction of independent spanning tree. Including our proposed BCDC network construction algorithm, the independent spannin

9、g tree construction algorithm. Finally, it focuses on the network nature of the demonstration system.In the design of the network properties of demonstration system, we first analyzed the demand, put forward the overall goal, then , with reference to previous experience, will need to demonstrate eac

10、h module partition, a detailed design scheme. The last part of this article is a demonstration of the system we designed. This system uses a cross-platform technology JSP +JavaScript to realize the display and dynamic interaction of the page.Key words: Crossed Cube;Independent Spanning tree; jsp;Jav

11、aScript 前 言近年来,互联网的迅速发展,催生了许许多多的新事物,如:在线搜索,电子商务,网络游戏,在线视频,云存储,和网络基础设施服务等,不一而足。这些服务无一不是建立在巨大的巨大的数据网络中心之上,这些巨大的数据中心网络上同时运行的服务器数量达到百万级别。以前一直沿用的网络架构其性能早已达到瓶颈,BCDC网络是近年来为了解决大数据和云计算技术遇到的瓶颈,应运而生的一种网络架构,其具有诸多优良的网络性质,如网络容量,扩展性,容错率,通讯性能,等。近年来受到众多从事网络研究工作的专家和学者们的青睐。BCDC网络能够容纳台服务器,而且,当网络的直径增加1,整个网络的容量按指数级别增长,才能

12、够承受每日数十亿次的计算和服务带来的负荷,网络中的每一台服务器都连接着多个端口,这对于高并发的系统而言有着特别重要的意义。通常在BCDC网络中,节点分为两种,一种是连接各个网络端口的服务器,另一种则是与不同层次的服务器交互的交换机。服务器连接多个端口,交换机连接多个服务器,交换机与交换机,服务器与服务器都不直接相连,这样的设计减少了无效的数据传输。第一章 绪论本章节首先引入Crossed Cube和BCDC这两个概念,然后探究这两个事物诞生的原因和背景,其次讨论BCDC在实际生活中的作用,最后介绍本文的主要工作和组织结构。1.1课题的背景智能手机的出现,将整个世界带入到移动互联网时代。国家为了

13、顺应时代发展,提出了“互联网+”的概念,掀起了一股互联网创业浪潮,众多的创业公司如雨后春笋,顺势而生。它们已经将网络蔓延至本系统身边的每一一个角落,街头巷尾都能看见的移动支付就是最好的证明。移动互联网时代,流量依旧是各大互联网公司能否立足的唯一指标。智能手机凭借它的便携性,易用性,将整个网络规模也提升到了一个令人吃惊的高度。庞大的用户基数,带来的的是庞大的数据量,如洪水一般在整个互联网中传播,以前的服务器、处理器所需要处理的数据量也提高了几个量级。这样的背景下,“大数据”、“云计算”等新名词也在一夜之间家喻户晓。云计算技术是分布式计算(Distributed Computing)、并行计算(P

14、arallel Computing)、效用计算(Utility Computing)、网络存储(Network Storage Technologies)、虚拟化(Virtualization)、负载均衡(Load Balance)、热备份冗余(High Available)等传统计算机和网络技术发展融合的产物。云计算中心可能要同时为成千上万的用户提供服务,很多时候,用户的需求都是实时的,而且是高并发的,这对网络的传输效率,传输的可靠性,容错性提出了很高的要求。传统的网络架构处理如此多的数据渐渐显得捉襟见肘,无法满足网络发展的需求,超高的负荷在挤压它的每一点性能,即使网络架构经过了无数次的改良

15、,但它的性能已然到达了瓶颈,因此本系统迫切的需要一个高性能、大容量、易扩展、容错性好的不同于传统的网络架构,来应对日益庞大的用户需求。BCDC网络正是本系统为了替代当前的网络架构而进行的尝试。1.2 BCDC网络的相关介绍BCDC网络是一种以数据中心网络,但同时又是一个以服务为中心的网络,交换机与服务器直接相连,交换机与交换机、服务器与服务器都不直接相连,这样的设计减少了无效的数据传输。BCDC网络的设计来源于交叉立方体的变化。将交叉立方体的一条边作为一个顶点,其他与这两个点相邻的顶点构成的边都与这两个顶点构成的边相连,得到边,最终构成一个BCDC网络。最后得到的BCDC网络中的点的个数与同一

16、维的交叉立方体中的边的个数相等。BCDC网络采用递归方式进行构造,一个维的网络由2个维的组成。维的网络中共有个节点,表示该网络中能够容纳的交换机数量,有条边,表示该网络内服务器的数量。网络直径为。每个服务器连接两个交换机,每个交换机连接多台服务器。1.3主要工作本文的所做的工作,主要是研究BCDC网络的及其独立生成树的构造问题,提出一个直径较小的独立生成树的构造算法。系统开发部分主要用来辅助演示,介绍BCDC独立生成树的物理结构,逻辑结构,以及其中一种完全独立生成树的构造过程。本软件采用HTML5+JSP+JavaScript作为开发工具,使用eclipse作为开发平台,主要是演示Crosse

17、d Cube 和 BCDC 网络的结构,展示Crossed Cube 和BCDC网络的独立生成树的构造过程,这个过程也正是网络之中数据通讯的过程。同时用户能够看到两种网络从3维至9维的的结构。本软件具有的功能包括:BCDC网络3-9维的结构演示,Crossed Cube 网络3-9维的结构演示。Crossed Cube网络3-9维的独立生成树的构造演示,BCDC网络3-9维的独立生成树的构造演示。本软件划分为如下模块:(1) 菜单模块用户打开指定页面就能看见系统主页,主页包含了系统信息,系统功能菜单。(2) 性质演示模块分为四个模块,一是Crossed Cube网络的结构及性质演示,二是BCD

18、C网络的结构演示,三是Crossed Cube网络的独立生成树的构造演示,四是BCDC网络的独立生成树的构造演示。1.4组织结构本文总共分成六个章节,各个章节的内容安排如下:第一章:绪论部分,主要介绍本课题的研究背景,BCDC的一些基本性质,本文所做的一些主要工作,以及论文的组织结构。第二章:主要介绍开发本系统所使用的主要技术以及Crossed Cube网络的定义,BCDC网络的定义,Crossed Cube网络的基本性质,BCDC网络的基本性质。BCDC数据中心网络的定义性质,定理和相关引理,为接下来独立生成树的算法提供理论基础。第三章:进行需求分析,列出本软件需要的功能模块,以及各个模块的

19、实现方式,采用的技术等。 第四章:对系统软件进行概要的设计,详细列出每一个功能模块,将每个功能抽象的表示出来。接着,进行详细设计,将每一个功能具体化。第五章:系统功能的测试与展示。第六章:本次毕业设计的结束语。最后为本文的参考文献以及致谢部分。第二章 预备知识及技术简介本章通过引入图的概念来描述通信网络的结果,并在此基础上介绍BCDC网络的递归性质。本系统基于Html 5中的Canvas技术,采用Eclipse作为开发平台,结合Java Servlet组件、Java语言和JavaScript语言。在本章中将对这些技术做简要的介绍。2.1 Crossed Cube网络的定义和构造Crossed

20、Cube 的网络结构是在超立方体的基础上进行一个简单的变形得到的。它的结构很简单。为了方便理解,本系统给网络中的每一个节点用一个唯一的二进制字符串作为标签。网络采用递归构造,因而,在每一维的网络里都能发现两个完全相同的低一维的网络,唯一的变化只是它们的节点标签前面都有一个0或1的前缀。参见下图的。图2.1 (a); (b)Crossed Cube是递归定义的,就是两个标签为0和1的顶点。当时,由两个子立方体构成。节点,若是中的一条边,则需要同时满足如下两个条件:(1) 如果n是偶数,(2) 对于,Crossed Cube网络是递归构造的,当n=1时,交叉立方体只有一个标签为0的点和一个标签为1

21、的点。这两个点连成一条线。当n=2时,,。可以看到中包含了,。对于字符串:当时,定义,表示是相关联的顶点,连接就可以得到网络里的一条边。2.2 Crossed Cube的基本性质交叉立方体网络是常见的超立方体网络的一个变体。在保留了超立方体的性质的基础上,交叉立方体还有一些较超立方体更为优秀的性质:(1) 维交叉立方体的直径大约是维的超立方体的一半。(2) 所有长度在到之间的圈都能以扩张1嵌入中,但中只能以扩张1嵌入偶长圈。(3) 一颗具有个顶点的完全二叉树能够以扩张1嵌入,但不能在此条件下嵌入。 假定 表示Crossed Cube网络的一个子图,其中所有的节点都有,这个前缀。简写为。引理1:

22、对所有的,这个同构关系可以通过一个删除节点的标签的前导位得到。引理2:对所有的,这个同构关系可以通过一个删除节点的标签的第位得到。引理3:对所有的,对所有的在,这个同构关系可以通过一个删除节点的标签的第和位得到。推论1:包含的不同拷贝,因此其中,如果,则,否则,并且取决于是偶数还是奇数:如果n是偶数,且如果是奇数,且。引理4:对于所有的,如果是的中的顶点,那么(1) 属于同构于的的一个子图,其中如果是偶数则,否则或(2) 属于同构于的的子图,其中如果是奇数,则,或者(3) 你有一个邻居,和在的一个子图里同构于,其中如果n是偶数,则,否则。推论2:对于 。即Crossed Cube 网络的直径为

23、。2.3 BCDC网络的定义和构造BCDC网络是递归定义的,中有这四个顶点,构成一个环,亦可理解为一个正方形。当时,表示从中得到的加了0或1的前缀的子图。一个顶点集,对于一个顶点,(1) 当且仅当或,(2) 当且仅当或,图 3.1 从Crossed Cube构造BCDC(3) 从图3.1中可以看到,左侧是一个三维Crossed Cube,右侧是将左侧Crossed Cube中的边当做节点,即左侧图中的黑点,若两个黑点之间只有一个正方形,则将两个黑点相连,即可得到三维BCDC网络的拓扑。2.4 BCDC网络的基本性质随着BCDC网络中节点数量的增加,节点出现故障几乎必然会发生,BCDC网络能够正

24、常工作是基于能够允许任意一个节点出现故障。如果一个 BCDC网络的连通度为(边连通度),那么该网络最多允许个故障节点(条故障的边)的存在,依然能够维持任意两个节点之间的正常的通信。推论1:。即BCDC网络达到了最大连通度。 在基于BCDC网络的路由中,无法使用分层的OSPF路由协议,因为它需要一个骨干网去连接所有的区域,因而会造成带宽的瓶颈。BCDC采用了另一种路由算法Brouting,来得到任意两个节点之间的最短路径。这个算法是基于一个定理:BCDC网络的直径是。而且该算法的时间复杂度只有。2.5独立生成树的定义通常,为了便于分析,本系统选择用图的形式来描述网络拓扑,一张图定义为G=(V,

25、E),V是图中边的集合,E是图中点的集合。从一个起点到一个终点,它们之间通常有多条路径可达。若所有路径中任意两条路径经过的中间节点完全不同,则成这些路径为顶点不相交路径。若图G中的两棵生成树根相同,两棵树中根到任意相同顶点的路径都是顶点不相交路径,则这两棵生成树互相独立。若n棵生成树两两相互独立,则称之为n棵独立生成树(lndependent Spanning Trees, IST)。当网络中两个服务器之间通信,可以通过这n条不相交的路径进行数据的传输。最坏情况下,网络中有n-1个服务器发生故障,本系统依然能够找到一条路径将信息从源节点发送到目的节点。若所有服务器均无故障,则可以将一条信息切分

26、成n份,实现并行传输。在信息分发时,每条路径传递的信息采用不同方式加密,将能极大提高网络的安全性。这样的网络架构能够保证信息在传输中,所有的路径都是相互独立,互不干扰的,这样不仅能提高传输效率,也能提高准确率。2.6 独立生成树的研究意义在研究互连网络的性能时,一个重要的指标就是:是否能很好地够模拟常用网络。在将一个并行算法移植到另一个网络时,能够通过模拟网络预先对其性能,效率做出评估、测定,减少了在真实设备上造成的损失,这对于实际应用而言具有重要意义。同时,给互连的网络中的节点分配处理器时,模拟网络也能发挥其功能。树结构就是一种互连网络中常用的结构,因此,构造交叉立方体的独立生成树,在研究交

27、叉立方体的并行处理能力时就显得非常有必要。2.7 独立生成树的构造2.7.1 在Crossed Cube上构造IST的算法 Crossed Cube 网络中,与一个节点相连的有n个节点,同一个根节点上能够构造n棵独立生成树,且每棵生成树都有唯一的孩子节点。输入:中的所有节点,和一个根节点输出:n棵以r为根的独立生成树for i = 0 to n-1 do in parallelfor each node x in do in parallelj=NEXT(i,x)PARENT(,x)=(x)令是独立生成树中的一个根节点,对于,是一棵生成树。令,在下述条件成立时,的替代节点表示为:(1) 如果i

28、是偶数,当,(2) 如果i是奇数,当,,(3) 当,。2.7.2 在BCDC上构造IST的算法输入:中的所有节点,和一个根节点-输出:n棵以r为根的独立生成树List childOfRoot;List nodeInTree;List nextNode;childOfRoot = getAllNextNode(r);for child in childOfRootnodeInTree.add(child);count = nodeInTree.size();for (i=0;i=count)count = nodeInTree.size();i=0;end ifnextNode = getAll

29、NextNode(nodeInTree.get(i);for(j=0;jnextNode.size();j+)if(nextNode.get(j) not in nodeInTree)nodeInTree.add(nextNode.get(j);break;else continue;end forend forend for2.8 JSP、JavaScript和Sigema.js2.8.1 JSP+Html 5标签的使用介绍JSP(Java Server Page),它在HTML中插入java程序和JSP标签,生成后缀名为*.jsp的文件。JSP能够生成动态网页,实时响应用户的请求,页面也是

30、动态加载,比单一的HTML页面有更好的呈现效果和交互性,在web应用开发中受到广泛的应用。JSP与Java相同都是跨平台的。HTML中插入Java代码,只需在HTML文本的标签内的任意位置中添加标签。标签内就能够编写代码,也能够调用java本身的类和库,使用标签能够定义Java函数,用来处理前端传来的数据,响应前端的操作,最后返回一个结果给前端,整个的JSP页面的操作都是对用户透明的。HTML(超文本标记语言)是一种在各个浏览器中都通用的语言,它具有跨平台的特性,语法简单,容易学习,*.html本质上还是文本文件,不需要专门的编辑器来编写。常用的HTML标签有,几乎所有的登录页面都会使用来将用

31、户输入的数据传递到后台。标签/定义供文本输入的单行输入字段 。 /定义密码字段。 /定义提交表单数据至表单处理程序的按钮。 /定义按钮。 /标签创造一个下拉列表,用户从提供的选项中选择一个。2.8.2 JavaScript JavaScript是一种跨平台的脚本语言,可用于 HTML 和 web,更可广泛用于服务器、PC、笔记本电脑、平板电脑和智能手机等设备。JavaScript既能够单独写在以.js结尾的文件里,也能够通过一个标签,嵌入在HTML页面,JavaScript程序不会自动执行,除非使用window.onload或者其他的函数调用。更多情况下,都是响应HTML页面上的变化。标签如下

32、:JavaScript按照如下方式响应按钮点击事件: document.getElementById(id).addEventListener(operator,function)通过HTML标签的id属性,找到该标签,添加事件响应的操作operator和处理函数function,当指定的操作operator被触发时,指定的函数function会被执行。JavaScript和JSP数据交互,例:JSP中的变量edgeInTree 赋值给JavaScript的变量index:var index = 2.8.3 Sigma.js Sigma.js是一个开源的,专门用于绘图的JavaScript库。

33、它使得在Web网络上编辑和发布页面变得更容易容易,并且允许开发人员在Web应用程序中集成网络分析功能。它的目标是简化基础使用场景,同时也支持整合以用于更加复杂的应用: 以几个内建特性为例,本系统可以看到它让开发者能够轻松实现多点触摸、平滑缩放并应对窗台大小调整。 它提供了一些更加复杂的特性,并以插件的形式实现了它们。 它的API和事件系统简化了与图形之间的交互。Sigma.js库的使用方法如下: sigma.parsers.json(data.json, container: container, settings: defaultNodeColor: #ec5148 );第三章 需求分析3.

34、1功能性需求一个演示系统,需要有与用户的交互界面,而不仅仅是页面的展示,页面需要动态的效果,能够依据用户的输入做出响应,而不单单是按照事先设定的流程一步步呈现。首要的就是一个菜单选项,用户通过菜单知道该系统的功能,同时通过菜单实现与系统的交互。其次,需要一个展示的区域,将用户请求的结果呈现出来。需要展示的页面有:不同纬度的Crossed Cube网络结构,不同纬度的BCDC网络结构,不同纬度,不同根节点的Crossed Cube生成树;不同纬度,不同根节点的BCDC生成树。然后,本系统要让用户直观地看到网络结构的信息,所以需要一个介绍当前网络结构的模块。最后,网络中的每一个节点都是携带着信息,

35、用户如果想要知道某个确定的节点的信息,本系统要提供一个搜索节点的功能,同时还需要一个节点信息展示的面板。当用户用鼠标随机选择一个点,信息面板也能够显示出这个节点的相关信息。3.2 非功能性需求本系统的代码编写工作主要是在Eclipse中完成,采用java,HTML和JavaScript等语言。运行在Windows xp系统下。上述只是前期的相关环境,下面则是系统开发之前的准备工作。首先明确功能是否能实现。在研读论文的过程中理解文献中给出的几个构造算法的伪代码,然后使用java语言将其实现。在经过了深入的学习和充足的准备之后,可以确信这一点是可以做到的。在文献里,笔者发现Crossed Cube

36、和BCDC网络都是递归构造的,这意味着,每构造一个网络,都必须从二维开始进行递归计算。而且,二维的Crossed Cube网络和BCDC网络的数据需要自己动手构造,作为初始的输入数据。当用户想要看到一个高维度的网络结构,如果还要从二维开始计算,费时费力,无法达到实时呈现的效果,显然这样的系统是不能满足用户的要求的。为了减少计算量,提高响应速度,本系统将每一维的数据都放在文件中保存,这样,当用户想要再次看到一个已经出现过的页面,后台不需要从二维开始计算,而是直接从文件中读取当前维度的数据,呈现在页面上。除此之外,当用户想要看到一个高维的网络拓扑,程序只需从保存的最高维的文件读取,进行递归计算,这

37、样就能够大大减少计算量。避免重复计算低维度的数据。而且,当一个高维的网络被构造出来,所有比之低的维度的网络的数据也都一并生成并被保存,如此一来,就可以做到,每一维度的网络节点数据和边数据仅需要计算一次,而无论用户何时想要看到新的网络拓扑,系统都能很快的作出响应 。 为了方便处理,本系统使用*.csv文件格式保存生成的数据。*.csv是一种文本类型,每一行的数据用逗号隔开,成为一列。因此,这种文件又叫逗号分隔值文件。如下所示,分号左右两边表示一条边的两个顶点,程序只需要根据分号进行分割,就能够得到两个点的标签。000;001100;101000;010100;110第四章 系统设计BCDC网络是

38、在Crossed Cube的基础上改造的,想要了解BCDC的网络结构,以及构造方法,必须先进行Crossed Cube网络的构造过程。所以本文设计的BCDC网络性质演示系统演示系统会包括Crossed Cube网络的构造与演示。4.1概要设计本系统划分成四个模块:(1) 菜单模块包括四个一级菜单:1. Crossed Cube,点击之后会展开Crossed Cube各个维度的二级菜单列表。2. BCDC,点击之后展开BCDC网络各个维度的二级菜单列表。3. Crossed Cube IST,点击之后,右侧会显示Crossed Cube网络独立生成树的构造信息输入页面。4. BCDC IST,点

39、击之后,右侧会显示BCDC网络独立生成树的构造信息输入页面。若干个二级菜单:1. Crossed Cube 3-9维的页面菜单2. BCDC 3-9维的页面菜单(2) 网络整体的信息展示模块描述网络的属性需要从两个方面着手,第一就是网络的整体属性,内容如下:1.网络的名称2.网络中节点的个数,边的个数3.在网络中搜索某一个固定节点4.节点分组功能(3) 单个节点的信息展示模块能够体现网络属性的第二个方面就是网络内单个节点的属性,内容如下:1. 节点标签2. Eccentricity3. Closeness Centrality4. 度5. Betweenness Centrality6. Ha

40、rmonic Closeness Centrality7. 相邻节点的标签(4) 用户输入模块1. 网络的维度2. 根节点序号3. 生成树的序号4.2 详细设计针对上述概要设计,现将四个模块的功能具体拆分、细化如下:1. 菜单模块用户点击左侧菜单中的某一项,右侧的展示模块跳转到相应的页面。点击Crossed Cube或BCDC,左侧菜单打开二级菜单,用户选择一个二级菜单,右侧跳转到相应的Crossed Cube,BCDC网络展示页面。点击Crossed Cube IST 或者BCDC IST网络,右侧跳转到Crossed Cube,BCDC独立生成树的构造页面,该页面上有一个下拉菜单,一个文本

41、输入框输入根节点,一个文本输入框输入生成树编号。一个“ok”按钮,点击按钮,用户输入的数据会被提交到后台,点击“show”按钮,页面上会画出对应维度的Crossed Cube的网络结构图。2. 网络整体信息模块在网络结构图的左侧,有一个悬浮的窗口,里面列举了网络的主要信息:(1) 网络的标题(2) 一个标签,点击之后,页面会出现一个窗口,里面会显示关于当前网络的更多的信息。(3) 节点数和边数,以及颜色值(4) 一个搜索框,根据输入的标签搜索指定的节点和与它相邻的节点并在页面上展示出来。3. 节点信息显示模块该模块显示网络中每个节点的相关属性,内容如下:(1) 节点标签以二进制字符串的形式显示

42、当前节点的标签。(2) 计算出当前节点的Eccentricity,Closeness Centrality,Degree,Betweenness Centrality,Harmonic Closeness Centrality。(3) 列举与当前节点直接相邻的所有节点的标签。点击某个节点的标签,信息面板的信息会随之改变。展示模块的内容也会随之改变。4. 用户输入模块要考虑用户输入的合法性,对不合法的输入应该给出错误反馈,和正确的输入的提示。Crossed Cube网络中,共有(是维度)个节点,所以最多可以有个根节点,用户输入的值,如果超出这个数,就要提醒用户重新输入。每个根节点最多有个生成树,

43、所以生成树的序号也不能超过。BCDC网络中节点的数量更多,一个网络中有个节点,每个节点相邻的节点有个,共有棵生成树。当用户没有输入根节点的数值,或者没有输入生成树的序号,页面上也需要一个弹窗阻止用户输入,并提示用户的某个值为空。第五章 系统功能展示图5.2二级菜单展开5.1菜单模块图5.1二级菜单关闭下面的代码实现向构造一个树形菜单的功能:d = new dTree(d);/创建dTree实例d.add(0,-1,network types);/构造根目录d.add(1,0,Crossed Cube Network);/在根目录下添加第一个菜单d.add(2,0,BCDC Network);d

44、.add(3,0,CQIST,javascript:fun3();d.add(4,0,BCDC IST,javascript:fun4();document.write(d);点击open all,所有的二级菜单都会打开,点击 close all ,所有的二级菜单都会收敛。点击 Crossed Cube Network ,当前菜单下的二级菜单会展开。再次点击Crossed Cube Network二级菜单又会收起。点击BCDC Network出现的效果与上述相同,此处不多加赘述。点击CQIST 左侧的页面会跳转到CQIST的构造页面。点击BCDC IST 同上,不多加赘述。5.2Crossed

45、 Cube和BCDC的网络拓扑在绘制网络结构之前,将每个点的坐标、颜色值、标签,全部保存在一个*.json文件内,然后调用Sigma.js库在HTML中的canvas内进行绘制。json数据文件格式如下:(1) 点数据x:69.26331329345703,y:1.335468053817749,id:000,attributes:,color:rgb(26,255,255),size:10.0(2) 边数据:source:001,target:111,id:16,attributes:color:#00ff00,color:rgb(0,255,0),size:1.0下面的代码实现 对一个名为arctic.json文件的解析,并添加一个

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁