多链路通信方法及装置与流程
未命名
08-06
阅读:85
评论:0
1.本技术涉及通信技术领域,尤其涉及一种多链路通信方法及装置。
背景技术:
2.下一代无线局域网(wireless local area network,wlan)标准朝着不断提高吞吐率的方向进行发展和演进,wlan系统标准主要在电气与电子工程师协会(institute of electrical and electronics engineers,ieee)802.11标准组中进行研究和讨论。如将极高吞吐率(extremely high throughput,eht)作为目标的关键技术可以包括多链路(multi-link,ml)通信。基于该多链路通信,多链路设备可以同时在2.4ghz、5ghz以及6ghz频段上进行通信,从而选择最佳的频段,保证其通信质量。
3.在多链路通信的场景中,接入点多链路设备可以沿多条链路向站点多链路设备发送对应同一个业务标识符的数据包。同时,站点多链路设备在每条链路上维护本地记分板时,不同链路的站点在现有的块确认机制中可能无法完成对所接收的聚合媒介接入控制层协议数据单元(aggregation medium access control protocol data unit,a-mpdu)中所有mpdu的接收情况的正确反馈。
4.因此,在多链路通信的场景中,如何保障不同链路的接收设备正确反馈接收到的a-mpdu中所有mpdu的接收情况亟待解决。
技术实现要素:
5.本技术提供一种多链路通信方法及装置,可以有效保证接收端正确反馈其接收到的a-mpdu中所有mpdu的接收情况。
6.第一方面,本技术实施例提供一种多链路通信方法,所述方法包括:接收端接收第一聚合的媒介接入控制层协议数据单元a-mpdu;所述接收端获取本地记录的计分板上下文,在所述第一a-mpdu满足如下任一项或多项条件时,根据所述第一a-mpdu的序列号sn刷新所述计分板上下文;第一条件包括:隶属于所述接收端的某个sta接收到的mpdu的sn满足winstartr≤sn《winstartr+2
11
;第二条件包括:sn满足winstart
b-winsizer≤sn《winstartb的任何一个mpdu都不是通过所述某个sta接收的;或者,sn满足winstart
b-winsizer≤sn《winstartb的所有mpdu都是由隶属于所述接收端的其他sta接收的;第三条件包括:不存在任意一个在接收到所述第一a-mpdu之前接收的另一个a-mpdu中的没有基于ba响应的mpdu;或者,在所述第一a-mpdu之前接收到的任意一个a-mpdu中没有任意一个mpdu没有基于ba响应;或者,在所述第一a-mpdu之前接收到的任意一个a-mpdu中承载的所有mpdu已基于ba响应。
7.在一种可能的实现方式中,在所述第一a-mpdu还满足以下第四条件:所述第四条件包括:在所述第一a-mpdu中没有其他具有sn的mpdu已经满足所述第一条件、所述第二条件和所述第三条件;或者,隶属于所述接收端的某个sta接收到的具有sn的mpdu是所述第一a-mpdu中满足所述第一条件、所述第二条件和所述条件的第一个mpdu;或者,隶属于所述接
收端的某个sta的计分板上下文还没有基于所述第一a-mpdu中的mpdu进行刷新。
8.在一种可能的实现方式中,所述接收端在每条链路上都有一个单独的计分板上下文控制,所述链路为所述接收端与发送端之间的链路。
9.在一种可能的实现方式中,隶属于所述接收端的sta具有使用重新排序的缓冲区信息更新计分板上下文的能力。
10.在一种可能的实现方式中,所述第一a-mpdu中的sn属于同一个业务标识tid。
11.通过本技术实施例提供的方法,可使得接收端能够合理有效地刷新本地计分板上下文(local scoreboard)。
12.可理解,关于第一方面或任一种可能的实现方式的具体说明,可以参考下文关于第三种计分板上下文控制操作至第十种计分板上下文控制操作的描述,以及下文图4所示的方法等,这里不再一一详述。
13.第二方面,本技术实施例提供一种多链路通信方法,所述方法包括:发送端发送第二a-mpdu,所述a-mpdu包括指示信息,所述指示信息用于指示接收端是否刷新所述接收端的计分板上下文。
14.在一种可能的实现方式中,所述指示信息用于指示用于传输所述第二a-mpdu的链路对应的sta是否刷新所述sta的计分板上下文。
15.在一种可能的实现方式中,所述指示信息承载于mpdu分隔符,或者高吞吐率控制字段中。
16.可理解,关于第二方面或任一种可能的实现方式的具体说明,可以参考下文图5所示的方法,以及图6a至图6d所示的描述,这里不再一一详述。
17.第三方面,本技术实施例提供一种通信装置,用于执行第一方面或第一方面的任意可能的实现方式中的方法。该通信装置包括具有执行第一方面或第一方面的任意可能的实现方式中的方法的单元。
18.示例性的,该通信装置可以为发送端或发送端中的芯片等。
19.第四方面,本技术实施例提供一种通信装置,用于执行第二方面或第二方面的任意可能的实现方式中的方法。该通信装置包括具有执行第二方面或第二方面的任意可能的实现方式中的方法的单元。
20.示例性的,该通信装置可以为接收端或接收端中的芯片等。
21.在第三方面或第四方面中,上述通信装置可以包括收发单元和处理单元。对于收发单元和处理单元的具体描述还可以参考下文示出的装置实施例。
22.第五方面,本技术实施例提供一种通信装置,该通信装置包括处理器,用于执行上述第一方面或第一方面的任意可能的实现方式所示的方法。或者,该处理器用于执行存储器中存储的程序,当该程序被执行时,上述第一方面或第一方面的任意可能的实现方式所示的方法被执行。
23.在一种可能的实现方式中,存储器位于上述通信装置之外。
24.在一种可能的实现方式中,存储器位于上述通信装置之内。
25.本技术实施例中,处理器和存储器还可以集成于一个器件中,即处理器和存储器还可以被集成在一起。
26.在一种可能的实现方式中,通信装置还包括收发器,该收发器,用于接收信号或发
送信号。示例性的,该收发器还可以用于接收a-mpdu等。
27.本技术实施例中,该通信装置可以为发送端或发送端中的芯片等。
28.第六方面,本技术实施例提供一种通信装置,该通信装置包括处理器,用于执行上述第二方面或第二方面的任意可能的实现方式所示的方法。或者,处理器用于执行存储器中存储的程序,当该程序被执行时,上述第二方面或第二方面的任意可能的实现方式所示的方法被执行。
29.在一种可能的实现方式中,存储器位于上述通信装置之外。
30.在一种可能的实现方式中,存储器位于上述通信装置之内。
31.在本技术实施例中,处理器和存储器还可以集成于一个器件中,即处理器和存储器还可以被集成在一起。
32.在一种可能的实现方式中,通信装置还包括收发器,该收发器,用于接收信号或发送信号。示例性的,该收发器可以用于发送a-mpdu。
33.本技术实施例中,该通信装置可以为接收端或接收端中的芯片等。
34.第七方面,本技术实施例提供一种通信装置,该通信装置包括逻辑电路和接口,所述逻辑电路和所述接口耦合;所述接口,用于输入第一a-mpdu;所述逻辑电路,用于根据所述第一a-mpdu刷新本地计分板上下文。
35.可选的,所述接口,还用于输出ba帧。
36.可选的,该通信装置还包括存储器,所述存储器用于存储第三种计分板上下文控制操作至第十种计分板上下文控制操作中的任一项或多项。
37.第八方面,本技术实施例提供一种通信装置,该通信装置包括逻辑电路和接口,所述逻辑电路和所述接口耦合;所述逻辑电路,用于生成第一a-mpdu;所述接口,用于输出所述第一a-mpdu。
38.在本技术的另一些实施例中,接口,用于输出第二a-mpdu,该第二a-mpdu包括指示信息。
39.第九方面,本技术实施例提供一种计算机可读存储介质,该计算机可读存储介质用于存储计算机程序,当其在计算机上运行时,使得上述第一方面或第一方面的任意可能的实现方式所示的方法被执行。
40.第十方面,本技术实施例提供一种计算机可读存储介质,该计算机可读存储介质用于存储计算机程序,当其在计算机上运行时,使得上述第二方面或第二方面的任意可能的实现方式所示的方法被执行。
41.第十一方面,本技术实施例提供一种计算机程序产品,该计算机程序产品包括计算机程序或计算机代码,当其在计算机上运行时,使得上述第一方面或第一方面的任意可能的实现方式所示的方法被执行。
42.第十二方面,本技术实施例提供一种计算机程序产品,该计算机程序产品包括计算机程序或计算机代码,当其在计算机上运行时,使得上述第二方面或第二方面的任意可能的实现方式所示的方法被执行。
43.第十三方面,本技术实施例提供一种计算机程序,该计算机程序在计算机上运行时,上述第一方面或第一方面的任意可能的实现方式所示的方法被执行。
44.第十四方面,本技术实施例提供一种计算机程序,该计算机程序在计算机上运行
时,上述第二方面或第二方面的任意可能的实现方式所示的方法被执行。
45.第十五方面,本技术实施例提供一种无线通信系统,该无线通信系统包括发送端和接收端,所述发送端用于执行上述第一方面或第一方面的任意可能的实现方式所示的方法,所述接收端用于执行上述第二方面或第二方面的任意可能的实现方式所示的方法。
46.第一方面至第十五方面涉及的winstartr≤sn《winstartr+2
11
是以winsizer=1024为例示出的。然而,本技术涉及的winsizer还可以是64、128、256或512,因此,第一方面至第十五方面涉及的winstartr≤sn《winstartr+2
11
还可以理解为:winstartr≤sn《winstartr+2*winsizer。这里不再一一列举。
附图说明
47.图1a至图1c是本技术实施例提供的一种多链路通信的场景示意图;
48.图2是本技术实施例提供的一种多链路通信方法的流程示意图;
49.图3a至图3f是本技术实施例提供的一种计分板上下文控制操作的示意图;
50.图4是本技术实施例提供的一种多链路通信方法的流程示意图;
51.图5是本技术实施例提供的另一种多链路通信方法的流程示意图;
52.图6a是本技术实施例提供的一种mpdu子帧的结构示意图;
53.图6b是本技术实施例提供的一种聚合控制字段的格式示意图;
54.图6c是本技术实施例提供的一种聚合控制字段的格式示意图;
55.图6d是本技术实施例提供的一种命令和状态类型控制信息的帧结构示意图;
56.图7至图9是本技术实施例提供的一种通信装置的结构示意图;
57.图10a和图10b是本技术实施例提供的一种计分板上下文控制操作的示意图。
具体实施方式
58.为了使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术作进一步地描述。
59.本技术的说明书、权利要求书及附图中的术语“第一”和“第二”等仅用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备等,没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元等,或可选地还包括对于这些过程、方法、产品或设备等固有的其它步骤或单元。
60.在本文中提及的“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员可以显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
61.在本技术中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上,“至少两个(项)”是指两个或三个及三个以上,“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:只存在a,只存在b以及同时存在a和b三种情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合。例如,a,b或c中的至少一项
(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”。
62.本技术提供的多链路通信方法可以应用于无线通信系统。该无线通信系统可以包括wlan或蜂窝网等。该方法可以由无线通信系统中的通信设备或通信设备中的逻辑电路或处理器实现等,该通信设备可以是一种支持多条链路并行进行传输的无线通信设备,例如,称为多链路设备(multi-link device,mld)或多频段设备(multi-band device)等。比如,在无线局域网中,该通信设备支持采用ieee 802.11系列协议进行通信,ieee 802.11系列协议包括:802.11be,802.11be下一代,802.11ax,或802.11a/b/g/n/ac等,这里不再一一列举。
63.以下先对本技术所涉及的多链路设备进行说明。
64.多链路通信的核心思想是支持ieee 802.11标准的wlan设备如eht设备等拥有在多个频段上发送和/或接收的能力,从而可以使用更大的带宽进行传输,进而提升吞吐率。如多频段主要包括但不限于2.4ghz wi-fi频段、5ghz wi-fi频段或6ghz wi-fi频段。示例性的,在每一个频段上的接入和/或传输称为一个链路,从而多个频段上的接入和/或传输便称为多链路。例如,支持多链路通信的设备称为多链路设备(multi-link device,mld)。图1a是本技术实施例提供的一种多链路通信的场景示意图,如mld设备中存在多个接入点(access point,ap)或站点(station,sta),从而组成ap多链路设备(ap multi-link device,ap mld)或non-ap多链路设备(non-ap multi-link device,non-ap mld)。mld之间的通信为多链路通信,如图1a中的链路1和链路2组成了多链路。
65.多链路设备包括一个或多个隶属的站点,隶属的站点是逻辑上的站点,可以工作在一条链路或一个频段或一个信道上等。该隶属的站点可以为接入点(access point,ap)或非接入点站点(non-access point station,non-ap sta)。一般的,可以将隶属的站点为ap的多链路设备称为多链路ap或多链路ap设备或ap mld。隶属的站点为non-ap sta的多链路设备可以称为多链路sta或多链路sta设备或sta多链路设备(sta multi-link device),或者,隶属的站点为non-ap sta的多链路设备称为多链路non-ap或多链路non-ap设备或non-ap mld等。下文将隶属的站点为ap的多链路设备称为ap mld,将隶属的站点为non-ap sta的多链路设备称为non-ap mld。ap mld中隶属的ap为一个或多个;sta mld中隶属的sta为一个或多个。
66.多链路设备可以遵循802.11系列协议实现无线通信,例如,遵循极高吞吐率(extremely high throughput,eht)的多链路设备,或遵循基于802.11be或兼容支持802.11be的多链路设备,实现与其他设备的通信。
67.多链路设备(这里既可以是non-ap mld,也可以是ap mld)为具有无线通信功能的通信装置。该通信装置可以为一个整机的设备,还可以是安装在整机设备中的芯片或处理系统等,安装这些芯片或处理系统的设备可以在这些芯片或处理系统的控制下,实现本技术实施例的方法和功能。例如,本技术实施例中的多链路设备具有无线收发功能,可以支持802.11系列协议,可以与ap多链路设备或non-ap多链路设备进行通信。例如,non-ap多链路设备是允许用户与ap通信进而与wlan通信的任何用户通信设备。例如,non-ap多链路设备可以为平板电脑、桌面型、膝上型、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,umpc)、手持计算机、上网本、个人数字助理(personal digital assistant,pda)、手机等可以联网的用户设备,或物联网中的物联网节点,或车联网中的车
载通信装置等。non-ap多链路设备还可以为上述这些终端中的芯片和处理系统。ap多链路设备可以为non-ap多链路设备提供服务的装置,可以支持802.11系列协议。例如,ap多链路设备可以为通信服务器、路由器、交换机、网桥等通信实体,或,ap多链路设备可以包括各种形式的宏基站,微基站,中继站等,当然ap多链路设备还可以为这些各种形式的设备中的芯片和处理系统。其中,802.11协议可以为支持802.11be或兼容802.11be的协议。
68.可理解的,多链路设备(这里既可以是non-ap mld,也可以是ap mld)可以支持高速率低时延的传输,随着无线局域网应用场景的不断演进,多链路设备还可以应用于更多场景中,比如为智慧城市中的传感器节点(比如,智能水表,智能电表,智能空气检测节点),智慧家居中的智能设备(比如智能摄像头,投影仪,显示屏,电视机,音响,电冰箱,洗衣机等),物联网中的节点,娱乐终端(比如ar,vr等可穿戴设备),智能办公中智能设备(比如,打印机,投影仪等),车联网中的车联网设备,日常生活场景中的一些基础设施(比如自动售货机,商超的自助导航台,自助收银设备,自助点餐机等)。本技术实施例中对于多链路设备的具体形式不做限定,在此仅是示例性说明。
69.结合以上所示的多链路设备,图1b是本技术实施例提供的一种多链路通信的场景示意图。如图1b所示,ap mld包括ap1,ap2,
…
,apn,non-ap mld包括sta1,sta2,
…
,stan。这里所示的n为正整数。ap mld和non-ap mld可以采用链路1,链路2,
…
,链路n并行进行通信。non-ap mld中的sta1与ap mld中的ap1建立关联关系,non-ap mld中的sta2与ap mld中的ap2建立关联关系,non-ap mld中的stan与ap mld中的apn建立关联关系等。由此,non-ap mld中的一个或多个sta与ap mld中的一个或多个ap之间建立关联关系之后便可以进行通信。
70.图1c是本技术实施例提供的一种多链路通信的场景示意图。如图1c所示,包括至少一个ap和至少一个sta,图1c示出的是两个sta,如sta1、sta2,以及一个non-ap mld。例如,该non-ap mld可以通过两个链路与ap通信,该non-ap mld包括两个隶属的sta,图1c未示出。又例如,sta2或sta3可以通过一个链路与ap通信。也就是说,图1c所示的系统中既包括多链路通信,也包括单链路通信。
71.本技术所提供的方法可以适用于但不限于:单用户的上/下行传输、多用户的上/下行传输、车与任何事物(vehicle-to-everything,v2x,x可以代表任何事物)、设备到设备(device-todevice,d2d)。例如,该v2x可以包括:车辆到车辆(vehicle to vehicle,v2v),车辆与基础设施(vehicle to infrastructure,v2i)、车辆与行人之间的通信(vehicle to pedestrian,v2p)或车辆与网络(vehicle to network,v2n)通信等。
72.本技术下文所示的发送端可以理解为使用块确认(block acknowledge,ba)机制发送数据的mld,该发送端也可以称为发送mld(originator mld),接收数据的一方称为接收端,该接收端还可以称为接收mld(recipient mld)。示例性的,发送端可以是non-ap mld,接收端可以是ap mld。又如,发送端可以是ap mld,接收端可以是non-ap mld。发送端与接收端之间可以包括多条链路,其中每条链路供一个隶属于发送mld的sta(a sta affiliated with originator mld)和一个隶属于接收mld的sta(a sta affiliated with recipient mld)进行通信。
73.图2是本技术实施例提供的一种多链路通信方法的流程示意图。该多链路通信方法是基于块确认(block acknowledge,ba)机制实现的,该ba机制可以将多个“确认
(acknowledgment)”汇总到一个帧,以此提高信道效率。如图2所示,该方法包括:
74.201、发送端向接收端发送块确认(add ba,addba)请求(request)帧。对应的,接收端接收该addba请求帧。
75.202、接收端向发送端发送addba响应(response)帧。对应的,发送端接收该addba响应帧。
76.通过上述步骤201和步骤202,发送端和接收端之间便可以称为成功建立ba协议,或者成功建立ba机制,或者成功建立ba会话。
77.203、发送端向接收端发送聚合的媒介接入控制层协议数据单元(aggregated mpdu,a-mpdu)。对应的,接收端接收该a-mpdu。
78.可理解,基于发送端与接收端之间建立的ba会话,因此当发送端需要向接收端发送多个媒介接入控制(medium access control,mac)层协议数据单元(mac protocol data unit,mpdu)时,该发送端可以将上述多个mpdu以聚合方式变成一个a-mpdu。也就是说,接收端在接收到a-mpdu之后,会对a-mpdu进行解聚合控制(deaggregation control),获得多个mpdu。示例性的,a-mpdu中的每个mpdu会有一个序列号(sequence number,sn),该sn用于表示a-mpdu中的每个mpdu的顺序。
79.示例性的,一个a-mpdu中所包括的mpdu的最大数量可以是1024。例如,计分板的窗口大小是可以变化的,其可以通过addba请求帧和addba响应帧交互中协商确定。例如,该计分板的窗口大小可以是64,128,256,512,1024等。一个a-mpdu聚合的数据不超过计分板窗口的大小,但是可以小于计分板窗口的大小。
80.204、发送端向接收端发送ba请求(ba request,bar)帧。对应的,接收端接收该bar。
81.可理解,步骤204是以发送端发送ba请求帧为例示出的。可选的,发送端还可以在发送的a-mpdu中设置确认原则(ack policy)为隐含的bar(implicit bar),由此,发送端可以不需要单独发送bar帧。
82.205、接收端基于bar向发送端发送ba帧,该ba用于对a-mpdu中的mpdu的接收情况做出确认。对应的,发送端接收该ba帧。
83.通常来讲,接收端需要维护一个块确认记录(ba record)。该ba记录包含一个按序列号索引的位图;一个12位无符号整数的开始序号(可以用winstartr表示),该开始序号可以用于表示位图中最低的序列号位置;当前传输窗口中的最高序号(可以用winendr表示);最大窗口尺寸(如可以用winsizer表示)。为便于描述,下文将以接收端的记分板包括winstartr、winsizer和winendr三个参数定义为例说明本技术实施例提供的方法。其中,winstartr表示记分板的开始序号,winsizer表示记分板的窗口尺寸(如可以为1024),winendr表示记分板的结束序号(计分板当前的结束序号)。
84.示例性的,在基于a-mpdu获得多个mpdu之后,接收端对每个mpdu进行记分板上下文控制(scoreboard context control)操作,并在记分之后将接收到的mpdu递交到接收重排序缓冲区(receive reordering buffer),按照sn的顺序对mpdu进行排序,将接收正确的mpdu向上递交。如果在重排序过程中出现一个未成功接收的mpdu,则将该mpdu对应的sn记做winstartb,并向上层递交该sn之前的按照顺序且成功接收的所有mpdu。对于该sn之后的mpdu,接收端会在接收该sn对应的mpdu之后才能将其以及之后的接收正确的mpdu向上递
交。
85.图3f是本技术实施例提供的一种记分板上下文控制操作的示意图。示例性地,如图3f所示,接收端在解聚合一个a-mpdu之后得到sn分别是102、103、105和100等四个mpdu,则接收端可以在记分板上下文中与sn对应的比特位置上记一个1,该“1”用于表示sn对应的mpdu被正确接收,并基于记分结果形成比特位图(bitmap),将该比特位图放在ba帧中,作为对应的一个a-mpdu的确认。在图3f中,winstartr=98,winsizer=12,winendr=109。
86.一个ba记录的序列号空间可以包括4096个sn,记分板的窗口可以在该序列号空间中移动。随着ba会话的建立,记分板可以初始化。如winstartr可以被设置为addba请求帧提供的起始序列号(start sequence number,ssn)。当一个mpdu到达时,如果该mpdu的sn落在记分板所表示的空间内,接收端将使用sn索引记分板,并记录其正确接收。如果sn在记分板表示的空间之外,但在winendr到winstartr+2
11
的范围内(序列号空间的一半以内),接收端将向右移动记分板的窗口(可以理解为:接收端更新winendr,使winendr=该sn)直到记分板的窗口的最右边缘包含新的sn。当bar帧到达时,记分板的窗口向右移动,使winstartr等于bar帧提供的ssn,并返回带有记分板的记录内容的ba帧。
87.示例性的,接收端接收带有sn的mpdu时,会检查该mpdu是否有对应的ba会话的记分板记录。其中,该ba会话是由发送地址(transmiss address,ta)和tid标识的。如果没有记分板记录,接收端为这个ba会话创建一个记分板,也许可以重用另一个会话的内存。
88.需要说明的是,本技术实施例所示的多链路通信的场景中,发送端与接收端之间的每条链路均会维护一个各自的记分板上下文控制,且还有一个mld的公共记分板。每条链路上的设备(如mld中的每个sta,或者,mld中的每个ap)会使用各自的记分板上下文控制反馈该条链路上的mpdu的接收情况。公共记分板可以用于记录其他链路上的记分板的参数信息,例如,每个链路上的记分板的起始序号和/或结束序号,或者记录综合所有链路的记分板的信息(如winstartb)。
89.以下结合具体的计分板上下文控制操作说明本技术实施例提供的方法。
90.示例性的,sn的范围是0-4095。当sn为4095时,如果再加1,则4096就会变成0。因此,本技术下文所示的各个例子中的sn的数值均是以对4096取模得到的。如接收端可以对sn以模4096进行操作,每个sn空间可以由一个模4096计数器表示。
91.图3a至图3c所示的示意图中,发送端可以通过两条链路,如第一链路和第二链路与接收端通信。为便于描述,下文将隶属于接收端的第一链路上的sta称为第一sta,隶属于接收端的第二链路上的sta称为第二sta。即第一sta和第二sta隶属于同一个mld。
92.第一种计分板上下文控制操作:
93.接收mld在每条链路上都有一个单独的计分板上下文控制;
94.隶属于该接收mld的sta都可以使用重新排序的缓冲区信息更新计分板上下文;
95.当隶属于该接收mld的某个sta接收到的mpdu的sn满足winstartr+2
11
≤sn《winstartr,且不满足winstartb+2
11
≤sn《winstartb;
96.则该某个sta可以认为其接收到的mpdu的sn满足winendr《sn《winstartr+2
11
,该某个sta可以更新其记分板上下文。
97.图3a是本技术实施例提供的一种计分板上下文控制操作的示意图。举例来说,同一个tid对应四个a-mpdu,每个a-mpdu的聚合长度都为1024,即每个a-mpdu均包括1024个
mpdu,每个a-mpdu的确认策略是立即块确认。第一sta接收第一个a-mpdu(如图3a所示的a-mpdu1),sn为0-1023;第二sta接收第二个a-mpdu(如图3a所示的a-mpdu2),sn为1024-2047,和第三个a-mpdu(如图3a所示的a-mpdu3),sn为2048-3071;第一sta接收第四个a-mpdu(如图3a所示的a-mpdu4),sn为3072-4095。可理解,关于图3b所示的各个a-mpdu和sn的关系的说明可以参考图3a,下文不再一一详述。
98.当第一sta根据第一个a-mpdu的sn对其计分板上下文更新之后,该第一sta的记分板(也可以称为第一链路的计分板)的winstartr=0,winendr=1023。以及,第二个sta根据第二个a-mpdu和第三个a-mpdu的sn对其计分板上下文更新之后,该第二个sta的计分板(也可以称为第二链路的计分板)的winstartr=2048,winendr=3071。同时,第一sta的计分板和第二sta的计分板中的winstartb=3072。
99.根据上述第一种计分板上下文控制操作,当第一sta接收到的第四个a-mpdu的sn满足0+2048≤sn《0,且sn不满足1024(根据4096对3072与2048之和取模得到)≤sn《3072时,第一sta可以根据第四个a-mpdu的sn更新其计分板上下文。由于第四个a-mpdu的sn为3072-4095,因此如果第一sta均成功接收第四个a-mpdu中所有mpdu,则更新第一sta的计分板winstartr=3072,winendr=4095。
100.然而,当第一sta和第二sta接收到的a-mpdu如图3b所示,当第一sta接收到sn为0-1023的第五个a-mpdu(如图3b所示的a-mpdu5)时,根据上述第一种计分板上下文控制操作,第一sta不能正确反馈第五个a-mpdu中所有mpdu的接收情况。
101.为改善上述问题,本技术实施例还提供了第二种计分板上下文控制操作:
102.接收mld在每条链路上都有一个单独的计分板上下文控制;
103.隶属于该接收mld的sta都可以使用重新排序的缓冲区信息更新计分板上下文;
104.当隶属于该接收mld的某个sta接收到的mpdu的sn满足winstartr≤sn《winendr;
105.隶属于该接收mld的其他sta已经接收到的mpdu的sn满足winstart
b-winsizer≤sn《winstartb;
106.则该某个sta可以刷新(或冲刷)该某个sta的计分板上下文并更新该某个sta的计分板上下文。
107.以上所示的接收mld在每条链路上都有一个单独的计分板上下文控制,也可以理解为:隶属于接收mld的每个sta各自维护一个计分板上下文控制。
108.需要说明的是,本技术实施例所示的某个sta刷新其计分板上下文指的是该某个sta将其计分板上下文进行初始化,或者,将其计分板上下文清零处理,或者,清除该计分板上下文中已经记录的内容,或者,清除该计分板上下文的缓存等。更新该某个sta的计分板上下文指的是该某个sta可以基于计分板上下文中已有的内容进行更新。
109.以图3b为例,第一sta接收到的第五个a-mpdu的sn满足0≤sn《1023,第二sta的计分板上下文(即其他sta的计分板)接收到的mpdu的sn满足3072≤sn《4096,因此,第一sta可以刷新该第一sta计分板并更新第一sta的计分板上下文。也就是说,该第一sta可以将其在接收到第五个a-mpdu之前的记录清除掉,从而利用第五个a-mpdu的sn对初始化后的计分板上下文进行更新。由此,如果第一sta均成功接收第五个a-mpdu中所有mpdu,则刷新并更新后的第一sta的计分板winstartr=0,winendr=1023。
110.又一种场景中,当第一sta和第二sta接收到的a-mpdu如图3c所示,在第一sta未接
收到第六个a-mpdu(如图3c所示的a-mpdu6)之前,第一sta的计分板上下文中的winstartr=0,winendr=1023。当接收端接收到第六个a-mpdu时,由于sn为1024-1500,该第六个a-mpdu的sn既不属于上述第一种计分板上下文控制操作,也不属于上述第二种计分板上下文控制操作。由此,第一sta就无法获知到底该如何更新其计分板上下文。也可以理解为:当接收端接收到第六个a-mpdu时,上述第二种计分板上下文控制操作中并没有考虑当第一sta接收到的mpdu的sn处于winendr≤sn《winstartr+2
11
这个范围。如果直接将第一sta的计分板中的winendr移动到1500的位置,winstartr在477(即1500-1023),则在反馈ba帧的时候会把上一轮的477~1023的状态信息错误地反馈回去。
111.为改善上述问题,本技术实施例提供了第三种计分板上下文控制操作:
112.接收mld在每条链路上都有一个单独的计分板上下文控制;
113.隶属于接收mld的sta都可以使用重新排序的缓冲区信息更新计分板上下文;
114.隶属于该接收mld的某个sta接收到的mpdu的sn满足winstartr≤sn《winstartr+2
11
;
115.隶属于接收mld的其他sta已经接收到的mpdu的sn满足winstart
b-winsizer≤sn《winstartb;
116.则该某个sta可以刷新该某个sta的计分板上下文并更新该某个sta的计分板上下文。(if the following conditions are true:a recipient mld has a separate scoreboard context control in each link;the sta affiliated with the mld is capable of using reordering buffer information to update its scoreboard context;a sta affiliated with the mld receives a frame with sn that is winstartr≤sn《winstartr+2
11
;the other sta affiliated with the mld receives a frame with sn that is winstart
b-winsizer≤sn《winstartb;the sta shall flush the scoreboard context and update the scoreboard context.)
117.基于上述第三种计分板上下文控制操作,如以图3c为例,在第一sta未接收到第六个a-mpdu之前,该第一sta中计分板上下文中winstartr=0,winendr=1023。当该第一sta接收到第六个a-mpdu时,由于该第六个a-mpdu的sn满足:0≤sn《0+2
11
,其他sta(如图3c所示的第二sta)已经接收到的a-mpdu的sn满足:winstart
b-winsizer≤sn《winstartb(winstartb=1024)。因此,该第一sta可以刷新其计分板上下文并更新计分板上下文,更新后的计分板上下文中winstartr=477,winendr=1500。
118.结合以上所示的第一种计分板上下文控制操作和第二种计分板上下文控制操作,隶属于接收mld的sta每获得一个mpdu都可以刷新计分板上下文。这种方式会存在不恰当地冲刷本地计分板的问题。
119.假设sta接收到了一个a-mpdu,该a-mpdu包含第一mpdu和第二mpdu,则根据第一mpdu的sn可能会冲刷一次本地计分板上下文,随后再根据第二mpdu冲刷本地计分板上下文的时候又将还未反馈ba帧的与第一mpdu的sn相关的计分板上下文给冲刷掉。因为sta根据第一mpdu的sn1冲刷本地计分板上下文之后,该sta还未反馈ba帧,该情况下,如果再根据第二mpdu冲刷本地计分板上下文,会导致sta无法正确反馈ba帧。
120.为改善上述问题,本技术实施例提供了第四种计分板上下文控制操作:
121.接收mld在每条链路上都有一个单独的计分板上下文控制;
122.隶属于接收mld的sta都可以使用重新排序的缓冲区信息更新计分板上下文;
123.隶属于该接收mld的某个sta接收到的mpdu的sn满足winstartr≤sn《winendr;
124.隶属于接收mld的其他sta已经接收到的mpdu的sn满足winstart
b-winsizer≤sn《winstartb;
125.在当前接收到的a-mpdu中没有其他具有sn的mpdu已经满足上述所有条件(no other frame with a sn in current a-mpdu that already fulfills all above conditions);或者,该某个sta接收到的上述具有sn的mpdu是a-mpdu中满足以上条件的第一个mpdu(it is the first frame with a sn in current a-mpdu that fulfills all above conditions);或者,该某个sta的计分板上下文还没有基于当前接收到的a-mpdu中的mpdu进行刷新(the scoreboard is not flushed base on a frame in current a-mpdu);
126.则该某个sta可以刷新某个sta的计分板上下文并更新该某个sta的计分板上下文。(if the following conditions are true:a recipient mld has a separate scoreboard context control in each link,the sta affiliated with the mld is capable of using reordering buffer information to update its scoreboard context;a sta affiliated with the mld receives a frame with sn that is winstartr≤sn《winendr;the other sta affiliated with the mld receives a frame with sn that is winstart
b-winsizer≤sn《winstartb;no other frame with a sn in current a-mpdu that already fulfills all above conditions;the sta shall flush the scoreboard context and update the scoreboard context.)
127.也就是说,在第四种计分板上下文控制操作中,当接收端获取到a-mpdu,且该a-mpdu包括的多个mpdu都是发送给某个sta时,且该多个mpdu的sn都满足winstartr≤sn《winendr,则该某个sta可以基于该a-mpdu中的第一个满足除了最后一条以外所有条件的mpdu对该某个sta的计分板上下文进行刷新;也可以称为该某个sta不可以基于该a-mpdu中的非第一个满足除了最后一条以外所有条件的mpdu的sn对其计分板上下文进行刷新。
128.以图3d所示的示意图为例,当第一sta在接收到sn为500~1023和sn为0~499的两个a-mpdu之后,由于这两个a-mpdu都满足上述第二种计分板上下文控制操作,因此该第一sta会分别进行两次冲刷。如当在接收到sn为0~499的a-mpdu之后冲刷本地计分板上下文的时候会把还没有回复ba帧的sn为500~1023的ba记录也冲刷掉。可理解,图3d所示的第一个确认原则(ack policy)用于指示第一sta暂时不需要反馈ba帧,图3d所示的第二个确认原则(也可以称为隐式的bar)用于指示第一sta需要反馈ba帧。
129.为改善上述问题,本技术实施例还提供了第五种计分板上下文控制操作:
130.接收mld在每条链路上都有一个单独的计分板上下文控制;
131.隶属于接收mld的sta都可以使用重新排序的缓冲区信息更新计分板上下文;
132.隶属于该接收mld的某个sta接收到的mpdu的sn满足winstartr≤sn《winendr;
133.隶属于接收mld的其他sta已经接收到的mpdu的sn满足winstart
b-winsizer≤sn《winstartb;
134.不存在任意一个在当前接收到的a-mpdu之前接收的另一个a-mpdu中的没有基于ba响应的mpdu;或者,在当前接收到的a-mpdu之前接收的任意一个a-mpdu中没有任意一个
context;a sta affiliated with the mld receives a frame with sn that is winstartr≤sn《winendr;none of a frame with sn that is winstart
b-winsizer≤sn《winstart
b is(was)received by the sta;the sta shall flush the scoreboard context and update the scoreboard context.)
144.也就是说,在第六种计分板上下文控制操作中,当某个sta接收到a-mpdu的sn满足winstartr≤sn《winendr,且sn满足winstart
b-winsizer≤sn《winstartb的mpdu都不是该某个sta接收的,则该某个sta可以刷新其计分板上下文。
145.如以图3e为例,在第一sta未接收到第二个a-mpdu和第三个a-mpdu之前,该第一sta中的计分板上下文中winstartr=199-1023+4096=3272,winendr=199,winstartb=200。当该第一sta接收到第三个a-mpdu时,由于该第三个a-mpdu的sn为300~399,不满足上述条件,因此该不刷新其计分板上下文。对于第四个a-mpdu类似,不再一一列举。
146.可理解,以上所示的第三种计分板上下文控制操作至第六种计分板上下文控制操作可以单独实现,也可以相互结合。示例性的,上述第三种计分板上下文控制操作可以与第四种计分板上下文控制操作结合,如得到第七种计分板上下文控制操作:
147.接收mld在每条链路上都有一个单独的计分板上下文控制;
148.隶属于接收mld的sta都可以使用重新排序的缓冲区信息更新计分板上下文;
149.隶属于该接收mld的某个sta接收到的mpdu的sn满足winstartr≤sn《winstartr+2
11
;
150.隶属于接收mld的其他sta已经接收到的mpdu的sn满足winstart
b-winsizer≤sn《winstartb;
151.在当前接收到的a-mpdu中没有其他具有sn的mpdu已经满足上述条件;或者,该某个sta接收到的上述具有sn的mpdu是a-mpdu中满足以上条件的第一个mpdu;或者,该某个sta的计分板上下文还没有基于当前接收到的a-mpdu中的mpdu进行刷新;
152.则该某个sta可以刷新某个sta的计分板上下文并更新该某个sta的计分板上下文。
153.由此,该第七种计分板上下文控制操作不仅可以改善上文如图3c所示的问题,还可以改善上文所示的对每个mpdu都刷新计分板上下文的问题。
154.示例性的,上述第三种计分板上下文控制操作可以与第五种计分板上下文控制操作结合,如得到第八种计分板上下文控制操作:
155.接收mld在每条链路上都有一个单独的计分板上下文控制;
156.隶属于接收mld的sta都可以使用重新排序的缓冲区信息更新计分板上下文;
157.隶属于该接收mld的某个sta接收到的mpdu的sn满足winstartr≤sn《winstartr+2
11
;
158.隶属于接收mld的其他sta已经接收到的mpdu的sn满足winstart
b-winsizer≤sn《winstartb;
159.不存在任意一个在当前接收到的a-mpdu之前接收的另一个a-mpdu中的没有基于ba响应的mpdu;或者,在当前接收到的a-mpdu之前接收的任意一个a-mpdu中没有任意一个mpdu没有基于ba响应;或者,在当前接收到的a-mpdu之前接收到的任意一个a-mpdu中承载的所有mpdu已基于ba响应;
160.则该某个sta可以刷新某个sta的计分板上下文并更新该某个sta的计分板上下文。
161.由此,该第八种计分板上下文控制操作不仅可以改善上文如图3c所示的问题,还可以改善上文如图3d所示的问题。
162.可理解,本技术实施例所示的第四种计分板上下文控制操作和第五种计分板上下文控制操作也可以结合,这里不再一一详述。
163.示例性的,上述第三种计分板上下文控制操作、第四种计分板上下文控制操作与第五种计分板上下文控制操作结合,如得到第九种计分板上下文控制操作:
164.接收mld在每条链路上都有一个单独的计分板上下文控制;
165.隶属于接收mld的sta都可以使用重新排序的缓冲区信息更新计分板上下文;
166.隶属于该接收mld的某个sta接收到的mpdu的sn满足winstartr≤sn《winstartr+2
11
;
167.隶属于接收mld的其他sta已经接收到的mpdu的sn满足winstart
b-winsizer≤sn《winstartb;
168.在当前接收到的a-mpdu中没有其他具有sn的mpdu已经满足上述所有条件;或者,该某个sta接收到的上述具有sn的mpdu是当前接收到的a-mpdu中满足以上条件的第一个mpdu;或者,该某个sta的计分板上下文还没有基于当前接收到的a-mpdu中的mpdu进行刷新;
169.不存在任意一个在当前接收到的a-mpdu之前接收的另一个a-mpdu中的没有基于ba响应的mpdu;或者,在当前接收到的a-mpdu之前接收的任意一个a-mpdu中没有任意一个mpdu没有基于ba响应;或者,在当前接收到的a-mpdu之前接收到的任意一个a-mpdu中承载的所有mpdu已基于ba响应;
170.则该某个sta可以刷新某个sta的计分板上下文并更新该某个sta的计分板上下文。
171.由此,该第九种计分板上下文控制操作可以有效改善上文如图3c至图3d所示的问题。
172.示例性的,上述第三种计分板上下文控制操作、第四种计分板上下文控制操作、第五种计分板上下文控制操作和第六种计分板上下文控制操作结合,如得到第十种计分板上下文控制操作:
173.接收mld在每条链路上都有一个单独的计分板上下文控制;
174.隶属于接收mld的sta都可以使用重新排序的缓冲区信息更新计分板上下文;
175.隶属于该接收mld的某个sta接收到的mpdu的sn满足winstartr≤sn《winstartr+2
11
;
176.该某个sta接收到的mpdu中没有任何mpdu的sn满足winstart
b-winsizer≤sn《winstartb;或者,隶属于接收mld的其他sta接收到的mpdu的sn满足winstart
b-winsizer≤sn《winstartb;
177.不存在任意一个在当前接收到的a-mpdu之前接收的另一个a-mpdu中的没有基于ba响应的mpdu;或者,在当前接收到的a-mpdu之前接收到的任意一个a-mpdu中没有任意一个mpdu没有基于ba响应;或者,在当前接收到的a-mpdu之前接收到的任意一个a-mpdu中承
载的所有mpdu已基于ba响应;
178.可理解,以上所示的各个条件,在sta执行时,不限定先后顺序。
179.在当前接收到的a-mpdu中没有其他具有sn的mpdu已经满足上述所有条件;或者,该某个sta接收到的上述具有sn的mpdu是a-mpdu中满足以上条件的第一个mpdu;或者,该某个sta的计分板上下文还没有基于当前接收到的a-mpdu中的mpdu进行刷新;
180.则该某个sta可以刷新某个sta的计分板上下文并更新该某个sta的计分板上下文。
181.由此,该第十种计分板上下文控制操作可以有效改善上文如图3c至图3e所示的问题。
182.示例性的,对于上文所示的第十种计分板上下文控制操作还可以理解为:
183.if the following conditions are true:
184.a recipient mld has a separate scoreboard context control in each link,
185.the sta affiliated with the mld is capable of using reordering buffer information to update its scoreboard context.
186.a sta affiliated with the mld receives a frame with sn that is winstartr≤sn《winstartr+2
11
187.none of a frame with sn that is winstart
b-winsizer≤sn《winstart
b is(was)received by the sta;
188.no any frame that are carried in another a-mpdu that received before current a-mpdu is not responded by a ba;
189.no other frame with a sn in current a-mpdu that already fulfills all above conditions.
190.the sta shall flush the scoreboard context and update the scoreboard context.
191.可理解,图3a至图3e均是以一个a-mpdu包括多个mpdu为例示出的,每一个sn可以对应一个mpdu。可理解,本技术以上所示的各个a-mpdu的sn均是以属于同一个tid为例示出的。
192.结合以上所示的第三种至第十种计分板上下文控制操作,本技术实施例提供了一种多链路通信方法,该方法中所涉及的发送端和接收端的说明可以参考上文,这里不再一一详述。如图4所示,该多链路通信方法包括:
193.401、发送端向接收端发送第一a-mpdu,接收端接收该第一a-mpdu。
194.可选的,发送端与接收端之间可以包括一条链路。
195.可选的,发送端与接收端之间可以包括至少两个链路。
196.可选的,第一a-mpdu可以包括一个mpdu。可选的,该第一a-mpdu可以包括至少两个mpdu。
197.可理解,由于a-mpdu是承载在ppdu中,通常对于一个接收站点来说,一个ppdu中只承载一个a-mpdu,因此本技术实施例所示的a-mpdu还可以理解为ppdu,本技术实施例对此不作限定。
198.402、接收端获取本地记录的计分板上下文,在第一a-mpdu满足如下任一项或多项条件时,根据该第一a-mpdu的sn刷新该计分板上下文。
199.可理解,本技术实施例所示的本地记录的计分板上下文可以是初始化的计分板上下文,也可以是接收端根据其在接收第一a-mpdu之前已经接收到的a-mpdu更新后的计分板上下文,或者,根据其在接收第一a-mpdu之前已经接收到的a-mpdu刷新后的计分板上下文等,这里不再一一列举。
200.第一a-mpdu满足的条件包括:
201.第一条件、隶属于该接收端的某个sta接收到的mpdu的sn满足winstartr≤sn《winstartr+2
11
。
202.第二条件、sn满足winstart
b-winsizer≤sn《winstartb的任何一个mpdu都不是通过所述某个sta接收的;或者,sn满足winstart
b-winsizer≤sn《winstartb的所有mpdu都是由隶属于所述接收端的其他sta接收的。
203.第三条件、不存在任意一个在当前接收到的a-mpdu之前接收的另一个a-mpdu中的没有基于ba响应的mpdu;或者,在上述第一a-mpdu之前接收到的任意一个a-mpdu中没有任意一个mpdu没有基于ba响应;或者,在上述第一a-mpdu之前接收到的任意一个a-mpdu中承载的所有mpdu已基于ba响应。
204.第四条件、在上述第一a-mpdu中没有其他具有sn的mpdu已经满足上述所有条件(如上文所示的第一条件至第三条件);或者,隶属于上述接收端的某个sta接收到的具有sn的mpdu是上述第一a-mpdu中满足以上条件的第一个mpdu;或者,隶属于上述接收端的某个sta的计分板上下文还没有基于上述第一a-mpdu中的mpdu进行刷新。
205.可理解,本技术实施例对于sta执行上述第一条件至第三条件的先后顺序不作限定。
206.可选的,第一a-mpdu满足以上所示的第一条件至第四条件中的任一项条件时,该第一a-mpdu所满足的其他条件,可以参考上文所示的第三种计分板上下文控制操作至第六种计分板上下文控制操作中的相关描述。
207.可选的,第一a-mpdu满足以上所示的第一条件至第四条件中的任两项条件时,该第一a-mpdu所满足的其他条件,可以参考上文所示的第六种计分板上下文控制操作至第九种上下文控制操作中的相关描述。
208.可选的,当第一a-mdpu满足以上所示的第一条件至第四条件时,该第一a-mpdu所满足的其他条件可以参考上文所示的第十种计分板上下文控制操作的相关描述。
209.可理解,关于第一a-mpdu所满足的条件可以还可以参考上文所示的第三种计分板上下文控制操作至第十种上下文控制操作的说明,这里不再一一详述。
210.403、接收端向发送端发送ba帧,该ba帧用于对第一a-mpdu中的mpdu的接收情况做出确认。
211.可理解,本技术实施例未示出的addba请求帧、addba响应帧以及bar帧的说明,可以参考上文所示的图2,这里不再一一详述。
212.通过本技术实施例提供的方法,可使得接收端能够合理有效地刷新本地计分板上下文(local scoreboard)。
213.图4所示的多链路通信方法中,接收端可以根据上文所示的第三种计分板上下文
控制操作至第十种计分板上下文控制操作为例刷新本地计分板上下文,或者,更新本地计分板上下文。本技术实施例还提供了一种多链路通信方法,该方法中,发送端可以通过指示信息指示接收端是否属性本地计分板上下文,有效减少了接收端的复杂度。
214.图5是本技术实施例提供的另一种多链路通信方法的流程示意图,该方法中涉及的发送端和接收端的说明可以参考上文,这里不再一一详述。如图5所示,该多链路通信方法包括:
215.501、发送端向接收端发送第二a-mpdu,该第二a-mpdu包括指示信息,该指示信息用于指示接收端是否刷新该接收端中的计分板上下文。对应的,接收端接收该第二a-mpdu。
216.可理解,图4所示的方法中接收端中的sta有能力使用重新排序的缓冲区信息更新计分板上下文。图5所示的方法中接收端中的sta可以有能力使用重新排序的缓冲区信息更新计分板上下文,也可以没有能力使用重新排序的缓冲区信息更新计分板上下文。
217.例如,指示信息设置为0时,则可以表示接收端不需要刷新本地计分板上下文。又例如,指示信息设置为1时,则表示接收端必须刷新本地计分板上下文,也可以隐含的表示接收端有能力刷新本地计分板上下文。一般的,第二a-mpdu会通过某一个链路来传输,在这个链路上接收a-mpdu的sta是唯一的,因此与该用于传输第二a-mpdu的链路对应的sta可以根据指示信息确定是否刷新本地计分板上下文。
218.图6a是本技术实施例提供的一种mpdu子帧的结构示意图。如图6a所示,指示信息可以承载于mpdu分隔符(delimiter)中的预留(reserved)字段中,或者,承载于高吞吐率(high throughput,ht)控制(ht control)字段中。
219.该ht控制字段可以携带在mpdu(例如,服务质量(quality of sevice,qos)数据(data)帧,服务质量空(qos null)帧和管理帧)中,用于携带一些控制信息。ht控制字段的长度为4个字节。ht控制字段有三种类型,通过b0和b1比特进行区分。如表1所示,当b0=0时,对应的ht控制字段为高吞吐率(high throughput,ht)类型的ht控制字段;当b0=1,b1=0时,对应的ht控制字段为非常高吞吐量(very high throughput,vht)类型的ht控制字段;当b0=1,b1=1时,对应的ht控制字段为高效率(high efficiency,he)类型的ht控制字段。
220.表1
[0221][0222]
其中,he类型的ht控制字段中的b2-b31部分称作聚合控制(a-control)字段(subfield)。图6b是本技术实施例提供的一种聚合控制字段的格式示意图,该聚合控制字段中包括控制列表(control list)和填充(padding)部分。其中,控制列表的比特长度是可变的,其可以包括一个或者多个控制子字段(control subfield);填充部分包括0个或更多的比特。如图6c所示的本技术实施例提供的聚合控制字段中的一个控制子字段的格式示意图,一个控制子字段包括一个4比特的控制标识(control id)和控制信息(control information)。该控制标识用于标识控制信息。控制标识和其对应的控制信息的长度如表2所示:
[0223]
表2
[0224][0225][0226]
可理解,图6a所示的其他字段,如mpdu分隔符包括的帧结尾(end of frame,eof)、预留(reversed)、mpdu长度(length)、循环冗余校验(cyclic redundancy check,crc)和分隔符签名(delimeter signature),以及mpdu中包括的帧控制(frame control)、长度/标识符(duration/id)、地址1(address 1)至地址4(address 4)、序列控制(sequence control)、qos控制(qos control)和ht控制(ht control),以及填充(padding)等的说明可以参考相关标准或协议,这里不再一一详述。
[0227]
基于上文介绍,本技术实施例提供了两种可以在he类型的ht控制字段中携带指示信息。
[0228]
第一种方法是使用cas类型控制信息中的预留(reversed)比特实现指示信息。该cas类型控制信息的帧结构如图6d所示。如图6d所示,该cas类型控制信息可以包括限制接入(access category,ac)类型(ac constraint)、反向授权(reverse direct grant,rdg)、参数化空间复用传输(parameterized spatial reuse transmission,psrt)ppdu和预留(reserved)。可理解,关于图6d的其他字段的相关描述可以参考相关标准或协议,这里不再一一详述。
[0229]
第二种方法是使用一个目前保留的控制标识(control id)来建立一个新的控制
类型(如图6c所示),然后通过该新控制类型的控制信息来进行指示。例如,指示信息的比特长度可以为1比特。
[0230]
502、接收端根据指示信息刷新计分板上下文。
[0231]
可理解,接收端也可以根据指示信息不刷新计分板上下文。如接收端可以更新计分板上下文。
[0232]
503、接收端向发送端发送ba帧,发送端接收该ba帧。
[0233]
可理解,本技术实施例未示出的addba请求帧、addba响应帧以及bar帧的说明,可以参考上文所示的图2,这里不再一一详述。
[0234]
本技术实施例提供的方法,发送端通过在a-mpdu中携带指示信息,从而指示接收端刷新计分板上下文,可有效减少接收端的复杂度,提高接收端刷新计分板上下文的效率。
[0235]
本技术实施例还提供了一种多链路通信方法,这种实施方式中,接收端中的sta可以有能力使用重新排序的缓冲区信息更新计分板上下文,也可以没有能力使用重新排序的缓冲区信息更新计分板上下文。
[0236]
本技术实施例中,发送端在传输的数据帧(即a-mpdu)中包括第一字段,该第一字段用于指示当前sn是第几轮传输。该第一字段可以称为sn轮数字段(round of sn subfield),该字段初始值设置为0。当数据帧的sn一旦超过sn最大值(4095)就重新变为0之后,sn轮数字段的取值加1。举例来说,假设sn轮数字段包括5个比特,则其取值可以是0-31。如当sn轮数字段设置为31之后,如果再次加1就变回0。
[0237]
由此,接收端在接收到一个数据帧之后,如果满足以下条件,就可以在更新本地计分板上下文前先对该本地计分板上下文进行刷新:
[0238]
如果根据该数据帧的sn更新本地计分板上下文后,更新后的本地计分板上下文至少部分会覆盖更新之前的范围;
[0239]
sn轮数字段的数值与上一次接收到的数据帧携带的sn轮数字段的数值不同。
[0240]
示例性的,sn轮数字段可以包含于如图5所示的新建的he类型的ht控制类型(通过表2所示的第一列中没有使用的id新建的控制类型,如图6c所示)。对于该sn轮数字段的比特长度,本技术实施例不作限定。例如,可以为5个比特等。示例性的,sn轮数字段可以通过新建的a-control类型来承载,或者承载在cas控制类型的reserved比特中,如可以参考如图5所示的指示信息的承载位置。
[0241]
可理解,如果sn轮数字段长度有限(如5个比特),则有可能增加32次之后回复到原来的数值,这样接收端可能无法判断sn轮数数值是否发生过变化。但是只要保证sn轮数字段长度足够长,发生该情况的概率就会非常低,可以将其作为一个小概率事件而忽略。
[0242]
本技术实施例还提供了一种计分板上下文控制操作,如下所示:
[0243]
如果隶属于接收mld中的一个sta不能使用重新排序缓冲区信息更新其记分板上下文,且接收mld在每条链路上都有一个单独的计分板上下文控制,则sta应实施部分状态操作(指的是ba机制的部分状态操作),并应在以下定义的时间段内丢弃临时记录:
[0244]
在发送ba之后,该ba和已确认的a-mpdu在同一个传输机会(transmission opportunity,txop)中),并且在处理在同一个链路上接收到来自initiator mld的属于同一个tid的下一个qos数据帧的记分板上下文之前;
[0245]
假如ba没有在当前txop结束之前发送,则在一个新txop内在同一个链路上接收到
来自initiator mld的下一个qos数据帧之后,并且更新的记分板上下文之前。(if a sta affiliated with a recipient mld in a link is not capable of using reordering buffer information to update its scoreboard context and the recipient mld has a separate scoreboard context control in each link,the sta shall implement the partial-state operation and should discard the temporary record in the following defined time periods:
[0246]
after sending a ba where the ba and the acknowledged a-mpdu(s)are in one txop and before processing the scoreboard context of the next received the qos data frame of the tid from the initiator mld in the link if ba is transmitted;
[0247]
immediate before processing the scoreboard context of the next received the qos data frame of the tid from the initiator mld in the link in a new txop if ba is not transmitted at the end of the current txop(也即after received the next qos data frame of the tid from the initiator mld in the link in a new txop and before processing the scoreboard context,if ba is not transmitted at the end of the current txop)).
[0248]
可理解,以上所示的各个实施例中,其中一个实施例未详细描述的实现方式,还可以参考其他实施例。
[0249]
如上文记载:计分板的窗口大小可以是64,128,256,512,1024等。因此,上述所示的第三种计分板上下文控制操作至第十种计分板上下文控制操作中涉及的2
11
均是以winsizer=1024为例示出的。
[0250]
当计分板的窗口大小不是1024时,以上所示的第三种计分板上下文控制操作至第十种计分板上下文控制操作中的至少一项中涉及的2
11
也可以随着变化。
[0251]
示例性的,以第三种计分板上下文控制操作为例,实际上当接收到一个winstartr≤sn《winstartr+q*winsizer范围内的帧时会需要冲刷其计分板,如q等于2,或者,q还可以等于3等。为便于描述,下文将以q=2为例说明本技术提供的方法。
[0252]
当q=2时,因为当winstartr+2*winsizer≤sn《winstartr+2
11
时,第一sta会更新winstartr和winendr,而计分板(新的[winstartr,winendr])与更新前的计分板范围(旧的[winstartr,winendr])不重叠,计分板上不会遗留旧数据帧的接收记录;也就是不会把旧的数据的记录通过ba反馈给发送站点。
[0253]
可理解,如果考虑到临界点,则以上所示的winstartr≤sn《winstartr+2
11
还可以理解为:winstartr≤sn《winstartr+2
11-1。以及下文所示的winstartr≤sn《winstartr+2*winsizer也可以理解为:winstartr≤sn《winstartr+2*winsize
r-1,或者winstartr≤sn《winendr+winsizer。也就是说,如果考虑到数值的取整或公式的简洁等,本技术所涉及的sn所满足的范围可以基于一定的范围(如在-2到+2的范围)进行调整,这里不再一一列举。
[0254]
为便于描述,下文将以winstartr≤sn《winstartr+2*winsize
r-1为例进行说明。
[0255]
以q=2为例,则第三种计分板上下文控制操作还可以理解为:
[0256]
接收mld在每条链路上都有一个单独的计分板上下文控制;
[0257]
隶属于接收mld的sta都可以使用重新排序的缓冲区信息更新计分板上下文;
[0258]
隶属于该接收mld的某个sta接收到的mpdu的sn满足winstartr≤sn《winstartr+2*winsize
r-1;
[0259]
隶属于接收mld的其他sta已经接收到的mpdu的sn满足winstart
b-winsizer≤sn《winstartb;
[0260]
则该某个sta可以刷新该某个sta的计分板上下文并更新该某个sta的计分板上下文。(if the following conditions are true:a recipient mld has a separate scoreboard context control in each link;the sta affiliated with the mld is capable of using reordering buffer information to update its scoreboard context;a sta affiliated with the mld receives a frame with sn that is winstartr≤sn《winendr+winsizer;the other sta affiliated with the mld receives a frame with sn that is winstart
b-winsizer≤sn《winstartb;the sta shall flush the scoreboard context and update the scoreboard context.)
[0261]
针对上述第三种上下文控制操作,图10a是以winsizer=256为例的一个流程,在第一sta未接收到第六个a-mpdu(如图10a所示的a-mpdu6)之前,第一sta的计分板上下文中的winstartr=0,winendr=255。当接收端接收到第六个a-mpdu时,由于sn为256-400,该第六个a-mpdu的sn既不属于上述第一种计分板上下文控制操作,也不属于上述第二种计分板上下文控制操作。由此,第一sta就无法获知到底该如何更新其计分板上下文。也可以理解为:当接收端接收到第六个a-mpdu时,上述第二种计分板上下文控制操作中并没有考虑当第一sta接收到的mpdu的sn处于winendr≤sn《winstartr+2*winsize
r-1这个范围。如果直接将第一sta的计分板中的winendr移动到400的位置,winstartr在145(即400-255),则在反馈ba帧的时候会把上一轮的145~255的状态信息错误地反馈回去。
[0262]
而在图10b中,在第一sta未接收到第六个a-mpdu(如图10b所示的a-mpdu6)之前,第一sta的计分板上下文中的winstartr=0,winendr=255。当接收端接收到第六个a-mpdu时,由于sn为512-767,该第六个a-mpdu的sn既不属于上述第一种计分板上下文控制操作,也不属于上述第二种计分板上下文控制操作。由此,第一sta就无法获知到底该如何更新其计分板上下文。也可以理解为:当接收端接收到第六个a-mpdu时,直接将第一sta的计分板中的winendr移动到767的位置,winstartr在512,则在反馈ba帧的时候不会把上一轮的0~255范围内的任何一个帧的状态信息错误地反馈回去。因此针对第六个a-mpdu不需要冲刷计分板。可理解,图10b所示的例子中省略号省略的是其他未示出的a-mpdu。
[0263]
以q=2为例,则第七种计分板上下文控制操作还可以理解为:
[0264]
接收mld在每条链路上都有一个单独的计分板上下文控制;
[0265]
隶属于接收mld的sta都可以使用重新排序的缓冲区信息更新计分板上下文;
[0266]
隶属于该接收mld的某个sta接收到的mpdu的sn满足winstartr≤sn《winstartr+2*winsize
r-1;
[0267]
隶属于接收mld的其他sta已经接收到的mpdu的sn满足winstart
b-winsizer≤sn《winstartb;
[0268]
在当前接收到的a-mpdu中没有其他具有sn的mpdu已经满足上述条件;或者,该某个sta接收到的上述具有sn的mpdu是a-mpdu中满足以上条件的第一个mpdu;或者,该某个sta的计分板上下文还没有基于当前接收到的a-mpdu中的mpdu进行刷新;
[0269]
则该某个sta可以刷新某个sta的计分板上下文并更新该某个sta的计分板上下文。
[0270]
以q=2为例,则第八种计分板上下文控制操作还可以理解为:
[0271]
接收mld在每条链路上都有一个单独的计分板上下文控制;
[0272]
隶属于接收mld的sta都可以使用重新排序的缓冲区信息更新计分板上下文;
[0273]
隶属于该接收mld的某个sta接收到的mpdu的sn满足winstartr≤sn《winstartr+2*winsize
r-1;
[0274]
隶属于接收mld的其他sta已经接收到的mpdu的sn满足winstart
b-winsizer≤sn《winstartb;
[0275]
不存在任意一个在当前接收到的a-mpdu之前接收的另一个a-mpdu中的没有基于ba响应的mpdu;或者,在当前接收到的a-mpdu之前接收的任意一个a-mpdu中没有任意一个mpdu没有基于ba响应;或者,在当前接收到的a-mpdu之前接收到的任意一个a-mpdu中承载的所有mpdu已基于ba响应;
[0276]
则该某个sta可以刷新某个sta的计分板上下文并更新该某个sta的计分板上下文。
[0277]
以q=2为例,则第九种计分板上下文控制操作还可以理解为:
[0278]
接收mld在每条链路上都有一个单独的计分板上下文控制;
[0279]
隶属于接收mld的sta都可以使用重新排序的缓冲区信息更新计分板上下文;
[0280]
隶属于该接收mld的某个sta接收到的mpdu的sn满足winstartr≤sn《winstartr+2*winsize
r-1;
[0281]
隶属于接收mld的其他sta已经接收到的mpdu的sn满足winstart
b-winsizer≤sn《winstartb;
[0282]
在当前接收到的a-mpdu中没有其他具有sn的mpdu已经满足上述所有条件;或者,该某个sta接收到的上述具有sn的mpdu是当前接收到的a-mpdu中满足以上条件的第一个mpdu;或者,该某个sta的计分板上下文还没有基于当前接收到的a-mpdu中的mpdu进行刷新;
[0283]
不存在任意一个在当前接收到的a-mpdu之前接收的另一个a-mpdu中的没有基于ba响应的mpdu;或者,在当前接收到的a-mpdu之前接收的任意一个a-mpdu中没有任意一个mpdu没有基于ba响应;或者,在当前接收到的a-mpdu之前接收到的任意一个a-mpdu中承载的所有mpdu已基于ba响应;
[0284]
则该某个sta可以刷新某个sta的计分板上下文并更新该某个sta的计分板上下文。
[0285]
以q=2为例,则第十种计分板上下文控制操作还可以理解为:
[0286]
接收mld在每条链路上都有一个单独的计分板上下文控制;
[0287]
隶属于接收mld的sta都可以使用重新排序的缓冲区信息更新计分板上下文;
[0288]
隶属于该接收mld的某个sta接收到的mpdu的sn满足winstartr≤sn《winstartr+2*winsize
r-1;
[0289]
该某个sta接收到的mpdu中没有任何mpdu的sn满足winstart
b-winsizer≤sn《winstartb;或者,隶属于接收mld的其他sta接收到的mpdu的sn满足winstart
b-winsizer≤
sn《winstartb;
[0290]
不存在任意一个在当前接收到的a-mpdu之前接收的另一个a-mpdu中的没有基于ba响应的mpdu;或者,在当前接收到的a-mpdu之前接收到的任意一个a-mpdu中没有任意一个mpdu没有基于ba响应;或者,在当前接收到的a-mpdu之前接收到的任意一个a-mpdu中承载的所有mpdu已基于ba响应;
[0291]
可理解,以上所示的各个条件,在sta执行时,不限定先后顺序。
[0292]
在当前接收到的a-mpdu中没有其他具有sn的mpdu已经满足上述所有条件;或者,该某个sta接收到的上述具有sn的mpdu是a-mpdu中满足以上条件的第一个mpdu;或者,该某个sta的计分板上下文还没有基于当前接收到的a-mpdu中的mpdu进行刷新;
[0293]
则该某个sta可以刷新某个sta的计分板上下文并更新该某个sta的计分板上下文。
[0294]
可理解,以上所示的计分板上下文控制操作的说明仅为示例,本技术上文涉及的2
11
与计分板窗口之间的关系这里不再一一详述。示例性的,将sn所满足的条件与计分板窗口的大小结合,则上文所示的2
11
均可以替换为2*winsizer。
[0295]
结合以上所示的第三种计分板上下文控制操作和第六种计分板上下文控制操作,则本技术还提供了第十一种计分板上下文控制操作:
[0296]
接收mld在每条链路上都有一个单独的计分板上下文控制;
[0297]
隶属于接收mld的sta都可以使用重新排序的缓冲区信息更新计分板上下文;
[0298]
隶属于该接收mld的某个sta接收到的mpdu的sn满足winstartr≤sn《winstartr+2*winsize
r-1;
[0299]
该某个sta接收到的mpdu中没有任何mpdu的sn满足winstart
b-winsizer≤sn《winstartb;或者,隶属于接收mld的其他sta接收到的mpdu的sn满足winstart
b-winsizer≤sn《winstartb;
[0300]
则该某个sta可以刷新某个sta的计分板上下文并更新该某个sta的计分板上下文。
[0301]
以下将介绍本技术实施例提供的通信装置。
[0302]
本技术根据上述方法实施例对通信装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本技术中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。下面将结合图7至图9详细描述本技术实施例的通信装置。
[0303]
图7是本技术实施例提供的一种通信装置的结构示意图,如图7所示,该通信装置包括处理单元701、收发单元702。
[0304]
在本技术的一些实施例中,该通信装置可以是上文示出的发送端。即图7所示的通信装置可以用于执行上文方法实施例中由发送端执行的步骤或功能等。
[0305]
例如,收发单元702,用于发送addba请求帧,以及接收addba响应帧。
[0306]
又例如,收发单元702,还用于发送第一a-mpdu。
[0307]
又例如,收发单元702,还用于发送bar帧,以及接收ba帧。
[0308]
又例如,收发单元702,还用于发送第二a-mpdu。
[0309]
可理解,本技术实施例示出的收发单元和处理单元的具体说明仅为示例,对于收发单元和处理单元的具体功能或执行的步骤等,可以参考上述方法实施例(如包括图4和图5等),这里不再详述。
[0310]
复用图7,在本技术的另一些实施例中,该通信装置可以是上文示出的接收端。即图7所示的通信装置可以用于执行上文方法实施例中由接收端执行的步骤或功能等。
[0311]
例如,收发单元702,用于接收addba请求帧,以及发送addba响应帧。
[0312]
又例如,收发单元702,还用于接收第一a-mpdu。
[0313]
又例如,处理单元701,用于获取本地记录的计分板上下文,并在第一a-mpdu满足本技术实施例上文所示的如第三种计分板上下文控制操作至第十种计分板上下文控制操作中的至少一项时,根据该第一a-mpdu的sn刷新计分板上下文。
[0314]
又例如,收发单元702,还用于接收bar帧,以及发送ba帧。
[0315]
又例如,收发单元702,还用于接收第二a-mpdu;处理单元701,还用于根据该第二a-mpdu中的指示信息刷新计分板上下文。
[0316]
可理解,关于第三种计分板上下文控制操作至第十种计分板上下文控制操作等的具体说明可以参考上文所示的方法实施例,这里不再一一详述。
[0317]
可理解,本技术实施例示出的收发单元和处理单元的具体说明仅为示例,对于收发单元和处理单元的具体功能或执行的步骤等,可以参考上述方法实施例(如包括图4和图5等),这里不再详述。
[0318]
以上介绍了本技术实施例的发送端和接收端,以下介绍所述发送端和接收端可能的产品形态。应理解,但凡具备上述图7所述的发送端的功能的任何形态的产品,或者,但凡具备上述图7所述的接收端的功能的任何形态的产品,都落入本技术实施例的保护范围。还应理解,以下介绍仅为举例,不限制本技术实施例的发送端和接收端的产品形态仅限于此。
[0319]
图7所示的通信装置中,处理单元701可以是一个或多个处理器,收发单元702可以是收发器,或者收发单元702还可以是发送单元和接收单元,发送单元可以是发送器,接收单元可以是接收器,该发送单元和接收单元集成于一个器件,例如收发器。本技术实施例中,处理器和收发器可以被耦合等,对于处理器和收发器的连接方式,本技术实施例不作限定。
[0320]
如图8所示,该通信装置80包括一个或多个处理器820和收发器810。
[0321]
示例性的,当该通信装置用于执行上述发送端执行的步骤或方法或功能时,例如,收发器810,用于发送addba请求帧,以及接收addba响应帧。又例如,收发器810,还用于发送第一a-mpdu。又例如,收发器810,还用于发送bar帧,以及接收ba帧。又例如,收发器810,还用于发送第二a-mpdu。
[0322]
示例性的,当该通信装置用于执行上述接收端执行的步骤或方法或功能时,例如,收发器810,用于接收addba请求帧,以及发送addba响应帧。又例如,收发器810,还用于接收第一a-mpdu。又例如,处理器820,用于获取本地记录的计分板上下文,并在第一a-mpdu满足本技术实施例上文所示的如第三种计分板上下文控制操作至第十种计分板上下文控制操作中的至少一项时,根据该第一a-mpdu的sn刷新计分板上下文。又例如,收发器810,还用于接收bar帧,以及发送ba帧。又例如,收发器810,还用于接收第二a-mpdu;处理器820,还用于根据该第二a-mpdu中的指示信息刷新计分板上下文。
[0323]
可理解,对于处理器和收发器的具体说明还可以参考图7所示的处理单元和收发单元的介绍,这里不再赘述。
[0324]
在图8所示的通信装置的各个实现方式中,收发器可以包括接收机和发射机,该接收机用于执行接收的功能(或操作),该发射机用于执行发射的功能(或操作)。以及收发器用于通过传输介质和其他设备/装置进行通信。
[0325]
可选的,通信装置80还可以包括一个或多个存储器830,用于存储程序指令和/或数据。存储器830和处理器820耦合。本技术实施例中的耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。处理器820可能和存储器830协同操作。处理器820可可以执行存储器830中存储的程序指令。可选的,上述一个或多个存储器中的至少一个可以包括于处理器中。
[0326]
本技术实施例中不限定上述收发器810、处理器820以及存储器830之间的具体连接介质。本技术实施例在图8中以存储器830、处理器820以及收发器810之间通过总线840连接,总线在图8中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0327]
在本技术实施例中,处理器可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成等。
[0328]
本技术实施例中,存储器可包括但不限于硬盘(hard disk drive,hdd)或固态硬盘(solid-state drive,ssd)等非易失性存储器,随机存储记忆体(random access memory,ram)、可擦除可编程只读存储器(erasable programmable rom,eprom)、只读存储器(read-only memory,rom)或便携式只读存储器(compact disc read-only memory,cd-rom)等等。存储器是能够用于携带或存储具有指令或数据结构形式的程序代码,并能够由计算机(如本技术示出的通信装置等)读和/或写的任何存储介质,但不限于此。本技术实施例中的存储器还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
[0329]
处理器820主要用于对通信协议以及通信数据进行处理,以及对整个通信装置进行控制,执行软件程序,处理软件程序的数据。存储器830主要用于存储软件程序和数据。收发器810可以包括控制电路和天线,控制电路主要用于基带信号与射频信号的转换以及对射频信号的处理。天线主要用于收发电磁波形式的射频信号。输入输出装置,例如触摸屏、显示屏,键盘等主要用于接收用户输入的数据以及对用户输出数据。
[0330]
当通信装置开机后,处理器820可以读取存储器830中的软件程序,解释并执行软件程序的指令,处理软件程序的数据。当需要通过无线发送数据时,处理器820对待发送的数据进行基带处理后,输出基带信号至射频电路,射频电路将基带信号进行射频处理后将射频信号通过天线以电磁波的形式向外发送。当有数据发送到通信装置时,射频电路通过天线接收到射频信号,将射频信号转换为基带信号,并将基带信号输出至处理器820,处理器820将基带信号转换为数据并对该数据进行处理。
[0331]
在另一种实现中,所述的射频电路和天线可以独立于进行基带处理的处理器而设置,例如在分布式场景中,射频电路和天线可以与独立于通信装置,呈拉远式的布置。
[0332]
可理解,本技术实施例示出的通信装置还可以具有比图8更多的元器件等,本技术实施例对此不作限定。以上所示的处理器和收发器所执行的方法仅为示例,对于该处理器和收发器具体所执行的步骤可参照上文介绍的方法。
[0333]
在另一种可能的实现方式中,图7所示的通信装置中,处理单元701可以是一个或多个逻辑电路,收发单元702可以是输入输出接口,又或者称为通信接口,或者接口电路,或接口等等。或者收发单元702还可以是发送单元和接收单元,发送单元可以是输出接口,接收单元可以是输入接口,该发送单元和接收单元集成于一个单元,例如输入输出接口。如图9所示,图9所示的通信装置包括逻辑电路901和接口902。即上述处理单元701可以用逻辑电路901实现,收发单元702可以用接口902实现。其中,该逻辑电路901可以为芯片、处理电路、集成电路或片上系统(system on chip,soc)芯片等,接口902可以为通信接口、输入输出接口、管脚等。示例性的,图9是以上述通信装置为芯片为例出的,该芯片包括逻辑电路901和接口902。
[0334]
本技术实施例中,逻辑电路和接口还可以相互耦合。对于逻辑电路和接口的具体连接方式,本技术实施例不作限定。
[0335]
示例性的,当通信装置用于执行上述发送端执行的方法或功能或步骤时,例如,接口902,用于发送addba请求帧,以及接收addba响应帧。又例如,接口902,还用于发送第一a-mpdu。又例如,接口902,还用于发送bar帧,以及接收ba帧。又例如,接口902,还用于发送第二a-mpdu。
[0336]
示例性的,当通信装置用于执行上述接收端执行的方法或功能或步骤时,例如,接口902,用于接收addba请求帧,以及发送addba响应帧。又例如,接口902,还用于接收第一a-mpdu。又例如,逻辑电路901,用于获取本地记录的计分板上下文,并在第一a-mpdu满足本技术实施例上文所示的如第三种计分板上下文控制操作至第十种计分板上下文控制操作中的至少一项时,根据该第一a-mpdu的sn刷新计分板上下文。又例如,接口902,还用于接收bar帧,以及发送ba帧。又例如,接口902,还用于接收第二a-mpdu;逻辑电路901,还用于根据该第二a-mpdu中的指示信息刷新计分板上下文。
[0337]
可理解,本技术实施例示出的通信装置可以采用硬件的形式实现本技术实施例提供的方法,也可以采用软件的形式实现本技术实施例提供的方法等,本技术实施例对此不作限定。
[0338]
对于图9所示的各个实施例的具体实现方式,还可以参考上述各个实施例,这里不再详述。
[0339]
本技术实施例还提供了一种无线通信系统,该无线通信系统包括发送端和接收端,该发送端和该接收端可以用于执行前述任一实施例中的方法(如图4和图5等)。
[0340]
此外,本技术还提供一种计算机程序,该计算机程序用于实现本技术提供的方法中由发送端执行的操作和/或处理。
[0341]
本技术还提供一种计算机程序,该计算机程序用于实现本技术提供的方法中由接收端执行的操作和/或处理。
[0342]
本技术还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机
代码,当计算机代码在计算机上运行时,使得计算机执行本技术提供的方法中由发送端执行的操作和/或处理。
[0343]
本技术还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机代码,当计算机代码在计算机上运行时,使得计算机执行本技术提供的方法中由接收端执行的操作和/或处理。
[0344]
本技术还提供一种计算机程序产品,该计算机程序产品包括计算机代码或计算机程序,当该计算机代码或计算机程序在计算机上运行时,使得本技术提供的方法中由发送端执行的操作和/或处理被执行。
[0345]
本技术还提供一种计算机程序产品,该计算机程序产品包括计算机代码或计算机程序,当该计算机代码或计算机程序在计算机上运行时,使得本技术提供的方法中由接收端执行的操作和/或处理被执行。
[0346]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
[0347]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本技术实施例提供的方案的技术效果。
[0348]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0349]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的可读存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0350]
以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
技术特征:
1.一种多链路通信方法,其特征在于,所述方法包括:接收端接收第一聚合的媒介接入控制层协议数据单元a-mpdu;所述接收端获取本地记录的计分板上下文,在所述第一a-mpdu满足如下任一项或多项条件时,根据所述第一a-mpdu的序列号sn刷新所述计分板上下文;第一条件包括:隶属于所述接收端的某个sta接收到的mpdu的sn满足winstart
r
≤sn<winstart
r
+2
11
;第二条件包括:sn满足winstart
b-winsize
r
≤sn<winstart
b
的任何一个mpdu都不是通过所述某个sta接收的;或者,sn满足winstart
b-winsize
r
≤sn<winstart
b
的所有mpdu都是由隶属于所述接收端的其他sta接收的;第三条件包括:不存在任意一个在接收到所述第一a-mpdu之前接收的另一个a-mpdu中的没有基于ba响应的mpdu;或者,在所述第一a-mpdu之前接收到的任意一个a-mpdu中没有任意一个mpdu没有基于ba响应;或者,在所述第一a-mpdu之前接收到的任意一个a-mpdu中承载的所有mpdu已基于ba响应。2.根据权利要求1所述的方法,其特征在于,在所述第一a-mpdu还满足以下第四条件:所述第四条件包括:在所述第一a-mpdu中没有其他具有sn的mpdu已经满足所述第一条件、所述第二条件和所述第三条件;或者,隶属于所述接收端的某个sta接收到的具有sn的mpdu是所述第一a-mpdu中满足所述第一条件、所述第二条件和所述条件的第一个mpdu;或者,隶属于所述接收端的某个sta的计分板上下文还没有基于所述第一a-mpdu中的mpdu进行刷新。3.根据权利要求1或2所述的方法,其特征在于,所述接收端在每条链路上都有一个单独的计分板上下文控制,所述链路为所述接收端与发送端之间的链路。4.根据权利要求1-3任一项所述的方法,其特征在于,隶属于所述接收端的sta具有使用重新排序的缓冲区信息更新计分板上下文的能力。5.根据权利要求1-4任一项所述的方法,其特征在于,所述第一a-mpdu中的sn属于同一个业务标识tid。6.一种通信装置,其特征在于,包括:收发单元,用于接收第一聚合的媒介接入控制层协议数据单元a-mpdu;处理单元,用于获取本地记录的计分板上下文,在所述第一a-mpdu满足如下任一项或多项条件时,根据所述第一a-mpdu的序列号sn刷新所述计分板上下文;第一条件包括:隶属于所述接收端的某个sta接收到的mpdu的sn满足winstart
r
≤sn<winstart
r
+2
11
;第二条件包括:sn满足winstart
b-winsize
r
≤sn<winstart
b
的任何一个mpdu都不是通过所述某个sta接收的;或者,sn满足winstart
b-winsize
r
≤sn<winstart
b
的所有mpdu都是由隶属于所述接收端的其他sta接收的;第三条件包括:不存在任意一个在接收到所述第一a-mpdu之前接收的另一个a-mpdu中的没有基于ba响应的mpdu;或者,在所述第一a-mpdu之前接收到的任意一个a-mpdu中没有任意一个mpdu没有基于ba响应;或者,在所述第一a-mpdu之前接收到的任意一个a-mpdu中承载的所有mpdu已基于ba响应。7.一种通信装置,其特征在于,包括处理器和存储器;
所述存储器用于存储指令;所述处理器用于执行所述指令,以使权利要求1至5任一项所述的方法被执行。8.一种通信装置,其特征在于,包括逻辑电路和接口,所述逻辑电路和接口耦合;所述接口用于输入和/或输出代码指令,所述逻辑电路用于执行所述代码指令,以使权利要求1至5任一项所述的方法被执行。9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,当所述计算机程序被执行时,权利要求1至5任一项所述的方法被执行。10.一种计算机程序,其特征在于,所述计算机程序被执行时,权利要求1至5任一项所述的方法被执行。
技术总结
本申请公开了一种多链路通信方法及装置,该方法包括:发送端发送第一A-MPDU,接收端接收该第一A-MPDU。接收端获取本地记录的计分板上下文,在第一APMDU满足第一条件、第二条件、第三条件或第四条件中的至少一项时,该接收端根据第一A-MPDU的SN刷新计分板上下文。本申请提供的方法可使得接收端能够合理有效地刷新本地计分板上下文,以保证接收端正确反馈其接收到的A-MPDU中所有MPDU的接收情况。MPDU中所有MPDU的接收情况。MPDU中所有MPDU的接收情况。
技术研发人员:李云波 李伊青 淦明 郭宇宸
受保护的技术使用者:华为技术有限公司
技术研发日:2022.01.28
技术公布日:2023/8/5
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
