笔记:计算机网络体系结构(OSI七层模型、TCP/IP五层协议)

计算机网络体系结构

计算机网络是一个复杂的、具有综合性技术的系统,它由计算机系统、通信处理机、通信线路和通信设备、操作系统以及网络协议等组成。为了更好地描述计算机网络结构,使计算机网络系统有条不紊地处理工作,需要定义一种较好的网络体系结构。分层结构就是一种较好地描述网络体系结构的方法。

计算机网络体系结构可以从网络体系结构、网络组织和网络配置三个方面来描述。
● 网络体系结构是从功能上来描述计算机网络。
● 网络组织是从网络的物理结构和网络的实现两方面来描述计算机网络。
● 网络配置是从网络应用方面来描述计算机网络的布局、软硬件和通信线路配置等。

计算机网络体系结构层次划分原则

● 每层功能相对独立。
● 相邻层功能具有一定的依赖关系。
● 对每层要完成的服务及实现过程进行明确规定。
● 对网络中处于不同地区的系统进行相同的层次结构划分。
● 不同系统的同等层具有相同功能(服务)。
● 高层使用低层提供的服务时,不需知道低层服务的具体实现方法。

计算机网络划分层次结构主要优点

● 各层相对独立。层次结构中每一层相对独立,一个层次只需要通过接口使用其下层提供的服务来完成本层功能,并对上一层提供服务。它只需知道下层能够提供哪些服务,而不需知道下层是如何实现这些功能的。
● 简化体系结构设计难度。由于各层相对独立实现某种功能,从而将一个庞大、复杂的大型问题拆解处理,简化问题难度。
● 网络体系的灵活性更好。因为网络结构层次间相对独立,因此,当某一层功能发生变更时,只要上下接口不发生变化,即向上层提供的服务和向下层要求的服务不变,则在更改层之上或之下的层次都不会受到影响。层次间的灵活性保证了每层可以根据自己的需求进行不断改进,而不影响其他层次的设计。
● 结构易于实现和维护。分层结构使得一个庞大系统的实现变得容易,因为整个系统的大问题转化成了若干易于处理的小问题了。

OSI七层模型

  • 应用层

应用层是OSI参考模型的最高层,它是服务于用户,是唯一直接为用户应用进程访问OSI环境提供手段和服务的层次,应用层以下各层通过应用层间接地向应用进程提供服务。因此,应用层向应用进程提供的服务是所有层提供服务的总和。应用层需要识别并保证通信双方的可用性,保证应用程序之间的同步,建立传输错误纠正机制和保证数据完整性控制机制。应用层包含了用户通常需要的各种协议。

  • 表示层

表示层的任务是处理两个通信系统之间交换信息的表示方式。表示层关注的是信息的语法和语义。不同的数据结构必须以相同的一种抽象方式来定义,以实现这些计算机之间的通信。表示层正是用来定义和管理这些抽象的数据结构,主要包括数据格式变换、数据加密和解密、数据压缩与恢复等功能。目前,表示层也没有具体的协议。

  • 会话层

会话层的任务是负责维护两个节点之间会话的建立、管理和终止。会话层允许不同机器上建立用户会话。会话可以提供各种服务,包括对话控制、令牌管理以及同步功能。目前,会话层没有具体的协议。

  • 传输层

传输层的任务是向用户提供一种端到端的服务。传输层是通信体系中关键的一层,因为它实现了向高层屏蔽下层数据通信的全部细节。传输层接收上一层传来的数据,将数据分割成较小的单元,将这些数据单元传送给网络层。传输层自始至终将数据从源端带到目的端。也就是说,源端在传输层利用报文首部和控制信息与目的端的类似程序进行会话,其下面各层通过协议与同等层级进行通信,其通信过程涉及多少路由,传输层并不需知道,也不涉及源端与目的端。

  • 网络层

网络层的任务是通过路由算法为分组选择最适合子网通信的路径,实现网络互连和拥塞控制。路由可以建立在静态表的基础上,也可以采用一种自动更新的方式,以此避免网络中出现的故障组件。路由可以处于高度动态中,这样针对每一个数据报都重新确定路径,反映当前网络的负载情况。网络层的传输单元是分组。

  • 数据链路层

数据链路层的任务是在物理层提供的服务基础上,为实体间的通信建立真正的数据链路连接。发送方将数据拆分成数据帧,顺序地发送这些数据帧。接收方正确接收到发送过来的数据帧之后,向发送方发送一个确认帧,作为回复消息。数据链路层的传输单元为帧,并采用差错控制与流量控制方法,确保数据线路的无差错传输。

  • 物理层

物理层的任务是在一条物理通信线路上传输原始比特。发送方发送1(或0)时,接收方应当接收到1(或0),而不是0(或1)。因此物理层需要考虑的是使用多大的电压来代表1或0,以及接收方采用何种方式来识别发送方的比特数据,从而实现比特流的透明传输,为数据链路层提供数据传输服务。物理层的传输单元为比特。

OSI七层模型与TCP/IP五层协议关系图

在这里插入图片描述

TCP/IP五层协议

  • 应用层(application layer)
    应用层是体系结构中的最高层。应用层的任务是通过应用进程间的交互来完成特定网络应用。应用层协议定义的是应用进程间通信和交互的规则。这里的进程(process)就是指主机中正在运行的程序。对于不同的网络应用需要有不同的应用层协议。在因特网中的应用层协议很多,如支持万维网应用的HTTP协议,支持电子邮件的SMTP协议,支持文件传送的FTP协议,等等。我们将应用层交互的数据单元称为报文(message)。

  • 运输层(transport layer)
    运输层的任务就是负责向两个主机中进程之间的通信提供通用的数据传输服务。

运输层主要使用以下两种协议

● 传输控制协议TCP (Transmission Control Protocol)——提供面向连接的、可靠的数据传输服务,其数据传输的单位是报文段(segment)。
● 用户数据报协议 UDP (User Datagram Protocol)——提供无连接的、尽最大努力(best-effort)的数据传输服务(不保证数据传输的可靠性),其数据传输的单位是用户数据报。

  • 网络层(network layer)
    网络层负责为分组交换网上的不同主机提供通信服务。在发送数据时,网络层把运输层产生的报文段或用户数据报封装成分组或包(packet)进行传送。在TCP/IP体系中,由于网络层使用IP协议,因此分组也叫作 IP数据报,或简称为数据报(datagram)。

  • 数据链路层(data link layer)
    数据链路层常简称为链路层。我们知道,两台主机之间的数据传输,总是在一段一段的链路上传送的,这就需要使用专门的链路层的协议。在两个相邻结点之间传送数据时,数据链路层将网络层交下来的IP数据报组装成帧(framing),在两个相邻结点间的链路上传送帧(frame)。每一帧包括数据和必要的控制信息(如同步信息、地址信息、差错控制等)。在接收数据时,控制信息使接收端能够知道一个帧从哪个比特开始和到哪个比特结束。这样,数据链路层在收到一个帧后,就可从中提取出数据部分,上交给网络层。

  • 物理层(physical layer)
    在物理层上所传数据的单位是比特。发送方发送1(或0)时,接收方应当收到1(或0)而不是0(或1)。因此物理层要考虑用多大的电压代表“1”或“0”,以及接收方如何识别出发送方所发送的比特。物理层还要确定连接电缆的插头应当有多少根引脚以及各条引脚应如何连接。当然,解释比特代表的意思,就不是物理层的任务。
    请注意,传递信息所利用的一些物理媒体,如双绞线、同轴电缆、光缆、无线信道等,并不在物理层协议之内而是在物理层协议的下面。因此也有人把物理媒体当作第0层。

数据在各层之间的传递过程

在这里插入图片描述
假定主机1的应用进程AP1向主机2的应用进程AP2传送数据。AP1先将其数据交给本主机的第5层(应用层)。第5层加上必要的控制信息H5就变成了下一层的数据单元。第4层(运输层)收到这个数据单元后,加上本层的控制信息H4,再交给第3层(网络层),成为第3层的数据单元。依此类推。不过到了第2层(数据链路层)后,控制信息被分成两部分,分别加到本层数据单元的首部(H2)和尾部(T2);而第1层(物理层)由于是比特流的传送,所以不再加上控制信息。请注意,传送比特流时应从首部开始传送。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/15500.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

CH9121网络串口透传应用

概述 随着物联网技术的普及,越来越多的传统设备出现联网功能需求。串口作为使用较为广泛的一种通信接口,串口转以太网,进行远程数据传输需求逐渐显现出来。CH9121内部集成TCP/IP协议栈,无需编程,即可轻松实现网络数据…

【SWAT水文模型】SWAT水文模型建立及应用第二期:土地利用数据的准备

SWAT水文模型建立及应用:土地利用数据的准备 1 简介2 土地利用数据的下载2.1 数据下载方式2.1.1 中科院1km土地利用数据2.1.2 清华大学高精度土地利用数据 2.2 数据下载 3 土地利用数据的准备3.1 矢量转栅格3.2 土地利用类型的重分类3.3 土地利用分布图投影调整3.4 …

【LeetCode】213. 打家劫舍 II

213. 打家劫舍 II(中等) 思路 这道题是 198.打家劫舍 的拓展版,区别在于:本题的房间是环形排列,而198.题中的房间是单排排列。 将房间环形排列,意味着第一间房间和最后一间房间不能同时盗窃,因…

EPIT定时器实验(一)

EPIT定时器简介 EPIT:Enhanced Periodic Interrupt Timer,直译就是增强的周期中断定时器,它主要完成周期性中断定时的。 STM32里面的定时器有很多其它功能,比如输入捕获、PWM输出等,但是I.MX6U的的EPIT定时器只是完成…

【五一创作】数据可视化之美 ( 三 ) - 动图展示 ( Python Matlab )

1 Introduction 在我们科研学习、工作生产中,将数据完美展现出来尤为重要。 数据可视化是以数据为视角,探索世界。我们真正想要的是 — 数据视觉,以数据为工具,以可视化为手段,目的是描述真实,探索世界。 …

CSS布局之圣杯布局/双飞翼布局

📝个人主页:爱吃炫迈 💌系列专栏:HTMLCSS 🧑‍💻座右铭:道阻且长,行则将至💗 文章目录 圣杯布局HTML代码步骤CSS代码 双飞翼布局HTML代码步骤CSS代码 小结 圣杯布局 HTM…

Java --- springboot2的静态资源配置原理

目录 一、静态资源配置原理 1.1、配置类只有一个有参构造器 1.2、资源处理的默认规则 1.3、欢迎页的处理规则 一、静态资源配置原理 springboot启动默认加载xxxAutoConfiguration(自动配置) springmvc功能的自动配置类,生效 Configuration(proxyBeanMethods …

《编码——隐匿在计算机软硬件背后的语言》精炼——第13-14章(二进制减法器——1位存储器)

“成功不是最终的,失败不是致命的,勇气才是最关键的。” - 温斯顿丘吉尔 文章目录 如何实现减法计算机进行减法运算的逻辑借位的代替机制二进制下的替代机制 减法的电路实现 反馈与触发器电铃触发器R-S触发器 电平触发的D型触发器 如何实现减法 计算机进…

霍兰德人格分析雷达图

雷达图 Radar Chart 雷达图是多特性直观展示的重要方式 问题分析 霍兰德认为:人格兴趣与职业之间应有一种内在的对应关系 人格分类:研究型、艺术型、社会型、企业型、传统型、现实性 职业:工程师、实验员、艺术家、推销员、记事员、社会工…

1992-2022年31省人均gdp/各省人均地区生产总值

1992-2022年31省人均gdp/各省人均地区生产总值 1、时间:1992-2022年 2、来源:国家统计J、各省NJ 3、范围:包括31省 4、缺失情况说明:无缺失 5、指标包括:各省人均GDP/省人均地区生产总值 6、指标解释&#xff1a…

五一劳动节前 特辑 ,路上那些车不能碰 你赔不起系列

相信明天大家4月29日都上了高速,都奔赴自己今年第一个想去的地方,那么上了高速,见的车辆就多了,哪些车辆我们要明白,尽量不要去碰,或者看见进行 技术性躲避,因为碰一下,半套房没了&a…

Vue3超详细的ref()用法,看这一篇就够了

ref()接受一个内部值,返回一个响应式的、可更改的 ref 对象,此对象只有一个指向其内部值的属性 .value。 ref() 将传入参数的值包装为一个带 .value 属性的 ref 对象。 1、ref 对象是可更改的,即可以为 .value 赋予新的值 举例: c…

【chatgpt】学习开源项目chatgpt-web,搭建自己的chatgpt服务,功能非常丰富有打字效果

目录 前言1,开源的chatgpt项目2,项目可以直接使用docker-compose跑起来3,关于打字模式SSE, octet-stream (打字特效)4,关于内容存储5,总结 前言 本文的原文连接是: https://blog.csd…

线性结构的存储类型

线性结构的存储类型 顺序标:顺序标就是数组,也成为向量vector、高维向量及称为张量即tensor 链表:单链表、双链表、循环链表 线性表概念 表目、文件、索引、表的长度、空表 线性表由节点表和关系表组成二元组; 节点集由有限的…

Hadoop 1:Apache Hadoop、HDFS

Hadoop核心组件 Hadoop HDFS(分布式文件存储系统):解决海量数据存储 Hadoop YARN(集群资源管理和任务调度框架):解决资源任务调度 Hadoop MapReduce(分布式计算框架):解决…

全景丨0基础学习VR全景制作,平台篇第13章:热点功能-总览介绍

全景丨0基础学习VR全景制作,平台篇第13章:热点功能-总览介绍 大家好,欢迎观看蛙色VR官方——后台使用系列课程! 一、热点功能概览 热点,指在全景作品中添加各种类型图标的按钮,引导用户通过按钮产生更多的…

关于电信设备进网许可制度若干改革举措的通告

Q:3月1日后,不再实行进网许可管理的11种电信设备是否还需要继续申请和使用标志? A:3月1日起,对不再实行进网许可管理的11种电信设备停止核发进网许可标志,已申请的标志可在证书有效期内继续使用。 Q&#…

Linux shell编程 条件语句if case

条件测试 test命令 测试表达式是否成立,若成立返回0,否则返回其他数值 格式1: test 条件表达式 格式2: [ 条件表达式 ]文件测试 [ 操作符 文件或者目录 ][ -e 1.txt ]#查看1.txt是否存在,存在返回0 echo $? #查看是上一步命令执行结果 0成…

mysql语句高级用法使用记录和sql_mode=only_full_group_by错误解决

最近工作时用到的几种用法记录一下 sql_modeonly_full_group_by 报错 sql出错示例如下 column ‘qnaq.ta.issue_org_code’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_modeonly_full_group_by 原因分析:…

【Java笔试强训 15】

🎉🎉🎉点进来你就是我的人了博主主页:🙈🙈🙈戳一戳,欢迎大佬指点! 欢迎志同道合的朋友一起加油喔🤺🤺🤺 目录 一、选择题 二、编程题 🔥查找输入…