计算机网络面试常考点准备一

166 阅读4分钟

这是我参与更文挑战的第11天,活动详情查看: 更文挑战

一、ARP协议

地址解析协议

1.1 IP地址与MAC地址

  • MAC地址是数据链路层和物理层使用的地址
  • IP地址是网络层和以上各层使用的地址

这里写图片描述

1.2 ARP地址解析协议

基本功能为透过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。将IP地址转化为物理地址。不过再IPv6已不再使用,并被邻居发现协议(NDP)所替代。

1.3 ARP工作机制

报文格式

这里写图片描述

以太网传输层

在每台安装有TCP/IP协议的电脑或路由器都有一个ARP缓存表,表中的IP地址和MAC地址是一一对应的,如下表所示。

这里写图片描述

在主机A要向区域网上某个主机B发送IP数据报时,就先在其ARP高速缓存中查找有无主机B的IP地址。

  • 如果有,就在ARP高速缓存中查出其对应的硬件地址,再把其硬件地址写入到MAC帧,然后通过区域网把改MAC帧发往此硬件地址。

  • 如果没有,则:

    1. ARP进程在本局域网发送一个ARP请求分组

      这里写图片描述

    2. 本区域网上所有主机运行的ARP进程都收到此ARP请求分组

    3. 主机B在ARP分组中见到自己的IP地址就向A发送ARP响应分组,并写入自己的硬件地址,响应分组是普通的单播

    4. 主机A收到主机B的ARP响应分组后,就在其ARP高速缓存中写入主机B的IP地址到硬件地址的映射

    5. 另外,当发送主机和目的主机不在同一个局域网中时,即便知道目的主机的MAC地址,两者也不能直接通信,必须经过路由转发才可以。所以此时,发送主机通过ARP协议获得的将不是目的主机的真实MAC地址,而是一台可以通往局域网外的路由器的MAC地址。于是此后发送主机发往目的主机的所有帧,都将发往该路由器,通过它向外发送。这种情况称为委托ARP或ARP代理(ARP Proxy)。

二、TCP三次握手和四次挥手

1. 三次握手

在这里插入图片描述

2. 四次挥手

在这里插入图片描述

三、HTTP和HTTPS区别

参考链接:www.mahaixiang.cn/internet/12…

  • http:超文本传输协议,https:安全套接字超文本传输协议
  • https在http的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并未浏览器和服务器之间的通信加密
  • https协议需要到CA申请证书
  • http端口:80,https端口:443

https协议主要作用:

(1)建立一个信息安全通道,来保证数据传输的安全;

(2)确认网站的真实性

四、get和post区别

  • 最直观的区别:get参数包含在url中,post则通过request body传递参数

  • 本质:都是tcp链接,并无差别。但是由于http的规定和浏览器/服务器的限制,导致他们在应用过程中体现出一些不同

  • 最重要的区别:get产生一个tcp数据包,而post产生两个tcp数据包

    • 对于get方式的请求,浏览器会吧http header和data一并发送出去,服务器响应200(返回数据)
    • 对于post,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)

    并不是所有的浏览器都会在post中发送两次包,Firefox就只发送一次

五、TCP和UDP区别

TCP、UDP协议的区别

UDP 在传送数据之前不需要先建立连接,远地主机在收到 UDP 报文后,不需要给出任何确认。虽然 UDP 不提供可靠交付,但在某些情况下 UDP 确是一种最有效的工作方式(一般用于即时通信),比如: QQ 语音、 QQ 视频 、直播等等

TCP 提供面向连接的服务。在传送数据之前必须先建立连接,数据传送结束后要释放连接。 TCP 不提供广播或多播服务。由于 TCP 要提供可靠的,面向连接的传输服务(TCP的可靠体现在TCP在传递数据之前,会有三次握手来建立连接,而且在数据传递时,有确认、窗口、重传、拥塞控制机制,在数据传完后,还会断开连接用来节约系统资源),这一难以避免增加了许多开销,如确认,流量控制,计时器以及连接管理等。这不仅使协议数据单元的首部增大很多,还要占用许多处理机资源。TCP 一般用于文件传输、发送和接收邮件、远程登录等场景。