码迷,mamicode.com
首页 > 其他好文 > 详细

网络技术与技术革命周末随想

时间:2014-05-25 21:01:44      阅读:309      评论:0      收藏:0      [点我收藏+]

标签:网络技术   路由技术   程序员   

无知者最好别在公共场合喷粪

周五下午下班坐地铁匆匆回家,由于老婆要去外地开几天会议,我周末就要做全职奶爸了,一想到这个就兴奋,可以和我家小小独处了,加深一下父女感情,于是哼着歌,同时看着《黑客大曝光》,时不时瞟一下旁边的美女...
       一个声音顿时让我有一种想打人的冲动,于是旁边的美女在我眼里化作了漫天烟云。声音来自我的身后,透过玻璃反光能看得出是一个奇丑无比的年轻女性程序员, 身高150cm不到,体重约摸大于等于130斤,大声嚷嚷:网络没什么好学的,只要理解大概原理,能通就行,现在谁还搞网络啊,过不了几年,搞网络的全都 得回家!
       真TMD的恶心,她的不幸在于她遇到了我,她的幸运在于我们同处在一个公共场合。她和一个同行的男的聊了TMD一路,好像是做存储的,也很底层,相当的底 层,如果不是她的无知,怎么能如此出言不逊,知道什么是存储网络吗?唉!如今的远程内存访问都在使用TCP/IP了,网路几乎渗透到了任何领域,如果有人 还是觉得网络就是ping一下或者traceroute那么简单,直接自己辞职算了,如果不辞职,那就直接开掉!
       不过我很快忘掉了这种无心的针对自己的职业素养的攻击,毕竟人家也不知道我是搞网络的,再说,我也不是职业搞网络的,只是出于对网络技术的热爱一直以来将其作为自己的职业罢了,这印证了那句话,你可以侮辱我这个人,但不能侮辱我的职业。

学习网络分层模型以及网络原理的最佳实践

收 到一封邮件,问我如何学习网络,又懒得看书,想从实践中那个学,我不能回答说去当网管吧,因为他不一定能应聘到理想的岗位,能学到有用东西的职位所招聘的 都是有一定实力的,网吧网管估计可以,但是确实学不到什么东西,同样的原因,我也不能让人家去应聘程序员,那怎么办?只能自己折腾,想快速不是不可能,关 键看你折腾什么,因此写下下面这段文字,希望能对别人有所帮助。
       如果你想学习网路,并且希望能彻底理解它,那么暂时扔掉那些TCP/IP的书吧,等理解了原理再回头看,也不要一下子就扎进Linux内核协议栈,它只是 一个实现,并且实现得很不完全。最好的办法就是学习移动通信网络,趁着移动核心网还没有完全IP化之前,赶紧抓紧这段美好的时光吧。
       无疑,移动通信网络是复杂的,比如UMTS,LTE等,术语也非常多,标准化组织多且杂,各种技术方面或者法律方面的纠纷不断,但是却活力无限。你要知 道,移动通信网络是第一个也是唯一一个兼容了超级多种类型的网络,它可以接入PSTN,也可以接入纯的TCP/IP网络,从30年前开始,一直发展到现 在,虽然在技术方面在慢慢走向融合,但是一些非技术方面的因素拖慢了这个进程。学习这个网络,你会理解关于网络方面的几乎一切知识,也能理解关于网络发展 的一般规律。
       移动通信网络的复杂性显而易见,但是我们认为它复杂的原因却非常微妙,因为一直以来,大学教的网络课程都是以TCP/IP为蓝本,链路层以下几乎不涉及, 非IP的网络层协议几乎不涉及,IP路由之外的网际寻址方式几乎不涉及,几乎都是在讲IP地址,IP路由,TCP原理,UDP原理,以及一些常见的应用协 议,比如HTTP,FTP,...如果你参加过一些厂商的培训,比如H3C,Cisco的高级工程师培训,可能会在一定的范围内接触到一些关于 ATM,X.25,PSTN方面的东西,可是这种培训非常昂贵,再说几乎也都不是面向研发的,除非你进入到那些真实研发ATM交换设备或者研发移动网络设 备的公司,否则你能接触到的几乎全部都是TCP/IP!所以,面对一个新东西的时候,你当然会觉得它复杂无比了,除了TCP/IP之外的所有的网络底层的 东西,对于大多数人来讲都是新的。
       TCP/IP是一个蓝本,但却不是现实,虽然它在20世纪80年代就几乎战胜了所有对手,但那只是理论上的,第一把交椅交接过程直到今天还在继续,理论 上,超过40%的厂商宣称支持TCP/IP栈,那就说明TCP/IP胜利了,但现实并不是TCP/IP一家独大的,对于兼容性的保持是阻滞TCP/IP独 霸天下的因素,虽然厂商声称支持了TCP/IP,但是并不意味着它们不支持别的栈。看看谢希仁的那本教材,从第2版开始,逐渐地删除了除了TCP/IP之 外的东西,这也说明了TCP/IP的胜利是一个逐渐的过程,LTE的名字起得可真好。
       对于协议的封装而言,大部分人学到的都是按照应用层,传输层,IP层,以太层,物理层这种顺序来封装的,如果说一些其它方式的封装,也不外乎IPSec ESP/AH,PPPoE,SSL/TLS,GRE,IPIP,甚至对我这种人而言的OpenVPN,在TCP/IP网络,隧道是一种不常见的方式。然而 在现实的移动网络,隧道却是一种超级常见的方式,一般而言,你用手机访问了google主页,会在手机和移动核心网之间建立一条隧道,隧道参数随着手机的 移动而变化,隧道内部封装的是真实的手机到google主页的TCP/IP数据,但是隧道使用IP协议吗?答案是可以用也可以不用,不用IP用什么呢?很 多的,比如ATM。如果你能知道打电话和发短信根本就没有用TCP/IP,那说明你已经上了一个层次,它们依然走的是电路交换机制,在数据从手机出发时, 你是不会看到任何TCP/IP信息的,因此就别指望用tcpdump之类的分组交换工具来抓包。更进一步,如果你能知道即便是电路交换数据也能在RAN和 核心网被封装在TCP/IP协议族中的话,那么你的层次又一次提高了,TCP/IP可以作为承载网,也可以作为载体,这就是协议分层的好处,X over Y,X,Y可以是任何协议族的任何层次的任何协议,这就是本质。再进一步,如果你能知道很多的移动数据,不管是电路交换域的还是分组交换域的,大都使用 UDP封装和不使用TCP的话,你已经是网络方面的准专家了,因为你除了知道分层模型的本质之外,还知道了每层机制的嵌套标准原则...即使是 TCP/IP族也从移动通信网络借鉴了很多东西,移动IP机制就是其中之一。
       如果你问我是什么水平,我实际上是半瓶子的水平,起码比空瓶子好些,我认为不晃荡的瓶子不是什么贬义词...那我是怎么知道这些的呢?第一,我大学期间只 是稍微看过一点点TCP/IP的东西然后就参加H3C培训了,当时Cisco培训太贵了,玩不起(现在依然也玩不起),没有什么包袱;第二,我学习网络并 不是为了得到高薪,因为我知道以我的教育经历,不可能得到什么高薪,只是能找份工作而已,没有了这种功利性,学习起来也就没重点了,因为很多大家公认的重 点或者说时髦的东西如果懂了,就能得到高薪;第三,和上一点类似,我不参加任何考试,当初参加H3C的培训考试很大程度上是老师忽悠的,不参加考试就不用 做题,也不用记忆那些无聊的东西,当然,得不到证书从而得不到高薪的代价就是我学了很多真正有用的东西。

设想中的路由器分流机制

城 市交通网络的布雷斯悖论同样在互联网中存在,互联网指的是基于IP的互联网。因为目前的IP互联网是基于最短路径来路由数据的,虽然也有很多策略路由在里 面,但是没有根本上改变交通拥堵的现状。关于布雷斯悖论以及纳什均衡点可以参考Wiki。在城市交通网络,路由决策者是司机,而在互联网,路由决策者是路 由器,不管是什么,都是按照自私路由策略来寻址的,总的来讲就是少了一种第三方的分流措施。
       在一个封闭的自私路由博弈系统中,一般最终都能达到一种共同利益最大化的共识,这个共识就是所谓的均衡点。交通网络和互连网目前都是依靠这种均衡点运行而 不至于崩溃,但是代价就是必须面临突发的拥堵问题。如果稍微改变一下路由器的算法,不再按照最短路径路由数据包,而是按照所有的可达路径的开销权值分流数 据包,是不是更好些呢?这还真的不好说,这就是中心化控制和分布式控制的博弈。如果按照分流算法,很多的数据走的无疑不是最优路径,但是好处是避免了拥 堵,那些不走最优路径的数据包付出的代价值得吗?既然网络运行了这么多年,还是让其分布式控制继续下去吧。
       和交通整治一样,越堵越治理,越治理越堵,拥堵税也好,号码限行也罢,只要你不交通管制,根本没有办法治理拥堵!唯一的办法就是不要管,忍受一个阀值,司 机停在路上再也走不动的时候,情况就该缓和了。不过,当前的互联网路由系统和交通网相比还要差一点,因为大多数路由器上权衡路径度量都是静态加权计算的, 参与因素有延时,吞吐量,传输介质,物理距离,在BGP上可能还要有政治因素等,它无法反映路径的实时状态,但是,由于自私路由上最短路径算法的流量聚集 性在持续起作用,度量势必会随着流量而变化,如果要支持实时度量监测,那就要进行频繁交换路由协议数据,然后根据新的计算结果重收敛,这种控制通道数据量 是可观的,更加不幸的是,它会反馈到现有的计算过程中,因为互联网的路由协议是带内运行的!
       因此,虽然不一定需要什么集中控制,但是有两点我认为是必要的,第一就是路由协议搬到带外去,就像早期交通网一样,可以通过直升机来监测..另外,实现某种数据包的自路由机制也许可以减缓路由器控制平面的持续计算的压力。

关于技术革命

把 互联网视为第三次技术革命有点言过其实了,早先不是有人说PC革命是No.3吗?!事实上,PC也好,互联网也罢,都配不上技术革命这一称谓!技术革命所 指的最根本的东西是针对人的生活动力来源的,第一次是农业革命,解决了人类的定居问题,人们不再漂移,客观上促进了知识和技术的积累;第二次是工业革命, 解决了人类的动力问题,更进一步使人类重新开始漂移,人们的居所重新回到了不断移动的状态,事实上农业革命造成的知识积累造就了工业革命,事实上电 力,PC以及互联网只是工业革命的继续,将地理分散的人们通过电-PC-互联网聚集在一起,使人们在物理上处在移动漂移状态,但是在逻辑上却是定居状态; 第三次可能是基因革命,完全模糊了机器和生命之间的界限,这也是畅销书《失控》中的设想。
       如果是互联网是革命,那么火车,汽车,电话等只要造出一个技术,都可以称为革命了!其实将一项技术视为一场革命更多的是宣传作用。还有,说什么乔布斯之类 的改变了世界,更是胡扯,你也改变了世界,毕竟多了你这么个人!“改变世界”这种论调我最烦!更多的是一种商业或个人宣传!能谈得上改变世界的个人只有 俩,亚当和他马子!


网络技术与技术革命周末随想,布布扣,bubuko.com

网络技术与技术革命周末随想

标签:网络技术   路由技术   程序员   

原文地址:http://dog250.blog.51cto.com/2466061/1416799

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!