1、JAVA
2、计算机网络
3、计算机体系结构
4、数据库
5、计算机租场原理
6、软件工程
7、大数据
8、英文 自我介绍
HTTP是无状态的,一次请求完成,不会持久化请求与相应的信息。为了保存用户的状态,设置了
cookie。
cookie保存在本地,请求服务器时带上。
Session代表服务器和客户端一次会话的过程,保存在服务器上。
目前大多数的应用都是用Cookie实现Session跟踪的。第一次创建Session时,服务端会通过在
HTTP协议中返回给客户端,在Cookie中记录SessionID,后续请求时传递SessionID给服务,以便
后续每次请求时都可分辨你是谁。
区别:
作用范围不同,Cookie 保存在客户端(浏览器),Session 保存在服务器端。
存取方式的不同,Cookie只能保存 ASCII,Session可以存任意数据类型,比如UserId等。
有效期不同,Cookie可设置为长时间保持,比如默认登录功能功能,Session一般有效时间较短,
客户端关闭或者Session超时都会失效。
隐私策略不同,Cookie存储在客户端,信息容易被窃取;Session存储在服务端,相对安全一些。
存储大小不同, 单个Cookie 保存的数据不能超过 4K,Session可存储数据远高于Cookie
建立连接发送了那些数据?
客户端发送SYN=1,seq=x=1,表示请求建立连接,进入SYN_SENT状态
服务端接收到客户端请求,发送SYN=1,seq=y,ACK=1,ack=x+1,表示同意建立连接,进入
SYN_RECIVED状态。
客户端接受后,发送ACK=1,ack=y+1, seq=x+1,表示接收到服务器端同意连接信号,进入
established状态
服务端接收到后,知道了客户端的发送能力和接受能力都是正常的,进入established状态
第一次服务端确认客户端的发送能力
第二次客户端确认服务端的发送能力和接受能力
第三次服务端确认客户端的接受能力
为什么不是两次或者四次?
两次:已失效的连接报文段又传送到服务端从而发生错误。
发一个就建立连接,会建立许多无效的连接,造成服务器资源的浪费3
四次:效率低,可以提高连接的速度与效率。
滑动窗口协议是传输层进行流量控制的一种措施。接受数据端使用的窗口大小,用来告知发送端接
收端的缓存大小,以此可以控制发送端发送数据的大小,从而达到流量控制的目的。
防止过多的数据注入到网络中,这样可以使网络中的路由器或链路不致过载。拥塞控制所要做的都
有一个前提:网络能够承受现有的网络负荷。拥塞控制是一个全局性的过程,涉及到所有的主机、
路由器,以及与降低网络传输性能有关的所有因素。
滑动窗口与拥塞窗口的区别就在于,滑动窗口取决于接收端的缓存大小,拥塞窗口取决于当前网络
的负载能力。滑动窗口位于传输层(区别于数据链路层的),拥塞控制更关注网络层。
滑动窗口解决的是流量控制,让发送方和接受方对数据包的处理速度一致。
拥塞窗口解决的是多主机之间共享网络时出现的网络拥塞问题,就是带宽等原因使得网络不能让所有主
机全速发送数据包。
即前者流量控制,后者拥塞控制。
cwnd:拥塞窗口
ssthresh: 慢启动阈值:slow start threshhold
http:应用层协议,超文本传输协议,
默认端口为80
标准的客户端、服务端模型
有http1.0、http1.1、http2.0等,前者不是长连接,1.1和2.0多个http请求使用一个连接
基于TCP协议
https:
端口为 443
是HTTP+SSL
传输的数据进行加密了,确保数据传输的安全性
远程文件传输协议,file transfer protocol
使用TCP协议,本地文件上传到服务器,或者服务器文件下载到本地。
传输速度快,安全性高
域名解析协议:默认端口为53,默认通过UDP协议,但是报文过大时,会切换为TCP
将域名转化为ip地址
邮件传输协议,simple mail transfer protocol
基于TCP协议,25端口
客户端和邮件服务器之间
应用层。动态主机配置协议。
自动分配ip网络地址的通信协议
每个连接internet的设备都需要一个唯一的ip地址
提供客户端可用的 IP 地址、子网掩码、默认网关等参数
既可以基于TCP也可以基于udp,一般基于UDP
减少了管理员工作量,提高了网络的稳定性和灵活性
是internet远程登录标准协议和主要方式。基于TCP
简单的远程终端协议,默认端口为23,常用于服务检测。
ssh也是远程连接计算机的连接协议。但是telnet是明文传输,ssh进行了加密保护传输。
Internet protocol
负责ip寻址、路由选择、ip数据包的格式、分割和组装
特点
无连接
点到点
不负责可靠性和顺序性
因特网信报控制协议、Internet 组消息协议
ICMP(Internet Control Message Protocol)和IGMP(Internet Group Management Protocol)都
是在IP层次上使用的协议。
ICMP:用于将控制信息和错误信息发送给源地址主机。
单播
eg:当一个数据包无法到达目的主机时,网关会通过发送ICMP消息到源地址主机通知。
ping就是发送一个ICMP,请求目的主机的回答,检测网络是否通畅。
IGMP:将消息同步传输到一堆接收者。
用于分组传输数据
多播
一般用于计算机集群中,流媒体多播传输
地址解析协议和反向地址解析协议位于数据链路层,将ip解析为mac地址,后者将mac解析为ip地址
首先检查ARP缓存是否存在目的ip地址的mac地址没有则发送ARP广播,要求响应请求的主机返回mac地址
网络地址转换协议:将私有网络IP地址转化为共有网络IP地址。
通过一定的映射规则和转换规则让共有网络可以转化为私有的
不能独立存在
作用:
A类:1.0.0.0-126.0.0.0
B类:128.0.0.0-191.255.0.0
C类:192.168.0.0~192.168.255.255
D类:是多播地址。该类IP地址的最前面为“1110”,所以地址的网络号取值于224~239之间。一般
用于多路广播用户[1] 。
E类:是保留地址。该类IP地址的最前面为“1111”,所以地址的网络号取值于240~255之间。
公有地址:internet使用的ip地址
私有地址:局域网中使用的ip地址
在IP地址3种主要类型里,各保留了3个区域作为私有地址,其地址范围如下:
A类地址:10.0.0.0~10.255.255.255
B类地址:172.16.0.0~172.31.255.255
C类地址:192.168.0.0~192.168.255.255
回送地址:127.0.0.1。 也是本机地址,等效于localhost或本机IP
静态路由算法(非自适应路由算法发)
由管理员手工配置
优点:简便可靠,应用于高度安全性的军事网络和较小的商业网络
缺点:路由更新慢,不适用于大型网络
动态路由算法(自适应路由算法发)
路由器之间彼此交换信息,通过路由算法优化出路由表项
分类:
全局性:链路状态路由算法(典型的为OSPF)
基于带宽
在大型企业网络中被大量采用
Dijsktra
分散性:距离向量路由算法(RIP)
看跳数
没30秒广播一次
最多只有15跳
适合简单和非分层的小型网络
ipv4为32位,4组,每组8位
ipv6为128位,8组,每组16位
ipv6比ipv4更加安全,路由表也应该小一些,
IPv6的头部相比IPv4更简洁,头部大小相对减少,减少了路由器处理包头所需的时间和费用
消除了ABC类网络和划分子网的概念
使用变长子网掩码提高ip资源的利用率,把32位的ip地址划分为前后两个部分,前面指明网络,后面指
明主机号,
有效地分配IPv4的地址空间
ip地址:
32位的2进制数
网络层
可变的,逻辑上唯一的
网络到网络
mac地址:
12位的16进制数
数据链路层
出厂后固定不变
设备到设备
开源和节流
开源:将ipv4换成ipv6
节流:使用NAT路由转换协议,一个公网IP对应多个内网IP,只占用一个外网IP地址,可以将IP地
址充分的利用起来
电路交换:需要建立一条专用的数据通信路这条路径会径,最典型的就是传统电话网络。从源点连
续的直接到达重点。
报文交换:将整个报文转发到相邻节点,全部存储下来,查找转发表,转发到下一个节点。存储-
转发型网络
分组交换:将报文分组转发到相邻节点,查找转发表,转发到下一个节点。也是存储-转发型网络
处理时延:路由器判断接收到的分组需要转发到哪里的时延
排队时延:前面可能还有分组没能发送,所有需要等待产生的时延
传输时延(发送时延):将分组的比特推出网口的时间
传播时延:在介质上传输的时间
传输时延(发送时延):将分组的比特推出网口的时间,看的时数据包的大小
传播时延:在介质上传输的时间,主要看的是距离
路由器主要工作在第三层,IP地址是在软件中实现的,利用不同网络中的IP地址来确定数据转发地
址,一个网络->另一个网络
交换机主要工作在第二层,交换机利用MAC地址来确定转发数据的目的地址,一个设备->另一个
设备
码元:数据通信中的基本单位,一个码元可以被编码位多个比特
波特:衡量速率的,每秒传输码元的多少
速率:衡量速率的,每秒传输比特的多少,单位:bps,比特每秒
带宽:单位时间内从网络中的某一点到另一点所能通过的“最高数据率”,表示网络的通信线路传送
数据的能力,单位也是bps,带宽越宽,传输速率越大,一秒的最大速率