CN102546626B - 一种数据处理方法、装置及*** - Google Patents
一种数据处理方法、装置及*** Download PDFInfo
- Publication number
- CN102546626B CN102546626B CN201110459775.1A CN201110459775A CN102546626B CN 102546626 B CN102546626 B CN 102546626B CN 201110459775 A CN201110459775 A CN 201110459775A CN 102546626 B CN102546626 B CN 102546626B
- Authority
- CN
- China
- Prior art keywords
- sctp
- state
- data block
- sent
- buffering area
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/43—Assembling or disassembling of packets, e.g. segmentation and reassembly [SAR]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明实施例公开了一种数据处理方法、装置及***,用于根据网络状态,动态调整控制数据方法,在降低网络时延的同时提高网络带宽的利用率。本发明实施例方法包括:将接收到的数据转换为流控制传输协议数据块,并存入缓冲区,将该流控制传输协议数据块的状态设置为待发送状态,判断该缓冲区内是否存在处于待发送状态的其他流控制传输协议数据块,若是,则将该缓冲区内所有处于待发送状态的流控制传输协议数据块一并发送,若否,则发送该流控制传输协议数据块。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种数据处理方法、装置及***。
背景技术
当前通信***中,在电信网IP化以后,电信网中信令的传输一般使用流控制传输协议(SCTP,STREAM CONTROL TRANSMISSION PROTOCOL),在SCTP协议下,定义的是包传输的方式,消息包的数量直接影响了网络转发消息的能力。由于用户数量不断增加,运营商提供的服务不断增多,导致网络上的消息数量不断增加,在有限的网络带宽下,如果要快速传送数据,则需要降低网络上的消息数量,而要增加网络上的消息数量,则不可避免导致消息传输时延,数据流量的增加直接导致当前的网络资源越来越紧张,网络同时满足低延时、高负载是当前面临的一个难题。
现有技术中,在SCTP协议下有两种传输控制方式,一种是绑定式,将多个用户数据组装成一个数据包发送,来减少网络上消息包的个数;另一种是非绑定式,当每个用户的数据到达后,不做任何的等待,直接组装成数据包进行发送,来降低消息发送的时延。
在以上现有技术中,绑定式传输控制方式由于等待多个用户数据一并绑定,时延大,而非绑定式传输控制方式由于每个用户的数据单独组装成数据包,网络上消息包的个数较多。
发明内容
本发明实施例提供了一种数据处理方法、装置及***,用以降低网络时延的同时提高网络负载量。
本发明实施例提供了一种数据处理方法,包括:将接收到的数据转换为流控制传输协议数据块;将所述流控制传输协议数据块存入缓冲区,并将所述流控制传输协议数据块的状态设置为待发送状态;判断所述缓冲区内是否存在处于待发送状态的其他流控制传输协议数据块,若是,则将所述缓冲区内所有处于待发送状态的流控制传输协议数据块一并发送,若否,则发送所述流控制传输协议数据块。
本发明实施例提供了一种数据处理装置,包括:转换单元,用于将接收到的数据转换为流控制传输协议数据块;存入单元,用于将所述流控制传输协议数据块存入缓冲区;设置单元,用于将所述流控制传输协议数据块的状态设置为待发送状态;判断单元,用于判断所述缓冲区内是否存在处于待发送状态的其他流控制传输协议数据块;发送单元,用于若所述缓冲区内存在处于待发送状态的其他流控制传输协议数据块,则将所述缓冲区内所有处于待发送状态的流控制传输协议数据块一并发送,若所述缓冲区内不存在处于待发送状态的其他流控制传输协议数据块,则发送所述流控制传输协议数据块。
本发明实施例提供了一种数据处理***,包括:发送端设备,网关设备以及接收端设备;所述发送端设备用于向所述网关设备发送数据;所述网关设备用于将接收到的数据转换为流控制传输协议数据块;将所述流控制传输协议数据块存入缓冲区,并将所述流控制传输协议数据块的状态设置为待发送状态;判断所述缓冲区内是否存在处于待发送状态的其他流控制传输协议数据块,若是,将所述缓冲区内所有处于待发送状态的流控制传输协议数据块一并向所述接收端设备发送,若否,向所述接收端设备则发送所述流控制传输协议数据块;所述接收端设备用于接收所述网关设备发送的所述流控制传输协议数据块。
从以上技术方案可以看出,本发明实施例具有以下优点:将接收到的数据转换为流控制传输协议数据块后存入缓冲区,并将该流控制传输协议数据块的状态设置为待发送状态,判断缓冲区内是否存在处于待发送状态的其他流控制传输协议数据块,如果存在,则将缓冲区内所有处于待发送状态的流控制传输协议数据块一并发送,以减少网络中流控制传输协议消息的数量,若否,则将该流控制传输协议数据块直接发送,避免等待其他数据,以降低传输时延,由此,根据网络状况,动态调整控制发送流控制传输协议数据的方式,在降低网络时延的同时提高网络负载量。
附图说明
图1为本发明实施例中数据处理方法的一个实施例示意图;
图2为本发明实施例中数据处理方法的另一个实施例示意图;
图3为流控制传输协议数据块格式示意图;
图4为流控制传输协议包格式示意图;
图5为本发明实施例中数据处理装置的一个实施例示意图;
图6为本发明实施例中数据处理装置的另一个实施例示意图;
图7为本发明实施例中数据处理***的一个实施例示意图。
具体实施方式
本发明实施例提供了一种数据处理方法及装置,用于在发送数据的过程中,根据网络状态,动态调整控制数据方法,在降低网络时延的同时提高网络带宽的利用率。以下分别进行详细说明。
请参阅图1,本发明实施例中的数据处理方法的一个实施例包括:
101、将接收到的数据转换为流控制传输协议数据块;
在网络中,存在多种触发消息发送的方式,例如用户下发消息触发,定时器超时触发,收到的选择性应答(SACK,selective acknowledgement)要求重传触发。为描述方便,本发明的实施例中均以用户下发消息触发的方式为例,描述消息发送的控制过程,其他的触发方式下发送控制过程相同,此处不再赘述。
接收到用户发送的数据后,对接收到的数据进行预处理,例如,根据数据大小判断是否对其进行分片,判断其是否为空包,并将其转换为SCTP数据块,符合SCTP规则要求。
102、将该流控制传输协议数据块存入缓冲区,并将该流控制传输协议数据块的状态设置为待发送状态;
将预处理后的SCTP数据块存入缓冲区(SendBuffer),并将该SCTP数据块的状态设置为待发送(pending)状态。
103、判断缓冲区内是否存在处于待发送状态的其他流控制传输协议数据块;
判断SendBuffer内是否存在处于pending状态的,除该SCTP数据块之外的其他SCTP数据块。
若是,则执行步骤104,若否,则执行步骤105。
104、将缓冲区内所有处于待发送状态的流控制传输协议数据块一并发送;
如果SendBuffer内存在处于pending状态的其他SCTP数据块,则将SendBuffer内所有处于pending状态的SCTP数据块一并发送,发送给网络中的网络之间互连的协议(IP,Internet Protocol)层。
若SendBuffer内存在处于pending状态的其他SCTP数据块,表明当前网络状态不理想,消息数量可能已经产生瓶颈,需要减少网络中传输的消息数量,因此,将SendBuffer内所有处于pending状态的SCTP数据块一并发送,以减少网络中的消息数量。
105、发送该流控制传输协议数据块。
如果SendBuffer内不存在处于pending状态的其他SCTP数据块,则将该SCTP数据块发送,发送给网络中的IP层。
若SendBuffer内不存在处于pending状态的其他SCTP数据块,表明当前网络状态很好,消息数量不会构成瓶颈,因此,将该SCTP数据块直接发送,不等待其他用户的数据,以降低时延。
需要说明的是,由于SCTP数据在传输过程中,保留了应用程序的消息框架边界,因而即便不同应用程序的数据块绑定在一起传输,也不会影响后续对端接收设备处理数据。
本发明实施例中,将接收到的数据转换为流控制传输协议数据块后存入缓冲区,并将该流控制传输协议数据块的状态设置为待发送状态,判断缓冲区内是否存在处于待发送状态的其他流控制传输协议数据块,如果存在,则将缓冲区内所有处于待发送状态的流控制传输协议数据块一并发送,以减少网络中流控制传输协议消息的数量,若否,则将该流控制传输协议数据块直接发送,避免等待其他数据,以降低传输时延,由此,根据网络状况,动态调整控制发送数据的方式,实现降低网络时延的同时提高网络负载量。
为便于理解,下面以另一实施例详细说明本发明实施例中的处理数据的方法,请参阅图2,本发明实施例中的处理数据的方法的另一实施例包括:
201、将接收到的数据转换为流控制传输协议数据块;
接收到用户发送的数据后,对接收到的数据进行预处理,例如,根据数据大小判断是否对其进行分片,判断其是否为空包,并将其转换为SCTP数据块,符合SCTP规则要求。
202、将该流控制传输协议数据块存入缓冲区,并将该流控制传输协议数据块的状态设置为待发送状态;
将预处理后的SCTP数据块存入SendBuffer,并将该SCTP数据块的状态设置为pending状态。
203、判断该缓冲区内是否存在,处于待发送状态的其他流控制传输协议数据块;
判断SendBuffer内是否存在处于pending状态的,除该SCTP数据块之外的其他SCTP数据块,无论是否存在其他处于pending状态的SCTP数据块,均执行步骤204。
204、判断当前发送条件是否允许发送流控制传输协议消息;
判断当前发送条件是否允许发送SCTP包,发送条件包括对端设备的拥塞窗口(CWND,Congestion Window),及接收窗口(RWND,Receiver Window)的大小,判断对端设备的CWND的大小,RWND的大小是否允许发送SCTP包。
若当前发送条件不允许发送SCTP包,则将SCTP包暂时存放于该SendBuffer内,待条件允许发送时,再进行发送。
若当前发送条件允许发送SCTP包,那么,当该SendBuffer内不存在处于待发状态的其他SCTP数据块,则执行步骤205,当该SendBuffer内存在处于待发状态的其他SCTP数据块,则执行步骤207。
205、将该流控制传输协议数据块组装为一个流控制传输协议包,并将该流控制传输协议数据块的状态设置为待确认状态;
若缓冲区内不存在处于待发状态的其他SCTP数据块,且,当前发送条件允许发送SCTP包,则将该SCTP数据块组装为一个SCTP包,并将该SCTP数据块的状态设置为待确认(WaitAck)状态。
为便于理解,请参阅图3,SCTP数据块结构包括数据块的类型、分包、长度、传输序列号、流标识、流内标识、承载数据协议标识以及用户数据。
将SCTP数据块组装为SCTP包后,例如将SCTP数据块A、SCTP数据块B、SCTP数据块C组装为SCTP包,则该SCTP包的格式示意图请参见图4,其中,SCTP数据包头中包含SCTP数据块控制信息。
206、发送该流控制传输协议包以发送该流控制协议数据块;
发送该SCTP数据包以发送该流控制协议数据块,将该流控制协议数据块发送给网络中的IP层。
207、将缓冲区内所有处于待发送状态的流控制传输协议数据块,组装为一个流控制传输协议包,并将其状态设置为待确认状态;
如果缓冲区内存在处于待发状态的其他SCTP数据块,且,当前发送条件允许发送SCTP协议包,则将缓冲区内所有处于待发送状态的SCTP数据块,包括当前SCTP数据块和其他SCTP数据块,组装为一个SCTP包,并将其状态设置为WaitAck状态。
208、获取缓冲区内的另一个处于待发送状态的流控制传输协议数据块;
在缓冲区内,获取另一个处于待发送状态的流控制传输协议数据块。
209、判断当前发送条件,是否允许流控制传输协议消息中携带更多流控制传输协议数据块;
判断当前发送条件,是否允许SCTP消息中携带更多SCTP数据块,该发送条件包括对端设备的CWND及RWND的大小。
若是,则执行步骤210,若否,则执行步骤213。
210、将该另一个处于待发送状态的流控制传输协议数据块组装至该流控制传输协议包中,并将其状态设置为待确认状态;
若当前发送条件,允许流控制传输协议包发送更多流控制传输协议数据块,则将该另一个处于待发送状态的流控制传输协议数据块组装至该流控制传输协议包中,并将该另一个处于待发送状态的流控制传输协议数据块的状态设置为WaitAck状态。
211、判断缓冲区是否为空;
判断缓冲区是否为空,是否缓冲区中已经没有任何数据。
若是,则执行步骤206,若否,则执行步骤212。
212、判断流控制传输协议包的大小是否达到最大传输单元的大小;
若缓冲区内不为空,还存有数据,则判断SCTP包的大小是否达到最大传输单元(MTU,Max Transfer Unit)的大小。
在实际应用过程中,用户下发长度为100字节的数据块,可预设MTU的大小,例如将MTU的大小预设为1500字节,这样,在数据正常发送时,每个SCTP数据包中都只有一个SCTP数据块,当用户下发数据的速率高于网络的传输速率时,自动调整,每个SCTP数据包中的SCTP数据块数量不断变化,其数量维持在1-15之间,而当用户下发数据的速率恢复正常时,每个SCTP数据包中再次只有一个SCTP数据块。
若SCTP包的大小达到MTU的大小,则执行步骤206,若SCTP包的大小未达到MTU的大小,则执行步骤208。
本发明实施中,在SCTP协议下,弱化绑定式和非绑定式传输数据的差异性,而在数据发送过程中,综合当前的发送速率,接收窗口等情况,尽量以最小时延发送最多的数据消息,在保证低时延高负载的同时,更好的自适应网络的传输能力。
213、判断流控制传输协议包是否为空。
当前发送条件不允许SCTP包发送更多SCTP数据块,则判断SCTP包是否为空,若否,则执行步骤206。
本发明实施例中,如果缓冲区内不存在处于待发送状态的其他SCTP数据块,则直接将当前处于待发送状态的SCTP数据块组装为一个SCTP数据包,发送给网络中的IP层,如果缓冲区内存在处于待发送状态的其他SCTP数据块,则将缓冲区内所有处于待发送状态的SCTP数据块,组装为一个SCTP包,并将其状态设置为WaitAck状态,而后,获取缓冲区内的另一个处于待发送状态的SCTP数据块,判断当前的网络发送条件是否允许SCTP消息中携带更多SCTP数据块,如果允许,则将另一个处于待发送状态的SCTP数据块也组装至该SCTP包中,以一次发送更多的pending状态下的SCTP数据块,若此时SCTP包未超出MTU大小的限制,则重复获取另一个pending状态下的SCTP数据块步骤,以在同一个SCTP包中组装更多的SCTP数据块,直至SCTP包未达到MTU的大小,由此,在网络条件允许的情况下,在同一个SCTP包中组装更多的处于pending状态SCTP数据块,一次发送更多的处于pending状态SCTP数据块,可减少网络消息数量,而缓冲区内不存在处于待发送状态的其他SCTP数据块,则直接将当前处于待发送状态的SCTP数据块组装为一个SCTP数据包发送,并不等待缓冲区接收其他SCTP数据块后再一并发送,则可降低网络时延,因而可根据网络状态及SCTP数据块的状况,动态调整发送方式,在降低网络时延的同时提高网络负载量。
下面介绍本发明实施例的数据处理装置,请参阅图5,本发明实施例中的数据处理装置的一个实施例包括:
转换单元501,用于将接收到的数据转换为SCTP数据块(参见步骤101);
存入单元502,用于将该SCTP数据块存入缓冲区(参见步骤102);
设置单元503,用于将该SCTP数据块的状态设置为待发送状态(参见步骤103);
判断单元504,用于判断该缓冲区内是否存在处于待发送状态的其他SCTP数据块(参见步骤104);
发送单元505,用于若该缓冲区内存在处于待发送状态的其他SCTP数据块,则将该缓冲区内所有处于待发送状态的SCTP数据块一并发送,若该缓冲区内不存在处于待发送状态的其他SCTP数据块,则发送该SCTP数据块(参见步骤105)。
本发明实施例中的各单元实现各自功能的具体过程,请参见前述图1所示实施例中的相关描述内容,此处不再赘述。
本发明实施例中,转换单元501将接收到的数据转换为SCTP数据块,存入单元502将该SCTP数据块存入缓冲区,设置单元将该SCTP数据块的状态设置为待发送状态,判断单元504判断该缓冲区内是否存在处于待发送状态的其他SCTP数据块,若该缓冲区内存在处于待发送状态的其他SCTP数据块,则发送单元505则将该缓冲区内所有处于待发送状态的SCTP数据块一并发送,以减少网络中流控制传输协议消息的数量,若该缓冲区内不存在处于待发送状态的其他SCTP数据块,发送单元505则发送该SCTP数据块,避免等待其他数据,以降低传输时延,由此,根据网络状况,动态调整控制发送流控制传输协议数据的方式,在降低网络时延的同时提高网络负载量。
为便于理解,下面以另一实施例详细描述本发明实施例的数据处理装置,请参阅图6,本发明实施例中的数据处理装置的另一个实施例包括:
转换单元601,用于将接收到的数据转换为SCTP数据块(参见步骤101、201);
存入单元602,用于将该SCTP数据块存入缓冲区(参见步骤102、202);
设置单元603,用于将该SCTP数据块的状态设置为待发送状态(参见步骤102、202);还用于将SCTP包中的SCTP数据块的状态设置为待确认状态(参见步骤205);
判断单元604,用于判断该缓冲区内是否存在处于待发送状态的其他SCTP数据块(参见步骤103、203);还用于判断当前发送条件是否允许发送SCTP消息,该发送条件包括对端设备的拥塞窗口及接收窗口的大小(参见步骤204);
需要说明的是,本发明实例中的数据处理装置还可以进一步包括:组装单元605,获取单元606;
其中,组装单元605,用于若当前发送条件允许发送SCTP消息,则将缓冲区内所有处于待发送状态的SCTP数据块,组装为一个SCTP包(参见步骤207);还用于若当前发送条件允许发送SCTP消息,则将该SCTP数据块组装为一个SCTP包(参见步骤205);
获取单元606,用于获取该缓冲区内的另一个处于待发送状态的SCTP数据块(参见步骤208)。
进一步的,判断单元604,还用于判断当前发送条件是否允许SCTP消息中携带更多SCTP数据块,该发送条件包括对端设备的拥塞窗口及接收窗口的大小(参见步骤209),以及若当前发送条件不允许SCTP消息中携带更多SCTP数据块,则判断该SCTP包是否为空(参见步骤213);
组装单元605,还用于若当前发送条件允许SCTP消息中携带更多SCTP数据块,则将该另一个处于待发送状态的SCTP数据块组装至该SCTP包中(参见步骤210);
设置单元603,还用于将该另一个处于待发送状态的SCTP数据块的状态设置为待确认状态(参见步骤210);
判断单元604,还用于判断该缓冲区是否为空,若该缓冲区不为空,则还用于判断该SCTP包的大小是否达到最大传输单元的大小(参见步骤211、212);
获取单元606,还用于若SCTP包的大小达到最大传输单元的大小,则获取该缓冲区内的另一个处于待发送状态的SCTP数据块(参见步骤212)。
需要说明的是,本发明实例中的数据处理装置还可以进一步包括发送单元607;
发送单元607,用于若该SCTP包不为空,则发送该SCTP包以发送该SCTP数据块;若该缓冲区为空,则发送该SCTP包以发送该SCTP数据块;若SCTP包的大小未达到最大传输单元的大小,则发送该SCTP包以发送所述SCTP数据块(参见步骤212)。
本发明实施例中的各单元实现各自功能的具体过程,请参见前述图1、图4所示实施例中的相关描述内容,此处不再赘述。
本发明实施例中,转换单元601将接收到的数据转换为SCTP数据块,存入单元602将该SCTP数据块存入缓冲区,设置单元603将该SCTP数据块的状态设置为待发送状态,判断单元604判断该缓冲区内是否存在处于待发送状态的其他SCTP数据块,若不存在,则组装单元605将该SCTP数据块组装为一个SCTP包,并由设置单元603将该SCTP数据块的状态设置为待确认(WaitAck)状态,发送单元607发送该SCTP包以发送该SCTP数据块。
进一步的,判断单元604还用于判断当前发送条件是否允许发送SCTP消息,若该当前发送条件允许发送SCTP消息,且,缓冲区内不存在处于待发送状态的其他SCTP数据块,则组装单元605将该SCTP数据块组装为一个SCTP包,并由设置单元603将该SCTP数据块的状态设置为待确认状态。
若该当前发送条件允许发送SCTP消息,且,该缓冲区内存在处于待发送状态的其他SCTP数据块,则组装单元405将缓冲区内所有处于待发送状态的SCTP数据块,组装为一个SCTP包,获取单元606获取该缓冲区内的另一个处于待发送状态的SCTP数据块,判断单元604判断当前发送条件是否允许SCTP消息中携带更多流控制传输协议数据块,若是,则组装单元605将该另一个处于待发送状态的SCTP数据块组装至该SCTP中,并由设置单元603将其状态设置为待确认状态,而后,判断单元404判断缓冲区是否为空,若为空,则发送单元607发送该SCTP包以发送该SCTP数据块,若不为空,则判断单元604判断SCTP包的大小是否达到最大传输单元的大小,若达到,则发送单元607发送该SCTP包以发送该SCTP数据块,若未达到,则重复执行由获取单元606获取缓冲区内的另一个处于待发送状态的流控制传输协议数据块。
本发明实施例中,如果缓冲区内不存在处于待发送状态的其他SCTP数据块,则直接将当前处于待发送状态的SCTP数据块组装为一个SCTP数据包发送,如果缓冲区内存在处于待发送状态的其他SCTP数据块,则将缓冲区内所有处于待发送状态的SCTP数据块,组装为一个SCTP包,并将其状态设置为WaitAck状态,而后,获取缓冲区内的另一个处于待发送状态的SCTP数据块,判断当前的网络发送条件是否允许SCTP消息中携带更多SCTP数据块,如果允许,则将另一个处于待发送状态的SCTP数据块也组装至该SCTP包中,以一次发送更多的pending状态下的SCTP数据块,若此时SCTP包未超出MTU大小的限制,则重复获取另一个pending状态下的SCTP数据块步骤,以在同一个SCTP包中组装更多的SCTP数据块,直至SCTP包未达到MTU的大小,由此,在网络条件允许的情况下,在同一个SCTP包中组装更多的处于pending状态SCTP数据块,一次发送更多的处于pending状态SCTP数据块,可减少网络消息数量,而缓冲区内不存在处于待发送状态的其他SCTP数据块,则直接将当前处于待发送状态的SCTP数据块组装为一个SCTP数据包发送,并不等待缓冲区接收其他SCTP数据块后再一并发送,则可降低网络时延,因而可根据网络状态及SCTP数据块的状况,动态调整发送方式,在降低网络时延的同时提高网络负载量。
本发明实施例还提供了一种数据处理***,请参阅图7,本发明实施例中的数据处理***包括:
发送端设备701,网关设备702,接收端设备703;
其中,发送端设备701用于向网关设备702发送数据;
网关设备702,用于将接收到的数据转换为流控制传输协议数据块,将该流控制传输协议数据块存入缓冲区,并将该流控制传输协议数据块的状态设置为待发送状态,并判断该缓冲区内是否存在处于待发送状态的其他流控制传输协议数据块,若是,将该缓冲区内所有处于待发送状态的流控制传输协议数据块一并向接收端设备703发送,若否,向接收端设备703发送该流控制传输协议数据块;
接收端设备703,用于接收网关设备702发送的流控制传输协议数据块。
进一步的,网关设备702还用于判断当前发送条件是否允许发送流控制传输协议消息,若当前发送条件允许发送流控制传输协议消息,则将缓冲区内所有处于待发送状态的流控制传输协议数据块,组装为一个流控制传输协议包;将该流控制传输协议包中的流控制传输协议数据块的状态设置为待确认状态。
本发明实施例中的数据处理***的功能实现过程,请参阅前述图1、图2所示实施例中的具体描述内容,此处不再赘述。
本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上对本发明所提供的一种数据处理方法、装置及***进行了详细介绍,对于本领域的技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (12)
1.一种数据处理方法,其特征在于,包括:
将接收到的数据转换为流控制传输协议数据块;
将所述流控制传输协议数据块存入缓冲区,并将所述流控制传输协议数据块的状态设置为待发送状态;
判断所述缓冲区内是否存在处于待发送状态的其他流控制传输协议数据块,若是,则将所述缓冲区内所有处于待发送状态的流控制传输协议数据块一并发送,若否,则发送所述流控制传输协议数据块。
2.根据权利要求1所述的方法,其特征在于,所述若缓冲区内存在处于待发送状态的其他流控制传输协议数据块之后包括:
判断当前发送条件是否允许发送流控制传输协议消息,所述发送条件包括对端设备的拥塞窗口及接收窗口的大小;
若当前发送条件允许发送流控制传输协议消息,则将缓冲区内所有处于待发送状态的流控制传输协议数据块,组装为一个流控制传输协议包;
将所述流控制传输协议包中的流控制传输协议数据块的状态设置为待确认状态。
3.根据权利要求2所述的方法,其特征在于,所述将流控制传输协议数据块的状态设置为待确认状态之后包括:
获取所述缓冲区内的另一个处于待发送状态的流控制传输协议数据块;
判断当前发送条件是否允许流控制传输协议消息中携带更多流控制传输协议数据块,所述发送条件包括对端设备的拥塞窗口及接收窗口的大小;
若是,则将所述另一个处于待发送状态的流控制传输协议数据块组装至所述流控制传输协议包中,并将所述另一个处于待发送状态的流控制传输协议数据块的状态设置为待确认状态;
若否,则判断所述流控制传输协议包是否为空,若不为空,则发送所述流控制传输协议包以发送所述流控制传输协议数据块。
4.根据权利要求3所述的方法,其特征在于,所述将另一个处于待发送状态的流控制传输协议数据块的状态设置为待确认状态之后包括:
判断所述缓冲区是否为空;
若是,则发送所述流控制传输协议包以发送所述流控制传输协议数据块;
若否,则判断所述流控制传输协议包的大小是否达到最大传输单元的大小,若未达到,则获取所述缓冲区内的另一个处于待发送状态的流控制传输协议数据块,若达到,则发送所述流控制传输协议包以发送所述流控制传输协议数据块。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述若缓冲区内不存在处于待发送状态的其他流控制传输协议数据块之后包括:
判断当前发送条件是否允许发送流控制传输协议消息,所述发送条件包括对端设备的拥塞窗口及接收窗口的大小;
若是,则将所述流控制传输协议数据块组装为一个流控制传输协议包,并将所述流控制传输协议包中的流控制传输协议数据块的状态设置为待确认状态;
发送所述流控制传输协议包以发送所述流控制传输协议数据。
6.一种数据处理装置,其特征在于,包括:
转换单元,用于将接收到的数据转换为流控制传输协议数据块;
存入单元,用于将所述流控制传输协议数据块存入缓冲区;
设置单元,用于将所述流控制传输协议数据块的状态设置为待发送状态;
判断单元,用于判断所述缓冲区内是否存在处于待发送状态的其他流控制传输协议数据块;
发送单元,用于若所述缓冲区内存在处于待发送状态的其他流控制传输协议数据块,则将所述缓冲区内所有处于待发送状态的流控制传输协议数据块一并发送,若所述缓冲区内不存在处于待发送状态的其他流控制传输协议数据块,则发送所述流控制传输协议数据块。
7.根据权利要求6所述的装置,其特征在于,
所述判断单元,还用于判断当前发送条件是否允许发送流控制传输协议消息,所述发送条件包括对端设备的拥塞窗口及接收窗口的大小;
所述装置还包括:
组装单元,用于若当前发送条件允许发送流控制传输协议消息,则将缓冲区内所有处于待发送状态的流控制传输协议数据块,组装为一个流控制传输协议包;
所述设置单元,还用于将所述流控制传输协议包中的流控制传输协议数据块的状态设置为待确认状态。
8.根据权利要求6或7所述的装置,其特征在于,
所述装置还包括:
获取单元,用于获取所述缓冲区内的另一个处于待发送状态的流控制传输协议数据块;
所述判断单元,还用于判断当前发送条件是否允许流控制传输协议消息中携带更多流控制传输协议数据块,所述发送条件包括对端设备的拥塞窗口及接收窗口的大小;以及若当前发送条件不允许流控制传输协议消息中携带更多流控制传输协议数据块,则判断所述流控制传输协议包是否为空;
所述组装单元,还用于若当前发送条件允许流控制传输协议消息中携带更多流控制传输协议数据块,则将所述另一个处于待发送状态的流控制传输协议数据块组装至所述流控制传输协议包中;
所述设置单元,还用于将所述另一个处于待发送状态的流控制传输协议数据块的状态设置为待确认状态;
所述发送单元,用于若所述流控制传输协议包不为空,则发送所述流控制传输协议包以发送所述流控制传输协议数据块。
9.根据权利要求8所述的装置,其特征在于,
所述判断单元,还用于判断所述缓冲区是否为空;若所述缓冲区不为空,则还用于判断所述流控制传输协议包的大小是否达到最大传输单元的大小;
所述发送单元,还用于若所述缓冲区为空,则发送所述流控制传输协议包以发送所述流控制传输协议数据块;还用于若所述流控制传输协议包的大小达到最大传输单元的大小,则发送所述流控制传输协议包以发送所述流控制传输协议数据块;
所述获取单元,用于若所述流控制传输协议包的大小未达到最大传输单元的大小,则获取所述缓冲区内的另一个处于待发送状态的流控制传输协议数据块。
10.根据权利要求9所述的装置,其特征在于,
所述组装单元,还用于判断单元判断当前发送条件允许发送流控制传输协议消息,则将所述流控制传输协议数据块组装为一个流控制传输协议包。
11.一种数据处理***,其特征在于,包括:发送端设备,网关设备以及接收端设备,其中:
所述发送端设备用于向所述网关设备发送数据;
所述网关设备用于将接收到的数据转换为流控制传输协议数据块;将所述流控制传输协议数据块存入缓冲区,并将所述流控制传输协议数据块的状态设置为待发送状态;判断所述缓冲区内是否存在处于待发送状态的其他流控制传输协议数据块,若是,将所述缓冲区内所有处于待发送状态的流控制传输协议数据块一并向所述接收端设备发送,若否,向所述接收端设备发送所述流控制传输协议数据块;
所述接收端设备用于接收所述网关设备发送的所述流控制传输协议数据块。
12.根据权利要求11所述的***,其特征在于,
所述网关设备还用于判断当前发送条件是否允许发送流控制传输协议消息,所述发送条件包括对端设备的拥塞窗口及接收窗口的大小;若当前发送条件允许发送流控制传输协议消息,则将缓冲区内所有处于待发送状态的流控制传输协议数据块,组装为一个流控制传输协议包;将所述流控制传输协议包中的流控制传输协议数据块的状态设置为待确认状态。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110459775.1A CN102546626B (zh) | 2011-12-31 | 2011-12-31 | 一种数据处理方法、装置及*** |
PCT/CN2012/086537 WO2013097611A1 (zh) | 2011-12-31 | 2012-12-13 | 一种数据处理方法、装置及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110459775.1A CN102546626B (zh) | 2011-12-31 | 2011-12-31 | 一种数据处理方法、装置及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102546626A CN102546626A (zh) | 2012-07-04 |
CN102546626B true CN102546626B (zh) | 2014-11-05 |
Family
ID=46352584
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110459775.1A Active CN102546626B (zh) | 2011-12-31 | 2011-12-31 | 一种数据处理方法、装置及*** |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN102546626B (zh) |
WO (1) | WO2013097611A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546626B (zh) * | 2011-12-31 | 2014-11-05 | 华为技术有限公司 | 一种数据处理方法、装置及*** |
CN104967570B (zh) * | 2015-07-13 | 2018-09-18 | 宁波尚为信息技术有限公司 | 一种智能北斗路由器 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007065296A1 (fr) * | 2005-12-07 | 2007-06-14 | Zte Corporation | Procede pour la gestion de file d'attente flux de sortie sctp et de mise en oeuvre de transmission de donnees |
CN101217466A (zh) * | 2007-12-28 | 2008-07-09 | 中国科学院计算技术研究所 | 无线网络媒体接入控制***数据处理方法及处理装置 |
CN101262437A (zh) * | 2008-04-17 | 2008-09-10 | 中兴通讯股份有限公司 | 一种流控制传输协议状态迁移的方法 |
CN101651687A (zh) * | 2009-09-14 | 2010-02-17 | 华为技术有限公司 | 一种流控传输协议数据包的组包方法、发送方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546626B (zh) * | 2011-12-31 | 2014-11-05 | 华为技术有限公司 | 一种数据处理方法、装置及*** |
-
2011
- 2011-12-31 CN CN201110459775.1A patent/CN102546626B/zh active Active
-
2012
- 2012-12-13 WO PCT/CN2012/086537 patent/WO2013097611A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007065296A1 (fr) * | 2005-12-07 | 2007-06-14 | Zte Corporation | Procede pour la gestion de file d'attente flux de sortie sctp et de mise en oeuvre de transmission de donnees |
CN101217466A (zh) * | 2007-12-28 | 2008-07-09 | 中国科学院计算技术研究所 | 无线网络媒体接入控制***数据处理方法及处理装置 |
CN101262437A (zh) * | 2008-04-17 | 2008-09-10 | 中兴通讯股份有限公司 | 一种流控制传输协议状态迁移的方法 |
CN101651687A (zh) * | 2009-09-14 | 2010-02-17 | 华为技术有限公司 | 一种流控传输协议数据包的组包方法、发送方法及装置 |
Non-Patent Citations (2)
Title |
---|
SCTP的设计与实现;童孟军等;《计算机应用与软件》;20060731;第23卷(第7期);第2.5节 * |
童孟军等.SCTP的设计与实现.《计算机应用与软件》.2006,第23卷(第7期),第74-77页. * |
Also Published As
Publication number | Publication date |
---|---|
WO2013097611A1 (zh) | 2013-07-04 |
CN102546626A (zh) | 2012-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102006283B (zh) | 数据传输的方法和装置 | |
JP5976277B2 (ja) | 伝送制御方法 | |
EP1535419B1 (en) | Method and devices for controlling retransmissions in data streaming | |
Xu et al. | CMT-NC: improving the concurrent multipath transfer performance using network coding in wireless networks | |
CN100407698C (zh) | 无线链路控制层的数据传输方法 | |
JP5117509B2 (ja) | ジッタバッファ実装のための最大スケジューリング遅延を示す方法および装置 | |
CN102148662B (zh) | 一种数据发送速率的调整方法及装置 | |
WO2013053304A1 (zh) | 一种实现tcp传输的方法及装置 | |
CN105264843A (zh) | 在通信设备中管理待发送的确认数据包 | |
CN107204834A (zh) | 一种基于udt协议的高速网络可靠传输的控制方法 | |
CN110460533B (zh) | 基于rdma的数据传输方法及装置 | |
CA2674655A1 (en) | Improved data transfer method, system and protocol | |
WO2012129922A1 (zh) | 一种报文处理方法、转发设备及*** | |
CN101854286B (zh) | 基于用户数据报协议的数据流发送、接收方法及装置 | |
CN104093170A (zh) | 基于tcp的数据传输方法和tcp代理装置 | |
CN103444242A (zh) | 一种用于帧确认的方法和装置 | |
WO2017133234A1 (zh) | 数据包发送方法、接收方法、发送装置及接收装置 | |
CN103200622A (zh) | 一种通信处理方法、装置及网关设备 | |
GB2513345A (en) | Data communication system and method | |
EP3078174A1 (en) | Sctp bundling | |
WO2005020523A1 (ja) | セッション中継装置及び中継方法 | |
CN102801692B (zh) | 一种基于***连接的传输控制协议优化方法及*** | |
CN102263618B (zh) | 无线网络拥塞控制方法、装置及*** | |
CN102546626B (zh) | 一种数据处理方法、装置及*** | |
CN104580171B (zh) | Tcp协议的传输方法、装置和*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20211220 Address after: 450046 Floor 9, building 1, Zhengshang Boya Plaza, Longzihu wisdom Island, Zhengdong New Area, Zhengzhou City, Henan Province Patentee after: Super fusion Digital Technology Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |
|
TR01 | Transfer of patent right |