CN108432194B - 一种拥塞处理的方法、主机及系统 - Google Patents
一种拥塞处理的方法、主机及系统 Download PDFInfo
- Publication number
- CN108432194B CN108432194B CN201680077885.2A CN201680077885A CN108432194B CN 108432194 B CN108432194 B CN 108432194B CN 201680077885 A CN201680077885 A CN 201680077885A CN 108432194 B CN108432194 B CN 108432194B
- Authority
- CN
- China
- Prior art keywords
- congestion
- flow
- identifier
- host
- packet
- 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
Images
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/19—Flow control; Congestion control at layers above the network layer
- H04L47/196—Integration of transport layer protocols, e.g. TCP and UDP
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- 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/11—Identifying congestion
-
- 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/12—Avoiding congestion; Recovering from congestion
-
- 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/24—Traffic characterised by specific attributes, e.g. priority or QoS
-
- 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/25—Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
-
- 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/26—Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
- H04L47/263—Rate modification at the source after receiving feedback
-
- 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/31—Flow control; Congestion control by tagging of packets, e.g. using discard eligibility [DE] bits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/625—Queue scheduling characterised by scheduling criteria for service slots or service orders
- H04L47/6275—Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种拥塞处理的方法,该方法涉及数据传输系统,数据传输系统包括源主机、路由器和目的主机,源主机、路由器和目的主机之间的传输链路上承载有多条流,多条流中的每条流都配置有传输优先级,该方法包括:源主机按照每条流的发送速率,在每个流上发送资源数据包,在路由器确定传输链路拥塞时,资源数据包被路由器设置拥塞标识;从每条流上接收路由器转发的响应数据包,其中,至少一条流上的至少一个响应数据包中包含拥塞通知标识,根据拥塞通知标识,按照每条流的传输优先级进行拥塞处理。本发明实施例提供的拥塞处理的方法,不仅减轻了传输链路拥塞,提高数据传输效率,而且保证了高优先级流上数据的传输。
Description
技术领域
本发明涉及通信技术领域,具体涉及一种拥塞处理的方法、主机及系统。
背景技术
用户数据报协议(User Datagram Protocol,UDP)是一种无连接的传输层协议,快速用户数据报协议互联网连接(Quick UDP Internet Connection,QUIC)是基于UDP的,且用于实现多路复用以及安全性保护的传输协议。
因网络资源是有限的,因此基于UDP的Quick数据包的传输也经常会发生拥塞。
现有技术中,针对基于UDP的Quick数据包的传输拥塞,现有技术中还没有相应的拥塞处理方案。
发明内容
为了解决现有技术中基于UDP的Quick数据包的传输拥塞问题,本发明实施例提供一种拥塞处理的方法,可以按照流的传输优先级进行拥塞处理,从而减轻传输链路拥塞,提高数据传输效率。本发明实施例还提供了相应的主机及系统。
本发明第一方面提供一种拥塞处理的方法,该方法涉及数据传输系统,该数据传输系统包括源主机、路由器和目的主机,源主机、路由器和目的主机之间的传输链路上承载有多条流,多条流中的每条流都配置有传输优先级,其中,源主机和目的主机之间的路由器可以有多个,一个源主机也可能会对应多个目的主机,一个目的主机也可能会对应多个源主机,该拥塞处理的方法包括:源主机按照每条流的发送速率,在每个流上发送资源数据包,在路由器确定传输链路拥塞时,资源数据包被路由器设置拥塞标识;源主机从每条流上接收路由器转发的响应数据包,响应数据包为所述目的主机发出的,其中,至少一条流上的至少一个所述响应数据包中包含拥塞通知标识,所述拥塞通知标识用于通知所述源主机所述传输链路已拥塞;源主机根据该拥塞通知标识,按照所述每条流的传输优先级进行拥塞处理,并在待发送的资源数据包中添加拥塞已处理标识,所述拥塞已处理标识用于通知目的主机所述传输链路拥塞已处理。从上述第一方面的描述可以看出,针对QUIC数据包可以进行拥塞处理,这样,不仅减轻了传输链路拥塞,提高数据传输效率,而且按照流的传输优先级进行拥塞处理,进一步保证了高优先级流上数据的传输,确保了重要用户的体验。
结合第一方面,在第一种可能的实现方式中,上述按照所述每条流的传输优先级进行拥塞处理,包括:根据每条流的传输优先级,降低传输优先级低于预设门限的各条流的发送速率。从上述第一方面第一种可能的实现方式中可以看出,降低传输优先级较低的流的发送速率,既能解决拥塞,又能保证高传输优先级的流上数据包的发送,保证了用户体验。
结合第一方面,在第二种可能的实现方式中,上述按照所述每条流的传输优先级进行拥塞处理,包括:根据每条流的传输优先级,按照传输优先级的从高到低顺序,按照从低到高的阶梯降低所述每条流的发送速率,传输优先级高的流的速率降低量低于传输优先级低的流的速率降低量。从上述第一方面第二种可能的实现方式中可以看出,针对传输优先级高的流少降低速率,针对传输优先级低的流多降低发送速率,也可以既能解决拥塞,又能保证高传输优先级的流上数据包的发送,保证了用户体验。
结合第一方面,在第三种可能的实现方式中,上述按照所述每条流的传输优先级进行拥塞处理,包括:当接收到所述目的主机发送的拥塞通知次数未达到预设阈值时,渐进式降低所述每条流的发送速率;当接收到所述目的主机发送的拥塞通知次数达到所述预设阈值时,阶梯式降低所述每条流的发送速率。从上述第一方面第三种可能的实现方式中可以看出,当接收到拥塞通知的次数较少时,可以渐进式降低流的发送速率,如果只降低很少的量就可以缓解拥塞,则不会对数据包的发送造成太多影响,若接收到拥塞通知的次数达到预设阈值,则说明拥塞较严重,需要尽快解决拥塞,则需要大幅度的降低流的发送速率。
结合第一方面、第一方面第一种至第三种中任一可能的实现方式,上述源主机在待发送的资源数据包中添加拥塞已处理标识,包括:源主机在待发送的资源数据包的包头中的空闲比特位上添加拥塞已处理标识。从上述第一方面第四种可能的实现方式中可以看出,在空闲比特位上添加拥塞标识,可以提高资源数据包中现有资源的利用率。
本发明第二方面提高一种拥塞处理的方法,该方法涉及数据传输系统,该数据传输系统包括源主机、路由器和目的主机,源主机、路由器和目的主机之间的传输链路上承载有多条流,多条流中的每条流都配置有传输优先级,该方法包括:目的主机从每条流上接收路由器转发的资源数据包,资源数据包是源主机发出的,并在路由器确定传输链路拥塞时,资源数据包被所述路由器设置了拥塞标识;目的主机根据所述拥塞标识,在至少一条流所对应的待发送的至少一个响应数据包中设置拥塞通知标识,并在至少一条流上发送已设置拥塞通知标识的响应数据包,拥塞通知标识用于指示所述源主机所述传输链路已拥塞;目的主机接收到包含拥塞已处理标识的资源数据包时,停止在待发送的响应数据包中设置拥塞通知标识。从上述第二方面的描述可以看出,针对QUIC数据包可以进行拥塞处理,这样,不仅减轻了传输链路拥塞,提高数据传输效率,而且按照流的传输优先级进行拥塞处理,进一步保证了高优先级流上数据的传输,确保了重要用户的体验。
结合第二方面,在第一种可能的实现方式中,上述在至少一条流所对应的待发送的至少一个响应数据包中设置拥塞通知标识,包括:在至少一条流所对应的所述待发送的至少一个响应数据包的拥塞通知标识位上设置拥塞通知标识,该拥塞通知标识位为待发送的响应数据包的包头中的一个空闲比特位;对应的,所述拥塞已处理标识位于包含拥塞已处理标识的所述资源数据包的包头中的一个空闲比特位上。从上述第二方面第一种可能的实现方式中可以看出,在空闲比特位上添加拥塞标识或拥塞已处理标识,可以提高资源数据包中现有资源的利用率。
结合第二方面,在第二种可能的实现方式中,上述在至少一条流所对应的待发送的至少一个响应数据包中包含拥塞通知帧,所述拥塞通知帧中包含拥塞通知标识;对应的,所述拥塞已处理标识位于包含拥塞已处理标识的所述资源数据包的包头中的一个空闲比特位上,或者,包含拥塞已处理标识的所述资源数据包中包含拥塞已处理帧,所述拥塞已处理帧中包含拥塞已处理标识。从上述第二方面第二种可能的实现方式中可以看出,可以通过拥塞通知帧的方式进行拥塞通知,增加了拥塞通知的形式。
结合第二方面、第二方面第一种或第二种可能的实现方式,上述在至少一条流所对应的待发送的至少一个响应数据包中设置拥塞通知标识,并在所述至少一条流上发送已设置拥塞通知标识的响应数据包,包括:目的主机在传输优先级最高的流所对应的待发送的响应数据包中设置拥塞通知标识,并在所述传输优先级最高的流上发送已设置拥塞通知标识的响应数据包。从上述第二方面第三种可能的实现方式中可以看出,通过传输优先级最高的流发送包含拥塞通知标识的响应数据包,可以使源主机快速接收到拥塞通知标识,可以加快拥塞处理的速度。
本发明第三方面提供一种主机,该一种主机被配置实现上述第一方面或第一方面任一可选的实现方式所提供的方法的功能,由硬件/软件实现,其硬件/软件包括与上述功能相应的单元。
本发明第四方面提供一种主机,该一种主机被配置实现上述第二方面或第二方面任一可选的实现方式所提供的方法的功能,由硬件/软件实现,其硬件/软件包括与上述功能相应的单元。
本发明第五方面提供一种计算机存储介质,该计算机存储介质存储有上述第一方面或第一方面任一可选的实现方式的拥塞处理的程序。
本发明第六方面提供一种计算机存储介质,该计算机存储介质存储有上述第二方面或第二方面任一可选的实现方式的拥塞处理的程序。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例中数据传输系统的一实施例示意图;
图2是本发明实施例中QUIC协议栈的一示意图;
图3是本发明实施例中拥塞处理的方法的一实施例示意图;
图4是本发明实施例中IP头域支持ECN能力协商的原理示意图;
图5是本发明实施例中QUIC数据包的包头中的空闲比特位支持ECN能力协商的原理示意图;
图6是本发明实施例中包含拥塞通知标识的数据结构示意图;
图7是本发明实施例中包含拥塞已处理标识的数据结构示意图;
图8是本发明实施例中拥塞通知帧的一数据结构示意图;
图9是本发明实施例中拥塞通知帧的另一数据结构示意图;
图10是本发明实施例中拥塞通知帧的另一数据结构示意图;
图11是本发明实施例中拥塞已处理通知帧的一数据结构示意图;
图12是本发明实施例中主机的一实施例示意图;
图13是本发明实施例中主机的另一实施例示意图;
图14是本发明实施例中主机的另一实施例示意图;
图15是本发明实施例中主机的另一实施例示意图。
具体实施方式
本发明实施例提供一种拥塞处理的方法,可以按照流的传输优先级进行拥塞处理,从而减轻传输链路拥塞,提高数据传输效率。本发明实施例还提供了相应的主机及系统。以下分别进行详细说明。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例中数据传输系统的一实施例示意简图。
如图1所示,本发明实施例提供的数据传输系统包括:源主机、路由器和目的主机,源主机和目的主机可以是用户设备,也可以是服务器,图1中以源主机是服务器,目的主机是用户设备为例进行说明。实际上,目的主机和路由器之间还包括基站和网关等通信设备,基站和网关所起的作用在本发明实施例中与现有技术相同,因此,在图1中未一一画出。而且路由器也不限于图1中的一个,实际上路由器可以有很多个,只是每个路由器的功能和原理基本一致,本申请中只以一个为例进行说明,但不应理解为是对路由器数量的限定。而且,一个源主机也可能会对应多个目的主机,一个目的主机也可能会对应多个源主机,本申请实施例中是以图1所示的一个源主机和一个目的主机的形式为例进行说明。
图1所示的源主机、路由器和目的主机之间的传输链路上承载有多条流,所述多条流中的每条流都配置有传输优先级。其中,传输链路是指源主机、路由器和目的主机之间的传输链路。
需要说明的是,本发明实施例中的流可以与方向性无关,而和资源对象有关。例如:用户设备通过浏览器客户端去访问服务器上一个图片,在这条流上客户端给服务器发送的请求数据包和服务器给客户端回复的资源数据包都属于同一流。
可以认为对一个数据对象的请求的回复可以归属于一条流。一个数据对象如一幅图片、一个视频或一个文本。一个QUIC连接上可能会有多条流在并行传输,且各个流优先级可以不同。
一条流上可传输用户设备的请求数据包,服务器的资源数据包,以及用户设备接收到资源数据包后发送的响应数据包。本申请中所提到的数据包为QUIC数据包。
每条流的发送速率可以相同也可以不同。流的发送速率也就是该条流上数据包的发送速率。发送速率大则相同时间长度内数据包的发送数量多,发送速率小则相同时间长度内数据包的发送数量少。
本发明实施例适用于对快速用户数据报协议互联网连接(Quick UDP InternetConnection,QUIC)数据传输的拥塞处理。QUIC是基于用户数据报协议(User DatagramProtocol,UDP)的,用于实现多路复用以及安全性保护的传输协议。图2为本发明实施例中通信协议栈示意图。如图2所示,通信协议栈包括应用层、传输层和网络层,UDP位于传输层,QUIC是基于UDP的,介于传输层与应用层之间。
下面结合图1所描述的数据传输系统和图3所示的拥塞处理的过程说明数据传输系统中出现链路拥塞时,对拥塞处理的过程。
101、源主机按照所述每条流的发送速率,在所述每个流上发送资源数据包。
102、路由器从每条流上接收资源数据包后,若确定传输链路拥塞,则将在资源数据包中设置拥塞标识,得到包含拥塞标识的资源数据包。
若路由器确定传输链路不拥塞,则正常转发该资源数据包。
103、路由器再发送包含拥塞标识的资源数据包。
若传输链路中在该路由器之后还有其他路由器,后续的其他路由器不再修改该包含拥塞标识的资源数据包。
104、目的主机接收到包含拥塞标识的资源数据包后,根据包含拥塞标识的资源数据包中的拥塞标识,获知传输链路拥塞,则在待发送的响应数据包中设置拥塞通知标识。
若目的主机接收到的多条流的资源数据包中都包含拥塞标识,则可以确定其中至少一条流用来传输拥塞通知标识,这样,只需要在确定的至少一条流的响应数据包中添加拥塞通知标识即可。例如:可以选择传输优先级最高的流来传输拥塞通知标识,这样,源主机可以更快的获知传输链路拥塞。
源主机可以在至少一条流所对应的待发送的至少一个响应数据包中设置拥塞通知标识。
105、目的主机发送该包含拥塞通知标识的响应数据包。
106、源主机接收到该包含拥塞通知标识的响应数据包后,获知传输链路拥塞,则会进行拥塞处理。
可以是通过减少资源数据包的发送量来处理拥塞。
107、源主机在待发送的资源数据包中添加拥塞已处理标识,所述拥塞已处理标识用于通知所述目的主机所述传输链路拥塞已处理。
源主机可以在待发送的资源数据包的包头中的空闲比特位上添加拥塞已处理标识。
108、源主机发送包含拥塞已处理标识的资源数据包。
目的主机接收到包含拥塞已处理标识的资源数据包后,根据拥塞已处理标识,获知传输链路拥塞已处理,则在后续发送的响应数据包中不再设置拥塞通知标识。
本发明实施例提供的拥塞处理的方法,针对QUIC数据包可以进行拥塞处理,这样,不仅减轻了传输链路拥塞,提高数据传输效率,而且本发明实施例中按照流的传输优先级进行拥塞处理,进一步保证了高优先级流上数据的传输,确保了重要用户的体验。
实际上,在进行QUIC数据包传输之前,源主机、路由器和目的主机会进行ECN能力协商,在确定源主机、路由器和目的主机都支持显式拥塞通知(Explicit CongestionNotification,ECN)后,才会执行上述所描述的拥塞处理过程。
ECN能力协商可以通过多种方式实现,如在QUIC握手阶段,通过QUIC数据包的包头中的空闲比特位用于ECN能力协商,如:包头中公共标识Public Flags的前两位处于空闲状态,则可以使用Public Flags的前两个比特位。也可以是通过扩展QUIC握手阶段Clienthello和Server hello携带的Tag,增加ECN Tag和ECN Tag value。
图4为本发明实施例中IP头域支持ECN能力协商的原理示意图。
如图4所示,在IP头域中包括8个比特位,其中不同服务码点(DifferentiatedServices Codepoint,DSCP)占用6个比特位,还剩余两个空闲比特位,可以作为ECN域FIELD用于ECN能力协商。ECN FIELD的两个比特位都是00时,表示发送该数据包的主机不支持ECN,是01或10时,表示发送该数据包的主机支持ECN,是11是表示传输链路正在经历拥塞。
图5为本发明实施例中在握手阶段通过QUIC数据包的包头中Public Flags的空闲比特位支持ECN能力协商的原理示意图。
如图5所示,Public Flags中包含2个空闲比特位,可以作为ECN FIELD,用于ECN能力协商。ECN FIELD的两个比特位都是00时,表示发送该数据包的主机不支持ECN,是01或10时,表示发送该数据包的主机支持ECN,是11是表示传输链路正在经历拥塞。
另外,在握手阶段,可以通过扩展Tag支持ECN能力协商。
ECN Tag value:1表示支持ECN能力,0表示不支持ECN能力。
本发明实施例中,步骤102中路由器在资源数据包中设置拥塞标识,可以是将资源数据包中的ECN FIELD的两个比特位都设置为11,得到包含拥塞标识的资源数据包。
步骤104中,目的主机接收到包含拥塞标识的资源数据包后,从ECN FIELD比特位上读取到11,则获知传输链路拥塞,则会在待发送的响应数据包中设置拥塞通知标识。如图6所示,该拥塞通知标识可以设置的ECN FIELD的拥塞通知标识位上,例如:通过ECN-Echo作为拥塞通知标识,在ECN FIELD的拥塞通知标识位上设置ECN-Echo。
步骤106中,源主机接收到该包含拥塞通知标识的响应数据包后,读取ECN-Echo后,获知传输链路拥塞,则会处理拥塞,处理拥塞的方法可以是降低流的发送速率。
按照所述每条流的传输优先级进行拥塞处理的具体方法可以包括如下三种方案:
方案一:根据所述每条流的传输优先级,降低所述传输优先级低于预设门限的各条流的发送速率。
方案一中,降低传输优先级较低的流的发送速率,既能解决拥塞,又能保证高传输优先级的流上数据包的发送,保证了用户体验。
方案二:根据所述每条流的传输优先级,按照所述传输优先级的从高到低顺序,按照从低到高的阶梯降低所述每条流的发送速率,传输优先级高的流的速率降低量低于传输优先级低的流的速率降低量。
方案二中,针对传输优先级高的流少降低速率,针对传输优先级低的流多降低发送速率,也可以既能解决拥塞,又能保证高传输优先级的流上数据包的发送,保证了用户体验。
方案三:当接收到所述目的主机发送的拥塞通知次数未达到预设阈值时,渐进式降低所述每条流的发送速率;
当接收到所述目的主机发送的拥塞通知次数达到所述预设阈值时,阶梯式降低所述每条流的发送速率。
方案三中,当接收到拥塞通知的次数较少时,可以渐进式降低流的发送速率,如果只降低很少的量就可以缓解拥塞,则不会对数据包的发送造成太多影响,若接收到拥塞通知的次数达到预设阈值,则说明拥塞较严重,需要尽快解决拥塞,则需要大幅度的降低流的发送速率。
以上三种方案也可以结合使用。
步骤107中,源主机处理拥塞后,会在至少一条流所对应的待发送的响应数据包中设置拥塞通知标识。拥塞已处理标识如图7所示,可以设置在拥塞已处理标识位上。拥塞已处理标识可以用CWR来表示。目的主机接收到包含拥塞已处理标识的资源数据包后,读取CWR,获知源主机已处理拥塞。在后续发送的响应数据包中,就不再设置图6所示的拥塞通知标识。
所述在至少一条流所对应的待发送的响应数据包中设置拥塞通知标识,并发送包含拥塞通知标识的响应数据包包括如下三种方案:
方案一:在至少一条流所对应的所述待发送的至少一个响应数据包的拥塞通知标识位上设置所述拥塞通知标识,所述拥塞通知标识位为所述待发送的响应数据包的包头中的一个空闲比特位;
对应的,所述拥塞已处理标识位于包含拥塞已处理标识的所述资源数据包的包头中的一个空闲比特位上。
方案二:在至少一条流所对应的待发送的至少一个响应数据包中包含拥塞通知帧,所述拥塞通知帧中包含拥塞通知标识;
对应的,所述拥塞已处理标识位于包含拥塞已处理标识的所述资源数据包的包头中的一个空闲比特位上,或者,包含拥塞已处理标识的所述资源数据包中包含拥塞已处理帧,所述拥塞已处理帧中包含拥塞已处理标识。
方案三:在传输优先级最高的流所对应的待发送的至少一个响应数据包中设置拥塞通知标识,并在所述传输优先级最高的流上发送已设置拥塞通知标识的响应数据包。
方案三中,通过传输优先级最高的流发送包含拥塞通知标识的响应数据包,可以使源主机快速接收到拥塞通知标识,可以加快拥塞处理的速度。
实际上,在步骤105中,目的主机还可以通过拥塞通知帧的形式来通知源主机传输链路拥塞。
拥塞通知帧可以包括图8至图10几种形式。
如图8所示,图8为对WINDOW_UPDATE Frame的扩展。
在现有的WINDOW_UPDATE Frame上扩展13-16号比特位作为拥塞码位,可以用扩展的WINDOW_UPDATE Frame中congestion code来标识拥塞通知,源主机接收到包含有congestion code的数据包,就会进行拥塞处理。
同样,拥塞通知帧的形式还可以是如图9和图10所示的形式,以独立的拥塞通知帧的形式存在,不需要依附对现有帧的扩展。如图9所示,5-7号比特位为拥塞码位。如图10所示,5-7号比特位为显示拥塞通知(ECN)码位。
目的主机还可以新建一个专用拥塞通知的流stream,优先级可以设置的比较高,以保证能快速通知到源主机,这个stream用来传输如图8至图10所示的拥塞通知帧。
源主机接收到拥塞通知帧后,会根据各数据流的优先级,优先减小低优先级的stream的发送速率;当接收到多个目的主机发送的拥塞通知,并且通知次数未达到阈值,则可以渐进式减小各数据流的发送速率;若拥塞通知次数达到阈值之后,则拥塞窗口阶梯性调整,如窗口减半。
源主机处理拥塞后,会发送包含拥塞已处理标识的资源数据包,以通知目的主机拥塞以处理,拥塞已处理的通知方式可以是图7所对应的方式,还可以是如图11所示的专门的拥塞已处理通知帧。
参阅图12,本发明实施例提供的主机20为数据传输系统中的源主机,该数据传输系统还路由器和目的主机,所述源主机、所述路由器和所述目的主机之间的传输链路上承载有多条流,所述多条流中的每条流都配置有传输优先级,主机20的一实施例包括:
发送单元201,用于按照所述每条流的发送速率,在所述每个流上发送资源数据包,在所述路由器确定所述传输链路拥塞时,在所述资源数据包中设置拥塞标识;
接收单元202,用于分别从所述每条流上接收所述路由器转发的各响应数据包,所述各响应数据包为所述目的主机发出的,其中,至少一条流上的至少一个响应数据包中包含拥塞通知标识,所述拥塞通知标识用于通知所述源主机所述传输链路已拥塞;
拥塞处理单元203,用于根据所述接收单元202接收的所述拥塞通知标识,按照所述每条流的传输优先级进行拥塞处理,并在待发送的资源数据包中添加拥塞已处理标识,所述拥塞已处理标识用于通知所述目的主机所述传输链路拥塞已处理。
本发明实施例提供的源主机,针对QUIC数据包可以进行拥塞处理,这样,不仅减轻了传输链路拥塞,提高数据传输效率,而且本发明实施例中按照流的传输优先级进行拥塞处理,进一步保证了高优先级流上数据的传输,确保了重要用户的体验。
可选地,所述拥塞处理单元203,具体用于根据所述每条流的传输优先级,降低所述传输优先级低于预设门限的各条流的发送速率。
可选地,所述拥塞处理单元203,具体用于根据所述每条流的传输优先级,按照所述传输优先级的从高到低顺序,按照从低到高的阶梯降低所述每条流的发送速率,传输优先级高的流的速率降低量低于传输优先级低的流的速率降低量。
可选地,所述拥塞处理单元203,具体用于当接收到所述目的主机发送的拥塞通知次数未达到预设阈值时,渐进式降低所述每条流的发送速率;当接收到所述目的主机发送的拥塞通知次数达到所述预设阈值时,阶梯式降低所述每条流的发送速率。
可选地,所述拥塞处理单元203,具体用于在待发送的资源数据包的包头中的空闲比特位上添加拥塞已处理标识。
主机20所涉及的内容可以参阅图1-图11中源主机所执行的步骤进行理解,本处不做过多赘述。
参阅图13,本发明实施例提供的主机30为数据传输系统的目的主机,所述数据传输系统还包括源主机和路由器,所述源主机、所述路由器和所述目的主机之间的传输链路上承载有多条流,所述多条流中的每条流都配置有传输优先级,所述目的主机30包括:
接收单元301,用于从所述每条流上接收所述路由器转发的资源数据包,所述资源数据包是所述源主机发出的,并在所述路由器确定传输链路拥塞时,在所述资源数据包中设置了拥塞标识;
设置单元302,用于根据所述接收单元301接收的所述拥塞标识,在至少一条流所对应的待发送的至少一个响应数据包中设置拥塞通知标识;
发送单元303,用于在所述至少一条流上发送所述设置单元302已设置拥塞通知标识的响应数据包,所述拥塞通知标识用于指示所述源主机传输链路已拥塞;
控制单元304,用于所述接收单元301接收到包含拥塞已处理标识的资源数据包时,停止在待发送的响应数据包中设置拥塞通知标识。
本发明实施例提供的目的主机,针对QUIC数据包可以进行拥塞处理,这样,不仅减轻了传输链路拥塞,提高数据传输效率,而且本发明实施例中按照流的传输优先级进行拥塞处理,进一步保证了高优先级流上数据的传输,确保了重要用户的体验。
可选地,所述设置单元302,具体用于在至少一条流所对应的所述待发送的至少一个响应数据包的拥塞通知标识位上设置所述拥塞通知标识,所述拥塞通知标识位为所述待发送的响应数据包的包头中的一个空闲比特位;
所述拥塞已处理标识位于包含拥塞已处理标识的所述资源数据包的包头中的一个空闲比特位上。
可选地,所述在至少一条流所对应的待发送的至少一个响应数据包中包含拥塞通知帧,所述拥塞通知帧中包含拥塞通知标识;
所述拥塞已处理标识位于包含拥塞已处理标识的所述资源数据包的包头中的一个空闲比特位上,或者,包含拥塞已处理标识的所述资源数据包中包含拥塞已处理帧,所述拥塞已处理帧中包含拥塞已处理标识。
可选地,所述设置单元302,具体用于在传输优先级最高的流所对应的待发送的响应数据包中设置拥塞通知标识;
所述发送单元303,具体用于在所述传输优先级最高的流上发送已设置拥塞通知标识的响应数据包。
主机30所涉及的内容可以参阅图1-图11中目的主机所执行的步骤进行理解,本处不做过多赘述。
图14是本发明实施例提供的主机20的结构示意图。所述主机20为数据传输系统中的源主机,所述数据传输系统还路由器和目的主机,所述源主机、所述路由器和所述目的主机之间的传输链路上承载有多条流,所述多条流中的每条流都分别配置有传输优先级,所述主机20包括处理器210,该处理器210可以是中央处理器(Central Processing Unit,CPU)、收发器240、存储器250和输入/输出(I/O)设备230,输入/输出(I/O)设备230可以是键盘或鼠标,存储器250可以包括只读存储器和随机存取存储器,并向处理器210提供操作指令和数据。存储器250的一部分还可以包括非易失性随机存取存储器(NVRAM)。
在一些实施方式中,存储器250存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:
在本发明实施例中,通过调用存储器250存储的操作指令(该操作指令可存储在操作系统中),
所述收发器240用于:
按照所述每条流的发送速率,在所述每个流上发送资源数据包,在所述路由器确定所述传输链路拥塞时,所述资源数据包被所述路由器设置拥塞标识;
分别从所述每条流上接收所述路由器转发的各响应数据包,所述各响应数据包为所述目的主机发出的,其中,至少一条流上的至少一个响应数据包中包含拥塞通知标识,所述拥塞通知标识用于通知所述源主机所述传输链路已拥塞;
处理器210用于根据所述拥塞通知标识,按照所述每条流的传输优先级进行拥塞处理,并在待发送的资源数据包中添加拥塞已处理标识,所述拥塞已处理标识用于通知所述目的主机所述传输链路拥塞已处理。
本发明实施例提供的源主机,针对QUIC数据包可以进行拥塞处理,这样,不仅减轻了传输链路拥塞,提高数据传输效率,而且本发明实施例中按照流的传输优先级进行拥塞处理,进一步保证了高优先级流上数据的传输,确保了重要用户的体验。
处理器210控制主机20的操作。存储器250可以包括只读存储器和随机存取存储器,并向处理器210提供指令和数据。存储器250的一部分还可以包括非易失性随机存取存储器(NVRAM)。具体的应用中主机20的各个组件通过总线系统220耦合在一起,其中总线系统220除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统220。
上述本发明实施例揭示的方法可以应用于处理器210中,或者由处理器210实现。处理器210可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器210中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器210可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器250,处理器210读取存储器250中的信息,结合其硬件完成上述方法的步骤。
可选地,处理器210具体用于根据所述每条流的传输优先级,降低所述传输优先级低于预设门限的各条流的发送速率。
可选地,处理器210具体用于根据所述每条流的传输优先级,按照所述传输优先级的从高到低顺序,按照从低到高的阶梯降低所述每条流的发送速率,传输优先级高的流的速率降低量低于传输优先级低的流的速率降低量。
可选地,处理器210具体用于当接收到所述目的主机发送的拥塞通知次数未达到预设阈值时,渐进式降低所述每条流的发送速率;当接收到所述目的主机发送的拥塞通知次数达到所述预设阈值时,阶梯式降低所述每条流的发送速率。
可选地,处理器210具体用于在待发送的资源数据包的包头中的空闲比特位上添加拥塞已处理标识。
以上的主机20可以参阅图1至图11部分的相关描述进行理解,本处不做过多赘述。
图15是本发明实施例提供的主机30的结构示意图。所述主机30为数据传输系统中的目的主机,所述数据传输系统还包括源主机和路由器,所述源主机、所述路由器和所述目的主机之间的传输链路上承载有多条流,所述多条流中的每条流都配置有传输优先级,所述主机30包括处理器310,该处理器310可以是中央处理器(Central Processing Unit,CPU)、收发器340、存储器350和输入/输出(I/O)设备330,输入/输出(I/O)设备330可以是键盘或鼠标,存储器350可以包括只读存储器和随机存取存储器,并向处理器310提供操作指令和数据。存储器350的一部分还可以包括非易失性随机存取存储器(NVRAM)。
在一些实施方式中,存储器350存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:
在本发明实施例中,通过调用存储器350存储的操作指令(该操作指令可存储在操作系统中),
所述收发器340用于:从所述每条流上接收所述路由器转发的资源数据包,所述资源数据包是所述源主机发出的,并在所述路由器确定传输链路拥塞时,所述资源数据包被所述路由器设置拥塞标识;
处理器310用于根据所述拥塞标识,在至少一条流所对应的待发送的至少一个响应数据包中设置拥塞通知标识,并在所述至少一条流上发送已设置拥塞通知标识的响应数据包,所述拥塞通知标识用于指示所述源主机传输链路已拥塞;接收到包含拥塞已处理标识的资源数据包时,停止在待发送的响应数据包中设置拥塞通知标识。
本发明实施例提供的目的主机,针对QUIC数据包可以进行拥塞处理,这样,不仅减轻了传输链路拥塞,提高数据传输效率,而且本发明实施例中按照流的传输优先级进行拥塞处理,进一步保证了高优先级流上数据的传输,确保了重要用户的体验。
处理器310控制主机30的操作。存储器350可以包括只读存储器和随机存取存储器,并向处理器310提供指令和数据。存储器350的一部分还可以包括非易失性随机存取存储器(NVRAM)。具体的应用中主机30的各个组件通过总线系统320耦合在一起,其中总线系统320除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统320。
上述本发明实施例揭示的方法可以应用于处理器310中,或者由处理器310实现。处理器310可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器310中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器310可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器350,处理器310读取存储器350中的信息,结合其硬件完成上述方法的步骤。
可选地,处理器310具体用于在至少一条流所对应的所述待发送的至少一个响应数据包的拥塞通知标识位上设置所述拥塞通知标识,所述拥塞通知标识位为所述待发送的响应数据包的包头中的一个空闲比特位;
对应的,所述拥塞已处理标识位于包含拥塞已处理标识的所述资源数据包的包头中的一个空闲比特位上。
可选地,在至少一条流所对应的待发送的至少一个响应数据包中包含拥塞通知帧,所述拥塞通知帧中包含拥塞通知标识;
对应的,所述拥塞已处理标识位于包含拥塞已处理标识的所述资源数据包的包头中的一个空闲比特位上,或者,包含拥塞已处理标识的所述资源数据包中包含拥塞已处理帧,所述拥塞已处理帧中包含拥塞已处理标识。
可选地,处理器310具体用于在传输优先级最高的流所对应的待发送的响应数据包中设置拥塞通知标识;
收发器340用于在所述传输优先级最高的流上发送已设置拥塞通知标识的响应数据包。
以上的主机30可以参阅图1至图11部分的相关描述进行理解,本处不做过多赘述。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
以上对本发明实施例所提供的拥塞处理的方法、主机以及系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (19)
1.一种拥塞处理的方法,其特征在于,所述方法应用于利用基于用户数据报协议UDP的快速用户数据报协议互联网连接QUIC进行数据传输的场景,涉及数据传输系统,所述数据传输系统包括源主机、路由器和目的主机,所述源主机、所述路由器和所述目的主机之间的传输链路上承载有多条流,所述多条流中的每条流都配置有传输优先级,所述方法包括:
所述源主机按照所述每条流的发送速率,在所述每个流上发送资源数据包,在所述路由器确定所述传输链路拥塞时,所述资源数据包被所述路由器设置拥塞标识;
所述源主机从所述每条流上接收所述路由器转发的响应数据包,所述响应数据包为所述目的主机发出的,其中,至少一条流上的至少一个所述响应数据包中包含拥塞通知标识,所述拥塞通知标识用于通知所述源主机所述传输链路已拥塞,所述拥塞通知标识是所述目的主机在检测到所述拥塞标识后,在所述至少一条流上的至少一个所述响应数据包中添加的;
所述源主机根据所述至少一条流上的至少一个所述响应数据包中包含的拥塞通知标识,按照所述每条流的传输优先级进行拥塞处理,并在待发送的资源数据包中添加拥塞已处理标识,所述拥塞已处理标识用于通知所述目的主机所述传输链路拥塞已处理;
其中,所述按照所述每条流的传输优先级进行拥塞处理,具体为按照所述每条流的传输优先级降低部分或者全部流的发送速率。
2.根据权利要求1所述的方法,其特征在于,所述按照所述每条流的传输优先级进行拥塞处理,包括:
根据所述每条流的传输优先级,降低所述传输优先级低于预设门限的各条流的发送速率。
3.根据权利要求1所述的方法,其特征在于,所述按照所述每条流的传输优先级进行拥塞处理,包括:
根据所述每条流的传输优先级,按照所述传输优先级的从高到低顺序,按照从低到高的阶梯降低所述每条流的发送速率,传输优先级高的流的速率降低量低于传输优先级低的流的速率降低量。
4.根据权利要求1所述的方法,其特征在于,所述按照所述每条流的传输优先级进行拥塞处理,包括:
当接收到所述目的主机发送的拥塞通知次数未达到预设阈值时,渐进式降低所述每条流的发送速率;
当接收到所述目的主机发送的拥塞通知次数达到所述预设阈值时,阶梯式降低所述每条流的发送速率。
5.根据权利要求1-4任一所述的方法,其特征在于,所述源主机在待发送的资源数据包中添加拥塞已处理标识,包括:
所述源主机在待发送的资源数据包的包头中的空闲比特位上添加拥塞已处理标识。
6.一种拥塞处理的方法,其特征在于,所述方法应用于利用基于用户数据报协议UDP的快速用户数据报协议互联网连接QUIC进行数据传输的场景,涉及数据传输系统,所述数据传输系统包括源主机、路由器和目的主机,所述源主机、所述路由器和所述目的主机之间的传输链路上承载有多条流,所述多条流中的每条流都配置有传输优先级,所述方法包括:
所述目的主机从所述每条流上接收所述路由器转发的资源数据包,所述资源数据包是所述源主机发出的,并在所述路由器确定传输链路拥塞时,所述资源数据包被所述路由器设置了拥塞标识;
所述目的主机根据所述拥塞标识,在至少一条流所对应的待发送的至少一个响应数据包中设置拥塞通知标识,并在所述至少一条流上发送已设置拥塞通知标识的响应数据包,所述拥塞通知标识用于指示所述源主机所述传输链路已拥塞,并按照所述每条流的传输优先级降低部分或者全部流的发送速率;
所述目的主机接收到包含拥塞已处理标识的资源数据包时,停止在待发送的响应数据包中设置拥塞通知标识。
7.根据权利要求6所述的方法,其特征在于,所述在至少一条流所对应的待发送的至少一个响应数据包中设置拥塞通知标识,包括:
在至少一条流所对应的所述待发送的至少一个响应数据包的拥塞通知标识位上设置所述拥塞通知标识,所述拥塞通知标识位为所述待发送的响应数据包的包头中的一个空闲比特位;
对应的,所述拥塞已处理标识位于包含拥塞已处理标识的所述资源数据包的包头中的一个空闲比特位上。
8.根据权利要求6所述的方法,其特征在于,所述在至少一条流所对应的待发送的至少一个响应数据包中包含拥塞通知帧,所述拥塞通知帧中包含拥塞通知标识;
对应的,所述拥塞已处理标识位于包含拥塞已处理标识的所述资源数据包的包头中的一个空闲比特位上,或者,包含拥塞已处理标识的所述资源数据包中包含拥塞已处理帧,所述拥塞已处理帧中包含拥塞已处理标识。
9.根据权利要求6-8任一所述的方法,其特征在于,所述在至少一条流所对应的待发送的至少一个响应数据包中设置拥塞通知标识,并在所述至少一条流上发送已设置拥塞通知标识的响应数据包,包括:
所述目的主机在传输优先级最高的流所对应的待发送的响应数据包中设置拥塞通知标识,并在所述传输优先级最高的流上发送已设置拥塞通知标识的响应数据包。
10.一种主机,其特征在于,所述主机应用于利用基于用户数据报协议UDP的快速用户数据报协议互联网连接QUIC进行数据传输的场景,为数据传输系统中的源主机,所述数据传输系统还包括路由器和目的主机,所述源主机、所述路由器和所述目的主机之间的传输链路上承载有多条流,所述多条流中的每条流都配置有传输优先级,所述主机包括:
发送单元,用于按照所述每条流的发送速率,在所述每个流上发送资源数据包,在所述路由器确定所述传输链路拥塞时,所述资源数据包被所述路由器设置拥塞标识;
接收单元,用于分别从所述每条流上接收所述路由器转发的各响应数据包,所述各响应数据包为所述目的主机发出的,其中,至少一条流上的至少一个响应数据包中包含拥塞通知标识,所述拥塞通知标识用于通知所述源主机所述传输链路已拥塞,所述拥塞通知标识是所述目的主机在检测到所述拥塞标识后,在所述至少一条流的至少一个所述响应数据包中添加的;
拥塞处理单元,用于根据所述接收单元接收的所述至少一条流上的至少一个所述响应数据包中包含的拥塞通知标识,按照所述每条流的传输优先级降低部分或者全部流的发送速率,并在待发送的资源数据包中添加拥塞已处理标识,所述拥塞已处理标识用于通知所述目的主机所述传输链路拥塞已处理。
11.根据权利要求10所述的主机,其特征在于,
所述拥塞处理单元,具体用于根据所述每条流的传输优先级,降低所述传输优先级低于预设门限的各条流的发送速率。
12.根据权利要求10所述的主机,其特征在于,
所述拥塞处理单元,具体用于根据所述每条流的传输优先级,按照所述传输优先级的从高到低顺序,按照从低到高的阶梯降低所述每条流的发送速率,传输优先级高的流的速率降低量低于传输优先级低的流的速率降低量。
13.根据权利要求10所述的主机,其特征在于,
所述拥塞处理单元,具体用于当接收到所述目的主机发送的拥塞通知次数未达到预设阈值时,渐进式降低所述每条流的发送速率;当接收到所述目的主机发送的拥塞通知次数达到所述预设阈值时,阶梯式降低所述每条流的发送速率。
14.根据权利要求10-13任一所述的主机,其特征在于,
所述拥塞处理单元,具体用于在待发送的资源数据包的包头中的空闲比特位上添加拥塞已处理标识。
15.一种主机,其特征在于,所述主机应用于利用基于用户数据报协议UDP的快速用户数据报协议互联网连接QUIC进行数据传输的场景,为数据传输系统的目的主机,所述数据传输系统还包括源主机和路由器,所述源主机、所述路由器和所述目的主机之间的传输链路上承载有多条流,所述多条流中的每条流都配置有传输优先级,所述目的主机包括:
接收单元,用于从所述每条流上接收所述路由器转发的资源数据包,所述资源数据包是所述源主机发出的,并在所述路由器确定传输链路拥塞时,所述资源数据包被所述路由器设置拥塞标识;
设置单元,用于根据所述接收单元接收的所述拥塞标识,在至少一条流所对应的待发送的至少一个响应数据包中设置拥塞通知标识;
发送单元,用于在所述至少一条流上发送所述设置单元已设置拥塞通知标识的响应数据包,所述拥塞通知标识用于指示所述源主机所述传输链路已拥塞,并按照所述每条流的传输优先级降低部分或者全部流的发送速率;
控制单元,用于所述接收单元接收到包含拥塞已处理标识的资源数据包时,停止在待发送的响应数据包中设置拥塞通知标识。
16.根据权利要求15所述的主机,其特征在于,
所述设置单元,具体用于在至少一条流所对应的所述待发送的至少一个响应数据包的拥塞通知标识位上设置所述拥塞通知标识,所述拥塞通知标识位为所述待发送的响应数据包的包头中的一个空闲比特位;
所述拥塞已处理标识位于包含拥塞已处理标识的所述资源数据包的包头中的一个空闲比特位上。
17.根据权利要求15所述的主机,其特征在于,
所述在至少一条流所对应的待发送的至少一个响应数据包中包含拥塞通知帧,所述拥塞通知帧中包含拥塞通知标识;
所述拥塞已处理标识位于包含拥塞已处理标识的所述资源数据包的包头中的一个空闲比特位上,或者,包含拥塞已处理标识的所述资源数据包中包含拥塞已处理帧,所述拥塞已处理帧中包含拥塞已处理标识。
18.根据权利要求15-17任一所述的主机,其特征在于,
所述设置单元,具体用于在传输优先级最高的流所对应的待发送的响应数据包中设置拥塞通知标识;
所述发送单元,具体用于在所述传输优先级最高的流上发送已设置拥塞通知标识的响应数据包。
19.一种数据传输系统,其特征在于,所述系统应用于利用基于用户数据报协议UDP的快速用户数据报协议互联网连接QUIC进行数据传输的场景,包括:源主机、路由器和目的主机,所述源主机、所述路由器和所述目的主机之间的传输链路上承载有多条流,所述多条流中的每条流都配置有传输优先级;
所述源主机为权利要求10-14任一所述的主机;
所述目的主机为权利要求15-18任一所述的主机。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2016/080520 WO2017185307A1 (zh) | 2016-04-28 | 2016-04-28 | 一种拥塞处理的方法、主机及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108432194A CN108432194A (zh) | 2018-08-21 |
CN108432194B true CN108432194B (zh) | 2022-02-25 |
Family
ID=60160534
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680077885.2A Active CN108432194B (zh) | 2016-04-28 | 2016-04-28 | 一种拥塞处理的方法、主机及系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10826830B2 (zh) |
EP (1) | EP3442180B1 (zh) |
CN (1) | CN108432194B (zh) |
WO (1) | WO2017185307A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11153211B2 (en) * | 2017-12-09 | 2021-10-19 | Intel Corporation | Fast data center congestion response |
ES2786632T3 (es) * | 2018-02-28 | 2020-10-13 | Deutsche Telekom Ag | Técnicas para la gestión de la política de protocolos de red de conectividad múltiple |
CN112073325B (zh) * | 2019-06-10 | 2023-05-12 | 阿里巴巴集团控股有限公司 | 数据拥塞控制及带宽预估方法 |
US11412375B2 (en) | 2019-10-16 | 2022-08-09 | Cisco Technology, Inc. | Establishing untrusted non-3GPP sessions without compromising security |
CN112714071A (zh) * | 2019-10-25 | 2021-04-27 | 华为技术有限公司 | 一种数据发送方法及装置 |
US11770465B2 (en) * | 2020-10-20 | 2023-09-26 | Nokia Solutions And Networks Oy | Supporting multiple transport options for border gateway protocol |
CN112351468B (zh) * | 2020-11-05 | 2022-08-09 | 东方红卫星移动通信有限公司 | 一种基于剩余能量感知的路由控制方法、节点及系统 |
CN114640631A (zh) * | 2020-12-15 | 2022-06-17 | 华为技术有限公司 | 拥塞控制方法及网络设备 |
CN114679792A (zh) * | 2020-12-24 | 2022-06-28 | 华为技术有限公司 | 业务流的调度方法、装置及系统 |
CN114979021B (zh) * | 2021-02-27 | 2024-05-14 | 华为技术有限公司 | 数据处理方法及电子设备 |
US11838209B2 (en) * | 2021-06-01 | 2023-12-05 | Mellanox Technologies, Ltd. | Cardinality-based traffic control |
CN115599025B (zh) * | 2022-12-12 | 2023-03-03 | 南京芯驰半导体科技有限公司 | 芯片阵列的资源成组控制系统、方法及存储介质 |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6240140B1 (en) * | 1997-02-24 | 2001-05-29 | Picturetel Corporation | Channel aggregation having low latency and overhead |
JPH10271132A (ja) * | 1997-03-27 | 1998-10-09 | Toshiba Corp | パケット交換網におけるフロー制御方式 |
US6463484B1 (en) * | 1999-07-09 | 2002-10-08 | C-Sierra, Inc. | Egress port scheduling using memory efficient request storage |
KR100612437B1 (ko) * | 2003-08-20 | 2006-08-16 | 삼성전자주식회사 | 이더넷 망의 혼잡 여부를 알려주는 장치 및 방법 |
US20060203730A1 (en) * | 2005-03-14 | 2006-09-14 | Zur Uri E | Method and system for reducing end station latency in response to network congestion |
US8477614B2 (en) * | 2006-06-30 | 2013-07-02 | Centurylink Intellectual Property Llc | System and method for routing calls if potential call paths are impaired or congested |
WO2009090160A1 (en) * | 2008-01-14 | 2009-07-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and nodes for congestion notification |
US20100246400A1 (en) * | 2009-03-26 | 2010-09-30 | Kyocera Corporation | Communication device and method |
CN101997644A (zh) * | 2009-08-24 | 2011-03-30 | 华为技术有限公司 | 速率调整方法、系统、编码方式选择方法和装置 |
CN101741747B (zh) * | 2009-12-23 | 2012-01-04 | 上海交通大学 | 面向udp协议的nfs流控方法 |
CN102055677A (zh) * | 2011-01-26 | 2011-05-11 | 杭州华三通信技术有限公司 | 减少网络拥塞的方法及设备 |
JP5538257B2 (ja) * | 2011-02-02 | 2014-07-02 | アラクサラネットワークス株式会社 | 帯域監視装置、及びパケット中継装置 |
JP5710418B2 (ja) * | 2011-08-08 | 2015-04-30 | アラクサラネットワークス株式会社 | パケット中継装置、及び方法 |
US20140233390A1 (en) * | 2011-09-06 | 2014-08-21 | Nec Europe Ltd. | Method and system for congestion avoidance in mobile communication networks |
WO2013035897A1 (en) * | 2011-09-06 | 2013-03-14 | Alcatel Lucent | A method for avoiding network congestion and an apparatus thereof |
US20130155938A1 (en) * | 2011-12-16 | 2013-06-20 | Belair Networks | Tcp-relay for wireless applications |
EP2637371A1 (en) * | 2012-03-09 | 2013-09-11 | British Telecommunications Public Limited Company | Signalling congestion |
US9215174B2 (en) * | 2012-10-18 | 2015-12-15 | Broadcom Corporation | Oversubscription buffer management |
US20140164640A1 (en) * | 2012-12-11 | 2014-06-12 | The Hong Kong University Of Science And Technology | Small packet priority congestion control for data center traffic |
US8976664B2 (en) * | 2013-03-11 | 2015-03-10 | Broadcom Corporation | Facilitating network flows |
EP2819420A1 (en) * | 2013-06-25 | 2014-12-31 | British Telecommunications public limited company | Content distribution system and method |
CN103414650B (zh) * | 2013-07-29 | 2016-12-07 | 上海华为技术有限公司 | 一种避免拥塞的路由方法和装置 |
US9521177B2 (en) | 2013-09-11 | 2016-12-13 | Cisco Technology, Inc. | Network-based adaptive rate limiting |
EP2869513A1 (en) * | 2013-10-30 | 2015-05-06 | Telefonaktiebolaget L M Ericsson (Publ) | Method and network node for controlling sending rates |
US9350672B2 (en) * | 2014-03-13 | 2016-05-24 | Cisco Technology, Inc. | Performance enhancement and congestion control of multipath protocol packets in a heterogeneous network environment with multipath transport protocols |
US9548930B1 (en) * | 2014-05-09 | 2017-01-17 | Google Inc. | Method for improving link selection at the borders of SDN and traditional networks |
CN104836743B (zh) * | 2015-05-25 | 2018-09-04 | 新华三技术有限公司 | 一种拥塞控制方法及装置 |
US10333853B1 (en) * | 2016-03-30 | 2019-06-25 | Amazon Technologies, Inc. | Unified quality of service (QoS) for label switching traffic |
-
2016
- 2016-04-28 CN CN201680077885.2A patent/CN108432194B/zh active Active
- 2016-04-28 WO PCT/CN2016/080520 patent/WO2017185307A1/zh active Application Filing
- 2016-04-28 EP EP16899820.1A patent/EP3442180B1/en active Active
-
2018
- 2018-10-26 US US16/171,568 patent/US10826830B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
WO2017185307A1 (zh) | 2017-11-02 |
EP3442180B1 (en) | 2020-11-11 |
EP3442180A4 (en) | 2019-03-06 |
US20190068503A1 (en) | 2019-02-28 |
US10826830B2 (en) | 2020-11-03 |
CN108432194A (zh) | 2018-08-21 |
EP3442180A1 (en) | 2019-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108432194B (zh) | 一种拥塞处理的方法、主机及系统 | |
US11272555B2 (en) | Data transmission channel processing method, apparatus, and system | |
CN110022264B (zh) | 控制网络拥塞的方法、接入设备和计算机可读存储介质 | |
EP3879769B1 (en) | Method and apparatus for transmitting data | |
CN107342952B (zh) | 业务链路选择控制方法以及设备 | |
EP3737016A1 (en) | Data transmission method, apparatus and system | |
WO2018113373A1 (zh) | 一种数据传输方法及装置 | |
US9369392B2 (en) | SCTP bundling | |
US20190394129A1 (en) | Method And Apparatus For Datacenter Congestion Control Based On Software Defined Network | |
US11108699B2 (en) | Method, apparatus, and system for implementing rate adjustment at transmit end | |
WO2017097201A1 (zh) | 一种数据传输方法、发送装置及接收装置 | |
WO2019204311A1 (en) | Technologies for out-of-order network packet management and selective data flow splitting | |
CN112566164B (zh) | 一种通信系统及服务质量控制方法 | |
WO2015106453A1 (zh) | 处理业务的方法和网络设备 | |
CN111629030A (zh) | 基于边缘计算平台的通信处理方法、装置、介质及设备 | |
US10136375B2 (en) | Method for service data management, apparatus, and system | |
CN111510390A (zh) | 应用程序或无线电信息在网络数据包头中的插入和使用 | |
WO2017148419A1 (zh) | 数据传输方法及服务器 | |
WO2017173899A1 (zh) | 一种终端、设备服务器、网络消息处理方法、系统及存储介质 | |
CN113595920A (zh) | 网络拥塞控制方法及设备 | |
WO2015180560A1 (zh) | 一种对业务路由报文进行处理的方法和业务节点 | |
US11533121B2 (en) | Method and apparatus for packet wash in networks | |
CN110336759B (zh) | 基于rdma的协议报文转发方法及装置 | |
CN108605221B (zh) | 用户下线的方法、网络设备和系统 | |
US10454826B2 (en) | Technique for signalling congestion in a packet communication network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |