http4

http超文本传输协议(p是协议protocol)(学习http的核心原因:1.前后端交互流程 2.保障数据传输安全 3.优化页面加载速度)(双方之间,客户端和服务器之间)
http传输的是文字,图片,音频,视频等超文本数据。

  1. 3次握手(保证可靠性,减少资源浪费)-4次断开(优雅)
    1.1 3次握手过程(此处客户端和服务端将分别使用‘客’和‘服’代替):由客服到服客再到客服。即(SYN)服确认客发送的请求正常和自己的接收正常--(SYN+ACK)客确认自己和服的接收和发送都正常--(ACK)服确认客和自己的接受和发送请求都正常。最后客和服都确认自己的接收和发送都正常就可以建立连接。
    1.2 4次挥手此处客户端和服务端将分别使用‘客’和‘服’代替):由客到服再由服到客然后继续由服到客最后由客到服。即(FIN结束+ACK确认)客请求断开连接,服接收--(ACK)服发送收到--(FIN+ACK)但是服仍有数据没发送给客,服发送完数据后才会向客户端发送断开链接的请求,表示已断开--(ACK)客发送给服表示知道服关闭了连接。

  2. 应用场景:
    2.1 API的设计和应用
    2.2 基本的请求和响应机制
    2.3 复杂的数据交换格式(json、xml等)
    2.4 websocket
    2.5http/2和http/3等新技术

  3. 完整传输过程:
    3.1域名解析。
    3.2发起TCP的3次握手。
    3.3建立TCP连接后发起http请求。
    3.4服务器端响应http请求,浏览器得到html代码。
    3.5浏览器解析html代码,并请求html代码中的资源。
    3.6浏览器对页面进行渲染呈现给用户。

  4. 发展动力:主要是客户需求的推动

5.传输数据在不同层的含义(统称数据包):
5.1 MAC层的传输单位是帧frame
5.2 IP层的传输单位是包packet
5.3 TCP层的传输单位是段segment
5.4 HTTP层的传输单位是消息或报文message

*6.请求响应结构(核心内容):
*6.1请求格式:。请求行(包含方法、url、http版本)
。请求头(包含请求的附加信息,如Host、User-Agent等)
   。空行(请求行和请求体之间的分隔)
。请求体(可选,包含发送给服务器的数据)
* 6.2响应格式:
。状态行(包含http版本、状态码、状态消息)
。响应头(包含响应的附加信息,如Content-Type、Content-Length等)
。空行(响应头和响应体之间的分隔)
。响应体(服务器返回的数据内容)

  1. 五大类http状态码(状态码的含义):
    7.1【1xx提示信息】表示临时响应,告知客户端请求已被接受。
    7.2【2xx成功】请求已被成功处理。
    7.3【3xx重定向】需要客户端采取进一步行动来完成请求。
    7.4【4xx 客户端错误】请求包含错误,服务器无法处理。
    7.5【5xx服务器错误】服务器在处理请求时发生了错误。
    7.6(常见状态码):
    。200 OK:客户端请求成功(成功)。
    。206 Partial Content:客户发送了一个带有Range头的GET请求,服务器完成了它。
    。301 Moved Permanently:所请求的页面都已经转移至新的url。
    。302 Found:所请求的页面已经临时转移至新的url。
    。304 Not Modified:客户端有缓冲的文档并发出了一个条件性的请求,服务器告诉客户,原来缓冲的文档还可以继续使用。
    。400 Bad Request:客户端请求有语法错误,不能被服务器所理解。
    。401 Unauthorized:请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用

8.键入网址再按下回车,后面究竟发生了什么 ?
8.1 使用ip地址访问web服务器(输入ip和端口号,用tcp3次握手建立联系)
8.2 使用域名访问web服务器(解析域名,浏览器查找缓存--没有就向操作系统缓存要,还没有就检查本机域名解析文件hosts,找到映射得到ip,建立tcp发送http请求)浏览器多了一个访问hosts文件的动作,也就是本机的DNS解析

  1. OSI7层模型(物理层,数据链路层,网络层,传输层,会话层,表示层,应用层)/TCP/IP 5层模型(物理层,数据链路层,网络层,传输层,应用层)
    9.1 TCP/IP 5层模型(物理层,数据链路层,网络层,传输层,应用层),其中前三层主要方向是运维工程师,后两层的只要方向是前端工程师。应用层构建与协议之上、传输层定义数据 的传输,数据过大需分包、网络层为数据在节点之间传输创建逻辑链路、数据链路层为通讯实体间建立数据链路链接。
    9.2 OSI7层模型(物理层,数据链路层,网络层,传输层,会话层,表示层,应用层)
    9.3 tcp/ip4层模型(网络接口层,网络层,传输层,应用层)

10.TCP和UDP的区别:
10.1 TCP(Transmission Control Protocol,传输控制协议)是基于连接的协议,也就是说,在正式首发数据前,必须和对方建立起可靠的连接。一个TCP连接必须要经过‘3次对话’才能建立起来。
10.2 UDP (User Date Protocol,用户数据报协议)是与TCP相对应的协议。它是面向非连接的协议,它不与对方建立连接,而是直接就把数据包发送过去。UDP只适用于一次只传送少量数据、对可靠性要求不高的应用环境。

11.第一周总结:重点是6和1.

posted @ 2025-11-03 10:01  why练习  阅读(5)  评论(0)    收藏  举报