P2P组内通信与节电模式

DHCP

GO的本质是一个SAP作为DHCP server为各个GC分配ip地址。GO和GC之间也会保持类似station和AP之间的模式进行网络层交互,进行ip租赁,重租赁,超时等。

Data Exchange

 

当一个组内有超过两个GC时,GC1与GC2通信一般通过GO作为中间角色分发数据,这一分发采用A-mpdu转发机制,而不是iptables的路由策略,这样在wifi芯片内部就可完成数据分派而不是走到host芯片一侧,进而提升效率。

GO需要再p2p group cap振内enable intra bss位确认自己是支持2层分派机制的,具体字段解释如下:

 

此外,两个GC之间可以直接通讯,但是这一方式并不被推荐。

Power Save

P2P在802.11协议的qos策略之前定制了自己额外的电源管理方案,采用随机节电方式。

Notice of Absence 

这一字段有两个作用,节电通告和静默通告.其中静默通告往往用于GO设备同时存在两条连接,需要离开p2p当前的信道处理另一条连接的事情。

 

CTwindow:告知client还有多少单位时间可以发送数据给owner

Opportunistic Power Save :当为1时,CTwindow才会生效

 

Duration:表示owner要静默多久

Interval:表示静默间隔

Count:表示当前是剩余到少次静默,255为持续静默

StartTime: go静默的开始时间,根据最近的TSF timer生成,每2的31次方us更新一次

下图说明了GO脱离当前信道的方式

 

Action frame P2P Presence Request可以作为GC改变GO的节电控制周期的额外方法,但是GO会根据action frame的配置和自身情况决定如何处理这一请求。

  1. 回复response,带有status 1, 以及notice of absence作为新的节电周期。
  2. 回复respone,当Go没有notice of absence,就不带有此字段
  3. 回复respones,带有Unable to accommodate request表示不想处理此请求
  4. 断开GC,再下个唤醒间隔内重连此GC

 

P2p节电表现从高到低分别是:

  1. non-periodic Notice of Absence count=1时,一直处于节电状态
  2. 整个TBTT期间都在线
  3. 仅CTwindow期间在线
  4. Count>1时,离线一段时间

GO在进入doze状态下不可以发送任何一个frame;不可以再TBTT中即将进入doze模式前,发起无法在剩余Ctwindow时间内完成的帧交换;p2p client发送ps-poll给如果即将进入absence状态的GO,那么GO将顺延此请求到下一个唤醒窗口而不是立刻回复。

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值