原创 all services run in userspace container network

container network 全部bypass kernel。全部跑在用戶態。    

原创 dpdk-ans support 5g upf

dpdk-ans 支持5g upf 數據面轉發。單機小包達到40g pps轉發性能。

原创 基於dpdk協議棧的nginx性能

- dpdk-nginx CPS performance ``` CPU: Intel(R) Xeon(R) CPU E5-2683 v3 @ 2.00GHz NIC:82599ES 10-Gigabit SFI/SFP+ Networ

原创 Linux中線程與CPU核的綁定

最近在對項目進行性能優化,由於在多核平臺上,所以瞭解了些進程、線程綁定cpu核的問題,在這裏將所學記錄一下。     不管是線程還是進程,都是通過設置親和性(affinity)來達到目的。對於進程的情況,一般是使用sched_setaff

原创 原子操作(atomic operation)

深入分析Volatile的實現原理 引言 在多線程併發編程中synchronized和Volatile都扮演着重要的角色,Volatile是輕量級的synchronized,它在多處理器開發中保證了共享變量的“可見性”。可見性的意思是

原创 dpdk mbuf

void rte_pktmbuf_init(struct rte_mempool *mp,__attribute__((unused)) void *opaque_arg,void *_m,__attribute__((unused))

原创 DPDK原生TCP/IP stack架構

1. dpdk介紹 dpdk是 intel 公司發佈的一款數據包轉發處理套件. 它運行於linux userspace。這組套件包括了linux 進程所需要的大部分組件。 但缺少一個傳統的tcp/ip 協議棧。其他應用程序沒辦法方便的通過

原创 RCU(Read-Copy Update)

RCU(Read-Copy Update) 2008-08-01 21:52:42 分類: LINUX RCU(Read-Copy Update),對於被RCU保護的共享數據結構,讀者不需要獲得任何鎖就可以訪問它,但寫者在訪問它時首先

原创 RCU

定義在頭文件linux/rcupdate.h中;一、RCU原理 RCU,全名Read-Copy-Update(讀-拷貝-更新);對於被RCU所保護的共享資源,讀執行單元不需要獲得任何鎖就可以訪問到它,也不需要使用原子指令,而且在除Alph

原创 vpp涉及的專利

Software Architecture The fd.io vpp implementation is a third-generation vector packet processing implementation specif

原创 all in userspace container network

container network 全部bypass kernel。全部跑在用戶態。    

原创 ans website

https://ansyun.github.io/ welcome comments.

原创 透過 Linux 內核看無鎖編程

非阻塞型同步 (Non-blocking Synchronization) 簡介 如何正確有效的保護共享數據是編寫並行程序必須面臨的一個難題,通常的手段就是同步。同步可分爲阻塞型同步(Blocking Synchronization)

原创 linux 網絡編程:epoll 的實例

 在前面已經經過了PPC、TPC、select之類( TPC就是使用進程處理data,TPC就是使用線程處理 ),前面兩個的缺點大家應該都是知道的是吧,對於select( 其實poll和他差不多 ),缺點是能同時連接的fd是在是不多,

原创 linux時鐘RTC,TSC,PIT,jiffies

1 基本概念 定時機制連同一些更可見的內核活動(如檢查超時)來驅使進程切換。 兩種主要的定時測量: 保存當前的時間和日期,以便能通過time(), ftime()和gettimeofday()系統調用把它們返回給用戶程序。維持定