CN103516700A - 一种发送数据包的方法及终端设备 - Google Patents
一种发送数据包的方法及终端设备 Download PDFInfo
- Publication number
- CN103516700A CN103516700A CN201210226508.4A CN201210226508A CN103516700A CN 103516700 A CN103516700 A CN 103516700A CN 201210226508 A CN201210226508 A CN 201210226508A CN 103516700 A CN103516700 A CN 103516700A
- Authority
- CN
- China
- Prior art keywords
- packet
- value
- electronic equipment
- equipment
- network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种发送数据包的方法及终端设备。该方法应用于作为服务端的终端设备上,终端设备通过网络与电子设备连接,终端设备与电子设备之间形成网络链路,网络链路上具有多个网络设备;该方法包括:获得电子设备的连接请求;基于连接请求,按照预定策略确定向电子设备所发送的数据包包含的TTL值为第一值,其中,TTL值为第一值的数据包能够到达电子设备;基于第一值确定TTL值的第二值,其中,TTL值为第二值的数据包能够到达网络链路中离电子设备最近的网络设备;向电子设备发送TTL值为第二值的数据包。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种发送数据包的方法及终端设备。
背景技术
在目前的通信网络中,终端设备基本上都处于防火墙、路由器等网络设备的后面,除非在这些客户端设备上配置特定的规则,否则服务端无法从互联网上直接访问这些客户端设备。
在现有技术中,主要是通过客户端设备与服务端建立连接后短时间定期发送数据包维持客户端设备到服务器端的连接,进而实现服务端到客户端设备的数据发送。
然而,本发明人在实现本发明的过程中发现,在现有技术中,因为是通过服务端定期或不定期发送数据包给客户端设备以保持服务端到客户端设备之间的网络链路畅通,即该些数据包都会发送到客户端设备,所以客户端设备必须一直保持活动状态,所以增加了客户端设备的负担,造成了流量和电量的额外消耗。
发明内容
本发明提供一种发送数据包的方法及终端设备,用以解决现有技术中存在的为保持服务端到客户端设备间的网络链路通畅,而将数据包频繁的发送到客户端设备,增加了客户端设备的负担,造成了流量和电量的额外消耗的技术问题。
本发明一方面提供了一种发送数据包的方法,应用于一作为服务端的终端设备上,所述终端设备通过网络与一电子设备连接,所述终端设备与所述电子设备之间形成一网络链路,所述网络链路上具有多个网络设备;所述方法包括:获得所述电子设备的连接请求;基于所述连接请求,按照预定策略确定向所述电子设备所发送的数据包包含的TTL值为第一值,其中,所述TTL值为所述第一值的数据包能够到达所述电子设备;基于所述第一值确定所述TTL值的第二值,其中,所述TTL值为所述第二值的数据包能够到达所述网络链路中离所述电子设备最近的网络设备;向所述电子设备发送所述TTL值为所述第二值的数据包。
优选地,所述向所述电子设备发送所述TTL值为所述第二值的数据包,具体包括:确定向所述电子设备发送所述TTL值为所述第二值的数据包的预定发包频率,所述预定发包频率为当发送所述TTL值为所述第二值的数据包的发包频率小于所述预定发包频率时所述网络链路就会断开的发包频率;基于所述预定发包频率发送所述TTL值为所述第二值的数据包,以确保所述网络链路的畅通。
优选地,所述基于所述连接请求,按照预定策略确定向所述电子设备所发送的数据包包含的TTL值为第一值,具体包括:基于所述连接请求,向所述电子设备发送所述TTL值为第一初始值的第一数据包;如果在发送所述第一数据包后的第一预定时间内,收到所述电子设备的第一应答包,则确定所述第一初始值为所述第一值。
优选地,所述方法还包括:如果在发送所述第一数据包后的所述第一预定时间内,未收到所述电子设备的第一应答包,则向所述电子设备发送所述TTL值为第二初始值的第二数据包;其中,所述第二初始值大于所述第一初始值;如果在发送所述第二数据包后的所述第一预定时间内,收到所述电子设备的第二应答包,则确定所述第二初始值为所述第一值。
优选地,所述方法还包括:如果在发送所述第一数据包后的所述第一预定时间内,未收到所述电子设备的第一应答包,则判断在发送所述第一数据包后的第二预定时间内,是否收到所述多个网络设备中任一网络设备发送的第一超时反馈信息;如果在发送所述第一数据包后的所述第二预定时间内,收到所述多个网络设备中任一网络设备发送的第一超时反馈信息,则向所述电子设备发送所述TTL值为第二初始值的第二数据包;其中,所述第二初始值大于所述第一初始值;如果在发送所述第二数据包后的所述第一预定时间内,收到所述电子设备的第二应答包,则确定所述第二初始值为所述第一值。
优选地,所述方法还包括:如果在发送所述第一数据包后的所述第二预定时间内,未收到所述多个网络设备中任一网络设备发送的第一超时反馈信息,则判断发送所述第一数据包的次数是否达到一预定次数;如果发送所述第一数据包的次数未达到所述预定次数,则向所述电子设备发送所述第一数据包。
优选地,所述方法还包括:如果发送所述第一数据包的次数达到所述预定次数,则发送所述第二数据包。
优选地,所述基于所述第一值确定所述TTL值的第二值,具体为:将所述第一值减一得到所述第二值。
本发明一实施例还提供一种终端设备,作为服务端通过网络与一电子设备连接,所述终端设备与所述电子设备之间形成一网络链路,所述网络链路上具有多个网络设备;所述终端设备包括:电路板;第一通信单元,设置在所述电路板上,用于获得所述电子设备的连接请求;处理器,设置在所述电路板上,用于基于所述连接请求,按照预定策略确定向所述电子设备所发送的数据包包含的TTL值为第一值,其中,所述TTL值为所述第一值的数据包能够到达所述电子设备;基于所述第一值确定所述TTL值的第二值,其中,所述TTL值为所述第二值的数据包能够到达所述网络链路中离所述电子设备最近的网络设备;第二通信单元,连接于所述处理器,用于向所述电子设备发送所述TTL值为所述第二值的数据包。
优选地,所述处理器具体还用于确定向所述电子设备发送所述TTL值为所述第二值的数据包的预定发包频率,所述预定发包频率为当发送所述TTL值为所述第二值的数据包的发包频率小于所述预定发包频率时所述网络链路就会断开的发包频率;所述第二通信单元具体用于基于所述预定发包频率发送所述TTL值为所述第二值的数据包,以确保所述网络链路的畅通。
优选地,所述第二通信单元具体用于基于所述连接请求,向所述电子设备发送所述TTL值为第一初始值的第一数据包;所述处理器具体用于在发送所述第一数据包后的第一预定时间内,收到所述电子设备的第一应答包时,确定所述第一初始值为所述第一值。
优选地,所述第二通信单元具体还用于在发送所述第一数据包后的所述第一预定时间内,未收到所述电子设备的第一应答包时,向所述电子设备发送所述TTL值为第二初始值的第二数据包;其中,所述第二初始值大于所述第一初始值;所述处理器具体还用于在发送所述第二数据包后的所述第一预定时间内,收到所述电子设备的第二应答包时,确定所述第二初始值为所述第一值。
优选地,所述处理器具体还用于在发送所述第一数据包后的所述第一预定时间内,未收到所述电子设备的第一应答包,则判断在发送所述第一数据包后的第二预定时间内,是否收到所述多个网络设备中任一网络设备发送的第一超时反馈信息;所述第二通信单元具体还用于在发送所述第一数据包后的所述第二预定时间内,收到所述多个网络设备中任一网络设备发送的第一超时反馈信息时,则向所述电子设备发送所述TTL值为第二初始值的第二数据包;其中,所述第二初始值大于所述第一初始值;所述处理器具体还用于在发送所述第二数据包后的所述第一预定时间内,收到所述电子设备的第二应答包时,确定所述第二初始值为所述第一值。
优选地,所述处理器具体还用于在发送所述第一数据包后的所述第二预定时间内,未收到所述多个网络设备中任一网络设备发送的第一超时反馈信息时,判断发送所述第一数据包的次数是否达到一预定次数;所述第二通信单元具体还用于发送所述第一数据包的次数未达到所述预定次数,则向所述电子设备发送所述第一数据包。
优选地,所述第二通信单元具体还用于在发送所述第一数据包的次数达到所述预定次数时,发送所述第二数据包。
优选地,所述处理器具体用于将所述第一值减一得到所述第二值。
本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
本发明一实施例中首先基于电子设备的连接请求,按照预定策略确定向电子设备发送数据包包含的TTL值为第一值,TTL值为第一值时,数据包能够到达电子设备,所以可以基于第一值而确定出第二值,使得TTL值为第二值的数据包能够到达网络链路中离该电子设备最近的网络设备,然后向第二电子设备发送TTL值为第二值的数据包,以保持该网络链路的畅通,因为TTL值为第二值的数据包最远能够到达网络链路中离电子设备最近的网络设备,所以可以在电子设备不参与的情况下发送数据包以保持网络链路的畅通,所以可以节约流量,电子设备也可以进行休眠,进而省电。
进一步,本发明实施例中是先确定出第一值,然后再根据第一值确定出第二值,因为TTL值为第一值的数据包能够到达电子设备,所以根据TTL值的特性,很容易就能确定出第二值,例如将第一值减一就可以得到第二值,所以操作简单,容易实现。
进一步,本发明一实施例采用预定发包频率发送数据包以确保网络链路的畅通,该预定发包频率为当发送TTL值为第二值的数据包的发包频率小于预定发包频率时网络链路就会断开的发包频率。因此,本实施例既可达到维持网络链路的畅通,又使得发包频率达到最低,所以大大节约了流量,减轻了终端设备和电子设备的负担。
更进一步,本发明一实施例中基于电子设备的连接请求,然后利用连接请求的数据通道向电子设备发送不同的TTL值的数据包进行试探,当接收到电子设备的应答包时,即可以确定出该应答包对应的TTL值即为第一值,该方法可以有效地探测到终端设备到电子设备之间的TTL值,而不用修改电子设备的程序或者需要电子设备具有特殊的权限。
附图说明
图1为本发明一实施例中的发送数据包的方法所应用的网络环境图;
图2为本发明一实施例中的发送数据包的方法流程图;
图3为本发明一实施例中的确定TTL值的方法流程图;
图4为本发明另一实施例中的确定TTL值的方法流程图;
图5为本发明一实施例中的确定预定发包频率的流程图;
图6为本发明一实施例中的确定预定发包频率的时间示意图;
图7为本发明一实施例中的确定预定发包频率的另一流程图;
图8为本发明一实施例中的终端设备的架构图。
具体实施方式
本发明实施例提供一种发送数据包的方法及终端设备,用以解决现有技术中存在的为保持服务端到客户端设备间的网络链路通畅,而将数据包频繁的发送到客户端设备,增加了客户端设备的负担,造成了流量和电量的额外消耗的技术问题。
本发明实施例中的技术方案为解决上述的技术问题,总体思路如下:
首先基于电子设备的连接请求,按照预定策略确定向电子设备发送数据包包含的TTL值为第一值,TTL值为第一值时,数据包能够到达电子设备,所以可以基于第一值而确定出第二值,使得TTL值为第二值的数据包能够到达网络链路中离该电子设备最近的网络设备,然后向第二电子设备发送TTL值为第二值的数据包,以保持该网络链路的畅通,因为TTL值为第二值的数据包最远能够到达网络链路中离电子设备最近的网络设备,所以可以在电子设备不参与的情况下发送数据包以保持网络链路的畅通,所以可以节约流量,电子设备也可以进行休眠,进而省电。
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
本发明一实施例提供一种发送数据包的方法,应用于一作为服务端的终端设备上,如图1所示,终端设备10通过网络与一电子设备20连接,终端设备10与电子设备20之间形成一网络链路30,网络链路30上具有多个网络设备,例如网络设备301、网络设备302、网络设备303、网络设备304。
TTL(Time To Live,生存时间)值是协议包中的一个值,它告诉网络,数据包在网络中的时间是否太长而应被丢弃,由于每个网络设备,例如路由器都至少要把TTL值域减一,所以TTL通常表示数据包在被丢弃前最多能经过的路由器个数,当记数到零时,路由器决定丢弃该包,并发送一个报文给最初的发送者。
接下来,请参考图2,图2为本实施例中的发送数据包的方法流程图,该方法包括:
步骤210:获得电子设备20的连接请求;
步骤212:基于连接请求,按照预定策略确定向电子设备20所发送的数据包包含的TTL值为第一值,其中,TTL值为第一值的数据包能够到达电子设备20;
步骤214:基于第一值确定TTL值的第二值,其中,TTL值为第二值的数据包能够到达网络链路30中离电子设备20最近的网络设备;
步骤216:向电子设备20发送TTL值为第二值的数据包。
其中,在步骤210中,获得电子设备20的连接请求,例如网络链路30是UDP(User Datagram Protocol;用户数据包协议)连接时,电子设备20向终端设备10的监听端口发送UDP数据包,该UDP数据包包含有目的地址、目的端口、源地址和源端口;如果网络链路30是TCP(Transmission Control Protocol;传输控制协议)连接时,电子设备20向终端设备的监听端口发送TCP连接请求。
接下来在步骤212中,终端设备基于该连接请求,按照预定策略确定向电子设备20所发送的数据包包含的TTL值为第一值,当终端设备10向电子设备20发送TTL值为第一值的数据包时,TTL值为第一值的数据包能够到达电子设备20。
具体来讲,请参考图3,为确定第一值的流程图:
步骤2121:基于该连接请求,设置TTL值为第一初始值,例如为1,即从最小的值开始试探;
步骤2122:向电子设备20发送TTL值为设定值的数据包,如果是第一次设置的话,该设定值即为第一初始值;
步骤2123:判断是否在第一预定时间内收到电子设备20的应答包,如果是的话就执行步骤2124,如果是否的话就执行步骤2125;
步骤2124:将当前TTL值作为第一值;
步骤2125:将TTL值设为第二初始值,例如为2,然后进入步骤2122继续试探,直到步骤2123的判断结果为是。
以下将举具体的实例进行说明,在本实施例中,例如如图1所示,假设终端设备10和电子设备20之间只有网络设备301,因为每经过一个网络设备,TTL值就减一,则从终端设备10传送一个数据包到电子设备20,要使得该数据包能到达电子设备20,即网络设备304接收到该数据包时,TTL值至少要为1,所以从终端设备10发送该数据包时,TTL值至少要设置为1,即第一值要等于1。
假定在上述情况下,终端设备10基于该连接请求,将TTL值设为第一初始值1,然后判断在第一预定时间内是否收到电子设备20的第一应答包,而第一预定时间的设置可以根据网络链路30的类型和数据传输速度来确定,较佳的,第一预定时间可以设置的长一点,可以增加试探的准确性,但是也不能太长,造成时间的浪费。
因为在上述假定的情况下,终端设备10和电子设备20之间只有网络设备301,所以第一数据包会达到电子设备20,所以电子设备20在收到第一数据包后会发送第一应答包给终端设备10,所以终端设备10会收到电子设备20的第一应答包,所以这时可以确定第一初始值即为第一值。
在另一实施例中,例如如图1所示,假设终端设备10和电子设备20之间只有网络设备301和网络设备302,因为每经过一个网络设备,TTL值就减一,则从终端设备10传送一个数据包到电子设备20,要使得该数据包能到达电子设备20,即网络设备304接收到该数据包时,TTL值至少要为1,所以从终端设备10发送该数据包时,TTL值至少要设置为2,即第一值要等于2。
在这个假定情况下,TTL值为第一初始值,即1的数据包在发送到网络设备302时,TTL值已经为0,所以网络设备302会丢弃该数据包,所以电子设备20不会收到第一数据包,所以也不会发送第一应答包给终端设备10,所以在发送第一数据包后的第一预定时间内,不会收到电子设备20的第一应答包。
因此,这时就将TTL值设为第二初始值,例如为2,并向电子设备20发送TTL值为第二初始值的第二数据包,在这种假定情况下,终端设备10和电子设备20之间只有网络设备301和网络设备302,所以第二数据包会达到电子设备20,所以电子设备20在收到第二数据包后会发送第二应答包给终端设备10,所以终端设备10会收到电子设备20的第二应答包,所以这时可以确定第二初始值即为第一值。
从前述举例描述可知,可以按照前述步骤2121到步骤2125进行反复试探,直到试探到数据包包含的TTL值能够到达电子设备20为止。
进一步,请参考图4,为另一实施例中确定第一值的方法流程图,其中与图3实施例中相同的步骤就不在这里重复了:
步骤2126:判断是否在第二预定时间内收到网络设备的超时反馈信息;其中,当步骤2123的判断结果为否时执行步骤2126,而当步骤2126的判断结果为是时,就执行步骤2125,而当步骤2126的判断结果为否时就执行步骤2127;
步骤2127:判断发送TTL值为设定值的数据包的次数是否达到一预定次数;其中,当步骤2127的判断结果为是时,就执行步骤2125,而当步骤2127的判断结果为否时,就继续执行步骤2122,直到步骤2123的判断结果为是。
继续沿用前面的例子来说,即假设终端设备10和电子设备20之间只有网络设备301和网络设备302、第一数据包的TTL值为1的情况下,因为在第一数据包发送后的第一预定时间内,是不会收到电子设备的第一应答包(参见前述描述),所以这时就执行步骤2126,判断在发送第一数据包后的第二预定时间内,是否收到多个网络设备中任一网络设备发送的第一超时反馈信息,在本实施例中,网络设备302在接收到第一数据包时,TTL值已经减为零,所以就会丢弃第一数据包,并给终端设备10发送一个超时反馈信息,例如是ICMP(Internet Control Message Protocol;网际控制报文协议)报文。由此,终端设备10即可知道TTL值太小,需要增加。
因此,在发送第一数据包后的第二预定时间内,收到网络设备302发送的第一超时反馈信息,这时就继续执行步骤2125,即将TTL值设置为第二初始值,例如为2,并执行步骤2122,即向电子设备发送TTL值为第二初始值的第二数据包,在这种假定情况下,终端设备10和电子设备20之间只有网络设备301和网络设备302,所以第二数据包会达到电子设备20,所以电子设备20在收到第二数据包后会发送第二应答包给终端设备10,所以终端设备10会收到电子设备20的第二应答包,所以这时可以确定第二初始值即为第一值。
其中,第二预定时间可以大于等于第一预定时间,也可以小于第一预定时间。
而当步骤2126的判断结果为否时,则执行步骤2127,继续沿用上述实例,即判断发送第一数据包的次数是否达到一预定次数,如果判断的结果为否的话,就继续执行步骤2122,即继续发送TTL值为第一初始值的第一数据包。
而如果步骤2127的判断结果为是的话,则执行步骤2125,接着再执行步骤2122。如此反复试探,便可确定出第一值。
进一步,在上述各实施例中,如果网络链路30为UDP连接,则发送的数据包为UDP数据包,而应答包也为UDP包;如果网络链路30为TCP连接,则发送的数据包为TCP数据包,而应答包为TCPAck包。
上述方案基于电子设备的连接请求,然后利用连接请求的数据通道向电子设备发送不同的TTL值的数据包进行试探,进而确定出该应答包对应的TTL值,该方法可以有效地探测到终端设备10到电子设备20之间的TTL值,而不用修改电子设备20的程序或者需要电子设备20具有特殊的权限。
当通过步骤212确定出TTL值的第一值时,就可执行步骤214,即基于第一值确定TTL值的第二值,因为第一值对应的数据包恰好能够到达电子设备20,因为每过一网络设备,TTL值就减一,所以反之亦然,想要第二值对应的数据包能够到达网络链路30中离电子设备20最近的网络设备,需要在第一值的基础上至少减一,即可得到第二值。因此,该方法所以操作简单,容易实现。
例如,在图1中,假设终端设备10和电子设备20之间只有网络设备301、网络设备302、网络设备303、网络设备304四个网络设备,每经过一个网络设备,TTL值就减一,那么确定出的第一值例如为4,那么第二值即为3。因此,在网络设备304接收到该数据包时,TTL值显示该数据包只能传输至此,需要丢弃掉,所以数据包就不会传送给电子设备20,电子设备20就可以处于休眠状态,进行省电。
在步骤216中,向电子设备20发送TTL值为第二值的数据包,可以是定期发送,也可以是不定期发送。
进一步可以先确定发送TTL值为第二值的数据包的预定发包频率,当发送TTL值为第二值的数据包的发包频率小于预定发包频率时网络链路30就会断开,即预定发包频率为一个临界频率,在该发包频率下,可确保网络链路30为畅通状态,并且为维持网络链路30畅通所发的数据包的流量最少,所以可以减小流量,节约网络资源,减轻了终端设备10和电子设备20的负担。
然后基于预定发包频率发送TTL值为第二值的数据包,以确保网络链路30的畅通。
基于上述技术方案,当第二值的数据包最远能够到达离电子设备20最近的网络设备时,即可以保持网络链路30的畅通,又不需要发送到电子设备20,所以电子设备20可以进入休眠状态或者其他省电状态,只有需要发送数据包给电子设备20时,就发送TTL值为第一值的数据包即可,所以可以省电,同时也节约了电子设备20的流量。进一步,可确保终端设备10和电子设备20之间的网路链路30畅通,同时发包频率最低,所以减小了流量,节约了网络资源,减轻了终端设备10和电子设备20的负担。
其中,确定发送TTL值为第二值的数据包的预定发包频率的方式有很多,以下将详细介绍其中一种确定发送TTL值为第二值的数据包的预定发包频率的方式。
请同时参考图5和图6,步骤310:在t0时刻将发包周期设置为T0,其中T0的值可基于网络链路30的连接类型确定,例如,如果网络链路30是TCP连接,则T0的值可设为5分钟,如果网络链路30是UDP连接,则T0的值可设为5秒,T0的值可设置为一个数据包在网络链路30传输到最后一个网络设备(例如图1中的网络设备304)再返回到终端设备10所用时间的两倍,因为当第二值已经确定时,终端设备10和电子设备20之间的网络链路30的长度已经确定,所以T0可轻易计算出来,这样设置出来的T0比较接近实际终端设备10和电子设备20之间可保持连接的时间,所以在后续进一步确定发包频率的时候,可以更快更准确也更容易找到预定发包频率。当然,在其他实施例中,T0的值也可以通过其他方式来设置,例如本领域技术人员可根据经验设置,甚至可以随意设置一个值,只是后续反复试探的步骤比较多,但是并不影响最后的结果。
进一步,t0时刻可以是任何时刻,在第二值确定的情况下,随时都可以开始确定预定发包频率,也可以是每次网络链路30刚建立的时刻。
步骤312:在t0时刻向电子设备20发送TTL值为第二值的第一数据包,因为TTL值为第二值的数据包能够到达离电子设备20最近的网络设备。例如,继续沿用前述例子,即终端设备10和电子设备20之间只有网络设备301、网络设备302、网络设备303、网络设备304四个网络设备,离电子设备20最近的网络设备即为网络设备304,所以这个过程也不需要电子设备20参与,所以可以节约流量,同时电子设备20也可以省电。
步骤314:在发送第一数据包后的预定时间内,判断是否收到离电子设备20最近的网络设备的第一超时反馈信息。
其中,预定时间是基于网络链路30的长度和数据包在网络链路30上的传输速度确定的,所以预定时间大约是数据包从终端设备10发出,经过网络设备,等到达最后一个网络设备,例如图1中的网络设备304时,因为这时TTL值表示需要丢弃该数据包,所以网络设备304会给终端设备10发送一个报文,报告数据包已丢弃,到收到该报文的时间,所以T0大约是预定时间的两倍。另外,第一超时反馈信息例如是一个ICMP报文。
当在预定时间内收到了离电子设备20最近的网络设备的第一超时反馈信息,表示目前网络链路30是畅通的,所以网络链路30从t0时刻开始就重新开始一个新的周期了,即从t0时刻重新计算终端设备10和电子设备20之间网络链路30可保持畅通的时间。然后执行步骤316:则在t1时刻向电子设备20发送TTL值为第二值的第二数据包,其中,t1时刻为t0时刻加上T0的时刻,预定时间小于T0。
具体来说,例如网络链路30的连接类型是UDP连接,网络链路30上有四个网络设备,网络链路30的长度已经确定,计算出来的T0例如是5秒,而预定时间例如是2.5秒,在t0时刻将计算器清零,从零开始计,也可以从5秒开始倒计时,在本实施例中,采用从零开始计的方式。所以在0秒的时候发送第一数据包出去,在第2.5秒之内就收到了第一超时反馈信息,说明网络链路30是畅通的,而且从0秒开始重新开始一个新的周期,所以就假定周期是T0,试探一下,所以在收到第一超时反馈信息后,就等到第5秒时再发送一个TTL值为第二值的第二数据包。
接下来执行步骤318:在发送第二数据包后的预定时间内,判断是否收到离电子设备20最近的网络设备的第二超时反馈信息。
如果收到第二超时反馈信息,就表示网络链路30可保持畅通的时间是大于T0的,例如终端设备10在第7.5秒收到了第二超时反馈信息,说明发包周期可再延长。
因此,接下来执行步骤320:则将发包周期设置为T1,并在t2时刻向电子设备20发送TTL值为第二值的第三数据包,其中,T1的值大于T0的值,t2时刻为t1时刻加上T1的时刻。
继续沿用前述的例子,因为在第7.5秒的时候收到了第二超时反馈信息,所以表明可以进一步延长发包周期,所以就重新设置发包周期为T1,例如6秒,即在原来5秒的基础上增加1秒,所以再等待到第11秒的时候就发送第三数据包,以试探发包周期为6秒是否可行。
然后执行步骤322:在发送第三数据包后的预定时间内,判断是否收到离电子设备20最近的网络设备的第三超时反馈信息。
如果没有收到第三超时反馈信息,就说明发包周期为6秒时网络链路30就会断开,无法维持畅通,所以这时可以执行步骤324:确定T0对应的发包频率为预定发包频率,即发包周期为5秒,预定发包频率就为1/5。
当然,如果在步骤322的判断结果为是的情况下,说明发包周期为6秒时网络链路30也可维持畅通,所以需要再进一步尝试发包周期大于6秒的情况,例如再设置为7秒,即反复执行步骤320到步骤322,直到获得步骤324的结果为止。
请继续参考图5,当步骤314的判断结果为否时,即如果在发送第一数据包后的预定时间内,未收到离电子设备20最近的网络设备的第一超时反馈信息,还包括步骤326:则重新基于电子设备20发起的连接请求,与电子设备20建立网络链路30。
因为可以是在任何时刻开始确定预定发包频率,所以可能网络链路已经断开,所以会存在在发送第一数据包后的预定时间内,无法接收到第一超时反馈信息的情况,所以这时候需要再重新建立网络链路30,当网络链路30刚建立好时,网络链路30基本上还是畅通的,而且是一个完整的网路链路保持时间周期,所以在这种情况下,可以不执行步骤312和步骤314,而直接执行步骤316。
在进一步的实施例中,当步骤318的判断结果为否时,请参考图7,执行步骤328:则将发包周期设置为T2,并在t3时刻向电子设备20发送TTL值为第二值的第四数据包,其中,T2的值小于T0的值,t3时刻为t1时刻加上T2的时刻。
步骤318判断的结果为否,表示发包周期为T0是不可行的,例如5秒的发包周期太长,以致于网络链路30已经断开,所以这时要把发包周期设置为T2,例如4秒,假如在第7.5秒的时候没有收到第二超时反馈信息,可以先执行步骤326,将网络链路30恢复,然后再执行步骤328,中间计时器可暂停计时,等网络链路30恢复之后继续计时,这时t3时刻即为第9秒的时刻;当然,也可在网络链路30恢复时,从零开始计,因为t1时刻变为零,这时t3时刻就是第4秒的时刻。
进一步,再执行步骤330:如果在发送第四数据包后的预定时间内,判断是否收到离电子设备20最近的网络设备的第四超时反馈信息,如果收到,则说明4秒的发包周期是可行的,所以就执行步骤332:确定T2对应的发包频率为预定发包频率。
如果步骤330的判断结果为否,则继续执行步骤326,然后再次开始执行步骤328至步骤330,直至得到步骤332的结果;或者继续执行步骤310至步骤322,直至得到步骤324的结果。
以上说明过程中所提到的第一数据包、第二数据包、第三数据包、第四数据包只是为了方便描述,其之间并不代表先后顺序或者一定不相同;同样,第一超时反馈信息、第二超时反馈信息、第三超时反馈信息、第四超时反馈信息也只是为了方便描述,其之间并不代表先后顺序或者一定不相同;以及与前述确定第一值过程中所提到的第一数据包、第二数据包、第一超时反馈信息为两个不同的过程中为方便描述而用的,之间并没有必然的关系。
由以上对确定预定发包频率的举例说明过程可以看出,确定预定发包频率的过程就是一个反复试探的过程,先根据规则预先设定一个发包周期,然后按照设定的周期发送数据包,看在这个周期下是否可以维持网络链路畅通,如果行,则试着增长发包周期,每次增长的量可以自行设置,可以很小很小的增加,例如每次增加1秒,甚至更小,例如增加0.1秒,能增加的最小单元取决于计时器最小能计时到什么级别,等增加到某一个发包周期后,发现再增加一个最小单位的时间量,网络链路就不能维持畅通状态,就可以确定该发包周期对应的发包频率就是预定发包频率。在实际运用时,也可以每次增加的量比较大,当遇到不能维持网络链路畅通的发包周期时,就重新建立网络连接,然后在前次试探的基础上往下减,经过反复的减小之后,如果发现某次只减小了一个最小单元时间后,就可以维持网络链路的畅通,那么就可以确定出最长的发包周期了,所以也可以确定出预定发包频率了。
本发明一实施例还提供一种终端设备,如图1中的终端设备10,作为服务端通过网络与一电子设备20连接,终端设备10与电子设备20之间形成一网络链路30,网络链路30上具有多个网络设备;如图8所示,终端设备10包括:电路板701;第一通信单元702,设置在电路板701上,用于获得电子设备20的连接请求;处理器703,设置在电路板701上,用于基于连接请求,按照预定策略确定向电子设备20所发送的数据包包含的TTL值为第一值,其中,TTL值为第一值的数据包能够到达电子设备20;基于第一值确定TTL值的第二值,其中,TTL值为第二值的数据包能够到达网络链路30中离电子设备20最近的网络设备;第二通信单元704,连接于处理器703,用于向电子设备20发送TTL值为第二值的数据包。
进一步,处理器703具体还用于确定向电子设备20发送TTL值为第二值的数据包的预定发包频率,预定发包频率为当发送TTL值为第二值的数据包的发包频率小于预定发包频率时网络链路就会断开的发包频率;第二通信单元704具体用于基于预定发包频率发送TTL值为第二值的数据包,以确保网络链路的畅通。
在另一实施例中,第二通信单元704具体用于基于连接请求,向电子设备20发送TTL值为第一初始值的第一数据包;处理器703具体用于在发送第一数据包后的第一预定时间内,收到电子设备的第一应答包时,确定第一初始值为第一值。
进一步,第二通信单元704具体还用于在发送第一数据包后的第一预定时间内,未收到电子设备20的第一应答包时,向电子设备20发送TTL值为第二初始值的第二数据包;其中,第二初始值大于第一初始值;处理器703具体还用于在发送第二数据包后的第一预定时间内,收到电子设备20的第二应答包时,确定第二初始值为第一值。
在另一实施例中,处理器703具体还用于在发送第一数据包后的第一预定时间内,未收到电子设备20的第一应答包,则判断在发送第一数据包后的第二预定时间内,是否收到多个网络设备中任一网络设备发送的第一超时反馈信息;第二通信单元704具体还用于在发送第一数据包后的第二预定时间内,收到多个网络设备中任一网络设备发送的第一超时反馈信息时,则向电子设备20发送TTL值为第二初始值的第二数据包;其中,第二初始值大于第一初始值;处理器703具体还用于在发送第二数据包后的第一预定时间内,收到电子设备的第二应答包时,确定第二初始值为第一值。
进一步,处理器703具体还用于在发送第一数据包后的第二预定时间内,未收到多个网络设备中任一网络设备发送的第一超时反馈信息时,判断发送第一数据包的次数是否达到一预定次数;第二通信单元704具体还用于发送第一数据包的次数未达到预定次数,则向电子设备20发送第一数据包。
进一步,第二通信单元704具体还用于在发送第一数据包的次数达到预定次数时,发送第二数据包。
在一实施例中,处理器703具体用于将第一值减一得到第二值。
在以上各实施例中,第一通信单元701可以是终端设备10的监听端口,第二通信单元704可以与第一通信单元701相同,也可以不同。
前述实施例中的发送数据包的方法中的各种变化方式和具体实例同样适用于本实施例的终端设备,通过前述对发送数据包的方法的详细描述,本领域技术人员可以清楚的知道本实施例中终端设备的实施方法,所以为了说明书的简洁,在此不再详述。
本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
本发明一实施例中首先基于电子设备的连接请求,按照预定策略确定向电子设备发送数据包包含的TTL值为第一值,TTL值为第一值时,数据包能够到达电子设备,所以可以基于第一值而确定出第二值,使得TTL值为第二值的数据包能够到达网络链路中离该电子设备最近的网络设备,然后向第二电子设备发送TTL值为第二值的数据包,以保持该网络链路的畅通,因为TTL值为第二值的数据包最远能够到达网络链路中离电子设备最近的网络设备,所以可以在电子设备不参与的情况下发送数据包以保持网络链路的畅通,所以可以节约流量,电子设备也可以进行休眠,进而省电。
进一步,本发明实施例中是先确定出第一值,然后再根据第一值确定出第二值,因为TTL值为第一值的数据包能够到达电子设备,所以根据TTL值的特性,很容易就能确定出第二值,例如将第一值减一就可以得到第二值,所以操作简单,容易实现。
进一步,本发明一实施例采用预定发包频率发送数据包以确保网络链路的畅通,该预定发包频率为当发送TTL值为第二值的数据包的发包频率小于预定发包频率时网络链路就会断开的发包频率。因此,本实施例既可达到维持网络链路的畅通,又使得发包频率达到最低,所以大大节约了流量,减轻了终端设备和电子设备的负担。
更进一步,本发明一实施例中基于电子设备的连接请求,然后利用连接请求的数据通道向电子设备发送不同的TTL值的数据包进行试探,当接收到电子设备的应答包时,即可以确定出该应答包对应的TTL值即为第一值,该方法可以有效地探测到终端设备到电子设备之间的TTL值,而不用修改电子设备的程序或者电子设备具有特殊的权限。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (16)
1.一种发送数据包的方法,应用于一作为服务端的终端设备上,所述终端设备通过网络与一电子设备连接,所述终端设备与所述电子设备之间形成一网络链路,所述网络链路上具有多个网络设备;其特征在于,所述方法包括:
获得所述电子设备的连接请求;
基于所述连接请求,按照预定策略确定向所述电子设备所发送的数据包包含的TTL值为第一值,其中,所述TTL值为所述第一值的数据包能够到达所述电子设备;
基于所述第一值确定所述TTL值的第二值,其中,所述TTL值为所述第二值的数据包能够到达所述网络链路中离所述电子设备最近的网络设备;
向所述电子设备发送所述TTL值为所述第二值的数据包。
2.如权利要求1所述的方法,其特征在于,所述向所述电子设备发送所述TTL值为所述第二值的数据包,具体包括:
确定向所述电子设备发送所述TTL值为所述第二值的数据包的预定发包频率,所述预定发包频率为当发送所述TTL值为所述第二值的数据包的发包频率小于所述预定发包频率时所述网络链路就会断开的发包频率;
基于所述预定发包频率发送所述TTL值为所述第二值的数据包,以确保所述网络链路的畅通。
3.如权利要求1所述的方法,其特征在于,所述基于所述连接请求,按照预定策略确定向所述电子设备所发送的数据包包含的TTL值为第一值,具体包括:
基于所述连接请求,向所述电子设备发送所述TTL值为第一初始值的第一数据包;
如果在发送所述第一数据包后的第一预定时间内,收到所述电子设备的第一应答包,则确定所述第一初始值为所述第一值。
4.如权利要求3所述的方法,其特征在于,所述方法还包括:
如果在发送所述第一数据包后的所述第一预定时间内,未收到所述电子设备的第一应答包,则向所述电子设备发送所述TTL值为第二初始值的第二数据包;其中,所述第二初始值大于所述第一初始值;
如果在发送所述第二数据包后的所述第一预定时间内,收到所述电子设备的第二应答包,则确定所述第二初始值为所述第一值。
5.如权利要求3所述的方法,其特征在于,所述方法还包括:
如果在发送所述第一数据包后的所述第一预定时间内,未收到所述电子设备的第一应答包,则判断在发送所述第一数据包后的第二预定时间内,是否收到所述多个网络设备中任一网络设备发送的第一超时反馈信息;
如果在发送所述第一数据包后的所述第二预定时间内,收到所述多个网络设备中任一网络设备发送的第一超时反馈信息,则向所述电子设备发送所述TTL值为第二初始值的第二数据包;其中,所述第二初始值大于所述第一初始值;
如果在发送所述第二数据包后的所述第一预定时间内,收到所述电子设备的第二应答包,则确定所述第二初始值为所述第一值。
6.如权利要求5所述的方法,其特征在于,所述方法还包括:
如果在发送所述第一数据包后的所述第二预定时间内,未收到所述多个网络设备中任一网络设备发送的第一超时反馈信息,则判断发送所述第一数据包的次数是否达到一预定次数;
如果发送所述第一数据包的次数未达到所述预定次数,则向所述电子设备发送所述第一数据包。
7.如权利要求6所述的方法,其特征在于,所述方法还包括:
如果发送所述第一数据包的次数达到所述预定次数,则发送所述第二数据包。
8.如权利要求1所述的方法,其特征在于,所述基于所述第一值确定所述TTL值的第二值,具体为:
将所述第一值减一得到所述第二值。
9.一种终端设备,作为服务端通过网络与一电子设备连接,所述终端设备与所述电子设备之间形成一网络链路,所述网络链路上具有多个网络设备;其特征在于,所述终端设备包括:
电路板;
第一通信单元,设置在所述电路板上,用于获得所述电子设备的连接请求;
处理器,设置在所述电路板上,用于基于所述连接请求,按照预定策略确定向所述电子设备所发送的数据包包含的TTL值为第一值,其中,所述TTL值为所述第一值的数据包能够到达所述电子设备;基于所述第一值确定所述TTL值的第二值,其中,所述TTL值为所述第二值的数据包能够到达所述网络链路中离所述电子设备最近的网络设备;
第二通信单元,连接于所述处理器,用于向所述电子设备发送所述TTL值为所述第二值的数据包。
10.如权利要求9所述的终端设备,其特征在于,所述处理器具体还用于确定向所述电子设备发送所述TTL值为所述第二值的数据包的预定发包频率,所述预定发包频率为当发送所述TTL值为所述第二值的数据包的发包频率小于所述预定发包频率时所述网络链路就会断开的发包频率;所述第二通信单元具体用于基于所述预定发包频率发送所述TTL值为所述第二值的数据包,以确保所述网络链路的畅通。
11.如权利要求9所述的终端设备,其特征在于,所述第二通信单元具体用于基于所述连接请求,向所述电子设备发送所述TTL值为第一初始值的第一数据包;所述处理器具体用于在发送所述第一数据包后的第一预定时间内,收到所述电子设备的第一应答包时,确定所述第一初始值为所述第一值。
12.如权利要求11所述的终端设备,其特征在于,所述第二通信单元具体还用于在发送所述第一数据包后的所述第一预定时间内,未收到所述电子设备的第一应答包时,向所述电子设备发送所述TTL值为第二初始值的第二数据包;其中,所述第二初始值大于所述第一初始值;所述处理器具体还用于在发送所述第二数据包后的所述第一预定时间内,收到所述电子设备的第二应答包时,确定所述第二初始值为所述第一值。
13.如权利要求11所述的终端设备,其特征在于,所述处理器具体还用于在发送所述第一数据包后的所述第一预定时间内,未收到所述电子设备的第一应答包,则判断在发送所述第一数据包后的第二预定时间内,是否收到所述多个网络设备中任一网络设备发送的第一超时反馈信息;所述第二通信单元具体还用于在发送所述第一数据包后的所述第二预定时间内,收到所述多个网络设备中任一网络设备发送的第一超时反馈信息时,则向所述电子设备发送所述TTL值为第二初始值的第二数据包;其中,所述第二初始值大于所述第一初始值;所述处理器具体还用于在发送所述第二数据包后的所述第一预定时间内,收到所述电子设备的第二应答包时,确定所述第二初始值为所述第一值。
14.如权利要求13所述的终端设备,其特征在于,所述处理器具体还用于在发送所述第一数据包后的所述第二预定时间内,未收到所述多个网络设备中任一网络设备发送的第一超时反馈信息时,判断发送所述第一数据包的次数是否达到一预定次数;所述第二通信单元具体还用于发送所述第一数据包的次数未达到所述预定次数,则向所述电子设备发送所述第一数据包。
15.如权利要求14所述的终端设备,其特征在于,所述第二通信单元具体还用于在发送所述第一数据包的次数达到所述预定次数时,发送所述第二数据包。
16.如权利要求9所述的终端设备,其特征在于,所述处理器具体用于将所述第一值减一得到所述第二值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210226508.4A CN103516700A (zh) | 2012-06-29 | 2012-06-29 | 一种发送数据包的方法及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210226508.4A CN103516700A (zh) | 2012-06-29 | 2012-06-29 | 一种发送数据包的方法及终端设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103516700A true CN103516700A (zh) | 2014-01-15 |
Family
ID=49898745
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210226508.4A Pending CN103516700A (zh) | 2012-06-29 | 2012-06-29 | 一种发送数据包的方法及终端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103516700A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109510779A (zh) * | 2017-09-15 | 2019-03-22 | 丰田自动车株式会社 | 车载装置、信息处理单元、信息处理方法以及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008112396A1 (en) * | 2007-03-12 | 2008-09-18 | Microsoft Corporation | Cost reduction of nat connection state keep-alive |
CN101471992A (zh) * | 2007-12-24 | 2009-07-01 | 联想(北京)有限公司 | 一种移动终端及通过网络向移动终端推送业务信息的方法 |
WO2010125422A1 (en) * | 2009-04-30 | 2010-11-04 | Sony Ericsson Mobile Communications Ab | Method and system of maintaining a connection in a network communication system |
CN102036349A (zh) * | 2009-09-29 | 2011-04-27 | 联想(北京)有限公司 | 维持终端和网络服务器连接的方法、终端及网络服务器 |
CN102281335A (zh) * | 2010-06-09 | 2011-12-14 | 北京和信锐智科技有限公司 | 保持网络nat绑定的方法 |
-
2012
- 2012-06-29 CN CN201210226508.4A patent/CN103516700A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008112396A1 (en) * | 2007-03-12 | 2008-09-18 | Microsoft Corporation | Cost reduction of nat connection state keep-alive |
CN101471992A (zh) * | 2007-12-24 | 2009-07-01 | 联想(北京)有限公司 | 一种移动终端及通过网络向移动终端推送业务信息的方法 |
WO2010125422A1 (en) * | 2009-04-30 | 2010-11-04 | Sony Ericsson Mobile Communications Ab | Method and system of maintaining a connection in a network communication system |
CN102036349A (zh) * | 2009-09-29 | 2011-04-27 | 联想(北京)有限公司 | 维持终端和网络服务器连接的方法、终端及网络服务器 |
CN102281335A (zh) * | 2010-06-09 | 2011-12-14 | 北京和信锐智科技有限公司 | 保持网络nat绑定的方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109510779A (zh) * | 2017-09-15 | 2019-03-22 | 丰田自动车株式会社 | 车载装置、信息处理单元、信息处理方法以及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11477106B2 (en) | Data packet sending method and apparatus in IPV6 network | |
Lim et al. | Design, implementation, and evaluation of energy-aware multi-path TCP | |
CN102932920B (zh) | 无线资源调度请求配置方法及装置 | |
US10187284B2 (en) | Communication device, server device, communication method, and non-transitory computer readable medium | |
CN104170353B (zh) | Tcp链路配置方法、装置及设备 | |
CN102325076B (zh) | 一种路径最大传输单元发现方法和节点 | |
CN108366001B (zh) | 一种转发测试方法及装置 | |
WO2016100631A1 (en) | Methods for enabling delay-awareness in the constrained application protocol (coap) | |
KR20100017105A (ko) | 근거리 링크 최적화 방법 | |
CN103516690A (zh) | 一种业务处理状态信息查询方法及装置 | |
JP2016526863A (ja) | データ処理方法および装置 | |
CN107135279A (zh) | 一种处理长连接建立请求的方法和装置 | |
KR102686798B1 (ko) | 무선 네트워크를 위한 부모 노드 장치, 단말 장치, 및 그것의 데이터 전송 방법 | |
CN105262836A (zh) | 服务器推送信息的方法及客户端接收推送信息的方法 | |
WO2019184455A1 (zh) | 信息传输方法、装置、设备及存储介质 | |
RU2017103781A (ru) | Способ начисления платы в режиме реального времени, шлюз и устройство для начисления платы в режиме реального времени | |
CN109005116A (zh) | 一种报文转发方法及装置 | |
CN103560947A (zh) | 一种避免中间系统邻居关系震荡的方法及装置 | |
CN102769911B (zh) | 一种路由通告消息发送方法及装置 | |
CN103841218A (zh) | 用户终端访问公网时长的确定方法和宽带接入服务器 | |
CN104618123B (zh) | 一种供电方法以及装置 | |
CN103516700A (zh) | 一种发送数据包的方法及终端设备 | |
CN103427941A (zh) | 一种发送数据包的方法、装置及终端设备 | |
WO2015096734A1 (zh) | 一种业务数据的下行传输方法及分组数据网关 | |
CN106102126B (zh) | 一种接入控制方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140115 |