网络编程:了解网络模型|学习笔记

本文涉及的产品
数据传输服务 DTS,数据迁移 small 3个月
推荐场景:
MySQL数据库上云
数据传输服务 DTS,数据同步 1个月
简介: 快速学习网络编程:了解网络模型

开发者学堂课程【大数据 ZooKeeper 快速入门网络编程:了解网络模型】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/549/detail/7578


网络编程:了解网络模型


目录:

一、网络模型图

二、七层参考模型分层

 

一、网络模型图

1.计算机之间何种规则进行通信?就是网络模型所研究的问题。

2.网络模型一般有一个参考标准,最常见的叫做 OSI 层参考模型,这个七层参考模型,是有一个国际化的标准组织,叫做 ISO 来制定的,他把网络通信从用户接触到的应用层最上面一层,一直到最下面的物理层划分了七层,每一层都有各自的功能和协议有的资料上也会把网络模型的划为所谓的 TCP/IP 的五层模型,还有什么四层模型的,不管怎么划分,可以发现这些五层模型还是四层模型,它都是来自于七层参考模型,只不过把它上面的当中的某一层做了一些分装。因此,重点来看这个七层参考模型是一个什么意思.

3.因为网络通信成了七层,因此,在每一层都有各自的功能以及各自的意义,并且最重要的是每一层都会为它相邻的两层提供一个业务的支持,因此在这种七层参考模型下,网络通信变成了这种形式,由它的本质变成这种形式。

image.png

4.现在有两台机器在两台机器之间进行通信意味着每台机上都有一个所谓的七层参考模型那么用户能够接触到的是哪一层呢?是应用层,那应用层上面会运行着很多的程序,比如说你的聊天软件,浏览器。以一个聊天软件来举例,左边这台机器上有一个聊天软件,这聊天软件可以进行一个聊天的通信边这台机上也一个聊天软件,为了表示区分开,这两边都给他表示是两台不同的机器两个聊天软件进行通信,实际上是这两个聊天软件直接建立一个通信发送消息实际上是在两个应用之间建立了个连接。发送消息两方都可以接收。当在左边发送数据的时候,在应用层输入数据的时候,不是直接发送到对面的应用层,是经过了一个从上往下逐级封装的过程,就是说应用层的数据对于左边来说,首先流转到表示层,在表示层当中,它会把数据做一些封装,加入一些自己相关的信息,因此这里可以写一个专业的数据,数据的封装。

5.在左边这边,数据经过每一层都会经历一个封装,封装这一层相关的一些信息,然后当数据封装之后逐级往下铲,最终依旧来到了物理层。在物理层它的数据是一个什么格式呢?就是常见的0101就是这种形式。那么这一层的数据在物理层,是不是到这一层数据最终是要在物理层做传输。比如物理层,在两台机器之间通过光纤做一个连接,因此,最终在物理层传输的数据都是01的标志,那么右边传输的标识,在左边就可以接收到这种数据。接收到这个数据的话,如果直接表示传送给应用层,应用层也解决不了。因此在左边这里通信也经过一个逐级封装,逐级上传的过程。也就是说,物理层这条数据传输单层数据电路层,左边进行逐级的分装,右边就是相反的过程,数据的拆分。在左边这里,从应用层数据传输到物理层的时候呢,逐级进行一些封装,那么反之,在同方向的另一个机器上呢,就会进行一个逐级数据的拆分。方向的另一个机器上呢,就会进一个逐级数据的拆分,那么传一下左边数据链路层数据链路层封装的信息,对于右边来说,当然能够解析到,因此逐级分装,逐级解封,那解封之后传给上一层,然后上一层再进行解封,一直解析到聊天应用层。

6.在数据传输参考模型下,在网络模型中。数据的传输经历了逐级分装的过程,反方向反方向上经历了逐级拆分的过程。这才是数据传输的本质。

 

二、七层参考模型分层

1. 物理层:

主要去定义一些物理设备的标准,比如网线的接口类型,光纤的结构类型,以及各种传输介质的传输速率是多少。这一层最终会将数据编码为用0101标识的比特流,然后通过定义的这些物理介质进行传输,因此在这一层传输的数据叫什么?比特。这一层可以说是整个网络层当中最底层了,因为它已经编码为0101了,这一层的数据一般也不是所关心的,编程不会达到最底层,这是叫做物理层。

2. 数据链路层数:

主要将接收到的数据进行一个 MAC 地址,就是网卡地址的封装,因为涉及到两个方向在一边进行,封装在另一边就要进行解封装。那么这一层工作的数据把它叫做帧。这一层常常工作的设备是一个交换机,交换机主要就在这一层的工作,叫做数据电路层。

3. 网络层:

网络层主要是将接收到的数据进行 IP 地址的封装与解封装,那么同样可以发现,不管是封装还是什么操作,都是一个方向性的。左边进行封装,在右方进行解封装,左边进行拆分,右边进行反拆分啊,这就是一个所谓的一个方向的操作。网络层这一层工作的数据叫做数据包,这一层工作的设备常常是路由器。

4. 传输层:

主要去定了一些数据传输的协议和端口号。这一层主要将接收的数据进行一个分段和传输,在一边进行分段,到达目的地后,在另一边就要进行一个数据的重组,因此把这一层的数据叫做段。

5. 会话层:

会话层主要是通过传输层建立数据传输的通道,在系统之间发起会话请求和接收会话请求。

6. 表示层:

表示层主要进行接收数据的解释,一边加密一边解密,这是一个双向性的,一边数据压缩,一边就要解压缩。它主要表示在确保一个系统的应用层发送的数据能被另一个系统的应用层识别。可以把它理解为应用的秘书,在这一层进行了加密,解密压缩解压缩。

7. 应用层:

这一层主要是为一些终端的应用程序提供服务,比如聊天软件,浏览器,这一层是直接面对用户的是能够接触到的。

这七层参考模型,每一层都有不同的协议,那么要理解什么?要明白当前是开发在哪一层,工作在哪一层,比如是从事 Java 的开发,或 Java web 的开发,使用最多的是 HTTP 协议,那么应该开发在应用层?因此把 java 叫做企业级应用开发,因为使用最多的是 HTTP 协议,那么要想进行网络通信编程?使用最多的是一个 TCP 和 udp 协议,因此是在传输层进行开发,这就是所谓的网络模型。

相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
相关文章
|
3天前
|
存储 算法 网络虚拟化
【计算机网络】学习笔记,第三篇:数据链路层
现在的光纤宽带接入 FTTx 都要使用 PPPoE 的方式进行接入。在 PPPoE 弹出的窗口中键入在网络运营商购买的用户名和密码,就可以进行宽带上网了 利用 ADSL 进行宽带上网时,从用户个人电脑到家中的 ADSL 调制解调器之间,也是使用 RJ-45 和 5 类线(即以太网使用的网线)进行连接的,并且也是使用 PPPoE 弹出的窗口进行拨号连接的
14 5
|
15天前
|
机器学习/深度学习 数据可视化 TensorFlow
使用Keras构建一个简单的神经网络模型
使用Keras构建一个简单的神经网络模型
|
7天前
网络编程套接字(1)—网络编程基础
网络编程套接字(1)—网络编程基础
7 0
|
7天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习基础之经典神经网络模型
深度学习模型来源于神经系统层次化结构特性,主要机制是层层递进,逐层抽象,主要应用于计算机视觉(computer vision,CV)和自然语言处理(Natural language processing,NLP)。
22 1
|
8天前
|
机器学习/深度学习 算法 TensorFlow
【图像识别】谷物识别系统Python+人工智能深度学习+TensorFlow+卷积算法网络模型+图像识别
谷物识别系统,本系统使用Python作为主要编程语言,通过TensorFlow搭建ResNet50卷积神经算法网络模型,通过对11种谷物图片数据集('大米', '小米', '燕麦', '玉米渣', '红豆', '绿豆', '花生仁', '荞麦', '黄豆', '黑米', '黑豆')进行训练,得到一个进度较高的H5格式的模型文件。然后使用Django框架搭建了一个Web网页端可视化操作界面。实现用户上传一张图片识别其名称。
41 0
【图像识别】谷物识别系统Python+人工智能深度学习+TensorFlow+卷积算法网络模型+图像识别
|
12天前
|
机器学习/深度学习 人工智能 算法
中草药识别系统Python+深度学习人工智能+TensorFlow+卷积神经网络算法模型
中草药识别系统Python+深度学习人工智能+TensorFlow+卷积神经网络算法模型
47 0
|
14天前
|
网络协议 前端开发 网络安全
网络通信基础(网络通信基本概念+TCP/IP 模型)
网络通信基础(网络通信基本概念+TCP/IP 模型)
|
14天前
|
机器学习/深度学习 自然语言处理 数据可视化
揭秘深度学习模型中的“黑箱”:理解与优化网络决策过程
【5月更文挑战第28天】 在深度学习领域,神经网络因其卓越的性能被广泛应用于图像识别、自然语言处理等任务。然而,这些复杂的模型往往被视作“黑箱”,其内部决策过程难以解释。本文将深入探讨深度学习模型的可解释性问题,并提出几种方法来揭示和优化网络的决策机制。我们将从模型可视化、敏感性分析到高级解释框架,一步步剖析模型行为,旨在为研究者提供更透明、可靠的深度学习解决方案。
|
14天前
|
存储 缓存 网络协议
网络 (基础概念, OSI 七层模型, TCP/IP 五层模型)
网络 (基础概念, OSI 七层模型, TCP/IP 五层模型)
22 1
|
18天前
|
网络协议 安全 Java
网络编程、网络编程的三要素、TCP/UDP通信、三次握手和四次挥手
网络编程、网络编程的三要素、TCP/UDP通信、三次握手和四次挥手
28 1
网络编程、网络编程的三要素、TCP/UDP通信、三次握手和四次挥手