为了配合改革开放的步伐,以及尽快使生活进入小,老张决定自力更生,开一个养猪场。刚开始的时候老张买了15头猪,只有一个猪圈,老张每天都亲自拿着簸箕到圈里喂猪,后来老张又相继买了20头猪,这样老张每天就要拿很多的猪饲料到猪圈里去,很是麻烦。为了解决这一个问题,老张决定实现养猪网络化,他自己组建了一个以太网(Ethernet)饲料槽,并把网络引到了离家很近的地方,这样每天只需要把猪饲料分成一份一份打包倒到以太网槽里,猪们就可以自己去吃了。
 
     老张的猪越长越胖,这时候就出现了一些问题。以太网是基于CSMA/CD(载波侦听多路访问/冲突检测)技术的,饲料倒到槽里,猪们都争着去吃,场面显得非常拥挤,按老张的话说,那叫"介质争用"。为了解决介质争用的问题,老张自主研发了集线器和交换机,并在猪圈中使用了分段技术,把猪分成一堆一堆,给它们起名字,称为MAC地址。通常是食量大的猪用集线器集合成一堆,食量小的猪分成一堆,然后它们通过集线器后再上接到交换机,最后通过交换机连接到老张家里。这样做就很好地解决了介质争用的问题,以太网交换机的每个端口可以提供专用带宽,保证了各种不同的猪都可以吃饱。
  
     老张的生意开始好起来,他又投资开了另外一个猪圈。爱因斯坦说,在解决问题时,我们不可能使用产生问题时的相同想法。老张为了避免再次发生以太网带来的问题,在第二个猪圈里布置了另外一种方案--令牌环网(Token Ring)饲料槽方案。这种组网方式采用的是冲突避免机制,猪们之间传递一个令牌,谁拿到令牌,谁就可以去吃饲料,这样就不会象以太网那样争先恐后的场面出现。
 
      很快老张又开了第三个猪圈,令牌环网也存在一定的问题,比如,令牌是公平传递的,这样可能当中会有些猪很饿,但它们还没拿到令牌,只能够等待,而那些拿到令牌的猪又很可能是不饿的,但它们不能立刻交出令牌,因为规定了传递令牌的时间限制。于是老张在第三个猪圈中对令牌环进行了改良,首先他使用了更高传输速率的网槽,其次使用两个令牌环,两个令牌环传递令牌的方向是相反的,叫"逆向旋转",两个令牌环一个是主环一个是从环,主环传输,从环备份。老张给这种组网方式起了个名字叫FDDI(光纤分布式数据接口)。
 
     除了喂饲料,猪圈之间有时也需要一些交流,为了体现对猪们的关心,老张还在猪圈之间架设了转换网桥。这样,不同网络结构之间的猪GG和猪MM们就可以经常通信了。
  
    老张的生意越做越火暴,这时候又出现了新的问题。第一个就是猪多了,网槽却很窄,这种窄带的传输方法已经显得越来越吃力。第二就是猪圈大了什么猪都有,龙蛇混杂,猪们当中产生了很多广播的问题。
 
     比如猪圈里有只叫比尔该死的,特别聪明,经常向其他笨猪宣讲宽带接入的知识,猪们的意见很大。在猪圈里,支持改造猪圈环境的声音越来越大。
  
    为了体现老张的民主,以及反映新中国纯情少猪的当家作主,老张决定对网络来一次全面的改革。
  
    首先是广播问题,老张冥思苦想之下,终于发明了路由器,使用第三层的交换技术,可以把局域网隔离,每头猪只能收到自己所在局域网内的广播信息。
 
     这样大家的广播信息就不会混在一起了。老张为每头猪都指定了一个IP地址,路由器根据IP地址进行转发。另外老张还使用了分级设计的方法,大大提高了传输效率。每天老张只需要用IP地址和MAC地址将饲料打包,传到路由器上,然后路由器自动向猪们发出一个ARP(地址解析协议)请求,看看这份饲料是属于哪一头猪的,再把饲料包发送给它,这样做大大完善了网络的功能。同时老张还想到了一种叫PPPOE(以太网承载点对点协议)的认证,如果哪头猪饿了,只需要通过输入帐号和密码上网,就可以发出请求以便老张识别它们,分别给他们喂饲料。
 
     然后要解决的是带宽的问题,老张把光饲料槽拉到了猪圈,叫FTTH(光纤到"猪圈"[大楼])。这一点很容易实现,而难题就在于所谓的"最后一公里"问题,由于猪圈里环境复杂,无法进行光饲料槽的布线。于是老张又想了个办法,那就是对原有的网络进行改造,同时预见到猪的要求会越来越高 ,有些猪可能不但要吃饲料,还要喝可口可乐等的高级传输要求,老张使用了一种新的技术--ATM(异步传输模式)交换,这种交换可以把猪饲料分成更细的信元,在原有网络上进行传输,并且通过一个叫BAS(宽带接入服务器)的东西可以把ATM网络和老张的宽带主干网连接起来。ATM还提供面向连接,提供多业务,又因为ATM宽带接入的上下行速率是不对称的,上行只有640kbps而下行达到8Mbps,猪们管它叫ADSL(非对称用户线路)。
  
     又过了一些时间,ATM网也显现了一些缺点,比如说ATM交换机比较昂贵,同时基于ATM网的ADSL需要在接入层使用BAS转换,形成瓶颈,且BAS设备也价值不菲的原因,令到网络的可缩放性始终得不到提高。于是老张研制了基于以太网上行接口的IP DSLAM(DSLAM是二层的宽带接入设备),把ATM信元转换成IP包的工作放到了二层,这样就不需要再使用昂贵的BAS了。虽然宽带走到这一步几乎是十分完善了,但老张的前进步伐还是没有停下来,他还建造了VDSL(对称用户线路),实现了对称的上下行速率,实现了猪们的互动网络需求。再后来老张的猪出口海内外,在全国设立分公司,为了适应远程办公,老张又开发了×××(虚拟私人网络),包括PPTP(点到点隧道)、L2TP(二层网络隧道)和GRE(普通路由封装)三层隧道协议等等。
 
     后记:那只叫比尔该死的猪被卖到美国后成立了一间微软猪头公司,专门做起了软件。

转载于:https://blog.51cto.com/xiong/18191

猪是这样养成的(网络架构知识普及)相关推荐

  1. 第二十六期:100 个网络基础知识普及,看完成半个网络高手

    本篇文章是关于100个网络基础知识普及,看完成半个网络高手!下面,我们一起来看. 作者:佚名来源 本篇文章是关于100个网络基础知识普及,看完成半个网络高手!下面,我们一起来看. 1)什么是链接? 链 ...

  2. 40、100 个网络基础知识普及

    100 个网络基础知识普及,看完成半个网络高手! 1)什么是链接? 链接是指两个设备之间的连接.它包括用于一个设备能够与另一个设备通信的电缆类型和协议. 2)OSI 参考模型的层次是什么? 有 7 个 ...

  3. 干货满满!100个网络基础知识普及(附带答案解析)

    本篇文章是关于100个网络基础知识普及,看完成半个网络高手!下面,我们一起来看. 1)什么是链接? 链接是指两个设备之间的连接.它包括用于一个设备能够与另一个设备通信的电缆类型和协议. 2)OSI 参 ...

  4. 网络宽带知识普及-带宽

    网络宽带知识普及-带宽 网络服务器带宽Mbps.Mb/s.MB/s的区别 网络宽带知识普及-带宽 我们经常说的宽度10M.100M宽度,其实是指 10Mbps (兆比特)(bit非byte) 计算带宽 ...

  5. 100 个网络基础知识普及,看完成半个网络高手!(文末附PDF版本)

    点击上方"涛哥聊Python",选择"星标"公众号 重磅干货,第一时间送达 来源:CU技术社区 阅读文本大概需要 5 分钟 为了方便大家更好着按需查找对应知识点 ...

  6. 网络通信基础知识普及篇

    因为日常可以接触到,交换机和服务器的一个日常维护,在加上我们做的设备属于,通信方向的设备,所以,对一些网络通信的知识,都会储备一些(以下知识点总结:来源 <精通linux内核网络>,< ...

  7. 2G|3G|4G网络速率知识普及

    本文介绍第二代(2G)移动通信系统和第三代(3G)移动通信系统常见制式基础知识,主要有2G(GSM900/EGSM/DCS1800/PCS1800).3G(CDMA2000/TD-SCDMA/WCDM ...

  8. 100 个网络基础知识普及,看完成半个网络高手! 【厦门微思网络】

    1)什么是链接? 链接是指两个设备之间的连接.它包括用于一个设备能够与另一个设备通信的电缆类型和协议. 2)OSI 参考模型的层次是什么? 有 7 个 OSI 层:物理层,数据链路层,网络层,传输层, ...

  9. 100 个网络基础知识普及,看完成半个网络高手

    1)什么是链接? 链接是指两个设备之间的连接.它包括用于一个设备能够与另一个设备通信的电缆类型和协议. 2)OSI 参考模型的层次是什么? 有 7 个 OSI 层:物理层,数据链路层,网络层,传输层, ...

  10. 100个网络基础知识普及,看完你也是半个网络高手哦! 随风

    1)什么是链接? 链接是指两个设备之间的连接.它包括用于一个设备能够与另一个设备通信的电 缆类型和协议. 2)OSI 参考模型的层次是什么? 有 7 个 OSI 层:物理层,数据链路层,网络层,传输层 ...

最新文章

  1. [tool] AI视频翻译 解决英文视频字幕问题(类似youtube自动生成字幕)
  2. 如何编写企业解决方案书(转)
  3. 20年工作经验的架构师写给程序员的一封信
  4. linux中设置环境变量PATH的方法(转)
  5. oracle11g中的join,sql - 使用Oracle 11g中的+符号进行左外连接
  6. 看我打脸Message Pack
  7. jupyter配置不同的conda环境
  8. Python Web笔记之高性能网络编程
  9. cmd oracle sys登录_Oracle 数据库、表、方案的逻辑备份与恢复
  10. iplat62----loading层添加
  11. 基于CNN实现对摄像头捕捉的人脸进行性别和年龄的预测
  12. 设计模式PHP篇(三)————适配器模式
  13. 基于C#+AE的地图要素的添加(比例尺、指北针、图例)
  14. C语言冒泡排序算法及代码
  15. OSPFv3报文格式与作用分析
  16. 基于stc89c52的智能温控风扇
  17. MATLAB-imrotate函数
  18. 开源信息安全管理平台OSSIM入门-李晨光-专题视频课程
  19. 不同测序数据应用与基因组组装|Canu
  20. 华为OD机试题:身高体重排序

热门文章

  1. java 多态利弊 及 父子类转换条件
  2. 第十一篇、HTML5隐藏播放器播放背景音乐
  3. 用js解析经json序列化后的C#的DateTime类型数据
  4. window消息机制
  5. 遍历~筛选~eq();filter();first();last();has();is();map();slice()
  6. Spring Boot 依赖包讲解
  7. 人工智能-baidu-aip语音识别(语音转文字)
  8. 删除安装的python
  9. 在Asp.net中弹出对话框,确定后跳转到其他页面
  10. css 注释写法注意事项