Day32-计算机基础2
- 1. 什么是网络拓扑(Network Topology)?
- 2. 网络拓扑3种经典模型
- 2.1 网络拓扑结构-总线型
- 2.2 网络拓扑结构-环形
- 2.3 星型:
- 2.4 网络拓扑结构总结
- 3.OSI网络模型概念*****
- 3.1 OSI的概念:open system interconnect 开放系统互连 参考模型,
- 3.2 OSI模型的目的:框架化,SOA
- 3.3 OSI模型分为7层:
- 3.4 OSI7层模型在工作中作用
- 3.4.1 排查故障
- 3.4.2 你的zabbix监控服务,都监控什么业务指标?
- 3.5 OSI网际互联
- 3.6 TCP/IP协议簇(DoD参考模型)
- 3.7 TCP与UDP对比
- 3.8 TCP三次握手过程准备
交换机厂商:思科、华为、北电、港湾、华三
1. 什么是网络拓扑(Network Topology)?
网络拓扑(Network Topology)结构是指用传输介质互连各种设备的物理布局。
指构成网络的成员间特定的【物理的】即真实的、或者【逻辑】虚拟的排列方式。
如果两个网络的连接结构相同我们就说它们的网络拓扑相同,尽管它们各自内部的物理接线、节点间距离可能会有不同。
网络拓扑价值
网络拓扑就是类似于网络设备组成的一个连接图,通过设备的连接图可以判断设备的连接情况,
便于出现故障时,根据拓扑图更快的定位故障点。在配置网络设备之前,一定要对网络设备进行规划,
也就是网络设备如何进行连接,进而形成一个网络设备的连接图,即网络拓扑(类似于网络设备规划的地图)
在网络拓扑早期规划中,早期定义了几种常见的网络拓扑模型,
分别是总线型,环形,星型、网状等,虽然现在这些模型架构已经被很多云网络模型所替代和囊括,但对于网络初学者而言,这些经典模型仍旧可以引领初学者了解网络的发展轨迹,为熟悉网络的基础知识提供很好的铺垫。下面就一一熟悉一下这三种经典的网络拓扑模型。
2. 网络拓扑3种经典模型
2.1 网络拓扑结构-总线型
总线型拓扑结构是以一根铜轴电缆作为一根网络结构中的总线,而铜轴电缆总线上分布着多个接头,接头上分别连接多个主机,多个主机之间通过铜轴传递电磁信号进行通讯
总线网络中同一时间内最多只能有两个主机之间可以进行通信,
进行通讯的主机只能在完成本次通讯过程后才能与其它主机进行通讯,否则是被禁止的
主机在进行通讯之前需要进行探测总线线路上是否有正在通讯的主机,
如果存在则继续监听等待,如果线路空闲,占用线路进行网络通讯
如果线路空闲,多台主机同时进行通信产生线路冲突,全部停止通讯,等待一定时间周期后,
继续测线路,进而自行判断是否继续进行通讯。
总线型网络总结
实现线路仲裁,利用MAC地址主机的标识机制
CSMA/CD技术负责线路仲裁(载波监听多路访问/冲突检测机制)。
2.2 网络拓扑结构-环形
环形网络是将多台主机设备通过介质连接成一个环形网络。
环形网络属于IBM公司的一种网络专利技术,因此并不流行,
因为使用需要有费用产生。环形网络实现的原理不同于总线型,
因为提出了令牌环的概念替换了CSMA/CD技术,进行线路仲裁。
具体实现是在环形网络中游走着一种令牌环(Token-Ring),
只有需要发信号的主机可以抓住这个令牌环,只有持有令牌环的
主机才可以发送信号,进而解决了线路信号冲突的问题。
2.3 星型:
2.4 网络拓扑结构总结
通过对以上几种结构了解和学习,就基本掌握了网络通讯结构,并且实现了在一个网络中多台主机间的通讯。
在网络结构中主要以总线型为主进行理解,网络设备之间通过仲裁机制进行线路仲裁(CSMA/CD技术),
从而避免了通讯过程中的信号冲突;通过引入mac机制,实现了网络设备之间的通讯;通过广播机制,
实现了局域网中的主机与主机之间的快速识别,最终实现了网络中数据信号的稳定传输。
链接: https://baike.baidu.com/item/%E7%BD%91%E7%BB%9C%E6%8B%93%E6%89%91/4804125?fr=aladdin
3.OSI网络模型概念*****
3.1 OSI的概念:open system interconnect 开放系统互连 参考模型,
是由ISO(国际标准化组织)定义的灵活稳健和可互操作的【模型】,
并不是协议,而是用来了解和设计网络体系结构的。
3.2 OSI模型的目的:框架化,SOA
规范不同系统的互联标准,使两个不同的系统能够较容易的通信,
而不需要改变底层的硬件或软件的逻辑
3.3 OSI模型分为7层:
OSI把网络按照层次分为7层,
由下到上分别为物理层,数据链路层,网络层,传输层,会话层,表示层,应用层。
OSI模型为什么要分多层?
解耦,框架,让使用感觉更明白。
OSI7层模型的结构
层次 | 说明 | 功能/协议 |
---|---|---|
应用层 | 应用程序及接口,类似于公司的老板 | 提供应用程序的接口 FTP telnet http pop3等 |
表示层 | 对数据进行转换,加密和压缩 | 将上层的数据进行转换和编译压缩为标准的文件,如 jpg gif ascii码等 |
会话层 | 建立、管理和终止会话 | |
传输层 | 提供可靠的端到端的报文传输和差错控制,实质上就是负责建立连接的 | TCP UDP 建立可靠和非可靠连接 将上层的数据进行分段处理 |
网络层 | 将分组从源端传送到目的端;提供网络互联 | 实质上就是提供路由寻址(IP协议)将上层分段的数据进行打包 |
数据链路层 | 将分组数据封装成帧;提供节点到节点方式的传输 | 帧就是本地局域网中传输数据的一个单元,负责在局域网内部的点对点的寻址 |
物理层 | 在媒体上传输比特 | 就是底层的链路介质的规范 |
特点说明:
- OSI模型每层都有自己的功能集
- 层与层之间相互独立又互相依靠
- 上层依赖于下层,下层为上层提供服务。
第7层 应用层
应用层(Application Layer)提供为应用软件而设的接口,以设置与另一应用软件之间的通信。例如:
HTTP、HTTPS、FTP、TELNET、SSH、SMTP、POP3、MySQL等
第6层 表示层
主条目:表示层(Presentation Layer)把数据转换为能与接收者的系统格式兼容并适合传输的格式
第5层 会话层
会话层(Session Layer)负责在数据传输中设置和维护电脑网络中两台电脑之间的通信连接。
第4层 传输层
传输层(Transport Layer)把传输表头(TH)加至数据以形成数据包。传输表头包含了所使用的协议
等发送信息。例如:传输控制协议(TCP)等。
第3层 网络层
网络层(Network Layer)决定数据的路径选择和转寄,将网络表头(NH)加至数据包,以形成报文。
网络表头包含了网络数据。例如:互联网协议(IP)等。
第2层 数据链接层
数据链路层(Data Link Layer)负责网络寻址、错误侦测和改错。当表头和表尾被加至数据包时,会形
成信息框(Data Frame)。数据链表头(DLH)是包含了物理地址和错误侦测及改错的方法。数据链
表尾(DLT)是一串指示数据包末端的字符串。例如以太网、无线局域网(Wi-Fi)和通用分组无线服务
(GPRS)等。分为两个子层:逻辑链路控制(logical link control,LLC)子层和介质访问控制
(Media access control,MAC)子层
第1层 物理层
物理层(Physical Layer)在局部局域网上传送数据帧(Data Frame),它负责管理电脑通信设备和网
络媒体之间的互通。包括了针脚、电压、线缆规范、集线器、中继器、网卡、主机接口卡等
OSI层次—应用层(7层)
提供应用程序可以接入网络的接口,并根据程序的不同对应不同的接口协议
提供应用程序间的通信接口。
常见应用层协议*****
名称 | 端口号 | 说明 |
---|---|---|
FTP | 21/20 | 明文协议,文件传输协议,基于TCP |
TFTP | 69 | 简单文件传输协议,基于UDP |
SSH | 22 | 安全外壳协议,远程连接,加密 |
Telnet | 23 | 明文协议,远程连接 |
SNMP | 161/162 | 简单网络管理协议,基于UDP |
SMTP | 25 | 简单邮件传输协议,基于TCP,邮件服务端口 |
POP3 | 110 | 接受邮件端口。 |
HTTP | 80 | www服务端口,超文本传输协议 |
HTTPS | 443 | 加密的www端口,超文本传输安全协议 |
DHCP | 67/68/546 | 动态主机设置协议,C(67),S(68),546(V6) |
名称 | 端口号 |
---|---|
远程桌面 | 3389 |
mysql | 3306 |
oracle | 1521 |
rsync | 873 |
nginx负载均衡,7层负载,工作在应用层。
lvs负载均衡,4层负载,工作在传输层。
OSI层次—表示层
解码、加密、解密、压缩、解压缩
OSI层次—会话层
建立、管理和终止会话,tomcat session会话同步。
OSI层次—传输层
负责网络中端到端的连接,差错控制,核心协议TCP和UDP。
提供可靠的端到端的报文传输和差错控制,实质上就是负责建立连接的 TCP/UDP,建立可靠和非可靠连接
将上层的数据进行分段处理
OSI层次—网络层
网络层的主要作用就是【路由和寻址】,主要接触到的是【IP协议】即IP地址
Layer3网络层:对应设备有路由器
将分组数据从源端传到目的端。
设备:路由器,三层交换机
OSI层次—数据链路层
普通交换机。
OSI层次—物理层
逐个将bit进行传输的过程
3.4 OSI7层模型在工作中作用
3.4.1 排查故障
- 电脑上不了网(oldboyedu.com)了。
物理层:看网线、网卡
数据链路层:看交换机、和网线连接。
网络层:看路由器、看自己IP和网关配置。
传输层:ISP提供商是否有问题。
应用层:你访问的网站是否正常(oldboyedu.com) - 服务器没法提供服务了。
应用层:网站是否提供服务
应用层:wget/curl 访问,浏览器访问。
应用程序进程启动
端口开启
传输层:防火墙是否阻挡。
网络层:IP,网关,
网关通不通(机房上联的服务器)。
大网(查看多个路由器之间是否正常trancert)。
交换机:链路是否有问题。
网线:是否有问题。
3.4.2 你的zabbix监控服务,都监控什么业务指标?
OSI是一个框架;
物理层:磁盘、内存、CPU使用率,负载(ps top iostat uptime),raid
数据链路层:交换机(配IP地址,SNMP协议),光衰。
网络层:IP地址
传输层:TCP UPD
应用层:URL,接口,端口,进程,业务层,验证码(开发配合)。
3.5 OSI网际互联
传输过程说明:
假设A用户要传输数据给B用户,并且A用户和B用户是在两个不同的网段中
- 数据请求从A的应用层发出,传输到表示层进行数据的编译和加密、压缩
- 表示层将数据发送到会话层
- 传输层由端口号的概念用于识别上层的服务,并且将上层的服务进行分段,
并且用于保持A-B之间的通信连接,以及连接的可靠性 - 在网络层将数据进行打包,并在打包后的数据前面,定义目标IP地址和源IP地址
- 在数据链路层进行再加工,在加工后的数据假面定义目标MAC和源MAC地址
- 在物理层,最终将数据变化为机器和识别的10101的二进制编码,在网线上进行传输
- 到了路由器要对数据进行转发,依次会解压数据的信息,获得到目标IP网段
路由器是依据IP地址转发数据的,所以工作在3层,因此收到数据包,要先将二进制
码转换为帧,再将帧转换为ip数据包,对ip数据包目标地址进行寻址 - 根据路由表确认到相应的传输接口后,会在将数据打包好进行传输
- B收到数据后,在依次解包,收到相应的数据,反之亦然。
OSI互联数据包封装过程
OSI互联数据包解封装过程
作业:从A到B数据传输7层封装以及解封装过程图。
OSI模型封装动画
3.6 TCP/IP协议簇(DoD参考模型)
用于简化OSI层次,以及相关的标准。
- 传输控制协议(tcp/ip)族是相关国防部(DoD)所创建的,主要用来确保数据的完整性及在毁灭性战争中维持通信
- 是由一组不同功能的协议组合在一起构成的协议簇
- 利用一组协议完成 OSI所实现的功能
3.7 TCP与UDP对比
TCP相关报文结构
- 源端口:即本地发起连接的端口
- 目标端口:即要访问的【服务的端口】
- 序列号:因为传输层会将上层的数据进行分段,因此需要对分段数据进行编号,同时也便于数据的重组
- 验证号:用于对数据的进行验证
UDP相关报文结构
TCP/UDP端口号(1~65535)
源端口随机分配,目标端口使用已知服务端口
应用客户端使用的源端口号一般为系统中未使用的且大于1023的
目的端口号为服务器端应用服务的进程,如 telnet 为 23
3.8 TCP三次握手过程准备
置位概念: 根据 TCP 的包头字段,存在三个重要的标识 ACK SYN FIN
- ACK:表示验证字段
- SYN:位数置 1,表示建立 TCP 连接
- FIN:位数置 1,表示断开 TCP 连接
- seq:序列号
建立过程说明:
①由主机A发送建立 TCP 连接的请求报文,其中报文中包含 seq 序列号,是由发送端随机生成的,并且还将报文中 SYN 字段置为 1,表示需要建立 TCP 连接
②主机 B 会回复 A发送的 TCP 连接请求报文,其中包含 seq 序列号,是由回复端随机生成的,并且将回复报文的 SYN 字段置 1,而且会产生 ACK 字段,ACK 字段数值是在 A 发过来的 seq 序列号基础上加 1 进行回复,以便 A 收到信息时,知晓自己的 TCP 建立请求已得到了验证
③A 端收到 B端发送的 TCP 建立验证请求后,会使自己的序列号加 1表示,并且再次回复 ACK 验证请求,在 B端发送过来的 seq 基础上加 1,进行回复
置位概念: 根据TCP的包头字段,存在三个重要的标识ACK SYN FIN
- ACK:表示验证字段
- SYN: 位数置1,表示建立TCP连接
- FIN:位数置1,表示断开TCP连接
- ACK:表示确认控制字段,确认数据是否接收到
- SYN:表示请求建立连接字段,和主机建立连接时使用
- FIN:表示请求断开连接字段,和主机断开连接时使用
- PSH: 表示有DATA数据传输,PSH为1表示的是有真正的TCP数据包内容被传递
- RST: 表示连接重置。一般是在FIN之后才会出现为1的情况,表示的是连接重置。
- seq序列号:将大的数据进行拆分后标记序列信息,便于接收方将拆分后的数据信息进行组装,在原有序列号基础上+1进行回复,告知发送方下次再给我发送的数据是什么
TCP三次握手过程
TCP三次握手过程+状态