作为开发者,我知道网络结构需要分层,但在工作中很少使用,所以我把在学校学到的关于通信网络的知识都还给老师了
刚才看了用公众号分成网络结构的通俗易懂的说明,觉得理解和记忆更方便。 以下,对本人的理解进行简单记录
原文地址https://MP.weixin.QQ.com/s/jcyp 96 adv w3 zga 0cc 9v mpg
无论学什么,只有“知、知、知”,才能真正理解和应用网络分层。 ——以下,了解几个问题
1、为什么需要网络分层
2、如何进行网络分层
3、如何使用网络分层
如果多台机器沟通通信,我们就需要定义一组规范。 否则,完全不知道数据来自哪里、去哪里、如何使用,那么如何定义一组规范呢?
如果多台机器通信,完全通信需要做哪些准备?
a、在四台机器之间拿着网线进行数据传输
b、由于传输的数据都是0,所以1分析该数据进行识别,知道数据与传输的设备(MAC地址、广播)对应
c、由于计算机网络通信的发展,划分了不同的子网,为了便于数据传输,必须识别是否相同的子网。 (为什么要识别子网,是因为相同子网间和不同子网间的MAC地址的取得方法不同。 )
d .因为每个计算可以同时运行多个APP应用程序,所以有必要区分数据是否对应于传递给该设备的APP应用程序的每个—— APP应用程序的不同端口
e、该机某个APP应用收到数据后,需要使用数据,因此传输的数据必须符合该APP应用的解析规范
首先分网络层次进行说明,然后再处理我们的问题
第一个IOS为解决通信问题而分类的七层模型(参考模型是国际标准化组织(ISO )制定的用于计算机或通信系统之间互连的标准体系,通常被称为OSI参考模型或七层模型。 )
随后,7层结构衍生出TCP/IP四层模型和TCP/IP五层模型
(支持4层的图像来源: https://blog.csdn.net/WOA LSS/article/details/79054524 )
图中已经划分得很清楚了
五层结构划分,将七层中的APP应用层、表示层、三三三五四层统一为网络层
在4层结构划分为5层的基础上,将数据链路层和物理层——统一为网络接口层
虽然7层网络层的划分复杂且不实用,但5层TCPIP 5层和4层差异不大,试着针对5层结构解决我们的问题
物理层:
为了解决a中数据传输的问题,通过物理手段连接设备进行数据传输
数据链路层:
为了解决与b识别数据中的0、1对应的设备的问题; 具体而言,“以太网协议”应用于对数据中的0、1进行分组映射,涉及MAC地址和广播的含义
MAC地址——机器的物理地址、唯一标识符
广播——获取设备的MAC地址
广播有两种情况。 一种情况是同一子网下(同一局域网下)的计算机通过ARP协议获取对方的MAC地址。 在不同的自网络(不同的局域网)中,处理交给两个局域网的网关(路由器)
网络层:
为了在c中解决在数据链路层两台计算机之间的通信是否为同一子网
APP应用协议: IP协议等
IP是计算机的动态网络地址,对应于MAC地址。
MAC地址:不变,唯一的
IP地址:可变,根据加入网络的IPd地址而变化
如何在IP中确定是否为同一子网
如果两台计算机的IP地址与其子网掩码的“与”操作结果匹配,则证明两台计算机位于同一子网。 (具体的IP和子网掩码的详细定义请在百度上进行。 )
传输层:
d为在计算机上运行的每个程序分配不同的端口,以实现“端口到端口”通信,从而可以将数据正确传输到不同的APP应用程序。
应用协议: UDP、TCP (具体含义请自行百度)等)
应用层(整合了会话层、表示层):
解决e中APP应用程序之间的传输接口和数据格式等问题
APP应用层协议: Telnet、FTP、HTTP、SNMP等
注:这里只是根据参考文章的通俗理解进行记录。 实际上每层都解决了复杂的问题,应用了很多协议。 仅供参考
我们研究了另外两个层面的定义
会话层(Session Layer)
会话层管理主机之间的会话过程,并负责建立、管理和终止进程之间的会话。 RF层还通过在数据中插入检查点来实现数据同步。
深层协议的代表性例子有NetBIOS、zip(appletalk地区信息协议)等。
表示层(Presentation Layer)
表示层转换上层数据或信息,以便一个主机APP应用层的信息可以被另一个主机的APP应用程序理解。 表示层的数据转换包括数据加密、压缩和格式转换。
表示层协议的代表性例子有ASCII、ASN.1、JPEG、MPEG等。
转载于:https://www.cn blogs.com/yutf/p/11457763.html