TCP/IP协议组(4层)
应用层,传输层,网络层,物理链路层
应用层:
HTTP,FTP,TFTP,SMTP,SNMP,DNS协议
HTTP:超文本传输协议
概念:HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。
-
特点
- 无状态:服务器无法保存之前的访问状态,比如登录信息等等
- 无连接:每次请求都会建立新的连接;在http1.1版本后,默认都是通过设置keep-alive来维持长链接
- 基于请求响应:就是你点击才能返回,不可能你不点击他就自己给你返回过来了吧
-
内容
-
请求信息(浏览器封装)
-
1.请求行
请求方法,请求路径(GET提交的请求参数跟在路劲后面),协议版本
-
2.请求头
浏览器封装的相关设置:请求时间,请求内容的编码,cookie
-
3.空行
-
4.请求消息体
处理get提交以外的请求方法(POST,PUT,DELETE等等)的请求参数都在这里
-
-
响应信息(服务器)
-
状态行
状态和状态描述;状态码的范围:
200-299:正常返回的状态
300-399:资源被移或者使用缓存
400-499:客户端引发的错误
500-599:服务器端引发的错误
常见状态码:200(正常响应),302(重定向),304(缓存),401(权限不足),404(找不到页面),500(服务器报错),501(服务器无响应)
-
响应头
服务器返回给浏览器的一些相关设置
比如响应信息的编码,返回的时间,是否使用缓存,设置cookie设置
-
空行
-
响应消息体
返回给浏览器渲染的内容
-
-
-
一次请求响应的完整流程
DNS解析域名
经过三次握手建立连接
浏览器向服务器发送请求
服务器接收到请求后进行相应的处理
服务器将处理完的结果响应回浏览器
浏览器接收到响应数据并完成渲染
关闭连接
传输层:
UDP:保证传输效率,但无法保证数据的安全
TCP:保证数据安全,但是效率无法保证;经过三次握手才能建立连接
网络层:
IP协议
IP:是指计算机在网络上的地址,IP分为IP4和IP6
- IP4分为四段,每一段取值为0-255
- IP6分为六段,每一段取值0-FF
- 本机的IP:127.0.0.1,localhost
端口:指应用程序在计算机中的标识(端口是唯一的不能重复,还有范围的)
- 取值范围:0-6553
- 尽量不要选择1000以内的端口(这些端口可能是系统应用程序占用)
- 一个应用程序允许开启多个端口
数据链路层(物理层)
ARP,RARP协议
域名:
-
对应ip,取个名字更容易记住(也必须是唯一的)
-
DNS(域名解析服务器)
应用程序占用)
- 一个应用程序允许开启多个端口
数据链路层(物理层)
ARP,RARP协议
域名:
-
对应ip,取个名字更容易记住(也必须是唯一的)
-
DNS(域名解析服务器)