HVV笔记(基础理论)——Web开发基础
1. 网络基础
1.1 计算机网络的定义
-
通用定义:利用通信线路将地理上分散的、具有独立功能的计算机系统和通信设备按不同的形式连接起来,以功能完善的网络软件(网络操作系统和网络应用软件)及协议(网络协议和通信协议)实现资源共享和信息传递的系统。
-
最简单定义:一些互相连接的、自治的计算机的集合。
-
计算机网络本质的活动:实现分布在不同地理位置主机之间的进程通信,以实现应用层的各种网络服务功能。
1.2 计算机网络的组成
- 从主要构件上看,主要由硬件、软件、协议三大部分组成。
- 从功能组成上看,可分为通信子网和资源子网两部分。其中通信子网包括OSI参考模型的物理层、数据链路层、网络层。
- 从工作方式上看,可划分为边缘部分(所有连接在互联网上的主机)和核心部分(网络和连接网络的路由器)。
1.3 计算机网络的功能
计算机网络向用户提供的两个最重要的功能是数据通信和资源共享。
- 数据通信:最基本的功能。 包括连接控制、传输控制、差错控制、流量控制、路由选择、多路复用。
- 资源共享:最主要的功能。包括硬件资源、软件资源、数据资源。
- 负载均衡与分布式处理
- 提高可靠性
- 其他功能:信息综合服务、远程诊断、购物娱乐等。
1.4 计算机网络的分类
- 按网络的作用范围分类:局域网LAN(Local Area Network),广域网WAN(Wide Area Network),城域网MAN(Metropolitan Area Network),个域网PAN(Personal Area Network)。
- 按拓扑结构分类:总线型网络,星型网络,环型网络,网状网络,混合型(如星型——总线型)。
- 按交换技术分类:电路交换型(建立连接→数据传输→释放连接),报文交换网络,分组交换网络。
- 按传输技术分类:点到点网络,广播式网络。
- 按传输介质分类:有线网络,无线网络。
- 按使用者分类:公用网,专用网。
1.5 计算机网络协议三要素
- 语法 数据与控制信息的结构或格式。
- 语义 需要发出何种控制信息,完成何种动作以及做出何种应答。
- 同步 时间实现顺序的详细说明,也称时序。
2 ISO/OSI参考模型和TCP/IP模型
2.1 ISO/OSI参考模型
层次 | 主要功能 |
---|---|
应用层 | 为应用程序提供服务 |
表示层 | 数据格式转化、数据加密、解密和压缩 |
会话层 | 建立、管理和维护会话 |
传输层 | 建立、管理和维护端到端的连接 |
网络层 | IP选址及路由选择 |
数据链路层 | 提供介质访问和链路管理,帧检测及校正 |
物理层 | 通过传输介质,透明传输原始比特流 |
2.2 TCP/IP模型
OSE/RM | TCP/IP |
---|---|
7 应用层 | 应用层 |
6 表示层 | |
5 会话层 | |
4 传输层 | 传输层 |
3 网络层 | 网际层 |
2 数据链路层 | 网络接口层 |
1 物理层 |
3 Web是如何工作的
3.1 域名的层次结构
- 顶级域名
- 二级域名
- 子域名
3.2 DNS请求流程
域名解析:就是把域名映射成IP地址或者把IP地址映射成域名,前者称为正向解析,后者称为反向解析。域名解析有递归查询和迭代查询两种方式。
3.2.1 迭代查询
3.2.2 递归查询
3.3 请求响应
3.3.1 HTTP协议
HTTP(HyperText Transfer Protocol)是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。
HTTPS(HyperText Transfer Protocol Secure)是以安全为目标的HTTP通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性。https在http的基础上加入了SSL,https的安全基础是SSL,因此加密的详细内容就需要SSL。
3.3.2 请求与响应
URL(Uniform Resource Locator):统一资源定位器
http://user:password@baidu.com:80/view-room?id=1#task3`
[协议类型]://[访问资源需要的凭证信息]@[服务器地址]:[端口号]/[资源层级/UNIX文件路径][文件名]?[查询]#[片段ID]
3.4 Web应用架构
- 服务器:Windows、Linux
- 数据库:MySQL、Oracle、SQL Server
- 中间件:IIS、Nginx、tomcat、Apache
- Web应用:CMS、电商平台、教育平台
- Web开发框架:ThinkPHP、Spring
- Web语言:PHP、Java