OpenVPN优化之-巨型帧

来源:互联网
更新时间:2016/12/9 11:29:22
责任编辑:鲁晓倩
字体:

近几日忙过了头,一直纠结于OpenVPN的性能问题,这实在是个老问题了,几年来一直都是修修补补,直到多线程多处理的实现,解决了server模式服务端的吞吐量问题,使得多个CPU核心可以得到充分的利用。但是对于客户端的优化,一直都没有很好的解决方案。

       也许,粗犷的作风实在是非常适合服务端优化,而客户端优化需要的却是对细致入微的细节之关注。而我,实则一个得其意而忘其形之人,实则不太适合做细活儿,然而我却曾经用废旧的牛仔裤缝制过一款时尚手袋,表里不是那么如一。对于OpenVPN客户端优化这件事,我遇到了“巨型帧”这个术语。

       效果还不错,测试的结果还比较满意,还是老样子,记录一些想法却不记录技术细节,这是为了让自己或者别人日后看到这篇文章后,知道有这么个事却又不能直接拿来就用,这有什么好处呢?这会让自己好好地再次理一遍思路而不是拿来主义的复制命令或者代码。自己写的代码或者命令,一周后,可能就和自己没关系了,半年后,自己也不懂了...但是想法是永恒的,我依然记得小学四年级的时候,我写的一篇关于巴士底狱的过于早熟的短文...

       最近不喝酒了,因为时间不等人,喝酒之后就会早早睡去,什么也干不了了,晚上夜深人静的时候,看看历史书,写写博客比喝酒好。

以太网的一点历史包袱

以太网自打出生之日,一直保持着向下的兼容性,兼容性这个计算机时代可谓最重要的术语在以太网可谓表现得淋漓尽致,完全可以和IA32以及Win32 API相媲美,满足了投资者的心理的同时,方便了消费者,然而对于技术本身,保持兼容性却如临大敌。

       10M以太网时代,对于帧长是有规定的,最大的帧长和最小的帧长都是可以根据线路的物理特性计算出来的,最大的帧长的计算结果是1500Byte。于是,这个1500就成了一个以太网MTU的默认设置,在10M年代,这个长度绝对不短了,实际上它是可以发送的最大长度,超过这个长度的上层数据都要在IP层被分片,然后在接收端重组分片,而这个过程无疑需要更多的处理器时间,消耗资源。为了避免IP分片,传输介质的MTU必须被IP上层的协议所感知,对于TCP而言,这就是MSS协商,细节我就不讲了。MSS协商之后,可以保证TCP每次发送的数据的长度均小于介质的MTU,对于UDP而言,需要应用层自己管理数据报的长度,或者通过MTU发现机制来动态调整。不管怎么说,IP分片能避免则避免。

       在下一节我会描述MTU确定的细节,现在我们知道它在兼容的意义上是1500,事实上,在10M年代,这个1500是电气特性决定的,但是在10G年代,以太网经过了天翻地覆的变化,1500早就不再是电气特性无法跨越的坎了,因此1500剩下的只是一个软件含义,你完全可以设置它为15000,但是即使如此,只要数据经由的路径上有一段路经的MTU是1500,那么就会发生IP分片。这就是历史包袱,可以发送更长的数据,但是却无法发送,因为发送了便可能产生IP分片,而IP分片的处理和重组可能会抵消掉大型数据帧带来的空间节省和时间节省。

分组交换的两个极端

为了避免IP分片,网卡总是被期待发送最小的数据,但是为了数据包处理效率的最大化,网卡总是被期待发送最大的数据,这就是一个矛盾,需要代偿计算权衡。我们知道,分组交换网的每一个分组均要携带元数据,由于协议栈是分层的,对于每一个分组,都要封装多个不同层的协议头。
www.xue163.com true /5/55161.html report 1710 OpenVPN优化之-巨型帧,近几日忙过了头,一直纠结于OpenVPN的性能问题,这实在是个老问题了,几年来一直都是修修补补,直到多线程多处理的实现,解决了server模式服务端的吞吐量问题,使得多个CPU核心可以得到充分的利用。但是对于客户端的优化,一直都没有很好的解决方案。也...
最近关注
首页推荐
热门图片
最新添加资讯
24小时热门资讯
openvpn优化openvpn下载openvpnopenvpn免流openvpn 速度优化openvpn connectopenvpn 优化openvpn官网巨优化网易蜂巢搭建openvpnopenvpn服务器openvpn云免服务器安卓openvpn源码苹果openvpn教程openvpn云免搭建openvpnconnect
精彩资讯
精彩推荐
热点推荐
真视界
精彩图片
社区精粹
关于本站 | 广告服务 | 手机版 | 商务合作 | 免责申明 | 招聘信息 | 联系我们
Copyright © 2004-2016 Xue163.com All Rights Reserved. 中国学网 版权所有
京ICP备10044368号-1 京公网安备11010802011102号
荐闻 | 学网头条知识问答 | 装修 | 作业 | 荐闻 | 学网头条精彩微信 | 新闻中心 | 软件教室 | 设计大全 | 网络相关 | 英语学习 | 开发编程 | 考试中心 | 参考范文 | 管理文库 | 营销中心 | 站长之家 | IT信息中心 | 商学院 | 数码大全 | 硬件DIY | 企业服务 | 网吧在线 | 问吧 | 百科 | 硬件知识 | 本网视点 | 文库 | 手机 | 平板 | 汽车 | 游戏 | 家电 | 精彩摄影 | 时尚科技 | 现代家居 | IT女人 | 经验 | 每日新闻 | 健康养生 | 图书馆 | 猎奇 | 精彩看点 | 图库 | 新闻中心 | 软件教室 | 设计大全 | 网络相关 | 英语学习 | 开发编程 | 考试中心 | 参考范文 | 管理文库 | 营销中心 | 站长之家 | IT信息中心 | 商学院 | 数码大全 | 硬件DIY | 企业服务 | 网吧在线 | 问吧 | 百科 | 硬件知识 | 本网视点 | 文库 | 手机 | 平板 | 汽车 | 游戏 | 家电 | 精彩摄影 | 时尚科技 | 现代家居 | IT女人 | 经验 | 每日新闻 | 健康养生 | 图书馆 | 精彩微信 | 猎奇 | 精彩看点 | 图库编程 方案 信息windows方案windows answer文档机构教育文档问答中心IT编程数码信息解决方案信息中心IT科技