1 OSI七层模型
七层模型,亦称OSI(Open System Interconnection)。
应用层。网络服务与最终用户的一个接口。
表示层。
会话层。建立、管理、终止会话。
传输层。定义传输数据的协议端口号,以及流控和差错校验。
网络层。进行逻辑地址寻址,实现不同网络之间的路径选择。
数据链路层。建立逻辑连接、进行硬件地址寻址、差错校验等功能。
物理层。建立、维护、断开物理连接。
2 TCP/IP四层模型
应用层:应用层是TCP/IP协议的第一层,是直接为应用进程提供服务的。
运输层:作为TCP/IP协议的第二层,运输层在整个TCP/IP协议中起到了中流砥柱的作用。
网络层:网络层在TCP/IP协议中的位于第三层。
网络接口层:在TCP/IP协议中,网络接口层位于第四层。
3 简述TCP包头内容
TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。
4 三次握手和四次挥手
三次握手别名,TCP握手协议。为了对每次发送的数据量进行跟踪与协商。
过程
第一次握手:建立连接时,客户端发送syn包(seq=j)到服务器,并进入SYN_SENT状态,等待服务器确认。SYN:同步序列编号(Synchronize Sequence Numbers)。
第二次握手:服务器收到syn包,必须确认客户端的SYN(ack=j+1),同时自己也发送一个SYN包(seq=k),即SYN+ACK包,此时服务器进入SYN_RECV状态。 ACK(Acknowledge character)即是确认字符,在数据通信中,接收站发给发送站的一种传输类控制字符。表示发来的数据已确认接收无误。
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED(TCP连接成功)状态,完成三次握手。
四次挥手,别名连接终止协议。其性质为终止协议。
过程
(1) TCP客户端发送一个FIN,用来关闭客户到服务器的数据传送。
(2) 服务器收到这个FIN,它发回一个ACK,确认序号为收到的序号加1。和SYN一样,一个FIN将占用一个序号。
(3) 服务器关闭客户端的连接,发送一个FIN给客户端。
(4) 客户端发回ACK报文确认,并将确认序号设置为收到序号加1。
5 网络地址与主机地址
网络地址指的是互联网上的节点在网络中具有的逻辑地址,可对节点进行寻址。主机地址指的是IP地址右边部分用来标识主机本身的部分。
6 浏览器输入URL到返回页面全过程
第一步,解析域名,找到主机IP;第二步,浏览器与网站建立TCP连接;第三步,浏览器发起GET请求;第四部分,显示页面或返回其他。
7 HTTP与HTTPS区别?HTTPS握手
HTTP和HTTPS的基本概念
HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。
HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。
HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。
HTTP与HTTPS有什么区别?
HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全,为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。简单来说,HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。
HTTPS和HTTP的区别主要如下:
1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
HTTPS握手
1 客户端获取服务端的公钥, 对对称加密的秘钥进行加密, 传给服务端.
2 客户端采用对称加密 加密数据, 并传给服务端,
3 服务端用之前的传来的对称加密密文 进行解密,
8 TCP拥塞控制、慢启动、滑动窗口
TCP采用基于窗口的方法进行拥塞控制。该方法属于闭环控制方法。
TCP发送维持一个拥塞窗口CWND(Congestion Window)。
真正的发送窗值=Min(公告窗口值,拥塞窗口值)
TCP的四种拥塞控制算法
1.慢开始
2.拥塞避免
3.快重传
4.快恢复
慢启动是指每次TCP接收窗口收到确认时都会增长。增加的大小就是已确认段的数目。
滑动窗口协议是用来改善吞吐量的一种技术,即容许发送方在接收任何应答之前传送附加的包。接收方告诉发送方在某一时刻能送多少包(称窗口尺寸)。
9 TCP和UDP
TCP,传输控制协议。
TCP是面向连接的运输层协议。
每一条TCP连接只能有连个端点,每一条TCP连接只能是一对一。
TCP提供可靠交付的服务。
TCP提供全双共通信。
TCP是面向字节流的。
UDP,用户数据报协议。
UDP是无连接的,使用尽最大努力交付,是面向报文的,没有拥塞控制。
UDP支持一对一、一对多、多对一和多对多的交互通信。
UDP的首部开销小,只有8个字节,比TCP的20个字节的首部要短。
10 ARP协议与ARP欺骗
ARP协议,就是地址解析协议。就是主机在发送帧前将目标IP地址转换为目标MAC地址的过程。
ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。
让主机A把自己的ARP缓存中关于192.168.0.3映射的硬件地址地址改为主机B的硬件地址。