网络装置以及发送程序的制作方法_3

文档序号:8417944阅读:来源:国知局
”。
[0096]节点200N生成数据包(步骤S57)。在步骤S57中,节点200N在LS中设定节点200N的地址,在LD中设定节点2000的地址。节点200N将TYPE设定为“DATA”。节点200N在⑶中设定GW100的地址,在GS中设定节点200Y的地址。在TTL中设定从由节点200Q接收到的数据包的TTL减I而得的值“8”。
[0097]节点200N发送数据包(步骤S58)。节点O接收数据包,在RT2010中追加条目(步骤S59)。省略步骤S59的详细说明。
[0098]如上述那样,各节点200通过发送发给GW100的数据包,而在各节点200的RT中登记各目的地。图13是表示进行下行方向的路径构建的情况下的数据包的发送路径的一个例子的图。如图13所示,假设通过发送路径30a、30b、30c、30d、30e、30f使得数据包到达GW100。于是,例如,在节点200A的RT中登记有GW100、节点200L、200M的条目。在节点 200B 的 RT 中登记有 GW100、节点 200G、200N、2000、200P、200Q、200R、200Y 的条目。在节点200C的RT中登记有GfflOO的条目ο在节点200D的RT中登记有GW100、节点200F、节点200H、节点2001、200T、200W、200Z、200U、200V的条目。在节点E的RT中登记有GW100、节点200J、200K、200S、200X 的条目。
[0099]接下来,对本实施例2所涉及的GW100以及节点200的构成进行说明。由于GW200以及节点200的构成相同,所以在此,对GW100的构成进行说明。图14是表示本实施例2所涉及的GW的构成的功能框图。
[0100]如图14所示,该GW100具有接收部101、分支处理部102、链路表103、路由表104、自身节点信息表105、FID管理表106、问候包处理部107。另外,GfflOO具有问候包生成部108、目的地处理部109、上位层处理部110、FID生成部111,数据包处理部112、相邻包处理部113、发送部114。
[0101]接收部101是接收从其他节点200发送的包的处理部。
[0102]分支处理部102以包的种类为基础,将包向问候包处理部107、数据包处理部112、相邻包处理部113输出。分支处理部102在包的TYPE为“Hello”的情况下,将包向问候包处理部107输出。分支处理部102在包的TYPE为“DATA”或者“DATA ACK”的情况下,将包向数据包处理部112输出。分支处理部102在包的TYPE为“相邻RREQ”或者“相邻RREP的情况下,将包向相邻包处理部113输出。
[0103]对分支处理部102的处理顺序进行说明。图15是表示分支处理部的处理顺序的流程图。如图15所示,分支处理部102判断接收到的包的TYPE是否为“Hello”(步骤S101)。分支处理部102在包的TYPE为“Hello”的情况下(步骤S101,是),向问候包处理部107输出包(步骤S102)。
[0104]另一方面,分支处理部102在包的TYPE不为“Hello”的情况下(步骤S101,否),判断包的TYPE是否为“DATA”或者“DATA ACK” (步骤S103)。分支处理部102在包的TYPE为“DATA”或者“DATA ACK”的情况下(步骤S103,是),向数据包处理部112输出包(步骤S104)ο
[0105]另一方面,分支处理部102在包的TYPE不为“DATA”或者“DATA ACK”的情况下(步骤S103,否),判断包的TYPE是否为“相邻RREQ”或者“相邻RREP” (步骤S105)。分支处理部102在包的TYPE为“相邻RREQ”或者“相邻RREP”的情况下(步骤S105,是),向相邻包处理部113输出包(步骤S106)。
[0106]另一方面,分支处理部102在包的TYPE不为“相邻RREQ”或者“相邻RREP”的情况下(步骤S105,否),废弃包(步骤S107)。
[0107]链路表103是保持GW100的相邻节点的信息的表。图16是表示链路表的数据结构的一个例子的图。例如,如图16所示,链路表103将相邻节点的LD与接收信号强度(RSSI:Received Signal Strength Indicat1n)建立对应地进行存储。
[0108]路由表104是对用于向包的目的地发送的转送目的地进行保持的表。图17是表示路由表的数据结构的一个例子的图。例如,如图17所示,路由表104将GD、LD、Hop建立对应。⑶登记包的目的地地址。LD登记用于向包的目的地发送的转送目的地的地址。Hop表示到达包的目的地为止的Hop数。在图17所示的例子中,包的目的地为节点200L的情况下,包的转送目的地成为节点200A。
[0109]自身节点信息表105保持与自身节点相关的各种信息。
[0110]FID管理表106保持用于进行数据包的重新发送、循环检测、回溯的信息。图18是表示FID管理表的数据结构的一个例子的图。如图18所示,该FID管理表106将GS、FID、数据包、状态、接收信号强度(RSSI)建立对应地进行存储。GS表示包的发送源地址。FID是唯一识别包的信息。数据包是数据包的数据。状态表示包的状态。例如,在为相邻RREP包的等待状态的情况下,状态成为“相邻RREP包等待”。接收信号强度表示接收到相邻RREP包的情况下的接收信号强度。
[0111]问候包处理部107是根据问候包的信息,来更新链路表103以及路由表104的处理部。
[0112]对问候包处理部107更新链路表103的处理进行说明。问候包处理部107将问候包的LS设定为链路表103的LD,并与接收信号强度建立对应。问候包处理部107计测问候包的接收信号强度,并设定于链路表103。
[0113]对问候包处理部107更新路由表104的处理进行说明。问候包处理部107通过与图9所示的面向GW的上行方向的路径构建同样的方法,更新路由表104。
[0114]问候包生成部108周期性地根据自身节点信息105和路由表104生成问候包,并将所生成的问候包向发送部114输出。问候包生成部108生成问候包的处理与图9所示的面向GW的上行方向的路径构建以及图11所示的下行方向的路径构建相同。
[0115]目的地处理部109是对包的目的地与链路表103、路由表104进行比较,决定转送目的地的处理部。例如,目的地处理部109也可以在路由表104中存在多个转送目的地的情况下,将链路表103的接收信号强度大的节点优先作为转送目的地进行选择。
[0116]上位层处理部110是进行使用了数据包的通信的最终处理的处理部。
[0117]FID生成部111是生成唯一识别数据包的FID的处理部。通过FID和发送源地址的组合,唯一确定包。
[0118]数据包处理部112是在接收到数据包的情况下执行各种处理的处理部。数据包处理部112在接收到发给自身节点的数据包的情况下,或者在接收到最初的广播数据的情况下,通知给上位层处理部110。数据包处理部112在重复接收到同一数据包的情况下,废弃数据包。
[0119]数据包处理部112在数据包的目的地为自身节点以外的情况下,参照FID管理表106,进行重新发送、循环检测、回溯的检测。另外,数据包处理部112在转送数据包的情况下,从目的地处理部109取得转送目的地并通知给发送部114。
[0120]在此,对数据包处理部112的处理进行具体说明。图19以及图20是表示数据包处理部的处理顺序的流程图。在图19以及图20中,将数据包记载为DP。如图19所示,数据包处理部112判断是否接收到消息(步骤S201)。
[0121]数据包处理部112在没有接收到消息的情况下(步骤S201,否),等待规定时间(步骤S202),执行计时处理(步骤S203),移至步骤S21。
[0122]数据包处理部112在接收到消息的情况下(步骤S201,是),判断是否是来自分支处理部102的委托(步骤S204)。
[0123]数据包处理部112在不是来自分支处理部102的委托的情况下(步骤S204,否),判断是否是来自上位层处理部110的委托(步骤S205)。数据包处理部112在不是来自上位层处理部110的委托的情况下(步骤S205,否),判断是否是来自相邻包处理部113的委托(步骤S206) ο
[0124]数据包处理部112在不是来自相邻包处理部113的委托的情况下(步骤S206,否),废弃DP (步骤S208),移至步骤S201。另一方面,数据包处理部112在是来自相邻包处理部113的委托的情况下(步骤S206,是),将接受的DP向发送部114输出(步骤S207),移至步骤S201。在步骤S207中,数据包处理部112在从相邻包处理部113取得的DP的LD中设定从其他节点200得到的相邻RREP包的LS。
[0125]返回步骤S205的说明。数据包处理部112在是来自上位层处理部110的委托的情况下(步骤S205,是),设定DP的参数(步骤S209)。在步骤S209中,数据包处理部112在DP的GS中设定自身节点的地址,在⑶中设定上位层处理部110所指定的目的地地址。数据包处理部112在DP的LS中设定自身节点的地址,在Hop中设定Hop数的初始值。数据包处理部112在DP的FID中设定由FID生成部111生成的FID的信息。
[0126]数据包处理部112利用目的地处理部109,检索RT104中是否有针对目的地的条目(步骤 S210)。
[0127]数据包处理部112在没有条目的情况下(步骤S211,否),在FID管理表106中登记条目(步骤S212)。数据包处理部112将相邻RREQ包的创建委托给相邻包处理部113(步骤S213),移至步骤S201。
[0128]另一方面,数据包处理部112在有条目的情况下(步骤S211,是),在DP的LD中设定转送目的地(步骤S214),在FID管理表106中登记条目(步骤S215)。数据包处理部112将DP向发送部114输出(步骤S216),移至步骤S201。
[0129]返回步骤S204的说明。数据包处理部112在是来自分支处理部102的委托的情况下(步骤S204,是),判断接收到的DP的LD是否是自身节点的地址(步骤S217)。数据包处理部112在DP的LD不是自身节点的地址的情况下(步骤S217,否),废弃DP (步骤3218),移至步骤5201。
[0130]另一方面,数据包处理部112在DP的LD是自身节点的地址的情况下(步骤S217,是),执行RT条目登记处理(步骤S219)。在步骤S219中,数据包处理部112通过与图11所示的
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1