CN107646177B - 用于提供客户端与服务器之间的鲁棒的数据通信的方法和设备 - Google Patents

用于提供客户端与服务器之间的鲁棒的数据通信的方法和设备 Download PDF

Info

Publication number
CN107646177B
CN107646177B CN201680029347.6A CN201680029347A CN107646177B CN 107646177 B CN107646177 B CN 107646177B CN 201680029347 A CN201680029347 A CN 201680029347A CN 107646177 B CN107646177 B CN 107646177B
Authority
CN
China
Prior art keywords
data
server
channel quality
quality indicator
client
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
Application number
CN201680029347.6A
Other languages
English (en)
Other versions
CN107646177A (zh
Inventor
J·埃伦贝克
T·克莱沃
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Apple Inc filed Critical Apple Inc
Publication of CN107646177A publication Critical patent/CN107646177A/zh
Application granted granted Critical
Publication of CN107646177B publication Critical patent/CN107646177B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0023Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the signalling
    • H04L1/0026Transmission of channel quality indication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0002Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate
    • H04L1/0003Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate by switching between different modulation schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0015Systems modifying transmission characteristics according to link quality, e.g. power backoff characterised by the adaptation strategy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0036Systems modifying transmission characteristics according to link quality, e.g. power backoff arrangements specific to the receiver
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0231Traffic management, e.g. flow control or congestion control based on communication conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/50Allocation or scheduling criteria for wireless resources
    • H04W72/54Allocation or scheduling criteria for wireless resources based on quality criteria

Landscapes

  • Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

一种客户端处的方法,包括:监听至服务器的数据连接;基于检测到自服务器的数据传输的开始,调整信道质量指示符的值;以及将调整后的信道质量指示符的值发送到服务器。

Description

用于提供客户端与服务器之间的鲁棒的数据通信的方法和 设备
技术领域
本公开总体涉及无线通信。更具体地,本公开涉及用于提供客户端与服务器之间的鲁棒的数据通信的方法和设备。
背景技术
网络的客户端与服务器之间的通信可以基于通信协议,例如传输控制协议(TCP)。在已经根据通信协议建立了客户端与服务器之间的连接之后,可以从服务器将数据发送到客户端。例如,可以由客户端从服务器下载文件或者网站。可能发生以下情况,客户端与服务器之间的连续数据通信可能受阻。
无线通信网络中采用的方法和设备必须不断改进。特别地,可能期望提供提升设备在网络中操作的性能的方法。此外,可能期望提供这些设备之间的鲁棒的数据通信。
出于这些原因以及进一步的原因,需要本公开。
附图说明
包括附图是为了提供对本公开的示例的进一步理解,并且附图被合并于此且构成本说明书的一部分。附图示出了示例,并且与描述一起用作解释示例的原理。将易于认识到其它示例以及示例的许多意图的优点,因为通过参考以下具体实施方式,它们将变得更好理解。
图1示意性地示出了包括客户端10和服务器20的无线通信系统100。
图2A示出了第一场景中的服务器与客户端之间的数据通信的时序/次序图。
图2B示意性地示出了图2A的时序/次序图的第一阶段中的数据通信。
图2C示意性地示出了图2A的时序/次序图的第二阶段中的数据通信。
图2D示意性地示出了图2A的时序/次序图的第三阶段中的数据通信。
图3A示出了第二场景中的服务器与客户端之间的数据通信的时序/次序图。
图3B示意性地示出了图3A的时序/次序图的数据通信的更详细的视图。
图4示意性地示出了根据本公开的可以操作为无线通信系统中的客户端的用户设备400。
图5示意性地示出了根据本公开的方法500。
图6示意性地示出了根据本公开的方法600。
图7示意性地示出了被配置为执行根据本公开的方法的设备700。
图8示意性地示出了根据本公开的方法800。可以将方法800看作方法500和600的更详细的实现方式。
具体实施方式
在以下具体实施方式中,将参考附图,附图形成具体实施方式的一部分,并且在附图中,通过图示方式示出了可以实践本公开的示例。可以利用其它示例,并且在不脱离本公开的范围的情况下,可以进行结构改变或逻辑改变。因此,以下具体实施方式不应当看作限制意义,并且本公开的范围由所附权利要求限定。
除非另行具体指出,否则本文描述的各种示例的特征可以彼此组合。此外,相同的附图标记可以指代对应的相同或者类似部分。
如本说明书中所采用的,术语“耦合的”和/或“连接的”并不意味着通常表示元件必须直接耦合或连接在一起,而是可以在“耦合的”或“连接的”元件之间提供中间功能元件。然而,尽管不限于此含义,但是,术语“耦合的”和/或“连接的”还可以理解为可选地公开了以下实现方式:元件直接耦合或连接在一起,而在“耦合的”或“连接的”元件之间没有提供中间元件。
本文描述了设备和用于操作设备的方法。结合所描述的设备给出的评述对于对应方法也是适用,并且反之亦然。例如,如果描述了方法的特定动作,则用于执行该方法的对应设备可以包括以合适方式执行该动作的组件,即使这种组件未在附图中明确描述或者示出。此外,除非另行具体指出,否则本文所描述的各个方面和示例的特征可以彼此组合。
如本文所描述的示例可以在分立电路、部分集成的电路或者完全集成的电路中实现。此外,可以在单个半导体芯片上或者在彼此连接的多个半导体芯片上实现示例。而且,应当理解,可以用软件或专用硬件,或者部分用软件且部分用专用硬件来实现示例。
本文所描述的方法和设备可以用于各种无线通信网络。术语“网络”、“系统”、“无线电通信系统”以及“无线通信系统”在本文中可以同义地使用。
本文所描述的方法和设备可以实现在无线通信网络中,特别地,实现在基于CDMA、WCDMA、LTE和/或OFDM标准或者基于WiFi标准的通信网络中,并且特别地,实现在MIMO通信系统中。本文所描述的方法和设备还可以实现在移动设备(或者移动站或用户设备(UE))或者基站(NodeB、eNodeB)中。所描述的设备可以包括集成电路和/或无源元件,并且可以根据各种技术来制造。例如,电路可以设计为逻辑集成电路、模拟集成电路、混合信号集成电路、存储器电路和/或集成无源元件等。
本文所描述的方法和设备可以被配置为发送和/或接收无线电信号。无线电信号可以为或者可以包括由无线电发送设备(或者无线电发送机或者发射机)辐射的无线电频率信号,其中无线电频率在约3 Hz到约300 GHz的范围中。频率范围可以对应于用于产生和检测无线电波的交流电信号的频率。
本文所描述的方法和设备可以利用信道质量指示符,信道质量指示符可以被配置为指明通信链路的信道特性。也就是说,信道质量指示符可以被配置为指明信号如何从发射机传播到接收机,并且由此可以表示例如随距离的散射、衰落以及功率衰减的组合效果。信道质量指示符可以在接收机处进行估计,并且可以例如以量化形式反馈到发射机。特别地,信道质量指示符可以由UE生成并且可以反馈到eNodeB。
在一个示例中,信道质量指示符可以包括CQI(或者CQI值)。CQI可以基于一个或多个无线信道的通信质量的测量。因此,CQI可以是表示给定信道的信道质量的度量的值(或者多个值)。通常,术语CQI可以指代由发射机或接收机提供的信道信息。特别地,术语CQI可以指代在UE处确定的可以被反馈到eNodeB并由eNodeB处理的信道质量信息。就此而言,CQI可以因此被配置为指示下行信道的质量。高CQI值可以指示具有高质量的信道,并且反之亦然。在LTE中,CQI值可以例如在0到15的范围中,其中,值0表示最低信道质量,值15表示最高信道质量。可以通过利用信道的信噪比(SNR)、信号与干扰加噪声比(SINR)、信号与噪声加失真比(SNDR)、信道与泄漏加噪声比(SNLR)等的值来确定CQI。
信道质量指示符可以被配置为支持链路适配,以便在高数据率下实现可靠通信。基于从UE接收的信道质量指示符,eNodeB可以确定UE与eNodeB之间的通信可以基于哪种调制编码方案。本文所描述的方法和设备可以利用这种调制编码方案(可以简称为MCS)。MCS索引可以例如由eNodeB用于以信号告知UE要用于接收或发送某个传输块的调制编码方案。每个MCS索引可以代表某种调制阶和传输块大小索引。传输块大小可以用于导出针对给定资源块分配的传输块大小。在一个示例中,MCS索引的值可以在0到31的范围中。
图1示意性地示出了包括客户端10和服务器20的无线通信系统或网络100。客户端10可以例如对应于用户设备(UE),其可以代表任意种类的移动电话、智能手机、膝上型计算机、平板电脑、蜂窝调制解调器、视频游戏控制台等。UE还可以称为移动终端、移动设备、移动站等。服务器20可以例如对应于NodeB,其也可以称为基站、eNodeB、基站收发机等。例如,网络100可以基于LTE、3G、WiFi等。
客户端10与服务器20之间的通信可以基于通信协议。在一个示例中,这种通信协议可以对应于传输控制协议(TCP),其可以被当作因特网协议组(IP)的协议。就此而言,TCP还可以称为TCP/IP。TCP可以在运行在可以连接到局域网、内联网或公共因特网的设备上的程序之间提供传输数据的可靠、有序且差错校验的传送(或者传送失败的通知)。传输数据可以对应于可以称为分组的多条信息。特别地,分组可以是八位元组(字节)序列,并且可以包括头,后接有体。头可以识别分组的源和目的地,并且可以进一步包括控制信息。分组的体可以包括待发送的数据。特别地,TCP可以驻留在传输层。例如,TCP可以由网页浏览器在浏览器连接到万维网上的服务器时使用。TCP可以特别地用于将电子邮件以及传送文件从一个位置传递到另一个位置。封装在TCP中的通信协议是例如HTTP、HTTPS、SMTP、POP3、IMAP、SSH、FTP、Telnet等。
客户端10与服务器20之间的TCP连接可以基于三次握手来建立。在第一动作中,客户端10可以将SYN数据分组发送到网络100或外部网络上的服务器20。SYN数据分组的目的可以是查询服务器20对于新连接是否是开放的。当服务器20从客户端10接收到SYN分组时,在第二动作中,服务器20可以进行响应并且返回确认接收。确认接收可以对应于ACK数据分组或SYN/ACK数据分组。在第三动作中,客户端10可以从服务器20接收SYN/ACK数据分组,并且可以以ACK数据分组来响应。在完成所描述的三个动作(或者“握手”)之后,客户端10和服务器20均已经接收到连接确认,使得创建了连接,并且可以建立全双工通信,以便在客户端10与服务器20之间的两个方向上同时提供数据传输。
注意到,在本文中,即使TCP服务器(例如,FTP因特网服务器)与TCP客户端(例如,运行在UE的应用处理器上的FTP客户端)之间的通信和基站与UE之间的通信可以基于不同层,术语“服务器”和“基站”(或者,“NodeB”等)以及术语“客户端”和“移动站”(或者,“UE”等)也可以互换地使用。例如,TCP服务器与TCP客户端之间的通信可以基于TCP层,而基站与UE之间的通信可以基于PHY层(或者物理层或层1)。TCP服务器与TCP客户端之间的通信可以例如包括上行链路中的ACK数据分组(UL TCP ACK)、下行链路中的TCP数据分组(DL TCP数据)等。此外,基站与移动站之间的通信可以例如包括上行链路中的NACK数据分组(PHYNACK)、上行链路中的调度请求、上行链路中的CQI值等。因此,在PHY层次上,可以将基站看作用于到移动站的无线链路的服务器,而在TCP层次上,例如,可以将FTP服务器看作用于与FTP客户端通信的服务器。因此,为了简单起见,在本说明书的某些地方,可以省略所采用的层的详细名称和/或差别。
图2包括图2A至2D,其示出在第一场景中客户端10与服务器20之间的数据通信。图2A示出了数据通信的时序/次序图。该图的水平轴代表以秒为单位的时间,而垂直轴代表从服务器20成功发送到客户端10的数据的吞吐量,即,经由无线电通信信道成功传送消息的速率。在图2A中,垂直轴特别地代表由服务器20发送的且在客户端10处成功接收到的序列或者数据分组的数量。例如,客户端10可以对接收到的数据分组执行循环冗余校验(CRC)。取决于CRC的结果,客户端10可以将接收确认(ACK)或接收非确认(NACK)发送到服务器20。因此,数据分组的成功接收可以对应于接收到从客户端10发送到服务器20的包括ACK数据分组形式的接收确认的数据分组。例如,图2A的数据通信可以对应于由客户端10从服务器20下载数据文件。数据文件可以例如对应于文本文件、网页、图像文件等。在图2A中,假设已经建立了客户端10与服务器20之间的(全双工)连接。也就是说,图2A不一定包括和示出与例如客户端10与服务器20之间的三次握手相关的数据传输。
图2A的图示包括标记为“不连续DL(下载或者下行链路)活动”的数据传输的第一阶段,之后是标记为“连续DL活动”的数据传输的第二阶段。第一阶段和第二阶段中所示的曲线图的离散部分代表已经在客户端10处从服务器20成功接收的数据分组。在这些发送的数据分组之间安排有间隙。在间隙时段期间,在客户端10与服务器20之间可以没有数据交换。特别地,可以暂停要由客户端10从服务器20下载的文件的传输。以下结合图2B到2D来描述图2A的时序/次序图的第一阶段和第二阶段中的客户端10与服务器20之间发送的特定数据。
如从图2A中看到的,在TCP传输的开始,可以有不连续DL(以及UL)活动,在此期间,所描述的接收到的数据分组之间的间隙可以保持较大。在“较好”情况下,在大约5至10个较大的间隙之后,TCP传输进入连续DL活动。然而,还可能发生“较坏”情况,在其中,客户端10与服务器20之间的数据传输可能不加速并且可能有点受阻。结合图3来描述较坏情况的示例。对于大约0.5秒的第一时间间隔,即,在不连续DL活动的第一阶段,仅将小部分的DL TCP数据从服务器20发送到客户端10。在图2A中,所示的曲线图的梯度可以特别地随时间而增加。曲线的增长意味着每时间在客户端10处成功接收的数据分组的数量增加。曲线的梯度的增加可以特别地源自慢启动算法,该算法可以用在TCP通信的开始处。
图2B示意性地示出了图2A的时序/次序图的第一阶段中的不连续DL活动期间的数据通信。在第一时间间隔I中,服务器20可以将DL TCP数据分组发送到客户端10。例如,DLTCP数据分组可以包括将要由客户端10从服务器20下载的一片数据文件。DL TCP数据分组可以例如在TCP层上从TCP服务器发送到TCP客户端。在接收到DL TCP数据分组之后,客户端10可以例如执行对接收到的数据的CRC。如果CRC指示数据接收成功,则客户端10可以以调度请求来响应,从而在UL中发送TCP ACK并且进一步地请求从服务器20到客户端10的进一步DL TCP数据分组的传输(或传输的调度)。因此,客户端10可以通过将上行链路(UL)TCPACK数据分组发送到服务器20来确认DL TCP数据分组的接收。UL TCP ACK数据分组可以例如在TCP层上从TCP客户端发送到TCP服务器,并且调度请求可以在PHY层上从UE发送到NodeB。在第二时间间隔II中,客户端10没有从服务器20接收到数据。因此,第二间隔II可以对应于结合图2A描述的不连续DL活动部分中的一个间隙。一个周期的持续时间tcycle,即在“较好”情况下的第一TCP数据分组的接收与随后第二TCP数据分组的接收之间,可以在从大约50毫秒到大约75毫秒的范围中。可以将持续时间tcycle规定为第一间隔I和第二间隔II的持续时间之和。替换地,可以将持续时间tcycle规定为传输两个相继的类似项之间(例如,两个相继的调度请求之间,两个相继的UL TCP ACK之间,等)的持续时间。
在以下时间间隔中,可以重复结合时间间隔I和II所描述的动作,直到客户端10与服务器20之间的数据传输可以离开不连续DL活动并且可以进入如图2A中所示的连续DL活动。也就是说,第三时间间隔III期间的数据传输可以类似于以上所描述的第一时间间隔I的数据传输,第四时间间隔IV期间的数据传输可以类似于所描述的第二时间间隔II的数据传输,第五时间间隔V(未示出)期间的数据传输可以类似于第一时间间隔I的数据传输,等。时间间隔I和II的数据传输可以重复大约5到10次,直到客户端10与服务器20之间的数据传输可以进入连续DL活动的第二阶段。
图2C示意性地示出了图2A的时序/次序图的第二阶段中的连续DL活动的开始处的数据通信。虽然图2C可以被看作不连续活动与连续活动之间的过渡期间的数据通信的图示,但是它还可以被看作连续活动期间的数据通信的简化图示。在第一时间间隔I’中,服务器20可以将进一步的DL TCP数据分组发送到客户端10。在接收到DL TCP数据分组之后,客户端10可以通过将UL TCP ACK数据分组发送到服务器20来确认DL TCP数据分组的接收。相比于图2B中的不连续数据传输的时间间隔I,客户端10不一定以进一步的调度请求来对服务器20进行响应。
在第二时间间隔II’中,在客户端10处可以没有从服务器20接收到数据。因此,第二时间间隔II’可以对应于结合图2A描述的DL活动的连续部分中的间隙。一个周期的持续时间tcycle,即连续DL活动中的第一TCP数据分组的接收与随后第二数据分组的接收之间,可以特别地为小于如上所描述的不连续DL活动中的一个周期的持续时间tcycle。在以下时间间隔中,时间间隔I’和II’的动作可以被重复,特别地,直到可以完成客户端10与服务器20之间的数据传输(例如,文件下载)。也就是说,第三时间间隔III’期间的数据传输可以类似于第一时间间隔I’的数据传输,第四时间间隔IV’期间的数据传输可以类似于第二时间间隔II’的数据传输,第五时间间隔V’期间的数据传输(未示出)可以类似于第一时间间隔I’的数据传输,等。
如可以从以上中看到的,在客户端10与服务器20之间的数据传输的开始处,在不连续DL活动期间,可以要求客户端10将调度请求发送到服务器20,只要客户端10与服务器20之间没有建立稳定且连续的数据传输。在数据传输已经变得稳定之处,即所发送的数据分组之间的间隙的大小下降到特定时间值以下,可以不要求从客户端10发送进一步的调度请求到服务器20。
图2B和2C中间隙的大小(例如,参见时间间隔II和II’)可以取决于各种因素。例如,间隙大小可以取决于慢启动算法的应用。这里,可以将间隙看作没有(尚未)启用附加数据传输的空闲时间。由于慢启动算法对间隙大小的影响在连续DL活动的阶段中可能变得无关,因此阶段II的间隙大小可以特别地大于阶段II’的间隙大小。此外,间隙大小可以取决于服务器20可以调度的客户端的数量。如果服务器20与多个客户端通信,对于一个特定的客户端(例如,所考虑的客户端10),仅可以调度减少的资源。换言之,与第一客户端通信的间隙期间的时间可以由服务器20用于与不同的第二客户端通信。此外,间隙大小可以取决于所发送的数据分组的往返延迟时间(RTD)(或者,往返时间(RTT))。可以将RTD(或RTT)定义为发送信号所要求的时间长度(例如,从服务器20到客户端10)加上接收信号的确认所要求的时间长度(例如,从客户端10到服务器20)。由于在连续数据传输期间所发送的数据分组的数量可以增加并且往返时间对于不同的数据分组而言可以不同,因此实际上,图2A的曲线可能变得模糊或者不清,特别是在连续DL活动的阶段中。
图2D示意性地示出了连续活动期间的数据通信。这里,可以将DL TCP数据分组从服务器20发送到客户端10,并且可以将UL TCP ACL数据分组从客户端10发送到服务器20。在图2D中,客户端侧的箭头指示彼此关联的DL TCP数据分组和UL TCP ACK数据分组。如之前提到的,由于例如往返时间不同,关联的DL TCP数据分组和UL TCP ACK数据分组可能不一定以相继的方式很好地排序,而是可能混合,导致如上所述的模糊的活动。在相继的DLTCP数据分组之间可能存在时间间隙,例如因为在这些各时间实例中正在服务其它用户。类似地,在相继的UL TCP ACK数据分组之间可能存在时间间隙。应当注意到,DL TCP数据分组和与之前的DL数据相关联的UL TCP ACK可以在相同的时间实例处发送。
在客户端10与服务器20之间的通信期间,数据吞吐量可能受拥塞窗口和接收窗口(或发送窗口)中的至少一个窗口限制。拥塞窗口可以被配置为控制和/或避免(例如,服务器20与客户端10之间的)数据通信的拥塞,使得不超过网络容量。拥塞窗口的大小可以通过估计客户端10与服务器20之间的拥塞程度来计算。特别地,拥塞窗口可以由服务器20来维护。
接收窗口可以被配置为控制和/或避免超过客户端10处理数据的能力。接收窗口可以确定或对应于客户端10能够接受而无需对服务器20确认的数据量。通常,如果服务器20没有接收到对它已经发送到客户端10的第一分组的确认,则服务器20可以停止并且等待。如果等待超过某一门限,则服务器20可以重新发送所发送的数据分组,使得基于TCP的通信可以实现可靠的数据传输。从客户端10发送到服务器20的每个TCP段可以包含接收窗口的当前值。例如,如果服务器20可以从客户端10接收到确认5000个字节并且进一步指明具有10000个字节大小的接收窗口的ACK消息,则服务器20在已经发送了15000个字节之后可能未必发送进一步的数据分组,即使所设定的拥塞窗口可以允许这样的传输。
即使网络中没有分组丢失,接收窗口也可能限制客户端10与服务器20之间的数据连接的吞吐量。由于TCP在等待确认之前可以发送最多窗口大小的数据,因此网络的全带宽可能不是一直被利用的。特别地,由接收窗口的大小引起的吞吐量的限制可以示例性地由以下不等式来规定:Th≤RWin/Rtt。这里,量Th可以表示吞吐量的大小,量RWin可以表示接收窗口的大小,量Rtt可以表示用于发送数据分组的路径的往返时间的大小。
接收窗口的大小可以特别地由TCP通信的客户端10侧来指示,并且可以对应于客户端10已经为相应的连接分配的空闲接收存储区的量。否则,由于缺少存储区空间,客户端10可能有丢失接收到的分组的风险。
根据以上所述,吞吐量因此可以受TCP接收窗口限制。TCP服务器可以执行某一流程控制(例如,慢启动和拥塞避免),并且还可以通过TCP发送窗口来限制吞吐量。在一个示例中,在TCP通信的开始处,TCP接收窗口可能还没有充分打开,使得当碰到TCP发送窗口时,连接吞吐量可以被覆盖。即使在碰到接收窗口时,无线链路也可以支持更多的吞吐量。
图3包括图3A和3B,其示出在第二场景中客户端10与服务器20之间的数据通信。图3A示出了数据通信的时序/次序图。结合图2A的图示进行的评述对于图3A而言也可以适用。在图3A中,在接收到的数据分组之间的间隙仍然较大的期间示出不连续DL活动。特别地,图3A中的接收到的数据分组之间的间隙可以大于图2A中的对应间隙。图3A可以指代以上已经提到的“较坏”情况,在其中客户端10与服务器20之间的数据传输可能不加速并且可能受阻。因此,图3A中的数据通信不包括如图2A中的从不连续DL活动到连续DL活动的过渡。
图3B示意性地示出了图3A的时序/次序图的数据通信的更详细的视图。在第一时间间隔I中,数据通信可以类似于图2B的第一时间间隔I的数据通信。特别地,由客户端10执行的第一CRC可以指示TCP数据分组的成功接收,使得客户端10可以在UL中发送调度请求和TCPACK。图3B中的第二间隔II可以对应于图2B的第二时间间隔II。类似于图2B,由图3B中的时间间隔I和II形成的周期的持续时间tcycle可以在约50毫秒到约75毫秒的范围中。
在第三时间间隔III中,服务器20可以将进一步的DL TCP数据分组发送到客户端10。在接收到DL TCP数据分组之后,客户端10可以执行对接收到的数据的CRC。在图3B的示例中,客户端处的第一CRC可以指示DL TCP数据分组的接收不成功。例如,否定CRC可以源于DL方向上的误块率(BLER)的值较高。较高值的BLER可以源于所采用的MCS的值较高。也就是说,DL中所选择的MCS值越高,客户端10处数据接收不成功的概率或风险越高。客户端10可以将PHY NACK数据分组发送到服务器20,以便指示DL TCP数据分组的接收不成功。PHYNACK数据分组可以在PHY层上从UE发送到NodeB。在接收到PHY NACK之后,服务器20可以第二次发送DL TCP数据分组。可以在PHY层上从NodeB到UE执行DL TCP数据分组的这种重传。第二CRC可能再次是不成功的,使得客户端10可以将第二PHY NACK数据分组发送到服务器20,以便指示再次未成功接收到DL TCP数据分组。在接收到第二PHY NACK数据分组之后,服务器20可以第三次发送DL TCP数据分组。客户端10接着可以执行CRC,指示第三次接收的DLTCP分组的数据接收成功。因此,客户端10接着可以以调度请求来进行响应,从而在UL中发送TCP ACK并且进一步地请求从服务器20到客户端10的进一步的DL TCP数据分组的传输(或传输的调度)。因此,客户端10可以通过将UL TCP ACK数据分组发送到服务器20来确认DL TCP数据分组的接收。在第四时间间隔IV中,没有数据可以由客户端10从服务器20接收。第四时间间隔IV可以类似于例如第二时间间隔II。
由于在第三时间间隔III中需要重传DL TCP数据分组,因此由图3B中的时间间隔III和IV形成的周期的持续时间tcycle可以大于由时间间隔I和II形成的周期的持续时间tcycle。在一个示例中,DL TCP数据分组的一次单个重传可以需要约7毫秒到约9毫秒。通常,需要一次或多次重传DL TCP数据的周期的持续时间tcycle可以在约75毫秒到约100毫秒的范围中。
如以上已经讨论的,图3可以指代“较坏”情况,在其中客户端10与服务器20之间的数据传输可能不加速并且可能受阻,使得至连续DL活动的传输可能被延迟或者甚至被完全阻止。这可能是由因需要重传而导致持续时间tcycle的大小增加而引起。注意到,根据较坏情况的数据传输还可以包括没有重传的周期(例如,参见图3B中的时间间隔I)。此外,对于一个周期所需的DL TCP数据分组的重传次数可以是任意的,并且对于不同的数据分组可以变化。例如,第一DL TCP数据分组可能需要重传例如仅一次,而第二DL TCP数据分组可能需要重传例如三次或四次。
结合图2和3讨论的不同的场景在客户端10与服务器20之间的数据吞吐量上可以不同。在针对较好情况(参见图2)的示例中,客户端10在少于3秒的时间中可以接收约5 MB的数据量,而接收相同的数据量在较坏情况(参见图3)下可能花费高达6秒。
图4示意性地示出了可以操作为无线通信系统中的客户端(例如,图1的客户端10)的用户设备400。UE 400可以用于执行根据本文所描述的公开的任一方法。例如,UE 400可以用在结合图2和3所描述的场景之一中。
UE 400可以包括接收天线12。在图4中,为了简单起见,仅示出一个接收天线12。然而,图4的示例可以扩展到任意数量的接收天线,特别是多个动态接收分集天线的情况。接收天线12可以被配置为从例如可以操作为服务器(例如,图1的服务器20)的eNodeB接收下行链路无线电信号。此外,接收天线12可以被配置为将接收到的信号转换成表示接收到的下行信号的电信号。对于多个接收天线的情况,UE 400可以被配置为执行任意天线切换方案和/或可以基于任意动态接收分集技术。
UE 400可以还包括天线端口14,天线端口14可以提供接收天线12与可以包括可以被配置为处理表示接收到的下行信号的电信号的组件的电路之间的耦合。对于多个接收天线的情况,UE 400可以包括可以耦合到相应接收天线的其它天线端口(未示出)。
UE 400可以还包括接收机电路16,其可以耦合到接收天线端口14。接收机电路16可以被配置为处理从天线端口14接收到的电信号。例如,接收机电路16可以包括以下中的至少一个或者可以为以下中的至少一个的一部分:Rake接收机、均衡器、OFDM接收机、以及取决于所考虑的UE或者客户端的类型的其它合适的接收机。接收机电路16可以包括一个或多个天线放大器,其可以被配置为放大或衰减接收到的信号。此外,接收机电路16可以包括模数转换器(ADC),其可以被配置为将接收到的模拟信号转换到数字域中。此外,接收机电路16可以包括一个或多个混频器,其可以被配置为将接收到的信号向下混频到基带(或者中间频带)。此外,接收机电路16可以包括可以被配置为解调接收到的信号的一个或多个解调器和/或可以被配置为解码接收到的信号的一个或多个解码器。例如,(解)调制方案(星座图)可以基于相移键控(PSK)或正交幅度调制(QAM),例如16QAM或256QAM。UE 400可以包括其它接收机电路,其可以耦合到相应的接收天线端口(未示出)。
UE 400可以还包括处理单元18,其可以耦合到接收机电路16并且被配置为处理从接收机电路16接收到的信号。例如,处理单元18可以对应于或者可以包括数字信号处理器或应用处理器。处理单元18可以被配置为运行一个或多个软件程序。例如,协议栈软件可以运行在处理单元18上。这种协议栈软件可以被配置为控制UE 400与服务器(例如,eNodeB)之间的根据TCP协议的数据传输。就此而言,处理单元18可以特别地被配置为监听UE 400与服务器之间的数据连接。在一个示例中,处理单元18可以特别地被配置为监视从UE 400到服务器的调度请求的传输。在其它示例中,处理单元18可以被配置为基于从服务器接收到的数据来检测数据率。在又一示例中,处理单元18可以被配置为检测自服务器的第一数据分组的接收与自服务器的随后第二数据分组的接收之间的持续时间。基于监听数据连接,处理单元18可以特别地被配置为检测自服务器的数据传输的开始。
UE 400可以还包括控制单元22,其可以耦合到接收机电路16和处理单元18中的至少一个。控制单元22可以被配置为调整UE 400与服务器之间的数据传输。特别地,控制单元22可以被配置为调整可以发送到服务器以用于链路适配(特别地,用于下行链路通信的MCS的适配)的信道质量指示符的值。例如,可以基于由处理单元18在其监听活动期间检测到自服务器的数据传输的开始来调整信道质量指示符。
UE 400可以还包括存储器24,其可以耦合到处理单元18和控制单元22中的至少一个。例如,存储器24可以被配置为存储预定义的信道质量指示符的值。预定义的值可以例如存储在数据库中,并且可以由处理单元18和控制单元22中的至少一个来读取。
UE 400可以还包括发射机电路26,其可以耦合到控制单元22以及UE 400的其它组件(例如,处理单元18)。发射机电路26可以被配置为处理可以由UE 400发送到服务器的信号。就此而言,发射机电路26可以特别地被配置为特别地以相反的方式执行与接收机电路16类似的动作。例如,发射机电路26可以包括:编码器,用于编码发送信号;调制器,用于调制发送信号;混频器,用于将发送信号混频到所要求的频带;数模转换器(DAC),用于将数字信号转换成模拟信号;一个或多个天线放大器,等。发射机电路26可以耦合到天线端口28。天线端口28可以耦合到发送天线30,以用于将发送信号广播到服务器。UE 400可以包括其它发送天线,为简单起见,未示出它们。在发送和接收两者处使用多个天线可以得到多入多出(MIMO)系统。在链路的两端处使用分集技术可以称作空时编码。为了说明目的,在图4中,将接收天线12和发送天线30示为UE 400的分开的组件。就此而言,将注意到,在现实UE中,可以将同一天线用于无线电信号的接收和发送。
图5示意性地示出了根据本公开的方法500。方法500可以看作示出本公开的基本构思的示例。方法500可以由其它动作(例如,结合图8的方法800所描述的一个或多个动作)来扩展。
在动作32中,客户端监听至服务器的数据连接。返回参见图4,客户端可以对应于可以从服务器接收数据的UE 400。至服务器的数据连接可以由例如处理单元18来监听。以下结合图8的方法800来讨论用于监听数据连接的示例。在进一步的动作34中,基于检测到自服务器的数据传输的开始来调整信道质量指示符的值。返回参见图4,信道质量指示符的值可以由例如控制单元22来调整。以下结合图8的方法800来讨论用于调整信道质量指示符的示例。在进一步的动作36中,将调整后的信道质量指示符的值发送到服务器(或基站)。
图6示意性地示出了根据本公开的方法600。方法600可以看作示出本公开的基本构思的示例。方法600可以由其它动作(例如,结合图8的方法800描述的一个或多个动作)来扩展。
在动作38中,在客户端处检测到自服务器的数据传输。在进一步的动作40中,调整当前的信道质量指示符的值。在进一步的动作42中,将减小的信道质量指示符的值发送到服务器。例如,方法600的动作38至42可以类似于方法500的动作32至36。在进一步的动作44中,评估来自服务器的数据的数据吞吐量。返回参见图4,数据吞吐量可以由例如处理单元18来评估。以下结合图8的方法800来讨论用于评估数据吞吐量的示例。在进一步的动作46中,如果数据吞吐量满足预定条件,则对调整后的信道质量指示符的值重新调整。返回参见图4,动作46可以由例如控制单元22来执行。以下结合图8的方法800来讨论用于对调整后的信道质量指示符的值重新调整的示例。
图7示意性地示出了被配置为执行根据本公开的方法的设备700。例如,设备700可以被配置为执行图5的方法500。设备700包括监听单元48,其被配置为监听至服务器的数据连接。就此而言,设备700可以可选地包括用于接收监听动作可以基于的数据的输入端子50。设备700还包括控制单元52,其被配置为基于由监听单元48检测到自服务器的数据传输的开始来调整信道质量指示符的值。减小的信道质量指示符的值被配置为发送到服务器并且可以在设备700的可选输出端子62处输出。
图7的设备700可以被看作本公开的基本构思。因此,设备700以一般性的方式示出,当然可以包括为了简单起见未示出的其它组件。例如,设备700可以进一步包括结合图4描述的一个或多个组件,或者被配置为执行结合图8的方法800描述的一个或多个动作的组件。图4的设备400可以看作设备700的更详细的实现方式。
图8示意性地示出了根据本公开的方法800。方法800可以看作方法500和600的增强或者更详细的版本。方法800可以由网络的客户端在客户端与服务器通信中执行,其中,通信可以例如基于TCP。例如,设备400和700中的每一个都可以被配置为执行方法800的动作。在以下中,结合图4的设备400来描述方法800。在此情况下,在以下描述的一个或多个动作可以由设备400的处理单元18和控制单元22中的至少一个来执行。
在动作54中,可以建立客户端与服务器之间的连接,特别地,全双工连接。在一个示例中,连接可以基于TCP,并且可以基于三次握手来建立。在建立连接期间以及在自服务器的数据传输(例如,文件下载)可以开始之前,在动作54中,客户端可以将初始CQI值上报给服务器(或基站)。例如,初始CQI值可以取决于被配置为识别网络运营商的信息。这种信息可以例如存储在客户端的用户身份模块(SIM)或存储器上。不同的网络运营商可以为他们的网络中的通信指明不同的初始CQI值。初始CQI值可以由客户端从例如SIM或存储器中读取,并且可以上报给服务器(或基站)。基于上报的CQI值,服务器(或基站)于是可以确定用于初始DL通信的MCS。稍后,客户端(或UE)可以确定可以例如基于SNR测量的CQI值,并且将这些CQI值上报到服务器(或基站)。因此,CQI值可以因链路或信道状况(例如,SNR)变化而随时间变化。基于例如SNR测量的CQI值可以称为正常CQI值。注意到,在动作54期间的客户端与服务器之间的通信可以特别地基于在从服务器到客户端的净荷数据的实际传输(例如,数据文件或者网站的下载)之前发送的数据。在动作54期间发送的数据可以例如包括信令数据、控制数据、用于FTP登录的数据、用于建立客户端与服务器之间的连接的数据等。
在进一步的动作56中,客户端可以监听所建立的至服务器的数据连接。例如,动作56可以由设备400的处理单元18来执行。特别地,监听动作56的目的可以是检测客户端与服务器之间的数据传输的开始,其中,该开始可以对应于分别结合图2A和3A描述的不连续DL活动的开始。例如,这种开始可以对应于由客户端从服务器下载的数据文件的开始。因此,待检测的DL活动可以特别地不同于动作54期间客户端与服务器之间的通信。不连续DL活动可能发生在较好情况(参见图2A)或者较坏情况(图3A)下。因此,在进一步的示例中,监听动作56的附加目的可以是检测客户端与服务器之间的数据传输的开始是否基于较坏情况(参见图3A)。以下描述用于监听至服务器的数据连接的各种示例性可能性。如果检测到客户端与服务器之间的数据通信的开始(参见“是”),则可以执行进一步的动作58。如果没有检测到数据通信的开始(参见“否”),则可以再次执行动作56。例如,监听动作56可以基于预定时段来周期性地重复。
在进一步的动作58中,如果在动作56中检测到自服务器的数据传输的开始(参见“是”),则客户端可以调整CQI的值。例如,动作58可以例如由设备400的控制单元22来执行。以下描述用于在动作58中调整CQI的值的各种示例性可能性。客户端可以将调整后的CQI值发送到服务器。基于调整后的CQI值,服务器可以特别地通过调整用于DL的MCS来适配客户端与服务器之间的DL通信。客户端可以特别地调整CQI值,使得由服务器调整的MCS可以得到用于DL通信的BLER值,针对该值,未成功接收的DL TCP数据分组的数量由此被减小。由于重传的DL TCP数据分组的数量减小,因此接收到的DL TCP数据分组之间的周期时间减小,并且根据图2A中的较好情况,可以发生不连续DL活动。因此,客户端与服务器之间的数据传输可以加速并且可以不受阻,使得至连续DL活动的过渡不被延迟或者不被阻止。如果已经根据动作58调整了CQI,则可以执行进一步的动作60。
在动作60中,客户端与服务器之间的数据吞吐量可以由客户端来评估。例如,数据吞吐量可以周期性地评估。此外,如果数据吞吐量满足预定条件,则客户端可以重新调整已经在动作58中调整过的CQI值。例如,数据吞吐量的评估可以由设备400的处理单元18来执行,并且CQI值的重新调整可以例如由设备400的控制单元22来执行。以下描述在动作60中评估数据吞吐量以及对调整后的CQI值重新调整的各种示例性可能性。特别地,动作60的目的可以是确定客户端与服务器之间的DL中的数据传输是否已经进入连续DL活动(例如,参见图2A)。当从不连续DL活动到连续DL活动的传输是成功的时,如在较坏情况下的数据通信减少的风险可以已经被降低,并且可以不再需要根据动作58的CQI值的调整。因此,如果数据传输已经进入连续DL活动,则客户端可以对调整后的CQI值重新调整。在一个示例中,可以将CQI值调整为初始CQI值,使得可以再次执行动作54(参见“是”)。如果没有对调整后的CQI值重新调整(参见“否”),则可以再次执行动作60。
现在返回参见图8的动作56。以下讨论用于监听至服务器的连接并且检测自服务器的数据传输的开始的示例。所描述的示例可以以任意方式来组合。
在一个示例中,在动作56中监听至服务器的数据连接可以包括通过协议栈软件来监听数据连接的动作。协议栈软件可以被配置为检测自服务器的数据传输的开始。例如,软件可以知晓所发送的数据分组的编号,并且因此检测例如TCP文件下载的第一个数据分组的传输。协议栈软件可以例如运行在设备400的处理单元18中所包括的处理器上。如果数据传输的开始由协议栈软件来检测,则协议栈软件可以被配置为生成触发信号以触发根据动作58对CQI值的调整。
在进一步的示例中,在动作56中监听至服务器的数据连接可以包括检查接收到的数据分组的动作。客户端可以接收数据分组,并且可以基于对数据分组的数据检查来检测接收到的数据分组是否对应于TCP数据分组。对应的信息可以例如包括在数据分组的头中。对于TCP数据分组的情况,客户端可以例如检测数据分组的序号。如果序号指示数据传输的开始,则可以生成触发信号以触发根据动作58对CQI值的调整。
在进一步的示例中,在动作56中监听至服务器的数据连接可以包括监听从客户端到服务器的调度请求的传输的动作。这里,如果根据不连续DL活动的UL中的调度请求的传输开始,则可以检测到从服务器到客户端的数据传输。特别地,后续调度请求的传输之间的周期时间可以是客户端与服务器之间的数据传输是否发生在不连续DL活动中的指示符,对于该不连续DL活动,可以优选调整CQI值。结合图2和3来描述不连续DL活动中的后续调度请求之间的时间间隔的值。
在进一步的示例中,在动作56中监听至服务器的数据连接可以包括:基于接收到的数据来检测数据率。如果检测到的数据率可以超过数据率阈值,则可以检测到自服务器的数据传输的开始。这里,数据率阈值可以特别地为大于在动作54中可以典型地出现的数据率。返回参见图2和3,数据率可以特别地用于检测客户端与服务器之间的数据传输是否在不连续DL活动的阶段中。例如,数据率阈值可以在约500kbps到约5Mbps的范围中。
在进一步的示例中,在动作56中监听至服务器的数据连接可以包括:检测第一数据分组的接收与随后第二数据分组的接收之间的持续时间。如果持续时间小于时间阈值,则可以检测到自服务器的数据传输的开始。返回参见图2和3,数据率可以特别地用于检测客户端与服务器之间的数据传输是否在不连续DL活动的阶段中。例如,时间阈值可以在约50ms到约100ms的范围中。
现在返回参见图8的动作58。以下讨论用于调整CQI值的示例。所描述的示例可以以任意方式来组合。
在一个示例中,在动作58中调整CQI值可以包括将当前CQI值减小差值的动作。例如,在动作54中使用的CQI值可以被减小预定差值。CQI可以例如取0到15之间的值。在这种情况下,预定差值可以具有值1、2、3或4。也就是说,对于初始CQI值为10并且预定差值为2的示例性情况,调整后的CQI值为8。在一个示例中,差值可以取决于当前CQI值。例如,如果CQI将要被调整到特定值,则可以需要取决于当前CQI值来选择差值。
在进一步的示例中,调整后的CQI值可以小于预定最大值。例如,可以由客户端确定不可以允许调整后的值取大于例如10的值。
在进一步的示例中,调整后的信道质量指示符的值可以取决于干扰小区的数量。在第一情况中,干扰小区的数量可以大于在第二情况中的干扰小区的数量。这里,在第一情况中CQI值的减小可以大于在第二情况中CQI值的减小。
在进一步的示例中,调整后的信道质量指示符的值可以取决于被配置为识别网络运营商的信息。第一网络运营商可以规定可以比由第二网络运营商规定的初始CQI值大的初始CQI值。这里,识别出第一网络运营商时CQI值的减小可以比识别出第二网络运营商时CQI值的减小更大。
在进一步的示例中,可以从数据库中读取调整后的CQI值。存储在数据库中的CQI值可以是固定的预定值。替换地,数据库中的CQI值可以取决于之前的CQI调整的结果来随时间进行更新。存储在数据库中的CQI值还可以取决于先前基于CQI值的先前调整来执行的测量。
在进一步的示例中,基于由服务器(或基站)基于调整后的CQI值确定的MCS的下行通信可以具有小于预定阈值的BLER。例如,预定阈值可以取约0%到约12%之间的值。换言之,客户端可以调整CQI值,使得DL BLER减小到约0%到约12%之间的值。
现在返回参见图8的动作60。以下讨论用于在动作60中评估数据吞吐量并且对调整后的CQI值重新调整的示例。示例可以以任意方式组合。在动作60中,可以特别地要求检测DL活动是否进入例如如图2A中所示的连续阶段。在连续DL活动阶段中,可以不再需要根据动作58来调整CQI值,因为已经过了关键的不连续DL活动。
在一个示例中,在动作60中评估数据吞吐量可以包括监听从客户端到服务器的调度请求的传输的动作。这里,如果在大于预定时间阈值的时间间隔期间没有检测到从客户端到服务器的调度请求的传输,则可以对调整后的CQI值重新调整。例如,时间阈值可以在从约90毫秒到约110毫秒的范围中,并且可以特别地具有约100毫秒的值。返回参见图2A的场景,在连续DL活动的阶段中,客户端可能未必将调度请求发送到服务器。连续DL活动的状态可以通过所描述的监听调度请求的传输来检测。
在进一步的示例中,在动作60中评估数据吞吐量可以包括基于在客户端处从服务器接收到的数据来检测数据率的动作。这里,如果检测到的数据率大于数据率阈值,则可以对调整后的CQI值重新调整。例如,数据率阈值可以在约5兆比特每秒到约15兆比特每秒的范围中,并且特别地,具有约10Mbit每秒的值。返回参见图2A的场景,连续DL活动的状态可以通过检测接收到的数据率来确定,特别是在数据率超过数据率阈值时。
在进一步的示例中,在动作60中评估数据吞吐量可以包括检测客户端处自服务器的第一数据分组的接收与客户端处自服务器的随后第二数据分组的接收之间的持续时间的动作。这里,如果持续时间小于时间阈值,则可以对调整后的CQI值重新调整。例如,时间阈值可以在约10毫秒到约50毫秒的范围中。返回参见图2A的场景,连续DL活动的状态可以通过检测客户端处接收到的两个相继的数据分组之间的间隙的大小来检测。如果间隙的大小小于时间阈值,则可以假设客户端已经操作在连续DL活动阶段。
在进一步的示例中,在动作60中评估数据吞吐量可以包括:基于在客户端处从服务器接收到的数据来检测数据率。如果检测到数据率小于数据率阈值持续大于时间阈值的时间间隔,则可以对调整后的CQI值重新调整。例如,在如图2A中的较好情况下的不连续DL活动阶段中的间隙图案可以通常持续小于例如约1秒。因此,如果在例如约2秒的时间阈值之后仍然没有检测到过渡到连续DL活动,则可以将调整后的CQI值重新调整到例如初始或正常CQI值。
在进一步的示例中,在动作60中评估数据吞吐量可以包括检测客户端与服务器之间的数据传输的中断的动作,其中,中断可以基于接收窗口。这里,如果没有(或不再)检测到中断,则可以对调整后的CQI值重新调整。返回参见图2A,接收窗口的大小可以随时间而增加。也就是说,接收窗口的大小可以在文件下载的开始处较小,使得服务器与客户端之间的数据通信可能有时不连续。通常,中断可以发生在不连续DL活动的阶段和/或连续活动的阶段。
例如,检测客户端与服务器之间的数据传输的中断可以包括检查由客户端接收到的数据分组的动作。客户端可以接收数据分组,并且可以基于对数据分组的数据检查来检测接收到的数据分组是否对应于TCP数据分组。对应的信息可以例如包括在数据分组的头中。对于TCP数据分组的情况,客户端可以检测数据分组的序号。基于已知的序号以及关于当前接收窗口的附加信息,可以确定数据通信的中断是否由接收窗口的当前大小引起。数据检查以及中断检测可以例如由图4中的处理单元18和控制单元22中的至少一个来执行。
例如,客户端与服务器之间的数据传输的中断可以由例如可以运行在数字信号处理器上的协议栈软件来检测。特别地,协议栈软件可以在任何给定时间知晓接收到的数据分组的序号以及当前接收窗口的大小。基于该信息,软件可以确定数据通信的中断是否由当前接收窗口的大小引起。返回参见图4的设备400,运行在例如处理单元18上的TCP软件可以基于接收窗口来监听客户端与服务器之间的数据通信是否可能中断。如果检测到中断的结束,则处理单元18可以生成触发信号并且将触发信号发送到控制单元22。在接收到触发信号之后,控制单元22可以重新调整CQI值。
示例
以下属于进一步的实施例。
示例1是一种客户端处的方法,包括:监听至服务器的数据连接;基于检测到自服务器的数据传输的开始,调整信道质量指示符的值;以及将调整后的信道质量指示符的值发送到服务器。
在示例2中,示例1的主题可以可选地包括:基于调整后的信道质量指示符的值来确定用于下行链路通信的调制编码方案。
在示例3中,示例1或2的主题可以可选地包括:调整信道质量指示符的值包括:将当前的信道质量指示符的值减小一差值。
在示例4中,示例3的主题可以可选地包括:所述差值取决于当前的信道质量指示符的值。
在示例5中,前述示例之一的主题可以可选地包括:调整后的信道质量指示符的值小于预定最大值。
在示例6中,前述示例之一的主题可以可选地包括:调整后的信道质量指示符的值取决于干扰小区的数量。
在示例7中,前述示例之一的主题可以可选地包括:调整后的信道质量指示符的值取决于被配置为识别网络运营商的信息。
在示例8中,前述示例之一的主题可以可选地包括:从数据库中读取调整后的信道质量指示符的值。
在示例9中,前述示例之一的主题可以可选地包括:基于按照调整后的信道质量指示符的值所确定的调制编码方案的下行链路通信包括小于约10%的误块率。
在示例10中,前述示例之一的主题可以可选地包括:监听至服务器的数据连接包括:检查接收到的数据分组。
在示例11中,前述示例之一的主题可以可选地进一步包括:用协议栈软件来检测自服务器的数据传输的开始。
在示例12中,前述示例之一的主题可以可选地包括:监听至服务器的数据连接包括:监听至服务器的调度请求的传输。
在示例13中,前述示例之一的主题可以可选地包括:监听至服务器的数据连接包括:基于接收到的数据来检测数据率,进一步包括:基于检测数据率超过数据率阈值,检测自服务器的数据传输的开始。
在示例14中,前述示例之一的主题可以可选地包括:监听至服务器的数据连接包括:检测第一数据分组的接收与随后第二数据分组的接收之间的持续时间,进一步包括:基于检测所述持续时间小于时间阈值,检测自服务器的数据传输的开始。
在示例15中,前述示例之一的主题可以可选地包括:在调整信道质量指示符的值之后,评估来自服务器的数据的数据吞吐量;以及基于所述数据吞吐量,对调整后的信道质量指示符的值重新调整。
在示例16中,示例15的主题可以可选地包括:评估数据吞吐量包括:监听至服务器的调度请求的传输,进一步包括:如果在大于预定时间阈值的时间间隔期间没有检测到调度请求的传输,则重新调整信道质量指示符。
在示例17中,示例15或16的主题可以可选地包括:评估数据吞吐量包括:基于接收到的数据来检测数据率,进一步包括:如果检测到数据率大于数据率阈值,则重新调整信道质量指示符。
在示例18中,示例15至17之一的主题可以可选地包括:评估数据吞吐量包括:检测第一数据分组的接收与随后第二数据分组的接收之间的持续时间,进一步包括:如果所述持续时间小于时间阈值,则重新调整信道质量指示符。
在示例19中,示例15至18之一的主题可以可选地包括:评估数据吞吐量包括:基于接收到的数据来检测数据率,进一步包括:如果检测到的数据率小于数据率阈值持续大于时间阈值的时间间隔,则重新调整信道质量指示符。
在示例20中,前述示例之一的主题可以可选地包括:在检测自服务器的数据传输的开始之前,建立客户端与服务器之间的全双工连接。
示例21是一种客户端处的方法,包括:检测自服务器的数据传输;基于检测到数据传输,调整当前的信道质量指示符的值;将调整后的信道质量指示符的值发送到服务器;评估来自服务器的数据的数据吞吐量;以及如果数据吞吐量满足预定条件,则对调整后的信道质量指示符的值重新调整。
在示例22中,示例21的主题可以可选地包括:自服务器的数据传输基于传输控制协议。
在示例23中,示例21或22的主题可以可选地包括:信道质量指示符被配置为指示下行链路信道的质量。
示例24是一种设备,包括:监听单元,被配置为监听至服务器的数据连接;和控制单元,被配置为基于由监听单元检测到自服务器的数据传输的开始,调整信道质量指示符的值,其中,所述设备被配置为将调整后的信道质量指示符的值发送到服务器。
在示例25中,示例24的主题可以可选地包括:应用处理器,被配置为运行协议栈软件,其中,协议栈软件被配置为检测自服务器的数据传输的开始。
在示例26中,示例24或25的主题可以可选地包括:存储器,被配置为存储信道质量指示符的预定义值。
示例27是一种设备,包括:监听模块,用于监听至服务器的数据连接;和控制模块,用于基于由监听模块检测到自服务器的数据传输的开始,调整信道质量指示符的值,其中,调整后的信道质量指示符的值被配置为发送到服务器。
在示例28中,示例27的主题可以可选地包括:处理模块,用于运行协议栈软件,其中,协议栈软件被配置为检测自服务器的数据传输的开始。
在示例29中,示例27或28的主题可以可选地包括:存储模块,用于存储信道质量指示符的预定义值。
示例30是一种网络,包括:服务器;和客户端,其中,客户端包括示例24至29之一的设备。
示例31是一种计算机可读介质,其上存储有计算机指令,指令当由计算机执行时使计算机执行示例1至23之一的方法。
此外,虽然已经关于若干实现方式中的仅一个公开了本公开的特定特征或方面,但是,这些特征或方面可以按照任何给定或特定应用可能是期望且有利的那样,与其它实现方式的一个或多个其它特征或方面组合。此外,如果在具体实施方式或权利要求中使用了术语“包括”、“具有”、“带有”或其变型,则这些术语意图以类似于术语“包含”的方式而为包括性的。另外,术语“示例性”、“例如”以及“比如”仅意图表示示例,而非最佳的或者最优的。
此外,特别是关于由以上所描述的组件或结构(部件、设备、电路、系统等)执行的各种功能,除非另行指示,否则用于描述这些组件的术语(包括对“模块”的引用)意图也对应于执行所描述的组件的规定功能的任何组件或结构(例如,在功能上等同),即使在结构上与执行本文中所示的本公开的示例性实现方式中的功能的所公开的结构不等同。例如,任何组件或结构可以包括执行指令的处理器,以便执行各种功能中的至少一部分。
尽管本文已经示出并描述了特定方面,但是本领域技术人员将理解,多种替代和/或等价实现方式可以替代所示和所描述的特定方面,而不脱离本公开的范围。本申请意图覆盖本文所讨论的特定方面的任何修改或变型。

Claims (24)

1.一种客户端处的方法,包括:
监听至服务器的数据连接;
基于检测到自服务器的数据传输的开始,调整信道质量指示符的值;以及
将调整后的信道质量指示符的值发送到服务器,
其中所述检测到自服务器的数据传输的开始包括以下至少一项:
用协议栈软件检测自服务器的数据传输的开始;
基于检测数据速率超过数据速率阈值,检测自服务器的数据传输的开始,其中所述数据速率是基于接收到的数据检测到的;或
基于检测第一数据分组的接收与随后第二数据分组的接收之间的持续时间小于时间阈值,检测自服务器的数据传输的开始。
2.根据权利要求1所述的方法,还包括:
基于调整后的信道质量指示符的值,确定用于下行链路通信的调制和编码方案。
3.根据权利要求1或2所述的方法,其中,调整信道质量指示符的值包括:将信道质量指示符的当前值减去差值。
4.根据权利要求3所述的方法,其中,所述差值取决于信道质量指示符的当前值。
5.根据权利要求1或2所述的方法,其中,调整后的信道质量指示符的值小于预定最大值。
6.根据权利要求1或2所述的方法,其中,调整后的信道质量指示符的值取决于干扰小区的数量。
7.根据权利要求1或2所述的方法,其中,调整后的信道质量指示符的值取决于被配置为识别网络运营商的信息。
8.根据权利要求1或2所述的方法,还包括:
从数据库中读取调整后的信道质量指示符的值。
9.根据权利要求2所述的方法,其中,基于按照调整后的信道质量指示符的值所确定的调制和编码方案的下行链路通信包括小于10%的误块率。
10.根据权利要求1或2所述的方法,其中,监听至服务器的数据连接包括:检查接收到的数据分组。
11.根据权利要求1或2所述的方法,其中,监听至服务器的数据连接包括:监听至服务器的调度请求的传输。
12.根据权利要求1或2所述的方法,其中,监听至服务器的数据连接包括:基于接收到的数据来检测数据速率。
13.根据权利要求1或2所述的方法,其中,监听至服务器的数据连接包括:检测第一数据分组的接收与随后第二数据分组的接收之间的持续时间。
14.根据权利要求1或2所述的方法,还包括:
在调整信道质量指示符的值之后,评估来自服务器的数据的数据吞吐量;以及
基于所述数据吞吐量,对调整后的信道质量指示符的值重新调整。
15.根据权利要求14所述的方法,其中,评估数据吞吐量包括:监听至服务器的调度请求的传输,所述方法还包括:
如果在大于预定时间阈值的时间间隔期间没有检测到调度请求的传输,则对调整后的信道质量指示符的值重新调整。
16.根据权利要求14所述的方法,其中,评估数据吞吐量包括:基于接收到的数据来检测另外的数据速率,所述方法还包括:
如果检测到的另外的数据速率大于另外的数据速率阈值,则对调整后的信道质量指示符的值重新调整。
17.根据权利要求14所述的方法,其中,评估数据吞吐量包括:检测第三数据分组的接收与随后第四数据分组的接收之间的另外的持续时间,所述方法还包括:
如果所述另外的持续时间小于另外的时间阈值,则对调整后的信道质量指示符的值重新调整。
18.根据权利要求14所述的方法,其中,评估数据吞吐量包括:基于接收到的数据来检测另外的数据速率,所述方法还包括:
如果在大于时间阈值的时间间隔内,检测到的另外的数据速率小于数据速率阈值,则对调整后的信道质量指示符的值重新调整。
19.根据权利要求1或2所述的方法,还包括:
在检测自服务器的数据传输的开始之前,在客户端与服务器之间建立全双工连接。
20.一种客户端处的方法,包括:
检测自服务器的数据传输的开始;
基于检测到自服务器的数据传输的开始,调整信道质量指示符的当前值;
将调整后的信道质量指示符的值发送到服务器;
评估来自服务器的数据的数据吞吐量;以及
如果所述数据吞吐量满足预定条件,则对调整后的信道质量指示符的值重新调整,
其中所述检测到自服务器的数据传输的开始包括以下至少一项:
用协议栈软件检测自服务器的数据传输的开始;
基于检测数据速率超过数据速率阈值,检测自服务器的数据传输的开始,其中所述数据速率是基于接收到的数据检测到的;或
基于检测第一数据分组的接收与随后第二数据分组的接收之间的持续时间小于时间阈值,检测自服务器的数据传输的开始。
21.根据权利要求20所述的方法,其中,自服务器的数据传输基于传输控制协议。
22.一种客户端设备,包括:
监听单元,被配置为:监听至服务器的数据连接;和
控制单元,被配置为:基于由监听单元检测到自服务器的数据传输的开始,调整信道质量指示符的值,其中,所述设备被配置为:将调整后的信道质量指示符的值发送到服务器,
其中所述检测到自服务器的数据传输的开始包括以下至少一项:
用协议栈软件检测自服务器的数据传输的开始;
基于检测数据速率超过数据速率阈值,检测自服务器的数据传输的开始,其中所述数据速率是基于接收到的数据检测到的;或
基于检测第一数据分组的接收与随后第二数据分组的接收之间的持续时间小于时间阈值,检测自服务器的数据传输的开始。
23.根据权利要求22所述的设备,还包括:
应用处理器,被配置为:运行协议栈软件。
24.根据权利要求22或23所述的设备,还包括:
存储器,被配置为:存储信道质量指示符的预定义值。
CN201680029347.6A 2015-06-22 2016-05-20 用于提供客户端与服务器之间的鲁棒的数据通信的方法和设备 Active CN107646177B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102015109951.9A DE102015109951B4 (de) 2015-06-22 2015-06-22 Verfahren und Vorrichtungen zum Bereitstellen einer robusten Datenkommunikation zwischen einem Client und einem Server
DE102015109951.9 2015-06-22
PCT/EP2016/061449 WO2016206877A1 (en) 2015-06-22 2016-05-20 Methods and devices for providing a robust data communication between a client and a server

Publications (2)

Publication Number Publication Date
CN107646177A CN107646177A (zh) 2018-01-30
CN107646177B true CN107646177B (zh) 2020-12-01

Family

ID=56084015

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680029347.6A Active CN107646177B (zh) 2015-06-22 2016-05-20 用于提供客户端与服务器之间的鲁棒的数据通信的方法和设备

Country Status (4)

Country Link
US (1) US10523360B2 (zh)
CN (1) CN107646177B (zh)
DE (1) DE102015109951B4 (zh)
WO (1) WO2016206877A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015109951B4 (de) 2015-06-22 2021-10-21 Apple Inc. Verfahren und Vorrichtungen zum Bereitstellen einer robusten Datenkommunikation zwischen einem Client und einem Server
US10383101B1 (en) * 2017-03-06 2019-08-13 Sprint Spectrum L.P. Dynamic link adaptation
US10574427B2 (en) * 2017-10-20 2020-02-25 Foster-Miller, Inc. Assured data transfer for full-duplex communication
CN113595698B (zh) * 2020-04-30 2023-06-02 华为技术有限公司 一种调整信道质量指标cqi的方法和终端设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1805426A (zh) * 2005-01-14 2006-07-19 华为技术有限公司 高速下行分组数据包接入中校正信道质量指示的方法
CN1976535A (zh) * 2006-12-12 2007-06-06 华为技术有限公司 信道自适应装置与信道自适应方法
CN101630991A (zh) * 2008-07-15 2010-01-20 中兴通讯股份有限公司 时分同步码分多址接入终端及其信道质量指示确定方法
CN101877624A (zh) * 2010-06-23 2010-11-03 中兴通讯股份有限公司 信道条件指示cqi修正的方法及基站

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007013159A1 (ja) 2005-07-28 2007-02-01 Fujitsu Limited 無線送信装置及び同装置における下り送信制御方法
US7782817B2 (en) * 2005-11-04 2010-08-24 Intel Corporation Systems and techniques for improved data throughput in a wireless network
JP4904994B2 (ja) * 2006-08-25 2012-03-28 富士通東芝モバイルコミュニケーションズ株式会社 移動無線端末装置
US8068427B2 (en) * 2006-09-27 2011-11-29 Qualcomm, Incorporated Dynamic channel quality reporting in a wireless communication system
US8509160B2 (en) * 2008-02-11 2013-08-13 Apple Inc. Method for efficient CQI feedback
ATE541431T1 (de) * 2008-06-11 2012-01-15 Ericsson Telefon Ab L M Verfahren und anordnung zur auswahl eines cqi- wertes basierend auf der transportblockgrösse in einem mobilen telekommunikationsnetz
US8848549B2 (en) * 2008-09-17 2014-09-30 Qualcomm Incorporated Optimizing throughput in a wireless communication system
WO2010134196A1 (ja) * 2009-05-22 2010-11-25 富士通株式会社 通信システム及び情報伝送方法及びコード設定方法及び基地局及び移動局
US8854992B2 (en) * 2009-07-09 2014-10-07 Motorola Mobility Llc Artificial delay inflation and jitter reduction to improve TCP throughputs
CA2773808A1 (en) * 2009-09-15 2011-03-24 Rockstar Bidco, LP Adaptive modulation and coding scheme adjustment in wireless networks
JP5031009B2 (ja) * 2009-09-15 2012-09-19 株式会社エヌ・ティ・ティ・ドコモ 無線基地局及び移動通信方法
EP2413629A1 (en) 2010-07-30 2012-02-01 Telefonaktiebolaget L M Ericsson (Publ) Method and user equipment for managing a data transmission in a communication network
CN103262458B (zh) * 2011-02-28 2016-03-09 日电(中国)有限公司 一种用于调整信道质量指示的方法和设备
TW201309053A (zh) * 2011-08-03 2013-02-16 Acer Inc 動態調整通訊協定之視窗大小以增加無線網路系統內資料流通量之方法
US8761039B2 (en) * 2012-03-28 2014-06-24 Apple Inc. Adaptive generation of channel quality indicators (CQIs) based on a current communication scenario
US9374191B2 (en) * 2012-05-17 2016-06-21 Apple Inc. Outer loop link adaptation for device resumption
US9590878B2 (en) * 2013-01-16 2017-03-07 Qualcomm Incorporated Channel state information and adaptive modulation and coding design for long-term evolution machine type communications
US9425946B2 (en) * 2013-02-21 2016-08-23 Blackberry Limited Interference measurement methods for advanced receiver in LTE/LTE-A
KR102012249B1 (ko) * 2013-03-28 2019-08-21 한국전자통신연구원 동적 자원 할당 방법 및 장치
US9642038B2 (en) * 2013-05-10 2017-05-02 Google Technology Holdings LLC Offloading communication from a cellular network to a wireless local area network
WO2015020587A1 (en) * 2013-08-09 2015-02-12 Telefonaktiebolaget L M Ericsson (Publ) Method and radio node for enabling use of high order modulation in a radio communication with a user equipment
US9949216B2 (en) * 2013-09-25 2018-04-17 Apple Inc. Power consumption optimization for cellular communication via power amplifier biasing
JP6490087B2 (ja) * 2014-03-10 2019-03-27 エルジー エレクトロニクス インコーポレイティド 無線通信システムにおいてチャネル状態情報の参照リソースを設定する方法及びそのための装置
US9571228B2 (en) * 2014-12-02 2017-02-14 Cisco Technology, Inc. Link adaptation based on neighboring cell transmission information
US9999037B2 (en) * 2015-05-15 2018-06-12 Qualcomm Incorporated Methods and apparatus for adjusting flow rate of transmissions received by a device
DE102015109951B4 (de) 2015-06-22 2021-10-21 Apple Inc. Verfahren und Vorrichtungen zum Bereitstellen einer robusten Datenkommunikation zwischen einem Client und einem Server

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1805426A (zh) * 2005-01-14 2006-07-19 华为技术有限公司 高速下行分组数据包接入中校正信道质量指示的方法
CN1976535A (zh) * 2006-12-12 2007-06-06 华为技术有限公司 信道自适应装置与信道自适应方法
CN101630991A (zh) * 2008-07-15 2010-01-20 中兴通讯股份有限公司 时分同步码分多址接入终端及其信道质量指示确定方法
CN101877624A (zh) * 2010-06-23 2010-11-03 中兴通讯股份有限公司 信道条件指示cqi修正的方法及基站

Also Published As

Publication number Publication date
DE102015109951B4 (de) 2021-10-21
DE102015109951A1 (de) 2016-12-22
US10523360B2 (en) 2019-12-31
US20180234207A1 (en) 2018-08-16
CN107646177A (zh) 2018-01-30
WO2016206877A1 (en) 2016-12-29

Similar Documents

Publication Publication Date Title
US11323231B2 (en) Adapting a number of repetitions for a physical uplink control channel
US9112691B2 (en) Methods and systems for downlink flow control in a wireless communication system
US9860024B2 (en) Transmission control protocol in long term evolution radio access network
US9021144B2 (en) Buffer status report triggers in wireless communications
KR101276396B1 (ko) 중계 노드 기반 무선 통신 시스템에서의 전송 방법
US10594612B2 (en) Threshold for reduced latency mechanisms
US9930694B2 (en) Re-transmitting a poll to a peer protocol entity when a timer expires
CN107646177B (zh) 用于提供客户端与服务器之间的鲁棒的数据通信的方法和设备
US20140201586A1 (en) Latency
US9313671B2 (en) Wireless communication system, base station, and wireless communication method
EP2929634A1 (en) Method and apparatus for selectively transmitting data using spatial diversity
CN107534890A (zh) 适应性tti调整的方法
US10440650B2 (en) Methods and devices based on dynamic receive diversity
CN110581749B (zh) TD-LTE的VoLTE语音质量提升方法及装置
US12021632B2 (en) Inconsistency free pipelined hybrid automatic repeat request scheme for non-terrestrial network channel
US20210274374A1 (en) Method and network node for supporting a service over a radio bearer
KR101922040B1 (ko) 데이터 전송 방법 및 장치
US20240163022A1 (en) Dynamic transmission parameter values for retransmissions

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
TA01 Transfer of patent application right

Effective date of registration: 20200409

Address after: California, USA

Applicant after: INTEL Corp.

Address before: California, USA

Applicant before: INTEL IP Corp.

Effective date of registration: 20200409

Address after: California, USA

Applicant after: Apple Inc.

Address before: California, USA

Applicant before: INTEL Corp.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant