大家好,我是后来,我会分享我在学习和工作中遇到的点滴,希望有机会我的某篇文章能够对你有所帮助,所有的文章都会在公众号首发,欢迎大家关注我的公众号" 后来X大数据 ",感谢你的支持与认可。
今天买了一个显示器已经到家了,用着确实爽歪歪。哈哈!得继续写文了,不能对不起它!
上一篇文章,我通过“警察叔叔是怎么顺着网线找到你的 这个话题,为大家讲了IP地址的虚拟性,以及ARP地址解析协议,最后还写到了划分子网和构造超网。其实核心知识就是 地址解析协议ARP,以及IP地址不同的划分规则对应的如何转发分组 ,当然也同时要理解为什么IP地址是虚拟的。这其实就是上一篇文章的核心内容,回看
- 告诉你为啥你的网速从来没达到300M
- 说说路由器的工作原理,让你更了解你的路由器(慢慢讲)
同时今天的重点也先说一下:
- 为啥网速这么慢?
- 网际控制报文协议ICMP
- 路由选择协议,重新认识你家的路由器
- IPv6
- IP多播
- 虚拟专用网VPN和网络地址转换NAT
也就是说你的下载网速理想峰值是37.5MB/s,这是在绝对理想的条件下进行的,所有的传输过程中没有损耗,但是现实生活中是这样的吗?当然不是,经过一些博主多次验证,一般300M的网下载速度一般能达到30MB就很不错了。
如果你多台电脑使用,并且还有一些无线设备连接,那么**这些所有的设备共享这个带宽。**所以网速自然比你想的要慢。
但是请不要忽略路由器的作用!!!
你的路由器是不是只有百兆端口?
你的网线是不是只能传输百兆?
如果是的话,那剩下的200M就被浪费掉了。
说完这个,我们等下接着解决路由器的核心工作原理问题。
那么我们来大致介绍下ICMP的原理:
其实吧,路由器也是个计算机,只不过它是一种具有多个输入端口和多个输出端口的专用计算机,其任务是转发分组。
我们在计算机网络开始的时候就提到:互联网=网络的网络,而网络与网络之间是通过路由器连接的。
我们在上一篇文章中提到过转发分组,这次换句话说:网络层的数据单元——IP数据包要能够正确到达目的主机,经过路由器时,路由器根据数据包中的目的主机的IP地址与路由控制表的比较得出下一个应该接收的路由器,这就是上一篇文章中提到的转发分组。
现在的问题就是:路由表已经有了,用哪种算法来获得路由表中的需要的那个项目?
这个路由表有多大呢?一般的路由表都有10万条左右的路由项,告诉路由器更多,所以要想快速转发分组,我们希望通过这个算法尽可能最优,减少路由这边的时延。
于是路由算法分为了2大类:
- 静态路由选择策略=纯手工,管理员自行设定
- 动态路由选择策略=自动更新,适应网络状态的变化,开销大
结果显而易见,目前我们大多使用的都是动态路由选择策略,那么动态路由选择策略是个什么情况呢?就是说:路由器会给相邻的路由器发送自己已知的网络连接信息,那么到最后整个网络的路由控制表就制作完成了。
随着IP网络的发展,想要对所有的网络统一管理是不可能的事,所以为了更好的管理,就把互联网划分为许多较小的自治系统,记为AS。比如以企业为单位,内部使用内网,有些网址只能在公司网访问。所以就有了下面2种路由协议:
- 内部网关协议IGP,使用多的如:RIP协议、OSPF协议
- 外部网关协议EGP,使用多的是:BGP-4
那么下面大致介绍下这几种协议:
我们在之前的文章中提到过,IPv4的IP地址在2011年4月就宣布耗尽了,而随着互联网的发展,之前设计IPv6也逐渐开始使用。
那IPv6会不会有一天被用完呢?这么来说吧,在IPv6中,每个地址占128位,地址空间大于3.4×10的38次方。如果整个地球表面(包括陆地和水面)都覆盖着计算机,那么IPv6允许每平方米拥有7×10的23方个地址。如果地址分配速率是每微秒分配100万个地址,则需要10的19次方 年的时间才能将所有可能的地址分配完毕。可见在想象到的将来,IPv6的地址空间是不可能用完的。
大家也应该注意到了,目前不少大厂的app进入页面都提示已经支持IPv6了,那IPv4过渡IPv6阶段,又没有一个具体的期限说必须哪天之前都过渡完,也不现实,那么过渡阶段这个分组怎么转发呢?这中间也肯定需要两种协议之间的转换。
- 双协议栈
- 隧道技术
双协议栈
要求双协议的主机或路由去既能够和IPv6的系统通信,也能够和IPv4的系统通信,那么这个主机怎么知道目的主机采用哪种协议呢?它肯定不知道啊,所以它根据域名系统DNS来查询。DNS返回的是IPv6就用IPv6地址。以此类推。
隧道技术
ICMPv6
其实我们到目前为止,说的比较多的都是点对点的通信,但是还有广播通信这种也是使用非常广泛的,比如各大视频网站,是不是更新资源后,大家都能看到了。
那么这种多播地址只能用于目的地址,不能用于源地址
用过虚拟机的小伙伴肯定知道这种方式,一般时候,我们自己电脑的虚拟机都使用NAT的方式,这样的话你的虚拟机要上网等于共享你主机的带宽,而使用了NAT的虚拟机,在点对点的传输中,需要使用网络地址与端口号的转换,因为对外界看起来,IP地址是自己本身主机的,不是虚拟机。
互联网的正常运转离不开每一个路由器的努力,哈哈,所以,请选一个好一点的路由器也是有道理的。到目前为止,网络层的知识算是讲完了!
关于计算机网络的知识还是非常多的,我学到的也只是其中一点皮毛而已,还是那句话,”在技术领域,我们都要有一颗谦卑的心。“