华为云用户手册

  • 响应示例 { "stateCode": "0", "errorMessage": "成功", "result": { "pos": 0, "totalCount": 1, "data": [ { "sceneId": 17522, "sceneName": "小智测试", "taskId": 265109, "taskCode": "77395e8d-1e54-4ade-b875-785b7e827028", "taskName": "1", "taskType": "通用(质量检查)", "sceneTaskId": 173746, "sceneTaskName": "小智测试_20220728_114539", "subTaskId": 241526, "subTaskName": "子任务1_20220728_114539", "procedureId": 241527, "procedureName": "1", "templateId": 38827, "templateCode": "QC2022XXXXXXXXXXXXX", "templateName": "小智2", "kcpId": 35531, "kcpName": "new kcp1", "itemId": 142315, "itemCode": null, "itemName": "Item1", "collectionId": 96189, "collectionBy": 131047, "collectionByName": "XXXX", "fileId": 4073275, "fileType": "采集图片", "thumbnailsId": null, "collectTime": "2022-07-28T11:46:22", "likesCount": 0, "labels": null } ], "header": null } }
  • 请求参数 参数 类型 是否必填 描述 sceneId Int 是 任务场景ID taskId Int 否 任务ID subTaskId Int 否 子任务ID procedureId Int 否 工序ID likesFlag Int 否,默认查所有 是否点赞: 0:查询所有 1:只查询点赞的,即点赞次数不为0的记录 pageStart Int 否 当前页码,从0开始 pageSize Int 否 每页数量,默认15条,最多100条
  • 请求示例 { "date": "2022-06-11", "dateType": "day", "period": 7, "sceneName": "巡检", "orgIdList": ["123", "124"], "pageStart": 0, "pageSize": 15 }
  • 响应示例 { "stateCode": "0", "errorMessage": "success", "result": { "pos": 0, "totalCount": 2, "data": [ { "sceneName": "巡检abc", "avgExecuteTime": 11.2 }, { "sceneName": "巡检def", "avgExecuteTime": 7 } ] } }
  • 请求示例 { "imageLevel":"智能生活馆", "region":"天津市-生活馆", "taskScene":"【现场巡检】-(智能生活馆)", "sceneVersion":"1.1", "position":"零售经理", "startDate":"2022-04-01", "endDate":"2022-05-01", "pageStart": 0, "pageSize": 15 }
  • 响应示例 { "stateCode": "0", "errorMessage": "success", "result": { "data": [ { "detail": [ { "name": "未整改", "value": 3869, "rate": "10%" }, { "name": "整改中", "value": 22054, "rate": "57%" }, { "name": "已关闭", "value": 8899, "rate": "23%" } ] } ], "pos": 0, "total_count": 1 } }
  • 请求参数 字段名 数据类型 是否必填 字段名称 imageLevel String 是 全球形象等级 region String 否 代表处 taskScene String 是 任务场景 sceneVersion String 否 任务场景版本 position String 否 岗位 startDate date 是 开始时间 endDate date 是 结束时间 pageStart int 否 当前页码:,从0开始 pageSize int 否 每页数量:默认15条,最多100条
  • 请求示例 { "page": { "count": 15, "start": 0 }, "siteName": "作业对象名", "siteCode": "作业对象", "siteType": "屋顶站", "addressIdList": [ 1349762, 13497681, 1349870 ], "startDate": "2022-01-18 00:00:00", "endDate": "2022-04-18 23:59:59" }
  • 响应示例 { "stateCode": "0", "errorMessage": null, "result": { "data": [ { "signSiteId": 9911276271, "customerName": null, "tenantId": 100846, "tenantName": null, "projectNo": "", "projectName": null, "signSiteCode": "作业对象编码", "signSiteName": "作业对象名称", "signSiteSource": "1", "signSiteType": "屋顶站", "longitude": "0**.**", "latitude": "0**.**", "country": "中国", "province": "XX省", "city": "XX市", "district": null, "town": null, "signSiteAddress": "******", "contactPerson": null, "contactNumber": null, "status": null, "deleteFlag": 0, "createdBy": 223394, "creationDate": "2022-04-18T05:27:45.000+00:00", "lastUpdatedBy": 223394, "lastUpdateDate": "2022-04-18T05:42:15.000+00:00", "appName": "basedata-server", "entityName": "taskObject", "creationTimestamp": 1650259665322, "lastUpdateTimestamp": 1650260534803, "countryId": 1349762, "provinceId": 1349768, "cityId": 1349870, "createName": "133XXXX1010", "lastUpdateName": "133XXXX1010", "udfExtend1": null, "udfExtend2": null, "udfExtend3": null, "udfExtend4": null, "udfExtend7": null, "udfExtend8": null, "udfExtend9": null, "udfExtend10": null, "secret": "0", "geoHash": "7zzzzzzz", "customerId": null, "supplierId": null, "supplierName": null, "ownerIds": "", "ownerNames": null, "ownerGroupId": null, "ownerGroupName": null, "orgId": 112645, "orgName": "133XXXX1010" } ], "pos": 0, "total_count": 1, "entityName": null, "totalCount": 1 } }
  • 响应参数 参数 类型 描述 status String 处理结果(0代表success) errorMessage String 错误消息 data Object 返回结果 data出参: 字段名 字段名称 示例 signSiteId 作业对象主键id 9911276271, customerName 客户名称 null, tenantId 租户id 100846, tenantName 租户名称 null, projectNo 项目编码 - projectName 项目名称 null, signSiteCode 作业对象编码 作业对象编码 signSiteName 作业对象名称 作业对象名称 signSiteSource 作业对象来源 1 signSiteType 作业对象类型 屋顶站 longitude 经度 0**.** latitude 纬度 0**.** country 国家 中国 province 省份 XX省 city 城市 XX市 district 区 null, town 镇 null, signSiteAddress 详细地址 ****** contactPerson 联系人 null, contactNumber 联系电话 null, status 状态(预留字段) null, deleteFlag 删除标识 0, createdBy 创建人id 223394, creationDate 创建时间 2022-04-18T05:27:45.000+00:00 lastUpdatedBy 最后更新人 223394, lastUpdateDate 最后更新时间 2022-04-18T05:42:15.000+00:00 appName 应用名称 basedata-server entityName 实体名称 taskObject creationTimestamp 创建时间对应的毫秒数 1650259665322, lastUpdateTimestamp 最后一次更新时间对应的毫秒数 1650260534803, countryId 国家id 1349762, provinceId 省份id 1349768, cityId 城市id 1349870, createName 创建人名称 133XXXX1010 lastUpdateName 更新人名称 133XXXX1010 udfExtend1 扩展字段 null, udfExtend2 扩展字段 null, udfExtend3 扩展字段 null, udfExtend4 扩展字段 null, udfExtend7 扩展字段 null, udfExtend8 扩展字段 null, udfExtend9 扩展字段 null, udfExtend10 扩展字段 null, secret 是否敏感 0 geoHash 经纬度对应geoHash 7zzzzzzz customerId 客户id null, supplierId 供应商id null, supplierName 供应商名称 null, ownerIds 责任人ID,多个用英文逗号隔开 ownerNames 责任人群组id null, ownerGroupId 责任人群组名称 null, ownerGroupName 责任人名称,多个用英文逗号隔开 null, orgId 所属行政组织 112645, orgName 行政组织名称 133XXXX1010"
  • 请求参数 参数 类型 是否必填 描述 page. count Int 是 每页条数 page. start Int 是 起始条数 siteName String 否 作业对象名称(新增时必填) siteCode String 否 作业对象编码(新增时必填) siteType String 否 作业对象类型 addressIdList Array 否 行政区域 startDate data 否 开始时间 endDate data 否 结束时间 udfExtend[1-10] 除udfExtend5和 udfExtend6为date类型,其他为String类型 否 扩展字段1-10 ownerIds String 否 责任人ID,多个ID用英文逗号隔开
  • 响应示例 { "status" : 1, "message" : "SUC CES S", "error" : null, "data" : { "data" : [ { "streamTotal" : 0, "firmware" : null, "deviceAbility" : "intelligent", "mac" : null, "createTime" : null, "updateTime" : null, "protocolVersion" : null, "deviceIp" : null, "devicePort" : null, "tenantId" : 1, "createdBy" : 101482, "creationDate" : 1616570870000, "lastUpdatedBy" : -1, "lastUpdateDate" : 1627452138000, "fileId" : null, "fileExt" : null, "fileName" : null, "fileSize" : null, "sysType" : null, "webPlayUrl" : null, "isdpDeviceId" : "2102412462WLL4003540-0", "deviceAlarmStatus" : "pulse", "deviceSubType" : "IPC-BOX", "deviceManageState" : "ACTIVATION", "deleteFlag" : "0", "autoJoin" : null, "battery" : null, "longitude" : null, "coordType" : null, "chatJid" : null, "liveChannelId" : null, "create_state" : null, "chatId" : null, "deviceUserId" : null, "buOrgId" : 503, "buOrgName" : "XXXX公司", "appName" : "holosens-server", "entityName" : "device", "deviceGbUsername" : null, "deviceGbPassword" : null, "ownnerName" : null, "deviceUserName" : null, "storageRemain" : null, "customerOrgCode" : null, "customerOrgName" : null } ], "pos" : 0, "total_count" : 1, "entityName" : null }, "timestamp" : "2021-07-28T14:04:20.909+0800" }
  • 响应参数 参数 类型 描述 status int 状态 message String 返回的接口状态描述 error String 错误 data Object 数据 data出参: 参数 类型 描述 streamTotal int 每个通道码流数量 firmware String 摄像头固件版本号 deviceAbility String 能力集 mac String mac地址 createTime String 创建时间 updateTime String 更新时间 protocolVersion String 协议版本 deviceIp String 设备ip devicePort String 设备端口 tenantId int 租户ID createdBy int 设备创建人 creationDate int 设备创建时间 lastUpdatedBy int 设备更新人 lastUpdateDate int 最后更新时间 fileId String 图片编号 fileExt String 文件扩展名 fileName String 文件名称 fileSize String 文件大小 sysType String 系统类型 webPlayUrl String web播放地址 isdpDeviceId String isdp唯一设备ID deviceAlarmStatus String 设备告警状态 deviceSubType String 子设备类型 deviceManageState String 设备管理状态 deleteFlag String 删除标识 autoJoin String 是否主动入会 battery String 电量 longitude String 经度 latitude String 纬度 coordType String 坐标类型 chatJid String IM群组ID liveChannelId String 频道播放ID create_state String 创建状态 chatId String IM聊天ID deviceUserId String 设备使用人ID buOrgId String 组织id buOrgName String 组织名称 appName String 应用名称 entityName String 实体名称 deviceGbUsername String 设备使用人名称 deviceGbPassword String 设备使用人名称对应密码 ownnerName String 设备责任人名称 storageRemain String 存储保留 customerOrgCode String 供应商ID customerOrgName String 供应商名称 deviceState String 设备状态 deviceId String 设备ID channelId String 通道ID deviceName String 设备名称 deviceType String 设备类型 projectName String 项目名称 projectNumber String 项目编码
  • 请求示例 { "operUserNo": 15675496556, "sceneTaskId": 3312196, "subTaskVOList": [ { "address": "", "administrativeDivision": "", "administrativeDivisionName": "", "assignedUserId": "930218", "assignedUserName": "张三", "beginTimestamp": 1705939200000, "ccPerson": "", "ccPersonGroup": "", "ccPersonGroupName": "", "ccPersonName": "", "collectionReviewId": "", "collectionReviewName": "", "description": "", "isAppraisal": 0, "isNA": 0, "issueId": null, "jobDuration": 12, "licenseSwitch": 0, "modeOrder": 1, "oldTaskName": "子任务1", "operationGuideList": [ ], "owner": "", "ownerGroup": "", "ownerGroupName": "", "ownerName": "", "priority": null, "projectDuration": 1, "regionId": null, "regionName": null, "regionPath": null, "sceneModeCode": "267364", "signSiteCode": "", "signSiteName": "", "skill": null, "sceneTaskId": 2180053, "taskExtend": [ { "extendValue": "", "stage": 1, "udfName": "UDF22" }, { "extendValue": "", "stage": 2, "udfName": "UDF23" }, { "extendValue": "", "stage": 1, "udfName": "UDF24" }, { "extendValue": "", "stage": 1, "udfName": "UDF25" }, { "extendValue": "", "stage": 1, "udfName": "UDF26" }, { "extendValue": "", "stage": 1, "udfName": "UDF38" } ], "taskName": "子任务2123232", "templateCode": null, "templateName": null, "userGroup": "", "userGroupName": "", "version": null } ] }
  • 响应示例 { "stateCode": "0", "errorMessage": null, "result": [ { "status": "1", "message": "检查单不存在!", "customerTaskId": 123456789123456789, "taskId": null }, { "status": "1", "message": "不是该检查单的创建人,不能删除!", "customerTaskId": 123456888, "taskId": null }, { "status": "0", "message": "删除成功!", "customerTaskId": 1234567894, "taskId": null }, { "status": "0", "message": "删除成功!", "customerTaskId": 1234567895, "taskId": null }, { "status": "0", "message": "删除成功!", "customerTaskId": 1234567896, "taskId": null } ] }
  • 响应示例 { "stateCode": "0", "errorMessage": "success", "result": { "pos": 0, "totalCount": 1, "data": [ { "issueCodeList": "ISSUE123456,ISSUE123457,ISSUE123458" } ] } }
  • 请求示例 { "date": "2022-06-11", "dateType": "day", "issueType": "typeA", "issueLevel": "一般", "querType": 0, "orgIdList": ["123", "124"], "pageStart": 0, "pageSize": 15 }
  • 处理方法 登录Windows云服务器。 以管理员身份运行CMD。 执行以下命令,查看当前的动态端口数量。 netsh int ipv4 show dynamicport tcp 图2 查看当前动态端口 执行以下命令,增大动态端口数量并再次查看当前动态端口数量。 netsh int ipv4 set dynamicport tcp start=1025 num=60000 netsh int ipv4 show dynamicport tcp 图3 设置动态端口 重新访问外部网站或应用。
  • 可能原因 Windows云服务器的动态端口耗尽。 由于Windows操作系统中TCP默认的TIME_WAIT时间为4分钟,因此,当Windows操作系统云服务器在长时间使用后,可能会存在处于TIME_WAIT状态并占用大量端口的连接,从而导致Windows云服务器访问外部网站或应用出现异常。 您可以在Windows云服务器的CMD命令提示符中,执行以下命令查看处于TIME_WAIT状态的连接。 netstat -an |find "TIME_WAIT" /c 执行结果如下: 图1 查看TIME_WAIT状态的连接数量
  • 处理方法 如果出现分区未对齐的情况,则磁盘分区无法自动扩容,需选择手动扩容或者重新分区。 本文介绍手动扩容的方法。 重新分区会导致磁盘数据丢失,请谨慎选择。 手动扩容可能存在风险,请在操作前对进行数据备份,详细内容,请参见创建快照或备份磁盘 。 登录Linux云服务器。 停止与挂载目录相关的进程。 执行以下命令,执行卸载操作(以sdb1为例)。 umount /dev/sdb1 执行以下命令,进行手动扩容。 parted /dev/sdb 执行p,检查当前分区。 执行以下命令,在命令中需要选取一个分区进行扩容。 由于只有最后一个分区可以扩容,因此,必须选择最后一个分区。 resizepart 1(分区号,该命令以分区1为例) 100% 执行p,确认分区是否扩容成功。 图4 扩容分区结果 执行q,退出parted交互,手动扩容分区成功。
  • 如何收集NVIDIA日志 收集NVIDIA日志方法如下: 登录弹性云服务器。 在任意目录下执行以下命令。(如果是CCE场景,进入到/opt/cloud/cce/nvidia/bin目录后执行) sh nvidia-bug-report.sh 或 ./nvidia-bug-report.sh 执行完成后会在当前执行目录下生成nvidia-bug-report.log.gz,转储该日志。 父主题: 故障信息收集
  • GPU实例故障处理流程 GPU实例故障处理流程如图1所示,对应的操作方法如下: CES监控事件通知:配置GPU的CES监控后会产生故障事件通知。 故障信息收集:可使用GPU故障信息收集脚本一键收集,也可参考故障信息收集执行命令行收集。 GPU实例故障分类列表:根据错误信息在故障分类列表中识别故障类型。 非硬件故障自恢复处理方法:这类问题可以根据指导自行排查恢复。 显卡故障诊断及处理方法:这类问题可以根据指导确认后联系技术支持。 联系技术支持人员:无法自恢复请提交工单联系技术支持人员获取帮助。 图1 GPU实例故障处理流程 父主题: GPU实例故障自诊断
  • 判断方式 确认用户业务使用场景。 用户使用的镜像是否带驱动、是否已经自行安装驱动、驱动是否与使用场景匹配。 如果用户使用的是异构发布的公共镜像,可通过镜像名称区分驱动类型与驱动版本。镜像名称中如带有with tesla字样,则选择该镜像会安装tesla驱动;如带有with grid字样,则选择该镜像会安装GRID驱动(不包括License)。 如果用户使用的是私有镜像或其他镜像,可通过nvidia-smi命令查询是否安装了驱动以及确认驱动类型、驱动版本。 如客户选择自行安装Tesla驱动,请务必告知客户确保Tesla驱动与CUDA软件的版本配套关系,可参考Tesla驱动及CUDA工具包获取方式。
  • 问题描述 用户业务是做渲染(推理)的,但用户选择了带Tesla驱动(GRID驱动)的公共镜像,运行软件时出错。 例:用户使用场景为做渲染,但选错公共镜像,运行软件时报错“A D3D11-compatible GPU (Feature Level 11.0,Shader Model 5.0) is required to run the engine”。 用户业务是做渲染(推理)的,但用户选择了不带驱动的公共镜像,且未单独安装驱动,导致GPU能力不可用,执行nvidia-smi命令报错“command not found”。
  • 处理方法 登录管理控制台。 通过E CS 的主机监控功能的“内存使用率”指标,查看云服务器内存使用情况确认云服务器内存情况,详细操作,请参见查看监控指标 。 如果内存不足,建议扩容内存或者优化内存的使用,扩容内存可参考变更规格通用操作。 否则,执行步骤3。 以root用户登录云服务器,执行以下命令,排查message和dmesg日志。 dmesg -T cat /var/log/messages 如果出现如图1所示的cgroup相关报错打印,执行步骤8。 否则,执行步骤4。 图1 日志报错 执行以下命令,查看当前系统线程总数。 ps -efL | wc -l 执行以下命令,将得到的两个值与步骤4查到的当前系统线程总数进行对比。 sysctl -a | grep pid_max sysctl -a | grep threads-max 如果当前系统线程总数接近这两个值其中一个,那么就需要对这pid_max、threads-max这两个参数进行调优。调优步骤请参考调优pid_max、threads-max参数。 否则,执行步骤6。 执行以下命令,确定报错进程的pid。 ps -ef | grep 报错进程名 执行以下命令,根据得到的pid检查该进程的limits配置: cat /proc/pid/limits 图2 确定进程limits配置 查看Max processes行,如果当前用户创建的所有线程数接近该值,那么需要对limits参数进行调优,调优步骤请参考调优limits参数。 否则,执行步骤8。 执行以下命令,根据日志的cgroup报错可以得到pid_max、pids.current参数值。 cat /sys/fs/cgroup/pids/拼接日志中报错目录/pids.max cat /sys/fs/cgroup/pids/拼接日志中报错目录/pids.current 图3 cgroup目录 示例如下: 执行以下命令,根据进程的pid查找对应的cgroup目录。 cat /proc/pid/cgroup 图4 根据pid查找对应的cgroup目录 返回结果中的pids行为“/user.slice/user-0.slice/session-5.scope/”,与/sys/fs/cgroup/pids/拼接,可得进程对应的cgroup目录为“/sys/fs/cgroup/pids/user.slice/user-0.slice/session-5.scope/”。 执行以下命令,根据得到的cgroup目录获取pid_max、pids.current参数值。 cat /sys/fs/cgroup/pids/user.slice/user-0.slice/session-5.scope/pids.max cat /sys/fs/cgroup/pids/user.slice/user-0.slice/session-5.scope/pids.current 如果pids.current接近pids.max,那么需要对cgroup参数进行调优,调优步骤请参考调优cgroup参数。 否则,请提交工单联系技术支持处理。
  • 问题描述 Linux操作系统的ECS,在执行命令或者日志打印时,出现如下报错信息: 错误信息1: root@localhost:~# free -g total used free shared buffers cached Mem: 94 43 51 0 0 0 Swap: 19 0 19 root@localhost:~# uname -a -bash: fork: Cannot allocate memory 错误信息2: xxxxsshd2[23985]: fatal: setresuid 20054: Resource temporarily unavailable xxxxsshd2[28377]: Disconnecting: fork failed: Resource temporarily unavailable xxxxsshd2[4484]: Disconnecting: fork failed: Resource temporarily unavailable 错误信息3: [root@ecs-xxxx ~]$ sudo docker info runtime/cgo: pthread_create failed: Resource temporarily unavailable SIGABRT: abort
  • 故障信息收集方法 用户可使用故障信息收集脚本一键收集所有信息或使用命令进行获取相应信息。 故障信息一键收集脚本使用方法如下: 故障信息一键收集脚本下载地址:https://hgcs-drivers-cn-north-4.obs.cn-north-4.myhuaweicloud.com/release/script/diagnose_gpu.sh 执行bash diagnose_gpu.sh命令,将信息收集到信息文件diagnose_gpu_xxxxx.tar.gz进行自排查或工单联系技术支持。 使用命令获取信息请参考表1。 表1 获取信息方法 信息分类 相关文档 显卡基本信息 如何获取显卡ID 如何查询显卡详细信息 如何查询显卡在位信息 显卡故障信息(Linux) 如何查询NVIDIA的错误信息 如何查询XID报错信息 NVIDIA日志收集(Linux) 如何收集NVIDIA日志 镜像内核信息收集(Linux) 如何查询内核信息 驱动安装信息收集(Linux) 如何收集驱动安装信息 父主题: 故障信息收集
  • 可能原因 一般来说不会出现删除文件后空间不释放的情况,但是也存在例外,比如文件进程锁定,或者有进程一直在向这个文件写数据。 Linux系统中的一个文件在文件系统中存放分为两个部分:数据部分和指针部分,指针位于文件系统的meta-data中,在将数据删除后,这个指针就从meta-data中清除了,而数据部分存储在磁盘中。在将数据对应的指针从meta-data中清除后,文件数据部分占用的空间就可以被覆盖并写入新的内容,之所以出现删除文件后,空间还没有释放,就是因为进程还在一直向这个文件写入内容,导致虽然删除了文件,但是由于进程锁定,文件对应的指针部分并未从meta-data中清除,而由于指针并未删除,系统内核就认为文件并未被删除,因此通过df命令查询空间并未释放。 当一个文件被删除后,在文件系统目录中已经不可见了,所以du就不会再统计它了。然而如果此时还有运行的进程持有这个已经被删除了的文件的句柄,那么这个文件就不会真正在磁盘中被删除,分区超级块中的信息也就不会更改。这样df仍旧会统计这个被删除了的文件。
  • 修订记录 发布日期 修订记录 2024-07-22 第六次正式发布。 删除“元数据管理”章节。 删除“运营分析”章节。 删除“埋点数据接入”章节。 2024-03-30 第五次正式发布。 新增如下章节: 用户基础分析 店铺销售分析 应用事件分析 应用销售分析 “元数据管理”章节。 “运营分析”章节。 公共屏幕模板 修改如下章节: 数据模型 指标管理 2024-03-08 第四次正式发布。 修改如下章节: 指标模板库 数据模型 指标管理 看板管理 2024-01-05 第三次正式发布。 新增“埋点数据接入”章节。 2023-12-31 第二次正式发布。 新增数据管理 2023-11-25 第一次正式发布。
  • 如何测试VPN速率情况? 当测试环境为已创建VPN连接,并在VPN连接的本端子网下创建ECS,并使其相互能够ping通的情况下,测试VPN的速率情况。 当用户购买的VPN网关的带宽为200Mbit/s时,测试情况如下。 互为对端的ECS都使用Windows系统,测试速率可达180Mbit/s,使用iperf3和filezilla(是一款支持ftp的文件传输工具)测试均满足带宽要求。 基于TCP的FTP协议有拥塞控制机制,180Mbit/s为平均速率,且IPsec协议会增加新的IP头,因此10%左右的速率误差在网络领域是正常现象。 使用iperf3客户端测试结果截图如图1所示。 图1 200M带宽客户端iperf3测试结果 使用iperf3服务器端测试结果截图如图2所示。 图2 200M带宽服务端iperf3测试结果 互为对端的ECS都使用Centos7系统,测试速率可达180M,使用iperf3测试满足带宽要求。 服务器端ECS使用Centos7系统,客户端使用Windows系统,测试速率只有20M左右,使用iperf3和filezilla测试均不能满足带宽要求。 原因在于Windows和Linux对TCP的实现不一致,导致速率慢。所以对端ECS使用不同的系统时,无法满足带宽要求。 使用iperf3测试结果截图如图3所示。 图3 互为对端的ECS系统不同时iperf3测试结果 假设用户购买的VPN网关的带宽为1000Mbit/s, 用户购买的VPN网关为网关的整体吞吐能力,即该VPN网关下所有VPN连接的带宽之和。在大带宽场景下,由于主机的转发性能限制,需要使用多台主机构建多条流量才能充分利用网关的带宽。这种场景下对ECS的配置要求也很高,建议ECS的网卡支持2G以上的带宽。具体ECS的规格可参见ECS规格。 测试总结:综上测试结果,云网关能够满足带宽速率要求,但是建议两端主机使用相同的操作系统,并且网卡要达到配置要求。 父主题: 带宽与网速
共100000条