系統網絡優化能夠有兩方面的工做能夠作:1 繞開內核(bypass);2 用硬件替代軟件(offload)。html
具體包括:linux
1. 繞開內核:git
2. 用硬件替代:github
爲何要作兩方面的工做呢?主要緣由能夠歸結爲:緩存
1. UNIX通過設計和優化,目前它的主要任務是支持多個進程同時運行,而且避免任何進程由於缺乏資源而長時間掛起。 可是在高頻交易領域,咱們但願某些特定的進程處理每條消息的響應時間快,延遲波動小,而不須要所在機器上全部進程的平均性能很好。網絡
2. TCP/IP協議棧被優化爲防止連接丟失和有效的利用帶寬。性能
目前已經有不少成熟的解決方案能夠用了,他們是:優化
這些解決方案每一個都有他們本身的解決思路。ui
參考文章:spa
http://ttthebear.blogspot.com/2008/07/linux-kernel-bypass-and-performance.html
<Kernel in the Way Bypass and Offload Technologies> -- Christoph Lameter
http://lukego.github.io/blog/2013/01/04/kernel-bypass-networking/