OSI----网络参考模型(协议体系)

协议体系是互相约定好沟通的方式;

同一网络标准需要一个统一的架构体系:将用户Ip和接收信号的设备兼容到同一个网络当中。

  • OSI(参考模型)----开放式互联系统,由ISO组织提出。

OSI/RM --- OSI七层参考模型(按照顺序记忆)

7.应用层

对应用程序提供接口 e.g.服务器,电脑PC。人机交互

6.表示层

进行数据格式的转换以确保一个系统生成的应用层数据能够被另外一个系统的应用层所识别和理解。(把图片,文字,c语言...转化成二进制)

5.会话层

在通讯双方建立、管理和终止会话。针对传输的每种数据建立数据通讯唯一且独立的通道。抽象的通道。减少数据间的干扰。

4.传输层

建立、维护和取消一次端到端的数据传输过程;控制传输节奏的快慢、调整数据的排序等等

3.网络层

定义逻辑地址;实现数据从源到目的地的转发。 e.g.路由器

2.数据链路层

将分组数据封装成帧;差错检测。(eg.交换机、网桥等)

1.物理层

在媒介上传输比特流;提供机械和电气的规约(eg.中继器、集线器等)

分层思想:把复杂问题拆分成简单问题,将复杂简化。

注意:

控住层面(7,6,5层):不对数据做任何改变,为传输数据做一些准备工作。

数据层面(4,5,6,7层):操作数据。

传输层:用于区分流量,定义数据的传输方式(分两种方式:TCP,UDP)

数据传输简化过程:数据经过上三层的加工,变成一段可以被计算机识别,传输的二进制信息(形成原始数据);当数据来到4,3,2层时,会被加上一部分相关信息(比如:在网络层需要加上IP地址)最终在物理层把加工后的数据,以高低电频的形式发送出。

封装和解封装

对数据层面信息的加工就是对数据的封装。

封装过程:

当data从应用层来到传输层,在这层会被加上传输层的某一协议信息;接着由传输层把数据放到网络层,网络层信息分两部分:内层是payload(负载信息,即传输层的所有信息。)由网络层再在外层加上IP信息。然后再将信息统一交给数据链路层,此payload即网络层的所有信息,再在此信息前后各添加一些信息,最后来到物理层。最终完成数据的封装过程。(在此过程中,添加的信息都是保障信息在网络传输过程中的必需品。)

封装好的信息将会在网络中进行传递。

数据从PC传输到交换机,将电信号转换成二进制,来到数据链路层,读取Mac地址;再来到路由器,直到 网络层,让路由器识别IP;最后到终端,逐层传递到应用层读取原始信息。(此过程包含封装和解封装)

解封装:从物理层到应用层,每层保留原始数据,减去每层添加的协议信息,最终获取原始数据和内容。

注:路由器在接收到报文以后,会将报文中的原目Mac删掉,Mac属于数据链路层,而路由器要解封到网络层,所以要将在数据链路层添加的Mac删掉。

(图表的最右边)PDU---协议数据单元:

它指的是数据在不同层面的表示形式。

TCP/IP参考模型(现用)

(此模型被应用在互联网Internet世界)

注:Internet是世界上最大的网络

应用层包括但不限于APP

一,物理层:

双工模式、速率(跟传输介质有关,知道百兆、千兆、万兆对应介质)、网线和光口的分类。

1.双绞线就是网线,两两组合,组合线扭在一起防干扰,一共8根铜丝,连接在水晶头(RJ45)(8个铜片)的铜片

2.双绞线分为两种:STP、UTP

2.1      STP --- 屏蔽 (机密单位等使用)

2.2     UTP --- 非屏蔽(个人使用)

3.双绞线类型有8类,常用5(最常用)、6、7类

4.  5类传输速率百兆,6类千兆,7类万兆

5类中一个另类的网线---5e,传输速率有千兆但不如6类稳定,同理,有6e(必须使用屏蔽线缆包裹)

5.光纤跳线(两头只有一个接口,光模块有两个接口):光纤线缆只能传播单方向数据,想要进行双向的传递,需要两根线

6.光纤的传播分为多模和单模传播:多模---多种光进行的传播(传播速率更快);单模---单光源进行传播(传输距离更远

7.补充一个常见的传输介质---同轴电缆:一般用于远距离、大数据传输

物理层中物理特性的规范---双工模式:

  1. 半双工:同一时刻,只能发数据或只能接受数据
  2. 全双工:同一时刻,既能发送又能接受数据(现在设备大多都是)

二,数据链路层:

注:家庭,公共场合都依靠以太网搭建的网络体系架构。

Mac:物理编址,硬件地址。

以太网数据帧格式:

DATA----网络层传来的数据信息,最大值1500字节(MTU---最大传输单元)

  1. Mac+S.Mac.Type=Ethernet(头部信息)

Type---用于标记上层协议

FCS---帧尾校验序列,目的:验证数据链路层的数据帧的完整性。

发送方将M.MAC+S.MAC+Type+Data通过模二运算计算为长度为4字节的结果,放在FCS;接受方接受上方数据后用相同算法计算,验证计算结果是否与接收结果相同

对于数据帧而言,存在3种发送方式:单播、广播、组播

  1. 单播:1对1传播
  2. 广播:目标MAC全F(1对所有)
  3. 组播:1对1组

  • 网络层:

IP协议:

IP地址分类---有类分址

A类 --- 特点掩码=8; 0.0.0.0-127.255.255.255;

B类 --- 特点掩码=16; 128.0.0.0-191.255.255.255;

C类--- 特点掩码=24; 192.0.0.0-223.255.255.255;

D类 224.0.0.0-239.255.255;

E类 240.0.0.0-255.255.255;

有类分址是按照前8位二进制的数字特征进行分类的;第一bit=0则为A类;前2bit=10为B类;前3bit=110为C类;前4bit=1110为D类;前4bit=1111为E类。

IP归属---看第一段数字(前8bit),在0-127之间即为A类;

A、B、C三类被称为单播地址;D类为组播地址;E类为保留地址(科研使用)

只有A、B、C三类可以作为源IP地址

源地址:单播;目的地址:单播/组播/广播(特殊地址,不是E类)

特殊地址:

0.0.0.0---网络地址---代表所有网络

127.X.X.X---本地测试地址(代表自己,可以ping)

255.255.255.255---广播地址

主机位全0---网段即广播域---192.168.1.0/24

主机位全1---定向广播地址---192.168.1.255/24(播域中进行广播行为的地址)

主机位全0和全1的IP地址不能作为IP地址使用

私有地址:代表可以重复使用的地址(使用限制:一般一个企业内部使用且企业内部不能存在重复)

A类---10.0.0.0/8

B类---172.16.0.0-172.31.0.0/16

C类---192.168.0.0-192.168.255.0/24

除了特殊地址和私有地址以外的A、B、C三类地址中的其他地址,被称为公网地址(具有全球唯一性);共有地址必须是合法购买使用的。

协议地图:

IP协议:IP协议的头部大小20-60字节,20字节为最小值。(缺一不可,若缺,则报文不完整)

IP option:代表可选项。(需要额外功能时标识)

Version:代表版本

Header Length:代表头部的长度。(判断长度;最长60字节=15*4;可以用于解封装时的判断头部长度以便删除头部。

DS Field:服务类型,提供不同服务。在传输过程中,声音的优先级高于图像。

Total Length:代表整体长度。

Time to live:生存时间,单位是是路由器个数。(生存时间:字段一字节,最大值8个1,255。)用来判断我的设备给别的设备发送信息时会经过几个路由器转发(默认数值64,每经过一台路由器,TTL数值减1,减到0则路由器丢弃文件);TTL本质上是防止出现环路。

Protocol:表示在IP协议之上用的是什么协议。

Header Checksum(头部校验盒):验证头部信息是否正确。

Identification:给报文写序号

Flags:(标志位):验证对方是否完全接受信息:

 Flag(标志位)---3bit;第1bit恒定为0;第2bit为DF;第3bit为MF

IP分片:用于在网络中需要考虑解决拥堵情况。

核心理节点:将大的报文分割为多个小的报文,按照MTU数值进行分割,默认值为1500字节

如何进行报文分片:DF --- 0代表允许分片,1代表不允许分片

            MF --- 0代表最后1片,1代表后续还有

            Fragment offset(片段偏移量)--- 用于表示片段在原始数据报中的位置的字段值

传输层:

传输层的特性:端口号。在网络层IP可理解成邮编,Mac地址理解成家庭地址,在这把端口号收件人。

又可用IP协议的字段理解:标识上层应用。

端口号用于标识不同的协议进度,即本地收到数据后,根据目的端口将其交予某个应用层协议进行处理。

静态端口:0-1023---一般用于网络上常见的协议,且是固定的

动态端口:1024-65535---某些协议自动随机生成的。

源端口、目的端口---2字节信息

Sequence Number(序列号) ---类似于IP协议的Identification(标识)

Acknowledgment Number(确认序列号) --- 2个含义:确认收到了信息;希望收到的信息包含什么。

Data offset --- 数据偏移(TCP头部大小),用途类似于IP协议中的Header Length

Reserved(保留字段)

一共6个bit位:URG、ACK、PSH、RST、SYN、FIN

   ACK(标记位)=1 确认序列号有意义

SYN(同步位) --- 想要建立连接

FIN标记位=1 --- 终止位,断开连接

RST --- 复位,两端设备直接断开,重新建立连接

PSH --- 推送位,该数据机器之前优先处理不要堆积

URG ---紧急位,一个数据插队处理,与紧急指针Urgent point(指向需要紧急处理的数据)一起作用

TCP协议的两个特性 --- 可靠性

确认机制 --- 每收到一个报文都需要回复一个确认报文

           靠Sequence Number(发送方)和Acknowledgment Number(接收方)实现

重传机制 --- 超时重传(略大于往返时间) --- 某个数据段传输丢失后,本地会重新传递该报文

排序机制 --- 传输的数据段会被分割为多个小的报文,通过不同路径传输,最终到达目的地的时间不同,需要进行排序;通过TCP序列号Sequence Number进行排序

     TCP协议存在分段机制,如果使用了分段机制,则不再需要IP协议进行分片

滑动窗口机制 --- 流控机制 --- 通过调整Window大小来对传输的流量进行控制;不需要接受确认报文就可以发送的数据量

Tcp

UDP --- 用户数据报协议

特点:是一种非面向连接的不可靠传输协议。

TCP运用在对可靠性要求较高的场景,而UDP一般运用在需要进行高速转发的场景。

VLSM技术 --- 可变长子网掩码 --- 子网划分

作用:将A.B.C类的掩码长度变长,从而将主机位个数变少。从而减少一个IP网段中的IP个数。

实现方式:通过从主机位借位到网络位的方式,到达延长掩码的效果,将一个大的网络划分为多个小的网络;而被借出

的位数被称为子网位。

192.168.1.0/24

IP

11000000.10101000.00000001.00000000

网络位 主机位

11000000.10101000.00000001. 0 0000000

子网位

此时借了1bit位,所以当前掩码=25

特点:子网位可变 --- 因为子网位原本属于主机位

11000000.10101000.00000001. 0 0000000 --- 192.168.1.0/25

11000000.10101000.00000001. 1 0000000 --- 192.168.1.128/25

掩码长度 = 原本类别中掩码长度 + 借位的个数

划分出网段的个数 = 2n,其中N=被借位的个数

192.168.1.0/25

起始IP:192.168.1.0

终止IP:192.168.1.127

可以使用的IP范围:192.168.1.1-192.168.1.126

192.168.1.128/25

起始IP192.168.1.128

终止IP192.168.1.255

可以使用的IP范围:192.168.1.129-192.168.1.254

作业部分:

题目1

解:

总办公室(1000):

 2n,n = 10,前缀/22(32 - 10 = 22 ),可用主机数1022  网络地址172.16.0.0/22

 分支1:(500台):

2n>=500,n = 9,前缀/23,可用主机数  510   网络地址172.16.4.0/23

分支2:(250台):

2n>=250,n = 8,前缀/24,可用主机数 254

 路由器互联链路(每条2个IP ):2n>=2,n = 2,前缀/30,可用主机数  2

链路1:172.16.7.0/30 ,可用主机数2

链路2:172.16.7.4/30 ,可用主机数2

 链路3:172.16.7.8/30 ,可用主机数2

题目4(地址分配与超网)

解:

2n>=1500  n=11

32-11=21

所以需要分配21位前缀。

CIDR表示块为:203.0.113.0/21

总ip数:211=2048

可用主机:211-2=2046

题目6(故障排查与优化)

11000000.10101000.00000101.00000000

11000000.10101000.00000101.01000000

11000000.10101000.00000101.01100000

11000000.10101000.00000101.01110000

前24位完全相同,所以这些子网来自同一超网192.168.5.0/24

可能存在子网浪费的情况,当划分的可用主机数大于实际需要的,就会存在网址浪费。

VLSM优化:按照需要,精准划分,尽量避免浪费。先明确各个区段实际需要的数量,先划分大区域,再划分小区域。

2n>=40

n=6

26-2=62>=40

192.168.5.0/26  用了  0 - 63 

  192.168.5.64/27  用了  64 - 95 

  192.168.5.96/28  用了  96 - 111 

  192.168.5.112/28  用了  112 - 127

192.168.5.0/25已经分配完成了,所以不能。

Logo

助力广东及东莞地区开发者,代码托管、在线学习与竞赛、技术交流与分享、资源共享、职业发展,成为松山湖开发者首选的工作与学习平台

更多推荐