群晖 NAS 磁盘读写速度的一些测试 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要把任何和邀请码有关的内容发到 NAS 节点。

邀请码相关的内容请使用 /go/in 节点。

如果没有发送到 /go/in,那么会被移动到 /go/pointless 同时账号会被降权。如果持续触发这样的移动,会导致账号被禁用。
Sylv
V2EX    NAS

群晖 NAS 磁盘读写速度的一些测试

  •  
  •   Sylv 2018-10-05 07:44:58 +08:00 43465 次点击
    这是一个创建于 2641 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前提

    近期我更换了我的群晖 NAS 里的硬盘,在选择存储空间的文件系统时不知该选 ext4 还是 Btrfs,我主要考量的是磁盘的读写性能,于是就写了个脚本测试了下我的群晖 NAS 在两种文件系统下的磁盘读写速度,顺便也测试了下其在不同 RAID 类型下的磁盘读写速度。

    目录

    • 说明
    • 一些结论
      • TL;DR
      • 细节对比
    • 测试硬件
      • 群晖 NAS
      • 硬盘
    • 测试使用的脚本
    • 测试脚本使用的命令
      • hdparm 读取测试
      • dd 读写测试
        • dd 读取测试
        • dd 写入测试
      • fio 读写测试
    • 测试结果
      • ext4 和 Btrfs 文件系统的对比
        • BASIC 单盘
        • JBOD 四盘
        • RAID0 四盘
        • RAID1 四盘
        • RAID10 四盘
        • RAID5 四盘
        • SHR 四盘(相当于 RAID5 )
        • RAID6 四盘
        • SHR2 四盘(相当于 RAID6 )
      • ext4 在不同 RAID 类型下的对比
    • 原始数据

    说明

    • 测试使用的命令和参数是从网上搜刮来的,可能并不完善。
    • 测试并未严格控制变量,也未多次重复测试取平均值,结果可能存在误差,仅供参考。
    • 本文使用的数据单位采用 SI 和 IEC 标准
      • 1000 进制的 SI 标准单位:kB (1000 字节), MB (1000^2 字节), GB (1000^3 字节) ...
      • 1024 进制的 IEC 标准单位:KiB (1024 字节), MiB (1024^2 字节), GiB (1024^3 字节) ...
    • 测试了 ext4 和三种选项下 Btrfs 的磁盘读写速度:
      • ext4
      • Btrfs
      • Btrfs + 校验:启用了 文件自我修复功能(启用数据总和检查码以实现高级数据完整性)
      • Btrfs + 校验 + 压缩:启用了 文件自我修复功能 + 文件压缩功能

    一些结论

    TL;DR

    • 我最后还是选用了 ext4。
    • 大部分情况下,当读写块较大时,Btrfs 的读写速度和 ext4 相差不大;但当读写块较小时,Btrfs 的速度明显劣于 ext4。
    • 一些情况下,文件自我修复功能(数据总和检查码)对 Btrfs 的读写速度有影响。
    • 文件压缩功能对 Btrfs 的实际读写速度无可见影响。
    • RAID0 性能最佳,但提升不及预期,四盘 RAID0 性能大部分情况下达不到单盘的两倍。
    • JBOD 大部分情况下性能与单盘一致,在少数小块写入测试中写入速度有明显提升。
    • RAID1 在部分测试下性能略低于单盘,未见理论上的读取速度提升。
    • 部分情况下,RAID10 / RAID5 / SHR / RAID6 / SHR2 的性能相比单盘有提升。
    • 大部分情况下,群晖自己的 SHR / SHR2 (Synology Hybrid RAID) 与普通的 RAID5 / RAID6 相比差别不大。

    细节对比

    • [ext4] vs [Btrfs] vs [Btrfs + 校验] vs [Btrfs + 校验 + 压缩]:

      • hdparm 读取测试:
        • 四者无显著差别。
      • dd 读取测试:
        • 四者差别似乎不是非常明显,在不同 RAID 类型下有些许波动。
      • dd 写入测试:
        • 当测试使用大读写块( 1 GiB、128 MiB )时,ext4 和 Btrfs 的写入速度无显著差别,有时 Btrfs 还会略高于 ext4。
        • 当测试使用的读写块大小从 1 MiB 逐步降低时,Btrfs 的写入速度开始显著低于 ext4。最严重的情况下( RAID5 / RAID6 + 512 字节块大小),Btrfs 的写入速度只是 ext4 的九分之一( 20 kB/s vs 180 kB/s )。
        • 大部分情况下,文件自我修复功能对 Btrfs 的写入速度无影响。
        • Btrfs 开启文件压缩功能后,因为 dd 写入测试写入的数据都是 0,所以会导致测试出的写入速度虚高。
      • fio 连续读取测试:
        • 大部分情况下,Btrfs 略低于 ext4。
        • 开启文件自我修复功能后,Btrfs 的读取速度会更低些。
      • fio 连续写入测试:
        • 大部分情况下,未开启文件自我修复功能的 Btrfs 略慢于 ext4。
        • 在 RAID5 / SHR / RAID6 / SHR2 下,文件自我修复功能对 Btrfs 的写入速度基本无影响。
        • 在其它 RAID 类型下,开启文件自我修复功能后,Btrfs 的写入速度明显下降,大概只有 ext4 的一半。
      • fio 随机读取测试:
        • 1 MiB 块大小时,四者差别不大。
        • 4 KiB 块大小时:
          • BASIC / JBOD / RAID1:四者差别不大。
          • RAID0 / RAID10 / RAID5 / SHR / RAID 5 / SHR2:开启文件自我修复功能后,Btrfs 的随机读取速度大幅度下降,可下降到 ext4 的十分之一( SHR2 )。
      • fio 随机写入测试:
        • 1 MiB 块大小时:
          • BASIC / JBOD / RAID1 / RAID5 / SHR / SHR2:四者差别不大。
          • RAID0:特例,无校验 Btrfs 的随机写入速度是 ext4 的 140%,但在开启校验后速度下降到一半。
          • RAID10:ext4 > Btrfs >> Btrfs + 校验 ≈ Btrfs + 校验 + 压缩
          • RAID6:ext4 的随机写入速度是其它三者的两倍。
        • 4 KiB 块大小时:
          • 出于某种原因,开启了校验的 Btrfs 的随机写入速度反而是 ext4 的两倍以上。
    • ext4 在不同 RAID 类型下的对比:

      • 大读写块连续读取测试:
        • JBOD 和 RAID1 基本和 BASIC 单盘的读取速度一致。
        • RAID0 确实对读取速度有明显提升,但可能受制于我的群晖的机能,提升远不及理论值,四盘 RAID0 的速度只是单盘的 1.5 倍到 2 倍。
        • RAID10 / RAID5 / SHR / RAID6 / SHR2 相比单盘速度有部分提升,有的速度与 RAID0 相近。
      • 小读写块连续读取测试:
        • 所有 RAID 类型的速度无明显差别。
      • dd 写入测试:
        • RAID0 写入速度最好,块越小越明显,512 字节块大小时,其写入速度是单盘的 10 倍。
        • JBOD 在块小时的写入速度也有明显提升。
        • 其余 RAID 类型的写入速度相近,约为单盘速度。
      • fio 连续写入测试:
        • 1 MiB 块大小时:
          • RAID0 >> BASIC / JBOD / RAID10 > RAID1 / RAID5 / SHR / RAID6 / SHR2
        • 4 KiB 块大小时:
          • BASIC / JBOD > RAID0 / RAID1 / RAID10 >> RAID5 / SHR / RAID6 / SHR2
          • RAID5 / SHR / RAID6 / SHR2 只是单盘速度的近七分之一。
      • fio 随机读取测试:
        • 1 MiB 块大小时:
          • RAID0 略快一些。
          • 其它 RAID 类型速度相近。
        • 4 KiB 块大小时:
          • BASIC / JBOD / RAID1 速度相近。
          • 其它 RAID 类型速度提升明显,是单盘的 10 倍左右。
      • fio 随机写入测试:
        • 1 MiB 块大小时:
          • RAID0 提升明显,是单盘速度的 2.5 倍。
          • RAID10 是单盘的 2 倍。
          • 其它 RAID 类型差别不大。
        • 4 KiB 块大小时:
          • RAID0 相对于单盘略有提升。
          • RAID5 / SHR / RAID6 / SHR2 速度明显下降,是单盘速度的 35% 左右。

    测试硬件

    群晖 NAS

    我的群晖 NAS 是 2013 年款的 DS1513+,五盘位,CPU 是 Intel Atom D2700 Dual Core 2.13 GHz,内存扩充到了 4 GiB,群晖系统版本是 DSM 6.2。

    硬盘

    测试使用的硬盘是四个 HGST 昱科的 Deskstar NAS 充氦硬盘(HGST Deskstar NAS 3.5" 10TB 7200 RPM 256MB Cache),型号是 HDN721010ALE604,容量是 10 TB,转速是 7200 RPM,缓存是 256 MiB,网上这款硬盘的评测

    测试使用的脚本

    synology_disk_benchmark.sh

    使用方法:

    1. 保存 synology_disk_benchmark.shxfio.conf 到 NAS 上。
    2. 授予脚本执行权限:
    chmod +x synology_disk_benchmark.sh 
    1. 运行测试:
    sudo ./synology_disk_benchmark.sh 测试名 
    1. 测试根据机能和磁盘速度的不同可能会花费数十分钟。
    2. 测试结束后会生成一个结果报告文件:测试名.md

    测试脚本使用的命令

    hdparm 读取测试

    sudo hdparm -Tt $device 

    dd 读写测试

    dd 读取测试

    # 生成一个 1 GiB 大小的随机数据测试文件 head -c 1G </dev/urandom >test # 清除缓存 sync; echo 3 | sudo tee /proc/sys/vm/drop_caches > /dev/null # 从 test 文件读取,每次读取 1 MiB 数据,读取 1024 次,共读取 1 GiB 数据 dd if=test of=/dev/null bs=1M count=1024 

    dd 写入测试

    # 写入 0 到 test 文件,每次写入 x 数据,写入 y 次,共写入 x*y 数据( dsync 不缓存) dd if=/dev/zero of=test bs=$x count=$y oflag=dsync 

    分别测试了 bs 读写块大小为 1 GiB、128 MiB、1 MiB、128 KiB、4 KiB、512 bytes 时的写入速度。

    fio 读写测试

    fio xfio.conf 

    fio 测试使用的配置文件:xfio.conf

    进行了以下测试:

    • 连续读取和写入,1 MiB 块大小
    • 连续读取和写入,4 KiB 块大小
    • 随机读取和写入,1 MiB 块大小
    • 随机读取和写入,4 KiB 块大小

    注:群晖内置了 fio 命令。

    测试结果

    ext4 和 Btrfs 文件系统的对比

    BASIC 单盘

    basic_b

    basic_c

    basic_d

    basic_e

    basic_f

    basic_g

    basic_h

    basic_i

    basic_j

    basic_k

    basic_l

    basic_m

    basic_n

    basic_o

    basic_p

    basic_q

    JBOD 四盘

    jbod_b

    jbod_c

    jbod_d

    jbod_e

    jbod_f

    jbod_g

    jbod_h

    jbod_i

    jbod_j

    jbod_k

    jbod_l

    jbod_m

    jbod_n

    jbod_o

    jbod_p

    jbod_q

    RAID0 四盘

    raid0_b

    raid0_c

    raid0_d

    raid0_e

    raid0_f

    raid0_g

    raid0_h

    raid0_i

    raid0_j

    raid0_k

    raid0_l

    raid0_m

    raid0_n

    raid0_o

    raid0_p

    raid0_q

    RAID1 四盘

    raid1_b

    raid1_c

    raid1_d

    raid1_e

    raid1_f

    raid1_g

    raid1_h

    raid1_i

    raid1_j

    raid1_k

    raid1_l

    raid1_m

    raid1_n

    raid1_o

    raid1_p

    raid1_q

    RAID10 四盘

    raid10_b

    raid10_c

    raid10_d

    raid10_e

    raid10_f

    raid10_g

    raid10_h

    raid10_i

    raid10_j

    raid10_k

    raid10_l

    raid10_m

    raid10_n

    raid10_o

    raid10_p

    raid10_q

    RAID5 四盘

    raid5_b

    raid5_c

    raid5_d

    raid5_e

    raid5_f

    raid5_g

    raid5_h

    raid5_i

    raid5_j

    raid5_k

    raid5_l

    raid5_m

    raid5_n

    raid5_o

    raid5_p

    raid5_q

    SHR 四盘(相当于 RAID5 )

    shr_b

    shr_c

    shr_d

    shr_e

    shr_f

    shr_g

    shr_h

    shr_i

    shr_j

    shr_k

    shr_l

    shr_m

    shr_n

    shr_o

    shr_p

    shr_q

    RAID6 四盘

    raid6_b

    raid6_c

    raid6_d

    raid6_e

    raid6_f

    raid6_g

    raid6_h

    raid6_i

    raid6_j

    raid6_k

    raid6_l

    raid6_m

    raid6_n

    raid6_o

    raid6_p

    raid6_q

    SHR2 四盘(相当于 RAID6 )

    shr2_b

    shr2_c

    shr2_d

    shr2_e

    shr2_f

    shr2_g

    shr2_h

    shr2_i

    shr2_j

    shr2_k

    shr2_l

    shr2_m

    shr2_n

    shr2_o

    shr2_p

    shr2_q

    ext4 在不同 RAID 类型下的对比

    ext4__b

    ext4__c

    ext4__d

    ext4__e

    ext4__f

    ext4__g

    ext4__h

    ext4__i

    ext4__j

    ext4__k

    ext4__l

    ext4__m

    ext4__n

    ext4__o

    ext4__p

    ext4__q

    原始数据

    原始测试结果数据

    第 1 条附言    2019-10-21 05:07:40 +08:00
    图片因为微博图床的外链限制显示不出来了,可右键图片在新标签页打开查看。
    第 2 条附言    2021-04-01 05:21:16 +08:00
    图片都失效了,有需要的朋友可以下载离线版本查看:
    https://cl.ly/Jru4vR9x
    33 条回复    2021-04-01 05:24:31 +0800
    ryd994
        1
    ryd994  
       2018-10-05 08:00:45 +08:00 via Android
    btrfs 坑过我,而且性能不行
    建议试试 zfs
    EPCoo
        2
    EPCoo  
       2018-10-05 08:07:31 +08:00 via iPhone
    感谢楼主分享!
    SunnyLyx
        3
    SunnyLyx  
       2018-10-05 08:19:56 +08:00 via Android
    V2er 打开此主题就会卡死
    另感谢楼主分享
    zhangckid
        4
    zhangckid  
       2018-10-05 09:17:37 +08:00 via Android
    虽然 btrfs 不行但是群晖主打啊…我记得群晖的 KVM 不用 btrfs 还不给我用…简直弱智…逼我手动开 qemu
    Sylv
        5
    Sylv  
    OP
       2018-10-05 09:28:39 +08:00
    @SunnyLyx
    其实应该在标题里标下「多图杀猫」
    yingfengi
        6
    yingfengi  
       2018-10-05 09:35:05 +08:00 via Android
    你能打开这个帖子会不会卡成狗,Android V2ER 客户端
    yingfengi
        7
    yingfengi  
       2018-10-05 09:36:36 +08:00 via Android
    @SunnyLyx 卡一会儿,往下拉就好了???大概是图太多的锅
    C2G
        8
    C2G  
       2018-10-05 10:15:57 +08:00 via Android
    @yingfengi 应该是图片过多加载问题。我刚刚也是卡了一下,然后就好了。拉下来一看一堆图
    SunnyLyx
        9
    SunnyLyx  
       2018-10-05 10:54:38 +08:00 via Android
    @yingfengi 急性子,卡一会儿就好了
    Athrob
        10
    Athrob  
       2018-10-05 11:05:30 +08:00 via iPhone
    楼主用心了
    tunetoystory
        11
    tunetoystory  
       2018-10-05 11:05:59 +08:00 via Android
    我的天,这个贴手机差点卡死了
    hjc4869
        12
    hjc4869  
       2018-10-05 11:07:22 +08:00 via iPhone
    楼主应该用更专业的 IO 测试软件比如 iozone3。另外如果瓶颈是千兆网,那么考虑这些意义不大。
    514146235
        13
    514146235  
       2018-10-05 11:11:13 +08:00   1
    ext4 和 btrfs 场景不一样。一般使用 btrfs 是追求它的一些新的特性。例如压缩,快照等等。
    下一代的文件系统 cow 是趋势,包括苹果的 apfs 也一样。cow 带来的性能下降是必然的。就看你能不能接受。

    btrfs 目前已经足够稳定了。我的 nas 一直使用 btrfs,5 块硬盘 16T 容量合并成一个磁盘空间,不过没有开启 raid。开启了自动快照,然后就再也没有因为误删丢过任何数据了。然后还有部分冷数据直接开启压缩。真的是很爽。

    期间经历过 N 次断电之类的,文件系统没有任何问题。不像 btrfs 早期那样可能导致文件系统损坏。

    使用 btrfs 唯一要注意的就是,尽可能使用比较新的内核。
    自己组的 nas,archlinux,5 块硬盘,总容量 16T,上面还跑很多服务。目前已经稳定连续工作近 2 年时间。

    现在唯一期待的就是 btrfs 加入利用 ssd 磁盘加速的功能了。好像会在下一个 feature 里面。
    ryd994
        14
    ryd994  
       2018-10-05 12:08:41 +08:00 via Android   1
    @514146235 你要的这些,zfs 全都有,而且久经考验,而且 FreeBSD 官方支持
    loading
        15
    loading  
       2018-10-05 2:09:37 +08:00 via Android
    群辉还跑分,买椟还珠!
    514146235
        16
    514146235  
       2018-10-05 12:14:33 +08:00
    @ryd994 我知道,zfs 目前的确是比 btrfs 成熟。但是 freebsd 作为专用服务器还可以。多功能服务器还是 linux 比较好用一些。我的 nas 上面还要跑 kvm, docker 等等严重依赖 linux 内核的东西。

    而且 freebsd 的软件包编译安装也确实比较费时间。十几年前用过 freebsd 作为服务系统,后来已经弃坑了。
    zn
        17
    zn  
       2018-10-05 12:15:52 +08:00
    @ryd994 群辉不直接支持 ZFS 吧?得专门装 FreeNAS 一类的系统,然后 FreeNAS 这系统嘛,超级耗内存,光系统本身就要求 8G 内存起步,其他应用、虚拟机所需的内存,得额外计算。
    514146235
        18
    514146235  
       2018-10-05 12:16:13 +08:00
    @ryd994 而且 btrfs 早就已经进入 linux 内核了。以后是发展趋势。
    xinhangliu
        19
    xinhangliu  
       2018-10-05 12:18:23 +08:00 via Android
    赔我流量
    yingfengi
        20
    yingfengi  
       2018-10-05 12:43:13 +08:00 via Android
    @C2G 是的,不过在农村老家,运营商炸了。
    ferock
        21
    ferock  
    PRO
       2018-10-05 13:55:00 +08:00   1
    btrfs 比较 ext4 性能当然不行,毕竟有很多备份的特性在那里。
    但是。。。
    这是以后的趋势
    ryd994
        22
    ryd994  
       2018-10-05 13:56:07 +08:00 via Android   2
    @514146235 我是 CentOS 打底,kvm 开虚拟机,pcie 直通 HBA 给 nas4free。其他服务放其他虚拟机。虚拟网络用 jumboframe,其实开销很小。唯一缺点就是内存消耗大。但是二手服务器 ECC 内存都是白菜价。无论你是不是用 zfs,对于数据安全,ECC 内存都是非常值得的投资

    我 3 年前用 btrfs 时,它就已经在内核里,而且声称 production ready 了。实际呢?意外断电后全盘无法识别。信任就是一次偶然可以毁掉的。

    btrfs 那时候还号称是未来的趋势。然而到现在也没有取代 ext4,而且性能也远比不上 ext4。在我看来,btrfs 是对 zfs 的一次失败的重造轮子。
    RedHat 系不再默认 ext4,而是改用了 xfs。xfs 对小文件,SSD,的性能非常好。所以用于服务器系统盘最合适。数据盘再考虑其它。

    顺带一提,ext4 也可以一定程度上 SSD cache。使用 external journal。

    @zn 不到 8G 也可以。只要你不开去重。NAS 都是顺序读写,瓶颈总是在带宽。1G/T+8G 是建议配置,建议而已。
    wowodavid
        23
    wowodavid  
       2018-10-05 13:59:29 +08:00
    瓶颈还是网络啊,万兆网关键不在设备,而在于重新装修的成本
    wtdd
        24
    wtdd  
       2018-10-05 14:32:56 +08:00
    NAS 毁硬盘不是开玩笑的,建议还是保命优先,性能就随他去吧……
    ryd994
        25
    ryd994  
       2018-10-05 15:09:13 +08:00 via Android
    @wtdd raid6 以上,坏就坏呗
    能同时坏三块那真算我倒霉了
    raid5 就算了,重建分分钟再挂一块挂给你看
    该备份的还是要另外备

    再推一波 wd my book,毕竟是氦气盘体
    maolaohei
        26
    maolaohei  
       2018-10-05 15:22:53 +08:00
    用手机看真卡,还得用电脑看
    Sylv
        27
    Sylv  
    OP
       2018-10-06 01:36:07 +08:00
    @xinhangliu 我算过了这帖图片一共 25.4 MB 大小,现在流量这么便宜,用不了几毛钱。
    Sylv
        28
    Sylv  
    OP
       2018-10-06 01:45:54 +08:00
    @hjc4869 群晖因为用的是自己的 Linux 系统,要用 iozone 等其他测试软件得自己编译,所以就用了一些自带的工具简单测试了下,日后若有其他用户进行类似测试也好有个参考。
    Sylv
        29
    Sylv  
    OP
       2018-10-06 01:48:20 +08:00
    @wowodavid 据说超五类线距离不长的话是足够跑万兆的,我下一步准备试试。
    Sylv
        30
    Sylv  
    OP
       2018-10-06 01:52:56 +08:00
    @wtdd 我是 RAID5 + 一比一备份。其实 NAS 配上靠谱 UPS 并没有那么容易毁硬盘的,我之前的多块硬盘 7x24 运行了四年多,一块都没出问题。
    msg7086
        31
    msg7086  
       2018-10-06 05:38:49 +08:00   1
    NAS 跑性能测试……额。

    我自己是 xfs 一把梭,公司里 NAS 用的 ZFS on Linux,虽然比原厂 ZFS 可能要不稳点,但是现在还没遇到问题。

    @Sylv 我们 ZFS 服务器跑了 2 年,至今已经累计坏了 5 块了。
    希捷企业级,上电的时候大概 20-25k 的 POH,现在普遍在 35-45k。
    上次是两块一起坏,一起换掉以后重建的。这次是前几天刚坏了,刚换上重建的。
    还是挺频繁的。

    @ryd994 我选择 easystore,比 my book 好拆,而且可能会便宜点。
    缺点是保修少一年,但是反正也拆开了……
    wugeng668
        32
    wugeng668  
       2021-03-31 15:05:12 +08:00
    UP...图全挂了。。。我想看看 ext4 和 btrfs 在群晖下 smb 速度的对比....这两天格式化硬盘选哪个 有点纠结
    Sylv
        33
    Sylv  
    OP
       2021-04-01 05:24:31 +08:00   2
    @wugeng668 上传了个离线版本文档,请查看附言链接下载。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2590 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 34ms UTC 06:35 PVG 14:35 LAX 22:35 JFK 01:35
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86