HTTP,

HTTP(超文本传输协议)

用于互联网上传输网页、图片、视频之类

主要负责客户端和服务器(浏览器)之间的通信

特点

1.无状态

每次响应都是独立的,服务器斌你该不会记录上一次的请求信息

2.基于请求响应

必须先由客户端发起请求,如输入网址等,服务器再根据请求返回响应内容

3.明文传输

数据在传输过程中并不会加密,可能会被第三方拦截

对"无状态"的弥补方案

cookie:服务器通过响应头给客户端发送一小段数据,客户端的后续请求会自动携带该数据段,服务器通过它识别信息

Session:服务器为每个登录的客户创建一个会话,并存储状态,再通过cookie发送sessionTD,通过该ID找到数据

Token:客户端登录后,返回一个加密的token,后续的客户端会鞋底啊token,识别身份

HTTP传输过程

1.建立TCP连接

2.客户端发送HTTP请求

客户端会按照HTTP协议格式,封装数据发送请求数据给服务器

请求内容包含三部分:

请求行:明确请求方式,目标资源路径,HTTP版本

请求头:携带附加信息,浏览器类型,接受方式,cookie

请求体(可选):仅在POST方式中存在,用于传输表单信息

3.服务器处理请求并返回HTTP响应

①解析请求内容②执行业务逻辑③按照格式响应

相应内容包含三部分:

响应行:HTTP版本,状态码(200,403,404),描述访问结果

响应头:携带服务器的附加信息,数据类型和数据长度

响应体:核心数据,如HTML代码,图片二进制,jsons数据

4.关闭TCP连接(4次挥手)

HTTP长连接和短链接

短链接

一次请求后就断开连接

长连接

多请求复用一个连接

长连接短链接对比

|------|----------|--------------|
| | 短连接 | 长连接 |
| 生命周期 | 完成响应就关闭 | 建立请求后可承载多次响应 |
| 连接标识 | 无需标识 | keep-alive |
| 版本 | http 1.0 | http 1.1 |
| 场景 | 早期页面 | 现代复杂页面 |
| 资源消耗 | 高,频繁建立连接 | 复用一个连接,资源消耗低 |

其他

DNS(域名系统):功能:域名->IP地址

ARP(地址解析协议):IP地址->MAC物理地址

NAT(网络地址转换):将私有IP转为公有

DHCP(动态主机配置协议):自动分配网络连接信息(IP地址,网关,DNS)

index.html

是网站的默认首页文件,当用户去访问某个域名时,而不指定对应的文件名时,服务器会自动查找该文件,并返回这个文件

作用

网站默认入口,无需输入完整的路径,直接访问域名就可显示,降低用户操作成本

HTML

建立网站的基础语言

lseek

移动文件读写指针的位置

核心作用

指定下一次读写文件的起始位置,实现对文件的随机访问

off_t lseek(int fd, off_t offset ,int whence)

fd:文件描述符

offset:偏移量

whence:基准位置(决定offset从哪里开始计算)

SEEK_SET:以文件开头为基准

SEEK_CUR:以当前指针为基准

SEEK_END:以文件末尾为基准

返回值:成功移动指针时,返回新指针的位置;失败返回-1

相关推荐
承渊政道5 小时前
Linux网络学习【传输层协议UDP】
linux·网络·网络协议·学习·ubuntu·udp
Chery11405 小时前
DPE5500 SPI以太网协议栈芯片详解:10/100M以太网、硬件TCP/IP与国产替代方案
arm开发·网络协议·tcp/ip
小此方5 小时前
Linux网络(三十三):告别O(n)噩梦:从select/poll的挣扎到epoll红黑树+回调的降维打击,一文打通IO多路复用
linux·网络·驱动开发
2301_777998345 小时前
Linux 网络:数据链路层
linux·服务器·网络
国科安芯5 小时前
空间锂离子电池组管理系统CANFD通信网络的辐射可靠性设计
网络·信息与通信·canfd·电池·低轨卫星·抗辐射
2401_868534786 小时前
网规物流企业网络问题
网络
0+1116 小时前
Linux --IP分片和组装
linux·网络·tcp/ip
zxanz16 小时前
SSL 证书该怎么申请?操作复杂吗?
网络·网络协议·ssl
该逃避避6 小时前
如何利用代理IP进行更好广告验证?
linux·服务器·网络
QYR_117 小时前
憎水涂料市场分析:2032年全球规模将达46.49亿美元
网络·安全