概述
目录
网络模型
HTTP
HTTP2.0
HTTPS
HTTPS握手
TCP
三次握手
四次挥手
如何保证可靠性传输
TCP 和 UDP
CDN
状态码
GET和POST
其它
强缓存与协商缓存
跨域
单点登录(Single Sign On,SSO)
安全
Cookie如何防范XSS攻击
CSRF防御
DoS攻击
DDoS攻击(分布式拒绝服务)
网络模型
HTTP
HTTP2.0
- 首部压缩
- 多路复用
- 请求优先级
- 服务器推送
- 二进制分帧
HTTPS
HTTPS协议 = HTTP协议 + SSL/TLS协议
【在 传输层 使用 非对称加密算法(密钥交换算法 - 签名算法 - 对称加密算法 - 摘要算法)】 - HTTP 的默认端口是 80,而 HTTPS 的默认端口是 443
HTTPS握手
TCP
传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义
三次握手
确认双方的发送、接收能力是否正常
SYN(Synchronization,同步):发起连接
ACK(Acknowledgment,确认):确认连接
四次挥手
FIN(Finish):结束连接
seq(sequence number):序列号
ACK(Acknowledgment,确认):确认连接
如何保证可靠性传输
- 检验和
- 超时重传
- 拥塞控制
- 最大消息长度
- 滑动窗口控制
- 序列号/确认应答
TCP 和 UDP
| | TCP | UDP | | --- | --- | --- | | 是否可靠 |√|×| |是否可连接|√|×| |有无流量控制|√(滑动窗口)|×| |有无拥塞控制|√(慢开始、拥塞避免、快重传、快恢复)|×| |传输效率|高|低| |报文的面向|字节流|报文(保留边界)| |双工性|全双工|一对一、一对多、多对一、多对多|
CDN
Content Delivery Network,即内容分发网络。CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。 关键技术:内容存储 分发技术
mermaid graph TD 发送请求-->智能DNS解析-->取得缓存服务器IP-->返回内容给用户-->向源站发起请求-->返回结果给用户-->将结果存入缓存服务器
优势:
- 本地Cache加速,提高企业站点访问速度
- 远程访问用户根据DNS负载均衡技术智能自动选择Cache服务器
- 跨运营商的网络加速,保证不同网络的用户都得到良好的访问质量
- 广泛分布的CDN节点加上节点之间的智能冗余机制,可以有效地预防黑客入侵
- 自动生成服务器的远程Mirror(镜像)cache服务器,远程用户访问时从cache服务器上读取数据,减少远程访问的带宽、分担网络流量、减轻原站点web服务器负载等功能
状态码
(1xx临时响应 2xx成功 3xx已重定向 4xx请求错误 5xx服务器错误)
200 - 请求成功。服务器成功返回网页,一般用于GET与POST请求
304 - 如果客户端发送了一个带条件的GET 请求且该请求已被允许,而文档的内容(自上次访问以来或者根据请求的条件)并没有改变,则服务器应当返回这个304状态码
404 - 请求的网页不存在
503 - 服务不可用
GET和POST
| | GET | POST | | --- | --- | --- | |速度|快|慢| |大小限制|1024字节|无| |提交方式|URL|HTTP包的body| |编码支持|只能URL编码|支持多种| |刷新/返回|无影响|重新提交数据| |数据方向|从服务器获取|向服务器传输| |对数据类型的限制|仅限ASCII字符|无(二进制数据亦可)| |产生数据包个数|1|2| |是否安全|×|√| |是否可见|√|×| |能否被缓存|√|×| |能否被收藏为书签|√|×| |请求参数是否保留在浏览器历史记录|√|×|
其它
强缓存与协商缓存
跨域
出于浏览器的同源策略Sameoriginpolicy限制:协议(protocol),主机(host)和端口号(port)三者任一不同 1. 设置document.domain解决无法读取非同源网页的 Cookie问题(仅限主域相同,子域不同的跨域应用场景)
-
跨文档通信API:window.postMessage()
-
JSONP
-
CORS
-
Web Sockets
-
WebPack本地代理
-
Nginx反向代理
单点登录(Single Sign On,SSO)
- 认证中心
- 父域Cookie
- Local Storage跨域
安全
Cookie如何防范XSS攻击
(XSS即跨站脚本攻击,是攻击者在返回的HTML中嵌入JavaScript) 在HTTP头部上配置set-cookie,有两个属性可以防止XSS攻击 1. httponly - :禁止JavaScript访问Cookie 2. secure - :告诉客户端仅当在https请求时发送Cookie
CSRF防御
1.自动防御:阻止不明外域的访问 - 同源检测 - Samesite Cookie 2. 主动防御:提交时要求附加本域才能获取的信息 - Synchrogazer Tokens - uble Cookie Defense - stom Header
DoS攻击
使计算机或网络无法提供正常的服务
最常见的DoS攻击有计算机网络宽带攻击和连通性攻击,利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务的响应
DDoS攻击(分布式拒绝服务)
属于DoS攻击的一种
防范手段 - 高防服务器 - DDoS清洗 - CDN加速 - 黑名单
(遇到记得不太清楚的概念大家也可以上菜鸟查查~)
(推荐一位UP主,视频真的很风趣幽默、通俗易懂,我也是看他的视频学到了很多~)
最后
以上就是大方狗为你收集整理的网络通信(知识点总结)网络模型HTTPTCP其它安全的全部内容,希望文章能够帮你解决网络通信(知识点总结)网络模型HTTPTCP其它安全所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复