前端面试之计算机网络技术常见问题总结

本文深入讲解了计算机网络中的关键协议,包括OSI模型的各层功能、TCP与UDP的特性及区别、HTTP与HTTPS的工作原理,以及cookie和session在会话管理中的作用。同时,对比了GET与POST请求的方法差异,提供了网络通信的基础知识。
一、OSI模型
  OSI模型是即  Open System Interconnect  模型,开放系统互联模型是一个七层的计算机网络模型,由下至上依次是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
二、TCP和UDP

1.TCPUDPOSI模型中的运输层中的协议。TCP提供可靠的通信传输,而UDP则常被用于让广播和细节控制交给应用的通信传输。
2.TCP:面向连接、传输可靠(保证数据正确性,保证数据顺序)、用于传输大量数据(流模式)、速度慢,建立连接需要开销较多(时间,系统资源)
3.UDP:面向非连接、传输不可靠、用于传输少量数据(数据包模式)、速度快
4.TCP对应的协议:FTP、Telnet、SMTP、POP3、HTTP
5.UDP对应的协议:DNS、SNMP、TFTP
6.常见使用TCP协议的应用如:浏览器,用的HTTPFlashFXP,用的FTPOutlook,用的POP、SMTPPutty,用的Telnet、SSH;QQ文件传输
7.UDP:当强调传输性能而不是传输的完整性时, 要求网络通讯速度能尽量的快。如:QQ语音 QQ视频等。
8.TCP是数据流模式,是指TCP发送端发送几次数据和接收端接收几次数据是没有必然联系的
9.UDP是数据报模式,是指UDP发送端调用了几次 write,接收端必须用相同次数的 read读完

三、HTTP协议
HTTP 超文本传输协议,是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。
四、ARP和RARP协议
ARP是地址解析协议,根据IP地址获取物理地址的一个TCP/IP协议
RARP是逆地址解析协议,局域网中某个主机的物理地址转换为IP地址
五、DNS
DNS是域名解析系统,以将域名和IP地址相互映射的一个分布式数据库
六、IP地址
  1. 地址分类
    A类地址:以0开头, 第一个字节范围:0~127(1.0.0.0 - 126.255.255.255)
    B类地址:以10开头, 第一个字节范围:128~191(128.0.0.0 - 191.255.255.255)
    C类地址:以110开头, 第一个字节范围:192~223(192.0.0.0 - 223.255.255.255);
    10.0.0.0—10.255.255.255, 172.16.0.0—172.31.255.255, 192.168.0.0—192.168.255.255。(Internet上保留地址用于内部)

2.组播地址

  • A类地址以0开头,第一个字节作为网络号,地址范围为:0.0.0.0~127.255.255.255;(modified @2016.05.31)
  • B类地址以10开头,前两个字节作为网络号,地址范围是:128.0.0.0~191.255.255.255;
  • C类地址以110开头,前三个字节作为网络号,地址范围是:192.0.0.0~223.255.255.255。
  • D类地址以1110开头,地址范围是224.0.0.0~239.255.255.255,D类地址作为组播地址(一对多的通信);
  • E类地址以1111开头,地址范围是240.0.0.0~255.255.255.255,E类地址为保留地址,供以后使用。
    注:只有A,B,C有网络号和主机号之分,D类地址和E类地址没有划分网络号和主机号。

3.A-E类地址
A类地址:以0开头,第一个字节范围:0~127;
B类地址:以10开头,第一个字节范围:128~191;
C类地址:以110开头,第一个字节范围:192~223;
D类地址:以1110开头,第一个字节范围为224~239;
E类地址:以1111开头,保留地址

七、HTTP和HTTPS的区别

1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
3、httphttps使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443
4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

八、cookie和session的区别

不同点:

  1. session是保存在服务端,而cookie是保存在客户端
  2. session的实现是依赖于cookiecookie是会传递sessionId
  3. cookie会存在安全隐患,不安全,而session是相对安全
  4. cookie的存储有大小限制,而session是没有大小限制的
  5. session会在一定时间内保存在服务器上,当访问增多,会占用服务器的性能,如果主要考虑到减轻服务器性能方面,应当使用cookie
  6. 登陆信息等重要信息存放为session。其他信息如果需要保留,可以放在cookie
九、TCP的三次握手过程以及四次挥手是什么?两次握手可不可以?

1.三次握手
假设主机 A 为客户端,主机 B 为服务器端
TCP 的三次握手过程:主机 A 向 B 发送连接请求;主机 B 对收到的主机 A 的报文段进行确认;主机 A 再次对主机 B 的确认进行确认。

2.四次挥手

  • 第一次挥手:Client发送一个FIN,用来关闭ClientServer``的数据传送
  • 第二次挥手:Server收到FIN后,发送一个ACKClient,确认
  • 第三次挥手:Server发送一个FIN,用来关闭ServerClient的数据传送
  • 第四次挥手:Client收到FIN后,确认

3.两次握手并不可以,为了防止 已失效的链接请求报文突然又传送到了服务端,因而产生错误。
核心思想让双方都证实对方能发收。知道对方能收是因为收到对方的因为收到信息之后发的回应(ACK)。

十、Get和Post的区别是什么?
  1. Get是从服务器上获取的资源,Post是更新服务器上的资源
  2. GET请求可以被添加到书签中,也可保存在浏览器历史记录中,POST不能
    3.GET请求可以被浏览器缓存,POST不能
  3. GET请求收到URL长度限制,所以数据长度也受限制,POST不会,请求是没有大小限制
  4. GET请求只能传输ASCII字符,而POST不受此限制,还可以传输二进制数据
  5. Get请求是明文的,不安全的,而Post是相比于Get更加安全
  6. GET产生一个TCP数据包;POST产生两个TCP数据包。
  7. 对于GET方式的请求,浏览器会把http headerdata一并发送出去,服务器响应200(返回数据);而对于POST,浏览器先发送header,服务器响应100 continue,浏览器再发送data,服务器响应200 ok(返回数据)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值