灵魂9问,光怪陆离的网络世界有哪些不为人知的秘密?(网络面试必考)


一、是什么组成了网络?



2020
年,起码有200
亿以上的设备连入了互联网!
二、为什么我们可以享受网络服务?

1993
年开始,政府机构不再负责因特网的运营,这个时候无数的因特网服务提供商 ISP(Internet Service Provider)涌现,比如中国电信、联通、移动,为了给广大人民群众实现联网
ISP
向Internet
管理机构申请很多IP
地址,大ISP
自己造通信线路,小ISP
就租他们通信线路以及各种联网设备。ISP
交钱获得IP
使用权,就可以接入到互联网了。
ISP
获得的IP
地址,接入到因特网”IP
地址管理机构不会把单个IP
分配给单个用户,而是把一批IP
有偿租用给合格的ISP
,所以因特网就是无数的ISP
共同拥有的,这种现象被称为“网络中的网络”
ISP
根据其规模大小被拆分为不同层次,覆盖面积最广的就是主干ISP
,通常为国家级范围,其次是地区,借助一个或多个主干并联,最后是本地ISP
,可以直接连主干,也可以连地区,也就是我们最常用的(比如公司内网私有云、学校、公有云厂商)ISP
(除了顶层)都可以和多个ISP
互联,成为他们的下级,也就是多宿(multi-home), 这时候即使提供商之一出现问题,他仍然不会断网ISP
就那么几个,肯定要涵盖超大的网络数据流量,就算他有最大的带宽,可以完成流量交换,但是距离越远传输速度越慢是亘古不变的真理,如果先把相邻地区流量转发到千里之外再转发回来,是一种对网络资源的浪费
IXP
充当一个桥梁的作用,如上图,右侧两个地区ISP
就是通过IXP
连接起来,相当于“绕过”了最高ISP
,这部分的流量就不用给主干ISP
付钱了,也降低了网络延迟。IXP
可以省钱,让别人接入IXP
明摆着是赚钱的事,钱谁都想赚,那么IXP
是谁来建,谁运营,谁维护,如何收费,谁让主要的 ISP
愿意接进来,那就要各显神通了。NAP/IXP
点,深圳移动用户访问深圳电信网络就可以不出市,费用按NAP/IXP
的博弈价格收费,便宜多了,从整个大网的拓扑看,流量确实也得到很大的优化。
BAT
在干嘛呢?BAT
严格意义上来说不属于ISP
,他们是提供内容的,所以被叫做因特网内容提供商 ICP
(Internet Content Provider),内容供应商有内容,他们的数据中心需要和运营商网络互联互通,才能被他们的用户访问。边界网关协议 BGP
(Border Gateway Protocol),简单来说你向BAT
发消息,他们就近原则回消息,根据你访问的源地址,判断消息从哪里过来的,如果是电信,就走电信的线路回去。如果是联通,就走联通的线路回去。
互联网数据中心 IDC
(Internet Data Center)都是运营商的,为了让自己的服务跑的更快,现在是 BAT
都自建数据中心,也就是云,多余的计算资源也向外提供,把计算放到云上,这就是云计算,尤其是阿里和腾讯的云服务很不错。IDC
同时也是一个IXP
点,网络的互联互通就是楼道之间的布线,不但成本低,而且更稳定(不用担心光缆被挖断)。这个IDC
的网络质量就比普通的IDC
要优秀,也就更值钱。这种模式就是现在火热的互联网盈利模式,IXP
可以不赚钱,IDC
发大了。
软件定义网络 SDN
(Software Defined Network)的东西,特别是可编程路由,使得路由可以根据业务需求,流量需求,怎么省钱怎么来,用他来充当IXP
的角色,成本比路由器还要便宜,而且可以按需调度,可以支持复杂流量工程,以实现分布式拒绝服务(DDOS
)防止被攻击。三、为什么不同国家的计算机能听懂对方说的话?



硬件直接通过网线互联,通过协议控制网卡之间的比特流 端系统通过阻塞控制协议,控制收发包过程中分组发送速率 路由器协议,控制分组从源到目的地之间的路径

协议 (Protocol):定义在两个或多个通信实体之间的报文样式和顺序,以及报文发送和接收一条报文/事件所采取的动作。
wifi
,揭秘网络的边缘。四、为什么我的电脑、手机、ipad 都能在家里连网?


ISP
,通过数模转换得到数字型号,家到ISP
通过双绞铜线连接(搓成麻花状的铜线)


wifi
、蜂窝网络(2G、3G、4G、LET)。
100
个接线员服务一个人都不够。ipad
等设备,一般指可以接触到并拿在手中,只要连网就可以享受服务的设备。
web
网站、视频、中继电子邮件等的大型计算机或者数据中心,这些数据中心里面可能有数十万台服务器。

客户端知道服务器的地址,主动向服务器发起通信,服务器可同时处理多个远程客户的请求且永远不停机的运行。

ISP
、IXP
、ICP
,但是并不知道,客户端发送一条信息,怎么通过千山万水准确的到达服务器,下一节我们来缕一缕这个过程。五、为什么郭杰瑞在美国发送一条视频,远在中国深圳南山科技园的我能收到?




byte
的集合(可以理解为10101100
这样的高低电平),通过通信链路和分组交换机(路由器和链路交换机)进行传输。


16
跳(16
次)以内就能到达任意位置这就是路由选择协议(routing protocol)的内容,如果感兴趣可以自己下来查查。www.traceroute.org
,随便选择一个源,输入你的真实ip
或域名,看看他是怎么跳转的。AS 1221
节点和百度的域名,经过了13
跳才到达目的地。
六、为什么网络要分层?

web
开发的同学可能听过四层、七层负载均衡,其实无非是绑定ip
还是绑定域名的区别。
TCP
和UDP
协议就是在传输层起的作用IP
地址)等信息(IP 首部),让接受端知道包是从哪来的MAC
(Media Access Contol 介质访问控制)地址,将一个数据帧从一个节点传送到相同链路的另一个节点TCP/IP
协议,可以把一个IP
分配给多个主机而交换机不能,交换机在链路层是根据MAC
寻址,可以提供防火墙功能而路由器不能。路由器主要用来连接多个网络,交换机主要用来使局域网连接更多计算机。
ASCII
码,IBM 主机使用 EBCDIC 编码SSL/TLS
,有了安全层提供的服务,位于应用层的HTTP/SMTP/FTP
,都可以在其名字后加一个S
(Security),比如HTTPS
,其实这个世界压根不存在HTTPS
协议,只有HTTP
协议,加上 S 的后缀只是告诉大家HTTP
使用的是六层结构,有了SSL/TLS
的安全保护。七、为什么明明我办了 100M 的宽带,却怎么也跑不满?

100M
的宽带,为什么我的网速达不到100M/s
呢?几乎所有人都有这样的疑惑100M
的带宽,实际上网速只有可怜的12M/s
,此兆非彼兆~100M
宽带的正常速度就是100 Mbit/s
,只是单位不同而已 8bit=1B
, 我们关注的是MB/s
,所以100 Mbit/s = 100/8 = 12MB/S
八、为什么打游戏、看视频会卡?

12M/s
的速度我也认了,为什么现在卡的只有1M/S
? 小熊这你又怎么解释?”



100M
带宽,如果全部跑满,他的峰值吞吐量(throughput)就是12Mbps
,吞吐量就是单位时间内成功地传送数据的数量(以比特、字节、分组等测量)100M
,也就是说,如果小区内有一百人同时在线,那么就是有一百人在共享这100M
的带宽,因此,共享带宽下的宽带接入,在上网用户稍多时可能速度会有所降低。ADSL
(全称为 Asymmetric Digital Subscriber Line,非对称数字用户线路),每个用户的网络终端都有单独的一条线路与ADSL
局域端相连,可以保证所有带宽是由每一用户独享的,即使用户激增,其速度也不会减慢。
21
世界20
年代了,ADSL
是用电话线上网,最大理论上行速率可达到 1Mbps,下行速率可达 8Mbps,早被淘汰了,老老实实用LAN
,办大一点的宽带才是王道,有线有条件直接拉光纤,我在网上查到的市场价,100M
的光纤大概一年一千多,不过就得你们小区有没有了。wifi
信号方法:买 wifi
放大器,信号放大器接收主路由器的信号,放大之后再发射出来,因此家里的信号还是同一个,手机、Pad 会连接质量较好的信号。在装修的时候多埋一根网线,从主路由器位置延伸到信号不好的地方,再接一个路由器,主副路由器之间通过各自的 LAN 口连接起来,此时副路由器相当于无线交换机。
九、为什么你的电脑会受到攻击?



windows
),而应用程序目标是运行在操作系统上的各种程序。

http
开头的网站上要格外小心;本地储存的敏感文件进行加密;不要点开陌生人发来的邮件特别是打开附件;使用值得信赖的软件、安全类软件、及时清理自己的隐私记录、设置防火墙。总结

参考文献
对 IXP 的一些思考 https://coding3min.com/go/1241/ ICP 百度百科 https://coding3min.com/go/1240/ 阿里云说的多线 BGP 接入到底指的是什么东西? https://www.zhihu.com/question/266549604 BGP 维基百科 https://coding3min.com/go/1239/ IDC 百度百科 https://coding3min.com/go/1235/ SDN 与 IXP https://www.cnblogs.com/pullself/p/10806054.html 网络协议 百度百科 https://coding3min.com/go/1236/ 对等网络-百度百科 https://coding3min.com/go/1237/ 路由选择协议-百度百科 https://coding3min.com/go/1238/ 学习笔记-计算机网络 https://www.pianshen.com/article/4615873688/ 计算机网络(自顶向下方法)学习笔记 https://blog.csdn.net/qq_39326472/article/details/88089747 《计算机网络-自顶向下方法 第 7 版》 《计算机网络-第 6 版》 宽带中的 ADSL 与 LAN 有什么区别? https://coding3min.com/go/1245/ 什么是共享带宽? https://coding3min.com/go/1242/ 交换机和路由器有什么区别 https://coding3min.com/go/1243/ 为什么说交换机工作在数据链路层? https://coding3min.com/go/1244/ 表示层( presentation layer)和会话层(session layer)为什么会被弃用? https://www.zhihu.com/question/58798786 应用层、表示层、会话层、传输层、网络层、数据链路层、物理层 https://blog.csdn.net/weixin_41738417/article/details/92796077 OSI 七层模型的学习-会话层、表示层和应用层 https://www.jianshu.com/p/801e650850b7 网络安全攻击分类分析 https://zhuanlan.zhihu.com/p/50235996
有道无术,术可成;有术无道,止于术
欢迎大家关注Java之道公众号
好文章,我在看❤️
评论