1.计算机系统
1.1计算机分类
- 按规模划分:超级计算机、大型计算机、小型计算机、微型计算机(最常见)
- 按功能和角色划分:服务器、客户机
1.2常见术语
- 拓扑:物理拓扑-----体现了设备之间的连接关系 逻辑拓扑----设备之间的通信关系
- 数据载荷:传递的实际信息
- 报文(PDU--协议数据单元)
- 数据头部的作用:区分应用程序、找到数据的接收者
- 数据尾部的作用:确保数据是完整的
- 网关:转发不同网段的数据(离PC最近的三层交换机或 者路由器)
2.OSI模型
2.1层次划分优点
- 复杂问题简单化
- 便于排查故障
- 统一标准
2.2七层模型
- 应用层------ 网络服务与最终用户的一个接口(用户操作)指定各种的应用协议,人机交互窗口,把人的语言输 入到计算机中(qq聊天输入字符)
- 表示层------数据的表示、安全、压缩(人的语言翻译 成计算机)将接收到的数据翻译成二进制数据,并指定数据的存 储格式、加密格式,解密等等工作
- 会话层------建立、管理、中止会话 是否 允许 建立会话连接,建立了不同操作系统的之间的会话,通过一些协议去判断 符合 确定你的两个软件之间是否可以进行通信(两个微信之间进行通信)
- 传输层------ 定义传输数据的协议端口号,以及流控和差错校验 将上层数据分片并加上端口号封装成数据段,或通过对报文头中的端口识别,实现网络中不同主机上的用户进程之间的数据通信。
- 网络层------定义逻辑地址、实现不同网络之间的寻 址,理论选择转发数据的最佳路径 将上层数据加上源和目的方的逻辑(IP)地址封装成 数据包,实现数据从源端到目的端的传输 (分拣 员,分拣到底数据走哪条路更快)
- 数据链路层--------建立逻辑连接、进行硬件地址寻 址、差错校验等功能(交换机 网卡) 将上层数据加 上源和目的方的物理(MAC)地址封装 成数据帧,MAC地址是用来标识网卡的物理地址,建 立数据链路;当发现数据错误时,可以重传数据帧。
- 物理层------建立、维护、断开物理连接 报文头部和上层数据信息都是由二进制数组成的,物 理层将这些二进制数字组成的比特流转换成电信号在 网络中传输。
Tips:网络层及以下的通信为点对点通信;传输层的通信为端到端通信| 分层 | 功能 | 数据单元|主要设备| |---|---|---|---| | 应用层 | 网络服务与最终用户的一个接口 | message | 计算机 | | 表示层 | 数据的表示、安全、压缩 | message | | | 会话层 | 建立、管理、中止会话 | message | | | 传输层 | 定义传输数据的协议端口号,以及流控和差错校验 | 数据段 | 防火墙 | | 网络层 | 进行逻辑地址寻,实现不同网络之间的路径选择 | 数据包 | 路由器 | | 数据链路层 | 建立逻辑连接、进行硬件地址寻址、差错校验等功能 | 数据帧 | 交换机 | | 物理层 | 建立、维护、断开物理连接 | 比特流 | 网卡 | - 传输层: 传输数据 通过端口号区分应用程序
怎么传??? Tcp:可靠,接不到 可以重新传 速度慢 udp: 不可靠, 接不到不会重新传输 速度快
A和B 通信 数据传输过来了 :网卡 系统 应用 (QQ 微信 陌陌 soul)
Tips:系统中每打开一个程序,系统会自动分配一个端口号(0-65535) 端口号:来区分应用程序
- 网络层:传给哪台主机 加入 ip地址(源发出去的地址 目:目的地址)
选路 - 数据链路层:mac地址 确认数据是否正确传给需要的机器 校验数据是否完整
- 物理层:数据 转换成电流信号
- 交换机:提供更多的接口,让多台主机可以相连
- 路由器:转发数据
- 网关:不同网段之间想通信 需要借助网关 转发数据 (
网关一定要真实存在) 网络按范围分: - 局域网:小范围网络;校园网、企业网
- 城域网:城市范围网络
- 广域网:全国、全球网络;internet
TCP/IP协议
2.1TCP/IP 参考模型
五层模型最常用
2.2TCP/IP协议(常见)
网络层
- IP协议 icmp协议:ping(排查网络故障)
网络有问题 先ping 自己 127.0.0.1(本机地址)
- IGMP:组播协议(了解)
- ARP:将mac地址 转换成ip地址
- RARP:将IP地址 转换成mac地址
单播--- 一对一,私聊
组播---一对多,群聊
广播---一对所有
广播域:一台机器发送广播,能收到消息的机器 都是在同一广播域
传输层
- TCP:可靠,接不到 可以重新传 速度慢
- UDP: 不可靠, 接不到不会重新传输 速度快 (A和B 通信 数据传输过来了 :网卡 系统 应用 QQ 微信 陌陌 soul)
系统中每打开一个程序,系统会自动分配一个端口号(0-65535)
端口号:来区分应用程序
应用层
0-65535 1000左右 固定
- http:超文本传输协议 默认端口号:80
- https:加密超文本传输协议 默认端口号:443 tcp
- ftp: 文件传输协议 默认端口号: 20(权限) 21(真实数据) tcp
- tftp:简单文件传输协议(体量较小)默认端口号:69 udp (
不常用) - DNS :将IP地址 转换成 域名 www.baidu.com tcp udp 53
- DHCP: 动态获取ip地址 udp 67 68
单工,半双工和全双工的区别
- 单工:只能发送 只能接收 (学校广播,电台)
- 半双工:虽然可以接收核发送,但是同时只能进行一种(对讲机)
- 全双工:同时接发(电话)
理想的网络设计
- 核心层: 高速转发数据
- 汇聚层: 管理核心交换机
- 接入层: 提供更多接口
数据解封装
- 应用层:原始数据
- 传输层:接收上一层的数据段,在数据段前封装IP头部(数据包)
- 数据链路层:接收上一层的数据包,在数据包前加入MAC头部(数据帧)
- 物理层: 比特流转化为电信号在网络中传输 (比特流)
- 物理层:将电信号转化为二进制数据,并将其送至数据链路层;
- 数据链路层:查看目标MAC地址,判断其是否与自己的MAC地址吻合。若吻合,则拆掉MAC头部,将剩余数据传输至上一层;若不吻合,则丢弃数据;
- 网络层:查看目标IP地址,地址是自己的,就拆掉IP头部,继续传输至上一层;地址不是自己的,就丢弃数据;
- 传输层:根据TCP头部判断数据段送往哪里,之后将被分组的数据段重组,传送至应用层;
- 应用层:还原成原始信息。
报文:头部加上层数据
传输层:数据段
网络层:数据包
数据链路层:数据帧