专利名称:无线通信装置的制作方法
技术领域:
本发明涉及无线通信装置,尤其涉及适用于网络拓扑变化的无线通信网络的无线通信装置。
在特开平6-152650号公报中记载了以下一种通信装置,其对数据包发送装置的发送缓冲存储器定期地进行监视,对重试次数设置上限,在超过了该上限时,从发送缓冲存储器内废弃保存的数据包。
背景技术:
但是,在特开平6-152650号公报中记载的技术是进行因数据包发送装置的误动作引起的数据包的废弃,不使数据包发送处理的能力恶化的技术。因此,作为提高用户终端彼此间无线连接,网络拓扑始终变动的系统(自组织网络)的数据包发送处理性能的技术是不充分的。
所谓自组织网络是不需要中央集中控制,由可以以无线的方式进行收发的终端构成的网络。作为其一个较大的特点可以列举出以下的技术,不能以无线的方式直接通信的终端彼此之间,使其它可无线通信的多个终端进行中继,来进行通信(多跳通信)。自组织网络不需要移动电话网的基站和无线LAN的访问点,在没有基础设施的场所可以廉价地构筑网络。因此,作为在受到限制的区域构筑简易网络的方法是有效的。根据这样的性质,作为在由于地震等自然灾害基站停止工作的受灾地确立通信网络的技术,近年来自组织网络备受关注。
可是,目前在构筑自组织网络方面还留有几个技术性课题。因为与通过有线连接构成的网络相比,构成自组织网络的终端以无线的方式进行通信,所以终端间的链接连接不稳定。另外,设想终端经常移动,各终端向网络加入、脱离的频率很高,因此,在安全方面也需要与有线连接的网络不同的特殊的技术。在这样的环境下,如何能动态、高效地检测稳定的路径成为课题。
发明内容
本发明的目的在于,为了解决所述课题,提供简易且使通信品质得到提高的网络的无线通信装置。
上述课题可以通过以下的无线通信装置解决,该无线通信装置由以下各部组成无线部,其收发含有数据包的无线信号;无线连接确立部,其判定确立和切断与在无线信号的到达范围内配置的其它无线通信装置的无线连接;路径信息生成部,其生成数据包的传输路径信息;和数据包发送队列,其保存含有传输目的地MAC地址的队列,所述无线通信装置具有队列内数据包控制部,其在无线连接确立部判断为无线连接的切断时,检索有无数据包发送队列保存的无线连接切断对象的队列。
另外,可以通过以下的无线通信装置来解决,该无线通信装置由以下各部组成无线部,收发含有数据包的无线信号;无线连接确立部,其判定确立和切断与在无线信号的到达范围内配置的其它无线通信装置的无线连接;路径信息生成部,其生成数据包的传输路径信息;和数据包发送队列,其保存含有传输目的地MAC地址的队列,所述无线通信装置具有队列内数据包控制部,在无线连接确立部判定为无线连接的切断时,路径信息生成部更新传输路径信息,所述队列内数据包控制部删除数据包发送队列保存的无线连接切断对象的队列。
此外,可以通过以下的无线通信装置来解决,该无线通信装置由以下各部组成无线部,收发含有数据包的无线信号;无线连接确立部,其判定确立和切断与在无线信号的到达范围内配置的其它无线通信装置的无线连接;路径信息生成部,其生成数据包的传输路径信息;和数据包发送队列,其保存含有传输目的地MAC地址的队列,所述无线通信装置具有队列内数据包控制部,在无线连接确立部判定为无线连接的切断时,路径信息生成部更新传输路径信息,所述队列内数据包控制部根据更新后的传输路径信息对数据包发送队列保存的无线连接的切断对象队列的传输目的地MAC地址进行更新。
此外,可以通过以下的无线通信装置来解决,该无线通信装置由以下各部组成无线部,收发含有数据包的无线信号;无线连接确立部,其判定确立和切断与在无线信号的到达范围内配置的其它无线通信装置的无线连接;路径信息生成部,其生成数据包的传输路径信息;和数据包发送队列,其保存含有传输目的地MAC地址的队列,该无线通信装置具有队列内数据包控制部,在无线连接确立部判定为无线连接的切断时,路径信息生成部更新传输路径信息,所述队列内数据包控制部将数据包发送队列保存的无线连接切断对象队列的传输目的地MAC地址更新为确立了无线连接的MAC地址。
此外,可以通过以下的无线通信装置来解决,该无线通信装置由以下各部组成无线部,收发含有数据包的无线信号;无线连接确立部,其判定确立和切断与在无线信号的到达范围内配置的其它无线通信装置的无线连接;路径信息生成部,其生成数据包的传输路径信息;和数据包发送队列,其保存含有传输目的地MAC地址的队列,所述无线通信装置在无线连接确立部判定为无线连接的切断时,使数据包发送队列保存的、被切断的无线终端为发送目的地的数据包的重发次数的上限值减小。
此外,可以通过以下的无线通信装置解决,该无线通信装置由以下各部组成通过总线连接的中央处理装置;写入了多个程序的控制存储器;网络控制器;保存含有传输MAC地址和发送目的地IP地址的发送队列的FIFO存储器;和与网络控制器连接的无线LAN部,在检测到与其它无线通信装置的链接切断时,以其它无线通信装置的IP地址作为关键字来检索FIFO存储器,废弃或者更新面向其它无线通信装置的队列。
此外,可以通过以下的无线通信装置来解决,该无线通信装置由以下各部组成由总线连接的中央处理装置;存储器;网络控制器;和与网络控制器连接的无线LAN部,存储器具有写入了多个程序的控制区域、和保存含有传输MAC地址与发送目的地IP地址的发送队列的FIFO区域,在检测到与其它无线通信装置的链接切断时,以其它无线通信装置的IP地址作为关键字检索FIFO区域,废弃或者更新面向其它无线通信装置的队列。
图1是对网络拓扑进行说明的图(拓扑1)。
图2是对网络拓扑进行说明的图(拓扑2)。
图3是对网络拓扑进行说明的图(拓扑3)。
图4是对节点A发送的HELLO消息进行说明的图(之一)。
图5是对节点B发送的HELLO消息进行说明的图。
图6是对节点A发送的HELLO消息进行说明的图(之二)。
图7是对通信协议的分层结构和数据发送的流程进行说明的图。
图8是对各节点的IP地址和MAC地址进行说明的图。
图9是节点A的路由选择表。
图10是节点A的ARP表。
图11是节点A的路由选择表。
图12说明节点A与节点B的链接刚刚切断后的节点A的发送队列。
图13说明进行了路由切换之后的节点A的发送队列。
图14是对数据包发送处理的动作进行说明的流程图。
图15是节点的功能方框图。
图16是节点的硬件方框图。
图17说明拓扑1的节点A的链接确立表。
图18说明拓扑3的节点A的链接确立表。
图19是说明数据包废弃处理的流程图。
图20说明数据包废弃处理之后的节点A的发送队列。
图21是说明再次路由选择处理的流程图。
图22说明再次路由选择处理后的节点A的发送队列。
图23是说明再次路由选择处理的流程图。
图24是对网络拓扑进行说明的图(拓扑4)。
图25说明拓扑4的节点A的链接确立表。
图26是对网络拓扑进行说明的图(拓扑5)。
图27是对网络拓扑进行说明的图(拓扑6)。
图28说明拓扑6的节点A的链接确立表。
图29是说明再次路由选择处理的流程图。
图30说明重发次数表。
图31是对链接确定时的重发次数更新进行说明的流程图。
图32是对链接切断时的重发次数更新进行说明的流程图。
图33说明重发次数表。
图34是对数据包发送处理的动作进行说明的流程图。
具体实施例方式
以下,使用实施例,参照附图来进行说明。这里,首先,对自组织网络中的路由选择协议、各终端(以后称为节点)之间的链接状态监视方法进行说明。
首先,使用图1至图7,对路由选择协议进行说明。这里,图1至图3说明网络拓扑。图4至图6说明HELLO消息。图7说明通信协议的分层结构和数据发送的流程。
由于节点在网络内移动所以节点配置(以后称为网络拓扑)变化,而且,发生向网络的加入或脱离。因此,在从某个节点向某个节点传输数据时的中继路径随时间变化。因为与该网络拓扑的变化对应,所以在网络内的节点之间交换路径信息,更新路径信息的是路由选择协议。因此在下面,使用附图表示各节点的性能和路由选择协议动作的前提条件、网络拓扑与路由切换动作的具体例子。
对各节点的性能和关于路由选择协议动作的前提条件进行说明。此外,该前提条件在以下说明的各实施例中是共通的。节点安装可以进行收发的无线装置,并可以移动。最大无线通信距离是1Km。路由选择协议在上述多跳通信中切换路由,以使进行中继的终端为最少(包括0)。以后,将多跳通信中的中继数称为跳数。
使用图1对网络拓扑进行说明。在图1中,网络拓扑的圆圈标记表示节点100,将该圆圈标记中记载的记号作为节点ID。各节点100通过双向箭头连接。其表示节点彼此之间可以双向进行直接无线通信。以后,将可以双向进行直接无线通信的状态称为链接确立状态。此外,对在各节点之间进行的无线链接确立方法,在后面进行叙述。
这里,设假开始从节点A向节点C进行数据传输。此时,通过路由选择协议,将节点B作为中继节点,以节点A→节点B→节点C的路由传输数据。如图2所示,在该数据传输中,节点B移动到无法与节点A、节点C通信的位置,在向图3所示的网络拓扑变化时,从节点A向节点C的数据传输无法通过节点A→节点B→节点C的路由来实现。当作为对图3的补充来说明时,根据前提条件,各节点的最大无线通信距离是1Km,节点A、节点C之间是1.6Km,所以无法直线无线通信。因此,路由选择协议始终监视节点A、B、C的链接状态,当识别出链接被切断时检索新的路由,切换为在这些路由中为最短跳数的路由。在图3的情况下,可以进行从节点A向节点C的数据传输的路由仅存在一个,是节点A→节点D→节点E→节点F→节点C的路由。路由选择协议如此地切换路由。
然后,关于链接状态监视单元,使用作为由IETF(Internet Engineering TaskForce)标准化的自组织路由选择的OLSR(Optimized Link State Routing)的动作来进行说明。在OLSR中,各节点为了识别存在其它可通信的节点,定期地发送称为HELLO消息的控制信息。在该信息中含有自身节点识别的周围的节点ID,是在从其它节点接收到含有自身节点ID的HELLO消息时,识别为可以与作为该HELLO消息发送源的其它节点进行双向通信的结构。这里,在网络最小规模的节点数为2个的情况下,使用图4至图6来说明链接确立动作。
首先,从各节点100与哪个节点都没有确立链接,从节点A定期地发送HELLO消息的状态开始进行说明。这里,在图4的状态下,节点A与哪个节点都没有进行HELLO消息的收发。因此,链接确立表45-1单方向、双向都为空。并且,把在链接确立表45-1的单方向、双向的识别节点ID中存储的全部节点ID存储到HELLO消息的识别节点ID中,并进行发送。此外,在此作为前提,节点A的链接确立表45-1为空,所以识别节点ID为空。另外,在HELLO消息中添加了发送节点(这里是节点A)的ID。接收到来自节点A的HELLO消息的节点B将节点A的节点ID和节点A的识别节点ID存储到自身的链接确立表45-2的单方向一侧。这里,在单方向一侧存储的理由是因为在节点A的识别节点ID中没有存储节点B的ID,可以判断节点A没有识别节点B。
在图5中,然后节点B在识别节点ID中存储节点A的节点ID并发送HELLO消息。接收到该HELLO消息的节点A在HELLO消息的识别节点ID中识别自身节点ID,在节点A的链接确立表(双方向)45-1中存储节点B的ID和节点B识别的节点ID。在此时刻,节点A识别出可与节点B确立链接。
之后,在图6中,节点A在HELLO消息中存储节点B的识别节点ID并进行发送。接收到该识别节点ID的节点B因为在HELLO消息的识别节点ID中识别出自身节点ID,所以把在节点B的链接确立表的(单方向)451-2中存储的节点A的ID向链接确立表的(双方向)452-2转移,并将节点A识别的节点ID(此时为B)也存储在链接确立表(双方向)中。节点B在此时刻识别出与节点A确立了链接。如此,把自身节点接收到的HELLO消息的发送源节点ID存储在HELLO消息的识别节点ID中来互相通知,得到相互识别的确认作为链接确立。
然后,对链接切断顺序进行说明。在用于识别链接确立而使用的HELLO消息中准备定时器。首先,对该定时器进行说明。定时器启动定时是识别出与各个节点确立链接的时刻,对每个节点各自单独地分配定时器。当通过上述的链接确立顺序进行说明时,从其它节点接收到存储了自身节点ID的HELLO消息的时刻是定时器启动定时。并且,在从链接确立完成的节点在一定时间没有接收到HELLO消息的情况下,从链接确立表中删除该节点的节点ID,识别出与该节点的链接已切断。
如此,在OLSR中通过定期地发送HELLO消息,由此来识别链接确立、链接切断。
然后,使用图7,对为了实现通信协议在节点内构筑的分层结构和各层的作用进行说明。当把节点内的分层结构大致分类为4层时,从上位层开始顺次为应用层120、路由选择层130、MAC(Media Access Control)层140、物理层150。因此,关于数据发送的顺序,一边明确各层的作用一边进行说明。
首先,在应用层120中生成FTP用数据(TCP)和用户数据报协议(UDP)10等,对各数据10给予发送目的地节点的IP地址20(以后称为发送目的地IP地址),并将其交给路由选择层。
在路由选择层130中,从路由选择层130生成、更新的路由选择表40中检索与发送目的地IP地址对应的传输目的地节点的IP地址30(以后称为传输目的地IP地址),由ARP(Address Resolution Protocol)表50给予与传输目的地IP地址对应的MAC地址(以后,称为传输目的地MAC地址)30,并向进行FIFO(First In First Out)控制的发送队列60排队。(关于FIFO控制在后面进行叙述。)为了生成、更新在此说明的路由选择表40,需要从网络内的各节点收集网络拓扑信息的单元。并且,该拓扑信息的收集单元成为与一般所知的各种路由选择协议相区别的主要原因之一。但是,本实施例与拓扑信息的收集单元本身无关,所以仅对路由选择表的生成、更新结果进行说明。
然后,对数据发送的顺序进行说明,MAC层140从发送队列60中取出数据,按照CSMA/CA(Carrier Sense Multiple Access/Collision Avoidance载波侦听多路访问/冲突检测)方式70,向物理层150转交数据。物理层150把接收到的数据从无线收发装置90经由天线110通过无线发送波进行发送。关于这里的CSMA/CA方式和重发次数上限值80,将在后述MAC层中的单播(unicast)发送的说明中进行说明。
对上述路由选择层进行的、传输目的地MAC地址的决定方法进行说明。首先,在图8中表示存在于图1的网络拓扑中的各节点的IP地址和MAC地址的一览。这里,图8说明各节点的IP地址和MAC地址。因为图8是说明前提条件的图,所以不特别地进行说明。
然后,参照图9以及图10对在图1的网络拓扑内链接确立完成时的、节点A的路由选择表和ARP表进行说明。这里,图9是节点A的路由选择表。图10是节点A的ARP表。
在图9中,路由选择表40由发送目的地IP地址41和传输目的地IP地址42构成。从图9中可知,节点A把以节点B以及节点C作为发送目的地IP地址的数据传输给节点B。另外,节点A把以节点D、节点E以及节点F作为发送目的地IP地址的数据传输给节点D。
在图10中,ARP表50由IP地址51和MAC地址52组成。从图10中可知,节点A保存自身以及作为传输目的地的节点B以及节点D的IP地址和MAC地址的对应。
如使用图7说明的那样,为了决定传输目的地MAC地址,通过传输目的地IP地址的检索、和根据检索到的传输目的地IP地址检索传输目的地MAC地址两个顺序来进行。
在图9的路由选择表40的第1项中,向节点B传输数据时的传输目的地节点的IP地址是节点B的IP地址[192.168.1.B]。另一方面,图10的ARP表50的第2项表示传输目的地IP是[192.168.1.B]的MAC地址是
。通过参照路由选择表40和ARP表50,确定向节点B传输数据时的传输目的地MAC地址。
同样在图9的路由选择表40的第2项中,向节点C传输数据时的传输目的地IP地址是[192.168.1.B]。另一方面,图10的ARP表50的第2项表示传输目的地IP是[192.168.1.B]的MAC地址是
。通过该顺序,确定向节点B传输数据时的传输目的地MAC地址。
关于上述两个传输目的地MAC地址决定的差异是在向节点B的传输中,节点A可以向节点B直接通信,所以对传输目的地MAC地址给予了节点B的MAC地址,但是,因为在向节点C的传输中节点A不能向节点C直接通信,所以给予作为中继节点选择出的节点B的MAC地址。这样,在路由选择层中,由应用层根据对数据给予的发送目的地IP地址来决定传输目的地MAC地址,在对数据给予后,将数据向发送队列排队。
上述路由选择表在网络拓扑从图1变化为图3那样时,通过路由选择层从图9向图11两个位置变更。这里,图11是图3的拓扑中的节点A的路由选择表。
这里,第1个变更点是在图9的第1项中,传输目的地节点B由于从网络中脱离而被删除。另一个变更点是在图9的第2项中,在网络拓扑变化前在向节点C传输数据时进行中继的节点B从网络中脱离,新的路由变更为节点A→节点D→节点E→节点F→节点C,所以传输目的地IP地址从节点B的IP地址变更为节点D的IP地址。因此,在图11中,删除节点B的IP地址,传输目的地IP地址42全部成为节点D。
然后,为了使后述的说明变得容易,对作为MAC层的通信协议的CSMA/CA方式的单播发送进行说明。在自组织网络中,因为具有节点无线发送数据并可以移动的特性,所以一般允许在短时间内任意地反复进行向网络的加入、脱离。因此,在自组织网络的MAC层中,一般采用CSMA/CA方式,该CSMA/CA方式的目的在于,通过各节点独立地进行分散控制来避免无线发送的冲突。关于本实施例,对采用了CSMA/CA方式的情况进行说明。在CSMA/CA方式的单播发送中,数据发送一侧在接收到从数据接收一侧发送的接收确认数据包(以后称为ACK)之后,使数据发送正常结束。在数据发送一侧准备ACK接收等待定时器,在超时时进行相同数据的重发,并再次试行ACK的接收。对该数据的重发设定了重发次数上限值(图7的参照号码80),在即使进行了与该重发次数上限值相同次数的重发也没有接收到ACK时,从发送队列中废弃该数据,以相同顺序进行下一数据的发送。
首先考虑上述图2的拓扑的情况。在以相同的传输率在同一期间内进行从节点A向节点C的数据传输、和从节点A向节点D的数据传输的状况下,在节点B正要从节点A的可无线通信范围内脱离时,在节点A的发送队列中排队多个向节点B的发送等待数据。在以后的说明中具体地说,各节点的发送队列的长度是50,对数据传输期间的节点A的发送队列平均排队10个数据作为发送等待数据。这里记述为平均是因为发送队列的发送等待数据的数量对应网络内的各节点的发送状态时间性地变动。
因此,如图3所示,在节点B移动到节点A的可无线通信范围外时,按照上述的链接状态监视顺序,网络A识别出与节点B的链接被切断。此时,节点A把向节点C的数据传输路由从节点A→节点B→节点C向节点A→节点D→节点E→节点F→节点C切换。但是,因为在节点A的发送队列中排队了传输目的地MAC地址为节点B的MAC地址的数据,所以对于无法无线通信的节点B,一个一个地对该排队数据反复进行与上述重发次数上限值相同次数的重发。即,已经排队的数据没有向节点C传输就被废弃,而且,通过新路由的数据传输的开始、节点B与传输路由无关的数据的发送开始白白地被延迟。
在此,使用图12以及图13对上述状况下的发送队列的动作概要进行具体地说明。这里,图12说明节点A与节点B的链接刚刚切断后的节点A的发送队列。图13说明进行了路由切换之后的节点A的发送队列。
在图12中,发送队列的长度是50,10个数据进行了排队。当对数据进行详细地说明时,在队列号码是1、3、5、7、9时发送目的地IP地址62是节点C的IP地址,传输目的地MAC地址61把作为中继节点选择出的节点B的MAC地址的数据进行了排队。同样,在队列号码是2、4、6、8、10时发送目的地IP地址62是节点D的IP地址,传输目的地MAC地址61由于节点A和节点D可以直接通信,所以将作为节点D的MAC地址的数据进行了排队。此外,数据的顺序号码表示向相同的发送目的地IP地址的序号。
该发送队列进行在通信量控制中广泛应用的FIFO控制。以下简单地对FIFO控制进行说明。首先,从队列号码50开始进行向队列的数据输入,向队列号码1的方向靠近。来自队列的输出从队列号码1开始进行,使在队列号码2之后排队的数据向队列号码1的方向移动。通过上述控制,从应用层生成的旧的数据开始顺次被输出。
当根据该FIFO控制,对节点A与节点B的链接切断之后的发送队列的动作进行说明时,从发送队列输出、并且无线通信的数据从队列号码为1的数据开始。在图13中,在通过链接切断识别进行了路由切换之后,应用层生成、并向路由选择层转交的顺序号码(n+5)的数据排队在发送队列的队列号码11处。因此,在输出顺序号码(n+5)的数据之前,等待发送10个数据。
该现象可以在具有节点无线发送数据并可以移动的特性的、允许在短时间内任意地反复进行向网络的加入、脱离的自组织网络中明显地发现。另外,上述说明以无线LAN的设定为基础进行了说明,但在不是无线LAN这样的高速无线传输,而是通过低速无线传输系统构筑自组织网络的情况下,无效数据的反复重发给整个系统的吞吐量的下降产生更大的影响。
然后,参照图14对CSMA/CA方式的数据包发送处理的动作流程进行说明。这里,图14是说明数据包发送处理动作的流程图。在图14中,首先,检查是否在发送队列60中排队了Qdata(S41)。当在步骤41中没有排队时(NO),因为没有发送数据所以反复进行步骤41。当在步骤41为YES时,使重发次数计数器初始化为0(S42)。然后,从发送队列中提取Qdata(S43),将提取出的Qdata转交给物理层150(S44)。如此,物理层150因为要将Qdata向相向节点进行无线发送,所以自身节点等待来自相向节点的ACK。然后,检查ACK接收是否成功(S45),在成功时(YES)分支到步骤48。在失败时(NO),为了进行重发处理分支到步骤46。在步骤46中使重发次数计数器加一,并检查重发次数计数器是否为重发次数上限值以上(S47)。这里的重发次数上限值如图7的重发次数上限值80所示,是在使用中没有变化的固定值。当在该检查中重发次数计数器小于重发次数上限值时,为了进行重发处理而分支到步骤44。在重发次数计数器为重发次数上限值以上时,分支到步骤48。在步骤48中废弃Qdata,为了进行新的Qdata发送处理而返回到步骤41。这样,在CSMA/CA方式中,无论对哪个Qdata都通过固定值控制重发次数的上限。
以下使用图15至图20对实施例1进行说明。这里,图15是节点的功能方框图。图16是节点的硬件方框图。图17以及图18说明节点A的链接确立表。图19是说明数据包废弃处理的流程图。图20对数据包废弃处理后的节点A的发送队列进行说明。
在图15中,节点100由以下构成由无线天线110和无线信号收发装置90组成的无线部1;作为与无线部1连接的FIFO存储器的数据包发送队列60;与数据包发送队列60连接的数据包发送控制部9和队列内数据包控制部2;与数据包发送队列60连接的路径信息给予部3;与路径信息给予部3和队列内数据包控制部2连接的路径信息存储部8;与路径信息存储部8连接的路径信息生成部7;与路径信息存储部8连接的路径信息更新部11;与路径信息给予部3、路径信息生成部7以及路径信息更新部11连接的无线连接确立部6;与路径信息给予部3连接的通信用应用部(application)5;和与通信用应用部5连接的、由显示部与输入部构成的控制台4。此外,图15因为以说明实施例1为目的,所以对发送功能进行了记载。
无线部1收发无线信号。数据包发送队列60是由传输目的地MAC地址、发送目的地IP地址和数据的顺序号码组成的、存储多个队列的FIFO存储器。数据包发送控制部9通过FIFO控制,从数据包发送队列60向无线部1传输数据。队列内数据包控制部2一边参照路径信息存储部8,一边检索在数据包发送队列60中存储的多个队列,执行与检索条件吻合的队列的删除、或者与检索条件吻合的队列的传输目的地MAC地址的更新。路径信息存储部8存储路由选择表、ARP表、重发次数表。无线连接确立部6通过HELLO消息的收发,判定链接的确立和链接的切断。无线连接确立部6还保存链接确立表。路径信息给予部3对参照路径信息存储部8发送的数据包给予传输目的地MAC地址。路径信息给予部3还从接收到的数据包中删除MAC地址,并向通信用应用部5进行传输。路径信息生成部7以从无线连接确立部6接收到的HELLO数据包的信息为基础,生成路径信息存储部8内的信息。路径信息更新部11以从无线连接确立部6接收到的HELLO数据包的信息/超时信息为基础,更新路径信息存储部8内的信息。
在图16中,节点100由以下构成中央处理装置(CPU)160;控制存储器170;控制台控制器180;与控制台控制器180连接的控制台4;网络控制器190;与网络控制器190连接的无线LAN部200;FIFO存储器210;硬盘220;以及连接CPU160、控制存储器170、控制台控制器180、网络控制器190、FIFO存储器210与硬盘220的总线230。对比图16和图15可知,网络控制器190和无线LAN部200构成无线部1。同样地,FIFO存储器210构成数据包发送队列60。控制台4是与用户间进行输入输出的终端,控制台控制器是其接口。CPU160将硬盘220中存储的多个程序读入控制存储器170中,来执行多个程序。控制存储器170存储多个程序、路由选择表40、ARP表50和链接确立表45等。图15的无线部1、数据包发送队列60、控制台4以外的各功能块作为CPU160执行的程序来实现。此外,可以不使用FIFO存储器210,在控制存储器170上实现FIFO。
考虑在网络拓扑为图1的结构,并且各节点进行了链接确立的状态下,以相同的传输率在同一期间内进行从节点A向节点C的数据传输、和从节点A向节点D的数据传输的情况。此时的节点A的链接确立表为图17。即,节点A的链接确立表45-1由单方向451-1和双方向452-1构成,单方向451-1全部为空。另一方面,在双方向452-1的识别节点ID中存储节点B的ID和节点D的ID,在识别节点B的识别节点识别的节点ID中存储节点A、C以及E的节点ID。另一方面,在识别节点D的识别节点识别的节点ID中存储节点A以及E的节点ID。
当网络拓扑从图1经过图2的状态,向图3的状态迁移时,节点A识别与节点B的链接切断。并且,链接切断后的节点A的链接确立表为图18所示,删除节点B。此外,省去图18的说明。在识别出该链接切断的时刻,路由选择层确认发送队列,对不需要发送的数据进行废弃。使用图19以及图20,从该链接切断识别开始对数据废弃动作进行说明。
这里,图19是说明应该废弃的数据包的选择和数据包废弃处理的流程图。图20对数据包废弃处理之后的发送队列进行说明。
首先,图12是节点A与节点B的链接刚刚切断后的节点A的发送队列。在这里,因为节点A正在向节点C和节点D传输数据,所以表示了在发送队列中相互间隔地各排队5个向节点C的数据和向节点D的数据。
在图19中,首先进行队列指针的初始化(对排列指针设置1)(S11)。然后,在1-2中判断队列指针是否没有超过队列长(S12)。步骤S12用于确认是否对发送队列内的全部数据完成了后续的处理。在步骤12的判定为NO时,结束。另一方面,在步骤12的判定为YES时,参照ARP表判定队列指针指示的数据(以后称为Qdata)的传输目的地MAC地址是否与在链接确立表中存在的某个节点的MAC地址相当(S13)。在此,如果与哪个链接确立节点的MAC地址都不相当(NO),则在废弃Qdata后,为了填补发送队列内的空缺使发送队列内的数据移动(S14),返回到步骤12。如果步骤13为YES时,则更新队列指针(S15),并向步骤12迁移。
在该数据包废弃处理结束后,把图12的发送队列内的数据更新为图20。顺便可知,废弃了预定在节点B进行中继向节点C传输的图12的队列号码1、3、5、7、9的数据。
根据本实施方式,因为可以省去链接切断时不需要发送的数据的重发处理,所以可以使应该发送的数据的发送吞吐量得到提高。其结果,可以得到使整个网络的吞吐量提高的效果。此外,因为抑制无效的无线发送,所以可以减轻节点的耗电量。
使用图21以及图22对实施例2进行说明。这里,图21是说明再次路由选择处理的流程图。图22对再次路由选择处理后的节点A的发送队列进行说明。
当网络拓扑从图1经过图2的状态向图3的状态进行迁移时,节点A的路由选择表从图9切换到图11。实施例2在对该路由选择表进行了切换的时刻,路由选择层确认发送队列,并对排队的数据进行再次路由选择处理。
在图21中,首先进行队列指针的初始化(S21)。然后,判定队列指针是否没有超过队列长(S22),如果是NO则结束。在步骤22为YES时,判定是否在路由选择表中存在Qdata的传输目的地IP地址(S23)。在步骤23为YES时,为了确认发送队列内的发送等待数据是否与最新的路径信息匹配,对Qdata的传输目的地MAC地址和Qdata的发送目的地IP地址通过路由选择表和ARP表对应的传输目的地MAC地址进行比较,判断是否不同(S24)。当在步骤24中判断为不同时(YES),将Qdata的传输目的地MAC地址置换为在路由选择表和ARP表中对应的传输目的地MAC地址(S25),更新队列指针(S26),并迁移到步骤22。当在步骤24的判定中判断为没有不同时(NO),因为Qdata与最新的路径信息相匹配,所以在Qdata中不添加任何变更,迁移到步骤26。
另一方面,如果步骤23为NO,则废弃Q数据,为了填补发送队列内的空缺使发送队列内的数据移动(S27)。此时,因为移动了发送队列所以不更新队列指针,向步骤22迁移。
在结束了该再次路由选择处理后,把发送队列内的数据从图12更新为图22,此时无需废弃顺号为从n到n+4的数据,可以通过新路由的节点A→节点D→节点E→节点F→节点C进行传输。另外,与其对于本来预定向节点D传输的Qdata,与执行本处理前相比没有延迟发送,倒不如通过减少发送给节点C的Qdata的重发,使到发送之前的时间提前。
根据本实施例,可以省去在路由选择表更新时不需要发送的数据的重发处理,所以应该发送的数据的发送吞吐量提高。通过在路由选择表更新时施加再次路由选择处理,可以不废弃数据变更路由进行传输,所以无需被废弃的数据的重发时间。结果,可以使整个网络的吞吐量提高。而且,因为抑制无效的无线发送,可以减轻节点的耗电。
考虑在网络拓扑是图1的结构,并且各节点链接确立的状态下,以相同的传输率,在同一期间内进行从节点A向节点C的数据传输、和从节点A向节点D的数据传输的情况。此时的节点A的链接确立表如图17所示。
当网络拓扑从图1经过图2的状态,迁移到图3的状态时,节点A识别与节点B的链接切断。链接切断后的节点A的链接确立表为图18所示,删除节点B。在本实施例中,在识别出该链接切断的时刻,路由选择层确认发送队列,将不需要发送的数据的传输目的地MAC地址置换为已链接确立的节点的MAC地址。使用图23对从该链接切断识别开始传输目的地MAC地址的置换动作进行详细地说明。这里,图23是说明再次路由选择处理的流程图。
在图23中,首先进行队列指针的初始化(S31)。然后,判断队列指针是否没有超过队列长(S32)。如果在步骤32中为NO则结束,如果为YES,则比较队列指针指示的数据的传输目的地MAC地址、和通过参照ARP表可以确认的、已链接切断的节点的MAC地址(S33)。在两者相同的情况下(YES),因为可以判断Qdata为传输目的地节点不存在的数据,所以通过参照ARP表提取存在于链接确立表中的节点的MAC地址,并与Qdata的传输目的地MAC地址进行置换(S34),使队列指针加一(S35),返回到步骤32。当在步骤33中地址不同时(NO),跳过步骤34,分支到步骤35。
在结束了该再次路由选择处理之后,发送队列内的数据从图12更新为图22,无需废弃序号从n到n+4的数据,可以通过新路由的节点A→节点D→节点E→节点F→节点C进行传输。另外,与其对于本来预定向节点D传输的Qdata,与执行本处理前相比没有延迟发送,倒不如通过减少发送给节点C的Qdata的重发,使到发送之前的时间提前。
根据本实施例,在链接切断时,要向链接没有确立的节点发送的数据包到达链接已确立的节点,到达链接已确立的节点的数据包通过其它路由,到达发送目的地节点的可能性确实提高。其结果,可以减少数据包的重发次数,可以期待整个网络吞吐量的提高。
使用图24至图29对实施例进行说明。这里,图24、图26以及图27说明网络拓扑。图25以及图28说明节点A的链接确立表。图29是说明再次路由选择处理的流程图。
考虑在网络拓扑是图24的结构,并且各节点链接确立的状态下,以相同的传输率,在同一期间内进行从节点A向节点C的数据传输、和从节点A向节点D的数据传输的情况。作为前提条件,各节点的发送队列的长度是50,对数据传输期间的节点A的发送队列平均排队10个数据作为发送等待数据。另外,此时的节点A的链接确立表如图25所示。即,节点A的链接确立表45-1由单方向451-1和双方向452-1构成,单方向451-1全部为空。另一方面,在双方向452-1的识别节点ID中记录了节点B的ID、节点D的ID和节点G的ID,在识别节点B的识别节点识别的节点ID中记录了节点A、C以及E的节点ID。此外,在识别节点D的识别节点识别的节点ID中记录了节点A、E以及H的节点ID。而且,在识别节点G的识别节点识别的节点ID中记录了节点A以及H的节点ID。
当网络拓扑从图24经过图26的状态,向图27的状态迁移时,节点A识别与节点B的链接切断。并且,链接切断后的节点A的链接确立表为图28所示,删除节点B。在实施例4中,在识别出该链接切断的时刻,路由选择层确认发送队列,将不需要发送的数据的传输目的地MAC地址置换为在已链接确立的节点中识别节点数量最多的节点的MAC地址。以下,从该链接切断识别开始,对传输目的地MAC地址的置换动作进行说明。
在图29中,首先进行队列指针的初始化(S41)。然后,判定队列指针是否没有超过队列长(S42),如果为NO则结束。当在步骤42中为YES时,比较Qdata的传输目的地MAC地址、和通过参照ARP表可以确认的、已链接切断的节点的MAC地址(S43)。在两者不同的情况下(NO),因为可以判断Qdata为存在传输目的地节点的数据,所以分支到队列指针的加一(S47)。当在步骤43中地址相同时,判定是否存在多个链接确立表内的识别节点(44),在仅存在1个时,通过参照ARP表提取存在于链接确立表中的节点的MAC地址,与Qdata的传输目的地MAC地址进行置换处理(S46),并向步骤47迁移。
当在步骤44中判断为存在多个识别节点时,将Qdata的传输目的地MAC地址、和在链接确立表中存储的识别节点中识别节点数最多的节点的MAC地址进行置换(S45),并向步骤47进行迁移。在步骤47中更新队列指针,并向步骤42进行迁移。
此外,步骤44至步骤46归纳为一点是可以将Qdata的传输目的地MAC地址、与在链接确立表中存储的识别节点中识别节点数最多的节点的MAC地址进行置换。此时,与实施例3中说明的图23为基本相同的流程。
在结束了该再次路由选择处理之后,发送队列内的数据从图12更新为图22,无需废弃序号从n到n+4的数据,可以通过新路由的节点A→节点D→节点E→节点F→节点C进行传输。另外,与其对于本来预定向节点D传输的Qdata,与执行本处理前相比没有延迟发送,倒不如通过减少发送给节点C的Qdata的重发,使到发送之前的时间提前。
根据本实施例,当在链接切断时存在多个已链接确立的节点时,从已链接确立的节点中,选择已链接确立的节点数量最多的节点来发送数据包,因此,可以使数据包到达发送目的地节点的可能性进一步提高。其结果,可以减少数据包的重发次数,可以期待整个网络吞吐量的提高。
参照图30至图34对实施例5进行说明。这里,图30以及图33说明重发次数表。图31是对链接确立时的重发次数更新进行说明的流程图。图32是对链接切断时的重发次数更新进行说明的流程图。图34是对数据包发送处理的动作进行说明的流程图。
如图30所示,重发次数的初期设定仅设定了默认的重发次数上限值。在图30中,重发次数表25-1由MAC地址251-1和重发次数上限值252-1构成,因为在MAC地址251-1中记载了[默认值],所以表示无论是哪个MAC地址都被设定为作为重发次数上限值的默认值的3。以后将该重发次数上限值的默认值称为重发次数上限值D。
然后,当对重发次数表的更新进行说明时,首先,更新定时为链接确立时和链接切断时两个定时。
首先,使用图31对链接确立时的重发次数更新动作进行说明。首先,判定已链接确立的节点的MAC地址是否包含在重发次数表25中(S51),在包含的情况下(YES)分支到步骤52。在没有包含的情况下(NO)结束。在步骤52中,从重发次数表中删除已链接确立的节点的MAC地址和与该地址对应的重发次数上限值。此外,在上述的说明中,参照作为重发次数表25追加说明的图33。
然后,在图32中表示链接切断时的重发次数更新动作的流程。在步骤61中,在重发次数表中追加已链接切断的节点的MAC地址和与该节点对应的重发次数上限值。这里,追加的重发次数上限值设为小于重发次数上限值D的值,以后将该值称为重发次数上限值S。
使用具体的例子对该上述处理进行说明。首先考虑网络拓扑从图1迁移到图3,又返回到图1的情况。首先,图1状态下的重发次数表与初期设定相同为图30。在从该图1的状态迁移到图3时,重发次数表如图33那样变化。即,如在图32中说明的那样,在MAC地址251-1中追加已切断链接的节点B的MAC地址,作为重发次数上限值S选择[1],并记载在重发次数上限值252-1中。而且,在返回到图1状态时,如在图31中说明的那样,重发次数表返回到图30。
然后,使用图34对实施例5的CSMA/CA方式的变更动作进行说明。在图34中,首先检查是否在发送队列60中排队了Qdata(S71)。在没有排队时(NO),因为没有发送数据所以反复进行步骤71。当在步骤71中进行了排队时(YES)时,使重发次数计数器初始化为0(S72)。然后,从发送队列60中提取Qdata(S73)。检查在重发次数表25中是否存在提取出的Qdata的传输目的地MAC地址(S74)。在存在时(YES),把与该MAC地址对应的值设定为重发次数上限值(S75)。在步骤74中,在不存在时(NO),将重发次数表内的默认值设定为重发次数上限值(S76)。
然后,将Qdata转交给物理层150(S77)。这样,物理层150向相向节点无线发送Qdata,所以自身节点等待来自相向节点的ACK。然后,检查是否成功接收了ACK(S78),在成功的情况下(YES),废弃保存的Qdata(S81),并返回到步骤71。
当在步骤78中失败时(NO),为了进行重发处理使重发次数计数器加一(S79),并检查重发次数计数器是否在重发次数上限值以上(S80)。当在步骤80中重发次数计数器小于重发次数上限值时(NO),为了进行重发处理再次分支到步骤77。当在步骤80中重发次数计数器为重发次数上限值以上时(YES),废弃保存的Qdata(S81),并返回到步骤71。
考虑在网络拓扑为图1的结构,并且各节点进行了链接确立的状态下,以相同的传输率在同一期间内进行从节点A向节点C的数据传输、和从节点A向节点D的数据传输的情况。作为前提条件,各节点的发送队列的长度是50,对数据传输期间的节点A的发送队列平均排队10个数据作为发送等待数据。另外,此时的节点A的链接确立表如图17所示。
在网络拓扑为图1时,通过上述说明,重发次数表为图30所示,当发送队列为图12时,发送队列内的全部Qdata的重发次数为默认的3次。然后,在从图1迁移到图3状态时,因为重发次数表为图33,所以当此时的发送队列为图12时,传输目的地MAC地址为
的Qdata的重发次数最大为1次,除此以外的传输目的地MAC地址(在图12的情况下,为
)的Qdata的重发次数最大为3次。
通过该处理,可以只减少链接处于切断的节点成为传输目的地的发送队列内的数据的重发次数。
根据本实施例,可以减少向没有确立链接的节点的无效重发。结果,可以使整个网络的吞吐量提高。此外,因为抑制无效的无线发送,所以可以减轻节点的耗电。
根据本发明,可以提供简易并且使通信品质得到提高的网络的无线通信装置。
权利要求
1.一种无线通信装置,其由以下各部组成无线部,其收发含有数据包的无线信号;无线连接确立部,其判定确立和切断与在无线信号的到达范围内配置的其它无线通信装置的无线连接;路径信息生成部,生成数据包的传输路径信息;和数据包发送队列,其保存含有传输目的地MAC地址的队列,其特征在于,具有队列内数据包控制部,其在所述无线连接确立部判断为无线连接的切断时,检索有无所述数据包发送队列保存的所述无线连接切断对象的队列。
2.一种无线通信装置,其由以下各部组成无线部,其收发含有数据包的无线信号;无线连接确立部,其判定确立和切断与在无线信号的到达范围内配置的其它无线通信装置的无线连接;路径信息生成部,生成数据包的传输路径信息;和数据包发送队列,其保存含有传输目的地MAC地址的队列,其特征在于,具有队列内数据包控制部,在所述无线连接确立部判定为无线连接的切断时,所述路径信息生成部更新所述传输路径信息,所述队列内数据包控制部删除所述数据包发送队列保存的所述无线连接切断对象的队列。
3.一种无线通信装置,其由以下各部组成无线部,其收发含有数据包的无线信号;无线连接确立部,其判定确立和切断与在无线信号的到达范围内配置的其它无线通信装置的无线连接;路径信息生成部,生成数据包的传输路径信息;和数据包发送队列,其保存含有传输目的地MAC地址的队列,其特征在于,具有队列内数据包控制部,在所述无线连接确立部判定为无线连接的切断时,所述路径信息生成部更新所述传输路径信息,所述队列内数据包控制部根据更新后的传输路径信息,对所述数据包发送队列保存的所述无线连接的切断对象队列的传输目的地MAC地址进行更新。
4.一种无线通信装置,其由以下各部组成无线部,其收发含有数据包的无线信号;无线连接确立部,其判定确立和切断与在无线信号的到达范围内配置的其它无线通信装置的无线连接;路径信息生成部,生成数据包的传输路径信息;和数据包发送队列,其保存含有传输目的地MAC地址的队列,其特征在于,具有队列内数据包控制部,在所述无线连接确立部判定为无线连接的切断时,所述路径信息生成部更新所述传输路径信息,所述队列内数据包控制部将所述数据包发送队列保存的所述无线连接切断对象队列的传输目的地MAC地址更新为确立了无线连接的MAC地址。
5.根据权利要求4所述的无线通信装置,其特征在于,在存在多个确立了所述无线连接的MAC地址时,更新为具有确立了所述无线连接的MAC地址的无线装置识别的无线装置的数量最多的无线装置的MAC地址。
6.一种无线通信装置,其由以下各部组成无线部,其收发含有数据包的无线信号;无线连接确立部,其判定确立和切断与在无线信号的到达范围内配置的其它无线通信装置的无线连接;路径信息生成部,生成数据包的传输路径信息;和数据包发送队列,其保存含有传输目的地MAC地址的队列,其特征在于,在所述无线连接确立部判断为无线连接的切断时,将所述数据包发送队列保存的被切断的无线终端成为发送目的地的数据包的重发次数上限值减小。
7.一种无线通信装置,由以下组成通过总线连接的中央处理装置;写入了多个程序的控制存储器;网络控制器;保存含有传输MAC地址和发送目的地IP地址的发送队列的FIFO存储器;以及与所述网络控制器连接的无线LAN部,其特征在于,在检测到与其它无线通信装置的链接切断时,以所述其它无线通信装置的IP地址作为关键字来检索所述FIFO存储器,并废弃或者更新面向所述其它无线通信装置的队列。
8.一种无线通信装置,由以下组成通过总线连接的中央处理装置;存储器;网络控制器;以及与所述网络控制器连接的无线LAN部,其特征在于,所述存储器具有写入了多个程序的控制区域、和保存含有传输MAC地址和发送目的地IP地址的发送队列的FIFO区域,在检测到与其它无线通信装置的链接切断时,以所述其它无线通信装置的IP地址作为关键字来检索所述FIFO区域,废弃或者更新面向所述其它无线通信装置的队列。
全文摘要
本发明针对无法通信的无线终端,减少无效的无线数据发送次数。所述无线终端始终监视无线终端彼此之间的通信状况,在通信状况出现变化时,对于等待无线发送的1个或者多个数据,确认是否为针对可以通信的无线终端的数据,在判断为无法无线通信的情况下废弃该数据。由此可以减少无效的无线数据发送次数。
文档编号H04L1/00GK101047643SQ200610146900
公开日2007年10月3日 申请日期2006年11月29日 优先权日2006年3月28日
发明者高谷幸宏, 石崎雅之 申请人:株式会社日立国际电气