供应商技术手册
供应商技术手册
文档修订记录
V1.0版,修订日期:2022/07/18
最新版,V2.0版,修订日期:2022/08/11
文档说明
•本文档主要用于提供给供应商指导资源接入,扩容和解决技术问题的手册,商务相关的问题内容不在此文档的范围内,有商务相关问题请直接联系我们的商务同事; •当您收到此文档时,非常建议您抽时间详细阅读一遍,先增加印象,这对我们的技术对接和沟通更有帮助,在您之后遇到问题时,能给您提供帮助; •当您遇到了技术的问题时,建议您优先在此文档搜索关键字,或在目录中查询,寻找您关注某个问题的答案;如果您遇到的技术问题不在此文档的范围内,请在我们的微信群里反馈出来,我们在工作时间会尽快回复,协助您们解决问题。如果您遇到的问题不在我们可控制的范围内,或者不在我们擅长的技术领域,建议您自行研究解决问题的办法,当然我们可以一起探讨; •此文档内容较多,建议在电脑端web浏览器上或者电脑端微信阅读体验更佳,电脑端有文档目录大纲,能快速定位您关注的内容。 |
一、新型资源产品介绍
一种充分利用用户端的闲置带宽资源和存储资源的边缘内容分发网络,用户根据每日的贡献带宽量或流量可获得相应的现金收益回报的一种新型网络资源。C端用户通过彼度云云接入各类智能硬件,共享闲置的计算、存储、宽带等资源,彼度云再通过先进的边缘资源调度技术,将千家万户的节点连接成一张边缘云计算网络,为B端客户提供全国领先的、优质低成本的边缘计算服务,打造了流量资源变现的分布式边缘计算平台模式,并成为业界领先的边缘计算服务商。
我们成为业界领先的边缘计算服务商,离不开供应商们的努力与支持,让我们一起携手开创新未来,合作共赢。
二、供应商资源接入必看
2.1 新供应商资源接入和资源扩容须知
1.新供应商资源接入和资源扩容前,请联系我们的商务同事明确各区域运营商的资源需求,针对缺乏资源的区域运营商进行资源接入或扩容; 2.资源冗余的区域运营商,不建议您再新接入资源和扩容资源; 3.各区域运营商的资源冗余情况可以【登录后台 --> 资源分析 --> 冗余分析】进行查看和参考(后台针对已合作并且开通了账号的供应商开放); 4.请务必按照我们要求的最低硬件配置标准或更高的硬件配置上线资源,并正确配置环境,且保持长期稳定运行,否则会影响您的收益; |
2.2 服务器资源硬件及网络环境标准
说明: 此X86服务器资源硬件配置标准是我们的默认的,通用的硬件配置标准,默认情况下的X86服务器资源都使用此标准。但我们可能有特殊的业务需求,针对我们客户特殊的业务场景,对硬件配置也会有特殊要求,对此我们技术再另行沟通明确。 |
2.2.1 专线类x86服务器资源
总带宽能力 | IP网络 | CPU | 内存 | 硬盘(数据盘使用企业级固态) | IO | 其它说明 |
1G~2G | 公网静态IP 公网拨号IP | 24线程+ | 64G+ | 单独系统盘120G或以上; SSD盘2块+, 总容量>=2T;带宽存储比1:1+; | 4K随机读写跑 满⽹卡单次IO 延时⼩于5ms | 1、知名品牌企业级SSD 2、至少一个多队列万兆网卡; |
2G~3G | ||||||
2.2.2 AD汇聚单线>=50Mbps
总带宽能力 | NAT类型 | 线路数 | CPU | 内存 | 硬盘(数据盘使用企业级固态) | IO | 其它说明 |
2G~3G | 公网全锥 | 30条以内 | 32线程+ | 64G | 单独系统盘120G或以上 SSD盘2块+, 总容量>=2T;带宽存储比1:1+; | 4K随机读写跑 满⽹卡单次IO 延时⼩于5ms | 1、知名品牌企业级SSD 2、至少一个多队列万兆网卡; |
4G~5G |
支持的网络架构如下
x86服务器ADSL资源网络拓扑

x86服务器专线资源网络拓扑(静态专线公网网络)

x86服务器专线资源网络拓扑(静态专线局域网网络)

2.3 小节点资源硬件及网络环境标准
设备类型 | 路由器/x86服务器容器/机顶盒/摄像头/智能设备/智能硬件等 |
cpu型号 | 不限 |
cpu核数 | 4+ |
主频 | 1.2GH+ |
cpu架构 | x86_64/armv7l/mips/aarch64/arm32/arm64 |
内存(MB) | 256M+ |
上行带宽 | 16Mbps+ |
下行带宽 | 16Mbps+ |
存储类型 | USB3.0/M.2/SATA |
存储与带宽比 | 存储最低64G, 且带宽存储比满足1(Mbps):1GB; |
操作系统 | 类unix、centos、ubuntu、openwrt、docker、android |
网络要求 | 原始NAT0; 原始natNAT1,且能经过NAT穿透后能成功转成NAT0 |
家庭网络拓扑

2.4 自助部署概述
针对自助部署试所适用的场景说明如下:
部署方式 | 适用场景或要求 | 特点 | |
服务器资源部署 | 直接提供x86服务器资源 | 网络环境要求高,部署逻辑复杂,但已集成到定制化系统镜像; 需要彼度云云侧技术人员配合和验收 | |
小节点资源部署 | 独立的小节点单线路带宽500M以下的设备,比如路由器,流量盒子,容器,机顶盒,智能摄像头,NAS设备,工控机,基站设备,智能硬件等; | 需要与彼度云侧技术联调测试; 提供测试设备,调试哨兵watcher程序与业务插件,并完成业务测试。 可自行定制成docker镜像,通过容器方式部署; 根据供应商设备的实际情况,可定制成固件; |
2.5 服务器资源部署
当前已经在服务跑量的资源保持现状,不需要更换部署方式,新上的服务器资源统一使用以下方式。 |
服务器资源自助部署手册
2.6 小节点资源部署
当前已经在使用yfnode插件进行服务跑量的资源保持现状,并且继续沿用原来的部署方式; 此watcher部署方式正在小规模测试中,如果需要使用此部署方式,请在微信群与彼度云侧技术人员对接。 |
2.6.1 部署说明
小节点包括,路由器,流量盒子,容器,机顶盒,摄像头,工控机,智能设备等,CPU架构包括x86_64/x86_32/armv7l/mips/aarch64/arm32/arm64等等
首次对接:提供至少一台测试设备,自行根据cpu架构下载对应的程序,然后按下文方式启动程序(如有异常联系彼度云技术人员)。节点上线后由彼度云技术进行调试测试。
2.6.2 程序下载链接
架构 | 下载地址 | 说明 |
amd64 | https://src-share.oss-cn-hangzhou.aliyuncs.com/eds/watcher/watcher-amd64-router-latest | 盒子&服务器类小节点专用 |
386 | https://src-share.oss-cn-hangzhou.aliyuncs.com/eds/watcher/watcher-386-latest | 盒子类小节点专用 |
arm64 | https://src-share.oss-cn-hangzhou.aliyuncs.com/eds/watcher/watcher-arm64-latest | 盒子类小节点专用 |
armv7 | https://src-share.oss-cn-hangzhou.aliyuncs.com/eds/watcher/watcher-armv7-latest | 盒子类小节点专用 |
2.6.3 程序启动参数说明
参数名 | 必填 | 说明 |
-s | 是 | 供应商编码,计费标识, 厂商唯一,由彼度云技术提供。 必须百分百保证准确,否则影响计费。 |
-m | 是 | 设备名,供应商提供,8-40位,只允许英文数字,特殊字符只能使用下划线 必须保证唯一,否则影响计费。 |
-t | 是 | 设置设备类型,请按照设备类型进行选择定义 router:小节点统一使用该标识。 |
-i | 是 | 设置外网网卡,多个网卡使用英文逗号分隔,示例 -i eth0,eth1 |
-d | 是 | 设置缓存路径,多目录使用英文逗号分隔,示例 -d /data/yfnode1 |
-w | 否 | 设置插件工作目录,不填默认使用程序当前目录 |
-l | 否 | 设置watcher日志路径,默认使用当前工作目录,示例 -l /tmp/logs |
-o | 否 | watcher运行一次后即退出,仅用于调试 |
2.6.4 程序启动示例
注意事项:单设备只允许启动一个wathcer进程,不可启动多个! |
Plain Text ./watcher -s XXXXX -m 0949ad47eb3763baaa772ad03895a43c -t router -i eth0 -d /data/yfnode1 |
2.6.5 节点上线同步
节点上线前后请务必与商务或者技术进行确认。
三、常见问题处理手册
3.1 渠道计费类问题
3.1.1 如何查看账单流水明细和费用
1、登录后台后,在左菜单栏上方的【费用中心】进入费用总览,如果还没有账号,请联系彼度云商务人员邮件申请开通;

2、可根据费用总览中的日期筛选进行查询计费信息;

3、在【统计分析】下的流量带宽菜单中,查询并导出渠道的出口带宽等信息;

3.1.2 常见计费类问题及解答
•如何获得彼度云后台的登录权限?
○找我们商务同事沟通,提供邮箱,手机号,公司名称的信息,通过邮件申请,开通好后会获得地址和账号密码。
•Q:后台带宽数据突然掉到0,或者API获取不到数据是什么原因?
○这种现象一般是后台大数据有延迟,导致了最新时间点的数据展示不出来,不影响节点跑量,不影响计费数据的准确性,数据延迟恢复后就会正常展示。
•Q:如何查看单个节点的流量带宽数据?
○在我们的后台中:【统计分析 --> 流量带宽,先选择要查询的时间范围,选择渠道(不明确渠道号的可以全选),再输入要查询流量带宽的节点ID(最多可同时输入5个设备ID),点击查询】即可。
•Q:如何查看X86服务器下所有节点的流量带宽数据?
○一般X86服务器下所有节点的ID号都有相同的ID前缀,拿到前缀后,在我们的console后台中:【统计分析 --> 流量带宽,先选择要查询的时间范围,选择渠道(不明确渠道号的可以全选),再输入要查询流量带宽的节点ID前缀和*星号(通配符)(最多可同时输入5个设备ID或设备ID前缀和星号),点击查询】即可,如下图

•如何采集我们的设备维度的流量数据和设备维度的状态数据?
○可以通过调用我们的相应API获取数据,具体用法请看后续《供应商数据支撑》章节下的《供应商API文档》
3.2 设备存储类问题
3.2.1 存储类问题概述
存储类问题包括以下类别问题:
•存储不可用;
•可用存储容量;
•磁盘读耗时;
•磁盘读慢速率;
•磁盘读失败率;
•磁盘文件校验失败数;
3.2.2 如何选购合适的存储盘
•遵循带宽Mbps与存储GB比1:1,或1:1+的原则,即理解为1Mbps带宽对应配置1GB及以上的存储,如:节点100Mbps带宽应该配置容量为100GB及以上的存储,节点出口3Gbps带宽则配置总容量为3TB及以上的存储;
•出口带宽16Mbps - 40Mbps: 可以使用USB3.0的 U盘,如金士顿DT100G3 64GB U盘;
•出口带宽40Mbps - 200Mbps: 建议使用eMMC、SATA或M.2 接口SSD ,且以上磁盘4K随机读取测试不低于50M字节/S;
•出口带宽200Mbps - 300Mbps: 可以使用SATA或M.2接口SSD盘,且以上磁盘4K随机读取测试不低于75M字节/S;
•出口带宽300Mbps+: 仅可使用PCIE-M.2接口的SSD盘,且以上磁盘4K随机读取测试不低于120M字节/S;
•出口带宽等于大于3Gbps的X86服务器,必须使用企业级的M.2口/U.2口的SSD固态盘,且总容量在3TB及以上,因为如果使用民用品牌的SSD固态盘时,在磁盘接近写满的情况下,读写速度和响应耗时极其不稳定,影响存储性能和跑量的稳定性。
如可以选用如下产品
1)U.2接口
厂商 | 型号 | 规格 | FW(不低于一下版本) | 产品 |
Intel | nvmeSSD_3.84T_P5510 | NVME2.5_3.84T | JCV10200 | P5510 |
Samsung | nvmeSSD_3.84T_MZWLJ3T8HBLS-0007 | NVME2.5_3.84T | EPK98B5Q | PM1733 |
Intel | nvmeSSD_2T-nvmeSSD_P4510 | NVME2.5_2T | VDV10170 | P4510 |
Samsung | nvmeSSD_1.92T_PM1733 | NVME2.5_1.92T | EPK98B5Q | PM1733 |
2)M.2接口
厂商 | 型号 | 规格 |
Samsung | PM983/M.2接口 | 3.84T |
Intel | P4511/M.2接口 | 2T |
磁盘介质性能排序:商用SSD > 家用SSD > HHD混合硬盘 > 商用HDD-机械盘 > 家用HDD-机械盘 > U盘;
磁盘接口性能排序:M.2/U.2 > mSATA > SAS > SATA > USB3.0 > IDE > USB2.0;
3.2.3 如何检测磁盘性能(供参考)
1、Windows下以AS_SSD_Benchmark.exe工具为例,可测试固态磁盘的顺序读写、4K大小数据块测试、IOPS等维度的性能指标;(用户对性能结果主要侧重于读写速度、耗时、IOPS等指标即可)
•VK0480G党建XV:磁盘型号;
•4IWVHPG0:磁盘SN;
•isaStoreA:英特尔的AHCI驱动程序,如果是微软的Windows自带的AHCI驱动程序,则为msachi;
•2048k:offset/Alignment, 以4k为基准,OK表示采取了4k的对齐方式;
•447.13GB:磁盘总容量;
•Seq:测试顺序读写;
•4K:以4K大小的数据块测试;
•4K-64Thrd:64个线程同时进行4K大小数据块随机读写;
•Acc.Time:存取时间耗时测试,AS SSD Benchmark在全盘范围内随机抽样若干个位置,使用512字节为单位进行读写,Acc.time就是固态硬盘响应最小读写指令的时间。由于固态硬盘内FTL闪存映射表的影响,空盘Acc.time成绩通常会比满盘Acc.time优秀的多。对于同样一块固态硬盘来说,不同用户测得的成绩差异,可以反映出他们系统盘空间占用比率的不同。
•Score:第一行分别为读、写分数,第二行为总分。三个得分公式如下:
1 读Score = Seq * 0.1 + 4K + 4K-64Thrd
2 写Score = Seq * 0.1 + 4K + 4K-64Thrd
3 总Score = Seq-写0.15+Seq-读0.1+4k-读2+4k-写+4K-64Thrd写+4K-64Thrd读1.5


2、Linux下可使用fio来对磁盘进行压测,相关指令参数如下:(可关注读写速度、iops等指标)
yum -y install fio
•#连续读速度:
fio -filename=/dev/nvme0n1 -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=256k -size=100G -numjobs=30 -runtime=60 -group_reporting -name=mytest
•#连续写速度:
fio -filename=/dev/nvme0n1 -direct=1 -iodepth 1 -thread -rw=write -ioengine=psync -bs=256k - size=100G -numjobs=30 -runtime=60 -group_reporting -name=mytest
•#随机读256k速度:
fio -filename=/dev/nvme0n1 -direct=1 -iodepth 1 -thread -rw=randread -ioengine=psync - bs=256k -size=100G -numjobs=30 -runtime=60 -group_reporting -name=mytest
•#随机写256k耗时:
fio -filename=/dev/nvme0n1 -direct=1 -iodepth 1 -thread -rw=randwrite -ioengine=psync -bs=256k -size=100G -numjobs=30 -runtime=60 -group_reporting -name=mytest
•#随机读写9:1速度:
fio -filename=/dev/nvme0n1 -direct=1 -iodepth 1 -thread -rw=randrw -rwmixread=90 -ioengine=psync -bs=256k -size=100G -numjobs=30 -runtime=60 -group_reporting -name=mytest
3.2.4 x86设备坏盘更换的处理办法
操作流程如下:
1、通知彼度云云技术,进行渠道调度关闭与相关配置;
2、供应商自行定位故障盘,将故障硬盘替换好后,登陆系统,在root用户下执行如下指令来清除旧逻辑卷分区挂载的配置注释:
Bash sed -i '//data/yfnode0/d' /etc/fstab; |
3、清除好后,执行指令: grep yfnode /etc/fstab 将不会看到任何的返回信息;
4、执行如下指令,来清理旧的lvm信息:
Bash lvremove -f /dev/vg1/vgdata1 vgremove -f /dev/vg1 |
5、执行如下指令,来重新分区并挂载:(需等待数分钟即可完成)
Bash curl -s http://ospf.yunfancdn.com/yfpcdn/disk_part2.sh |bash |
6、重新分好区并挂载完成后,即可通知彼度云云技术进行恢复相关配置。
3.2.5 常见存储类问题及解答
•Q:磁盘不可用?
○1. 请检查程序对挂载目录是否有读写权限,确保开启读写权限;
○2. 请检查磁盘介质与设备是否存在接触不良等问题。
•Q:磁盘读速慢?
○情况1: 节点混跑其他插件,因其他插件占用磁盘IO,导致彼度云云可用存储IO低,导致读取速度慢,建议关闭其他插件,彼度云云当前独享跑量将优秀于混合其他插件跑量,如独享跑量差联系彼度云云商务;
○情况2: 排除情况1,则为存储U盘或SSD性能差,建议单点更换存储U盘或SSD后测试, 更换可参考 《如何选购合适的存储盘》小节
•Q:有效磁盘容量不足?
○情况1: 节点混跑其他插件,请排查是否满足我方最低存储冗余与带宽存储比要求;
○情况2: 排除情况1,则为存储U盘或SSD存储不足,建议提升存储容量。要求每1MB/s最低存储为8GB。如:带宽出口为5MB/s的设备,有效磁盘容量应大于40G。
•Q:为什么设备会出现不断掉盘和离线的状况?
○通过分析,读写器性能差的硬盘,会导致数据读写器一直处于等待的同步状态,当等待一段时间越来越长时,就会出现替换掉盘及设备离线的现象,建议您使用读写能力更好的硬盘。
•Q:格式化磁盘后收益会提高吗?
○格式化硬盘收益增长属于小部分设备,大部分设备由于丢失缓存文件,存在收益不断且波动大的现象。经技术人员分析,格式化硬盘后,小部分设备收益增长原因如下:
1.业务文件随机部署的概率性问题;
2.由于磁盘中的业务文件是系统随机部署的,跑量高低受到文件热度的影响,因此会出现偶尔跑低,偶尔跑高的正常情况。
3.磁盘读写性能差:由于磁盘读写性能差,在缓存上逐渐增加以后,由于读写器的增加增加,IO转换也逐渐提高,相对应的会暴露出识别性能差的弊端,会过度消耗系统资源,从而导致跑量降低。而在格式化硬盘以后,会短暂的释放部分IO资源,因为调度快速响应IO优的设备,跑量会暂时性提高。重新存储逐渐增加,依然会出现IO跑高导致低跑量的现象。格式化磁盘对磁盘本身也是一种损耗,建议结合个人情况,更换读写性能更好,品质优良的磁盘使用,彼度云云将会继续优化调度策略。
备注:格式化磁盘会删除磁盘中的数据,因此在格式化硬盘前,请确保硬盘中无个人数据。
•Q:磁盘如果存在坏道,会影响收益吗?
○如果需要调度的数据刚好在坏道上,预期收益产生影响,尽量避免使用坏盘。
•Q:双盘会比单盘的收益高吗?
○可以使用双盘,2 * 240G SSD的运行量效果达到480G SSD,但具体收益与实际运行量有关,双盘收益不一定高。另外机械盘会有一定的性能提升,与固态盘混用时可能会影响收益,更推荐使用存储介质的固态单盘。
•Q:1T的机械盘与240G的固态盘谁有优势?
○前期因为缓存减少,固态硬盘IO性能更优,会有所优势。中后期因为机械盘容量更大,能够存储的缓存文件更多,访问命中更高,会占用优势。推荐您使用读写性能更好,质量优良的大容量的磁盘。
•Q:更换硬盘会影响收益吗?
○更换硬盘后,前期会重新部署缓存,不同机器,区域和网络环境部署缓存的速度会有一定的差异。因此,收益提升的速度也不同,建议您耐心观察更换。
•Q:旧硬盘的缓存可以使用吗?
○可以在其他设备进行使用,但不能缓存副本,会造成文件索引异常。
•Q:缓存系统会自动删除吗?
○缓存资源由系统调度分配,会根据资源的冷热严重程度进行调整,无需手动删除缓存。
•Q:磁盘无法写满正常吗?
○磁盘在写满后,会严重降速,尤其是SSD硬盘,从而跑不起来流量。系统会为您预留一定的磁盘空间,以免磁盘写满降速,部分性能较差的磁盘可能不支持这项技术。若磁盘长期处于写入满状态,属于设备异常,可联系技术人员反馈处理。
3.3 设备网络类问题
3.3.1 网络类问题概述
网络类问题包括以下类别问题:
•节点出口带宽
•节点测速带宽
•节点nat非0
•nat类型变化
•出口IP变化
•节点ping延时
•节点ping丢包率
•节点dns解析失败
3.3.2 NAT非0优化
NAT类型与跑量关系
卓越公网型>映射公网型>全锥型>IP限制型>端口限制型>对称型
•①卓越公网型:设备直接获取到公网IP最优(拨号或者DHCP或者手动配置);
•②映射公网型:设备上层光猫或者路由器拿到公网IP,并且通过UPNP或者DMZ将设备端口映射到公网IP上次优;
•③全锥型:设备直接获取到运营商私网IP,NAT检测为完全圆锥型,依然对业务较为友善,利于跑量;
•④IP限制型:设备上层光猫或者路由器拿到运营商私网IP,本身光猫或者路由器NAT类型不为全对称,并且可以通过UPNP或者DMZ将设备端口映射到运营商私网IP上,业务可正常跑量;
•⑤其余NAT类型,不利于业务跑量,需要进一步调整网络结构。
网络指标优化思路
设备组网层级
尽量保证设备到公网的NAT层数最少,以下三种类型①>②>③
•①设备直接获取到公网IP最优(PPPoE拨号或者DHCP或者手动配置,查看拨号指南>>>);
•②设备在一层NAT设备下次优(光猫或路由器);
•③设备在二层NAT设备下最差(光猫和路由器)做了两次NAT,需要调整光猫和路由器之间为桥接减少一层NAT。
•④运营商光猫平时使用了路由模式,可以改为桥接模式,这样设备就可以直接PPPoE拨号了。
不同场景下的优化思路
家用路由器:多数NAT类型是硬件决定,无法更改,但UPNP和DMZ均可以配置;
软路由器:如爱快、高恪等,NAT/UPNP/DMZ均可以配置的,可根据自己使用的路由器类型合理优化设备网络。 需将设备上网模式调试为NAT1,即完全圆锥类型; 设备与拨号拿到运营商IP能做DMZ对应映射最优,通过开启UPNP做端口映射次之。不开启DMZ和UPNP不利于业务跑量。
3.3.3 ADSL资源更换账号的处理步骤
登陆服务器,编辑存储 拨号账号 的配置文件:vim /opt/eds/dialer.yml;更新好对应的账号信息后,保存退出即可,1分钟后会自动重播。

3.3.4 常见网络类问题及解答
•Q: 为什么节点nat频繁发生变化?或节点NAT存在非0?
○运营商出口对TCP端口有范围限制
○运营商出口TCP端口号消耗完
○出口网络并发连接数过高,或出口设备所能承载的吞吐量达到了瓶颈
○运营商出口本身存在网络波动大,不稳定,网络拥塞等情况
○此情况多数发生在多线路共享同一出口的网络环境下
•Q: 为什么服务器管理网络dns解析失败?
○更换dns服务器地址,修改/etc/resolv.conf文件,尝试更改成当地运营商本地dns服务器地址,或公共DNS服务器地址,如:114.114.114.114,223.5.5.5,119.29.29.29
○更换服务器管理网络出口
•Q:X86服务器如何查看ADSL线路的拨号日志?
Bash cat /opt/eds/logs/dialer.log | more 或 less /opt/eds/logs/dialer.log |
•Q:X86服务器ADSL线路为什么拨号失败,如何处理?
一般有如下原因,需要供应商自行处理:
1)账号密码信息有误,联系运营商,提供正确的账号密码
2)vlan id信息有误,根据vlan划分,提供正确的vlan id
3)物理连接不通,需要检查物理链路
4)账号欠费,过期,需要及时续费或更换新账号
5)光猫设备不稳定,可以尝试断电重启
处理:彼度云云侧会根据供应商提供的拨号信息尝试拨号,如果拨不上会反馈供应商处理
报错通常会有如下信息:
Bash # cat /opt/eds/logs/dialer.log |grep error|grep disconnect {"level":"error","msg":"[dialer.LoopDialer.xxx] r.DialerRun err: r.Create err: r.WaitPppdSuccess err: pppd dialer exception exit, disconnect and cleanup","time":"2022-07-14T10:12:25+08:00"} {"level":"error","msg":"[dialer.LoopDialer.xxx] r.DialerRun err: r.Create err: r.WaitPppdSuccess err: pppd dialer exception exit, disconnect and cleanup","time":"2022-07-14T10:12:25+08:00"} |
•Q:为什么出口IP频繁变化
○ADSL线路频繁断线重拨,或运营商出口网络不稳定;
○拨号程序设置了定时重拨逻辑,请关闭该逻辑;
○运营商限制,一般情况下运营商在72小时内会断线重拨,如超过ADSL重拨号允许标准,请联系运营商客服解决,或更换ADSL帐号解决。
•Q:PING值差?
○在同样线路上自行Ping www.baidu.com或其他域名,确认PING值高,排查内部拨号物理设备、拨号程序是否有异常,如果设备无异常,一般为线路异常,请更换拨号线路或帐号进行测试。
•Q:出口带宽低于2M?
○我们要求的资源带宽标准是不低于16Mbps,如果低于16Mbps带宽,我们是无法利用该闲置带宽资源的。
○复核指标请在同样线路上测速,如测速高于彼度云云提供值,请截图通知彼度云云商务,我们会安排人员复核,如测速依然不足,建议参照以下情况优化。
○情况1: 节点混跑其他插件,因其他插件在跑量,导致彼度云云测速低于实际值,建议关闭其他插件,彼度云云当前独享跑量将优秀于混合其他插件跑量,如独享跑量收益差,联系彼度云云商务;
○情况2: 同一ADSL出口下,启动多个彼度云云进程,带宽将会被平分,导致测速带宽低,建议一个ADSL出口只部署一个进程,彼度云云单进程处理能力高达4G/s;
○情况3: 线路问题,物理线路、拨号设备存在故障或性能问题、ADSL帐号被运营商限制,导致测速不高,该情况需要更换线路或联系运营商解决。
•Q:NAT非0?
○情况1: 如设备上联有路由器,请开启路由器的UPNP功能后,间隔2小时后观察该值;
○情况2: 运营商限制,请联系运营商客服电话,申请开放公网IP地址或NAT1地址。
○情况3:检查系统自带的iptables/firewalld/selinux防火墙是否都关闭;或检查光猫或上级路由器设备的UPnP是否已开启、防火墙是否已关闭等设置;
•Q:为什么节点网络NAT1无法使用跑量?
○我们数据显示的NAT1一般是经过我们插件nat穿透反连逻辑后却仍然无法穿透成功,就为NAT1,如果穿透成功了,则会自动为NAT0。
○如果要nat穿透成功,必须要出口设备开启UPNP、关闭安全限制,或联系运营商开放NAT穿透限制。
○我们节点都是跑http/https业务带宽,非sdk模式跑量,所以节点必须要公网用户能直接访问节点公网IP+端口才正常跑量(nat1经过穿透成功后为nat0也可以跑量),否则该节点无法服务用户,我们建议下架该资源。
•Q:如何实时查看节点的NAT类型?
方法一:
○【登陆供应商后台-->设备诊断-->输入 渠道和盒子ID --> 点击查询 -->NAT类型】;

方法二:
○登录节点命令行模式下,下载小工具:
32位:https://src-share.oss-cn-hangzhou.aliyuncs.com/eds/test_nat/test_nat_386_v1.0.5
64位:https://src-share.oss-cn-hangzhou.aliyuncs.com/eds/test_nat/test_nat_amd64_v1.0.5
命令及返回结果如下,在返回结果的最后一行的内容即是NAT类型。
Shell # curl -o ./test_nat https://src-share.oss-cn-hangzhou.aliyuncs.com/eds/test_nat/test_nat_amd64_v1.0.5 # ./test_nat em1 2022-07-13 15:44:29.690 specialNetcard em1 2022-07-13 15:44:29.690 Build at Jul 13 2022 15:36:44,ver = 1.0.13 2022-07-13 15:44:29.690 GetLocalIP ignore docker0 172.30.0.1 2022-07-13 15:44:29.690 GetLocalIP ignore em1:2 192.168.25.215 2022-07-13 15:44:29.690 em1 get a local ip 115.236.96.211 2022-07-13 15:44:29.690 GetLocalIP ignore lo 127.0.0.1 2022-07-13 15:44:29.690 ----------g_iLocalIP = 115.236.96.211 2022-07-13 15:44:31.614 local ip is 115.236.96.211,rawNat = 0 2022-07-13 15:44:31.614 insert gateway: 115.236.96.129 2022-07-13 15:44:31.614 DoUpnp begin port = 3337,m_localIp = 115.236.96.211,gateway = 115.236.96.129 2022-07-13 15:44:33.614 DoUpnp end result = 1,taketime = 2000 ms 2022-07-13 15:44:33.657 ProbeRouteIps line = traceroute to 1.2.3.4 (1.2.3.4), 4 hops max, 60 byte packets 2022-07-13 15:44:38.633 ProbeRouteIps line = 1 115.236.96.129 (115.236.96.129) 5.809 ms 5.937 ms 6.159 ms 2022-07-13 15:44:38.691 ProbeRouteIps traceroute -m 4 1.2.3.4 taketime 5077 2022-07-13 15:44:38.749 get_addr = {"ip":"115.236.96.211","port":3337} 2022-07-13 15:44:38.749 NotifyConnectDetect 3337 2022-07-13 15:44:38.749 SyncHttpGet url = http://upnp-box.ksc-test.com/tcpconn?http_port=3337&upt=580ce1561657701878,timeout = 10000 2022-07-13 15:44:38.763 SyncHttpGet send->60.188.75.1:80 = GET /tcpconn?http_port=3337&upt=580ce1561657701878 HTTP/1.1 Accept-Language: zh-cn User-Agent: upnpnat test Host: upnp-box.ksc-test.com Connection: Keep-Alive Scdn-Uid: upnpnat test 2022-07-13 15:44:38.773 SyncHttpGet response = HTTP/1.1 200 OK Server: kngx/1.10.2 Date: Wed, 13 Jul 2022 07:44:38 GMT Content-Type: application/json Connection: keep-alive Content-Length: 23 x-link-via: jhct04:80; 2022-07-13 15:44:38.873 Accept connection from outside 60.188.75.24_25258 successful,finally nat change to 0 2022-07-13 15:44:38.873 finalNat = 0,hintResult = 1 2022-07-13 15:44:38.873 nat = 0,hintResult = 1 |
•Q:如何实时测试节点线路的ping延迟和丢包?(适用于X86服务器类型的资源)
可以使用ping命令测试网络连接状态,会显示延迟时间及丢包状态
Bash ip netns exec [网络命名空间名称] ping baidu.com |

•Q:如何压测线路出口带宽?(适用于X86服务器类型的资源)
1、光猫拨好号后,接入测试机,浏览器访问测速站点https://www.speedtest.net进行单线测速;
2、上机且部署好业务后,联系技术人员进行测试。
•Q:后台查询发现节点存在【共享出口节点数】的情况,怎么理解?
○分有2种场景,以下图为例:
a.同一个线路网络下,运行了2个设备插件,致使2个插件的公网出口ip均为同一个;这种场景下,插件程序会自动将上行带宽自动平均分。例如单线出口是100Mbps,运行了2个设备,则这2个设备插件自行探测出口ip为同一个后,会设定自己的最大上行能力为50Mbps。日常业务场景中,建议同一个出口网络独享一个设备插件程序;
b.两个不同线路网络下,运行了2个独立设备插件,但2个独立设备插件的公网出口ip为同一个;大致原因为地区运营商的ip地址池共享导致。这种场景下,如果是x86的节点,建议用户可在启动插件程序时,使用参数 -b 来指定线路的最大上行带宽。

•Q:如何计算得到节点的TCP流量重传率?
○获取系统内存文件/proc/net/snmp中RetransSegs和OutSegs两个字段的单位时间范围内的差值,并将这两个值相除,得到单位时间范围内的TCP流量重传率。
•Q:节点为什么TCP网络重传率高?
○主要是跟节点所处的网络环境有非常大的关系,网络恶劣的节点,比如网络抖动,网络拥塞频发的节点,网络重传率会高,在晚高峰期时,网络重传率普遍在5%~15%之间波动;
○节点开启了内核网络加速,比如开启了BBR加速,或锐速等内核优化措施,这些内核优化措施优化了网络延时的同时,增加了网络重传率;
•Q:支持IPv6网络的节点资源吗?
○支持的,但IPv6地址必须是全局的,公网能直接可达的。

3.4设备整体性能类问题
整体性能类问题概述
•整体性能类问题包括以下类别问题:
•CPU能力(CPU性能差)
•非彼度云云插件CPU使用率高
•节点异常崩溃或重启
•节点空闲内存不足
常见性能类问题及解答
•Q:系统频繁重启?
○情况1: 节点混跑其他插件,导致设备整体内存占用高,安卓和openwrt系统都有保护机制,当系统内存不足,会kill掉占用内存的插件以释放内存保障系统的正常运行;
○情况2: 彼度云云程序占用内存高(彼度云云程序会尽可能将80%的空闲内存都消化掉,以减少磁盘的读取,降低对磁盘的损耗),超过设备系统预设的系统安全值,导致程序KILL,该情况在物理内存允许下,调高预设系统内存安全值 或 请通过彼度云云商务联系彼度云云运维调整配置降低彼度云云程序内存使用量;
○情况3: 系统频繁重启 也会导致该指标变差,参考系统频繁重启项改进措施;
○情况4: X86的服务器、盒子、路由节点,系统不稳定,或设置了定时重启的逻辑,导致系统重启数超过重启数允许标准,请自行排查设备的问题。
•Q:非彼度云云占用CPU负载高?
○情况1: 节点混跑其他插件,因其他插件在跑量,导致彼度云云测速低于实际值,建议关闭其他插件,彼度云云当前独享跑量将优秀于混合其他插件跑量,如独享跑量差联系彼度云云商务;
○情况2: 设备为单核1G,且单线程以下设备,低于彼度云云最低要求配置,建议升级CPU配置;
○情况3: 系统中有非彼度云云的程序在高消耗CPU资源,请自查系统是否有异常消耗系统资源的服务。
•Q:CPU性能差?
○设备cpu性能较差,即每处理上传速度1MB/s的https请求需要消耗10%以上cpu.此指标差会导致可能无法服务https类请求,从而影响节点带宽利用率。
•Q:如何获取cpuscore值
方法一:
○【登陆供应商后台-->设备诊断-->输入 渠道和盒子ID --> 点击查询 --> CPU性能指数】,如下图

方法二:
○登录节点命令行模式,下载工具 https://src-share.ks3-cn-beijing.ksyuncs.com/iaas/tools/cpuscoretest
执行命令及返回结果如下,返回结果中的最后一行,即是cpuscore值。
Shell # curl -o ./cpuscoretest https://src-share.ks3-cn-beijing.ksyuncs.com/iaas/tools/cpuscoretest # ./cpuscoretest cpuscore testing... CpuPerformanceLog: 2451211019,{8,1,0,0},31457280,86,2451218229,{16,2,0,0},https,1,24 total cpu consumption: 7210, upload thread cpu consumption: 9 https upload speed: 357.21 MB/s cpuNum: 24, cpuScore:1 |
•Q:如何查看节点的CPU的性能指数?
○登录console后台,依次查看:【统计分析 --> 设备诊断,选择渠道号,再选择设备ID,点击查询】,其中诊断概览里的信息包含了CPU性能指数的信息。
•Q:系统重启无法避免怎么办?
○如果节点系统无法避免重启(比如有产品设计上有强制重启机制,或者是终端设备用户设置的),那必然会影响节点质量的,但我们非常建议这个计划性的重启的时间安排在夜间,而非白天。白天设备重启必然会对大部分的用户访问产生影响,我们避免影响更多的用户访问(我们非常重视客户用户的服务质量),调度系统必然会降低被重启节点的质量评级。
3.5 节点调度类问题
3.5.1 节点调度概述
节点访问调度
文件预分发缓存调度
节点高中低评级原因
磁盘性能/设备性能/网络稳定性影响调度缓存效率
3.5.2 什么是调度压制因子
调度压制因子是调度系统对节点动态识别节点质量和控制用户访问的一种机制。为了保证上游客户的服务质量,调度系统会根据节点定期上报的数据并做大数据计算得出的数据,判断哪些节点被命中压制因子的节点,调度会减少,甚至不调用户访问到节点上,从而保证整体服务质量的稳定性和可靠性,满足客户质量要求。
调度压制因子通常可以理解为该节点当前存在的一个或多个问题,只有节点都没有命中任何压制因子,节点跑量才会处于稳定或规律波动状态,否则,节点跑量不理想,请重视并解决该节点命中的问题。
调度压制因子有如下:
•磁盘不可写或读写异常
•磁盘性能差
•异常重启(非插件原因)
•在线率不达标
•网络变化
•网络ping值或丢包率高
•非三大运营商
•第三方服务占用cpu高
•可用内存低于基础标准要求
•cpu性能
•带宽与CPU性能比低于基础标准要求
•带宽与存储容量比低于基础标准要求
•配置带宽大于实际测速带宽
针对命中的压制因子的解决办法,请详细阅读本章的《常见问题处理手册》
3.5.3 如何提升被调度用户访问的概率?
•淘汰低配节点,升级节点硬件性能
○更换存储容量更大的硬盘,使节点能缓存更多的文件,提升文件命中率;
○IO性能更佳的储存介质,使用用户访问的耗时更低,速度更快,质量评级更优;
○使用多核心CPU,提升CPU能力,能服务更多用户;
○升级内存容量,提升用户访问的耗时和速度。
•改善网络环境
○提升出口带宽;
○保持出口网络稳定,低延时,0丢包率;
○减少IP变化次数,和ADSL重拨号次数;
○提升出口设备的吞吐量和并发性能。
•改善程序运行环境
○独享存储资源,独享CPU资源,减少资源竞争;
○在保证资源充足的情况下,减少程序被异常kill的可能;
○在保证系统稳定运行的前提下,关闭设备系统定时重启功能,避免程序被意外中止运行,或减少设备断电的可能性。
3.5.4 调度类常见问题及解答
•Q:已经做了优化的节点为什么还没有调度?
○节点恢复正常前,可能被调度加入了黑名单,节点恢复正常后,要持续正常一段时间才会自动移除黑名单,我们不存在人工加入黑名单和移除黑名单的操作,自动移除黑名单后就会恢复调度,视节点恢复后的稳定情况而定,一般不会超过24小时,请保持观察。
•Q:调度系统是否可能调整渠道调度权重或优先级?
○彼度云云资源调度系统无人为调整权重或优先级功能,所有的渠道节点按区域运营商被视为统一的资源池,调度系统是全局自动按节点质量评级进行调度,质量优质的节点会更容易被调度用户访问,质量差的节点很难被用户访问到,这时应该重点从节点性能上进行排查和优化和改进网络环境。
•Q:节点诊断确认后一切稳定正常,为什么带宽波动明显
○这种情况大多数是由于客户业务波动导致,有些客户业务特性会出现有规律波动的现象,不必顾虑。
○节点资源所在地区资源冗余。
•Q:为什么整个渠道所有盒子在同一个时间范围内都没有跑量?
○像这种情况一般出现在夜间凌晨,是我们计划性的对插件进行版本更新,版本更新前,为了避免影响客户用户访问,调度会暂停整个渠道的调度,版本更新时,会自动重启插件程序,插件程序更新完毕后,会自动恢复调度,是正常现象,知悉即可,不必理会。
○如果这种情况出现在白天,或一直没有恢复调度跑量,请反馈给彼度云云技术人员排查。
•Q:新上线的节点什么时候会跑量?
○新上线的节点一切正常情况下,由于还没有缓存足够的文件,是不会被用户访问的。
○新上线的节点一般会有3~7天的缓存部署期,随着时间的推移,节点缓存的文件增多,跑量会逐渐提升,请耐心观察。
•Q:如果确认哪些地区运营商资源冗余情况?
○登录【console后台 --> 资源分析 --> 冗余分析】,如下图:

•Q:我部署了一个节点,怎么查询节点是否在线与正常?
○部署启动后,会返回节点的uid等信息;复制这个uid信息,在供应商后台的【设备诊断】可以查询节点的性能与节点信息。 另外/tmp/.yfnode.log日志文件中会有记录uid信息;
○查看节点的设备网络是否正常,其次使用 ps 指令查看yfnode进程是否为两个,分别为主进程、守护进程;如果不为2个,则程序异常,需重启观察。
3.6 设备长期跑量不理想的排查思路
设备长期跑量不理想分两种情况:一是设备长期无上行流量,二是设备长期有上行流量,但是流量很低,或只是偶尔短时间突高一下,下面分别进行原因说明。
3.6.1 设备长期无上行流量原因
•设备NAT非0,请参考《3.3.2 NAT非0优化》进行处理;
•设备存储不可用,请更换存储盘;
•设备插件版本过低,或版本更新失败,请检查系统稳定性,确保插件能够自更新;
•设备频繁掉线或者重启,请检查确保网络稳定;
•设备网络ping长期延迟超过150ms,或者丢包超过20%,请检查确保网络稳定;
•节点归属非中国大陆,非三大运营商(电信、移动、联通),此类资源建议下线。
3.6.2 设备长期低上行流量原因
•是否为新上线设备,新设备刚部署上线,无缓存或缓存少,一般新设备需要3天~7天的部署缓存观察期,之后带宽才趋于稳定
•设备NAT类型频繁变动,请检查确保网络稳定;
•设备网络ping延迟高,或者丢包,请检查确保网络稳定;
•设备存储介质性能差,读写速度慢,请参考《3.2.2 如何选购合适的存储盘》小节更换优质存储盘;
•设备混跑严重,导致系统负载高,请保证充足的系统资源;
•设备CPU性能差,可服务的并发连接数小,更换成多核心,或高性能CPU的资源;
•设备间隙性掉线或者重启;
•该设备归属区域需求冗余;
•设备本身上行带宽小,存储容量小。
3.7 设备诊断-如何判断设备资源是否正常
在【设备诊断】中,键入所属供应商名称、渠道名称、盒子ID(节点id)后查询,以单一节点为例:

3.7.1 节点在线状态
1、在线率:
展示当前查询时间范围内,该节点的在线运行趋势;趋势图粒度为一小时一条记录,节点上报数据是每分钟上报一条日志,60分钟里每分钟均成功上报则代表在线率为100%;

2、异常重启:
展示当前查询时间范围内,该节点是否存在非插件自动升级时的重启次数情况;产生该指标的行为如下:
1.设备断电崩溃重启;
2.人为手动重启设备;
3.人为停止或强杀插件进程并手动启动;
为确保节点稳定跑量服务,用户应确保节点设备稳定运行。

3.7.2 节点网络维度
1、出口带宽:
展示以下两项数据;【可点击不同标题来取消或恢复展示该数据的展示】
1.配置带宽(Mbps),如果节点在启动参数中定义了带宽值,则此处会展示所定义的配置带宽值;
2.测速带宽(Mbps),节点每天凌晨自动进行测速,测出的结果作为测试带宽的值;该值会随测速结果有所浮动。

2、网络变化:
展示当前查询时间范围内,该节点的网络环境变化情况,可分析网络质量、网络数据包丢包率的好坏;ping延迟越低越好,反之越高则代表网络质量差、线路老化或有干扰,网络问题均会对节点跑量存在影响;此类问题可反馈运营商协查处理。

3.7.3 节点负载维度
1、CPU状态:
展示当前查询时间范围内,该节点的设备CPU使用情况;如果CPU使用率(%)很高,则需分析是否因设备性能不足,如果第三方使用CPU(%)很高,则需排查是否有其他消耗cpu资源的服务,或是否存在设备混跑导致的问题。

2、内存状态:
展示当前查询时间范围内,该节点的设备内存使用情况;可分析该节点设备的总内存数,与剩余可用内存数的占比情况。

3.7.4 节点存储维度
1、存储性能:
展示当前查询时间范围内,该节点程序对数据盘的数据读取耗时90分位值水平情况;该指标衡量存储盘的性能是否优秀,读耗时越低越越好。如果存储不可用次数(次)大于1次,则需分析磁盘是否存在物理损坏等问题;如果该指标读耗时很高,则需排查是否存在寿命问题导致性能下降,可更换高性能数据盘解决。

2、存储容量:
展示当前查询时间范围内,该节点程序对应的数据盘剩余的、可被yfnode插件所缓存使用的可用存储空间。

3.7.5 节点拨号维度
1、AD拨号异常:
展示当前查询时间范围内,该拨号类型的节点存在拨号失败或异常的情况(如果有异常的情况下),同时将展示相关异常日志信息供分析处理。

四、供应商数据支撑
4.1 告警信息示例及处理办法
•网络拨号离线告警
示例:

处理方法:彼度云云侧手动拨号测试,如有异常反馈给供应商处理
4.2 供应商API文档
供应商API文档修订记录
日期 | 修订内容 |
2020-08-07 | 增加设备状态详情接口 |
2020-09-25 | 设备状态详情新增字段 |
2020-11-20 | 设备维度流量,设备维度状态两个接口去掉返回参数 total;设备状态详情新增返回参数domain |
2021-04-02 | 设备状态详情新增local_ip(内网IP)字段 |
2021-04-20 | 增加各接口描述 |
2022-04-08 | 新增2.5节点质量报告汇总接口;废弃2.4设备状态详情 |
TOC
4.2.1 概览
•接口结构
接口地址:
•http://api.yfcloud.com
•接口认证
认证方式
•Header中需带上Accesstoken: <管理凭证>
•鉴权失败将返回状态码401,域名权限不够将返回状态码403
管理凭证生成:
1.抽取请求URL中
>示例:signingStr = “
1.使用SecertKey对上一步生成的原始字符串计算HMAC-SHA1签名(小写)
>示例:sign = hmac_sha1(signingStr, “
1.对签名进行URL安全的Base64编码
>示例:encodedSign = urlsafe_base64_encode(sign)
1.将AccessKey与encodedSign用 : 连接起来,并放入请求Header中
>示例:Accesstoken = “
特殊说明:
•urlsafe_base64_encode 是 URL 安全的 Base64 编码,算法是将 ‘+’, ‘/’, ‘=’, ‘n’ 替换成不会转码的字符, 再进行 base64 编码,具体算法是:
1.’+’替换为 - (减号)
2.’/’替换为 _ (下划线)
3.‘=‘和’n’ 替换为 '' (空字符)
signingStr中的n,指的是在计算hmac_sha1中要计算的URL输入完毕后进行回车
•AccessKey和SecertKey需要用户自行登录控制台(console)创建,步骤:登录控制台 ->页面右上角选择安全认证/Access Key -> 新建Access Key
4.2.2 厂商维度流量 - 按天
•接口描述
可用于厂商维度的按天结算、分运营商结算。
GET api.yfcloud.com/edge/api/v2/day/flow
1.只允许查询最近90 天的数据
2.查询时间跨度应小于 1 个月
3.开始时间与结束时间不能相同
•请求参数说明
参数 | 是否必选 | 类型 | 说明 |
start_time | 是 | string | 开始时间 格式:年月日,如: 20160901 |
end_time | 否 | string | 结束时间,格式与开始时间一致,不传则取第二天 0 点, 开始时间与结束时间不能相同,返回数据中不包含结束时间。 |
refer | 是 | string | 厂商标识 |
•返回示例
{ "errorCode": 0, "errorMsg": "", "data": [ { "time": "20200501", "flow": 230680065, "mobile_flow": 0, "unicom_flow": 67712979, "telecom_flow": 162967086 }, { "time": "20200504", "flow": 133272328, "mobile_flow": 0, "unicom_flow": 54778950, "telecom_flow": 78493378 } // .... ] } |
•返回参数说明
参数 | 类型 | 说明 |
time | string | 时间 格式:年月日,如: 20160901 |
flow | long | 盒子/路由器上传流量,KB |
mobile_flow | long | 移动运营商上传的流量, KB |
unicom_flow | long | 联通运营商上传的流量, KB |
telecom_flow | long | 电信运营商上传的流量, KB |
4.2.3 设备维度流量 - 5 分钟
•接口描述
此接口提供每5分钟设备维度流量,可聚合成厂商维度的5分钟流量明细数据,计算成95数据;或以设备维度数据跟C端用户结算。
GET api.yfcloud.com/edge/api/v2/minute/flow
1.查询开始时间需要在 24 小时以内
2.查询时间跨度应小于等于 1 小时
•请求参数说明
参数 | 是否必选 | 类型 | 说明 |
start_time | 是 | string | 开始时间 格式:年月日-时分,如: 20160901-0000 |
end_time | 否 | string | 结束时间,格式与开始时间一致,默认取当前时间。返回数据中不包含结束时间。 |
refer | 是 | string | 厂商标识 |
per_page | 否 | int | 每页查询的盒子数量,不传递该参数则默认取所有盒子, 如果盒子数量超过 10000(响应时间和数据会较大),推荐使用 per_page 获取, per_page 最大允许设置为 1000 |
page | 否 | int | 当前页码数 |
•返回示例
{ "errorCode": 0, // 0 表示正常 "errorMsg": "", "data": { "0810740A003B": [ // 0810740A003B 为盒子 id { "create_time": "20190523-0400", "flow": 12345, "dev_ip": "111.111.111" }, { "create_time": "20190523-0405", "flow": 54321, "dev_ip": "111.111.111" }, // ... ], // ... }, "meta": { // 仅在传递 per_page 时存在该参数 "total": 3240, "per_page": 10, "page": 800 } } |
•返回参数说明
参数 | 类型 | 说明 |
create_time | string | 时间, 年月日-时分 |
dev_ip | string | 设备 ip |
flow | long | 盒子/路由器上传流量,KB |
total | int | 总条数 由于无法准确统计,从当前版本开始该字段废弃,如果使用分页查询,请一直遍历到 data 无数据为止 |
per_page | int | 每页条数 |
page | int | 当前页码数 |
4.2.4 设备维度状态 - 5 分钟
•接口描述
主要用于查询设备的在线情况和当时网络NAT类型
GET api.yfcloud.com/edge/api/v2/minute/status
1.查询开始时间需要在 24 小时以内
2.查询时间跨度应小于等于 1 小时
•请求参数说明
参数 | 是否必选 | 类型 | 说明 |
start_time | 是 | string | 开始时间 格式:年月日-时分,如: 20160901-0000 |
end_time | 否 | string | 结束时间,格式与开始时间一致,默认取当前时间,返回数据中不包含结束时间。 |
refer | 是 | string | 厂商标识 |
per_page | 否 | int | 每页查询的盒子数量,不传递该参数则默认取所有盒子, 如果盒子数量超过 10000(响应时间和数据会较大),推荐使用 per_page 获取, per_page 最大允许设置为 1000 |
page | 否 | int | 当前页码数 |
•返回示例
{ "errorCode": 0, // 0 表示正常 "errorMsg": "", "data": { "0810740A003B": [ // 0810740A003B 为盒子 id { "create_time": "20190523-0400", "nat": 0, "total_count": 5 }, { "create_time": "20190523-0405", "nat": 5, "total_count": 5 }, // ... ], // ... }, "meta": { // 仅在传递 per_page 时存在该参数 "total": 3240, "per_page": 10, "page": 800 } } |
•返回参数说明
参数 | 类型 | 说明 |
create_time | string | 时间, 年月日-时分 |
total_count | int | 5分钟内盒子的在线次数,粒度为1分钟 |
nat | int | 网络类型 |
total | int | 总条数由于无法准确统计,从当前版本开始该字段废弃,如果使用分页查询,请一直遍历到 data 无数据为止 |
per_page | int | 每页条数 |
page | int | 当前页码数 |
4.2.5 设备状态详情(废弃)
•接口描述
此接口提供了设备的实时数据,可用于设备运营情况的分析和监控。
GET api.yfcloud.com/edge/api/v2/details?dev_id=xxx
•请求参数说明
参数 | 是否必选 | 类型 | 说明 |
refer | 是 | string | 厂商标识 |
dev_id | 是 | string | 盒子 id ,多个盒子 id 使用英文逗号分隔 |
•返回示例
{ "errorCode": 0, "errorMsg": "", "data": { "DCD87C047113": { "cpu_rate": 0.44, "cpu_score": 0, "delete_hour_task_count": 0, "disk_cpu_rate": 0.09, "disk_size": 36393, "free_memory": 254, "isp": "电信", "launch_hour_count": 6, "level": "middle", "level_case": "CPU性能|在线率", "nat": 0, "network_change": 0, "offline_rate": 0.0307, "other_cpu_rate": 0.31, "province": "四川", "remote_ip": "171.216.88.155", "status": "正常服务", "test_bandwidth": 3565, "total_disk_size": 41069, "total_memory": 500, "updated_at": 1600426761, "upload_bandwidth": 419, "version": 153, "writable": true, "local_ip":"192.168.1.2" } // .... } } |
•返回参数说明
参数 | 类型 | 说明 |
nat | int | nat 类型 |
writable | bool | 磁盘是否可写 |
disk_size | int | 彼度云云占用磁盘空间,单位 MB |
total_disk_size | int | 磁盘总空间,单位 MB |
free_memory | int | 剩余内存,单位 MB |
total_memory | int | 总内存, 单位 MB |
test_bandwidth | int | 测速带宽,单位 KB / s |
upload_bandwidth | int | 服务带宽,单位 KB / s |
network_change | int | 网络波动次数 |
cpu_rate | float | 彼度云云 cpu 使用率 |
other_cpu_rate | float | 其他 cpu 使用率 |
disk_cpu_rate | float | 磁盘 cpu 使用率 |
cpu_score | string | cpu 评级, 好,较好,一般,较差,很差,未知 |
offline_rate | float | 离线率 |
level | string | 评级, high(高),middle(中),low(低), bad(差),disable(禁用) |
level_case | string | 专业版,评级原因,如: CPU性能|在线率 |
status | string | 专业版,服务状态, 如: 非升级重启|c磁盘不可读写 或 正常服务 |
delete_hour_task_count | int | 24 小时磁盘异常次数,取值范围 1 ~ 24 |
launch_hour_count | int | 72 小时启动次数 |
remote_ip | string | 出口 ip |
province | string | 省 |
isp | string | 运营商 |
version | int | 版本号 |
updated_at | int | 设备状态详情更新时间 |
domain | string | 使用https服务用户的域名 |
local_ip | string | 设备内网IP |
4.2.6 节点质量报告汇总 - 1 天
•接口描述
此接口提供了渠道每天的节点质量汇总数据,可用于渠道排查中低节点问题。当天 10 点过后可查询到前一天的数据
GET api.yfcloud.com/edge/api/v2/day/quality/summary?refer=xxx&time=20220322
•请求参数说明
参数 | 是否必选 | 类型 | 说明 |
refer | 是 | string | 设备渠道 |
time | 是 | string | 格式:年月日,如: 20160901 注: 当天 10 点过后可查询到前一天的数据 |
•返回示例
{ "errorCode": 0, "errorMsg": "", "data": { "overview": { "createTime": 1646323200000, "refer": "xx_node", "invalidUid": 12, "totalUid": 123, "qualityUid": 12, "totalAvailableMaxUpSpeed": 13.05, "mobileAvailableMaxUpSpeed": 10.00, "unicomAvailableMaxUpSpeed": 1.00, "telecomAvailableMaxUpSpeed": 1.00, "totalMaxUpSpeed": 12.00, "invalidMaxUpSpeed": 12.00, "qualityMaxUpSpeed": 12.00 }, "details": { "notWritableNodes": { "count": 0, "downloadUrl": "" }, "uniqUid": { "count": 123, "downloadUrl": "http://xx.csv" }, "errDiskNodes": { "count": 123, "downloadUrl": "http://xx.csv" }, "notIspnodes": { "count": 123, "downloadUrl": "http://xx.csv" }, "pingLossNodes": { "count": 123, "downloadUrl": "http://xx.csv" }, "pingNodes": { "count": 123, "downloadUrl": "http://xx.csv" }, "refer": { "count": 123, "downloadUrl": "http://xx.csv" }, "limitUid": { "count": 123, "downloadUrl": "http://xx.csv" }, "detectLossNodes": { "count": 123, "downloadUrl": "http://xx.csv" }, "invalidDiskSizeNodes": { "count": 123, "downloadUrl": "http://xx.csv" }, "invalidMemNodes": { "count": 123, "downloadUrl": "http://xx.csv" }, "netChangeNodes": { "count": 123, "downloadUrl": "http://xx.csv" }, "cpuScoreHighNodes": { "count": 123, "downloadUrl": "http://xx.csv" }, "otherCpuHighNodes": { "count": 123, "downloadUrl": "http://xx.csv" }, "readTimeNodes": { "count": 0, "downloadUrl": "" }, "upSpeedToCpuScoreRateNodes": { "count": 123, "downloadUrl": "http://xx.csv" }, "cfgSpeedTotestSpeedRateNodes": { "count": 123, "downloadUrl": "http://xx.csv" }, "launchNodes": { "count": 123, "downloadUrl": "http://xx.csv" }, "notNat0Nodes": { "count": 123, "downloadUrl": "http://xx.csv" }, "offlineNodes": { "count": 123, "downloadUrl": "http://xx.csv" }, "lowUpSpeedNodes": { "count": 123, "downloadUrl": "http://xx.csv" }, "upSpeedToDiskSizeRateNodes": { "count": 123, "downloadUrl": "http://xx.csv" }, "readSlowRateNodes": { "count": 123, "downloadUrl": "http://xx.csv" }, "dialFailNodes": { "count": 123, "downloadUrl": "http://xx.csv" }, "readSlowAvgTimeNodes": { "count": 123, "downloadUrl": "http://xx.csv" } } } } |
•返回参数说明
参数 | 类型 | 说明 |
参数 | 类型 | 说明 |
refer | string | 设备渠道 |
createTime | int | 0点时间戳 |
invalidUid | int | 无效节点数 |
totalUid | int | 总节点数 |
qualityUid | int | 低质节点数 |
totalMaxUpSpeed | float | 总带宽(Gb/s) |
invalidMaxUpSpeed | float | 无效带宽(Gb/s) |
qualityMaxUpSpeed | float | 低质带宽(Gb/s) |
totalAvailableMaxUpSpeed | float | 总中高质带宽(Gb/s) |
mobileAvailableMaxUpSpeed | float | 移动中高质带宽(Gb/s) (移动有效带宽) |
unicomAvailableMaxUpSpeed | float | 联通中高质带宽(Gb/s) (联通有效带宽) |
telecomAvailableMaxUpSpeed | float | 电信中高质带宽(Gb/s) (电信有效带宽) |
notWritableNodes | dict | 24小时磁盘不可写小时数>2 |
errDiskNodes | dict | 24小时磁盘文件校验错误小时数>2 |
notNat0Nodes | dict | 24小时NAT非0小时数>2 |
dialFailNodes | dict | 拨号失败小时数>1 |
notIspnodes | dict | 非三大运营商(指非电信、联通、移动) |
readTimeNodes | dict | 午晚高峰磁盘读耗时90分位大于200ms小时数>2 |
readSlowRateNodes | dict | 午晚高峰磁盘读慢速率>15% |
readSlowAvgTimeNodes | dict | 午晚高峰磁盘读慢速平均值大于200ms小时数>2 |
launchNodes | dict | 午晚高峰时间段重启小时数>1 |
offlineNodes | dict | 午晚高峰时间段每小时在线率低于90%的小时数>1 |
netChangeNodes | dict | 午晚高峰时间段网络变化小时数>1 |
pingNodes | dict | 午晚高峰时间段ping大于80小时数>2 |
pingLossNodes | dict | 午晚高峰时间段丢包率大于>5%小时数>2 |
detectLossNodes | dict | 午晚高峰时间段访问不可达小时数>2 |
otherCpuHighNodes | dict | 午晚高峰时间段非彼度云云服务占用cpu高小时数>2 |
invalidMemNodes | dict | 彼度云云服务可用内存不足小时数 |
cpuScoreHighNodes | dict | cpu消耗系数>1500 |
upSpeedToCpuScoreRateNodes | dict | 出口带宽与cpu消耗系数匹配带宽比率>2.0 |
upSpeedToDiskSizeRateNodes | dict | 出口带宽与存储容量匹配带宽比率>2.0 |
cfgSpeedTotestSpeedRateNodes | dict | 配置出口带宽与实际测试带宽比率>1.5 |
invalidDiskSizeNodes | dict | 彼度云云可用存储容量低于4GB节点数 |
lowUpSpeedNodes | dict | 出口带宽低于16Mb/s |
count | int | 节点数 |
downloadUrl | string | 节点 uid 下载地址, csv 文件格式。count == 0 时 downloadUrl == "" |
4.3 供应商后台功能介绍
1)概览
概览主要包含如下几个方面信息:
•本月计费带宽
•较上月同时段百分比
•计费方式
•今日带宽走势图

2)统计分析
统计分析主要包含如下几个方面信息:
•流量带宽:可以根据渠道,盒子ID,IP,地区及运营商查询带宽情况

•设备概览:可以根据渠道,地区及运营商查询设备状态及设备分布

•设备诊断:可以根据时间段,渠道,盒子ID查询设备相关信息,如诊断概览,在线状态,出口带宽,网络变化,负载状态,存储状态,AD拨号异常信息等

3)资源分析
提供了资源列表,根据渠道提供了相关质量报告的下载通道

4.4 质量报告示例及处理办法
4.4.1质量报告示例:
厂家可自行在供应商后台的【检测优化-->资源列表】中下载自有渠道的质量报告;(计算前一天数据结果做的报表报告)

4.4.2质量报告处理办法:
1、可在质量报告的子工作簿【节点质量总览】,查阅渠道的节点数与带宽分类信息;

2、在子工作簿【质量指标数据明细】中,可查阅详细的存在质量问题的指标分项与对应的节点数,同时可在C列下载对应指标的节点,可结合后台的【统计分析-->设备诊断】进行单点分析;

3、不同的质量指标,有不同的建议解决方案,可结合子工作簿【质量指标说明】或 下文的【4.5 质量指标说明】进行对应指引来进行节点质量优化与处理。
4.5 质量指标说明
大类 | 细类 | 改进方式与备注 | 供应商质量检测数据 |
无效类节点 | 24小时磁盘不可写小时数>2 | 说明:彼度云云服务每小时计算一次磁盘是否可写,如不可写, 则计为此小时磁盘不可用,1天累计超过2个小时磁盘不可用,则计此节点磁盘异常。 | notWritableNodes |
24小时磁盘文件校验错误小时数>2 | 说明:彼度云云服务读取磁盘内容后,会做内容检验,如果检验异常,则计为磁盘存储异常, 1天累计超过2个小时出现过磁盘存储异常,则计此节点异常。 | errDiskNodes | |
24小时NAT非0小时数>2 | 说明:彼度云云服务会每小时探测网络类型(NAT非0)如果NAT非0,则计为此小时网络NAT非0。1天累计超过2个小时都出现过网络NAT非0,则计此节点网络异常。 | notNat0Nodes | |
拨号失败小时数>1 | 说明:AD拨号类设备拨号失败。 | dialFailNodes | |
非三大运营商(指非电信、联通、移动) | 说明:彼度云云服务只对三大运营商调度。 | notISPNodes | |
质量类节点 | 午晚高峰磁盘读耗时90分位大于200ms小时数>2 | 说明:彼度云云服务计算午晚高峰磁盘读取耗时,并取值所有读磁盘请求耗时的90分位值。如果90分位值超过200ms的小时数>2,则计此节点异常。 | readTimeNodes |
午晚高峰磁盘读慢速率>15% | 说明:彼度云云服务统计午晚高峰磁盘读取耗时,如果单次读磁盘耗时超过20ms,则计此次读磁盘为读慢速,如果读慢速次数占比超过15%, 则计此节点异常。 | readSlowRateNodes | |
午晚高峰磁盘读慢速平均值大于200ms小时数>2 | 说明:彼度云云服务统计午晚高峰磁盘读取耗时,计算所有读磁盘耗时超过20ms的平均值, 如果平均值大于200ms的小时数>2, 则计此节点异常。 | readSlowAvgTimeNodes | |
午晚高峰时间段重启小时数>1 | 说明:彼度云云服务被异常重启。1天累计有超过连续或间隔3个小时都出现过异常重启,则计为此节点不可用。 | launchNodes | |
午晚高峰时间段每小时在线率低于90%的小时数>1 | 说明:彼度云云服务会每小时持续通过心跳计算节点的在线率。如一个小时内在线率低于90%,则计为此小时节点在线率异常。1天累计超过2小时在线率异常,则计此节点不可用。 | offlineNodes | |
午晚高峰时间段网络变化小时数>1 | 说明:彼度云云服务会每小时探测网络类型(NAT非0)与网络出口IP是否变化,如果变化,则计为此小时网络变化。1天累计超过2个小时都出现过网络变化,则计此节点网络异常。 | netChangeNodes | |
午晚高峰时间段ping大于60小时数>2 | 说明:彼度云云服务会持续做ping,以探测网络延时。如果午晚高峰期ping超过60ms的小时数>2,则计此节点网络异常。 | pingNodes | |
午晚高峰时间段丢包率大于>5%小时数>2 | 说明:彼度云云服务会持续做ping,以探测网络丢包率。如果午晚高峰期丢包率超过5%的小时数>2,则计此节点网络异常。 | pingLossNodes | |
午晚高峰时间段访问不可达小时数>2 | 说明:彼度云云服务会对节点做持续网络可达性探测。如果每个小时失败比例超过2%. 则计为此小时网络不可达。1天累计超过3个小时都出现过网络不可达,则计此节点网络异常。 | detectLossNodes | |
午晚高峰时间段非彼度云云服务占用cpu高小时数>2 | 说明:小节点(mips/arm)非彼度云云插件占用cpu超过50%。 | otherCpuHighNodes | |
限制类节点 | 彼度云云服务可用内存不足小时数 | 说明:彼度云云服务可用内存低于64MB或低于10%. | invalidMemNodes |
cpu消耗系数>1500 | 说明:cpu消耗系数定义:每个https用户请求并发消耗的万分位cpu, 如cpuScore=1000表示每个请求需要消耗10%的cpu,cpuScore越大表示消耗的cpu越高,也表示cpu能力越差。 | cpuScoreHighNodes | |
出口带宽与cpu消耗系数匹配带宽比率>2.0 | 说明:cpu消耗系数匹配带宽(KB/s)=(10000/cpu消耗系数) * (150KB/s)。其中:10000/cpu消耗系数表示跑满cpu能服务的并发数。其中的乘数150表示每个请求按平均150KB/s核算。 | upSpeedToCpuScoreRateNodes | |
出口带宽与存储容量匹配带宽比率>2.0 | 说明:彼度云云服务对存储容量最低要求为每1MB/s带宽至少要求4 GB以上彼度云云可实际使用存储容量(不包括系统或供应商要求必须保留的系统空闲存储容量)。 | upSpeedToDiskSizeRateNodes | |
配置出口带宽与实际测试带宽比率>1.5 | 说明:配置出口带宽与实际测试带宽比率超过1.5 ; | cfgSpeedTotestSpeedRateNodes | |
彼度云云可用存储容量低于4GB节点数 | 说明:彼度云云插件要求最低可用存储容量不低于4GB. | invalidDiskSizeNodes, 单位MB | |
出口带宽低于16Mb/s | 说明:彼度云云服务对节点出口带宽的最低要求为16Mbps. | lowUpSpeedNodes | |
