# SMS控制台显示的迁移速率等数据是如何计算出来的？
#### 名词解释
表1SMS控制台迁移数据名词解释 
| 迁移过程中指标 | Windows块级                                                                                                                                            | Linux文件级                    | Linux块级                                                                                                                           |
|:---|:---|:---|:---|
| 总共数据量    | 待迁移的所有分区已用空间之和，右键单击"分区 \> 属性 \>常规"可以查看                                                                                                             | 待迁移的所有分区已用空间之和，通过df -TH可以查看 | 待迁移的所有分区大小之和，通过fdisk -lu可以查看                                                                                                     |
| 已迁数据量   | 已迁移的数据块的大小，只计算分区中已用空间的数据块                                                                                                                        | 已迁移的文件大小                   | 已迁移的数据块的大小，包括分区中的所有数据块                                                                                                           |
| 已迁移时间   | 开始迁移的时间，从任务开始时间计算                                                                                                                                                                                                                                                                                                                                                               |||
| 剩余时间  | （总共数据量-已迁数据量）/ 迁移速率                                                                                                                                                                                                                                                                                                                                                             |||
| 迁移速率    | **计算最近5s内迁移数据量。** 如5s迁移了200MB，则迁移速率200MB\*8/5s = 320Mbps；由于迁移数据经过网卡传输迁移会被压缩，因此迁移速率不等于网卡速率。详细区别请参见[Windows块级迁移]。 | 从目的端网卡中获取，实际迁移速率。           | **最近5s内迁移数据量** ，如5s迁移200MB，则速率200MB\*8/5s = 320Mbps；由于块级还没有压缩，因此迁移速率等于网卡速率。详细说明请参见[Linux块级迁移]。 |
   
 #### Windows块级迁移
Windows块级迁移速率分为两种速率：第一种是SMS控制台显示的迁移速率，是近5s平均迁移速率。 第二种是迁移占用实际网卡传输速率，比第一种速率小，原因是网卡传输数据前会先进行压缩。
- **SMS控制台显示的迁移率计算方法** **（压缩前）**
  在控制台页面上看到的迁移速率是每秒实际传输的迁移数据量，是压缩前的速率。计算方法是求最近5s传输的数据量，例如近5s内传输的实际数据为200MB，压缩后为50MB，页面上查看到的速率是320Mbps （ 200MB\*8/5s=320Mb/s） ， 任务管理器占用网卡的速率是80Mb/s（50MB\*8/5s=80Mb/s）。
  
- **迁移实际网卡速率（压缩后）**
  Windows 块级传输过程时，Agent会先压缩数据，然后通过网络传输到目的端，目的端代理再解压数据后写入磁盘。通过任务管理器（以Windows Server 2012为例）中可以看到实际迁移网卡速率，这个速率显示的是网络带宽的占用情况（即迁移传输速率），可以在源端任务管理器中查看（迁移过程中目的端服务器会自动锁定，需解锁后才能查看）。
  ![](https://support.huaweicloud.com/sms_faq/zh-cn_image_0286454451.png "点击放大")
  ![](https://support.huaweicloud.com/sms_faq/public_sys-resources/caution_3.0-zh-cn.png)
  - 如果需要查看网络带宽的占用率，使用任务管理器中查看到的数据；如果要估算迁移时长，使用SMS控制台页面看到的迁移速率。
  
  - 源端网卡速率还会包括源端业务应用的带宽占用，因此要查看迁移进程的迁移速率。任务管理器中查看到的是压缩后的速率。
  
  - Windows块迁移不会受文件数量和大小影响，传输速率较为平稳。
    
 
#### Linux文件级迁移
Linux文件级迁移没有压缩数据，因此Console页面显示的迁移速率和网卡传输速率一致。
例外场景：Linux文件级迁移在传输小文件时效率低，无法充分使用网络带宽，因此当系统中存在大量小文件时，迁移速率会远低于网络带宽。
 #### Linux块级迁移
Linux块级迁移没有压缩数据，因此SMS控制台页面显示的迁移速率和网卡传输速率一致。
