20、计算机网络知识归纳总结
2021-03-05 10:22:01 0 举报
AI智能生成
介绍计算机网络7层模型,TCP/IP协议,握手挥手原理。常用的HTTP协议一些版本,状态描述。
作者其他创作
大纲/内容
应用
HTTP 原理
HTTP 是一个无状态的协议
无状态是指客户机(Web 浏览器)和服务器之间不需要建立持久的连接
HTTP 遵循请求(Request)/应答(Response)模型。客户机(浏览器)向
服务器发送请求,服务器处理请求并返回适当的应答
服务器发送请求,服务器处理请求并返回适当的应答
所有 HTTP 连接都被构造成一套请求和应答
传输流程图
HTTP状态
10X(消息响应)
100 - continue(继续)
101 - Switch protocol(切换协议)
20X(成功响应)
200 - Ok
201 - Created(创建成功)
202 - Accepted(创建成功)
203 - Non - authoritative information(未授权的信息)
204 - No Content(无内容)
205 - Reset Content(重置内容)
206 - Partial Content(部分内容)
30X(重定向)
300 - Multiple Choice(多种选择)
301 - Moved Permanently(永久移动)
302 - Found(临时移动)
303 - See Other(查看其他位置)
304 - Not Modified(未修改)
305 - Use Proxy(使用代理)
306 - unused(未使用)
307 - Temporary Redirect(临时重定向)
308 - Permanent Redirect(永久重定向)
40X(客户端错误)
400 - Bad Request(错误请求)
401 - Unauthorized(未授权)
402 - Payment Required(需要付款)
403 - Forbidden(禁止访问)
404 - Not Found(未找到)
405 - Method Not Allowed(不允许使用该方法)
406 - Not Acceptable(无法接受)
407 - Proxy Authentication Required(要求代理身份验证)
408 - Request Timeout(请求超时)
409 - Conflict(冲突)
410 - Gone(已失效)
411 - Length Required(需要内容长度头)
412 - Precondition Failed(预处理失败)
413 - Request Entity Too Large(请求实体过长)
414 - Request-URI Too Long(请求网址过长)
415 - Unsupported Media Type(媒体类型不支持)
416 - Requested Range Not Satisfiable(请求范围不合要求)
417 - Expectation Failed(预期结果失败)
50X(服务器端错误)
500 - Internal Server Error(内部服务器错误)
501 - Implemented(未实现)
502 - Bad Gateway(网关错误)
503 - Service Unavailable(服务不可用)
504 - Gateway Timeout (网关超时)
505 - HTTP Version Not Supported(HTTP 版本不受支持)
HTTPS
建立连接获取证书
SSL 客户端通过 TCP 和服务器建立连接之后
tcp 连接协商(握手)过程中请求证书
客户端发出一个消息给服务器,这个消息里面包含了自己可实现的算
法列表和其它一些需要的消息
法列表和其它一些需要的消息
这次通信所需要的算法,然后服务器向客户端返回证书
(证书里面包含了服务器信息:域名。申请证书
的公司,公共秘钥
证书验证
Client 在收到服务器返回的证书后,判断签发这个证书的公共签发机构
并使用这个机构的公共秘钥确认签名是否有效
客户端还会确保证书中列出的域名就是它正在连接的域名
数据加密和传输
果确认证书有效,那么生成对称秘钥并使用服务器的公共秘钥进行加密。
发送给服务器,服务器使用它的私钥对它进行解密
这样两台计算机可以开始进行对称加密进行通信
CDN 原理
CND 一般包含分发服务系统、负载均衡系统和管理系统
分发服务系统
其基本的工作单元就是各个 Cache 服务器
负责直接响应用户请求,将内容快速分发到用户
同时还负责内容更新,保证和源站内容的同步
根据内容类型和服务种类的不同,分发服务系统分为多个子服务系统
网页加速服务
流媒体加速服务
应用加速服务
每个子服务系统都是一个分布式的服务集群,由功能类似、地域接近的分布部
署的 Cache 集群组成
署的 Cache 集群组成
负载均衡系统
负载均衡系统是整个 CDN 系统的中枢
负责对所有的用户请求进行调度,确定提供给用户的最终访问
地址
地址
使用分级实现。最基本的两极调度体系包括
全局负载均衡(GSLB)和本地负载均衡(SLB)
全局负载均衡(GSLB)和本地负载均衡(SLB)
GSLB 根据用户地址和用户请求的内容,主要根据就近性原则,
确定向用户服务的节点。一般通过 DNS解析或者应用层重定向
(Http 3XX 重定向)的方式实现。
确定向用户服务的节点。一般通过 DNS解析或者应用层重定向
(Http 3XX 重定向)的方式实现。
SLB 主要负责节点内部的负载均衡。当用户请求从 GSLB 调度到 SLB 时,
SLB 会根据节点内各个Cache 设备的工作状况和内容分布情况等对用户请求重定向。
SLB 的实现有四层调度(LVS)、七层调度(Nginx)和链路负载调度等。
SLB 会根据节点内各个Cache 设备的工作状况和内容分布情况等对用户请求重定向。
SLB 的实现有四层调度(LVS)、七层调度(Nginx)和链路负载调度等。
管理系统
运营管理
对 CDN 系统的业务管理
负责处理业务层面的与外界系统交互所必须的一些收集、整理、
交付工作
交付工作
包括用户管理、产品管理、计费管理、统计分析等
网络管理子系统
对 CDN 系统的设备管理、拓扑管理、链路监控和故障管理
理,为管理员提供对全网资源的可视化的集中管理,通常用 web 方式实现
网络 7 层架构
物理层
主要定义物理设备标准,如网线的接口类型、光纤的接口类型
这一层的数据叫做比特
数据链路层
主要将从物理层接收的数据进行 MAC 地址(网卡的地址)的封装与解封装
常把这一层的数据叫做帧
设备是交换机,数据通过交换机来传输
网络层
主要将从下层接收到的数据进行 IP 地址(例 192.168.0.1)的封装与解封装
在这一层工作的设备是路由器,常把这一层的数据叫做数据包
传输层
定义了一些传输数据的协议和端口号
TCP(传输控制协议,
传输效率低,可靠性强,用于传输可靠性要求高,数据量大的数据)
传输效率低,可靠性强,用于传输可靠性要求高,数据量大的数据)
UDP(用户数据报协议,
与 TCP 特性恰恰相反,用于传输可靠性要求不高,数据量小的数据
与 TCP 特性恰恰相反,用于传输可靠性要求不高,数据量小的数据
QQ 聊天数据
游戏数据
主要是将从下层接收的数据进行分段进行传输,到达目的地址后在进行重组。
常常把这一层数据叫做段
会话层
通过传输层(端口号:传输端口与接收端口)建立数据传输的通路
主要在你的系统之间发起会话或或者接受会话请求
表示层
主要是进行对接收的数据进行解释、加密与解密、压缩与解压缩
计算机能够识别的东西转换成人能够能识别的东西(如图片、声音等)
应用层
主要是一些终端的应用,比如说FTP(各种文件下载),WEB(IE浏览),QQ之类的
理解成我们在电脑屏幕上可以看到的东西.就 是终端应用
七层结构图
图
TCP/IP 原理
说明
TCP/IP 协议不是 TCP 和 IP 这两个协议的合称
指因特网整个 TCP/IP 协议族。从协议分层
模型方面来讲,TCP/IP 由四个层次组成:网络接口层、网络层、传输层、应用层。
模型方面来讲,TCP/IP 由四个层次组成:网络接口层、网络层、传输层、应用层。
四层图
TCP 三次握手/四次挥手
TCP 在传输之前会进行三次
沟通,一般称为“三次握手”
沟通,一般称为“三次握手”
第一次握手:主机 A 发送位码为 syn=1,seq number=1234567
第二次握手:主机 B 收到请求后要确认联机信息,向 A 发 送 ack number=( 主 机 A 的
seq+1),syn=1,ack=1,随机产生 seq=7654321 的包
seq+1),syn=1,ack=1,随机产生 seq=7654321 的包
第三次握手:主机 A 收到后检查 ack number 是否正确,即第一次发送的 seq number+1,以及位码
ack 是否为 1,若正确,主机 A 会再发送 ack number=(主机 B 的 seq+1),ack=1,
主机 B 收到后确认seq 值与 ack=1 则连接建立成功
ack 是否为 1,若正确,主机 A 会再发送 ack number=(主机 B 的 seq+1),ack=1,
主机 B 收到后确认seq 值与 ack=1 则连接建立成功
传完数据断开的时候要进行四次
沟通,一般称为“四次挥手”
沟通,一般称为“四次挥手”
这是由于 TCP 的半关闭造成的
1)关闭客户端到服务器的连接:首先客户端 A 发送一个 FIN,用来关闭客户到服务器的数据传送,
然后等待服务器的确认。其中终止标志位 FIN=1,序列号 seq=u
然后等待服务器的确认。其中终止标志位 FIN=1,序列号 seq=u
2) 服务器收到这个 FIN,它发回一个 ACK,确认号 ack 为收到的序号加 1。
3) 关闭服务器到客户端的连接:也是发送一个 FIN 给客户端。
4) 客户段收到 FIN 后,并发回一个 ACK 报文确认,并将确认序号 seq 设置为收到序号加 1
0 条评论
下一页