Ajax基础:计算机网络和HTTP协议
一、计算机网络
1.1 网络参考模型
网络参考模型一般是指
- OSI:开放系统互联参考模型
- TCP/IP:传输控制协议/网络协议参考模型
在互联网中实际使用的是TCP/IP参考模型
1.2 网络协议
OSI七层网络模型 | TCP/IP四层概念模型 | 对应网络协议 |
---|---|---|
应用层 | 应用层 | DHCP,DNS,HTTP,FTP,SSL |
表示层 | ||
会话层 | ||
传输层 | 传输层 | TCP,UDP |
网络层 | 网络层 | IP,ARP,RAPP,ICMP |
数据链路层 | ||
物理层 | 网络层到物理层 |
协议的作用
应用层
- DHCP(动态主机分配协议)
- DNS(域名解析)
- FTP(文件传输协议)
- HTTP(超文本传输协议)
- SSL(安全套接字层协议)
传输层
- TCP(传输控制协议)
- UDP(用户数据报协议)
网络层
- IP(网络之间互连的协议)
- ARP(地址解析协议,实现通过IP地址得知其物理地址)
- RARP(反向地址转换协议允许局域网的物理机器从网关服务器的APP表或者缓存上请求其IP地址)
地址
- ICMP(Internet控制报文协议。它是TCP/IP洗衣族的一个自子协议,用于在IP主机、路由器之间传递控制消息)
数据链路层
- 802.11 802.16 Wi-Fi WiMAX ATM DTM 令牌环 以太网 FDDI 帧中继 GPRS Mac地址
物理层
- 以太网物理层 调制解调器 PLC SONET/SDH G.709 光导纤维 同轴光缆 双绞线
1.3 网络通信三要素
- IP:地址
- 端口号
- 传输协议
扩展
TCP与UDP的区别
UDP: 将数据源和目的封装成数据包中,不需要简历链接; 每个数据报的大小限制在64K; 因无连接, 是不可靠的协议; 不需要建立链接, 速度快
TCP: 建立链接, 形成传输数据的通道; 在链接中进行大量数据量传输; 通过三次握手完成链接, 是可靠协议; 必须建立链接, 效率会稍低
二、HTTP协议
2.1 Http协议和Https协议的区别
传输信息安全性不同
- http协议: 是超文本传输协议, 信息是明文传输。如果攻击者截取了Web浏览器和网站服务器之间的传输报文, 就可以直接读懂其中的信息。
- https协议: 是具有安全性的ssl加密传输协议, 为浏览器和服务器之间的通信加密, 确保数据传输的安全。
连接方式不同
- http协议: http连接很简单, 是无状态的。
- https协议: 是由SSL + HTTP协议构建的可进行加密传输、身份认证的网络协议。
端口不同
- http协议: 使用的端口是80。
- https协议: 使用的端口是443。
证书申请方式不同
- http协议: 免费申请。
- https协议: 需要到ca申请证书, 一般免费证书很少,需要交费。
2.2 http常见的状态码
2开头状态码
- 2xx (成功)表示成功处理了请求的状态码
- 200 (成功) 服务器已成功处理了请求
3开头状态码
- 3xx (重定向) 表示要完成请求, 需要进一步操作。通常, 这些状态码用来重定向。
- 304 (未修改) 自上次请求后, 请求的网页未修改过。服务器返回此相应时, 不会返回网页内容。
4开头状态码
- 4xx (请求错误) 这些状态码表示请求可能出错, 妨碍了服务器的处理
- 400 (错误请求) 服务器不理解请求的语法。
- 403 (禁止) 服务器拒绝请求。
- 404(未找到) 服务器找不到请求的网页
5开头状态码
- 5xx (服务器错误) 这些状态码表示服务器在尝试处理请求时发生内部错误。这些错误可能是服务器本身的错误, 而不是请求出错。
- 500 (服务器内部出错) 服务器遇到错误, 无法完成请求。
2.3 GET和POST的区别,
代码上的区别
- get通过url传递参数。
- post参数在请求体中,发送ajax请求时post设置请求头, 规定请求数据类型。
使用上的区别
- post比get安全。
- get传输速度比post快 根据传参决定的。
- post传输文件大理论上没有限制,get传输文件大小大概7-8k左右。
- get一般用于获取数据, post上传数据。