国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > php开源 > 综合技术 > TDLS应用与协议

TDLS应用与协议

来源:程序员人生   发布时间:2016-06-04 08:23:57 阅读次数:5544次

实现TDLS特性协议基本功能进程。

协议进程简介

TDLS是基于IEEE 802.11z标准。TDLS自动链接配置主要通过几个进程来完成。

TDLS Discovery进程

TDLS Discovery 进程由1部STA装备通过AP或GO(群组具有者) 向另外1部STA装备发送1个TDLS Discovery要求帧开始。如果目标装备也兼容TDLS,它将直接向该发送装备回复TDLS Discovery 响应帧,并提供有关装备本身的能力信息。包括所有支持速率及信道。TDLS Discovery 进程除提供目标STA确切支援TDLS的相干能力信息外,TDLS Discovery进程的帧交互亦可以用作AP与目标TDLS STA装备的相对信号强度的丈量。发起的STA能够判断与目标STA间的直接连接是不是有益于提供有效信息。通过对照分別由目标STA装备与AP装备收到的信号强度,发起的STA装备可以评估建立直接连接是不是会比通过AP发送数据包更加有效。

TDLS Discovery进程不是必要选项。1个TDLS STA装备可以选择直接发起TDLS建立进程。

TDLS Setup和Teardown进程

TDLS Setup进程需要进行1系列的帧交换。发起装备首先发送1个TDLS传输要求,通过AP信道传输至目标装备。封装帧包括发送装备的性能信息。目标装备以后会回复TDLS Setup 建立响应,一样通过AP信道传送其性能信息,另外附加1个状态代码,表示接受或谢绝该建立要求。如果接受Setup要求,发送装备将会通过AP传送1个TDLS 确认帧(Confirm Frame)。至此,两部装备之间开始进行直接通讯。发送方或接受方装备都可向另外1方直接发送TDLS拆解帧(Teardown Frame),而如果未处于讯号范围內,该帧则可以通过AP信道传输。

TDLS Peer Power Save

TDLS Peer Power Save也可称为WMM U-APSD,其中,计划发送給处于休眠状态装备的数据包将会先行缓存,直至装备恢复正常状态。在TDLS 认证测试中,装备的TDLS Peer U-APSD缓存功能是强迫性要求,而休眠功能则为可选要求。

    当缓存装备始終处于正常状态时,这1操作与WMM U-APSD操作10分相似。具体操作以下:

1. TDLS对等缓存装备为休眠装备缓存数据包。

2. 缓存装备通过AP向休眠装备发送1个TDLS 对等流量唆使帧。

3. AP将在 Beacon帧上为休眠装备发送1个流量唆使图(TIM),提示休眠装备有数据进程处于缓存状态。

4. 休眠装备恢复工作读取 Beacon帧,注意到TIM並触发AP发送TDLS对等流量唆使帧。

5. 当前恢复正常工作的装备随后直接向缓存装备发送1个TDLS对等流量响应帧,在两个装备之间建立1段服务期。

6. 缓存装备直接向接受装备发送缓存数据包。

7. 如果缓存装备显示沒有剩于缓存包,接收装备将会恢复休眠状态。

 

    亦有可能两部TDLS装备都进入省电模式处于休眠状态。当出现这类情況,两个站点都会作为缓存装备运作,为他们的对等装备缓存数据流程。这1进程除第2步外同上文所述类似,在向AP发送TDLS 对等流量唆使帧后,装备将处于工作状态直至其收到TDLS对等流量回应帧。然后,它会发送缓存数据流程,其后它可能会恢复休眠模式。

请注意,由于发布的缓存数据包通常由AP承载,处于TDLS连接中的装备仍能与同1网络內的其他装备进行通讯。

TDLS信道切换进程

TDLS 装备可以建立协议切换到另外一个信道。例如,如果网络处于1个拥堵的2.4GHz 信道运作,而两部TDLS 装备在TDLS 建立发送或回应中唆使二者全部以支援5GHz 信道处理,作为1个辅信道,切换到5GHz 信道将更加有益。以下图示。

图 1 TDLS连接从2.4G切换到5G信道

    由主信道切换至辅信道之前,TDLS装备将告知AP它们处于休眠模式,因此AP将会缓存数据包。当通过off信道传输时, TDLS装备会定期返回base信道以便接收Beacon帧,查看TIM接收缓存数据包,同时与其他装备保持通讯。而使用off信道时,TDLS装备不可以处于休眠。

    TDLS 信道切换的基本流程以下所示:

1. TDLS发起装备在AP处进入省电模式,向第2部TDLS装备发送TDLS信道切换要求。这1要求包括目标信道信息。

2. 第2部TDLS装备在AP处进入省电模式,发送1个TDLS信道切换回应。回传包括状态代码(接受)并确认目标信道为所需之辅信道。

3. 随后,两部装备由主信道切换至辅信道。在建立切换时限到期前,数据必須通过辅信道进行流通。如果时限到期前沒有数据流程通,装备将返回主信道。

4. 在使用辅信道时,任何1台装备都可主動向对等装备发送1个以主信道为目标的TDLS 信道切换要求。对等装备将返回ACK,然后两部装备返回主信道。

5. 两部装备将定期切换至主信道接收AP Beacon帧,同时同其他网络装备保持通讯。

可以在AP Beacon帧中设置制止TDLS信道切换来实现制止信道切换。

TDLS安全特性

在建立 TDLS连接时,其基本安全防护通常建立为WPA2 加密,除非网络启用了开放、非加密建立,当出现这类情況,直接连接通常亦建立为开放。建立帧交换包括安全密匙交换,比如直接连接的安全是唯一无2的——与网络整体安全域不同。无需輸入用户密码。

TDLS 性能可以由系统管理员关闭。比如,在企业环境中,系统管理员可能希望禁用直接连接,因此AP Beacon帧中可以建立“制止TDLS”。

首先是发现进程。1个STA装备通过其连接的网络发送发现要求到另外一个STA装备。如果目标装备也是TDLS兼容装备,它随后会向发起者直接发送1个回复,提供关于其支持率和信道等信息。这两个STA装备间的通讯还可以丈量接入点和TDLS的相对信号强度,并判断直接链接是不是有价值。

TDLS技术允许两个STA装备接入无线网络后,相互之间自动创建1个链接。从而实现两个装备间数据的直接传输。

TDLS利用场景

 

TDLS连接使两台STA装备直接跳过AP,从而不受AP的束缚,采取它们支持的最快速率标准(802.11b / g / n )进行数据传输。同1个BSS中的STA相互间数据的传输跳过AP直接传输。这个直接传输可以是在原来信道进行,也能够切换到新的信道上进行(如图1所示,base channel2.4G频段,而off channel5G频段),因此能够避免了由网络堵塞而引发的数据传输延迟。这对1些实时性要求比较高的业务,对保证用户的业务体验具有重要的意义。

TDLS用作与同1个AP关联的两个STA间进行Wi-Fi Display业务传输的连接模式,

 

源码分析:

 

 

 

5.2 管理帧
5.2.1 TDLS Action帧细节
若干Action帧结构被定义支持TDLS,Action值关联 每一个被定义在下表的帧结构。
表  2 TDLS Action帧
Action field value Meaning
0 TDLS Setup Request
1 TDLS Setup Response
2 TDLS Setup Confirm
3 TDLS Teardown
4 TDLS Peer Traffic Indication
5 TDLS Channel Switch Request
6 TDLS Channel Switch Response
7 TDLS Peer PSM Request
8 TDLS Peer PSM Response
9 TDLS Peer Traffic Response
10 TDLS Discovery Request
11⑵55 Reserved

1)  RSN information element

a) 3.2.2.2.1  Cipher suites
OUI Suite type Meaning
00-0F-AC 7 Group addressed traffic not allowed

b) 3.2.2.2.2   AKM suites
OUI Suite type Authentication type Key management type
00-0F-AC 7 TDLS TPK Handshake

2) 状态码( Status Code field)

Status code Meaning
2 TDLS wakeup schedule rejected but alternative schedule provided
3 TDLS wakeup schedule rejected
5 Security disabled
6 Unacceptable lifetime
7 Not in same BSS
72 Invalid contents of RSNIE

3) 缘由码( Reason Code field)
Reason code Meaning
25 TDLS direct-link teardown due to TDLS peer STA unreachable via the TDLS direct link
26 TDLS direct-link teardown for unspecified reason

5.2.2 TDLS Discovery Request帧格式
TDLS Discovery Request 帧结构主要包括信息在下表:
表  3 TDLS Discovery Request帧格式
Order Information Notes
1 Category Category建立成表示TDLS的值12
2 Action Action建立为10,表示TDLS Discovery Request
3 Dialog Token 
4 Link Identifier Link Identifier element
The TDLS Discovery Request帧被封装在1个数据帧中,并且被传送到a TDLS peer STA或通过AP传送到广播地址 , 去要求在相同BSS中具有TDLS的装备给出TDLS Discovery Response frame响应。

5.2.3 TDLS Discovery Response帧格式
TDLS Discovery Response帧结构主要包括信息在下表:
表  4 TDLS Discovery Response帧格式
Order Information Notes
1 Category Category建立表示TDLS的值12
2 Action Action建立为14,表示TDLS Discovery Response
3 Capability STA的能力
4 Supported rates STA支持的rates
5 Extended supported rates STA支持额外的rates
6 Supported Channels 支持的信道元素被包括,如果TDLS信道切换被建立为1
7 RSNIE 强健安全网络(RSN)IE可能被包括,如果安全被必须在直接连接上。
8 FTIE FTIE可能被包括,如果安全被必须在直接连接上。
9 Timeout Interval Timeout Interval可能被包括,如果安全被必须在直接连接上。
10 Link Identifier Link Identifier element被规定在Table 3⑵
The TDLS Discovery Response 帧被直接传送(IE不触及AP)至发送相应TDLS Discovery Request帧信息的 TDLS STA装备。

5.2.4 TDLS Setup Request帧格式
TDLS Setup Request 帧结构主要包括信息在下表:
表  5 TDLS Setup Request帧格式
Order Information Notes
1 Category Category表示TDLS的值12
2 Action Action建立为0,表示TDLS Setup Request
3 Capability STA的能力
4 Supported rates STA支持的rates
5 Extended supported rates STA支持额外的rates
6 Supported Channels 支持的信道元素被包括,如果TDLS信道切换被建立为1
7 RSNIE 强健安全网络(RSN)IE可能被包括,如果安全被必须在直接连接上。RSNIE
8 QoS Capability The QoS Capability element存在,如果dot11Qos选择生效是ture
9 FTIE FTIE可能被包括,如果安全被必须在直接连接上。
10 Timeout Interval Timeout Interval可能被包括,如果安全被必须在直接连接上。
11 Supported Regulatory
Classes The Supported Regulatory Classes element被定义,如果TDLS信道切换功能被建立为1
12 20/40 BSS Coexistence The 20/40 BSS Coexistence element可能出现在这个帧中
13 Link Identifier Link Identifier element
The TDLS Setup Request 帧被封装在1个数据帧中,并且被传送到STA(recipient),通过AP去要求开始1个TDLS直接链接。
5.2.5 TDLS Setup Response帧格式
TDLS Setup Response帧结构主要包括信息在下表:
表  6 TDLS Setup Response帧格式
Order Information Notes
1 Category Category建立TDLS的值12
2 Action Action值建立为1,表示TDLS Setup Response
3 Status Code 状态码
4 Capability STA的能力
5 Supported rates STA支持的rates
6 Extended supported rates STA支持额外的rates
7 Supported Channels 支持的信道元素被包括,如果TDLS信道切换被建立为1
8 RSNIE 强健安全网络(RSN)IE可能被包括,如果安全被必须在直接连接上。
9 QoS Capability The QoS Capability element存在,如果dot11Qos选择生效是ture
10 FTIE FTIE可能被包括,如果安全被必须在直接连接上。
11 Timeout Interval IE TPL Key生命周期可选被包括,如果安全被必须在直接连接上。
12 Supported Regulatory
Classes The Supported Regulatory Classes element被定义,如果TDLS信道切换功能位组被建立为1,包括状态码为0(成功)。
13 20/40 BSS Coexistence The 20/40 BSS Coexistence element可能出现在这个帧中
14 Link Identifier Link Identifier element
The TDLS Setup Response帧被封装在1个数据帧中,并且被传送到STA(initiator),通过AP去响应收到1个开始TDLS直接链接要求。
5.2.6 TDLS Setup Confirm帧格式
TDLS Setup Confirm帧结构主要包括信息在下表:
表  7 TDLS Setup Confirm帧格式

Order Information Notes
1 Category Category建立TDLS的值12
2 Action Action值建立为2,表示TDLS Setup Confirm.
3 Status Code 状态码
4 RSNIE 强健安全网络(RSN)IE可能被包括,如果安全被必须在直接连接上。
5 EDCA Parameter Set The EDCA参数集建立被包括,当QoS被支持在直接连接上。
6 FTIE FTIE可能被包括,如果安全被必须在直接连接上。
7 Timeout Interval IE TPL Key生命周期可选被包括,如果安全被必须在直接连接上。
8 Link Identifier Link Identifier element
The TDLS Setup Confirm帧被封装在1个数据帧中,并且被传送到STA(responder),通过AP去答复1个标准TDLS响应帧。
5.2.7 TDLS Teardown帧格式
TDLS Teardown帧结构主要包括信息在下表:
表  8 TDLS Teardown帧格式
Order Information Notes
1 Category Category建立表示TDLS的值12
2 Action Action建立为3,表示TDLS Teardown.
3 Reason Code The Reason Code的值
4 FTIE 可选被包括如果TPK握手是成功的为这个session
5 Link Identifier Link Identifier element
The TDLS Teardown frame被封装在1个数据帧中,并且被直接传送至the TDLS peer STA或通过AP去拆卸TDLS直接链路。

5.2.8 TDLS Peer Traffic Indication帧格式
TDLS Peer Traffic Indication帧结构主要包括信息在下表:
表  9 TDLS Peer Traffic Indication帧格式
Order Information Notes
1 Category Category建立表示TDLS的值12
2 Action Action建立为4,表示TDLS Peer Traffic Indication.
3 Dialog Token 
4 Link Identifier Link Identifier element
5 PTI Control Peer Traffic Indication控制
6 PU Buffer Status 装备省电缓存状态
The TDLS Peer Traffic Indication frame被封装在1个数据帧中,并且通过AP被传送至the TDLS peer STA。

5.2.9 TDLS Channel Switch Request帧格式
TDLS Channel Switch Request帧结构主要包括信息在下表:
表  10 TDLS Channel Switch Request帧格式
Order Information Notes
1 Category Category建立表示TDLS的值12
2 Action Action建立为5,表示TDLS Channel Switch Request.
3 Target Channel 1个8字节值指定目标信道的信道号
4 Regulatory Class 1个8字节值指定目标信道调剂的Class。
5 Secondary Channel Offset 辅助信道补偿仅仅在被唆使切换到40MHz直接链接时才被包括
6 Link Identifier Link Identifier element
7 Channel Switch Timing The Channel Switch Timing element
The TDLS Channel Switch Request frame被封装在1个数据帧中,并且被直接传送至 the TDLS peer STA ,TDLS直接链接要求切换到另外一个信道上。

5.2.10 TDLS Channel Switch Response帧格式
TDLS Channel Switch Response帧结构主要包括信息在下表:
表  11 TDLS Channel Switch Response帧格式
Order Information Notes
1 Category Category建立表示TDLS的值12
2 Action Action建立为6,表示TDLS Channel Switch Response.
3 Status Code 状态码
4 Regulatory Class 1个8字节值指定目标信道调剂的Class
5 Link Identifier Link Identifier element
6 Channel Switch Timing The Channel Switch Timing element
The TDLS Channel Switch Response frame 被封装在1个数据帧中,并且被直接传送至the TDLS peer STA 用以表示对收到TDLS切换信道要求帧作出反应。

5.2.11 TDLS Peer PSM Request帧格式
TDLS Peer PSM Request帧结构主要包括信息在下表:
表  12 TDLS Peer PSM Request帧格式
Order Information Notes
1 Category Category建立表示TDLS的值12
2 Action Action建立为7,表示TDLS Peer PSM Request.
3 Dialog Token 
4 Link Identifier Link Identifier element
5 Wakeup Schedule Wakeup Schedule
The TDLS Peer PSM Request frame被封装在1个数据帧中,并且被直接或通过AP传送至the TDLS peer
STA, 然后在TDLS直接链接中开始或改变周期的唤醒时间表。
5.2.12 TDLS Peer PSM Response帧格式
TDLS Peer PSM Response帧结构主要包括信息在下表:
表  13 TDLS Peer PSM Response帧格式
Order Information Notes
1 Category Category建立表示TDLS的值12
2 Action Action建立为8,表示TDLS Peer PSM Response.
3 Dialog Token 
4 Status Code 状态码
5 Link Identifier Link Identifier element
6 Wakeup Schedule Wakeup Schedule
The TDLS Peer PSM Response frame 被封装在1个数据帧中,并且被直接传送至the TDLS peer STA, 表示对收到TDLS Peer PSM 要求帧作出反应。

5.2.13 TDLS Peer Traffic Response帧格式
TDLS Peer Traffic Response帧结构主要包括信息在下表:
表  14 TDLS Peer Traffic Response帧格式
Order Information Notes
1 Category Category建立表示TDLS的值12
2 Action Action建立为9,表示TDLS Peer PSM Traffic Response.
3 Dialog Token The Dialog Token field被建立为与TDLS Peer Traffic Indication
Frame相1致的非零值。
4 Link Identifier Link Identifier element
The Peer Traffic Response frame被封装在1个数据帧中,并且被直接传送至 the TDLS peer STA

生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生