- 1、本文档共54页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * 物理模型着重子网管理的外部特性。 逻辑模型则是子网管理的实质。 * * 从子网管理的逻辑模型也可以看出,子网管理涉及3个重要实体:子网管理器,子网管理代理,子网管理数据包。子网管理数据包是通信的基础。 * * * * 在子网的初始化,配置过程中,直接路由SMP起了很大的作用。 * 理解了SMA的对象模型,就很容易理解后面的OpenSM的对象模型。 * * * * 状态机最终要的是确保在一个稳定运行的子网中有且只有一个主SM。主SM的选择由SM的优先级和SM所在端口的GUID确定。 * SM的主要功能也就是子网管理中的几个关键问题。 * 子网探测包括初始化时子网拓扑的发现以及子网运行是检测拓扑改变。 * * 增加设备的过程和子网发现的过程有很多相似的地方。 * * * * * 这些特性是OpenSM项目网站上列出的,具体对应的版本可能与我分析的源代码版本不同。 * * * * * * * * * * * * OpenSM数据模型—层次 Subnet类是OpenSM中保存子网信息的一个类,最重要的就是子网的拓扑信息。在Subnet类中保存了子网中所有CA,交换机,路由器的信息,以及这些节点的端口的连接信息(拓扑)。 子网的初始化和运行一个重要部分就是构造和维护Subnet类:子网启动以后,SM每发现一个设备,就构造一个对应的类,并将这个类加入到Subnet类中;子网运行过程中,SM也会根据子网的变化同步Subnet类,使得Subnet类中的拓扑和实际拓扑保持一致。 子网的配置也是根据Subnet类中保存的信息综合以后进行的,例如每个交换机的转发表就是根据Subnet中的拓扑信息生成的。 OpenSM数据模型—Subnet类 OpenSM运行模型 从外界获取程序运行所需的配置参数 创建各种数据结构,如日志对象,Opensm对象,sm对象,子网对象,以及用于保存程序运行信息的图表,如节点表,交换机表等。 初始化各对象,如根据参数设置对象属性,初始化相关的定时器,线程,信号等。 创建发送线程,接收线程,扫描线程,分配器工作线程等。 循环等待,直到程序遇到结束标志。 程序基本流程 发现子网 分配LID 构造每个交换机的LID矩阵 构造每个交换机的转发表 将转发表分发到对应的交换机 将端口置为准备状态 将端口置为活动状态 子网配置过程 发送一个直接路径长度为0的SMP,获取本地的节点信息。 发送直接路径长度为1的SMP,如果SM所在节点为CA或路由器,则只需要发送一个,如果节点为交换机,则需要构造多个SMP,每个SMP的直接路径为交换机的一个活动端口。 当收到响应时,判断响应节点是否是新设备,如果是新设备,则继续向外探测,直到没有新的设备发现为止(子网发现完成)。 发现子网—子网启动 向每个交换机发送包含Get方法的SMP,更新每个交换机的信息。 对于每个交换机的每个端口:如果端口的状态不是down,但是这个端口不指向一个端口,说明子网中新加入了设备,构造一个直接路由SMP(包含一段LID路由)获取这个端口连接的节点信息。 如果发现有交换机的端口状态发生改变(拓扑改变),程序会重新扫描整个网络。 扫描完成后,还会删除一些丢失的节点。 子网探测—子网启动后 所有已分配的LID保存在PORT_LID_TBL表中,端口的GUID和LID的映射表保存在GUID_TO_LID_TBL表中。 若端口的GUID在GUID_TO_LID_TBL表中已经存在,则表明已经分配过LID,不需要再分配LID。 在PORT_LID_TBL中寻找一个足够大小的区间(如果LMC0,每一个端口需要分配多于一个LID),分配这一段LID,更新PORT_LID_TBL和GUID_TO_LID_TBL,然后设置端口的PORTINFO中的LID字段。 LID分配 Minhop最小跳数算法(默认路由算法) Updn Up/down 算法 Ftree胖树算法 Lash算法 从文件中加载路由表 Dor算法 OpenSM支持的路由算法 每个交换机对象中都存有一个LID MATRIX 对象,LID MATRIX中保存交换机从它的某个端口到达某个LID的最小距离 LID MATRIX中只表示交换机和交换机之间的连接,先忽略CA和路由器。 在OpenSM中LID MATRIX使用一个二维的hops[][]矩阵表示 路由算法分两步执行: 构造LID矩阵 build_lid_matrices 构造转发表 ucast_build_fwd_tables LID矩阵路由算法 LID矩阵的内容在最初都是NO_PATH,即通过交换机的任何一个端口不能到达任何一个LID 交换机到达自身的端口0(管理端口)的LID的距离是0,交换机到达和自己相连的交换机的端口0的LID的距离是1.
您可能关注的文档
- JTG-F80-1-2017版《公路工程质量检验评定标准》修订情况培训宣贯PPT课件.ppt
- jobs-careers-工作-职业-英语-(有图片)PPT课件.ppt
- ISO9000与企业质量管理体系PPT课件.pptx
- JGJ-55-2011-普通混凝土配合比设计规程PPT课件.ppt
- Jeremy-Bentham-and-utilitarianism-边沁和功利主义PPT课件.ppt
- JAVA设计模式之开闭原则PPT课件.pptx
- Jane-Eyre-小说简爱的英文介绍PPT课件.ppt
- ISO9001-2015质量管理体系培训PPT课件.pptx
- it-is-that强调句型的讲解PPT课件.ppt
- ISO9000质量管理体系认证相关知识PPT课件.ppt
- 2025年成都市玩偶生产荧光涂鸦互动玩偶开发可行性研究报告.docx
- 2025年成都市海绵生产用于体育馆室外运动场地透水改造可行性研究报告.docx
- 2025年天津市体操鞋企业团建运动应用报告.docx
- 2025年上海市溶洞极限运动(速降)场地开发可行性研究报告.docx
- 2025年上海市涵洞工程施工技术应用可行性研究报告.docx
- 2025年上海市体育场馆设施扎带安全防护可行性研究报告.docx
- 2025年上海市牦牛育肥产业园区建设可行性研究报告.docx
- 2025年旅拍宠物陪伴拍摄项目可行性研究报告.docx
- 2025年上海市进口食品节庆主题快闪店可行性研究报告.docx
- 2025年上海市洗选厂尾矿综合利用产业化可行性研究报告.docx
文档评论(0)