趣谈网络协议笔记-二(第七,八,九讲)


勉励

  • 人生而自由,却无往不在枷锁(牢笼)之中。 ——————卢梭@《社会契约论》
  • 为那些有形的牢笼感到庆幸吧。
  • 为自己出生于这个时代感到庆幸吧,因为知识的获取基本不需要获取任何成本。但是,过滤知识的开销就成为了成本,因此,感谢你周围那些乐于奉献的人们吧。

前言

第七讲和第八讲的内容关联性比较大,另外如果单单归纳第七章,那整理的内容就很少了。
感觉看完路由这一部分之后,整体的逻辑瞬间清晰起来了,为什么大学期间的知识总是不能落地呢?我真的感觉很怀疑。是不是给大学教师的钱太少了,大学教师光靠讲课的收入可能太低了,所以大多数大学教师不会特地去细心准备。真的感觉好可惜啊,真的,不能说教师是一项神圣的职业就让他们吃不饱穿不好吧。
好了,看完第七-九讲还是花了我比较长的时间,然后猛然感觉,想大概地归纳一下的话,可能真的需要花费比想象中更长的时间。
我还是希望从解决问题的角度来进行自己所学所得的归纳。
我真的很菜,甚至菜到很多个夜晚都睡不着的程度,但是我希望终有一天,我能成为别人心中的英雄。
为什么写这种可能对别人不怎么有用的博客呢,仅仅是因为我想证明自己还依然在努力,还依然没有放弃吧。


正文

这三篇按照我的理解主要是解决了如下三个问题:

  1. ping和ICMP是如何探测网络情况的?
  2. 网关和路由的工作原理
  3. 路由协议

解答1

ping和traceroute都是基于ICMP协议进行的。pin查询报文的操作,通过直接ping ip或者ping 域名的方式,计算机会一直发送ICMP请求,目标收到了信息会回复ICMP信息,头部类型8和0分别表示了发送和接收信息。查询报文是属于按照正常思路使用ICMP协议的操作。
于此相对的,就是差错报文,差错报文是利用tracerouter发送UDP包到目标计算机的不常用端口(30000以上)的方式来可以让目标计算机返回错误信息。如果成功访问到了目标的UDP层,也会因为端口问题返回ICMP请求,这反而说明了当前计算机和目标计算机是相通的!另外,也可以通过设置TTL(time to live)的方式来进行中间路由的校验。
ICMP首部TYPE和CODE对应表_Noooooorth的专栏-CSDN博客_icmp code

解答2

网关和路由器一般是黏在一起的,网关往往分为两种,转发网关和NAT(network address translate)网关。
转发网关在转发请求的时候只会改变mac头部,但是NAT网关在转发请求的时候会同时改变ip地址。
转发网关仅仅是起到一个过路财神的作用,就是为了进行数据信息的传递工作。
但是NAT网关的作用就相对有趣了,是为了进行内外网的衔接而存在的。外网ip地址很稀有,因此就相对很贵,基本不可能对于内网中的每台设备都专门配备一个外网的ip,所以通过路由器时都会被伪装为同一个外网的ip,不同的是端口,NAPT(network address-port protocol)就是为此而存在的,该协议维护了一张表,用以表达两个网络间ip-端口对的互相映射关系。比如192.168.0.1就映射为外网的10086端口,192.168.0.2就映射为外网的10087端口,这样从内网发送出去的数据就可以互相区分彼此了,发送出去的数据也可以找回返回的路了。

终于到第三个问题了,也已经很晚了,这个问题整理完再看会视频就睡觉吧,我对于动漫= =

解答3

路由之间需要进行沟通从而知道你到底帮助我些什么?路由器会维护一张路由表来记录如下问题:

  • 目的网络:你的目的地是哪里?
  • 出口设备:将包从哪个口扔出去?
  • 下一跳网关:下一个路由器的地址?

路由之间通过两种算法来构建路由器之间的网状关系,以及相互的最短路径。

第一种:距离矢量路由

这种方式通过TCP协议来每隔几秒向邻近的路由器发送自己的路由信息,从而整个网络每个路由器都会通过这种方式逐渐丰富自己的路由信息,最后所有路由器都会知道自己与其他路由器的连接情况。
这种方式的优先是新装入路由快,但是路由一旦不行了,刷新路由就很慢,必须要不断试探直到距离超过阈值,才会判定路由之间不通。另外一个缺点就是需要发送整个全部路由表。网络太大就吃不消了。
基于该算法的协议为BGP(border gateway protocol),为了避免该算法的在网络过大下产生的问题,就分为iBGP和eBGP用以分别对付内网和外网。

第二种:链路状态路由算法

这种方式通过DUP协议来每隔一段时间来广播传递信息,常常用于数据中心。他发送的是路由状态的改变信息,因此发送的数据量会明显小于第一种。每当一台新的路由器启动时,会向邻居发送信息以确定自己和邻居之间的距离,然后将该信息广播出去,以让整个网络中的所有路由器都能知道他已经横空出世了!
同理,当邻居发送他怎么停机了时也会发送改动信息,以告诉整个网络,他好像暂时不行了。
基于该算法的协议为IGP(Interior Gateway Protocol),主要用于数据中心,因为他可能快速地对路由变化进行响应所以更加便于进行负载均衡的操作。

趣谈网络协议笔记-二(第七,八,九讲)相关推荐

  1. 趣谈网络协议笔记-二(第十九讲)

    趣谈网络协议笔记-二(第十九讲) HttpDNS:网络世界的地址簿也会指错路 自勉 勿谓言之不预也 -- 向为祖国牺牲的先烈致敬! 引用 dns缓存刷新时间是多久?dns本地缓存时间介绍 - 东大网管 ...

  2. 趣谈网络协议笔记-二(第十六讲上)

    趣谈网络协议笔记-二(第十六讲上) 流媒体协议:如何在直播里看到美女帅哥? 自勉 给岁月以文明,而不是给文明以岁月!--<三体> 在触不到的獠牙上点火--就像不必仰望那星星就能够解决--就 ...

  3. 趣谈网络协议笔记-二(第十八讲)

    趣谈网络协议笔记-二(第十八讲) DNS协议:网络世界的地址簿 自勉 勿谓言之不预也 -- 向为祖国牺牲的先烈致敬! 正文 DNS用于域名解析,但也不仅仅是用于域名解析,不仅仅是将域名转换成IP. 在 ...

  4. 趣谈网络协议笔记-二(第十七讲)

    趣谈网络协议笔记-二(第十七讲) P2P协议:我下小电影,99%急死你 自勉 逃离舒适区! 正文 一. P2P协议 整个篇章讲的就是这两个协议之间的区别.P2P协议就是迅雷下载数据时所用的协议, 众所 ...

  5. 趣谈网络协议笔记-二(第十三讲)

    趣谈网络协议笔记-二(第十三讲) 套接字Socket:Talk is cheap, show me the code 前言 这只是笔记,是为了整理刘超大神的极客时间专栏的只是而存在的! 经常会在网络上 ...

  6. 趣谈网络协议笔记-二(第十二讲)

    趣谈网络协议笔记-二(第十二讲) TCP协议(下):西行必定多妖孽,恒心智慧消磨难 前言 哈哈哈,越当我看刘超的通俗讲解,我就越感觉自己的无能.每次当我看了讲解之后,每次当我感觉到这个东西原来是这么简 ...

  7. 趣谈网络协议笔记-二(第十一讲)

    趣谈网络协议笔记-二(第十一讲) TCP协议(上):因性恶而复杂,先恶后善反轻松 自勉 我似乎天性不擅长争斗,但是有些时候,我也必须砥砺前行. 强大是和平的前提,而善良不是. 前言 今天回到家里已经是 ...

  8. 趣谈网络协议笔记-二(第十讲)

    趣谈网络协议笔记-二(第十讲) UDP协议:因性善而简单,难免碰到"城会玩" 自勉 如果手上没有剑,我就无法保护你.如果我一直握着剑,我就无法抱紧你.--<Bleach> ...

  9. 趣谈网络协议笔记-二(第六讲)

    趣谈网络协议笔记-二(第六讲) 交换机记忆的到底是端口,还是方向,如果是方向那么何来方向,下图中的感觉更像是网桥? 局域网中的数据是不是必定先经过交换机(网桥,hub)? 为什么广播时mac地址为25 ...

最新文章

  1. [LeetCode] Factorial Trailing Zeroes
  2. liferay中使用自己的数据库
  3. 突破安全狗防注入及上传的一些思路
  4. swagger导出excel文档_将Swagger2文档导出为HTML或markdown等格式离线阅读
  5. c语言汽水瓶换汽水的编程题,c语言:2种方法编程及优化;喝汽水问题
  6. QT-在子控件上绘图的两种方式
  7. openjdk-7支持版本_长期支持对OpenJDK意味着什么?
  8. 2万字详解,彻底讲透 全文搜索引擎 Elasticsearch
  9. 【论文笔记】K-plet Recurrent Neural Networks for Sequential Recommendation
  10. 日志的处理 —— 使用 log4j
  11. 投简历 找工作 App
  12. Visual studio插件:Visual Svn 替代工具--AnkhSvn
  13. TikTok Shop 英国限售商品规则
  14. 打印表格留标题怎么设置_表格怎么样设置打印出来有标题
  15. 三角函数π/2转化_浅谈三角函数导数综合题(1)
  16. tiktok直播代运营关注要素
  17. outlook查看图片错位异常问题
  18. js简单实现一个json格式化功能
  19. 计算机基础知识背诵口诀,信息系统项目的管理师背诵口诀要点.pdf
  20. 时间序列模型R语言实现-批量建模,预测(ARIMA, 随机森林)

热门文章

  1. VSCODE打开一个文件,另一个文件就关闭的问题的解决方法
  2. java触发full gc的几种情况概述
  3. 一次布环境,引起的总结
  4. xdebug模块输出文件名的配置说明
  5. linux安装软件不同用户名密码,Linux的安装和基本命令
  6. cxgrid主从表 点+号展开_深入理解Redis主从复制
  7. linux php curl 安装包下载,linux中php如何安装CURL扩展方法
  8. mysql字符集查看_查看和设置mysql字符集
  9. 2021湖北孝感高考成绩查询时间,2021年4月孝感自考成绩查询时间网址入口
  10. java kafka 分区_Kafka 主题和分区