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+ 加密 + 认证 + 完整性保护 |   
        
 
    
    
    
     
 
 |