51学通信技术论坛

 找回密码
 立即注册
搜索
查看: 5027|回复: 2
打印 上一主题 下一主题

GB接口的流量控制 [复制链接]

Rank: 9Rank: 9

懒

跳转到指定楼层
楼主
发表于 2011-3-6 12:56:19 |只看该作者 |倒序浏览
一键分享 一键分享
本帖最后由 爱卫生 于 2011-3-6 13:21 编辑

1.概述

  GB接口:是BSS(PCU)与SGSN之间通信的接口。负责移动终端分组数据经BSS到SGSN的传输,同时也支持SGSN和PCU之间的信令,可以透明传输从移动终端到SGSN的信令。GB接口底层采用帧中继协议,允许多个用户才用帧中继方式复用同一条物理链路,有效带宽资源只有在用户实际进行数据传输时才临时分配给用户,数据传送结束后分配出去的带宽立即被收回。

  BSSGP(Base Station System GPRS Protocol)用于在BSS和SGSN之间传送信令以及用户数据信息,其主要功能是在BSS和SGSN之间传送和路由选择以及服务质量(QoS)有关的信息,BSSGP协议与BSS和SGSN之间是一一对应的关系,也就是说如果一个SGSN要管理多个BSS,那么SGSN中对应每一个BSS都有一个相应的BSSGP设备。

1 Gb接口信令层结构

  在BSSGP层面上,流量控制的机制基于以下几个模式上:

-在一个BSS里,每一个BVC都会被分配一个下行的缓冲区;

-由SGSN发送到MS的BSSGP UNITDATA PDU是由BSS控制;

-只有传送下行的BSSGP UNITDATA PDU的时候在BSS侧有一个流量控制的过程,而不提供上行的流量控制。


2. 流量控制的运行模式

  流量控制管理的是在Gb接口上由SGSN到BSS的BSSGP UNITDATA PDU的传送。

  BSS指示SGSN每个BVC所分配到的最大数据吞吐量,由此来控制SGSN传送到BVC缓冲区的BSSGP UNITDATA PDU数据流。同时,BSS指示SGSN对应一个TLLI的最大数据吞吐量,由此来控制传送到BVC缓冲区的BSSGP UNITDATA PDU数据流,这个数据流是对应于某个MS。

  BSS以流量控制来调整BVC缓冲区的BSSGP UNITDATA PDU数据流。优化在BSS中缓存的BSSGP UNITDATA PDU的总量,从而使无线资源得到高效的利用。在BSS缓冲区里排队的BSSGP UNITDATA PDU,一旦这个PDU的lifetime结束后还没有在无线接口上传送出去,那这个PDU数据在BSS里被删除,当PDU被删除以后,BSS将通过LLC-DISCARDED PDU通知SGSN。

  当SGSN接收到一个FLOW-CONTROL PDU后,它将在Gb接口上发送一个确认消息给BSS。这个确认消息包含一个与BSS发送的FLOW-CONTROL PDU中所包含的相同的标签。在BSS没有收到FLOW-CONTROL PDU的消息的情况下,重复发送FLOW-CONTROL PDU的次数应当由BSS掌控。


3.SGSN到BSS的流量控制

3.1 SGSN侧下行吞吐量控制
  BSSGP层流量控制的规则:BSS需要发送流量控制的参数到SGSN,这个参数的作用是SGSN能够控制从SGSN至BSS的传输量。SGSN的流量控制有两方面:针对MS的流量控制和针对BVC的流量控制,SGSN对每个LLC-PDU先进行针对MS流量控制,如果MS流量控制得到了执行,而后再针对BVC流量控制,如果两次流量控制都被执行,LLC-PDU就能成功传送到BSS。具体过程见图3.1。

图3.1 流量控制示意图

  从BSS发送到SGSN的流量控制的参数分为以下两个方面:

-分配给MS或BVC的缓冲容量(Bmax)

-分配给MS或BVC的缓冲速率(R)

  当SGSN收到一个FLOW-CONTROL-MS的消息,可以得到Bmax和R值,然后SGSN可以针对单个MS来流量控制,时间为Th秒。当记数器Th超时或MS占用了另一个服务小区,SGSN重新初始化针对每个MS的流量控制的参数,并开始使用SGSN自己产生的Bmax和R的数值。

  BSSGP层流量控制模式算法见图3.2。

3.2BSSGP流量控制算法

3.2 流量控制的算法

  由SGSN来实行流量控制的算法,这样SGSN不会发送给BSS比缓冲区剩余容量大的数据。

图3.2中的各种变量:

-Bmax Bucket Size:最大缓冲容量,是在BSS中设置的一个参数,可以作用于每个小区或MS。Bmax必须大于前一个LLC-PDU的容量(bit)

-R:缓冲流速

-B:缓冲区容量

-B  *:预知的缓冲区容量

-L(p):LLC-PDU的比特长度

-Tp:前一个LLC-PDU传送出去的时刻

-Tc:LLC-PDU到达的时刻

  SGSN中部分变量的初始值:

-Bmax=0,对于BVC的流量控制,一旦SGSN收到了一个FLOW-CONTROL-BVC后Bmax会改变;对于MS的流量控制,SGSN收到FLOW-CONTROL-BVC里的Bmax-dafault-MS参数后Bmax会改变。

-R=0,对于BVC的流量控制,当SGSN收到了一个FLOW-CONTROL-BVC后R会改变;对于MS的流量控制,SGSN收到FLOW-CONTROL-BVC里的Bmax-dafault-MS参数后R值会改变。

-B=0,SGSN只有收到了BSS发来的FLOW-CONTROL-BVC消息后才会发送一个BVC上的LLC-PDU。

在SGSN中,当一个LLC-DPU在Tc时刻到达,预知缓冲区容量B*将会被计算出来并发送给BSS。B*=B+L(p)-R*(Tc-Tp),也就是当前缓冲区容量B(也就是前一个LLC-PDU的长度)加上当前LLC-PDU再减去前后两个PDU间隔时间中缓冲区的流量。当B*<L(p)时,说明B-R*(Tc-Tp)是负值,这就意味着在当前LLC-PDU到达BSS时,BSS的缓冲区是空的,那么只要将B=L(p)后就能完成BSS对LLC-PDU的缓冲,LLC-PDU也就能顺利通过BSS而不会被延迟,同时SGSN会将当前LLC-PDU的Tc作为下一个LLC-PDU的Tp,即Tp=Tc;

如果B*>L(p)时,说明B-R*(Tc-Tp)是正值,也就表示当前的LLC-PDU到达BSS时,BSS的缓冲区还有一部分前一个LLC-PDU数据没有传送出去,根据算法将会判断B*是否大于Bmax,如果大于,将会延迟发送这个LLC-PDU,因为BSS无法提供足够大的缓冲空间给这个LLC-PDU;如果小于Bmax的话,就使B=B*,也就是当前LLC-PDU的长度加上前一个LLC-PDU在缓冲区内还没有发送出去的长度,这样的话就保证了当前LLC-PDU能够顺利的进入缓冲区并不延迟的通过BSS,同时SGSN会将当前LLC-PDU的Tc作为下一个LLC-PDU的Tp,即Tp=Tc。

由于Bmax和R两个参数直接影响了LLC-PDU在Gb接口上传送的速率和容量,是流量控制和Qos的重要参数。其余变量B*,B,Tc,Tp由SGSN自己计算产生。

   在SGSN收到了BSS发来的流量控制的请求后,在100ms内作出相应的下行传输变动。

3.3 流量控制中碰到的几种情况

  当SGSN收到了FLUSH-LL-ACK PDU消息后,将使B=max(B-N,0),N值在FLUSH-LL-ACK PDU中提供给SGSN,表示在无线部分中无法传送的字符长度,而B-N部分的数据将仍旧由当前BVC上传送。同时在新产生的BVC流量控制上,SGSN使B=min(B+N,Bmax),在新的BVC上会将先前无法传送的那部分数据重新发送。

  当SGSN收到了LLC-DISCARDED PDU消息后,使B=max(B-N,0),N值在LLC-DISCARDED PDU消息提供给SGSN,表示LLC-PDU在无线部分将会被丢弃的数据长度,所以SGSN只需传送B-N的数据给BSS。

  BSS会随时通过FLOW-CONTROL PDU(分为FLOW-CONTROL-BVC和FLOW-CONTROL-MS)消息提供给SGSN新Bmax和R,SGSN依此进行更新。

3.4 FLOW CONTROL MS和FLOW CONTROL BVC发送频率

  FLOW CONTROL MS和FLOW CONTROL BVC发送频率遵守以下规则:BSS每隔C秒发给SGSN一个FLOW CONTROL PDU,C值必需在BSS和SGSN中都有设定。

  当BSS发现SGSN漏发FLOW CONTROL ACK消息,并且在BSS侧发送一个FLOW CONTROL PDU的条件还能满足,BSS会立即重发一个FLOW CONTROL PDU给SGSN。只有在这种情况下,BSS才不会遵守“每隔C秒发一次FLOW CONTROL PDU”的规则。

3.5 FLOW CONTROL PDU

  基于流量控制规则,一个BSS发送到SGSN的FLOW-CONTROL PDU必需包含以下信息元:

a.BVC流量控制

-BVC流量控制的Bmax

-R

-Bmax-dafault-MS

-R-dafault-MS

b.MS流量控制

-TLLI

-MS流量控制的Bmax

-R

3.6 初始FLOW CONTROL BVC后的MS Bmax值

  SGSN收到了初始的FLOW CONTROL BVC,会根据以下等式产生一个初始的MS的Bmax。

Bmax(bit)=min(R_default_MS*1sec,72000,1秒内MS的最大的吞吐量,(1秒内MS的最大的吞吐量+当前1秒内小区内其他MS的吞吐量)/小区内的MS数)

在SGSN收到FLOW-CONTROL-MS消息前,SGSN使用的Bmax不会大于Bmax_default_MS,R不会大于R_default_MS,直到SGSN从FLOW-CONTROL-MS消息里得到新的Bmax和R。

附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册
www.gprshome.com: GPRS及移动通信技术学习交流分享平台。

Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6

沙发
发表于 2011-12-31 16:09:25 |只看该作者
爱总,你好!
请问一下在正常情况下bssgp的下行流量与Gb口带宽的大小关系是怎样的?如果bssgp的下行流量>Gb口带宽(所给的实际物理时隙组fraction),是否涉及到流控的问题?如果不是的话那可能是涉及哪方面的问题?还有bssgp的下行流量一般是在SGSN侧统计计算获得的吗?

使用道具 举报

Rank: 2Rank: 2

板凳
发表于 2012-6-15 23:18:20 |只看该作者
爱总你好,关于爱立信设备,从flow control消息里面怎么计算分配PDCH数目,这个有人做过研究嘛?

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

站长邮箱|Archiver|51学通信 ( 粤ICP备11025688 )

GMT+8, 2024-5-9 05:54 , Processed in 0.044297 second(s), 13 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部