异数OS 2017 DPDK 峰会观后感
1.DPDK in Container
使用虚拟网卡设备技术为每一个容器分配一个IP 网卡适配器(queue)。容器技术可以解决虚拟机技术中虚拟机过于臃肿,难于热迁移的问题,可能可以代替美团OVS方案,解决OVS热迁移方案不足的问题。
2.F-Stack
F-Stack拒绝有意义的提问,带来了现场的一番哄笑,F-Stack违背了DPDK最初的技术方向,其提供了POSIX接口被迫使用了Linux线程IO模型,导致其能力只能达到linux协议栈RSS 无锁优化后的1.4倍,这是mtcp ans 也存在的同样问题,而完全放弃Linux线程IO模型自己实现OS任务调度的seastar则是F-Stack mtcp ans 性能的5-10倍。
F-Stack拒绝了长连接性能,技术上讲这主要是因为著名的C10K问题,在linux windows等主流操作系统中,在无法做QOS的情况下,大量长连接会很不稳定,导致雪崩问题,C10K问题不解决,则高效的消息推送方案则无法实施,比如未来的websocket技术,IM领域的360Push Whatsapp 环信等应用场合就无法做到,长连接性能直接关系到IM的运营成本,不知道微信是否有用F-Stack,具体可以参看Whatsapp “零”运营技术,而这一块内容是异数OS方案需要解决的问题重点。
F-Stack演讲者则用两个现实问题搪塞了技术问题,说腾讯的业务都是短链接业务,腾讯的业务平台都要使用linux生态,所以放弃了自研协议栈,这在技术上讲实际是一种退步。
F-Stack在Send时多出现了一次内存拷贝动作,这个问题在异数OS中则被解决,原理是用异数OS的惰性IO资源,利用可用的ring buffer,在ring buffer可用的时候调度TCP worker线程在ring buffer上直接进行发包渲染工作。
3.A Better Virtio towords NFV Cloud
高科技,不懂:)
4.SPDK
没详细听,感觉意义不是特别重大,因为应用系统中,磁盘IO压力不会特别高,而且存储是有寿命的,不宜频繁使用,好的系统设计,比如一些kv都是尽量少的提交持久化磁盘任务,所以更好的文件系统以及更好的持久化任务系统(OS)才是真正的重点。
5.性能调优
for循环优化在内存io密集型应用方面用不上,只能用在多层for循环重压力算法中,另外dpdk的内存预读是否有用,我这边使用的gcc的是没有用的,不管是连续方寸还是随机访问。
问及Hash 随机访存优化,演讲者就说去看vpp...要看的话就不要问了...
6. 美团OVS
美团OVS被人质问宿主机升级时,VM网卡断了间隔怎样处理,OVS本身并没有解决方案,难以热迁移,这其实是没有直接解决方案的,而且仅仅是一个大类问题的一个小问题,本质问题是VM网卡断了VM中的OS协议栈以及应用可能会面临雪崩和应用宕机,这个问题也是异数OS方案解决的重点问题。
7.DPDL
听的不太清楚,个人理解是RSS FDIR等技术并不能解决所有负载分流问题,所以需要诞生一种多核同时能处理一个ring的需求。因此原本的单生产者单消费者的ring需要被扩展设计出多生产者多消费者的ring,本来单生产者单消费者的ring是利用cache一致性协议无锁无atom的多核通讯,cache line内不需要保序,但需求变更后则会要求加锁保序。
提问者则有质疑,这样的情况加锁则意味着阻塞CPU核,最坏的自旋锁情况则是多核比单核还慢。
提问者的质疑异数OS提供了解决方案。
异数OS的虚拟交换机使用无锁无atom的多生产者多消费者的设计,用于LPC的实现,但必须配合异数OS使用,原理上讲,他还是利用cache 一致性协议,没有OS的情况,则只能自旋锁阻塞CPU核,但是有OS则可以在try无效时做线程切换动作,在Linux下,这两种锁都被应用实做以便于适应不同的情况,原因是linux的线程切换代价极高,所以直接决定了锁能够达到的频度,频度不高时可以使用线程切换的自旋锁,以便于充实CPU核,带来性能提升,但网卡ring的PMD频度很高,则不能用这种方式,而异数OS则可以用这个方案,原因是异数OS每盒最大线程切换能力可以达到50M。
8.intel 25Gbe Ethernet Adapter
个人理解,交换机领域功能不足,OS协议栈性能不济的情况下,限制了其推广。
9.DPDK Cryptodev Framework
提问者质疑延迟的问题,因为ring 要利用cache加速,不可能做大,因此延迟很敏感。
10.腾讯DDOS清洗
只讲了使用DPDK抓包,清洗算法未知,做到了90M的速度,所以猜测只是一些DPI,fastpath,不能做复杂的session清洗。
所以提问者立刻问了能不能做5层6层7层清洗,集群黑名单同步等问题,显然是无解的,所以现场再次哄笑。
DPDK社区群上有人怀疑腾讯来的人都是做技术运维的。
11.Low Latency Interrupt Mode PMD
回归到了一个经典问题,DPDK只看到了自己的问题,没发现别人玩不转,DPDK说我用用户层PMD绕开Linux内核协议栈,Linux说,没我你做不出协议栈,这个问题又再次出现了,在局部上讲,低流量压力下时PMD浪费CPU资源,引入中断模式的PMD可能会有效率,但是中断关系到OS的线程切换,为了减少线程切换,一般要用绑核以及本地化任务调度等技术,但中断显然打破了上层设计格局。
提问者大概的意思是中断速率和PMD速率是否可以自动根据网络流量做自适应调节,但没有得到直接答复,因为这可能超过了演讲者的问题理解范围。
异数OS则在这个问题上做了完整解决。
异数OS的PMD线程会被QOS做IOPS控制,在不同压力下可以自适应变化到1M 2M....10M,在try miss的情况下PMD线程会被QOS挂起,切换到其他就绪线程(包括idle降温线程),在IOPS资源可用时再被唤醒回来。
12.嵌入式交换机解决方案
交换机不是太懂:)
13.Panabit Support Millons Users in vBRAS
nat alg pppoe,听到孙总200W 2000W session管理以及OS这一概念后,本来以为找到同行了,但提问希望关注他们的OS特性如何处理雪崩等问题时,则被转移话题。
QQ技术群中 move经验丰富 测试过他们的产品,说syn异常时,链接资源无法被清理,只能reboot,那么说明他们应该没有OS来管理庞大的session 生命期,只是个fastpath,甚至连定时器都没有(定时器在海量链接时很耗资源)。
孙总的销售思路比研发在战略上肯定更加清晰,导致论战上的胜利。
如果有OS的话,有希望做应用业务级别精确的QOS,所以颠覆式创新比标准制定者(中兴华为)肯定更能获得希望,但他们的OS真做了吗?
14. DPDK PMD in LXC
上场论战太感人,在回味,所以没听。
15.Yuanshan DDOS清洗
降低的比腾讯要丰富些,但关键的清洗识别算法是保密的。
值得关注的是演讲者讲了一个冷笑话对全场主题做了一个有意义的总结,说一座山挡住wifi信号,然后愚公移山是否有意义来告诫参会者,每个人的理解可以不同,我的理解如下:
1. OVS等虚拟化等方案是否使问题变得更复杂,代价更高。
2. 标准制定者与颠覆式创新者之间,我们是否应该支持颠覆式创新者的做法(孙总的灵活QOS与中兴华为移动的QOS标准,F-stack的被现实大山压倒与seastar的丢弃包袱完全开创新世界)。
异数OS 2017 DPDK 峰会观后感的更多相关文章
- 异数OS谈发展国产操作系统的问题
异数OS谈发展国产操作系统的问题 为什么写本文 最近中兴被美制裁的问题以及红芯使用开源技术宣称国产自主技术引发了舆论不少对国产CPU以及国产操作系统自主技术的讨论,为什么我们国家有BAT,有原子弹,能 ...
- 异数OS 织梦师-云(五)-- 容器服务化,绿色拯救未来。
. 异数OS 织梦师-云(五)– 容器服务化,绿色拯救未来. 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 652 ...
- 异数OS 织梦师-Xnign(四)-- 挑战100倍速Nginx,脚踩F5硬件负载均衡
. 异数OS 织梦师-Xnign(四)– 挑战100倍速Nginx,脚踩F5硬件负载均衡 本文来自异数OS社区 github: https://github.com/yds086/HereticOS ...
- 异数OS国产CPU平台移植项目需求分析
异数OS国产CPU平台移植项目需求分析 目录 异数OS国产CPU平台移植项目需求分析 项目立项背景 项目需求分析 异数OS性能指标简介 1.TCP协议栈性能测试 2.异数OS-织梦师-水母 消息队列性 ...
- 异数OS 织梦师-水桶(三)-- RAM共享存储方案
. 异数OS 织梦师-水桶(三)– RAM共享存储方案 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 652455 ...
- 异数OS 织梦师-水母(一)--消息队列篇
异数OS 织梦师-水母(一)–消息队列篇 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 652455784 异数O ...
- 异数OS TCP协议栈测试(四)--网卡适配篇
异数OS TCP协议栈测试(四)–网卡适配篇 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 652455784 异 ...
- 异数OS TCP协议栈测试(三)--长连接篇
异数OS TCP协议栈测试(三)--长连接篇 本文来自异数OS社区 github: 异数OS-织梦师(消息中间件)群: 476260389 异数OS TCP长连接技术简介 说起长连接,则首先要谈对 ...
- 异数OS-织梦师-异数OS虚拟容器交换机(七) 走进4Tbps网络应用时代,加速5G应用真正落地
. 异数OS-织梦师-异数OS虚拟容器交换机(七) 走进4Tbps网络应用时代,加速5G应用真正落地 本文来自异数OS社区 github: https://github.com/yds086/Here ...
随机推荐
- P1048 数组中的逆序对
题目描述 在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对.输入一个数组,求出这个数组中的逆序对的总数. 输入格式 第一行包含一个整数 \(n\) ,表示数组中的元素个数 ...
- Java 趣事之 a=a++ 和 a=++a(转)
转自:https://blog.csdn.net/LovePluto/article/details/81062176 如果问 a++ 和 ++a 的区别,估计很多都能回答上来.a++ 是先取 a 的 ...
- 【p082】排座椅
Time Limit: 1 second Memory Limit: 50 MB [问题描述] 上课的时候总有一些同学和前后左右的人交头接耳,这是令小学班主任十分头疼的一件事情.不过,班主任小雪发现了 ...
- gitLab操作规范和项目流程
刚做完一个项目并且艰难得上线,对整个项目流程和gitLab规范 有了一些心得,给新来的同学普及一下. 最先产品会写一篇需求文档,咱们要先看需求文档对项目有一个大致了解,然后产品喊后端.ui.前端 一 ...
- SVG路径无法识别问题
SVG 路径不规范无法识别 使用 (?<=(,|-))\. 替换为0. 即可
- HDU4609 FFT+组合计数
HDU4609 FFT+组合计数 传送门:http://acm.hdu.edu.cn/showproblem.php?pid=4609 题意: 找出n根木棍中取出三根木棍可以组成三角形的概率 题解: ...
- Vijos1917 艾酱最喜欢的数字 [求绝对众数]
1.题意:第一行一个数字N,表示一共有多少个数字,第二行N个数字,保证其中至少有一个数字出现次数超过一半,任务是求出这个出现最多的数. 2.分析:本题是明显的求众数的问题,常规思路为开一个大数组,在读 ...
- 以windows服务方式快速部署免安装版Postgres数据库
目录 以windows服务方式快速部署免安装版Postgres数据库 1.下载Postgresql数据库免安装包 2.安装环境准备及验证 解压文件 测试环境依赖 3.创建并初始化数据目录 创建数据目录 ...
- 第三阶段:3.Web端产品设计:1.以用户为中心的产品设计2
从功能到体验.提供不同的附加值.
- springboot 动态修改定时任务
1.静态定时 1)启动类加上注解@EnableScheduling @EnableAsync @EnableScheduling @SpringBootApplication @MapperScan( ...