面试常问问题——计算机网络

1、路由器和交换机有什么区别?

参见原作者:http://wenzhongxiang.blog.51cto.com/6370734/1304626

基本概念:

  • 交换机(英文:Switch,意为“开关”)是一种用于电信号转发的网络设备。它可以为接入交换机的任意两个网络节点提供独享的电信号通路。最常见的交换机是以太网交换机。其他常见的还有电话语音交换机、光纤交换机等。

  • 路由器(Router)是连接因特网中各局域网、广域网的设备,它会根据信道的情况自动选择和设定路由,以最佳路径,按前后顺序发送信号的设备。路由器是互联网络的枢纽、"交通警察"。目前路由器已经广泛应用于各行各业,各种不同档次的产品已成为实现各种骨干网内部连接、骨干网间互联和骨干网与互联网互联互通业务的主力军。

二者的区别:

(1)交换机工作在第二层,数据链路层;路由器工作在第三层,网络层。

(2)在数据链路层只能识别物理地址,因此当交换机的某个端口收到一个数据帧时,交换机会读取数据帧中相应的目标地址的MAC地址,然后在自己的MAC地址表中查找是否有目标MAC地址的端口信息,如果有,则把数据帧转发到相应的端口;如果没有,则向除源端口外的所有端口进行转发。

(3)当路由器的某个接口收到一个包时,路由器会读取包中相应目标的逻辑地址的网络部分,然后在路由表中进行查找。如果在路由表中找到了目标地址的路由条目,则把包转发到路由器的相应接口;如果在路由表中没有找到目标地址的路由条目,那么,如果路由器配置了默认路由,就根据默认路由的配置转发到路由器的相应接口;如果路由器中没有配置默认路由,则将该包丢弃,并返回不可达信息。

(4)传统的交换机只能分割冲突域,不能分割广播域;而路由器可以分割广播域;

(5)路由器提供了防火墙的服务:路由器仅仅转发特定地址的数据包,不传送不支持路由协议的数据包传送和未知目标网络数据包的传送,从而可以防止广播风暴。



2、从地址栏输入URL到页面加载完成,发生了什么?

        整个过程大致可分为以下几个过程:DNS域名解析 -> TCP连接 -> HTTP请求 -> 处理请求返回HTTP响应 -> 页面渲染 -> 关闭连接

(1)DNS域名解析

       域名是与IP地址的一个映射,域名解析的过程是将域名还原为IP地址的过程。

       DNS域名解析有两种方法,分别是迭代查询和递归查询。

a.迭代查询

面试常问问题——计算机网络_第1张图片


b.递归查询

面试常问问题——计算机网络_第2张图片


(2)TCP连接

       在获取到IP地址后,便会开始建立一次连接,这是由TCP协议完成的,主要通过三次握手进行连接。

三次握手过程如下图:

面试常问问题——计算机网络_第3张图片

(3)HTTP请求

       在确认与服务器建立连接后,便会发送一个HTTP请求,HTTP请求的报文主要包括请求行,请求头,请求正文。

       请求行的内容一般类似于:GET index.html HTTP/1.1

       请求头的内容一般如下,可以通过浏览器开发者工具查看

       面试常问问题——计算机网络_第4张图片


(4)处理请求返回HTTP响应 

       服务器在收到浏览器发送的HTTP请求之后,会将收到的HTTP报文封装成HTTP的Request对象,并通过不同的Web服务器进行处理,处理完的结果以HTTP的Response对象返回,主要包括状态码,响应头,响应报文三个部分。

状态码主要包括以下部分:

1xx:指示信息–表示请求已接收,继续处理。

2xx:成功–表示请求已被成功接收、理解、接受。

3xx:重定向–要完成请求必须进行更进一步的操作。

4xx:客户端错误–请求有语法错误或请求无法实现。

5xx:服务器端错误–服务器未能实现合法的请求。

响应头主要由Cache-Control、 Connection、Date、Pragma等组成

响应体为服务器返回给浏览器的信息,主要由HTML,css,js,图片文件组成


(5)页面渲染

        页面DOM树的渲染是个复杂的过程,需要深入了解DOM原理,这里简要描述一下,主要过程如下:

面试常问问题——计算机网络_第5张图片


(6)关闭连接

       在页面元素传输完成后,会选择关闭连接,此时用到的是TCP四次挥手

       TCP四次挥手过程如下图所示:

面试常问问题——计算机网络_第6张图片



你可能感兴趣的:(面试常问问题)