→ kobe8112 : 看推文really累,why一直在非专有名词切换language09/12 18:05
推 allyourshit : 台式工程师绝对是晶晶体上身 竹科非常常见09/12 18:35
→ JoyRex : NONONO,至少不是为crystal而crystal09/12 19:04
→ Ekmund : 晶晶体 亮晶晶 0_<~*09/12 19:13
推 jeff40108 : 这个推文害我头好痛XD09/12 19:21
中英夹杂很常见吧 待过业界你就知道了
嘘 pikachupika : 科技业晶晶体是常态吧…09/12 22:32
推 dabochi : 话说Intel为了什么场景要搞一个能直通L3的方案啊09/12 22:41
因为网络传输效能一直不够啊
在高速网络下L1 L2存取次数、Cache miss都要津津计较
除此之外还有context switch、lock等等
探讨下去是可以开一门研究所必修课的(虽然现在学校肯教的老师不多就是了)
最著名的就是Intel DPDK跟RDMA
两个中心思想都是跳过Linux kernel的network stack
只是一个是利用userspace io另一个是offload 到网卡上
但是如此还不够
现有一般OS处理网速平均最多到1Mpps
换算大约是500Mbps~12Gbps之间
由此可见严苛条件下现有普及的TCP/IP socket是连1Gbps都跑不到的
然而满足10Gbps网络的最大频宽是14Mpps
所以DPDK引入了polling机制取代中断机制减少context switch、hugepage、使用了大量
的CPU专有指令集的API、DPDK flow director
programmer还得注意Cache miss、Data coherency、resource lcok
RDMA更激进
直接借由网络卡offload packet
其中rdma read跟write operation更是会将双方的memory addr给出来
但是因为CPU access memory的latency非常高
如果说packet一收到就马上塞进L3 cache就可以减少access时间
所以DDIO才有其价值
至于原文的攻击手法我不太清楚
不过RDMA是基于信任原则的连线
初始化时还得透过传统的socket 去开port
所以对一般DC应该不会有太大影响