自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Netfilter,iptables/OpenVPN/TCP guard:-(

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

原创 Linux 4.6内核对TCP REUSEPORT的优化

繁忙了一整天,下班回家总会有些许轻松,这是肯定的。时间不等人,只要有剩余的时间,就想来点自己喜欢的东西。下班的班车上,用手机那令人遗憾的屏幕目睹了Linux 4.6的一些新特性,让我感兴趣的有两点,第一是关于reuseport的,这也是本文要阐释的,另外一个是关于KCM(Kernel Connec...

2016-05-26 21:55:00 22251 0

原创 TCP SYN-Cookie的原理和扩展

SYN-Cookie概述预防半连接攻击,SYN-Cookie是一种有效的机制,它的基本原理非常简单,那就是“完成三次握手前不为任何一个连接分配任何资源”,它是怎么做到的呢?也是非常简单。1.编码信息将一些本应该在本地保存的信息编码到返回给客户端的SYN-ACK的初始化序列号或者时间戳里面。握手尚未...

2016-05-21 08:11:04 14296 0

原创 TCP核心概念-慢启动,ssthresh,拥塞避免,公平性的真实含义

本文主要阐述TCP拥塞控制中ssthresh的来历以及为什么拥塞避免探测到丢包的时候,ssthresh会被设置为当前窗口的一半。进入证实内容之前,不得不再次吐槽!目前在网上搜的,任何资料上看的,甚至RFC上,都没有讲明白到底什么是ssthresh,它的值有什么讲究,几乎所有的资料都是在说,如果窗口...

2016-05-17 22:02:44 24196 4

原创 TCP进入快速恢复时的窗口下降算法

夜深人静...夜深人静...TCP在发现丢包的时候,会采取一定的措施,至于如何发现丢包不是本文的内容,本文主要描述发现丢包以后TCP采取什么措施。以Linux为例,降窗发生在进入快速恢复的当时(暂时不考虑RTO以及本地拥塞),在降窗之前是一个Disorder的状态,指的是系统发现了异常,比如收到了...

2016-05-14 10:59:55 20282 1

原创 TCP拥塞控制ABC(Appropriate Byte Counting)的利弊说

TCP在慢启动阶段,每一个RTT拥塞窗口按指数级增长,TCP在拥塞避免阶段,每一个RTT拥塞窗口线性增加1。这些都是书上讲的,不必太认真,真实的情况要比这个复杂的多!        首先我们看大部分的资料里讲的TCP是怎么实现每RTT增窗的,一切都是扯理论,没什么现实意义!        在慢启动...

2016-05-08 23:43:33 11970 0

原创 关于Linux LOOPBACK网口抓包的一个细节

这个问题其实是我几个月前碰到,只是那时好像还在回忆着什么,心系上海,还没有完全适应这个新环境,加上这个问题也不是什么太深奥的问题,觉得太简单了,就搁置了。今天周末闲来无事就顺便写来来了。加上深圳经常下雨,越来越喜欢了。本文没什么深度,仅为记录,以及阐述一个“看文档学习原理->猜测并自行实现-...

2016-05-07 11:27:16 12429 0

原创 TCP对SACK的处理以及乱序的处理细节

不容易啊,天气热得厉害,终于到了周末却哪里也去不了,昨晚就特意向老婆申请了一段不长不短的周末时间用来总结近期的工作,也实属不易,如果申请没有获得批准,我也只好利用夜晚了,因为我几乎是一个不用怎么睡觉,可吃可不吃的人,只要有水,烧酒,就好了...大早上的,热醒了,看来也用不到我申请的时间了。...此...

2016-05-07 11:17:08 13548 1

原创 TCP发送端收到ACK后对传输队列的4次扫描

TCP如果收到ACK后,不管是顺序ACK还是重复ACK(可能带有SACK选项),都可能对传输队列进行4次扫描,它们先后顺序分别是:1.第一遍扫面,分别做以下事情:1.1.标记被SACK的数据包1.2.标记哪些已经重传的包可能丢失1.3.更新网络乱序度reordering整个故事如下图所示:如果UN...

2016-05-04 23:08:54 10297 0

原创 TCP拥塞控制图解(不包括RTO,因为它太简单了) 【勘误1】

熬过了几个夜晚,终于把TCP的拥塞处理的Linux撸了一遍,仓促中也总结了一幅巨大的图,然而今天下午的例会讨论后,我自己说着说着发现还有一些值得商榷的地方,有的是笔误,也有的是一些细节依然没有搞清楚,因此特此勘误,原文我只修改了文字,因为重新贴图代价实在太大,再者,我希望留下一些错误的印记,这样也...

2016-05-03 21:43:10 11523 1

原创 连接一切 or 拆除链接

到底是连接一切呢还是拆掉一些连接?好像二者是对立的。但是,请了解一下电话/电报刚刚风靡的时候,美国是个什么场景,整个城市就是一个大型蜘蛛网!然而当时的人却引以为豪,只有少数人预示到了危机!懂网络的人都知道,连接一切并不是什么好事,环路,风暴...于是就有了spanning tree,就连人工智能领...

2016-05-02 12:18:42 8148 1

原创 悲哀!作为服务器,Top 1却是fib_table_lookup

越是靠海的地方,海鲜越贵!但那是骗外地的以种田为生的人的...作为服务器,你敢想象系统的开销大部分都在“路由查找”上吗?        如果你的系统中10w+条量级以上的路由表项的话,这个无可厚非,然而系统就是一个服务器,一共两块网卡,连接在一个可怜的万兆以太网中,该以太网一共两个出口,一个默认网...

2016-05-01 09:16:17 11004 0

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