今天上午10:00参加了一个新华三杯,是关于计算机网络的,100道题,发现没有一道是自己会的,好歹也是学过一学期的计算机网络,到头来发现啥也不会,然后现在就又去复习一下网络。
OSI七层模型
*应用层:最靠近用户的议程,如:HTTP,FTP等协议;
*表示层:提供用于应用层数据的编码和转换功能,如:base64对数据的编解码;
*会话层:负责建立,管理和终止表示层实体之间的通信绘画;
*传输层:建立了主机端到端的连接,如:TCP,UDP协议;
*网络层:通过IP寻址来建立2个节点之间的连接;
*数据链路层:数据传输路线;
*物理层:实际最终信号的传输。
局域网与广域网
局域网:
*生活中我们的每一个学校、公司都是一个局域网
*局域网可以理解为我们自己使用路由器、交换机组成的内部网络
*这个网络实现的内容机器的通信,比如 咱们访问学校的 ftp 服务器上传课件就是通过局域网
*我们电脑,通过内部网络访问 ftp 服务器,不经过 移动、联通等公网,所以速度特别快
广域网:
*生活中我们使用的 移动、联通、电信 等网络都是广域网的部分
*广域网是连接不同地区局域网或城域网计算机通信的远程网。
*它所覆盖的范围从几十公里到几千公里,它能连接多个地区、城市和国家,形成国际性的远程网络。
*我们学校中的电脑访问百度,就是 通过学校局域网,连接广域网,最后到达百度服务器
网络环路及其影响
网络环路:也分为第二层环路和第三层环路,所有环路的形成都是由于目的路径不明确导致混乱而造成的,例如第二层,一个广播信息经过两个交换机的时候会不断恶性循环的产生广播,造成环路,而第三层环路则是原路由意外不能工作,造成路由通告错误,形成一个恶性循环;
简单点比方说:两台交换机相连,应该使用一条线相连,达到级联的效果,如果使用两条线连接,就构成了回路;
因此在回路产生的时候需要对交换机配置 生成树协议(STP:Spanning tree),不然的话信息会无终止传输,引起广播风暴.整个网络瘫痪。
影响:
*Broadca ststorms广播风暴
*Multiple Frame Copies多重复数据帧
*MAC Database Instability MAC地址表不稳定
1)广播风暴
广播风暴(broadcast storm)简单的讲是指当广播数据充斥网络无法处理,并占用大量网络带宽,导致正常业务不能运行,甚至彻底瘫痪,这就发生了“广播风暴”。一个数据帧或包被传输到本地网段 (由广播域定义)上的每个节点就是广播;由于网络拓扑的设计和连接问题,或其他原因导致广播在网段内大量复制,传播数据帧,导致网络性能下降,甚至网络瘫痪,这就是广播风暴。
2)多重复数据帧
主机X准备发一个单播帧给路由器Y,数据报发出后,发现有两条路可以到达路由器Y,一个是直接发过去,还有一条就是通过交换机A转给交换机B,然后再交给路由器Y,此时路由器Y就收到了两位一模一样的数据帧。
3)MAC地址表不稳定
还是主机X发送数据帧给路由器Y,路由器的MAC地址表还没有被交换机学习到,数据帧沿链路发送到交换A和交换机B的端口0,那么交换机A和交换机B都将主机X的MAC地址记录在port0。因为是通过port0收到的数据帧,所以会通过两个交换机的port1向外泛洪,交叉来到相互交换机的port1口,又认为主机X的MAC地址所对应的端口是port1,即从交换机A发出来的数据帧来到了交换机B的port1端口。然后交换机B收到后又通过Port0口再次泛洪,依次类推,数据帧在环路里重复执行上述过程,交换机A和交换机B重复的在port1以及port0上不断的学习主机X的MAC地址,造成MAC地址表的不稳定。
当输入 URL 到页面渲染发生了什么
*浏览器解析 URL 并检查缓存决定是否发出请求;
*DNS 解析:首先会判断本地是否有该域名的 IP地址缓存,没有就向本地DNS 服务器发起请求,如果没有就会接力一直查到根域名服务器;
*获取目的主机 MAC 地址:因为数据链路层的发送需要加入双方的 MAC 地址;
*TCP 三次握手(如果是 HTTPS 还需要一个 TLS 的四次握手过程);
*页面发送请求,服务器处理并响应;
*页面渲染:首先根据 html 构建 dom 树,然后解析 css 构建 cssOM 树,两者构建 render 树,根据 render 树完成布局,浏览器通过渲染线程进行绘制;
*TCP 四次挥手;