1.TCP/IP协议
1.1是什么
TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议),简单说就是网络设备之间相互通信的规则,也叫协议
1.2能干什么
让网络设备以这种规则进行相互通信,简单说就是规定网络数据包是怎么收发的
1.3协议内容
1.3.1分层管理
应用层
应用层决定了向用户提供应用服务时通信的活动。
TCP/IP 协议族内预存了各类通用的应用服务。比如,FTP(FileTransfer Protocol,文件传输协议)和 DNS(Domain Name System,域名系统)服务就是其中两类。
HTTP 协议也处于该层。
传输层
传输层对上层应用层,提供处于网络连接中的两台计算机之间的数据传输
在传输层有两个性质不同的协议:TCP(Transmission ControlProtocol,传输控制协议)和 UDP(User Data Protocol,用户数据报协议)
网络层
网络层用来处理在网络上流动的数据包。数据包是网络传输的最小数据单位。
该层规定了通过怎样的路径(所谓的传输路线)到达对方计算机,并把数据包传送给对方。
与对方计算机之间通过多台计算机或网络设备进行传输时,网络层所起的作用就是在众多的选项内选择一条传输路线。
数据链路层
用来处理连接网络的硬件部分。包括控制操作系统、硬件的设备驱动、NIC(Network Interface Card,网络适配器,即网卡),及光纤等物理可见部分(还包括连接器等一切传输媒介)。硬件上的范畴均在链路层的作用范围之内
TCP/IP 通信传输流图解
1.4目前使用版本 (HTTP/1.1)
(1)持久连接
只要任意一端没有明确提出断开连接,则保持TCP链接状态,可以发送多次请求
(2)管线化
不需要等待当前响应即可发送下一个请求---并行发送请求
2.DNS介绍
2.1是什么
是一套域名解析系统,简单来说就是一个将域名翻译成ip地址的系统。
2.2能干什么
将域名翻译成ip地址域名
域名是什么?就是在浏览器搜索框输入的“网址” 如:baidu.com
2.3工作流程图解
2.4优秀DNS推荐
国外
谷歌的公共DNS
主DNS:8.8.8.8
辅DNS:8.8.4.4
OpenDNS
主DNS: 208.67.222.222
辅DNS: 208.67.220.220
国内
114DNS(http://www.114dns.com/)
114.114.114.114
114.114.115.115
腾讯
119.29.29.29
182.254.118.118
阿里 (http://alidns.com/)
223.5.5.5
223.6.6.6
3.认证
原因
http的无状态性
类型
1.session(会话)
1.1是什么
一段纯文本
1.2能干什么
让服务器区分客户端的身份,相当于客户端在服务器的“身份标识”
1.3怎么用
Session认证流程
1.发送带有用户名密码的请求
2.服务器验证通过后将用户对象(信息)存入一个新建的session,响应给客户端
3.客户端将响应的session存入cookie
4.客户端再次访问服务器,发送带有cookie的请求
5.服务器根据cookie中的session用户信息返回响应内容
1.4特点
存在缓存中,浏览器关闭后消失--可以用各种办法存在客户端中如cookie
1.5缺点
1.每次认证用户发起请求时,服务器需要去创建一个记录来存储信息。当越来越多的用户发请求时,内存的开销也会不断增加。
2.可扩展性:在服务端的内存中使用Seesion存储登录信息,伴随而来的是可扩展性问题。
3.CORS(跨域资源共享):当我们需要让数据跨多台移动设备上使用时,跨域资源的共享会是一个让人头疼的问题。在使用Ajax抓取另一个域的资源,就可以会出现禁止请求的情况。
4.CSRF(跨站请求伪造):用户在访问银行网站时,他们很容易受到跨站请求伪造的攻击,并且能够被利用其访问其他的网站。
2.token(令牌,也叫暗号)
2.1是什么
一段纯文本(加密)
2.2能干什么
让服务器区分客户端的身份,相当于客户端在服务器的“身份标识”
2.3怎么用
token认证流程
1.用户通过用户名和密码发送请求。
2.程序验证。
3.程序返回一个签名的token 给客户端。
4.客户端储存token,并且每次用于每次发送请求。
5.服务端验证token并返回数据。
2.4优点
解决了session的缺点,所以成为现在大公司采用的主流认证方式
Cookie
1.是什么
cookie 是一个非常具体的东西,指的就是浏览器里面能永久存储的一种数据,仅仅是浏览器实现的一种数据存储功能。
2.能干什么
cookie存放服务器生成的客户端身份信息于硬盘中,当浏览器客户端第二次向同一服务器发送请求时,浏览器会将cookie信息加入到请求(头)中,用于身份认证
4.HTTPS
=HTTP+ 加密 + 认证 + 完整性保护 |
|