OSI七层模型分为控制层(前三层)和数据层(后四层)。从第七层到一层为;
应用层(7)接收数据
表示层(6)将数据翻译为机器语言
会话层(5)建立虚连接避免不同流量影响控制层面
传输层(4)区分流量与定义数据传输方式
网络层(3)为数据编制,寻址
数据链路层(2)定义格式,局域网或广域网
物理层(1)网络硬件的物理性质
前四层均在主机设备,后三层均在所有网络设备。
应用层:接收用户的数据。
表示层:将逻辑语言(即软件语言)转换成为机器语言(二进制语言),翻译,加密。
会话层:为每一种流量建立一条虚连接(避免每一种类型数据流量混杂,放置不同类型流量互相影响控制层面)。
传输层:两大功能;1.区分流量。2.定义数据传输方式。
1.区分流量;打上端口号(port ID)1-65535,其中分为静态端口和动态端口,静态端口(1-1023)是与流量一一对应并绑定的,其每一个数字都有对应的服务。动态端口(1024-65535)。常见的端口号有;HTTP--80(使用TCP协议),HTTPS--443(TCP),TELNET远程登录服务--23(TCP),SSH远程登陆“安全性较高,加密认证”--22(TCP),RIP--512(UDP),DNS--域名解析53(TCP和UDP)。
动态端口与流量一一对应,静态端口与流量一一对应并绑定。
2.定义数据传输方式:两种传输方式,可靠传输与不可靠传输。
可靠体现在于保证信息能传过去,不可靠只管传不管到,就相当于都能发数据,但前者保证传到,后者表示我传了,但是到没到就不知道了。
可靠传输的好处:数据完整,数据量小。
不可靠传输:1.大流量。2.实时性较高。3.对数据丢失不敏感。———适合于视频语音这种实时性比较高的传输,要求延迟低,不可能这边说了句话传过去时都过了几分钟甚至于几小时那种,可靠传输虽然也能但是对设备性能要求太高所以不合适。
怎么保证可靠传输有两个个机制保障:1.确认机制。2.重传输机制。——确认机制顾名思义就是传过去后要对方返回一个确认包,确认自己收到,若是在发送数据一段时间后没有收到对方发回的确认包则再发一次数据过去,直到收到对方发回的确认包,这就是重传输机制。
传输层封装有TCP和UDP,这两个都有一个端口号,它们将数据封装成一定格式。
TCP:传输控制协议,是一种面向连接的可靠协议。
UDP:用户数据包协议,是一种非面向连接的不可靠协议。
面向连接就是在数据连接之前,双方进行协商,确保数据可以传输,中间网络是通畅的。
如何保证面向连接;使用三次握手机制,下图为TCP三次握手机制讲解;
TCP三次握手可靠在于其采用的隐式确认+隐式确认,但通过TCP三次握手并不能说明TCP是一个面向连接的可靠协议,这只能保证面向连接,其可靠性要靠确认机制与重传输机制。
在传输TCP数据中有优化机制。
优化机制包括:流程控制(滑动窗口机制)、重排序;
流程机制:发送方根据接收方的处理能力与接收缓存大小来控制发送数据的速率,避免超出接收方能力而不能及时处理,TCP要求发送方维持一个接收窗口,接收方根据当前接收缓存大小动态调整接收窗口大小,其大小反映了接收方的容量。
重排序:TCP报文段作为IP数据来传输,在IP数据包的到达可能会失序,TCP报文段也可能失序,特殊情况下,TCP会将接收到的数据进行重排序,确保顺序正确后再交给应用层。
数据的分段传输:传输较大数据时会按照MTU值进行分段传输。
MTU:最大传输单元,默认为1500字节,可以修改(但不建议修改),超过1500字节就切片发送保证数据为1500字节以内。
扩充:
————————————————————————————————————————
网络单元:
最小单位;bit(比特),一个二进制0,1
1000bit=1kb
1000kb=1Mb
1000Mb=1Gb
1000Gb=1Tb……
byte(字节)一个字节为8bit
1000B=1KB
1000KB=1MB
1000MB=1GB
1000GB=1TB……
以上单位中一个为bit一个为字节,其中换算中前者是小写b后者是大写B。
为什么是1000kb=1Mb一千为换算而不是1024,因为互联网中是1000,没有1024这一个概念,文件系统NTFS或FAT32,exFAT是按照1024个单位去换算的。这也是为什么100G的U盘插上电脑后,读取文件时是按照1024单元换算,导致我们看到的是小于100G的内存。
bit我们只在统计流量时使用,一般是用字节。
速率单位:
100Mbps=100兆比特每秒
12.5MBPS=12.5兆字节每秒
————————————————————————————————————————
PDU(协议数据单元);
4层PDU,也叫segment、分段、分片。数据分段,分片就是说的4层PDU。
4层PDU关注的是TCP还是UDP,端口号是多少,不同层PDU又有不同的叫法,4层PDU还有一个读法,保温,数据报文。
5,6层有的认为没有PDU,华为叫7层PDU为APDU,5层为SPDU,6层为PPDU。
思科对567层没有PDU的叫法。
网络层:
网络层的主要内容就是对数据进行编制,寻址。
编制协议:IP(IPv4,IPv6),IPX,aplle talk,novell,NSAP
IP地址:32个二进制,0和1构成用于编制。
网络掩码:32个二进制,连续的1+连续的0构成,连续的1代表网络位,连续的0代表主机位。
IPv4:采用32位二进制进行编制,一个二进制称为一位bit。
IPv6:采用128位二进制进行编制。
地址分类:
地址一共分为A/B/C/D/E共五类地址
地址分类详情可以查看该本文:TCP/IP卷一详解第二章Internet地址结构概要-CSDN博客
需要补充的是:特殊地址都不能配置;
单播:A、B、C类都属于单播地址,点对点(一对一)通信。
组播:一对多,D类地址:源服务器将资源发送到一个组播组上,当用户需要资源时,访问该组播组并成为组员,然后该组播组将资源复制传递给用户,可以更好的将数据转发和复制给尽可能远的网络节点,减轻资源服务器的负载。
1、1.0.X.X 无效地址(保留地址) 0.0.0.0 无效地址 占位
2、127.0.0.1 本地测试(127.X.X.X测试地址)
3、网络号:主机位全为0的IP就不是IP了,是一个网段。
4、受限广播地址:255.255.255.255 全为1,只能在同一网段中广播
5、直接广播地址:定向广播地址,网络位不变,主机位全为1;例如192.168.56.255/24 向192.168.56.0网段中所有用户发送广播,可以指定网段内广播,只需地址改为该网段的网络号不变,主机位全为1.
6、本地链路地址(link-local):{169.254.0.0 255.255.0.0}只有在上不了网时才出现,只有微软的有,当没有DHCP分配地址时,系统分配的。
该层3层PDU:packet包(数据包)
数据链路层:
数据链路层进行二层封装用来判断数局域网(以太网Ethernet)或广域网(PPP,HDLC,ATM)
二层根据物理层的不同传输介质来定义二层的格式。
数据链路层会根据不同的物理封装来定义二层封装,主要分为局域网封装和广域网封装。MAC地址也叫物理地址,硬件地址,烧录地址。
局域网封装分为两个子层:
LLC层:逻辑链路控制子层;主要任务是描述上层使用的什么协议。
MAC层:介质访问控制子层/媒体访问控制子层;主要用于我们在一个网段内通信,怎么通信。
MAC地址构成:48个二进制书写12个十六进制,书写方式为减分十六进制或点分十六进制;
减分十六进制XX-XX-XX-XX-XX-XX,用于终端,主机,手机,服务器。
点分十六进制XXXX.XXXX.XXXX,用于连接设备上,路由器,防火墙ASA。
MAC地址共48位二进制,由美国一机构掌握,买一个即前24位固定的MAC地址范围。
前24位:厂商ID——OUI(统一资源标识符)
后24位:产品ID——interface ID(接口标识符)
MAC地址无法修改但能伪装;优先网卡配置高级里>本地管理地址中>手动输入伪装。无线的比较麻烦。
二层PDU:frame帧
物理层:
该层关注网络硬件的机械特性、光学特性、电学特性(传输介质:光纤,双绞线)
双绞线(RJ45)又叫网线,一根网线中有8根线,两两绞合在一起。
双绞线有两种线序:
568A线序:绿白,绿,橙白,蓝,蓝白,橙,棕白,棕
568B线序:橙白,橙,绿白,蓝,蓝白,绿,棕白,棕
平行线:又称直通线,线序相同,不同层设备使用平行线
交叉线:线序不同,同层设备使用交叉线。
全反线:又称为console线,配置线,线序相反,用于用户控制网络设备。
屏蔽双绞线(STP):屏蔽信号,屏蔽干扰,但也会减弱自身传输的信号,传输距离不远。
非屏蔽双绞线(UTP):不屏蔽信号。
弱电:路由器,双绞线使用。
强电:工业用电。
光纤两优点:快、抗干扰。
双绞线按拧度分类:3类,4类——(10Mbps),5类,超5类——(100Mbps),超6类——(1000Mbps)在6类线中8根线同时使用。一般双绞线中的8根线不是8根同时使用的,只使用其中的一部分,剩下的用作电话线或备用。
拧度:1cm拧一圈,1.5cm拧一圈等,这种称为拧度。
注意的是,并不是拧度越高传数据路带宽越高,主要是看材质。
OSI七层模型各层的工作的基本原理我们就差不多了解了,总的来讲OSI七层可以规划为一个数据的封装与解封装。
我们把数据产生的过程称为封装。接收数据进行读取的过程称为解封装。
下图为一个数据从产生传输到接收的完整封装和解封装过程:
网络层: