Netfilter,iptables/OpenVPN/TCP guard:-(

我不会编程,但也不是一点都不会,我稍微会一些 :-)

本地自旋锁与信号量/多服务台自旋队列-spin wait风格的信号量

周日傍晚,我去家附近的超市(...)买苏打水,准备自制青柠苏打,我感觉我做的比买的那个巴黎水要更爽口。由于天气太热,很多人都去超市避暑去了,超市也不撵人,这仿佛是他们的策略,人过来避暑了,走的时候难免要买些东西的,就跟很多美女在公交地铁上看淘宝消磨时光,然后就下单了...这是多么容易一件事,反之开...

2015-07-28 05:39:17

阅读数:3407

评论数:0

TCP Segment Offload(TSO)的实现原理浅析

早上太燥热,突然想起三周前有人跟我交流了TSO的问题,我也描述了其原理,这个原理说来也是特别简单,无非就是靠网卡硬件来分段,计算checksum,从而解放CPU周期。其实只要说一个就够了,既然靠硬件来分段,那么只能由硬件来计算checksum了,因为你根本就不知道硬件的分段细节,所以你也没法在分段...

2015-07-25 11:57:41

阅读数:5679

评论数:3

IP网络,光网络以及轨道交通的高速卸载随想

凌晨3点钟,半夜睡眼朦胧,忽然听到左右两耳嗡嗡,身下的榻榻米垫沙沙作响,以为在梦境,然而睁眼清醒过来,发现并没有看见什么,依然在黑夜,于是确认这不是在在梦。于是开灯,发现一只蟑螂趴在垫子上,两只蚊子却早已不知所踪。旁边睡着小小,我怒抓起蟑螂跑到卫生间好一顿蹂躏,然后本想继续梦里那些个没有完成的各种...

2015-07-24 05:39:43

阅读数:3835

评论数:0

基于天然概率的无需人为平衡的skiplist的美之展现

任何事情都无法阻挡我对一种简单之美的由衷惊叹。半夜思索,无法入眠,索性起床看会书,关于中东文明的,可是又看不进去,也许是潮热的原因吧...还不如静下心来写一篇意识流文章,我指的是不用思考的那种,我已经被近东,中东的错综复杂的历史搞的有点烦了,那真是太难了。然而你能想象我指的那个不用思考的东西是一个...

2015-07-22 06:01:51

阅读数:6548

评论数:0

路由器,防火墙的角色

不要在网络设备中show算法,赶紧让数据包通过,否则扣留。网络设备永远都是数据包要快速离开的地方,赶紧走,越快越好。我说这话可能有点矛盾,快速离开没有可以show的算法怎么能行?!问题是,不该你做的事就别做,你根本就不是一个专业防火墙,干嘛搞什么垃圾iptables!把你自己能做的工作,做好,sh...

2015-07-19 22:02:58

阅读数:3080

评论数:0

硬件处理和软件处理之间的异同与边界

今天给一朋友回复邮件,主要内容是我最近两天的一个DxR Pro++的固化问题,他好像不明白我为什么一直避开查找树,其实我自己的也不明白,只是知道该避开,也就避开了,并且这还不够,同时避开的还有各种其它的查找,排序,hash算法,几乎是一切算法都尽量让我避开了。所以,最终,我的DxR Pro固化设计...

2015-07-19 21:50:24

阅读数:6640

评论数:2

贵族股份制与雇佣文官制

宋朝是中华第一次被彻底毁灭的一个朝代,接下来的时代,中华被一次次毁灭,被外族毁灭!知道为什么吗? 宋之前,汉唐自不必说,就算五胡乱华时期,中国实行的是贵族股份制,国家有武将的一杯羹,他们不是为了工资而战斗,而是为了分红,为了荣耀而流血,因此在五胡乱华最血腥的年代,中国北方全面沦陷后虽在南方偏安一隅...

2015-07-19 08:40:56

阅读数:2448

评论数:1

硬件路由转发原理浅析-清晨补充

由于昨晚实在太困了,解释问题的时候眼睛就花了,脑子也短路了。早上起来,发现家人都还在睡,就想继续述说昨晚没有说带劲的东西了。我的解释图再次给出我的硬件转发原理图:请注意,没有任何优化,你可以试着用一些小技巧将其进一步的优化,也可以直接用标准的TCAM来映射它。此图里,我详细展示了“最长前缀”逻辑是...

2015-07-19 08:08:09

阅读数:7373

评论数:0

硬件路由转发原理浅析

有人问我,对于路由转发,硬件转发表的性能真的要超出软件查表比如Linux系统很多吗?我怎么回答呢?给出数据吗?我没有数据,因为我的本职不是做这一块的。给出理论吗?恐怕我也没那口才。画个图?我发现我系统没有安装画逻辑电路的工具。那怎么办?这个问题的答案我真真在心里,只是难于言表,于是乎,我采用手绘图...

2015-07-18 23:41:07

阅读数:11667

评论数:14

一个Linux内核的自旋锁设计-接力嵌套堆栈式自旋锁

锁的开销锁的开销是巨大的,特别是对于多核多处理来讲。       引入多处理,本身就是为了将并行化处理以提高性能,然而由于存在共享临界区,而这个临界区同时只能有一个线程访问(特别是对于写操作),那么本来并行的执行流在这里被串行化了,形象地看,这里好像是宽阔马路上的一个瓶颈,由于串行化是本质上存在的...

2015-07-17 06:55:24

阅读数:2979

评论数:0

Linux软防火墙ACL匹配的优化点

首先,请求不要再诬陷Netfilter!虽然它有一些固有性能损耗,但敬请不要将iptables和Netfilter等同,如果你要抓元凶,请直接说iptables,而不要说成Netfilter!       iptables真的是弱爆了!它的ipt_do_table竟然是五大元凶之一,如果规则超过了...

2015-07-12 23:32:25

阅读数:3421

评论数:0

Linux内核RCU(Read Copy Update)锁简析-前传

如果你用Linux perf tool的top命令做热点纠察时,你会发现,前10名嫌疑犯里面肯定有好几个都是锁!在进行并行多处理时,不可避免地会遇到锁的问题,这是不可避免的,因为这一直以来也许是保护共享数据的唯一方式,被保护的区域就是临界区。而我们知道,锁的开销是巨大的,因为它不可避免地要么等待,...

2015-07-12 22:53:31

阅读数:2173

评论数:0

Linux内核RCU(Read Copy Update)锁简析

在很早以前,大概是2009年的时候,写过一篇关于Linux RCU锁的文章《RCU锁在linux内核的演变》,现在我承认,那个时候我虽然懂了RCU锁,但是我没有能力用一种非常简单的描述把Linux的实现给展示出来,有道是你能给别人用你自己的方式非常简洁地描述清楚,你才是真正的精通它,否则,无异于背...

2015-07-12 10:36:54

阅读数:7825

评论数:4

为什么P2P模式下载的人越多速度越快,为什么P2P伤害机械硬盘

台风来临前的夜晚,有点激动不想睡觉,看了几个电影,日本恐怖片,台风雨夜,非常不错,P2P很流畅,观察IP地址大量也是附近的,江浙沪,难道也都在迎台风看电影?       大家都知道使用P2P模式下载速度会非常快,原理其实也并不难,毕竟P2P没有中心瓶颈,每个节点既是下载方又是上传方,一起接力努力的...

2015-07-11 09:47:06

阅读数:11611

评论数:2

为InfiniBand而哭泣

自古就不乏还没有开始就结束的那种精彩,我称之为殉道者。InfiniBand就是其中之一,虽然它有陨落之势,我依然要为它鼓掌。如果说以太网旨在将主机联系在一起,那么InfiniBand的初衷就是将其肢解,这种基因的不同,注定它们将展开一场大战,当然这是后话。服务器强大了,但是PCI总线太慢了,且其并...

2015-07-11 00:34:09

阅读数:7816

评论数:3

Linux内核3.11的socket busy poll机制避免睡眠切换

Linux的网络协议栈非常独立,上下通过两个接口分别和用户态以及设备相连,也可以看作是北向和南向接口...北向通过socket接口,南向通过qdisc接口(你可以认为是上层的netdev queue,对于接收接口,NAPI的poll队列则是另一个例子),不管是socket还是qdisc,都是基于队...

2015-07-08 06:44:14

阅读数:6796

评论数:1

从Linux 2.6.8内核的一个TSO/NAT bug引出的网络问题排查观点(附一个skb的优化点)

梦中没有错与对,梦中没有恨和悔...最好闭上你的嘴,这样才算可爱...我不会说:这不公道,我不能接受。我会用朴素的文字记录点点滴滴,早上4点多起来,一气呵成近期的收获与评价,愤怒与忏悔。四年多前的一个往事大约在2010年的时候,我排查了一个问题。问题描述如下:服务端:Linux Kernel 2....

2015-07-08 06:04:17

阅读数:6395

评论数:1

TCP断开时的状态与Linux nf_conntrack

题目有点大了,但是难免有一些愤怒!我们的网关产品目前处在系统测试阶段,不太顺利,是太不顺利!各方面都在懈怠,包括我!我除了懈怠,还在找机会逆袭!顺便蔑视一下测试者,希望产生一种想象,即他发现的问题其实不是问题,而是因为他的无知所导致!就在昨天,机会来了,我便气扬了!       很多人觉得我是下三...

2015-07-04 10:14:13

阅读数:6159

评论数:0

根据排队论阐述路由器和高速公路的拥堵以及拥堵缓解问题(二)

关于本文相信很多人都在节假日的高速公路上遇到过大拥堵,但是最终拥堵会解除。也有人在质疑路由器队列的长度,以为最终路由器会拒绝服务。我曾经在10年前天真地以为高速公路的设计者和路由器交换机的设计者工作是多么的轻松。然而现在,当我知道更多后,发现事实并不如此。需要更多的权衡和博弈,不仅仅是技术方面的,...

2015-07-04 08:34:40

阅读数:5788

评论数:0

Linux转发性能评估与优化-转发瓶颈分析与解决方案(补遗)

补遗关于网络接收的软中断负载均衡,已经有了成熟的方案,但是该方案并不特别适合数据包转发,它对服务器的小包处理非常好,这就是RPS。我针对RPS做了一个patch,提升了其转发效率。下面是我转载的我自己的原文。线速问题很多人对这个线速概念存在误解。认为所谓线速能力就是路由器/交换机就像一根网线一样。...

2015-07-04 08:29:54

阅读数:2652

评论数:1

提示
确定要删除当前文章?
取消 删除