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的丢弃包袱完全开创新世界)。

最新文章

  1. CentOS 7配置LNMP开发环境及配置文件管理
  2. C++常考面试题汇总
  3. Django 后台管理设置(admin.py)
  4. Eclipse如何解决启动慢
  5. K8 系统中省市县数据表的设计可以反映出什么? 通过一个基础业务表的设计品味软件系统的整体架构
  6. ios NSURLSession(iOS7后,取代NSURLConnection)使用说明及后台工作流程分析
  7. 细说C#多线程那些事 - 线程同步和多线程优先级
  8. Sqli-labs less 48
  9. Linux内存点滴:用户进程内存空间
  10. keypress和keydown事件及keyCode和keyChar
  11. JAVA并发实现四(守护线程和线程阻塞)
  12. C语言日期时间标准库
  13. Search in Sorted Array,Search in Rotated Sorted Array,Search in Rotated Sorted ArrayII
  14. phpredis扩展
  15. shell-3
  16. 使用URLConnection调用axis1.4开发的webservice
  17. 通过改进团队流程最大限度发挥Scrum的优势
  18. A network-related or instance-specific error occurred while establishing a connection to SQL Server
  19. 阿里云RDS数据库改造迁移方案
  20. [原]win10下编译lua5.3.4

热门文章

  1. P1035 台阶问题二
  2. Google Java编程风格指南(中文+原始)
  3. 2019-9-20-SharpDx-的代替项目
  4. Linux 内核存取 I/O 和内存空间
  5. 微信小程序开发踩坑之旅
  6. LeetCode111_求二叉树最小深度(二叉树问题)
  7. IDEA比较实用的插件之翻译插件(Translation)
  8. pytorch :: Dataloader中的迭代器和生成器应用
  9. 前端-jQuery介绍
  10. [Windows10]记一次修复注册表相关血案:该文件没有与之关联的应用来执行该操作。请安装应用,若已经安装应用,请在“默认应用设置”页面中创建关联。