计算机网络通信之探究OSI协议

协议模型简介

OSI 是 Open System Interconnection 的缩写,译为“开放式系统互联”。

OSI 模型把网络通信的工作分为 7 层,从下到上分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。

OSI 只是存在于概念和理论上的一种模型,它的缺点是分层太多,增加了网络工作的复杂性,所以没有大规模应用。后来人们对 OSI 进行了简化,合并了一些层,最终只保留了 4 层,从下到上分别是接口层、网络层、传输层和应用层,这就是大名鼎鼎的 TCP/IP 模型。

在这里插入图片描述
每层运行常见的物理设备如下
在这里插入图片描述

协议工作流程

这个网络模型究竟是干什么呢?

简而言之就是进行数据封装的

网络模型的工作流程是怎样的?

1、我们平常使用的程序(或者说软件)一般都是通过应用层来访问网络的,程序产生的数据会一层一层地往下传输,直到最后的网络接口层,就通过网线发送到互联网上去了。
2、数据每往下走一层,就会被这一层的协议增加一层包装,等到发送到互联网上时,已经比原始数据多了四层包装。整个数据封装的过程就像俄罗斯套娃。
3、当另一台计算机接收到数据包时,会从网络接口层再一层一层往上传输,每传输一层就拆开一层包装,直到最后的应用层,就得到了最原始的数据,这才是程序要使用的数据。

给数据加包装的过程,实际上就是在数据的头部增加一个标志(一个数据块),表示数据经过了这一层,我已经处理过了。给数据拆包装的过程正好相反,就是去掉数据头部的标志,让它逐渐现出原形。

如下图所示:
请添加图片描述

协议层次介绍

1、物理层

由来:孤立的计算机之间要想一起玩,就必须接入internet,言外之意就是计算机之间必须完成组网
功能:主要是基于电器特性发送高低电压(电信号),高电压对应数字1,低电压对应数字0

2、数据链路层

由来:单纯的电信号0和1没有任何意义,必须规定电信号多少位一组,每组什么意思
功能:定义了电信号的分组方式(以太网协议ethernet)

3、网络层

由来:有了ethernet、mac地址、广播的发送方式,世界上的计算机就可以彼此通信了。然而世界范围的互联网是由一个个彼此隔离的小的局域网组成的,如果所有的通信都采用以太网的广播方式,那么一台机器发送的包全世界都会收到,这就不仅仅是效率低的问题了,这会是一种灾难
功能:引入一套新的地址用来区分不同的广播域/子网,这套地址即网络地址

4、传输层

由来:网络层的ip帮我们区分子网,以太网层的mac帮我们找到主机。然后大家使用的都是应用程序,你的电脑上可能同时开启qq,暴风影音,等多个应用程序。我们通过ip和mac找到了一台特定的主机。如何标识这台主机上的应用程序?答案就是端口,端口即应用程序与网卡关联的编号。
功能:建立端口到端口的通信

5、应用层

由来:用户使用的都是应用程序,均工作于应用层。互联网是开放的,大家都可以开发自己的应用程序,数据多种多样,必须规定好数据的组织形式
功能:规定应用程序的数据格式。

扩展资料

1、以太网协议(ethernet)

ethernet规定:
1、一组电信号构成一个数据包,叫做‘帧’
2、每一数据帧分成:报头head和数据data两部分

head包含:(固定18个字节)
1、发送者/源地址,6个字节
2、接收者/目标地址,6个字节
3、数据类型,6个字节
data包含:(最短46字节,最长1500字节):数据包的具体内容
head长度+data长度=最短64字节,最长1518字节,超过最大限制就分片发送

2、MAC地址

head中包含的源和目标地址由来:ethernet规定接入internet的设备都必须具备网卡,发送端和接收端的地址便是指网卡的地址,即mac地址

mac地址:每块网卡出厂时都被烧制上一个世界唯一的mac地址,长度为48位2进制,通常由12位16进制数表示(前六位是厂商编号,后六位是流水线号)
在这里插入图片描述

3、广播

广播,一台主机通过arp协议获取另外一台主机的mac地址,是ethernet采用的最原始的方式
在这里插入图片描述

4、IP协议与IP地址

1、规定网络地址的协议叫ip协议,它定义的地址称之为ip地址。
2、广泛采用的v4版本即ipv4,它规定网络地址由32位2进制表示。范围为【0.0.0.0 ~ 255.255.255.255】
3、一个ip地址通常写成四段十进制数,例:172.16.10.1
4、ip地址分成两部分:网络部分(标识子网)和主机部分(标识主机)
【注意】单纯的ip地址段只是标识了ip地址的种类,从网络部分或主机部分都无法辨识一个ip所处的子网。例如 172.16.10.1 与 172.16.10.2 并不能确定二者处于同一子网
5、IP协议的作用:
**1) 为每一台计算机分配IP地址
**2) 确定哪些地址在同一个子网络

5、子网掩码

子网掩码,表示子网络特征的一个参数,通常用作判断任意两个IP地址是否处在同一个子网络。

它在形式上等同于IP地址,也是一个32位二进制数字。它的网络部分全部为1,主机部分全部为0。
比如,IP地址172.16.10.1,如果已知网络部分是前24位,主机部分是后8位,那么子网络掩码就是11111111.11111111.11111111.00000000,写成十进制就是255.255.255.0。

子网掩码的判断方法(“与”运算:两个数位都为1,运算结果为1,否则为0)

例:已知IP地址172.16.10.1和172.16.10.2的子网掩码都是255.255.255.0,请问它们是否在同一个子网络?

两者与子网掩码分别进行AND运算

172.16.10.1:10101100.00010000.00001010.000000001
255255.255.255.0:11111111.11111111.11111111.00000000
AND运算得网络地址结果:
10101100.00010000.00001010.000000001->172.16.10.0

172.16.10.2:10101100.00010000.00001010.000000010
255255.255.255.0:11111111.11111111.11111111.00000000
AND运算得网络地址结果:
10101100.00010000.00001010.000000001->172.16.10.0

结果都是172.16.10.0,因此它们在同一个子网络。

6、ARP协议

由来:所有上层的包到最后都要封装上以太网头,然后通过以太网协议发送,而通信是基于mac的广播方式实现的。计算机在发包时,获取自身的mac是容易的,如何获取目标主机的mac,就需要通过arp协议
功能:广播的方式发送数据包,获取目标主机的mac地址

协议工作方式:每台主机ip都是已知的 例如:主机172.16.10.10/24访问172.16.10.11/24

一:首先通过ip地址和子网掩码区分出自己所处的子网

在这里插入图片描述

二:分析172.16.10.10/24与172.16.10.11/24处于同一网络(如果不是同一网络,那么下表中目标ip为172.16.10.1,通过arp获取的是网关的mac)

在这里插入图片描述
三:这个包会以广播的方式在发送端所处的自网内传输,所有主机接收后拆开包,发现目标ip为自己的,就响应,返回自己的mac

7、数据传输流程

请添加图片描述

附:参考资料

1、网络基础之网络协议篇
2、OSI网络七层模型简明教程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

--流星。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值