网络设备、发送目的地查询方法及计算机可读存储介质的制作方法

文档序号:7853111阅读:147来源:国知局
专利名称:网络设备、发送目的地查询方法及计算机可读存储介质的制作方法
技术领域
本文中讨论的实施例涉及网络设备等。
背景技术
某些中继设备,例如,网络交換机或无线自组织(ad-hoc)装置,具有关于在数据链路层(层2)中使用的地址(MAC地址)的学习功能。这样的中继设备将用户期望发送的帧发送给其中存在帧的发送目的地地址的物理线路。然而,如果不知道哪条物理线路中存在发送目的地地址,中继设备向连接到中继设备的所有物理线路传送该帧。这被称为“洪泛(flooding),,。说明ー种用于查询发送目的地地址的技木。在该技术中,为了查询发送目的地地址,无线电站(radio station)使用查询巾贞和响应巾贞来与该无线电站的相邻的无线电站交 换用于中继帧的路由信息。根据所交換的信息,无线电站检测不包括在所述无线电站的学习表中但包括在相邻的无线电站的学习表中的无线电站。结果,如果所检测的无线电站与发送目的地地址一致,则所述无线电站可以经由相邻的无线电站将帧中继至发送目的地地址的无线电站。在另ー种技术中,如果在学习表中没有注册有与所接收到的帧的发送目的地地址一致的地址,则中继设备向与该中继设备连接的所有中继设备查询是否注册有与所述发送目的地地址一致的地址。当所述中继设备接收到从被确定为已经注册的中继设备发送的响应帧时,所述中继设备经由响应帧的接收端ロ来中继所接收到的帧。存在如下作为公开了相关技术的文献日本公开特许公报No. 2006-319676和日本公开特许公报No. 2009-200632。然而,在层2中的通信中,当没有学习到发送目的地地址的中继设备查询发送目的地地址时,出现了不必要的流量并且可能不能保持安全性。具体地,当中继设备执行洪泛时,所述中继设备向与其相连的所有物理线路传送帧。因此出现了不必要的流量。结果,由于分组捕获所引起的搭线窃听(wiretappling)的可能性增加。在用干与相邻的无线电站交换路由信息的技术中,无线电站通过将无线电站的学习表附加到路由信息来在彼此之间交流路由信息。因此,出现了不必要的流量。此外,如果相邻的无线电站不知道发送目的地地址,无线电站会不能够经由该相邻的无线电站来将帧中继至发送目的地地址。在用于向所有的相连的中继设备查询发送目的地地址的技术中,除非在所有的中继设备中注册该发送目的地地址,否则在查询源处的中继设备可能不能对所接收到的帧进行中继。因此,本发明的实施例的ー个方面的目的是提供一种能够当在层2中查询发送目的地地址时实现流量减小并保持安全性的网络设备等。

发明内容
根据本发明实施例的ー个方面,网络设备包括存储单元、查询单元以及发送単元。所述存储単元与发送目的地的节点的地址相关联地存储在向节点发送帧的过程中所使用的发送目的地信息。所述查询単元当检测到表示发送请求的帧并且在存储单元中没有存储与所检测到的帧的发送目的地地址相关联的发送目的地信息吋,向相邻节点发送对于发送目的地信息的查询请求,所述查询请求加入有表示向其发送所述查询请求的节点的数目的预定跳数。所述发送単元基于对查询请求的响应信息来发送表示发送请求的帧。


图I是示出了根据实施例的网络系统的配置的功能框图;图2是示出了学习表的数据结构的示例的图;图3是示出了查询管理表的数据结构的示例的图;图4A是示出了查询帧的格式的示例的图;
图4B是示出了响应帧的格式的示例的图;图5是用于说明根据实施例的地址查询(查询源)的过程的流程图;图6是用于说明根据实施例的地址查询(查询目的地)的过程的流程图;图7A是用于说明当跳数是I时所交換的帧的帧流的特定示例的图;图7B是用于说明当跳数是2时所交換的帧的帧流的特定示例的图;图8是用于说明当根据实施例的地址查询用于HT (手持式終端)时所执行的通信序列的图;以及图9是示出了执行发送目的地查询程序的计算机的图。
具体实施例将參照附图来说明本发明的优选实施例。在下面所述的实施例中,本发明应用于使用以太网(注册商标)执行在数据链路层(层2)中的通信控制的网络设备。本发明并不限制于该实施例。根据实施例的网络系统的配置图I是示出了根据实施例的网络系统的配置的功能框图。如图I所示,网络系统9包括网络设备I和η个网络设备2。网络设备I直接连接至所述η个网络设备2或经由网络中的传输线路间接连接至所述η个网络设备2。连接方法可以是有线连接或无线连接。在下面的说明中,假设网络设备I和所述η个网络设备2以有线方式连接。网络设备I和2在层2中执行通信,以使用MAC地址来识别发送目的地。网络设备I的配置当网络设备I检测到表示发送请求的帧时,如果网络设备I未学习到该帧的发送目的地的发送目的地信息时,网络设备I向与网络设备I相邻的网络设备2发送用于查询发送目的地的发送目的地信息的查询请求。这样的查询请求包括网络设备2向其查询发送目的地的发送目的地信息的设备的数目(以下称为“跳数”)。对网络设备I的配置进行说明。网络设备I包括控制单元10和存储单元20。控制単元10为集成电路(例如专用集成电路(ASIC)或现场可编程门阵列(FPGA))或电子电路(例如中央处理器(CPU)或微处理器(MPU))。另外,控制单元10包括帧接收単元11、帧发送单元12、应用单元13、地址学习单元14、转移单元15A、地址检索单元16以及地址查询单元17。存储单元20为半导体存储器装置(例如随机存储器(RAM)或闪存)或例如为硬盘或光盘的存储装置。另外,存储单元20包括学习表21和查询管理表22。帧接收单元11从传输线路接收例如表示发送请求的帧或用于中继所述帧的中继帧。帧接收単元11从网络设备2接收对查询请求的响应,所述查询请求用于查询与所述发送请求相关的发送目的地的发送目的地信息。帧发送单元12向传输线路发送各种帧。应用单元13执行应用。例如,应用单元13执行用于生成到网络设备2的发送请 求的应用。地址学习单元14从由帧接收单元11接收到的帧学习发送源的地址。例如,地址学习单元14将由帧接收单元11接收到的帧的发送源的MAC地址与接收所述帧的端ロ相关联地存储在学习表21中。如果在学习表21中存储有该发送源的MAC地址,则已经学习到该发送源的MAC地址。因此,地址学习単元14不将该发送源的MAC地址加入到学习表21中。參照图2来说明学习表21的数据结构。图2是示出了学习表的数据结构的示例的图。如图2所示,学习表21存储彼此相关联的地址21a和物理端口号21b。在地址21a中,存储了学习到的MAC地址。当之后说明的地址检索单元16确定是否学习到了帧的发送目的地地址时使用该地址21a。在物理端口号21b中,存储了发送目的地信息,即由与物理端口号21b相关联的地址21a所表示的设备的端口号。換言之,在物理端口号21b中,端口号被存储为通过发送目的地的MAC地址识别的网络设备2的发送目的地信息。物理端口号21b是物理发送目的地信息,但可以是虚拟发送目的地信息。具体地,可以使用关于虚拟局域网(VLAN)的信息代替物理端ロ号来作为发送目的地信息。物理端口号21b是有线连接情况下的发送目的地信息,但可以是无线连接情况下的发送目的地信息。在无线连接情况下,发送目的地信息可以是在传送帧的过程中的相邻设备的MAC地址而不是物理端口号。作为学习表21的示例,如果地址21a是“AAAA”,“端ロ I”被存储为物理端口号21b。转移单元15A根据接收到的帧来转移处理。例如,如果由地址学习単元14所获取的帧的发送目的地地址是网络设备I的地址,为了执行使用所述帧的应用,转移单元15A将所述帧传送给应用単元13。如果由地址学习単元14所获取的帧的发送目的地地址是除了网络设备I之外的网络设备的地址,转移単元15A确定所述帧是表示发送请求的帧或中继帧,并将所述帧传送给地址检索单元16。如果由地址学习単元14所获取的帧是在查询请求中使用的帧,转移単元15A确定所述帧是对查询请求的响应并将所述帧传送给查询处理单元 171A。地址检索単元16对于从转移单元15A传送过来的帧来从学习表21中检索对应于发送目的地地址的发送目的地信息。如果地址检索单元16成功检索到对应于发送目的地地址的发送目的地信息,地址检索単元16基于所检索到的发送目的地信息来经由帧发送単元12发送从转移单元15A传送过来的帧。另ー方面,如果地址检索单元16在检索对应于发送目的地地址的发送目的地信息中失败,地址检索単元16确定没有学习到发送目的地地址。为了查询对应于发送目的地地址的发送目的地信息,地址检索単元16将从转移单元15A传送过来的巾贞传送给地址查询单元17。在上述说明中,地址检索单元16对于从转移単元15A传送过来的帧来从学习表21中检索对应于发送目的地地址的发送目的地信息。然而,这并不作为限制。例如,即使表示所述发送请求的帧从应用単元13传送给地址检索単元16,地址检索単元16可以对于所述帧来从学习表21中检索对应于所述发送目的地地址的发送目的地信息。地址查询单元17包括查询处理单元171A和响应处理单元172。查询处理单元171A创建通过将跳数加入到由地址检索単元16确定为未学习到的发送目的地地址中而获得的发送目的地信息的查询帧。所述“查询帧”是指在查询发送目的地地址的发送目的地信息中所使用的帧。例如,查询处理单元171A在查询帧的用户数据部分中设置预定的跳数和用户期望查询的发送目的地地址。查询处理单元171A在查询管理表22中存储在发送查询帧之后等待响应的响应等待时间。查询处理单元171A经由帧发送单元12将所创建的查询帧发送 给相邻网络设备2。如果存在多个相邻网络设备2,查询处理单元171A期望将查询帧同时发送给网络设备2。这是为了減少查询时间。预定跳数可以为在网络设备I侧的除起网络的干线作用的骨干网之外的网络设备2的数目。骨干网被排除在外是为了防止查询施加网络载荷并减少所述查询本身的时间。然而,如果网络的整体配置是未知的,可以将网络中的最大跳数设置为预定跳数。參照图3来说明查询管理表22的数据结构。图3是示出了查询管理表的数据结构的示例的图。如图3所示,查询管理表22存储了彼此相关联的地址22a、物理端口号22b以及响应等待定时器值22c。在地址22a中,存储了待查询的发送目的地地址。在物理端口号22b中,存储了发送目的地信息,即查询帧被发送到的端ロ号。物理端ロ号22b是物理发送目的地信息,但可以是虚拟发送目的地信息。具体地,可以使用关于虚拟局域网(VLAN)的信息代替物理端ロ号作为发送目的地信息。物理端ロ号22b是有线连接情况下的发送目的地信息,但可以是无线连接情况下的发送目的地信息。在无线连接情况下,发送目的地信息可以是在发送帧的过程中的相邻设备的MAC地址而不是物理端ロ号。在响应等待定时器值22c中,存储了响应等待时间的剩余时间。具体地,当地址查询单元17发送查询帧时,地址查询单元17在响应等待定时器值22c中设置最大响应等待时间,根据时间的推移来递减计数所设置的响应等待时间,并再次在等待时间定时器值22c中设置用于等待响应的剩余时间。作为查询管理表22的示例,如果地址22a是“AAAA”,查询管理表22存储“端ロ I、端ロ 2、端ロ 3”作为物理端口号22b并存储“剩余3秒钟”作为响应等待定时器值22c。在这种情况下,查询处理单元171A使用所述剩余3秒钟来继续查询。返回參照图I,响应处理单元172执行对于所述查询请求的响应处理。例如,如果响应处理单元172在响应等待时间减少到O之前从转移单元15A获取了对于所述查询请求的响应帧,响应处理单元172根据设置在响应帧中的查询结果来执行关于响应的处理。“响应帧”是指在对于所述查询请求的响应中使用的帧。作为示例,如果在响应帧的查询结果中设置了表示已知发送目的地地址的信息,则响应处理单元172经由所述帧发送単元12使用接收所述响应帧的端ロ来发送表示发送请求的帧。具体地,如果在所述响应帧的查询结果中设置了表示已知发送目的地地址的信息,则接收所述响应帧的端ロ是发送目的地地址的发送目的地信息。因此,响应处理单元172使用与由地址学习単元14存储在学习表21中的发送目的地地址相关联的端ロ来发送表示发送请求的帧。如果在响应帧的查询结果中设置了表示不知道发送目的地地址的信息,响应处理单元172使得查询处理单元171A创建加入有跳数的查询帧,其中所述跳数是通过将设置在对应于响应的查询帧中的跳数增加I而得到的。响应处理单元172使查询处理单元171A再次发送对于发送目的地地址的发送目的地信息的查询请求。如果响应等待时间减少到0,响应处理单元172确定可能不能够获取响应帧并使查询处理单元171A创建加入有通过将设置在查询帧中的跳数増加I而获得的跳数的查询帧。响应处理单元172使查询处理单元171A再次发送对于发送目的地地址的发送目的地信息的查询请求。在上述处理中,响应处理单元172再次执行查询。然而,这并不作为限制。响应处理单元172可以放弃查询。网络设备2的配置 下面将说明网络设备2的配置。在网络设备2中,与网络设备I中的部件相同的部件以相同的附图标记和符号表示。省略了对部件的冗余的配置和操作的说明。网络设备2与网络设备I的不同之处在于转移单元15A变为转移単元15B,查询处理单元171A变为查询处理单元171B,并且增加了响应-中继处理単元173。网络设备2和网络设备I可以是通过合并网络设备的功能单元而包括了相同的配置的网络设备。如果接收到的帧是查询所述帧的发送目的地的查询帧,转移単元15B将所述帧发送给查询处理单元171B。如果接收到的巾贞是中继所述巾贞的响应巾贞,转移单元15B将所述中贞发送给响应-中继处理单元173。当查询处理单元171B从转移单元15B获取到了查询帧时,查询处理单元171B确定设置在所获取的查询帧中的查询目的地地址是否存储在学习表21中。如果查询目的地地址没有存储在学习表21中,查询处理单元171B基于所获取的查询帧来重新创建查询帧。作为示例,查询处理单元171B将设置在所获取的查询帧中的跳数減少I。查询处理单元171B重新创建对于通过将减少了的跳数加入到查询目的地地址中而获得的发送目的地信息的查询帧。查询处理单元171B将设置在所获取的查询帧中的发送源地址设置为重新创建的查询帧的发送源地址。这是为了在向网络设备2发送查询帧中使得中继查询帧的网络设备2将发送源地址存储在学习表21中。查询处理单元171B将重新创建的查询帧发送至不同于之前获取的查询帧的发送源处的网络设备2的相邻网络设备2。如果查询目的地地址存储在学习表21中,查询处理单元171B确定查询目的地地址被学习到并创建对于查询请求的响应巾贞。作为示例,查询处理单元171B将表示已知查询目的地地址的信息设置在响应帧的查询结果中。查询处理单元171B将查询帧的发送源地址(即在查询源处的网络设备I的地址)设置在响应帧的目的地地址中。查询处理单元171B将查询目的地地址而不是网络设备2的地址设置在响应帧的发送源地址中。这是为了使得中继网络设备I与网络设备2的网络设备2在将响应帧返回到在查询源处的网络设备I中将查询目的地地址存储到学习表21中。查询处理单元171B向相邻设备(即位于查询帧的发送源处的网络设备2 (或I))发送所创建的响应帧。
当响应-中继处理单元173从转移单元15B获取到了响应帧时,响应-中继处理单元173中继所获取的响应巾贞。作为示例,如果设置在响应巾贞中的查询结果是表示已知查询目的地地址的信息,响应-中继处理单元173将响应巾贞的查询目的地地址加入到学习表中,并将所述响应帧发送给在查询帧的发送源处的网络设备2 (或I)。还可以通过地址学习单元14来执行用于将查询目的地地址加入到学习表中的处理,这是因为响应帧的发送源地址是查询目的地地址。如果设置在响应帧中的查询结果是表示不知道查询目的地地址的信息,响应-中继处理単元173直接将所接收到的响应帧发送给相邻设备,即在查询帧的发送源处的网络设备2(或I)。帧格式的示例參照图4A和4B来说明查询帧和响应帧的帧格式。图4A是示出了查询帧的格式的示例的图。图4B是示出了响应巾贞的格式的示例的图。如图4A所示,查询帧包括目的地地址fl、发送源地址f2、类型f3以及用户数据 f4。在目的地地址fl中,设置了仅可由相邻网络设备2接收的组播地址和用于指定相邻网络设备2的MAC地址的单播地址。作为仅可由相邻网络设备2接收的组播地址的示例,使用由在生成树协议(STP)中采用的网桥协议数据単元(Brou)所使用的地址。在发送源地址f2中,设置了查询发送源地址的发送源设备的地址。具体地,在发送源地址f2中设置了网络设备I的地址。如上所述,中继查询帧的网络设备2直接取得(take over)作为发送源设备的网络设备I的地址并将该地址设置到发送源地址f2中。网络设备2在发送源地址f2中直接取得网络设备I的地址以使得在网络设备2的发送目的地处的网络设备学习网络设备I的地址。在类型f3中,设置了在层3中使用的协议的类型。用户数据f4包括跳数f41和查询目的地f42。在跳数f41中,设置了网络设备I向其查询发送目的地地址的发送目的地信息的网络设备2的数目。具体地,跳数f41是可以中继查询帧以查询发送目的地地址的发送目的地信息的网络设备2的数目。在查询目的地f42中,设置了其发送目的地信息被查询的发送目的地地址。如图4B所示,响应帧包括目的地地址gl、发送源地址g2、类型g3以及用户数据g4。在目的地地址gl中,设置了查询所述发送目的地地址的发送源设备的地址。具体地,在目的地地址gl中,设置了网络设备I的地址。如上所述,中继响应帧的网络设备2直接取得作为发送源设备的网络设备I的地址并将该地址设置到目的地地址gl中。如果下面说明的查询结果g41是表示已知发送目的地地址的信息,在发送源地址g2中设置所查询的发送目的地地址。将查询的发送目的地地址设置在发送源地址g2中以使得中继响应帧的网络设备2学习所查询的发送目的地地址。另ー方面,如果查询结果g41是表示不知道发送目的地地址的信息,在发送源地址g2中设置网络设备I的地址。用户数据g4包括查询结果g41和查询目的地g42。在查询结果g41中,如果学习到了发送目的地地址的发送目的地信息,则设置表示已知发送目的地地址的信息。如果没有学习到发送目的地地址的发送目的地信息,则设置表示不知道发送目的地地址的信息。在查询目的地g42中,如在查询帧的查询目的地f42中一祥,设置所查询的发送目的地地址。地址查询(查询源)过程參照图5来说明其中作为查询源的网络设备I查询帧的发送目的地地址的地址查询过程。图5是用于说明根据该实施例的地址查询(查询源)过程的流程图。在下面的说明中,假设帧接收单元11接收到表示发送请求的帧或用于中继所述帧的中继帧并且转移单元15A将接收到的巾贞发送给地址检索单元16。首先,地址检索单元16确定在从转移单元15A传送过来的帧中是否存在表示发送请求的帧或用于中继所述帧的中继帧(步骤S11)。如果地址检索单元16确定不存在表示发送请求的帧或中继帧(步骤Sll中的“否”),地址检索単元16重复所述确定处理。另ー方面,如果地址检索单元16确定存在表示发送请求的帧或中继帧(步骤Sll中的“是”),地址检索単元16基于学习表21来确定是否学习到了传送过来的帧的发送目的地地址(步骤S12)。如果地址检索单元16确定学习到了传送过来的帧的发送目的地地址(步骤S12中的“是”),地址检索単元16根据学习表21的内容经由帧发送单元12来发送帧(步骤S13)。具体地,地址检索単元16从学习表21中检索对应于学习表21的发送目的地地址的发送目的地信息(物理端口号21b),并从所检索到的发送目的地信息的端ロ发送所述帧。响应处理单元172结束地址查询处理。
另ー方面,如果地址检索单元16确定没有学习到传送过来的帧的发送目的地地址(步骤S12中的“否”),查询处理单元171A创建对于通过将跳数加入到被确定为未学习到的发送目的地地址中而获得的发送目的地信息的查询帧。查询处理单元171A经由帧发送単元12来向相邻的网络设备2发送所创建的查询帧(步骤S14)。如果存在多个相邻的网络设备2,查询处理单元171A将查询帧同时发送给所述网络设备2。在发送查询帧的过程中,查询处理单元171A设置响应等待定时器(步骤S15)。例如,查询处理单元171A将用于等待来自查询帧的传输的响应的剩余时间(响应等待时间)与在发送查询帧的过程中使用的发送目的地信息相关联地设置在查询管理表22中。查询处理单元171A根据时间的推移来递减计数所设置的响应等待时间,并再次设置在查询管理表22中的用于等待响应的剩余时间。之后,响应处理单元172确定是否在响应等待定时器到达O之前接收到响应(步骤S16)。如果响应处理单元172确定在响应等待定时器到达O之前接收到了响应(步骤S16中的“是”),响应处理单元172确定在响应帧的查询结果中是否设置有表示未知发送目的地地址的信息(步骤S17)。如果响应处理单元172确定在响应帧的查询结果中设置了表示已知发送目的地地址的信息(步骤S17中的“否”),响应处理单元172根据响应信息来发送帧(步骤S18)。具体地,响应处理单元172使用接收响应帧的端ロ经由帧发送单元12来发送表示发送请求的帧或中继帧。响应处理单元172结束地址查询处理。另ー方面,如果在响应等待定时器到达O之前没有接收到响应(步骤S16中的“否”)或者在响应帧的查询结果中设置了表示不知道发送目的地地址的信息(步骤S17中的“是”),响应处理单元172转向步骤S19。查询处理单元171A将设置在查询帧中的跳数增加I (步骤S19)并确定增加后的跳数是否是预先设置的最大跳数(步骤S20)。如果查询处理单元171A确定增加后的跳数不是预先设置的最大跳数(步骤S20中的“否”),查询处理单元171A转向步骤S14以再次查询发送目的地地址。另ー方面,如果查询处理单元171A确定增加后的跳数是预先设置的最大跳数(步骤S20中的“是”),查询处理单元171A例如通过在显示器上进行显示来警告查询处理单元171A在查询发送目的地地址中失败(步骤S21)。响应处理单元172结束地址查询处理。地址查询(查询目的地)过程參照图6来说明如下地址查询过程在该地址查询过程中,从查询源处的网络设备I接收查询帧的在查询目的地处的网络设备2查询发送目的地地址。图6是用于说明根据该实施例的地址查询(查询目的地)过程的流程图。
首先,转移单元15B确定由帧接收单元11接收的帧是否是查询帧(步骤S31)。如果转移単元15B确定所述帧不是查询帧(步骤S31中的“否”),转移单元15B重复该确定处理。另ー方面,如果转移単元15B确定所述帧是查询帧(步骤S31中的“是”),查询处理单元171B确定是否学习到从转移单元15B传送的查询帧的查询目的地地址(步骤S32)。查询处理单元171B基于学习表21来确定是否学习到了查询目的地地址。如果查询处理单元171B确定学习到了查询目的地地址(步骤S32中的“是”),查询处理单元171B创建对于查询请求的响应帧。查询处理单元171B经由帧发送单元12来发送所创建的响应帧(步骤S33)。查询处理单元17IB结束对于在查询目的地处的网络设备2的地址查询处理。另ー方面,如果查询处理单元171B确定没有学习到查询目的地地址(步骤S32中的“否”),查询处理单元171B对设置在与查询请求相关的查询帧中的跳数进行递减计数(步骤S34)。查询处理单元171B确定递减计数后的跳数是否不为0(步骤S35)。如果查询处理单元171B确定递减计数后的跳数为O (步骤S35中的“否”),查询处理单元171B会不能够向后面的网络设备2查询发送目的地地址。因此,查询处理单元171B确定是否发送了响应帧(步骤S36)。如果查询处理单元171B确定没有发送响应帧(步骤S36中的“否”),查询处理单元171B丢弃查询帧(步骤S38)。查询处理单元171B结束在查询目的地处的网络设备2的地址查询处理。另ー方面,如果查询处理单元171B确定发送了响应帧(步骤S36中的“是”),查询处理单元171B创建对于查询的响应帧,在该响应帧中表示未知发送目的地地址的响应结果被设置在查询结果中。查询处理单元171B将所创建的响应帧发送给在查询帧的发送源处的网络设备2 (或I)(步骤S37)。查询处理单元171B结束在查询目的地处的网络设备2的地址查询处理。另ー方面,如果查询处理单元171B确定递减计数后的跳数不为O (步骤S35中的“是”),查询处理单元171B重新创建通过加入递减计数后的跳数而获得的对于发送目的地信息的查询帧。查询处理单元171B将重新创建的查询帧发送给与之前获取到的在查询帧的发送源处的网络设备2不同的相邻网络设备2 (步骤S39)。在发送重新创建的查询帧的过程中,查询处理单元171B设置响应等待定时器(步骤S40)。例如,查询处理单元171B将用于等待来自查询帧的传输的响应的剩余时间(响应等待时间)与在发送查询帧的过程中使用的发送目的地信息相关联地设置在查询管理表22中。查询处理单元171B根据时间的推移来递减计数所设置的响应等待时间并再次设置在查询管理表22中的用于等待响应的剰余时间。之后,响应-中继处理单元173确定是否在响应等待定时器到达O之前接收到对所发送的查询帧的响应(步骤S41)。如果响应-中继处理单元173确定没有接收到对所发送的查询帧的响应(步骤S41中的“否”),响应-中继处理单元173结束处理。
另ー方面,如果响应-中继处理单元173确定接收到了对所发送的查询帧的响应(步骤S41中的“是”),响应-中继处理单元173将与响应相关的响应帧中继到在查询帧的发送源处的网络设备2 (或I)(步骤S42)。响应-中继处理単元173结束在查询目的地处的网络设备2的地址查询处理。帧流的具体示例參照图7A和图7B来说明查询帧和响应帧的帧流的具体示例。图7A是用于说明当跳数为I时所交換的帧的帧流的具体示例的图。图7B是用于说明当跳数为2时所交換的帧的帧流的具体示例的图。在图7A和图7B中,假设具有地址“A”的网络设备I接收表示发送请求的帧并且还没有学习到所接收到的帧的发送目的地地址“D”。如图7A所示,具有地址“A”的网络设备I创建查询帧,在该查询帧中,发送源地址f2设置为“A”,目的地地址fl设置为“B”,跳数f41设置为“I”以及查询目的地f42设置为“D”。网络设备I将所创建的查询帧发送给具有目的地地址“B”的网络设备2。
具有目的地地址“B”的网络设备2接收来自于具有地址“A”的网络设备I的查询帧。假设具有目的地地址“B”的网络设备2还没有学习到设置在接收到的查询帧中的查询目的地f42的地址“D”。然后,因为将设置为跳数f41的“ I”进行递减计数所获得的跳数为“0”,网络设备2不能向后面的网络设备2查询关于查询的地址。假设网络设备2当不知道发送目的地地址时发送响应帧。网络设备2创建如下响应帧在该响应帧中,发送源地址g2设置为“B”,目的地地址gl设置为“A”,查询结果g41设置为“未知”,并且查询目的地g42设置为“D”。网络设备2将所创建的响应帧发送给查询帧的发送源,即具有地址“A”的网络设备。結果,网络设备I在查询表示发送请求的帧的发送目的地地址中失败。接下来,具有地址“A”的网络设备I将跳数设置为“2”并查询发送目的地地址“D”。如图7B所示,网络设备I创建如下查询帧在该查询帧中,发送源地址f2设置为“A”,目的地地址f I设置为“B”,跳数f41设置为“2”,并且查询目的地f42设置为“D”。网络设备I将所创建的查询帧发送给具有目的地地址“B”的网络设备2。具有目的地地址“B”的网络设备2接收来自于具有地址“A”的网络设备I的查询帧。具有目的地地址“B”的网络设备2还没有学习到设置在接收到的查询帧中的查询目的地f42的地址“D”。因此,具有目的地地址“B”的网络设备2在新查询帧中设置通过对被设置为跳数f41的“ 2”进行递减计数而获得的跳数“ I”。具体地,具有目的地地址“B”的网络设备2重新创建如下查询帧在该查询帧中,发送源地址f2设置为“A”,目的地地址Π设置为“C”,跳数f41设置为“1”,并且查询目的地f42设置为“D”。网络设备2将所创建的查询帧发送给具有目的地地址“C”的网络设备2。具有目的地地址“C”的网络设备2接收来自于具有目的地地址“B”的网络设备2的查询帧。假设具有目的地地址“C”的网络设备2已学习到设置在所接收到的查询帧中的查询目的地f42的地址“D”。然后,网络设备2创建如下响应帧在该响应帧中,发送源地址g2设置为“D”,目的地地址gl设置为“A”,查询结果g41设置为“已知”以及查询目的地g42设置为“D”。网络设备2将所创建的响应帧发送给查询帧的发送源,即具有地址“B”的网络设备2。另外,具有地址“B”的网络设备2接收来自于具有目的地地址“C”的网络设备2的响应帧。为了中继所接收到的响应帧,具有目的地地址“C”的网络设备2将所述响应帧发送给查询帧的发送源,即具有地址“A”的网络设备I。結果,网络设备I在查询表示发送请求的帧的发送目的地地址“D”中成功。网络设备I可以使用接收响应帧的端ロ来发送表示发送请求的中贞。地址查询的使用參照图8来说明当根据实施例的地址查询用于手持式终端(HT, handy terminal)时所执行的通信序列。图8是用于说明当根据实施例的地址查询用于HT时所执行的通信序列的图。HT指的是数据采集终端而且是例如测量电力的終端。然而,这并不作为限制。在图8所示的示例中,示出了将HT连接到用作无线电站的通信単元C中的序列。HT的应用请求HT驱动器执行到用作无线电站的通信単元C的通信连接(步骤S41)。在这点上,HT的应用使用通信単元C的MAC地址来请求无线电站通信连接。HT驱动器向通信适配器查询通信単元C的MAC地址(步骤S42)。假设通信适配器还没有学习到通信単元C的MAC地址。然后,通信适配器选择ー个信道(ch)井向与所选择 的I个ch有关的通信単元A查询所述通信単元C (步骤S43)。例如,通信适配器以组播方式向通信単元A发送查询帧,其中该组播具有跳数设置为“2”的跳数限制。通信适配器将响应等待定时器设置为3秒钟。如果通信单元A不知道通信单元C的MAC地址,通信单元A向通信单元B查询通信単元C (步骤S44)。例如,如果从通信适配器发送的查询帧的跳数为“2”,则通信単元A以组播方式将查询帧发送到通信単元B,其中该组播具有其中通过将“2”递减计数I而获得的“ I ”被设置为跳数的跳数限制。如果通信単元B知道通信単元C的MAC地址,通信単元B将查询结果被设置为“已知”的响应帧发送给通信単元A (步骤S45)。例如,通信単元B以单播方式将响应帧发送给通信单元A。另外,通信単元A中继从通信単元B发送的响应帧,并例如以单播方式将所述响应帧发送给通信适配器(步骤S46)。通信适配器确定是否能够以ー跳或多跳进行通信(步骤S47)。在图8所示的示例中,在设置在响应等待定时器中的3秒钟内,通信适配器以两跳来接收表示已知通信単元C的信息。因此,通信适配器确定能够以多跳进行通信(步骤S47中的“是”)。通信适配器连接至通信単元C (步骤S48)并变得能够执行通信。如果通信适配器确定不能够以ー跳或多跳进行通信(步骤S47中的“否”),则通信适配器确定通信适配器是否在Ich至3ch的所有信道的查询中失败(步骤S49)。如果通信适配器确定通信适配器并非在Ich至3ch的所有信道的查询中都失败(步骤S49中的“否”),则通信适配器选择另ー个信道并在所选择的信道中执行查询。另ー方面,如果通信适配器确定通信适配器在Ich至3ch的所有信道的查询中均失败(步骤S49中的“是”),通信适配器对该应用作出响应到通信単元C的连接是困难的(步骤S50)。实施例的效果根据上述实施例,如果没有学习到与所检测到的表示发送请求的帧的发送目的地地址相关联的发送目的地信息,则查询处理单元171A将表示查询处理单元171A向其查询发送目的地信息的节点的数目的跳数加入到查询请求中。查询处理单元171A向相邻的节点发送加入有预定跳数的查询请求。响应处理单元172基于对查询请求的响应信息来发送表示发送请求的帧。通过这样的配置,查询处理单元171A仅向最大等于所述跳数的节点查询与表示发送请求的帧的发送目的地地址相关联的发送目的地信息。結果,查询处理单元171A不引起对于网络不必要的流量。因此,可以减小流量以及降低因分组捕获等造成的搭线窃听的可能性。根据实施例,查询处理单元171A将预定跳数设置在表示发送请求的帧的用户数据部分中。通过这样的配置,查询处理单元171A可以容易地在层2中应用跳数,并防止生成对于网络不必要的流量。根据实施例,查询处理单元171A将预定跳数设置为除骨干网的节点的数目。通过这样的配置,查询处理单元171A可以避开通信流量较大的骨干网。因此,可以降低由查询所引起的网络载荷。另外,查询处理单元17IA可以改进查询的响应速度。根据实施例,如果发送目的地信息没有被设置在对查询请求的响应信息中,查询处理单元171A将跳数増加I。查询处理单元171A再次发送加入有増加后的跳数的对发送目的地信息的查询请求。通过这样的配置,通过逐个増加查询处理单元171A向之查询发送目的地信息的节点,查询处理单元171A肯定可以查询发送目的地信息并同时防止施加由 于查询导致的网络载荷。根据实施例,查询处理单元171A可以使用相邻的节点的单播地址作为查询帧的目的地地址。通过这样的配置,可以仅向特定节点而不是所有相邻节点查询帧的发送目的地。根据实施例,查询处理单元171A可以使用只有相邻节点可以接收的组播地址作为查询帧的目的地地址。通过这样的配置,即使不知道相邻节点的地址,也可以执行具有有限跳数的查询。根据实施例,如果网络设备2的查询处理单元171B已经学习到了查询目的地地址,查询处理单元171B将查询目的地地址设置到响应帧的发送源地址中,并将查询帧的发送源地址设置到目的地地址中。通过这样的配置,中继响应帧的网络设备2的响应-中继处理单元173使得不需要处理该响应帧。因此,可以执行不降低使用帧执行通信的层2中的处理速度的处理。根据实施例,网络设备2的查询处理单元171B使得可以在确定没有学习到查询目的地地址的情况下丢弃该查询帧,而不发送响应帧。通过这样的配置,如果查询目的地存在于较宽的范围中而且向其发送响应帧的节点的数目较大,则可以减小网络流量。根据实施例,网络设备2的查询处理单元171B使得可以在确定没有学习到查询目的地地址的情况下发送响应帧。通过这样的配置,如果查询目的地节点数目是受限的并且向其发送响应帧的节点的数目较小,则可以在响应等待定时器超时之前学习到查询結果。根据该实施例,查询处理单元171A以查询请求的响应时间段来等待对查询请求的响应。通过这样的配置,如果对查询请求的响应花费太长的时间,则查询处理单元171A可以在中途中断对查询请求的响应的等待。因此,可以有效地执行下面的处理。计算机程序等在实施例中,网络设备I和2使用以太网在层2中执行通信控制。然而,网络设备I和2并不限制于通信控制,并且可以使用例如点对点协议(PPP)或高级数据链路控制过程(HDLC)协议来在层2中执行通信控制。在PPP的情况下,替换具有MAC帧格式的查询帧及响应帧并使用PPP帧格式是足够的。在HDLC协议的情况下,替换具有MAC帧格式的查询帧及响应帧并使用HDLC帧格式是足够的。可以通过将转移单元15A、地址检索单元16、地址查询单元17等功能安装在例如个人计算机或工作站的已知信息处理设备上来实现网络设备I和2。在图中所示的设备的部件并不总是需要如图中所示的那样进行物理地配置。设备的分布和集成的具体形式并不限制于图中所示的形式。部件的全部或一部分可以根据各种载荷、使用状态等而在功能上或物理上分布和集成到任意単元中。例如,查询处理单元171A、查询处理单元171B、响应处理单元172以及响应-中继处理单元173可以集成为ー个单元。转移单元15A和转移单元15B可以集成为ー个単元。另ー方面,响应处理单元172可以分布到当在响应等待时间内成功接收到响应帧时执行响应处理的第一响应处理单元中,以及可以分布到当在响应等待时间内没有成功接收到响应帧时执行响应处理的第二响应处理单元中。包括学习表21和查询管理表22的存储单元20可以作为网络设备I的外部装置通过网络连接。
可以通过使用计算机(例如个人计算机或工作站)执行预先准备的计算机程序来实现在实施例中说明的各种处理。因此,在下面的说明中,參照图9来说明执行具有与在图I中示出的网络设备I的功能相同的功能的发送目的地查询程序的计算机的示例。图9是示出了执行发送目的地查询程序的计算机的图。如图9所示,计算机1000包括随机存取存储器(RAM) 1010、网络接口装置1020、硬盘驱动器(HDD) 1030、中央处理单元(CPU)1040、介质读取装置1050以及总线1060。RAM 1010、网络接口装置1020、HDD 1030、CPU 1040以及介质读取装置1050通过总线1060进行连接。在HDD 1030中,存储了具有与在图I中示出的控制单元10的功能相同的功能的发送目的地查询程序1031。在HDD 1030中,存储了对应于在图I中示出的学习表21和查询管理表22的发送目的地查询相关信息1032。 CPU 1040从HDD 1030中读取发送目的地查询程序1031并将发送目的地查询程序1031加载到RAM 1010中,由此发送目的地查询程序1031起到发送目的地查询处理1011的作用。发送目的地查询处理1011适时将从发送目的地查询相关信息1032中读取的信息等加载到在RAM 1010上分配给发送目的地查询处理1011的区域中,并基于所加载的数据等来执行各种类型数据处理。发送目的地查询程序1031并非总是必须存储在HDD 1030中。计算机1000可以读取存储在“便携式物理介质”(例如只读光盘(⑶-ROM))中的发送目的地查询程序1031并执行该发送目的地查询程序1031。发送目的地查询程序1031可以存储在经由公共线路、因特网、局域网(LAN)、广域网(WAN)等连接至计算机1000的其他的计算机(或服务器)等中。在这种情况下,计算机1000从该计算机等中读取发送目的地查询程序1031并执行该程序。根据在本申请中所公开的网络设备的方面,存在如下效果当在层2中查询发送目的地地址时,可以实现减小流量以及保持安全性。
权利要求
1.ー种网络设备,包括 存储单元,所述存储単元被配置成与发送目的地的节点的地址相关联地存储在向节点发送帧的过程中所使用的发送目的地信息; 查询单元,所述查询单元被配置成当检测到表示发送请求的巾贞并且在所述存储单元中没有存储与所检测到的帧的发送目的地地址相关联的发送目的地信息吋,向相邻节点发送对于所述发送目的地信息的查询请求,所述查询请求加入有表示向其发送所述查询请求的节点的数目的预定跳数;以及 发送单元,所述发送単元被配置成基于对于所述查询请求的响应信息来发送表示所述发送请求的帧。
2.根据权利要求I所述的网络设备,其中所述查询单元将所述预定跳数设置在表示所述发送请求的所述帧的用户数据部分中。
3.根据权利要求I所述的网络设备,其中所述查询单元将所述预定跳数设置为除骨干网之外的节点的数目。
4.根据权利要求I所述的网络设备,其中如果在对于所述查询请求的所述响应信息中没有设置所述发送目的地信息,则所述查询单元将加入到所述查询请求中的跳数増加I并再次发送对于所述发送目的地信息的查询请求。
5.根据权利要求I所述的网络设备,其中所述查询単元在发送所述查询请求的过程中将所述相邻节点的单播地址指定为所述发送目的地。
6.根据权利要求I所述的网络设备,其中所述查询単元在发送所述查询请求的过程中将仅能够被所述相邻节点接收的组播地址指定为所述发送目的地。
7.根据权利要求I所述的网络设备,其中所述查询単元在发送对于所述查询请求的响应的过程中将查询目的地地址指定为发送源。
8.根据权利要求I所述的网络设备,其中如果在所述存储単元中没有存储所述发送目的地信息或者如果所述查询请求的跳数达到所述跳数的限制,则所述查询单元不发送作为对于所述查询请求的响应的响应。
9.根据权利要求I所述的网络设备,其中如果在所述存储単元中没有存储所述发送目的地信息或者如果所述查询请求的所述跳数达到所述跳数的限制,则所述查询单元发送用于通知查询失败的响应,以作为对于所述查询请求的响应。
10.根据权利要求I所述的网络设备,其中所述查询単元仅在对于所述查询请求的响应时间段内等待对于所述查询请求的响应。
11.一种由计算机执行的发送目的地查询方法,所述发送目的地查询方法包括 当检测到表示发送请求的帧并且在存储单元中没有存储与所检测到的帧的发送目的地地址相关联的发送目的地信息吋,向相邻节点发送对于所述发送目的地信息的查询请求,所述查询请求加入有表示向其发送所述查询请求的节点的数目的预定跳数,所述存储単元与发送目的地的节点的地址相关联地存储在向节点发送帧的过程中所使用的所述发送目的地信息;以及 基于对于所述查询请求的响应信息来发送表示所述发送请求的所述帧。
全文摘要
本发明公开了一种网络设备、发送目的地查询方法及计算机可读存储介质。该网络设备包括学习表,该学习表与发送目的地的节点的地址相关联地存储在向节点发送帧的过程中所使用的发送目的地信息;地址查询单元,该地址查询单元在当检测到表示发送请求的帧并且在存储单元中没有存储与所检测到的帧的发送目的地地址相关联的发送目的地信息时,向相邻节点发送对于该发送目的地信息的查询请求,该查询请求加入有表示向其发送该查询请求的节点的数目的预定跳数;以及帧发送单元,该帧发送单元基于对该查询请求的响应信息来发送表示该发送请求的帧。
文档编号H04L29/12GK102821431SQ20121018722
公开日2012年12月12日 申请日期2012年6月7日 优先权日2011年6月10日
发明者白川贵浩, 滨大介, 足立武史, 长谷川淳, 小原木敬祐, 古泽卓二, 川角浩亮, 野泽正晴, 小林克己 申请人:富士通株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1