GPRS 仿真实现及其性能优化
description
Transcript of GPRS 仿真实现及其性能优化
GPRS 仿真实现及其性能优化
求钦龙
2009 年 4月 10 日
GPRS 仿真实现及其性能优化
内容提要
1. 相关背景 GPRS TCP
2. GPRS 模型3. 在 NS 2 上的实现4. 优化算法的原理及其测试结果:
Window Pacing Redundancy Elimination Fast TCP
5. 总结
GPRS 仿真实现及其性能优化
相关背景
GSM 和 GPRS 网络 3G 演变 GPRS 协议栈
GPRS 仿真实现及其性能优化相关背景( 1 ) — GSM 和 GPRS 网络
PCU
GGSN
SGSN
GPRS 仿真实现及其性能优化
相关背景( 2 ) — 3G 演变
世界移动通信的 72 %客户、 147 个国家和地区, 392 个运营商都不约而同地选用 GSM 网,并通过 GPRS 平滑过渡到 3G 。
GPRS 仿真实现及其性能优化
相关背景( 3 ) — GPRS 协议栈
IPnetwork
TCP/UDP
IP
SNDCP
LLC
RLC
MAC
GSM RF
TCP/UDP
IP
Server
RLC
MAC
GSM RF
BSSGP
Networkservice
L1bis
Relay
L1bis
Networkservice
BSSGP
LLC
SNDCPRelay
GTP
L1
L2
IP
UDP/TCP
GTP
UDP/TCP
IP
L2
L1
IP
Linklayer Y
Physicallayer Y
Linklayer Y
Physicallayer Y
Um Gb Gn Gi
GPRS
Application Application
Um和 Gb 接口是我们 GPRS 模型实现的重点
GPRS 仿真实现及其性能优化
GPRS 模型
SGSN GGSNBSS(One PCU)
Server
DL
UL
DL
UL
UL: CS2
DL: CS2
DL
UL
BW: 512kbps;link delay: 10ms
BW: 512kbps;link delay: 10ms
BW: 100Mbps;link delay: 5ms
BW: 100Mbps;link delay: 5ms
BW: 100Mbps;link delay: 5ms
BW: 100Mbps;link delay: 5ms
BTS 1
BTS 30
BTS 2
MS1
MS2
MS800
MS1
MS2
MS800
GPRS 仿真实现及其性能优化
在 NS 2 的实现
MSAgent
SGSNAgent GGSNAgent
BSSAgent
Gn_DL_Queue
Gb_UL_Queue
Gb_DL_Queue
Um_UL_Queue
Um_DL_Queue
Gi_UL_Queue
Gi_DL_Queue
Gn_UL_Queue
GGSNSGSNBSSMS Server
Agent
GGSNAgent
SGSNAgent
BSSAgent
MSAgent
GPRSAgent
GPRS 仿真实现及其性能优化
Um 接口
无线资源的分配 无线资源的调度 无线资源的释放
GPRS 仿真实现及其性能优化
Um 接口( 1 )—无线资源的分配
0 1 2 3 4 5 6 7TSCS
TerritoryGPRS
Territory
TBF
1
2
3
4
5
6
7
8
9
接入控制( Admission Control )
1. 不建立 TBF ,直接告诉系统创建失败
2. 不建立 TBF ,过一定时间后再次尝试,当到达一定次数,还没有成功建立 TBF ,告诉系统创建失败
3. 考虑 TBF 的优先级,删除优先级低的 TBF
GPRS 仿真实现及其性能优化
Um 接口( 2 )—无线资源的调度
TS L2
1
0
X
5
10
12
X+3
2
10
12
X+2
2
1
12
X+1
class 4 sss=12
class 1~3 sss=9
class 0 sss=3 sss: schedule step size (越小优先级越高)
X: 表示某一个时刻
X+1 :表示下一个时刻
0, 1, 2 等数字表示虚拟时间的值
Weighted Round Robin (WRR)
GPRS 仿真实现及其性能优化
Um 接口( 3 )—无线资源的释放
若某数据流的最后一个数据块已被送出并得到确认,或者计时器到达计时限制(由于下行采用了 Delayed TBF 模型,所以要等待 1 秒才释放 TBF 资源;上行用的是 Standard TBF模型,所以立即释放 TBF 资源),则其使用的无线资源将被释放并重新分配。当需要收发新的数据块时, GPRS 通话仍然开放并可重新建立。与目前的电路交换服务相比,重新接入的延迟很短,因而提高了网络资源的利用效率。
GPRS 仿真实现及其性能优化
Gb 接口
EREDEREDEREDERED
Delay Class
0
Del ay Cl ass
2
Del ay Cl ass
1
Del ay Cl ass
3
Del ay Cl ass
4
WFQ
Flow control
Flow control
Flow control
Flow control
Flow control
LLC Life Time
信令,短消息等高优先级业务,
不需要 RED 算法优先级最低的 FT
P 背景业务
交互式的 HTTP 业务
WFQ : Weighted Fair Queue体现各类业务的
不同权重
GPRS 仿真实现及其性能优化
Gb 接口( 1 ) — ERED
随机提前检测方法克服了队尾丢弃方法的大部分缺点,因而该方法要有效的多,但也要复杂一些。其基本思想是采用指数加权滑动平均的方法计算队列平均长度(这个平均是指对时间的平均,采用该方法的路由器在每个接口上只维持一个队列),每接收到一个分组就重新计算队列的平均长度。
最大阈值
最小阈值
GPRS 仿真实现及其性能优化
Gb 接口( 2 ) — 流控
MS Flow Control
BVC Flow Control
MS Flow Control
MS Flow Control
BVC Flow Control
MS Flow Control
Gb Flow Control
Regulated
Flow
Bursty Traffic
Leak Buffer
PCU 向 SGSN 汇报指定流的实际传送速率( R )和缓冲的大小( B ); SGSN 相应地调整它自身的关于那个流的传送速率。
这个算法的主要目的是防止 PCU ( Packet Control Unit )的缓冲溢出。
GPRS 仿真实现及其性能优化
Gb 接口( 3 ) — WFQ
业务类 权值 相应的 SSS值
0 900 5
1 50 15
2 30 30
3 15 50
4 5 900
GPRS 仿真实现及其性能优化
Gb 接口( 4 ) — LLC lifetime
由于有可能在 SGSN 缓存太多的包,其中有一些包已经没有意义再传送到 BSS 了(比如上层认为这些包已经超时,必须丢弃,那么我们就可以在 LLC层提前丢弃),丢弃这些包有利于提高系统的吞吐量,减少平均时延,这就是 LLC Lifetime 。
业务类 LLC Lifetime (单位:秒)
0 10
1 40
2 40
3 40
4 40
GPRS 仿真实现及其性能优化
优化算法的原理及其测试结果
Window Pacing Redundancy Elimination Fast TCP
GPRS 仿真实现及其性能优化
Window Pacing 原理
SGSN TCP发送端
发送大量数据到SGSN
TCP接收端
由于带宽的限制,数据暂存在SGSN
SGSN的缓冲达到一定的阈值
TCP接受端发送ACK包
减小ACK包中的通知窗口的值
迫使TCP发送端降低发送速率
发送少量数据到SGSN
这时,直接发送ACK包
SGSN的缓冲低于一定的阈值TCP接受端发送ACK包
WP控制机制
数据流
GPRS 仿真实现及其性能优化
Window Pacing 测试结果
正常情况
业务类号 仿真时间 收到的包数 收到的字节数 平均时延 丢包数 丢包率
0 2000 22199 887960 0.29514 300 1.33
1 2000 21111 28432726 2.640454 323 1.45
2 2000 20322 25915585 9.859079 718 2.76
3 2000 16267 19734178 17.93893 2300 8.89
4 2000 12437 17897760 36.3857 1534 7.8
总共 92868209
Window Pacing
业务类号 仿真时间 收到的包数 收到的字节数 平均时延 丢包数 丢包率
0 2000 22253 890120 0.267811 247 1.1
1 2000 21004 28417303 1.021358 197 0.9
2 2000 20190 25901810 8.02898 710 2.77
3 2000 17217 21133427 16.50196 2171 8.02
4 2000 12491 18048840 33.13686 1190 6.2
总共 94391500 1.64%
GPRS 仿真实现及其性能优化
Redundancy Elimination 原理
SGSNSGSNServer
data (seq=x)
cell reselection causes long buffer time
data (seq=x)
drop duplicate packets in Gb interface (seq=x)
ack (ack=x+1)
resend data because RTO expires (seq=x)
resend data because RTO expires (seq=x)
drop this duplicate packets in SGSN (seq=x)
BSS
GPRS 仿真实现及其性能优化
Redundancy Elimination 测试结果 (1)
0
5000000
10000000
15000000
20000000
25000000
30000000
35000000
0 1 2 3 4
receiv
ed
byte
s
normal
RE
吞吐量比较图
GPRS 仿真实现及其性能优化Redundancy Elimination 测试结果(2)
0
2
4
6
8
10
12
14
16
18
0 1 2 3 4
avera
ge d
ela
y
normal
RE
平均时延比较图
GPRS 仿真实现及其性能优化Redundancy Elimination 测试结果(3)
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
0 1 2 3 4
lost
per
cent normal
RE
丢包率比较图
GPRS 仿真实现及其性能优化
Fast TCP 原理
Server SGSN
GGSN
send a few data to MS
ACK is sent to server directly
send too m uch data to MS, SGSNdetects the network will be congested
ACK is buffered in GGSN
ACK is sent aftersom e tim e
server is forced to slowdown its output rate, so thenetwork will be not congested
ACK is sent to server directly
GPRS 仿真实现及其性能优化
Fast TCP 测试结果
测试场景 业务类号 收到的包数 收到的字节数 平均时延 丢包数 丢包率
正常情况
0 22235 889400 0.273824 264 1.17
1 21114 28447738 2.059985 302 1.36
2 20211 25904430 8.971548 888 3.45
3 17178 21154653 16.96371 2369 8.93
4 12365 17785380 25.77529 1515 7.73
总共 94181601
延迟 0.1秒
0 22203 888120 0.284999 297 1.32
1 21219 28567732 2.038649 268 1.2
2 20094 25633898 8.880649 878 3.37
3 17170 21113650 16.95416 2275 8.61
4 12707 18304220 26.43441 1496 7.68
总共 94507620
提高 0.35%
GPRS 仿真实现及其性能优化
测试总结
经过大量的测试表明:Window Pacing 和 Fast TCP 优化算法
性能不太理想; Redundancy Elimination 优化算法在较少业务量时能基本保持性能不下降;在较多业务量时能有较大的提高,在理想的情况下能提高 30% 以上的性能。
注意:对性能的评价主要是吞吐量,其次是平均时延和丢包率。
GPRS 仿真实现及其性能优化
总结
1) 分析了 GPRS 在国内、国际的发展情况以及在 3G 演变中所处的重要位置,论述了对 GPRS进行优化的重要意义。
2) 在 NS 2中实现了 GPRS 模块,这个模块不仅可以供我们的优化算法进行测试,也可以供其他优化算法测试。
3) 仿真实现 TCP 的三个优化算法: Window Pacing 、Redundancy Elimination 和 Fast TCP 。
4) 对这三个算法在各种场景下进行测试,总结各个参数对网络性能的影响。
5) 总结仿真结果。
GPRS 仿真实现及其性能优化
有关论文1) Qinlong Qiu, Dongmei Zhang, Jian Ma, “GPRS network model in NS 2”, in
proceedings of IEEE The Joint Conference of 10th Asia-Pacific Conference on Communications and 5th International Symposium on Multi-Dimensional Mobile Communications, Aug. 29 – Sep.1, 2004, Tsinghua University, Beijing, China, pp.700~704.
2) Qinlong Qiu, Dongmei Zhang, Jian Ma, “Window Pacing In General Packet Radio Service Network”, in proceedings of IEEE The 16th International Conference on Computer Communication, Sep.15-17, 2004, New Century Hotel, Beijing, China, pp. 348~353.
3) Qinlong Qiu, Dongmei Zhang, Jian Ma, Dajiang Zhang, “Redundancy Elimination in GPRS network”, Journal of Zhejiang University Science A, Oct. 17, 2005, pp. 477~482
4) Dajiang Zhang, Dongmei Zhang, Qinlong Qiu, “Using ACK RTO timer to improve TCP performance in wireless network, WMSCI 2005, July 10-13, 2005, Orlando, Florida, USA.
谢谢大家 !