计算机网络篇

在这里插入图片描述

一、介绍一下OSI七层模型、TCP/IP的四层协议、五层协议

应用层
为特定应用程序提供数据传输服务
表示层
数据压缩、加密以及数据描述。这使得应用程序不必担心在各台主机中表示存储的内部格式不同的问题。
会话层
建立、管理、终止会话
传输层
提供进程间的通用数据传输服务。协议有:TCP UDP
网络层
为主机间提供数据传输服务。网络层把运输层传递下来的报文段或者用户数据报封装成分组。
数据链路层
将比特组合成字节进而组合成帧。建立逻辑连接、进行硬件地址寻址、差错校验等功能
物理层
考虑怎样在传输媒体上传输数据比特流。物理层的作用是尽可能屏蔽传输媒体和通信手段的差异,使数据链路层感觉不到这些差异。

二、介绍一下域名系统

域名系统(DNS)是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。一个公司的 Web 网站可看作是它在网上的门户,而域名就相当于其门牌地址,通常域名都使用该公司的名称或简称。例如:IBM 公司的域名是 http://www.ibm.com、Oracle 公司的域名是 http://www.oracle.com。

三、浏览器输入网址后执行过程(HTTP请求过程)

浏览器发起请求-> 解析域名得到ip进行TCP连接 ->浏览器发送HTTP请求和头信息发送->服务器对浏览器进行应答,响应头信息和浏览器所需的内容-> 关闭TCP连接或保持-> 浏览器得到数据数据进行操作。

四、简述HTTP中GET和POST的区别

1、从原理性看:
GET用于信息获取,而且应该是安全和幂等的
POST请求表示可能修改服务器上资源的请求
2、从表面上看:
GET请求的数据会附在URL后面
POST的数据放在HTTP包体,POST安全性比GET安全性高。

五、HTTP与HTTPS区别

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

六、请简述一下TCP和UDP,以及它们的区别

TCP和UDP是OSI模型中的运输层中的协议。TCP提供可靠的通信传输,而UDP则常被用于让广播和细节控制交给应用的通信传输。
传输控制协议 TCP(是有连接的,提供可靠交付,有流量控制,拥塞控制,面向字节流,把应用层传下来的报文看成字节流,把字节流组织成大小不等的数据块,每一条 TCP连接只能是点对点的(一对一)。
用户数据报协议 UDP:无连接的,尽最大可能交付,没有拥塞控制,面向报文对于应用程序传下来的报文不合并也不拆分,只是添加 UDP 首部,支持一对一、一对多、多对一和多对多的交互通信。
总结TCP和UDP的区别:
1)TCP提供面向连接的传输;UDP提供无连接的传输
2)TCP提供可靠的传输(有序,无差错,不丢失,不重复);UDP提供不可靠的传输。
3)TCP面向字节流的传输,因此它能将信息分割成组,并在接收端将其重组;UDP是面向数据报的传输,没有分组开销。
4)TCP提供拥塞控制和流量控制机制;UDP不提供拥塞控制和流量控制机制。
5)TCP只能是点对点的(一对一)。UDP支持一对一、一对多、多对一和多对多的交互通信。

七、说一说TCP的三次握手和四次挥手

(一)三次握手
在TCP/IP协议中,TCP协议提供可靠的连接服务,连接是通过三次握手进行初始化的。三次握手的目的是同步连接双方的序列号和确认号并交换 TCP窗口大小信息。
第一次握手:主机A发送位码为SYN=1,随机产生seq number=1234567的数据包到服务器,主机B由SYN=1知道,A要求建立联机;
第二次握手,主机B收到请求后要确认联机信息,向A发送ack number=(主机A的seq+1),SYN=1,ACK=1,随机产生seq number=7654321的包;
第三次握手:主机A收到后检查ack number是否正确,即第一次发送的seq number+1,以及位码ACK是否为1,若正确,主机A会再发送ack number=(主机B的seq+1),ACK=1,主机B收到后确认seq值与ACK=1则连接建立成功。
(二)四次握手
四次挥手是指终止TCP连接协议时,需要在客户端和服务器之间发送四个包
第一次挥手:主动关闭方发送第一个包,其中FIN标志位为1,发送顺序号seq为X。
第二次挥手:被动关闭方收到FIN包后发送第二个包,其中发送顺序号seq为Z,接收顺序号ack为X+1。
第三次挥手:被动关闭方再发送第三个包,其中FIN标志位为1,发送顺序号seq为Y,接收顺序号ack为X。
第四次挥手:主动关闭方发送第四个包,其中发送顺序号为X,接收顺序号为Y。至此,完成四次挥手。
八、IP地址分为哪几类?简单说一下各个分类
IP地址分A,B,C,D,E五类:
A类地址以0开头,第一个字节作为网络号,地址范围为:0.0.0.0~127.255.255.255
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类地址没有划分网络号和主机号。
1、255.255.255.255
  该IP地址指的是受限的广播地址。受限广播地址与一般广播地址(直接广播地址)的区别在于,受限广播地址只能用于本地网络,路由器不会转发以受限广播地址为目的地址的分组;
2、0.0.0.0
  常用于寻找自己的IP地址
3、回环地址
127.0.0.0/8被用作回环地址,回环地址表示本机的地址,常用于对本机的测试,用的最多的是127.0.0.1。

九、简述一下Cookie 和 Session的区别

Cookie 和 Session都是用来跟踪浏览器用户身份的会话方式
1、数据存放位置不同:
cookie数据存放在客户的浏览器上,session数据放在服务器上。
2、安全程度不同:
cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗,考虑到安全应当使用session。
3、性能使用程度不同:
session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应当使用cookie。
4、数据存储大小不同:
单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie,而session则存储在服务端,浏览器对其没有限制。
5、会话机制不同:
session会话机制:session会话机制是一种服务器端机制,它使用类似于哈希表(可能还有哈希表)的结构来保存信息。
cookies会话机制:cookie是服务器存储在本地计算机上的小块文本,并随每个请求发送到同一服务器。

十、常见的状态码有哪些?

状态码由3位数字和原因短语组成。
2××成功
200 OK客户端发来的请求在服务器端被正常处理了。
204 No Content请求已成功处理,但无资源返回。
3××重定向
301 Moved Parmanently永久性重定向。请求的资源已被分配了新的URL。
302 Found临时重定向。请求的资源被临时定位到新的URL。
304 NotModified 客户端已有缓存
4××客户端错误
400 Bad Request 请求报文中存在语法错误,需要修改请求的内容;
404 Not Found 服务器上没有找到请求的资源。
5××服务器错误
500 服务器在执行请求时发生了错误;
503服务器停机或者正在维护。

十一、URL和URI的区别

URI 统一资源标识符。URL统一资源定位符
URI用字符串标识某一互联网资源,而URL表示资源的位置,URL是URI的子集。

十二、ARP是地址解析协议,简单语言解释一下工作原理。

1:首先,每个主机都会在自己的ARP缓冲区中建立一个ARP列表,以表示IP地址和MAC地址之间的对应关系。
2:当源主机要发送数据时,首先检查ARP列表中是否有对应IP地址的目的主机的MAC地址,如果有,则直接发送数据,如果没有,就向本网段的所有主机发送ARP数据包,该数据包包括的内容有:源主机IP地址,源主机MAC地址,目的主机的IP地址。
3:当本网络的所有主机收到该ARP数据包时,首先检查数据包中的IP地址是否是自己的IP地址,如果不是,则忽略该数据包,如果是,则首先从数据包中取出源主机的IP和MAC地址写入到ARP列表中,如果已经存在,则覆盖,然后将自己的MAC地址写入ARP响应包中,告诉源主机自己是它想要找的MAC地址。
4:源主机收到ARP响应包后。将目的主机的IP和MAC地址写入ARP列表,并利用此信息发送数据。如果源主机一直没有收到ARP响应数据包,表示ARP查询失败。
广播发送ARP请求,单播发送ARP响应。

十三、说一下DNS的解析过程?

1、当客户机提出查询请求时,首先在本地计算机的缓存中查找。如果在本地无法获得查询信息,则将查询请求发给DNS服务器。
2、首先客户机将域名查询请求发送到本地DNS服务器,当本地DNS服务器接到查询后,首先在该服务器管理的区域的记录中查找,如果找到该记录,则利用此记录进行解析;如果没有区域信息可以满足查询要求,服务器在本地的缓存中查找。
3、如果本地服务器不能在本地找到客户机查询的信息,将客户机请求发送到根域名DNS服务器。
4、根域名服务器负责解析客户机请求的根域部分,它将包含下一级域名信息的DNS服务器地址返回给客户机的DNS服务器地址。
5、客户机的DNS服务器利用根域名服务器解析的地址访问下一级DNS服务器,得到再下一级域我的DNS服务器地址。
6、按照上述递归方法逐级接近查询目标,最后在有目标域名的DNS服务器上找到相应IP地址信息。
7、客户机的本地DNS服务器将递归查询结果返回客户机。
8、客户机利用从本地DNS服务器查询得到的IP访问目标主机,就完成了一个解析过程。

十四、请简单说一下你了解的端口及对应的服务?

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值