HTTP
HTTP(超文本传输协议)是用于传输诸如HTML的超媒体文档的应用层协议,它被设计用于Web浏览器和 Web服务器之间的通信。 HTTP遵循经典的客户端-服务端模型,客户端打开一个链接以发出请求,然后等待它收到服务器端响应。HTTP是无状态协议,意味着服务器不会再两个请求之间保留任何数据。基于TCP/IP通信协议来传递数据,最典型的是在浏览器和服务器之间传递以至于上网人员可以浏览他们。
HTTPS是HTTP协议的安全版本,HTTPS在HTTP上加入套接字SSL(TLS为SSL最新版)层,对网页进行加密传输。
HTTP使用统一资源标识符(Uniform Resource Identifiers, URI)来传输数据和建立连接。URL是一种特殊类型的URI。
HTTP响应码
HTTP响应分为五类:
- 信息响应(100-199)
- 成功响应(200-299)
- 重定向(300-399)
- 客户端错误(400-499)
- 服务器错误(500-599)
1开头状态码
常用:100
- 100 临时响应表明,迄今为止的所有内容都是可行的,客户端应该继续请求,如果已经完成,则忽略
2开头状态码
常用:200,201,204,
- 200表示请求成功
- 201表示请求成功,并因此创建了一个新的资源。通常是POST请求
- 204表示服务器成功处理了请求,但不需要返回任何实体内容
3开头状态码
常用:301,302,304
- 301 被请求的资源已经永久移动到新位置,永久重定向
- 302 请求的资源现在临时从不同的URI响应请求,临时重定向
- 304 如果客户端发送一个带条件的GET请求且请求已被允许,而文档的内容并没有改变,则服务器应当返回这个状态码。
4开头状态码
常用: 401,404,405
- 401 当前用户未通过认证
- 404 请求失败,请求所希望得到的资源未被在服务器上发现,404状态码被广泛应用
- 405 请求行中指定的请求方法不能被用于请求相应的资源。比如get方法请求本应该用post方法请求的接口
5服务端响应
常用:500,504
- 500 服务器不知道如何处理的情况
- 504 网关错误
网关 Gateway
网关是电信网络中使用的一种硬件或软件,允许数据从一个离散网络流向另一个网络。网关和路由器或交换机的不同之处在于, 它们使用多个协议进行通信以连接多个网络, 并且可以在开放系统互连模型(OSI model)的七层中的任何一层运行。
OSI model(开放系统互连模型)是一个概念模型, “为协调系统互连的标准开发提供了公共基础”。在OSI模型中, 系统之间的通信被分为不同的抽象层: 物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
网关分类:
- 网络网关
- 互联网到轨道网关
- 云存储网关
- 物联网(loT)网关
在互联网的世界中, 网关更多的说的是网络网关(Network gateway)
网络网关(Network Gateway)
网络网关提供网络之间的连接, 并包含协议转换器等设备。网络网关要求在使用该网关的网络之间建立相互可接受的管理程序。
网络网关又称为协议转换网或映射网关, 可以进行协议转换, 以连接采用不同网络协议技术的网络。
举例, 网络网关将办公室内部网连接到Internet。如果办公室计算机用户想要加载网页, 则至少需要访问两个网络网关: 一个用于从办公室访问Internet, 另一个用于从Internet访问提供网页服务的计算机
在Internet协议(IP)网络上,目的地为给定子网之外的IP数据包将被发送到网络网关。
举例, 如果专用网络的基本IPv4地址为192.168.1.0, 子网掩码为255.255.255.0, 则寻址到192.168.1.0-192.168.1.255之外的IP地址的任何数据都会发送到网络网关。
判断一个IP地址是否能访问到一个网关?
举例, 判断该ip地址192.168.1.1能不能寻址到网关ip地址为192.168.1.0, 子网掩码为255.255.255.0,这个网关?
// 该ip地址对应的二进制
192.168.1.1 => 11000000 10101000 00000001 00000001
// 网关的子网掩码对应的二进制
255.255.255.0 => 11111111 11111111 11111111 00000000
// 该ip地址和网关的子网掩码进行 按位与 操作
11000000 10101000 00000001 00000000
&
11111111 11111111 11111111 00000000
=
11000000 10101000 00000001 00000000
// 转换成十进制形式
192.168.1.0 // 得到的结果和网关ip地址相同, 则表示该192.168.1.1可以访问到该网关, 否则,无法访问