[发明专利]一种基于最短路径的新一代网络实现方法有效
申请号: | 201911015522.8 | 申请日: | 2019-10-24 |
公开(公告)号: | CN110719208B | 公开(公告)日: | 2021-10-01 |
发明(设计)人: | 王晓喃;蔡少豪;殷旭东 | 申请(专利权)人: | 常熟理工学院 |
主分类号: | H04L12/24 | 分类号: | H04L12/24;H04L12/721 |
代理公司: | 南京瑞弘专利商标事务所(普通合伙) 32249 | 代理人: | 吴旭 |
地址: | 215500 江苏省苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 路径 新一代 网络 实现 方法 | ||
1.一种基于最短路径的新一代网络实现方法,其特征在于,所述网络由两个以上的节点和两个以上的路由器构成;
每个路由器配置两个以上的上游接口和两个以上的下游接口,每个上游接口与其他路由器相连,每个下游接口与节点相连;
每个节点具有一个接口,该接口与一个路由器相连;
每个接口由接口ID唯一标识,接口ID为t的接口记为接口t;
一种数据由名称唯一定义,每个路由器具有唯一的坐标;
节点通过电子地图能够获取路由器的坐标;
一个消息由消息类型定义,如下表所示:
消息类型的值 消息名称 1 注册消息 2 邻居消息 3 转发消息 4 请求消息 5 响应消息
路由器保存一个转发表,一个转发表项包含坐标域、接口ID、名称和生命周期;
一个节点和一个路由器分别保存一个数据表,一个数据表项包含名称、数据值和生命周期;
注册消息包含消息类型、名称和数据值;
在节点N1能提供数据DA1,数据DA1由名称NA1定义,节点N1与路由器R1相连的条件下,节点N1定期执行下述操作:
步骤101:开始;
步骤102:节点N1创建一个数据表项,该数据表项的名称为NA1,数据值为DA1,生命周期为最大值,发送一个注册消息,该注册消息的消息类型的值为1,名称为NA1,数据值为DA1;
步骤103:路由器R1从接口f1接收到注册消息后查看转发表,如果存在一个转发表项,该转发表项的接口ID等于f1且名称域值等于该注册消息的名称域值,则执行步骤104,否则执行步骤105;
步骤104:路由器R1选择一个转发表项,该转发表项的接口ID等于f1且名称域值等于该注册消息的名称域值,将该转发表项的生命周期设置为最大值,执行步骤106;
步骤105:路由器R1创建一个转发表项,该转发表项的接口ID等于f1,名称域值等于该注册消息的名称域值,坐标域值为空,生命周期设置为最大值;
步骤106:路由器R1查看数据表,如果存在一个数据表项,该数据表项的名称域值等于该注册消息的名称域值,则执行步骤107,否则执行步骤108;
步骤107:路由器R1选择一个数据表项,该数据表项的名称域值等于该注册消息的名称域值,将该数据表项的生命周期设置为最大值,执行步骤109;
步骤108:路由器R1创建一个数据表项,该数据表项的名称域值等于该注册消息的名称域值,数据值等于该注册消息的数据值,将生命周期设置为最大值;
步骤109:结束;
一个路由器保存一个邻居表,一个邻居表项包含坐标、接口ID和生命周期;
一个邻居表项包含消息类型和坐标;
路由器R1定期执行下述操作:
步骤201:开始;
步骤202:路由器R1从每个上游接口发送一个邻居消息,该邻居消息的消息类型的值为2,坐标为路由器R1的坐标;
步骤203:邻居路由器从接口f2接收到该邻居消息后查看邻居表,如果存在一个邻居表项,该邻居表项的坐标等于该邻居消息的坐标,则执行步骤204,否则执行步骤205;
步骤204:从接口f2接收到该邻居消息后的邻居路由器选择一个邻居表项,该邻居表项的坐标等于该邻居消息的坐标,将该邻居表项的接口ID更新为f2,将生命周期设置为最大值,执行步骤206;
步骤205:从接口f2接收到该邻居消息后的邻居路由器创建一个邻居表项,该邻居表项的坐标等于该邻居消息的坐标,接口ID等于f2,将生命周期设置为最大值;
步骤206:结束;
转发消息包含消息类型、名称集合和坐标;
路由器R1建立数据表后,定期执行下述操作:
步骤301:开始;
步骤302:路由器R1设置一个名称集合参数np1,参数np1的初始值为空;路由器R1查看数据表,针对每个数据表项,路由器R1执行下述操作:路由器R1判断该数据表项的名称是否包含在参数np1中,如果是则路由器R1不做任何操作,否则路由器R1将该数据表项的名称加入到参数np1中;
步骤303:路由器R1从每个上游接口发送一个转发消息,该转发消息的消息类型的值为3,名称集合为参数np1,坐标为路由器R1的坐标;
步骤304:其他路由器从接口x1接收到该转发消息,针对该转发消息的名称集合中的每个名称NA1,该路由器执行下述操作:如果该路由器存在一个转发表项,该转发表项的名称等于NA1,坐标等于该转发消息的坐标,接口ID等于x1,生命周期大于阈值TH1,则执行步骤309,否则执行步骤305;
步骤305:从接口x1接收到该转发消息的路由器判断是否存在一个转发表项,该转发表项的名称等于NA1,坐标等于该转发消息的坐标,如果是则执行步骤306,否则执行步骤307;
步骤306:从接口x1接收到该转发消息的路由器选择一个转发表项,该转发表项的名称等于NA1,坐标等于该转发消息的坐标,将该转发表项的接口ID设置为x1,将生命周期设置为最大值,执行步骤308;
步骤307:从接口x1接收到该转发消息的路由器创建一个转发表项,该转发表项的名称等于NA1,坐标等于该转发消息的坐标,接口ID等于x1,将生命周期设置为最大值;
步骤308:从接口x1接收到该转发消息的路由器从除了接口x1以外的每个上游接口转发该转发消息,执行步骤304;
步骤309:结束。
2.根据权利要求1所述的一种基于最短路径的新一代网络实现方法,其特征在于,
每个路由器保存一个路径表,一个路径表项包含接口ID和名称;
请求消息包含消息类型和名称;
响应消息包含消息类型、名称、数据值和坐标;
节点N2与路由器R2相连,数据DA1由名称NA1定义,节点N2通过下述过程获取数据DA1:
步骤401:开始;
步骤402:节点N2发送一个请求消息,该请求消息的消息类型的值为4,名称为NA1;路由器R2从接口y1接收到该请求消息后查看数据表,判断是否存在一个数据表项,该数据表项的名称等于该请求消息的名称,如果是则执行步骤403,否则执行步骤404;
步骤403:路由器R2选择一个数据表项,该数据表项的名称等于该请求消息的名称,路由器R2创建一个响应消息,该响应消息的消息类型的值为5,名称等于该请求消息的名称,数据值等于该数据表项的数据值,坐标等于路由器R2的坐标,路由器R2从接口y1发送该响应消息,执行步骤420;
步骤404:路由器R2查看路径表,判断是否存在一个路径表项,该路径表项的名称等于接收到的请求消息的名称且接口ID等于y1,如果是则执行步骤420,否则执行步骤405;
步骤405:路由器R2查看路径表,判断是否存在一个路径表项,该路径表项的名称等于接收到的请求消息的名称,如果是则执行步骤406,否则执行步骤407;
步骤406:路由器R2创建一个路径表项,该路径表项的名称等于接收到的请求消息的名称且接口ID等于y1,执行步骤420;
步骤407:路由器R2创建一个路径表项,该路径表项的名称等于接收到的请求消息的名称且接口ID等于y1;路由器R2判断是否存在一个转发表项,该转发表项的名称等于该请求消息的名称且坐标为空,是则执行步骤408,否则执行步骤409;
步骤408:路由器R2选择一个转发表项,该转发表项的名称等于该请求消息的名称且坐标为空,从该转发表项的接口ID所标识的接口转发该请求消息,执行步骤410;
步骤409:路由器R2选择所有名称等于该请求消息的名称的转发表项,从这些转发表项中,路由器R2选择一个转发表项,该转发表项的坐标距离路由器R2的坐标最近,从选中的转发表项的接口ID所标识的接口转发该请求消息;
步骤410:如果节点接收到该请求消息,则执行步骤419,否则执行步骤411;
步骤411:路由器从接口y2接收到该请求消息后查看数据表,如果存在一个数据表项,该数据表项的名称等于该请求消息的名称,则执行步骤412,否则执行步骤413;
步骤412:从接口y2接收到该请求消息的路由器选择一个数据表项,该数据表项的名称等于该请求消息的名称,从接口y2接收到该请求消息的路由器创建一个响应消息,该响应消息的消息类型的值为5,名称等于该请求消息的名称,数据值等于该数据表项的数据值,坐标等于该路由器的坐标,从接口y2发送该响应消息,执行步骤420;
步骤413:从接口y2接收到该请求消息的路由器查看路径表,如果存在一个路径表项,该路径表项的名称等于接收到的请求消息的名称且接口ID等于y2,则执行步骤420,否则执行步骤414;
步骤414:从接口y2接收到该请求消息的路由器查看路径表,如果存在一个路径表项,该路径表项的名称等于接收到的请求消息的名称,则执行步骤415,否则执行步骤416;
步骤415:从接口y2接收到该请求消息的路由器创建一个路径表项,该路径表项的名称等于接收到的请求消息的名称且接口ID等于y2,执行步骤420;
步骤416:从接口y2接收到该请求消息的路由器创建一个路径表项,该路径表项的名称等于该请求消息的名称且接口ID等于y2;该路由器判断是否存在一个转发表项,该转发表项的名称等于该请求消息的名称且坐标为空,是则执行步骤417,否则执行步骤418;
步骤417:从接口y2接收到该请求消息的路由器选择一个转发表项,该转发表项的名称等于该请求消息的名称且坐标为空,从该转发表项的接口ID所标识的接口转发该请求消息,执行步骤410;
步骤418:从接口y2接收到该请求消息的路由器选择所有名称等于该请求消息的名称的转发表项,从这些转发表项中,从接口y2接收到该请求消息的路由器选择一个转发表项,该转发表项的坐标距离该路由器的坐标最近,从选中的转发表项的接口ID所标识的接口转发该请求消息,执行步骤410;
步骤419:节点接收到请求消息后,选择一个数据表项,该数据表项的名称等于该请求消息的名称,节点发送一个响应消息,该响应消息的消息类型的值为5,名称等于该请求消息的名称,数据值等于该数据表项的数据值,坐标等于与该节点连接的路由器的坐标;
步骤420:如果其他节点接收到响应消息,则执行步骤427,否则执行步骤421;
步骤421:路由器接收到响应消息后,选择所有名称域值等于该响应消息的名称的路径表项,针对每个选中的路径表项E1,该路由器执行下述操作:如果存在一个转发表项,该转发表项的名称和接口ID分别等于路径表项E1的名称和接口ID且坐标等于该响应消息的坐标,则执行步骤422,否则执行步骤423;
步骤422:接收到响应消息的路由器选中一个转发表项,该转发表项的名称和接口ID分别等于路径表项E1的名称和接口ID且坐标等于该响应消息的坐标,将该转发表项的生命周期设置为最大值,执行步骤424;
步骤423:接收到响应消息的路由器创建一个转发表项,该转发表项的名称和接口ID分别等于路径表项E1的名称和接口ID且坐标等于该响应消息的坐标,则将该转发表项的生命周期设置为最大值;
步骤424:接收到响应消息的路由器判断路径表项E1的接口ID所标识的接口为该路由器的下游接口,如果是则执行步骤425,否则执行步骤426;
步骤425:接收到响应消息的路由器查看数据表,如果存在一个数据表项,该数据表项的名称等于该响应消息的名称,则将该数据表项的生命周期设置为最大值;否则该路由器创建一个数据表项,该数据表项的名称等于该响应消息的名称,数据值等于该响应消息的数据值,生命周期设置为最大值;
步骤426:接收到响应消息的路由器从路径表项E1的接口ID所标识的接口转发该响应消息,删除路径表项E1,执行步骤420;
步骤427:节点接收到响应消息后,创建一个数据表项,该数据表项的名称等于该响应消息的名称,数据值等于该响应消息的数据值,生命周期设置为最大值;
步骤428:结束。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于常熟理工学院,未经常熟理工学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911015522.8/1.html,转载请声明来源钻瓜专利网。