网络架构
单机架构
- 单机游戏
以下两个基于网络
CS架构
- cs-->client客户/server服务
- 客户端: 用户安装的软件
- 服务端: 统一管理数据库的主机中的软件就叫做服务端, 后来服务端不光只管理数据,也会处理一些业务逻辑
服务端(应用程序)一个就够了,客户端(应用程序)可以有多个
服务端和客户端都是应用程序,两个都可以储存数据,那么他们的区别如下:
- 服务端: 很多人都可以用,它一次更新,也要求用户更新, 能保证数据的安全
- 客户端: 非常快,但如果本地保存帐号密码,安全性非常低,客户端不联网,数据不更新
BS架构
- 网页程序: 如京东淘宝
- bs-->browser浏览器/服务
- 把程序放在浏览器上
互联网和互联网的组成(教材版)
边缘部分:
- 客户端/服务端, 两端的计算机,负责接收/发送数据
核心部分:
- 传输网络数据的设备,路由,基站等
互联网的组成
硬件
- 提供给你网络
软件
- 应用程序, 完成具体的任务
传输数据只能传输电信号,0和1,OSI协议把0和1从无意义的东西变成有意义的东西
打开网页的过程(科普版)
- 打开浏览器(客户端)
- 输入www.taobao.com --> 地址指向淘宝的服务端
- 按enter键客户端把 www.taobao.com 解析成淘宝的地址
- 发送一条请求给淘宝,让淘宝把数据发给你
- 客户端数据渲染
物理层
计算机与计算机之间传输数据(局域网)
- 光缆/网线: 传输信号,连接两端的计算机
客户端 ---010101010101100101010101000111---> 服务端
数据链路层
让同一局域网下计算机连接在一起
把010101 010101 100101 010101 000111 变得有意义,分组,每几位为一组
以太网协议: 规定物理层中传输的0和1的格式
head:
收件人地址;
数据类型;
发件人地址;
data: 内容
- 发件人地址就是mac地址,计算机上网卡的地址,这个地址固定不变,并且唯一,每一台电脑有自己固定的mac地址
- 广播: 你一定知道自己的mac地址,还有收件人的mac地址,通过某一台设备(交换机),但是交换机不知道mac地址所对应的计算机是哪一台, 交换机就会以广播的形式发送给所有的计算机,收件人的计算机输到了就会解析这条命令,拿到内容之后,交换机也会对这两个地址进行记录
网络层
让不同局域网下面的计算机连接在一起
叫做ip地址,只知道mac地址是无法连接到其他局域网的计算机的,因为mac地址只会被交换机识别,然后不同局域网的交换机也不同,所以现在定义了一个新的地址表明是哪个局域网,通过路由器传输
在数据链路层的基础上,再包一层ip头
现在已经知道了淘宝的ip地址和mac地址,你会把自己的mac地址和ip地址一起发送过去,路由器会发送淘宝的ip地址和mac地址,自带mac地址(路由器的)和ip地址(路由器的), 淘宝接受到之后把数据传输给路由器,路由器再传输给客户端
mac地址(局域网) + ip地址(互联网)就能找到全世界独一无二的电脑
传输层
组织网络带来的传输
端口号,找到一个固定的应用程序,一个端口号就对应一个应用程序
mac地址(局域网) + ip地址(互联网) + 端口号就能找到独一无二的电脑的独一无二的应用程序
数据, 0和1发给应用程序,tcp/udp协议
抽象层
客户端和服务端的应用程序想通信,两者传输的数据必须是一样的,
socket抽象层就是写出一个全世界独一无二的计算机上的应用程序,既可以是客户端,也可以服务端
使用socket编写的客户端服务端写一个文件拷贝的cs架构的软件