【八月】网络
今日内容
软件开发架构
什么是软件开发架构
编写项目之前需要遵循的代码层面上的规范(代码运行的流程 环节 步骤)
C/S架构
C:客户端
S:服务端
网络上下载的程序APP本质就是客户端
客户端可以看成是顾客
服务端可以看成是店家
B/S架构
B:浏览器
S:服务器
B/S架构本质上就是C/S架构
通过浏览器访问客户端的功能,不需要下载客户端
两种架构的优劣势
C/S:
优势:下载对应的客户端 可以享受高度定制的功能
劣势:必须下载客户端
B/S:
优势:无需下载客户端 能够体验快速服务
劣势:功能较为简易 复杂的功能还是需要在客户端享受
架构发展趋势
会结合两者的优势 缩短劣势进行开发
网络编程简介
什么是网络编程
基于互联网编写代码 程序可以实现远程数据交互
网络编程的目的
为了解决远程数据的交互问题
网络编程的意义
学完网络编程 就可以编写一个C/S架构的软件
OSI七层协议
数据发送出去时 从上往下走
数据接收回来时 从下往上走
应用层
表示层
会话层
传输层
PORT协议(端口协议)
规定了一台计算机上的每一个正在运行的应用程序都必须有一个端口号
端口号相当于是计算机用来管理多个应用程序的标记
端口号特征
端口号范围:0-65535
端口号是动态分配的
同一时间内一台计算机端口号不能冲突
0-1024:一般是操作系统内部需要使用的
1024-8000:一般是常见的软件 已被使用
8000+:我们平时写代码可以使用8000之后的端口号
IP+PORT
IP:用于标识全世界任意一台接入互联网的计算机
PORT:用于标识一台计算机上的某个应用程序
IP+PORT:用于标识全世界任意一台接入互联网的计算机上的某一个具体的程序
网络层
IP协议
规定了任何接入互联网的计算机都要有一个IP地址(护照)
IP地址
IPV4协议 点分十进制
最小:0.0.0.0
最大:255.255.255.255
随着社会发展 越来越不够了
IPV6协议 点分十六进制
能给地球上每一粒沙分配一个IP地址
IP特征
每个IP都自带定位 但可以通过IP代理的方式改变IP 但最终还是能查到最初的IP 你可小心点
数据链路层
规定电信号的分组方式
规定了每台电脑必须有一张网卡
网卡上必须有一串记录>>>:电脑的以太网地址(身份证号) 也称为:mac地址
mac地址由12位十六进制数组成
前六位:产商编号
后六位:生产流水线号
因为mac地址就是计算机的身份证号 所以可以通过mac地址查找计算机(基于mac地址实现数据交互)
物理连接层
保证物理连接介质的条件 传递电信号(主要研究插网线情况)
应用层、表示层、会话层可以整合为应用层一层
数据链路层、物理连接层可以整合为网络接口层
网络相关设施
交换机
能够让接入交换机的多台计算机实现彼此互联
以太网通信(mac通信)
原理:
有了交换机之后 根据电脑的mac地址就可以实现数据交互
广播:在交换机中对全体发生,所有接入交换机的设备都能听到
单播:只有被查找设备能接受和回复信息
缺陷:
mac地址通信仅限于局域网
接入交换机的设备过多可能会产生广播风暴
广播风暴:就像几十个人一起吼 谁都不知道别人在讲什么
局域网
由某个固定区域组成的网络
广域网
比局域网有更大的区域
路由器
将多个局域网连接到一起的设备
浙公网安备 33010602011771号