数据包发送接收系统、数据包发送接收方法以及数据包发送接收程序的制作方法

文档序号:6570817阅读:276来源:国知局
专利名称:数据包发送接收系统、数据包发送接收方法以及数据包发送接收程序的制作方法
技术领域
本发明涉及数据包发送接收系统、数据包发送接收方法、以及数据 包发送接收程序。
背景技术
以往,在从发送侧的发送緩沖器向接收侧的接收緩冲器发送数据包 的系统中,为了防止因接收緩冲器溢出使数据包被废弃, 一般是从接收 侧把接收緩冲器中的数据包的读出状况通知给发送侧,在发送侧控制数 据包的发送。
例如,在专利文献l (日本特开平9-135270号公报)中公开了这样 的技术,即,根据数据包的最长尺寸(最大容量)预先固定决定接收緩 冲器可保存的队列级数(包数),使用该固定决定的队列级数,控制数 据包的发送。下面,结合图22,对该以往技术进行具体说明。图22是 用于说明以往技术的数据包发送控制系统的概要和特征的图。另外,这 里说明如下示例如该图所示那样,接收侧的接收緩冲器的尺寸为16 字节,从发送側发送的数据包的最长尺寸是4字节,作为接收緩冲器可 保存的队列级数(包数)预先固定决定为4个。
如该图所示,在发送侧,具有信用(credit)控制计数器,在每次 从发送緩冲器读出数据包并把数据包发送给接收侧时,与被发送的数据 包的尺寸(数据容量)无关地对信用控制计数器的值加1(参照该图的
(U)。另一方面,在接收侧,当从发送侧接收到数据包时,从接收緩 冲器的先头开始连续写入所接收的数据包(参照该图的(2))。另外, 在接收侧,在每次从接收緩冲器读出数据包时,与被读出的数据包的尺 寸无关地向发送侧返回一个信用(参照该图的(3))。而且,在发送侧 在每次从接收侧接收到信用时,从信用控制计数器的值中减去信用的数
(参照该图的(4))。
这样,在发送侧虽然是对信用控制计数器的值进行加减运算,但在信用控制计数器中,如上述那样,作为在接收緩沖器中可保存的队列级
数(包数)预先固定设定为4个。因此,在发送侧,在成为从发送緩冲 器中读出数据包并把数据包向接收侧发送的时刻时,判定信用控制计数 器的当前值是否达到固定值(4个)。而且,在发送侧,在信用控制计数 器的当前值未达到固定值(4个)的情况下,从发送緩冲器读出数据包 并把数据包向接收侧发送,而在信用控制计数器的当前值达到了固定值 (4个)的情况下,判断为接收緩冲器可能已经装满了数据包,停止数 据包的发送(参照该图的(5))。通过这样的一系列的处理,专利文献l 的技术可防止因接收緩冲器的溢出而造成的数据包的废弃。
另外,除了上述的以往技术以外,还公知有在基于信用的控制中, 通过根据接收緩冲器的剩余容量,追加发布信用,把緩冲器作为循环緩 冲器使用的技术(例如参照专利文献2)。并且还公知有,在緩冲器的控 制中,对于发送緩冲器的使用状态,通过使用管理表,可简单管理发送 数据的技术(例如参照专利文献3 )。
专利文献l:日本特开平9-135270号公报(第2-4页、图l-3 )
专利文献2:日本特开2001-94613号公报(第3-5页、图l)
专利文献3:日本特开平11-110315号公报(第6-10页、图l-2 )
但是,在上述的以往技术中,如以下说明的那样,在接收緩沖器中 容易产生未使用的区域,存在着不能有效利用作为接收緩冲器的资源的 问题。
即,在上述的以往技术中,是根据数据包的最长尺寸预先固定决定 了接收緩沖器可保存的队列级数(在上述的例中是4个)。因此,如图 22所示,如在接收緩冲器中保存了尺寸为"4字节、2字节、2字节、2 字节"的4个包的情况那样,即使在接收緩沖器中保存了未达到数据包 的最长尺寸的短尺寸的数据包的情况下,由于发送侧的信用控制计数器 的值达到了固定值(4个),结果也停止数据包的发送。而且,在这样的 情况下,在接收緩冲器中产生大的未使用区域(在上述的例中,产生6 字节的未使用区域),因而存在着不能有效利用作为接收緩冲器的资源 的问题。另外,上述的问题不仅在通过网络在通信装置之间发送数据包的情 况下产生,而且例如在计算机系统内部,在电路之间发送数据包的情况 下等,在从发送侧的发送緩冲器向接收侧的接收緩冲器发送数据包的所 有系统中,同样会产生。

发明内容
因此,本发明就是为了解决上述以往技术的问题而完成的,目的是 提供一种可有效利用作为接收緩冲器的资源的数据包发送接收系统、数 据包发送接收方法、以及数据包发送接收程序。
为了解决上述的问题,达到本发明的目的,权利要求l所涉及的本 发明是从具有发送緩冲器的发送装置向具有接收緩沖器的接收装置发
送数据包的数据包发送接收系统,其特征在于,包括上述接收装置, 在读出了被保存在上述接收緩冲器中的数据包的情况下,向上述发送装 置发送在上述发送装置中确定该已被读出的数据包的容量时使用的容 量确定信息,上述发送装置,针对上述接收緩冲器的容量,把与当前所 保存的全部数据包的总容量相应的值作为信用进行存储;在从上述发送 緩沖器向上述接收装置发送了上述数据包的情况下,把与该被发送的数 据包的容量相应的值的信用,与被存储在信用存储单元中的信用相加, 并保存;在从上述接收装置接收到上述容量确定信息的情况下,使用该 容量确定信息,确定从上述接收緩冲器已被读出的数据包的容量,把与 该已确定的容量相应的值的信用,从被存储在上述信用存储单元中的信 用中减去,并保存;根据被存储在上述信用存储单元中的信用的值,进 行上述数据包的发送许可或发送停止的控制。
另外,权利要求2所涉及的本发明的特征是,在上述发明中包括
容量确定信息发送单元把与从上述接收緩沖器已被读出的数据包的容
量相应的值的信用,作为上述容量确定信息发送给上述发送装置,信用 加法计算单元把与被发送到上述接收装置的数据包的容量相应的值的
信用,与被存储在上述信用存储单元中的信用相加,并保存,信用减法 计算单元把从上述接收装置接收到的值的信用,从被存储在上述信用存
储单元中的信用中减去,并保存。
另外,权利要求3所涉及的本发明的特征是,在上述发明中包括上述容量确定信息发送单元与从上述接收緩冲器已被读出的数据包的 容量无关地把上述容量确定信息发送给上述发送装置,上述信用加法计 算单元把与被发送到上述接收装置中的数据包的容量相应的值的信用, 按每个上述数据包区分并按发送顺序与存储在上述信用存储单元中的 信用相加,并保存,上述信用减法计算单元从按每个上述数据包区分并 按发送顺序存储在上述信用存储单元中的信用中,减去最早发送来的数 据包的信用,并保存。
另外,权利要求4所涉及的本发明的特征是,在上述发明中包括 上述发送控制单元,在许可上述数据包的发送的情况下,在该数据包中 附加用于唯一识别该被发送的数据包的识别信息,并发送给上述接收装 置,上述容量确定信息发送单元与从上述接收緩冲器已被读出的数据包 的容量无关地向上述发送装置发送被附加在该数据包中的识别信息,上 述信用加法计算单元把与被发送到上述接收装置的数据包的容量相应 的值的信用,按每个上述数据包区分并且附加上述识别信息后与被存储 在上述信用存储单元中的信用相加,并保存,上述信用减法计算单元从 按每个上述数据包区分并且附加了上述识别信息后被存储在上述信用 存储单元中的信用中,减去与从上述接收装置接收到的识别信息对应的 数据包的信用,并保存。
另外,权利要求5所涉及的本发明的特征是,在上述发明中包括
上与要从上述发送装置发送的数据包的容量相应的信用的值后的加法 计算值,是否达到了根据上述接收緩沖器的容量确定的规定值,在上述 加法计算值未达到上述规定值的情况下,进行许可上述数据包的发送的 控制,在上述加法计算值达到了上述规定值的情况下,进行停止上述数 据包的发送的控制。
另外,权利要求6所涉及的本发明的特征是,在上述发明中包括 上述发送控制单元判定被存储在上述信用存储单元中的信用的值是否 达到了根据上述接收緩冲器的容量确定的值,在上述信用的值未达到上 述规定值的情况下,进行许可上述数据包的发送的控制,在上述信用的 值达到了上述规定值的情况下,进行停止上述数据包的发送的控制。
权利要求7所涉及的本发明是从具有发送緩冲器的发送装置向具有接收緩冲器的接收装置发送数据包的数据包发送接收方法,其特征在
于,包括上述接收装置执行容量确定信息发送步骤,在该容量确定信 息发送步骤中,在读出了被保存在上述接收緩冲器中的数据包的情况 下,向上述发送装置发送在上述发送装置中确定该已被读出的数据包的 容量时使用的容量确定信息;上述发送装置执行信用存储步骤,针对 上述接收緩冲器的容量,把与当前所保存的全部数据包的总容量相应的 值作为信用存储在信用计数器中;信用加法计算步骤,在从上述发送緩 冲器向上述接收装置发送了上述数据包的情况下,把与该被发送的数据 包的容量相应的值的信用,与被存储在上述信用计数器中的信用相加, 并保存;信用减法计算步骤,在从上述接收装置接收到上述容量确定信 息的情况下,使用该容量确定信息确定从上述接收緩冲器已被读出的数 据包的容量,把与该已确定的容量相应的值的信用,从被存储在上述信 用计数器中的信用中减去,并保存;和发送控制步骤,根据被存储在上 述信用计数器中的信用的值,进行上述数据包的发送许可或发送停止的 控制。
另外,权利要求8所涉及的本发明是使计算机执行从具有发送緩冲 器的发送装置向具有接收緩沖器的接收装置发送数据包的方法的数据 包发送接收程序,其特征在于,作为上述接收装置的计算机执行容量确 定信息发送步骤,在该容量确定信息发送步骤中,在读出了被保存在上 述接收緩沖器中的数据包的情况下,向上述发送装置发送在上述发送装 置中确定该已被读出的数据包的容量时使用的容量确定信息;作为上述 发送装置的计算机执行信用存储步骤,针对上述接收緩冲器的容量, 把与当前所保存的全部数据包的总容量相应的值作为信用存储在信用 计数器中;信用加法计算步骤,在从上述发送緩冲器向上述接收装置发 送了上述数据包的情况下,把与该被发送的数据包的容量相应的值的信 用,与被存储在上述信用计数器中的信用相加,并保存;信用减法计算 步骤,在从上述接收装置接收到上述容量确定信息的情况下,使用该容 量确定信息确定从上述接收緩冲器已被读出的数据包的容量,把与该已 确定的容量相应的值的信用,从被存储在上述信用计数器中的信用中减 去,并保存;和发送控制步骤,根据被存储在上述信用计数器中的信用 的值,进行上述数据包的发送许可或发送停止的控制。
另外,权利要求9所涉及的本发明是一种接收装置,用于接收从发送装置发送的数据包,其特征在于,包括具有保存上述数据包的接收 緩冲器;读出被保存在上述接收緩冲器中的数据包;在读出了被保存在 上述接收緩冲器中的数据包的情况下,向上述发送装置发送在确定该已 被读出的数据包的容量时使用的容量确定信息。
另外,权利要求10所涉及的本发明的特征是,在上述发明中,容 量确定信息发送单元,把与从上述接收緩冲器已被读出的数据包的容量 相应的值的信用作为上述容量确定信息,发送给上述发送装置。
另外,权利要求11所涉及的本发明是一种发送装置,用于向具有 接收緩冲器的接收装置发送数据包,其特征在于,包括把与保存在上 述接收緩冲器中的全部数据包的总容量相应的值作为信用存储;在向上 述接收装置发送了上述数据包的情况下,把与该被发送的数据包的容量 相应的值的信用,与被存储在信用存储单元中的信用相加;根据从上述 接收装置接收到的用于确定从上述接收緩冲器已被读出的数据包的容 量的容量确定信息,把与从上述接收緩冲器已被读出的数据包的容量相 应的值的信用,从被存储在上述信用存储单元中的信用中减去;根据被 存储在信用存储单元中的信用的值,进行上述数据包的发送许可或发送 停止的控制。
根据权利要求1、 7或8的发明,接收装置在读出了被保存在接收 緩沖器中的数据包的情况下,把容量确定信息发送给发送装置,发送装 置针对接收緩沖器的容量把与当前保存的全部数据包的总容量相应的 值作为信用存储,在从发送緩冲器向接收装置发送了上述数据包的情况 下,把与该已被发送的数据包的容量相应的值的信用与当前的信用相加 并保存,在从接收装置接收到容量确定信息的情况下,使用该容量确定 信息确定从接收緩沖器已被读出的数据包的容量,把与该已确定的容量 相应的值的信用从当前的信用中减去并保存,根据被存储在信用存储单 元中的信用的值,进行数据包的发送许可或发送停止的控制,因此,发 送装置可根据数据容量而不是数据包数量来掌握接收緩冲器中的数据 包的收纳状况, 一边在数据包不溢出的范围内动态调整被保存在接收緩 冲器中的数据包数量(队列级数), 一边发送数据包,由此,可减少接 收緩冲器的未使用区域,其结果,可以有效利用作为接收緩冲器的资源。
另外,根据权利要求2的发明,接收装置,把与从接收緩冲器已被读出的数据包的容量相应的值的信用作为容量确定信息发送给发送装 置,发送装置把与被发送到接收装置的数据包的容量相应的值的信用与 当前的信用相加并保存,发送装置,从当前的信用中减去从接收装置接 收到的值的信用并保存,因此,在发送装置中,只需直接减去从接收装 置接收到的信用,即可掌握接收緩冲器中的数据包的收纳状况,其结果, 可以简化发送装置中的信用的增减处理。
另外,根据权利要求3的发明,接收装置与从接收緩冲器已被读出 的数据包的容量无关地把容量确定信息发送给发送装置,发送装置把与 被发送到接收装置的数据包的容量相应的值的信用,按照每个数据包区 分,并按发送顺序,与当前的信用相加并保存,发送装置从按每个数据 包区分并按发送顺序被存储在信用存储单元中的信用中,减去最先发送 来的数据包的信用并保存,因此,只需与从接收緩冲器中已被读出的数 据包的容量无关地总是从接收装置向发送装置发送同量的信用,在发送 装置中即可掌握接收緩冲器中的数据包的收纳状况,其结果,可简化从 接收装置向发送装置的返送处理。
另外,根据权利要求4的发明,发送装置在许可数据包的发送的情 况下,把用于唯一识别该被发送的数据包的识别信息附加在该数据包 中,发送给接收装置,接收装置与从接收緩沖器已被读出的数据包的容 量无关地把被附加在该数据包中的识别信息发送给发送装置,发送装置 把与被发送给接收装置的数据包的容量相应的值的信用,按每个数据包 区分,并且附加识别信息,与当前的信用相加并保存,发送装置从按每 个数据包区分并且被附加了识别信息后存储在信用存储单元中的信用 中,减去与从接收装置接收到的识别信息对应的数据包的信用并保存, 因此,只需与从接收緩沖器已被读出的数据包的容量无关地从接收装置 把包的识别信息发送给发送装置,在接收装置中即可掌握接收緩冲器中 的数据包的收纳状况,其结果,可简化从接收装置向发送装置的返送处 理。并且,由于只需把包的识别信息从接收装置发送给发送装置,即可 可靠地确定从接收緩冲器读出的数据包的容量,其结果,可以可靠地掌 握接收緩冲器中的数据包的收纳状况。
另外,根据权利要求5的发明,发送装置判定对当前的信用的值加 上了与从发送装置要发送的数据包的容量相应的信用的值后的加法计算值是否达到了根据接收緩冲器的容量确定的规定的值,在加法计算值 未达到规定的值的情况下,进行许可发送数据包的控制,在加法计算值 达到了规定值的情况下,进行停止发送数据包的控制,因此,可推定这 以后将要发送的数据包在被发送之后的接收緩冲器的收纳状况,其结 果,可以可靠地防止接收緩冲器的溢出。
另外,根据权利要求6的发明,发送装置判定当前的信用的值是否 达到根据接收緩冲器确定的规定的值,在信用的值未达到规定值的情况 下,许可数据包的发送,在信用的值达到了规定值的情况下,停止数据 包的发送,因此,例如,能够预先把从接收緩冲器的容量减去数据包的 最长尺寸后的值设定为信用计数器的上P艮值, 一边判定信用是否超过该 上限值, 一边控制数据包的发送,其结果,也可以简化包的发送许可或 发送停止的处理。
另外,根据权利要求9的发明,接收装置具有保存数据包的接收緩 沖器,读出被保存在接收緩冲器中的数据包,在读出了净皮保存在接收緩 冲器中的数据包的情况下,向发送装置发送在确定该已被读出的数据包 的容量时使用的容量确定信息,因此,发送装置通过根据当前的信用控 制数据包的发送许可或发送停止,发送装置可根据数据容量而不是数据 包数来掌握接收緩冲器中的数据包的收纳状况,并一边在数据包不溢出 的范围内动态调整被保存在接收緩沖器中的数据包数(队列级数),一 边发送数据包,由此,可减少接收緩冲器的未使用区域,其结果,可有 效利用作为接收緩冲器的资源。
另外,根据权利要求10的发明,接收装置,把与从接收緩沖器已 被读出的数据包的容量相应的值的信用作为容量确定信息发送给发送 装置,所以,发送装置把与被发送到接收装置的数据包的容量相应的值 的信用与当前的信用相加并保存,发送装置把从接收装置接收到的值的
信用从当前的信用中减去并保存,由此,在发送装置中只需直接减去从 接收装置接收到的信用,即可掌握接收緩沖器中的数据包的收纳状况, 其结果,可以简化发送装置中的信用的增减处理。
另外,根据权利要求11的发明,发送装置把与被保存在接收緩冲器 中的全部数据包的总容量相应的值作为信用存储,在向接收装置发送了 数据包的情况下,把与该被发送的数据包的容量相应的值的信用与当前的信用相加,根据从接收装置接收的用于确定从接收緩冲器已被读出的 数据包的容量的容量确定信息,把与从接收緩冲器已被读出的数据包的 容量相应的值的信用,从当前的信用中减去,根据被存储在信用存储单 元中的信用的值,控制数据包的发送许可或发送停止,因此,接收装置, 在读出了被保存在接收緩冲器中的数据包的情况下,向发送装置发送容 量确定信息,由此,发送装置可根据数据容量而不是数据包数来掌握接 收緩冲器中的数据包的收纳状况, 一边在数据包不溢出的范围内动态调 整在接收緩冲器中保存的数据包数(队列级数), 一边发送数据包,由 此,可以减少接收緩冲器的未使用区域,其结果,可有效利用作为接收 緩冲器的资源。


图1是用于说明实施例1的数据包发送接收系统的概要和特征的图。
图2是表示实施例1的数据包发送接收系统的结构的方框图。
图3是表示实施例1的数据包发送时的处理的流程图。
图4是表示实施例1的数据包接收时的处理的流程图。
图5是表示实施例1的数据包发送时的处理的流程图。
图6是用于说明实施例2的数据包发送接收系统的概要和特征的图。
图7是表示实施例2的包发送接收系统的结构的方框图。 图8是表示实施例2的信用加法计算时的处理的概念图。 图9是表示实施例2的信用减法计算时的处理的概念图。 图IO是表示实施例2的包发送时的处理的流程图。 图ll是表示实施例2的信用接收时的处理的流程图。 图12是表示实施例2的信用发送时的处理的流程图。图13是用于说明实施例3的数据包发送接收系统的概要和特征的图。
图14表示实施例3的包发送接收系统的结构的方框图。
图15是表示实施例3的信用加法计算时的处理的概念图。
图16是表示实施例3的信用减法计算时的处理的概念图。
图17是表示实施例3的包发送时的处理的流程图。
图18是表示实施例3的信用接收时的处理的流程图。
图19是表示实施例3的识别信息发送时的处理的流程图。
图20是表示应用了本发明的计算机系统的示例的图。
图21是表示实施例1的数据包发送接收系统的程序的图。
图22是用于说明以往技术的数据包发送控制系统的概要和特征的图。
图中100-发送装置;110-数据输入部;120-发送緩冲器;130 -发送緩冲器控制部;131-包发送控制部;132-信用加法计算部;133-信用计数部;134-信用减法计算部;200-接收装置;210-接收緩沖器; 220-数据输出部;230-接收緩沖器控制部;231-信用发送部。
具体实施例方式
下面,参照附图,对本发明的数据包发送接收系统、数据包发送接 收方法、以及数据包发送接收程序的实施例进行详细说明。另外,在以 下的实施例1中,顺序说明实施例1的数据包发送接收系统的概要和特 征、数据包发送接收系统的结构和处理流程、以及效果。
实施例1
首先,结合图1,说明实施例1的数据包发送接收系统的概要和特征。图l是用于说明实施例l的数据包发送接收系统的概要和特征的图。 如该图所示,实施例1的数据包发送接收系统是从具有发送緩冲器
120的发送装置100向具有接收緩冲器210的接收装置200发送数据包 的数据包发送接收系统。而且,具有这样的概要的数据包发送接收系统, 如以下说明的那样,其主要特征是可有效利用作为接收緩沖器210的资 源。
如图l所举例表示的那样,发送装置100,具有信用计数部133,其 针对接收緩冲器210的容量,把与当前所保存的全部数据包的总容量相 应的值,作为信用存储。这里,发送装置100把与接收装置200的接收 緩冲器210的容量对应的信用的值(例如"16"),设定为信用计数部133 的信用值的上P艮值。因此,发送装置IOO根据信用计数部133的剩余的 信用值,可得知接收緩冲器210的剩余容量。
这里,发送装置100,在从发送緩冲器120向接收装置200的接收 緩冲器210发送了数据包时,把与被发送的数据包的容量相应的信用与 被存储在信用计数部133中的信用相加并保存(参照图1的(l))。例 如,如图l所示那样,发送装置100在发送了 2字节的数据包时,把信 用"2"与信用计数部133的信用值相加,在发送了 l字节的数据包时, 把信用"1"与信用计数部133的信用值相加。
另一方面,接收装置200利用接收緩冲器210接收从发送装置100 发送的数据包(参照图1的(2))。然后,接收装置200,在按照数据包 被保存在接收緩冲器210中的顺序,从旧的数据包开始读出了上述接收 到的数据包时,把与从接收緩沖器210读出的数据包的容量对应的信用 发送给发送装置100 (参照图1的(3))。例如,接收装置200,在从接 收緩沖器210读出了 1字节的数据包时,向发送装置IOO发送信用"1", 在读出了 2字节的数据包时,向发送装置100发送信用"2",在读出了 3字节的数据包时,向发送装置100发送信用"3"。
另外,发送装置IOO,在接收到上述接收装置200所发送的信用时, 从被存储在信用计数部133中的信用值中减去所接收到的信用,并保存 (参照图l的(4))。例如,发送装置IOO,在接收到信用"1"时,从 信用计数部133的信用值中减去信用"1",在接收到信用"2"时,从信用计数部133的信用值中减去信用"2",在接收到信用"3"时,从 信用计数部133的信用值中减去信用"3"。
而且,发送装置IOO根据被存储在信用计数部133中的信用值,控 制数据包的发送许可或停止。具体是,判断对被存储在信用计数部133 中的信用值加上与要从发送装置IOO发送的数据包的容量相应的信用的 值后的信用值的加法计算值,是否达到了根据接收緩冲器210的容量决 定的规定值(上限值),在上述信用值的加法计算值未达到上限值的情 况下,进行许可数据包发送的控制,在信用值的加法计算值达到了上限 值的情况下,进行停止数据包发送的控制。
例如,在信用计数部133的上限值是16的情况下,如果当前的信 用值为"10",与要发送的数据包的容量相应的信用值为"2",则信用 值的加法计算值为"12",由于未达到上限值的"16",所以发送装置100 许可发送。另外,如果当前的信用值为"12",与要发送的数据包的容 量相应的信用值为"1",则信用的加法计算值为"13",发送装置100 许可发送。另一方面,如果当前的信用值为"13",与要发送的数据包 的容量相应的信用值为"4",则信用的加法计算值成为"17",由于达 到了上限值的"16",所以发送装置100停止发送(参照图1的(5))。
据此,对于数据包发送接收系统,发送装置100,根据数据容量而 不是数据包数来掌握接收緩沖器210中的数据包收纳状况, 一边在数据 包不溢出的范围内动态调整被保存在接收緩冲器210中的数据包数量 (队列级数), 一边发送数据包,由此,可以减少接收緩冲器210的未 使用区域,其结果,可有效利用作为接收緩冲器210的资源。
另外,作为上述的发送装置IOO和接收装置200,是移动电话、PDA、 个人计算机等,通过网络或有线、无线(红外线通信、蓝牙等)以包的 形式发送或接收信息的电子装置、或同一电子装置内的电路或芯片等, 通过电子装置内的总线或布线以包的方式发送或接收信息的电子电路。
下面,结合图2,对实施例1的数据包发送接收系统的结构进行说 明。图2是表示实施例1的数据包发送接收系统的结构的方框图。如该图所示,该数据包发送接收系统由发送装置IOO和接收装置200构成, 发送装置IOO具有数据输入部110、发送緩冲器120、和发送緩冲器控 制部130,接收装置200具有接收緩冲器210、数据输出部220、和接 收緩冲器控制部230。另外,发送装置100和接收装置200通过网络或 有线、无线(红外线通信、蓝牙等)、或电子装置内的总线或布线连接。
数据输入部100向发送緩沖器120输入各种信息。具体是,把从发 送装置100向接收装置200发送的数据包从发送緩沖器120的先头连续 写入。
发送緩冲器120存储要从发送装置100向接收装置200发送的数据 包,由存储器等构成。具体是,发送緩冲器120把从数据输入部IIO输 入的数据包从发送緩沖器120的先头连续存储。另外,在发送緩沖器120 中,在每次读出了数据包时,删除已被读出的数据包,并重新写入新的 数据包。
发送緩沖器控制部130控制数据包的发送接收,作为与本发明密切 相关的部分,如图2所示,具有包发送控制部131、信用加法计算部132、 信用计数部133、和信用减法计算部134。另外,包发送控制部131与 权利要求书中记载的"发送控制单元"对应,同样,信用加法计算部132 与"信用加法计算单元,,对应,同样,信用计数部133同样与"信用存 储单元"对应,同样,信用减法计算部134与"信用减法计算单元"对 应。
信用计数部133,针对接收緩沖器210的容量,把与当前保存的全 部数据包的总容量相应的值作为信用存储。具体是,利用后述的信用加 法计算部132和信用减法计算部134对所存储的信用值进行加减,由此, 针对接收緩沖器210的容量,把与当前所保存的全部数据包的总容量相 应的值,作为信用存储。
另外,信用计数部133把与接收緩冲器210的容量的最大值相应的 信用作为规定值(上限值)存储起来。例如,如果接收緩沖器210的容 量的最大值是16字节,则把与16字节对应的信用"16"作为信用计数 部133的信用的上限值存储,如果接收緩冲器210的容量的最大值是32 字节,则把与32字节对应的信用"32"作为信用计数部133的信用的上限值存储。
信用加法计算部132在从发送緩冲器120向接收装置200发送了数 据包时,把与被发送的数据包的容量相应的值的信用与被存储在信用计 数部133中的信用值相加并保存。
例如,在从发送緩冲器120发送了 2字节的数据包时,信用加法计 算部132把与2字节对应的信用、即信用"2",与信用计数部133的信 用值相加并保存,发送装置IOO,在从发送緩沖器120发送了 l字节的 数据包时,信用加法计算部132把与l字节对应的信用、即信用"1", 与信用计数部133的信用值相加,并保存。
信用减法计算部134,在从接收装置200接收到后述的容量确定信 息时,使用容量确定信息确定从接收緩冲器210已被读出的数据包的容 量,把与上述所确定的容量相应的值的信用从被存储在信用计数部133 中的信用值中减去,并保存。具体是,信用减法计算部134把从接收装 置200接收到的信用值,从被存储在信用计数部133中的信用值中减去, 并保存。
例如,在信用减法计算部134接收到信用"1"时,信用减法计算 部134把信用"1"从信用计数部133的信用值中减去,在信用减法计 算部134接收到信用"2"时,信用减法计算部134把信用"2"从信用 计数部133的信用值中减去,在信用减法计算部134接收到信用"3" 时,信用减法计算部134把信用"3"从信用计数部133的信用值中减 去。
包发送控制部131是根据被存储在信用计数部中的信用值,控制数 据包的发送的许可或停止的控制部。具体是,在成为要发送数据包的时 刻时,判定对被存储在信用计数部133中的信用的值加上与要从发送装 置IOO发送的数据包的容量相应的信用的值后的加法计算值,是否达到 了根据接收緩沖器210的容量决定的规定值(上限值),在上述的加法 计算值未达到上述的上限值的情况下,进行许可数据包的发送的控制, 在上述的加法计算值达到了上述的上限值的情况下,进行停止上述的数 据包的发送的控制。例如,在信用计数部133中所设定的上限值为"16"的情况下,如 果当前的信用值为"10",与要发送的数据包的容量相应的信用值为"2", 则信用值的加法计算值成为"12",由于未达到上限值的"16",所以包 发送控制部131许可发送。另外,如果当前的信用值为"12",与要发 送的数据包的容量相应的信用值为"1",则信用值的加法计算值成为 "13",包发送控制部131许可发送。另一方面,如果当前的信用值为 "13",与要发送的数据包的容量相应的信用值为"4",则信用值的加 法计算值成为"17",由于达到了上限值的"16",所以包发送控制部131 停止发送。
另外,在接收装置200中,接收緩冲器210,存储从发送装置100 发送来的数据包,其由存储器等构成。具体是,接收緩冲器210把从发 送装置100发送来的数据包从接收緩冲器210的先头连续存储。另外, 在接收緩冲器210中,在由后述的数据输出部220读出了数据包时,删 除已被读出的数据包,并重新写入新的数据包。
数据输出部220读出被保存在接收緩冲器210中的数据。具体是, 数据输出部220从被存储在接收緩沖器210中的数据中,按照接收顺序 从先接收的开始,读出数据。
接收緩冲器控制部230控制数据包的发送接收,如图2所示,作为 与本发明密切相关的部分,具有信用发送部231。另外,信用发送部231 与权利要求书中记载的"容量确定信息发送单元,,对应。信用发送部231, 在读出了被保存在接收緩冲器210中的数据包的情况下,向发送装置 IOO发送在发送装置100中确定该已被读出的数据包的容量时使用的容 量确定信息。具体是,信用发送部231,作为上述的容量确定信息,把 与从接收緩冲器210读出的数据包的容量相应的值的信用,发送给发送 装置100。
例如,在接收装置200从接收緩冲器210中读出了 l字节的数据包 时,信用发送部231把与1字节对应的信用"1"发送给发送装置IOO, 在读出了 2字节的数据包时,把信用"2"发送给发送装置100,在读出 了 3字节的数据包时,把信用"3"发送给发送装置IOO。下面,结合图3,说明实施例1的包发送时的处理步骤。图3是表 示实施例1的包发送时的处理的流程图。
如图3所示,包发送控制部131,在成为数据包的发送时刻时(步 骤S301:是),判定针对发送数据包的容量是否有充分的信用(即,在 把与要发送的数据包的容量对应的信用的值与信用计数部133的信用值 相加时,该加法计算值是否达到与接收緩冲器210的容量对应的上限值) (步骤S302 )。
而且,在针对要发送的数据包的容量,在信用计数部133中有充分 的信用的情况(上述的加法计算值未达到上限值的情况)下(步骤S302: 是),包发送控制部131从发送緩冲器120发送数据包(步骤S303 )。即, 包发送控制部131许可该数据包的发送。
而且,在发送装置IOO从发送緩冲器120发送了数据包时,信用加 法计算部132把与被发送的数据包的容量相应的信用与被存储在信用计 数部133中的信用相加,并保存(步骤S304 )。
另一方面,在上述步骤S302中,在针对要发送的数据包的容量, 在信用计数部133中没有充分的信用的情况(上述的加法计算值达到上 限值的情况)下(步骤S302:否),包发送控制部131停止从发送緩沖 器120的发送数据包(步骤S305 )。
下面,结合图4,说明实施例1中的信用接收时的处理步骤。图4 是表示实施例1的信用接收时的处理的流程图。
如图4所示,在发送装置IOO从接收装置200接收到信用时(步骤 S401:是),信用减法计算部134把接收到的信用值从被存储在信用计 数部133中的信用值中减去,并保存(步骤S402 )。例如,发送装置100 在接收到信用"1"时,从信用计数部133的信用值中减去信用"1", 在接收到信用"2"时,从信用计数部133的信用值中减去信用"2", 在接收到信用"3"时,从信用计数部133的信用值中减去信用"3"。下面,结合图5,说明实施例1的信用发送时的处理步骤。图5是表 示实施例1的信用发送时的处理的流程图。
如图5所示,数据输出部220在读出了被存储在接收装置200的接 收緩冲器210中的数据时(步骤S501:是),把与已被读出的数据的容 量对应的信用发送给信用计数部133 (步踝S502 )。例如,在接收装置 200从接收緩冲器210读出了 l字节的数据包时,信用发送部231向发 送装置100发送与l字节对应的信用"l",在读出了 2字节的数据包时, 向发送装置100发送信用"2",在读出了 3字节的数据包时,向发送装 置IOO发送信用"3"。
如上所述,根据实施例1,接收装置200,在读出了被保存在接收 緩冲器21Q中的数据包时,向发送装置IOO发送在发送装置100中确定 该已被读出的数据包的容量时使用的容量确定信息,发送装置100,针 对接收緩冲器210的容量,把与当前保存的全部数据包的总容量相应的 值作为信用存储,在从发送緩冲器120向接收装置200发送了数据包的 情况下,把与该被发送的数据包的容量相应的值的信用与被存储在信用 计数部133中的信用相加,并保存,在从接收装置200接收到容量确定 信息的情况下,使用该容量确定信息确定从接收緩沖器210已被读出的 数据包的容量,把与该已确定的容量相应的值的信用从被存储在信用计 数部133中的信用中减去,并保存,根据被存储在信用计数部133中的 信用的值,进行数据包的发送许可或发送停止的控制,因此,发送装置 IOO根据数据容量而不是数据包数量来掌握接收緩沖器210中的数据包 的收纳状况, 一边在数据包不溢出的范围内动态调整被保存在接收緩冲 器210中的数据包数量(队列级数), 一边发送数据包,由此,可减少 接收緩沖器210的未使用区域,其结果,可以有效利用作为接收緩沖器 210的资源。
另外,根据实施例1,信用发送部231,作为容量确定信息,把与 从接收緩沖器210读出的数据包的容量相应的值的信用发送给发送装置 100,信用加法计算部132把与被发送到接收装置200的数据包的容量 相应的值的信用与被存储在信用计数部133中的信用相加,并保存,信 用减法计算部134从被存储在信用计数部133中的信用中减去从接收装置200接收到的值的信用,并保存,因此,在发送装置100中,只需直 接减去从接收装置200接收到的信用,即可掌握接收緩冲器210中的数 据包的收纳状况,其结果,也可简化发送装置100中的信用的增减处理。
另外,根据实施例1,包发送控制部131判定对被存储在信用计数 部133中的信用的值加上了与要从发送装置IOO发送的数据包的容量相 应的信用的值后的加法计算值是否达到了根据接收緩冲器210的容量确 定的规定的值,在加法计算值未达到规定的值(上限值)的情况下,进 行许可发送数据包的控制,在加法计算值达到了上限值的情况下,进行 停止发送数据包的控制,因此,可推定这以后要发送的数据包被发送之 后的接收緩冲器210的收纳状况,其结果,可以可靠防止接收緩冲器210 中的溢出。
实施例2
在上述的实施例1中,说明了发送与从接收緩冲器读出的读出容量 相应的信用的情况,但本发明不限于此,也可以与读出容量无关地总是 发送同量的信用。因此,在本实施例2中,对与接收緩冲器已读出的数 据包的容量无关地总是发送同量的信用的情况进行说明。 首先,结合图6,对实施例2的数据包发送接收系统的概要和特征 进行说明。图6是用于说明实施例2的数据包发送接收系统的概要和特 征的图。另外,以下对于与实施例1的数据包发送接收系统的相同点, 只简单说明。
如图6所举例表示的那样,发送装置IOO,具有包区分信用计数部 133b,该包区分信用计数部133b按照每个已发送的数据包进行区分, 并按发送顺序,针对接收緩冲器210的容量,把与当前所保存的全部数 据包的总容量相应的值,作为信用存储。
这里,发送装置100,在从发送緩冲器120向接收装置200的接收 緩冲器210发送了数据包时,把与被发送的数据包的容量相应的信用, 按照每个包区分并按已发送的顺序,与被存储在包区分信用计数部133b 中的信用相加,并保存(参照图6的(l))。例如,如图6所示那样,发送装置IOO,在发送了 2字节的数据包 时,把信用"2"作为最新发送的数据包,与包区分信用计数部133b的 信用值相加(追加),使包区分信用计数部133b的信用值(总数)从"7" 变更为"9"。接着,在发送了 1字节的数据包时,把信用"1"作为最 新被发送的数据包(例如包5的下一个),与包区分信用计数部133b的 信用值相加(追加),使包区分信用计数部133b的信用值(总数)从"9" 变更为"10"(参照图8)。
另一方面,接收装置200,利用接收緩冲器210接收从发送装置100 发送来的数据包(参照图6的(2))。然后,接收装置200,在把上述已 接收的数据包,按照将数据包保存在接收緩冲器210中的顺序,从先接 收的数据包开始读出时,从接收緩冲器210,与已被读出的数据的容量 无关地,把信用"1"发送给发送装置IOO (参照图6的(3))。例如, 接收装置200,在从接收緩冲器210读出了 l字节的数据包时,把信用 "1"发送给发送装置IOO,在读出了 2字节的数据包时,把信用"1" 发送给发送装置IOO,在读出了 3字节的数据包时,把信用"l"发送给 发送装置100。
另外,发送装置100,在接收到上述接收装置200已发送的信用时, 从按每个数据包区分并按发送顺序存储在包区分信用计数部133b中的 信用中,把最早被发送的数据包的信用值,从被存储在包区分信用计数 部133b中的信用值中减去,并保存(参照图6的(4))。
例如,发送装置IOO,在接收到信用"1"时,在被存储在包区分信 用计数部133b中的信用中,把作为最早的信用值的信用"1",从包区 分信用计数部133b的信用值中减去(删除),使包区分信用计数部133b 的信用值(总数)从"10"变更为"9"(参照图9)。接下来,发送装置 100,在接收到信用'T,时,在被存储在包区分信用计数部133b中的 信用中,把作为最早的信用值的信用"2"从包区分信用计数部133b 的信用值中减去,使包区分信用计数部133b的信用值从"9"变更为"7"。
而且,发送装置100,与实施例1的发送装置100同样,根据被存 储在包区分信用计数部133b中的信用值,进行数据包的发送许可或发 送停止的控制(参照图6的(5))。这样,根据实施例2的数据包发送接收系统,与从接收緩冲器210 中已被读出的数据包的容量无关,只需从接收装置200向发送装置100 发送总是同量的信用,在发送装置100中,即可掌握接收緩冲器210中 的数据包的收纳状况,其结果,可简化从接收装置200向发送装置100 的返送处理。
下面,结合图7,对实施例2的数据包发送接收系统的结构进行说 明。图7是表示实施例2的数据包发送接收系统的结构的方框图。如该 图所示,该数据包发送接收系统由发送装置IOO和接收装置200构成, 发送装置IOO具有数据输入部110、发送緩冲器120、和发送緩冲器控 制部130,接收装置200具有接收緩冲器210、数据输出部220、和接 收緩冲器控制部230。
这里,对于进行与实施例l相同动作的部分标记相同的符号,并省 略说明,以下,只对包区分信用计数部133b、信用加法计算部132b、 信用减法计算部134b、和信用发送部231b进行说明。
包区分信用计数部133b,针对接收緩冲器210的容量,把与当前保 存的全部数据包的总容量相应的值作为信用存储。具体是,包区分信用 计数部133b把所存储的信用,如后述那样,按每个包区分,并按照从 发送装置IOO被发送的发送顺序进行存储。
信用加法计算部132b,在从发送緩冲器120向接收装置200发送了 数据包时,把与被发送到接收装置200的数据包的容量相应的值的信用, 按照每个数据包区分并按发送顺序,与被存储在包区分信用计数部13 3b 中的信用值相加,并保存。
具体是,如图8所示,发送装置100,在发送了 1字节的数据包时, 把信用"1"作为与最新发送的数据包对应的信用,在最后(例如包5 之后)与包区分信用计数部133b的信用值相加(追加),使包区分信用 计数部133b的信用值(总数)从"9"变更为"10"。另外,图8是表 示实施例2的信用加法计算时的处理的概念图。
信用减法计算部134b,在从接收装置200接收到后述的容量确定信息时,从按每个数据包区分并按发送顺序被存储在包区分信用计数13 3b 中的信用中,减去最早被发送的数据包的信用,并保存。
例如,如图9所示,发送装置IOO,在接收到信用"1"时,在被存 储在包区分信用计数部133b中的信用中,把作为最先的信用值的信用 "1"从包区分信用计数部133b的信用值中减去(删除),使包区分信 用计数部133b的信用值(总数)从"10"变更为"9"。另外,图9是 表示实施例2的信用减法计算时的处理的概念图。
信用发送部231b,与从接收緩冲器210已被读出的数据包的容量无 关地把上述的容量确定信息发送给发送装置100。具体是,信用发送部 231b,作为上述的容量确定信息,与从接收緩冲器210已被读出的数据 包的容量无关地把信用"1"发送给发送装置100。
下面,结合图10,对实施例2的包发送时的处理步骤进行说明。图 IO是表示实施例2的包发送时的处理的流程图。另外,以下对于与实施 例1的数据包发送接收系统的相同点,只简单说明。
如图IO所示,在成为发送时刻,并从发送緩冲器120发送了数据 包时(步骤S1001 ~步骤S1003 ),信用加法计算部132b把与被发送的 数据包的容量相应的信用,按每个包区分并按已发送的顺序,与被存储 在包区分信用计数部133b中的信用相加,并保存(步骤S1004 )。
例如,如图8所示,发送装置100,在发送了 l字节的数据包时, 把信用"1"与包区分信用计数部133b的信用值相加(追加),使包区 分信用计数部133b的信用值(总数)从"9"变更为"10"。
下面,结合图11,对实施例2的包接收时的处理步骤进行说明。图 ll是表示实施例2的包接收时的处理的流程图。
如图11所示,在发送装置IOO从接收装置200接收到了信用时(步 骤S1101:是),信用减法计算部134b,从按每个包区分并按发送顺序 被存储的、被存储在包区分信用计数部133b中的信用中,取得最先被发送的数据包的信用(步骤S1102)。
而且,把上述取得的信用从被存储在包区分信用计数部133b中的 信用值中减去,并保存(步骤S1103)。具体是,如图9所示那样,发送 装置IOO,在接收到了信用"1"时,把作为被存储在包区分信用计数部 133b中的信用中的最先的信用值的信用"l",从包区分信用计数部133b 的信用值中减去(删除),使包区分信用计数部133b的信用值(总数) 从"10"变更为"9"。
下面,结合图12,对实施例2的信用发送时的处理步骤进行说明。 图12是表示实施例2的信用发送时的处理的流程图。
如图12所示,数据输出部220,在读出了被存储在接收装置200的 接收緩冲器210中的数据时(步骤1211:是),与已读出的数据容量无 关地把信用发送给包区分信用计数部133b (步骤S1212)。具体是,在 接收装置200从接收緩冲器210中读出了 1字节的数据包时,信用发送 部231b与从接收緩冲器210读出的1字节无关地把信用"1"发送给发 送装置IOO,在读出了 2字节的数据包时,与已读出的2字节无关地把 信用"1"发送给发送装置100,在读出了 3字节的数据包时,与已读出 的3字节无关地把信用'T,发送给发送装置IOO。
如上所述,根据实施例2的数据包发送接收系统,信用发送部231b 与从接收緩沖器210已被读出的数据包的容量无关地把容量确定信息发 送给发送装置100,信用加法计算部132b把与被发送到接收装置200 的数据包的容量相应的值的信用,按每个数据包区分并按发送顺序,与 被存储在包区分信用计数部133b中的信用相加,并保存,信用减法计 算部134b从按每个数据包区分并按发送顺序被存储在包区分信用计数 部133b中的信用中,减去最先被发送的数据包的信用,并保存,因此, 只需与从接收緩沖器210中已被读出的数据包的容量无关地总是从接收 装置200向发送装置IOO发送同量的信用,在发送装置100中即可掌握 接收緩沖器210中的数据包的收纳状况,其结果,可简化从接收装置200向发送装置100的返送处理。 实施例3
在上述的实施例2中,说明了按照数据包的发送顺序减去信用的情 况,但本发明不限于此,也可以确定数据包来减去信用。因此,在本实 施例3中,对确定数据包来减去信用的情况进行说明。
首先,结合图13,对实施例3的数据包发送接收系统的概要和特征 进行说明。图13是用于说明实施例3的数据包发送接收系统的概要和 特征的图。另外,以下,对于与实施例l和实施例2的数据包发送接收 系统相同的点,只简单说明。
这里,发送装置100把用于唯一识别被发送的数据包的识别信息 附加在该数据包中,并把该数据包从发送緩冲器120发送给了接收装置 200时,把与该被发送的数据包的容量相应的值的信用,在按每个数据 包区分并且附加识别信息后,在包区分信用计数部133b中进行相加, 并保存(参照图13的(l))。具体是,如图13所示,发送装置IOO,在 发送了被附加了识别信息"x007"的1字节的数据包时,把识别信息 "x007"和与1字节的数据容量对应的信用"1"相互对应,进行加法 计算并保存。
另一方面,接收装置200由接收緩沖器210接收从发送装置100 发送来的数据包(参照图13的(2))。然后,接收装置200在从接收緩 冲器210读出了上述已接收的数据包时,把附加在从接收緩冲器210已 被读出的包上的识别信息发送给发送装置100 (参照图13的(3))。具 体是,接收装置200在从接收緩沖器210读出了被附加了识别信息 "x002"的1字节的数据包时,把被附加在该1字节的数据中的识别信 息"x002"发送给发送装置100。
另外,发送装置100,在接收到从上述接收装置200发送来的识 别信息时,从按每个数据包区分并且被附加了识别信息后被存储在包区 分信用计数部133c中的信用中,减去与从接收装置200接收到的识别 信息对应的数据包的信用,并保存(参照图1的(4))。具体是,如图13所示,发送装置IOO,在接收到识别信息"x002"时,从包区分信用 计数部133c的信用值中减去与识别信息"x002"对应的信用"1"并保 存。
而且,发送装置IOO根据被存储在包区分信用计数部133c中的信 用值,进行数据包的发送许可或发送停止的控制(参照图13的(5))。
这样,实施例3的数据包发送接收系统只需与从接收緩冲器210 已被读出的数据包的容量无关地,从接收装置200把包的识别信息发送 给发送装置IOO,在发送装置100中,即可掌握接收緩冲器210中的数 据包的收纳状况,其结果,可简化从接收装置200向发送装置100的返 送处理。并且,由于只需从接收装置200把包的识别信息发送给发送装 置100,即可可靠地确定从接收緩冲器210已被读出的数据包的容量, 其结果,发送装置IOO也可以可靠地掌握接收緩冲器210中的数据包的 收纳状况。
下面,结合图14,说明实施例3的数据包发送接收系统的结构。 图14是表示实施例3的数据包发送接收系统的结构的方框图。如该图 所示,该数据包发送接收系统由发送装置IOO和接收装置200构成,发 送装置IOO具有数据输入部110、发送緩沖器120、和发送緩冲器控制 部130,接收装置200具有接收緩冲器210、数据输出部220、和接收 緩沖器控制部230。
这里,对于进行与实施例l和实施例2相同动作的部分,标记相 同的符号并省略说明,以下,只对包区分信用计数部133c、识别信息附 加部135c、信用加法计算部132c、信用减法计算部134c、和识别信息 发送部231c进行说明。
包区分信用计数部133c,针对接收緩冲器210的容量,把与当前 所保存的全部数据包的总容量相应的值作为信用存储。具体是,包区分 信用计数部133c把所存储的信用,如后述那样附加识别信息,按每个 包区分并进行存储(参照15)。
另外,识别信息附加部135c,在包发送控制部131许可了数据包的发送时,把用于唯一识别要发送的数据包的识别信息附加在该数据包
中。具体是,把[x006]、 [x007]等识别信息附加在要发送的数据包的内 部。
信用加法计算部132c,在从发送緩冲器120向接收装置200发送 了数据包时,把与被发送到接收装置200的数据包的容量相应的值的信 用,按每个数据包进行区分,并且使其与由识别信息附加部135c附加 在该数据包中的识别信息相互对应,与被存储在包区分信用计数部13 3c 中的信用相加,并保存。
例如,如图15所示,在成为发送时刻,发送装置IOO从发送緩沖 器120发送了被附加了识别信息"x006"的2字节的数据包时,信用加 法计算部132c,对与2字节对应的信用、即信用"2",附加作为识别信 息的"x006",并与包区分信用计数部133c的信用值相加并保存,在发 送装置IOO从发送緩冲器120发送了被附加了识别信息"007"的1字 节的数据包时,信用加法计算部132c对与1字节对应的信用、即信用 "1"附加作为识别信息的"x007",并与包区分信用计数部133c的信 用值相加并保存。另外,图15是表示实施例3的信用加法计算时的处 理的概念图。
信用减法计算部134c,在从接收装置200接收到识别信息时,从 按每个数据包区分并且被附加了识别信息后被存储在包区分信用计数 部133c中的信用中,减去与从接收装置200接收的识别信息对应的数 据包的信用,并保存。
例如,如图16所示,信用减法计算部134c,在接收到识别信息 "x002"时,把与识别信息"x002"对应的信用"1"从包区分信用计 数部133c的信用值中减去,信用减法计算部134c,在接收到识别信息 "x001"时,把与识别信息"x001"对应的信用"2"从包区分信用计 数部133c的信用值中减去,信用减算部134c,在接收到识别信息"x003" 时,把与识别信息"x003"对应的信用"3"从包区分信用计数部133c 的信用值中减去。另外,图16是表示实施例3的信用减法计算时的处 理的概念图。
识别信息发送部231c与从接收緩冲器210已被读出的数据包的容量无关地,把附加在该数据包中的识别信息发送给发送装置100。
下面,结合图17,对实施例3的包发送时的处理步骤进行说明。图 17是实施例3的包发送时的处理的流程图。另外,以下对与实施例1 和实施例2的数据包发送接收系统的相同点,只简单说明。
如图17所示,在成为发送时刻,在对于要发送的数据包的容量, 包区分信用计数部133c中有充分的信用的情况(上述的加法计算值未 达到上P艮值的情况)(步骤S701 步骤S702:是)下,发送信息附加部 135c附加可唯一区别要发送的数据包的识别信息,包发送控制部131 从发送緩冲器120发送被附加了识别信息的数据包(步骤S703 )。
而且,在发送装置IOO从发送緩冲器120发送了数据包时,信用 加法计算部132c把与被发送的数据包的容量相应的信用,按照每个发 送数据包区分,并使其与识别信息相互对应,与被存储在包区分信用计 数部133c中的信用相加,并保存(步骤S704 )。即,将与被发送到接收 装置200的数据包的容量相应的值的信用,按每个数据包区分并且附加 识别信息后与被存储在包区分信用计数部133c中的信用相加,并保存。
下面,结合图18,对实施例3的信用接收时的处理步骤进行说明。 图18是表示实施例3的信用接收时的处理的流程图。
如图18所示,在发送装置IOO从接收装置200接收到识别信息时 (步骤S1801:是),信用减法计算部134c,在被存储在包区分信用计 数部133c中的按每个包区分的信用中,取得与所接收的识别信息对应 的信用(步骤S1802 )。即,从按每个数据包区分并且被附加了识别信息 后被存储在包区分信用计数部133c中的信用中,取得与从接收装置200 接收到的识别信息对应的数据包的信用。
例如,发送装置100,在接收了识别信息"x002"时,取得与识 别信息"x002,,对应的信用"1",在接收了识别信息"x001"时,取得 与识别信息"x001"对应的信用"2",在接收了识别信息"x003"时,取得与识别信息"x003"对应的信用"3"(参照图16)。
而且,把上述取得的信用从被存储在包区分信用计数部133c中的 信用值中减去,并进行保存(步骤S1803 )。具体是,如图16所示,发 送装置IOO在接收了识别信息"x002"时,把与识别信息"x002"对应 的信用"1"从包区分信用计数部133c的信用值中减去,并保存。
下面,结合图19,对实施例3的信用发送时的处理步骤进行说明。 图19是表示实施例3的信用发送时的处理的流程图。
如图19所示,数据输出部220在读出了被存储在接收装置200 的接收緩冲器210中的数据时(步骤S1901:是),把附加在已被读出的 数据包中的识别信息发送给包区分信用计数部133c (步骤1902 )。
如上所述,根据实施例3,包发送控制部131在许可数据包的发送 的情况下,把用于唯一识别该被发送的数据包的识别信息附加在该数据 包中,发送给接收装置200,识别信息发送部231c与从接收緩冲器210 已被读出的数据包的容量无关地把被附加在该数据包中的识别信息发 送给发送装置100,信用加法计算部132c把与被发送给接收装置200 的数据包的容量相应的值的信用,按每个数据包区分,并且附加识别信 息后与被存储在包区分信用计数部133c中的信用相加,并保存,信用 减法计算部134c从按每个数据包区分并且被附加了识别信息后被存储 在包区分信用计数部133c中的信用中,减去与从接收装置200接收到 的识别信息对应的数据包的信用,并保存,因此,只需与从接收緩冲器 210已被读出的数据包的容量无关地从接收装置200把包的识别信息发 送给发送装置100,在发送装置100中即可掌握接收緩冲器210中的数 据包的收纳状况,其结果,也可简化从接收装置200向发送装置100的 返送处理。并且,由于只需把包的识别信息从接收装置200发送给发送 装置100,即可以可靠地确定从接收緩冲器210已被读出的数据包的容 量,其结果,可以可靠地掌握接收緩冲器210中的数据包的收纳状况。
实施例4至此,对实施例1~实施例3的数据包发送接收系统进行了说明, 但本发明除了上述的实施例以夕卜,还能够以各种不同的方式实施。因此, 下面,对于作为实施例4的数据包发送接收系统的不同的实施例进行说 明。
在上述的实施例中,说明了判定加上了与要从发送装置发送的数据 包的容量相应的信用的值后的信用值的加法计算值,是否达到根据接收 緩冲器的容量确定的规定的值(上限值),控制数据包的发送的情况,
但本发明不限于此,在判定是否达到根据接收緩冲器的容量确定的规定 值(上限值),控制数据包的发送的情况等中,也可同样适用本发明。
具体是,包发送控制部判定被存储在信用计数部中的信用的值是 否达到根据接收緩冲器的容量确定的规定的值(上限值),在信用的值 未达到上限值的情况下,许可数据包的发送,在信用的值已达到上限值 的情况下,控制停止数据包的发送。
由此,例如,能够预先把从接收緩冲器的容量减去数据包的最长 尺寸后的值设定为信用计数的上限值, 一边只判定信用是否超过该上限 值, 一边控制数据包的发送,其结果,也可简化包的发送许可或停止的 处理。
另夕卜,在上述的实施例中,说明了作为数据包发送接收系统的结构, 分别具备发送装置和接收装置的情况,但本发明不限于此,在计算机系 统内部的电路之间发送数据包的情况等中,也同样可以应用本发明。例 如,图20是表示应用了本发明的计算机系统的示例的图,如该图所示, 在芯片组2113、芯片组2121和芯片组2133使用本发明的控制,进行 系统卡2110与存储器系统内部连接组件2120之间的数据包发送接收、 和存储器系统内部连接组件2120与IO组件2130之间的数据包发送接 收中,可应用本发明。另外,在上述的实施例中,说明了重新附加数据包的识别信息的系 统,但本发明不限于此,在使用预先包含在要发送的数据包中的任意信 息的方法、和使用这样的任意信息和数据包的识别信息的双方的方法等 中,同样也适用本发明。
另外,在上述的实施例中,对于数据包发送接收系统的结构,说明 了由发送装置和接收装置l对l构成的系统,但本发明不限于此,在对 应l个发送装置有多个接收装置的系统、发送装置为多个接收装置为1 个的系统等中,同样也适用本发明。
另外,在上述的实施例中,说明了发送装置和接收装置是不同的 终端的情况,但本发明不限于此,在利用同一终端实现发送装置和接收 装置( 一个终端具备发送装置的功能和接收装置的功能双方)的情况下, 也适用本发明。
另外,图示的各个装置的各个构成要素是概念上的功能要素,在 物理上不是必须构成为图示的结构。即,各个装置的分散、统一的具体 形式不限于图示的形式,例如,也可以从发送装置和接收装置中去除发 送緩冲器控制部和接收緩冲器控制部,而独立设置进行数据包的发送接 收控制的装置。另外,也可以通过根据各种负荷和使用状况等把其全部 或一部分以任意单位进行功能上或物理上的分散、统一来构成。例如, 可以将信用加法计算部和信用减法计算部进行统一而构成。并且,关于
由各个装置进行的各种处理功能,其全部或任意一部分可由CPU和通过 该CPU解析执行的程序实现,或以基于连线逻辑的硬件实现。另外,关
于以上说明书中和附图中所示的处理步骤、控制步骤、具体名称、包含
各种数据和参数的信息(例如图8和图9中所示的信息),除了特殊标 记的以外,可任意变更。
另外,在上述的实施例1中,说明了由硬件逻辑来实现各种处理的 情况,但本发明不限于此,也可以通过在计算机中执行预先准备的程序 来实现。因此,下面,结合图21,对执行数据包发送接收程序的计算机的一例进行说明,该数据包发送接收程序具有与上述实施例1所示的数
据包发送接收系统同样的功能。图21是表示实施例1中的数据包发送 接收系统的程序的图。
如该图所示,发送装置2100通过利用总线2109等连接鼠标2101、 键盘2102、 CPU2103、 R0M2104、 HDD2105、 RAM2106、和通信控制接口 2107而构成。接收装置2200是通过利用总线2209等连接鼠标2201、 键盘2202、 CPU2203、 R0M2204、 HDD2205、 RAM2206、和通信控制接口 2207而构成。发送装置2100和接收装置2200通过网络、有线、无线 (红外线通信、蓝牙等)等,通过通信控制接口 2107和通信控制接口 2207连接。
在ROM2104中,预先保存有发挥与上述的实施例1所示的发送緩 冲器控制部130和数据输入部110同样的功能的发送緩冲器控制程序、 即如图21所示的信用计数程序2104a、信用加法计算程序2104b、信用 减法计算程序2104c、包发送控制程序2104d、和数据输入程序2104e。 另外,关于这些程序2104a~2104e,也可以与图2所示的发送装置100 的各个构成要素同样,进行适宜的统一或分离。
而且,CPU2103通过从ROM2104中读出这些程序2104a 2104e并 执行,如图21所示那样,各个程序2104a~2104e作为信用计数处理 2103a、信用加法计算处理2103b、信用减法计算处理2103c、包发送控 制处理2103d、和数据输入处理2103e发挥功能。另外,各个处理2103a ~ 2103e分别与图2所示的信用计数部133、信用加法计算部132、信用 减法计算部134、包发送控制部131、和数据输入部IIO对应。
而且,CPU2103根据4皮保存在RAM2106中的包计数数据2106a、和 发送緩冲数据2106b,执行发送緩冲控制程序。
另外,在ROM2204中,预先保存有发挥与上述的实施例1所示的 接收緩冲器控制部230和数据输出部210同样的功能的接收緩冲器控制 程序、即如图21所示的信用发送程序2204a、和数据输出程序2204b。 另外,关于程序2204a和2104b,也可以与图2所示的接收装置200的 各个构成要素同样,进行适宜的统一或分离。而且,CPU2203通过从ROM2204中读出程序2204a和2204b并执 行,如图21所示那样,程序2204a和2204b作为信用发送处理2203a、 和数据输出处理2203b发挥功能。另外,各个处理2203a和2203b分别 与图2所示的信用发送部231和数据输出部220对应。
而且,CPU2203根据被保存在RAM2206中的接收緩冲数据2206a 执行接收緩冲控制程序。
另外,关于在本实施例中说明的各个程序2104a~2104e以及 2204a ~ 2204b,不是必须从一开始就预先储存在ROM中,例如也可以预 先把程序储存在被插入在发送装置2100或接收装置2200中的软盘、 CD-R0M、 M0盘、DVD盘、光磁盘、IC卡等"移动物理介质"、或设置在 发送装置2100或接收装置2200的内外的HDD等"固定物理介质"、以 及通过公用线路、互联网、LAN、WAN等与发送装置2100或接收装置2200 连接的"其他计算机(或服务器)等中,由发送装置2100或接收装置 2200读出这些程序并执行。
如上所述,本发明的数据包发送接收系统适用于从具有发送緩沖 器的发送装置向具有接收緩冲器的接收装置发送数据包的数据包发送 接收系统中,特别是适合实现可有效利用作为接收緩冲器的资源的发送 数据包的数据包发送接收系统。
权利要求
1. 一种数据包发送接收系统,是从具有发送缓冲器的发送装置向具有接收缓冲器的接收装置发送数据包的数据包发送接收系统,其特征在于,上述接收装置具有容量确定信息发送单元,该容量确定信息发送单元在读出了被保存在上述接收缓冲器中的数据包的情况下,向上述发送装置发送在上述发送装置中确定该已被读出的数据包的容量时使用的容量确定信息,上述发送装置具有信用存储单元,其针对上述接收缓冲器的容量,把与当前所保存的全部数据包的总容量相应的值作为信用进行存储;信用加法计算单元,其在从上述发送缓冲器向上述接收装置发送了上述数据包的情况下,把与该被发送的数据包的容量相应的值的信用,与被存储在上述信用存储单元中的信用相加,并保存;信用减法计算单元,其在从上述接收装置接收到上述容量确定信息的情况下,使用该容量确定信息确定从上述接收缓冲器已被读出的数据包的容量,把与该已确定的容量相应的值的信用,从被存储在上述信用存储单元中的信用中减去,并保存;和发送控制单元,其根据被存储在上述信用存储单元中的信用的值,进行上述数据包的发送许可或发送停止的控制。
2. 根据权利要求1所述的数据包发送接收系统,其特征在于,上述容量确定信息发送单元把与从上述接收緩冲器已被读出的数 据包的容量相应的值的信用,作为上述容量确定信息,发送给上述发送 装置,上述信用加法计算单元把与被发送到上述接收装置的数据包的容 量相应的值的信用,与被存储在上述信用存储单元中的信用相加,并保 存,上述信用减法计算单元把从上述接收装置接收到的值的信用,从被 存储在上述信用存储单元中的信用中减去,并保存。
3. 根据权利要求1所述的数据包发送接收系统,其特征在于,上述容量确定信息发送单元,与从上述接收緩冲器已被读出的数据 包的容量无关地把上述容量确定信息发送给上述发送装置,上述信用加法计算单元,把与被发送到上述接收装置中的数据包的 容量相应的值的信用,按每个上述数据包区分并按发送顺序与存储在上 述信用存储单元中的信用相加,并保存,上述信用减法计算单元从按每个上述数据包区分并按发送顺序存 储在上述信用存储单元中的信用中,减去最早发送来的数据包的信用, 并保存。
4. 根据权利要求l所述的数据包发送接收系统,其特征在于,上述发送控制单元,在许可上述数据包的发送的情况下,在该数据 包中附加用于唯一识别该被发送的数据包的识别信息,并发送给上述接 收装置,上述容量确定信息发送单元与从上述接收緩冲器已被读出的数据 包的容量无关地向上述发送装置发送被附加在该数据包中的识别信息,上述信用加法计算单元把与被发送到上述接收装置的数据包的容 量相应的值的信用,按每个上述数据包区分并且附加上述识别信息后, 与被存储在上述信用存储单元中的信用相加,并保存,识别信息被存储在上述信用存储单元中的信用中,减去与从上述接收 装置接收到的识别信息对应的数据包的信用,并保存。
5. 根据权利要求1 ~ 4中任意一项所述的数据包发送接收系统,其 特征在于,上述发送控制单元判定对被存储在上述信用存储单元中的信用的 值加上与要从上述发送装置发送的数据包的容量相应的信用的值后的加法计算值,是否达到了根据上述接收緩沖器的容量确定的规定值,在 上述加法计算值未达到上述规定值的情况下,进行许可上述数据包的发 送的控制,在上述加法计算值达到了上述规定值的情况下,进行停止上 述数据包的发送的控制。
6. 根据权利要求1 ~ 4中任意一项所述的数据包发送接收系统,其 特征在于,上述发送控制单元判定被存储在上述信用存储单元中的信用的值是否达到了根据上述接收緩冲器的容量确定的值,在上述信用的值未达 到上述规定值的情况下,进行许可上述数据包的发送的控制,在上述信 用的值达到了上述规定值的情况下,进行停止上述数据包的发送的控 制。
7. —种数据包发送接收方法,是从具有发送緩冲器的发送装置向 具有接收緩沖器的接收装置发送数据包的数据包发送接收方法,其特征 在于,包括上述接收装置执行容量确定信息发送步稞,在该容量确定信息发送步骤中,在读出了被保存在上述接收緩冲器 中的数据包的情况下,向上述发送装置发送在上述发送装置中确定该已 被读出的数据包的容量时使用的容量确定信息,上述发送装置执行信用存储步骤,针对上述接收緩冲器的容量,把与当前所保存的全 部数据包的总容量相应的值作为信用存储在信用计数器中;信用加法计算步骤,在从上述发送緩冲器向上述接收装置发送了上 述数据包的情况下,把与该被发送的数据包的容量相应的值的信用,与 被存储在上述信用计数器中的信用相加,并保存;信用减法计算步骤,在从上述接收装置接收到上述容量确定信息的 情况下,使用该容量确定信息确定从上述接收緩沖器已被读出的数据包 的容量,把与该已确定的容量相应的值的信用,从被存储在上述信用计 数器中的信用中减去,并保存;和发送控制步骤,根据被存储在上述信用计数器中的信用的值,进行 上述数据包的发送许可或发送停止的控制。
8. —种数据包发送接收程序,是使计算机执行从具有发送緩冲器 的发送装置向具有接收緩冲器的接收装置发送数据包的方法的数据包 发送接收方法的程序,其特征在于,作为上述接收装置的计算机执行容量确定信息发送步骤,在该容量确定信息发送步骤中,在读出了被保存在上述接收緩冲器 中的数据包的情况下,向上述发送装置发送在上述发送装置中确定该已 被读出的数据包的容量时使用的容量确定信息,作为上述发送装置的计算机执行信用存储步骤,针对上述接收緩冲器的容量,把与当前所保存的全 部数据包的总容量相应的值作为信用存储在信用计数器中;信用加法计算步骤,在从上述发送緩冲器向上述接收装置发送了上 述数据包的情况下,把与该被发送的数据包的容量相应的值的信用,与 被存储在上述信用计数器中的信用相加,并保存;信用减法计算步驟,在从上述接收装置接收到上述容量确定信息 时,使用该容量确定信息确定从上述接收緩冲器已被读出的数据包的容 量,把与该已确定的容量相应的值的信用,从被存储在上述信用计数器 中的信用中减去,并保存;和发送控制步骤,根据被存储在上述信用计数器中的信用的值,进行 上述数据包的发送许可或发送停止的控制。
9. 一种接收装置,用于接收从发送装置发送来的数据包,其特征 在于,具有保存上述数据包的接收緩冲器;读出被保存在上述接收緩冲器中的数据包的输出单元;和容量确定信息发送单元,在读出了被保存在上述接收緩冲器中的上 述数据包的情况下,向上述发送装置发送在确定该已被读出的数据包的 容量时使用的容量确定信息。
10. 根据权利要求9所述的接收装置,其特征在于,上述容量确定信息发送单元把与从上述接收緩冲器已被读出的数 据包的容量相应的值的信用作为上述容量确定信息,发送给上述发送装 置。
11. 一种发送装置,用于向具有接收緩冲器的接收装置发送数据 包,其特征在于,具有信用存储单元,其把与当前保存在上述接收緩冲器中的全部数据包 的总容量相应的值作为信用存储;信用加法计算单元,其在向上述接收装置发送了上述数据包的情况 下,把与该被发送的数据包的容量相应的值的信用,与被存储在上述信 用存储单元中的信用相加;信用减法计算单元,其根据从上述接收装置接收到的用于确定从上 述接收緩冲器已被读出的数据包的容量的容量确定信息,把与从上述接 收緩冲器已被读出的数据包的容量相应的值的信用,从被存储在上述信用存储单元中的信用中减去;和发送控制单元,其根据被存储在上述信用存储单元中的信用的值, 进行上述数据包的发送许可或发送停止的控制。
全文摘要
在具有发送缓冲器和接收缓冲器,发送接收数据包的数据包发送接收系统中,为了在接收缓冲器的容量中尽量不产生未使用区域,有效利用接收缓冲器的资源,根据发送接收的数据包的容量动态变化接收缓冲器可接收的数据包数量。由此,可防止因接收缓冲器的溢出造成的数据包的废弃,并且能够使用比以往的控制时更少的资源提供与以往同样的性能。
文档编号G06F13/38GK101535970SQ20068005618
公开日2009年9月16日 申请日期2006年10月24日 优先权日2006年10月24日
发明者中山浩志, 小佐野秀和 申请人:富士通株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1