计算机网络五层协议的体系结构

news2024/11/25 0:37:33

计算机网络中两个端系统之间的通信太复杂,因此把需要问题分而治之,通过把一次通信过程中涉及的所有问题分层归类来进行研究和处理

体系结构是抽象的,实现是真正在运行的软件和硬件

1.实体、协议、服务和服务访问点

协议必须把所有不利条件和可能出现的情况事先估计到,并给出解决方案

在体系结构的各个层次中,每个报文都分为两部分

  • 数据部分:SDU(Service Data Unit),第n层的服务数据单元称为n-SDU
  • 控制信息部分:PCI(Protocol Data Unit),第n层的协议控制单元称为n-PCI

两者共同组成PDU(Protocol Controll Unit),第n层的协议数据单元称为n-PDU

OSI参考模型把对等层次之间传送的数据单位称为该层的协议数据单元PDU

2.ISO/OSI参考模型

3.TCP/IP的体系结构

现在互联网使用的 TCP/IP 体系结构已经发生了演变,即某些应用程序可以直接使用 IP 层,或甚至直接使用最下面的网络接口层

TCP/IP中的网络接口层的功能类似于OSI参考模型的物理层+数据链路层。但实际上TCP/IP协议并没有真正描述这一部分,只是指出主机必须使用某种协议与网络连接,以便在其上传递IP数据报

物理层(physical layer)

  • 传输单位:比特(bit)
  • 功能:在物理媒体上为端设备(一条链路上的两端)传输原始比特流。物理层让数据链路层感受不到传输媒体以及调制、编码、信道复用技术的差异
  • 该层需要解决的问题:①如何用数字信号或模拟信号去编码0和1,即接收方和发送方共同约定的什么样的电压信号去代表1/0,以及一些同步问题②确定连接电缆的插头有多少个引脚,尺寸如何等,即确定电路的接口参数③定义传输模式(单工,半双工,全双工)和传输速率。
  • 设备:集线器、中继器
  • 物理层接口标准:EIA-232C、EIA/TIA RS-449、RS-232-C、X.21
  • 注意:物理传输媒体,如双绞线、同轴电缆、光缆、无线信道等并不在物理层范围类,它们是在物理层协议的下面

数据链路层(data link layer)

  • 传输单位:帧(frame)
  • 功能:为端设备(一条链路上的两端)透明地正确可靠地以一个个帧的形式传输比特流(透明:不管数据是什么样的比特组合,都应当能够在链路上传输,即对于传输的数据,即使被加入了控制字符等特殊字符或者发生了比特差错,都不会影响接收端正确解读数据的能力)
  • 该层需要解决的问题:①组装成帧②差错控制③流量控制④连接管理。总的来说就是将物理层提供的可能出错的物理连接改造为逻辑上无差错的数据链路,使之对网络层表现为一条无差错的链路。在广播式网络中,数据链路层还要处理新的问题:如何控制对共享信道的访问。数据链路层中的介质访问子层就是专门处理这个问题的
  • 设备:网桥、交换机
  • 协议:SDLC、HDLC、PPP、STP、FR(frame relay)
  • 注意:在OSI结构中,数据链路层具有流量控制功能。而在TCP/IP结构中,流量控制的功能被移到了传输层。也可能两层都有流量控制功能,只不过控制的对象不同而已。对于数据链路层来说,控制的是相邻两结点之间数据链路上的流量,对于运输层来说,控制的是从源端到目的端之间的流量

网络层(network layer)

  • 传输单位:IP数据报(datagram)(又称分组(packet)或包(packet),或简称数据报,IPv4称数据报,IPv6称分组)
  • 功能:为位于不同网络上的两台主机正确可靠的传输数据
  • 该层需要解决的问题:①根据路由协议生成路由表②根据路由表进行存储转发③差错控制、流量控制、拥塞控制
  • 设备:路由器
  • 协议:IP、IPX、ICMP、IGMP、ARP、RARP、OSPF
  • 注意:互联网在网络层的设计思路是,向上只提供简单灵活的、无连接的、尽最大努力交付的数据报服务。也就是说,所传送的分组可能出错、丢失、重复、失序或超时,这就使得网络中的路由器比较简单,而且价格低廉。如果主机中的进程之间的通信需要是可靠的,那么可以由更高层的传输层来负责。采用这种设计思路的好处是:网络的造价大大降低,运行方式灵活,能够适应多种应用。互联网能够发展到今日的规模,充分证明了当初采用这种设计思路的正确性。TCP/IP中,网络层并不保证分组的有序到达,各个分组的有序交付由运输层负责

运输层(transport layer)

  • 传输单位:报文段(segment,TCP)、用户数据报(user datagram,UDP)
  • 功能:为两台主机上的进程提供通用可靠的数据传输服务
  • 该层需要解决的问题:①标识不同进程(端口号)②差错控制③流量控制④拥塞控制⑤连接管理
  • 设备:无
  • 协议:TCP、UDP
  • 注意:通用的数据传输服务是指一台主机上的多个进程可以使用同一个运输层服务,因此运输层有复用和分用的功能。网络层也有复用和分用的功能,但网络层的复用是指发送方的不同协议的数据都可以封装成IP数据报发送出去,分用指接收方的网络层在剥去首部后把数据交付给相应的协议

应用层(application layer)

  • 传输单位:报文(message)
  • 功能:通过应用进程间的交互来完成特定网络应用
  • 该层需要解决的问题:①进程间通信所使用的数据格式和交互规则②连接管理
  • 设备:无
  • 协议:FTP、SMTP、HTTP

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

php实现选择排序法

选择排序法是一种简单的排序算法&#xff0c;其基本思想是每次从未排序的部分中选择最小&#xff08;或最大&#xff09;的元素&#xff0c;然后放到已排序部分的末尾。 以下是用PHP实现选择排序法的代码示例&#xff1a; <?php function selectionSort($arr) {$n count…

LeetCode - 26. 删除有序数组中的重复项 (C语言,快慢指针,配图)

力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 ​​​​​​​ 思路一&#xff1a;快慢指针 在数组中&#xff0c;快慢指针就是两个整数下标&#xff0c;定义 fast 和 slow 这里我们从下标1开始&#xff08;下标0的数据就1个&#xff0c;没有重复项&…

RabbitMQ之延迟队列(万字总结,手把手教你学习延迟队列)

文章目录 一、延迟队列概念二、延迟队列使用场景三、RabbitMQ 中的 TTL1、队列设置 TTL2、消息设置 TTL3、两者的区别 四、整合 springboot1、添加依赖2、修改配置文件3、添加 Swagger 配置类 五、队列 TTL1、代码架构图2、配置文件类代码3、消息生产者代码4、消息消费者代码 六…

RT-Thread STM32F407 ADC

ADC(Analog-to-Digital Converter) 指模数转换器。是指将连续变化的模拟信号转换为离散的数字信号的器件。真实世界的模拟信号&#xff0c;例如温度、压力、声音或者图像等&#xff0c;需要转换成更容易储存、处理和发射的数字形式。模数转换器可以实现这个功能&#xff0c;在各…

如何解决网页中的pdf文件无法下载?pdf打印显示空白怎么办?

问题描述 偶然间&#xff0c;遇到这样一个问题&#xff0c;一个网页上的附件pdf想要下载打印下来&#xff0c;奈何尝试多种办法都不能将其下载下载&#xff0c;点击打印出现的也是一片空白 百度搜索了一些解决方案都不太行&#xff0c;主要解决方案如&#xff1a;https://zh…

计算机网络——物理层-编码与调制(数字基带信号、模拟基带信号、码元、常用编码、基本调制方法、混合调制)

目录 编码与调制 数字基带信号 模拟基带信号 码元 常用编码 不归零编码 归零编码 曼彻斯特编码 差分曼彻斯特编码 编码习题 基本调制方法 调幅 调频 调相 混合调制 QAM-16 编码与调制 在计算机网络中&#xff0c;计算机需要处理和传输用户的文字、图片、音频…

JavaScript学习_01——JavaScript简介

JavaScript简介 JavaScript介绍 JavaScript是一种轻量级的脚本语言。所谓“脚本语言”&#xff0c;指的是它不具备开发操作系统的能力&#xff0c;而是只用来编写控制其他大型应用程序的“脚本”。 JavaScript 是一种嵌入式&#xff08;embedded&#xff09;语言。它本身提供…

ubuntu中cuda12.1配置(之前存在11.1版本的cuda)(同时配置两个版本)

ubuntu中cuda12.1配置 由于YOLOv8项目中Pytorch版本需要cuda12.1版本 在官网下载12.1版本的deb包 官网地址 sudo dpkg -i cuda-keyring_1.0-1_all.deb sudo apt-get update sudo apt-get -y install cuda然后需要修改bashrc文件&#xff08;隐藏文件&#xff09; 添加 exp…

C#,数值计算——插值和外推,BaryRat_interp的计算方法与源程序

1 文本格式 using System; namespace Legalsoft.Truffer { /// <summary> /// 重心有理插值对象 /// Barycentric rational interpolation object. /// After constructing the object, /// call interp for interpolated values. /// Note t…

供应商选择和评估:如何寻找合适的供应商并与其合作

如果供应商不能按时交货或产品质量低劣&#xff0c;制造商的生产计划就会延误&#xff1b;客户交货将被延迟&#xff0c;商品可能被退回&#xff0c;你的公司声誉也将受损。 要在当今竞争激烈的市场中取得成功&#xff0c;你需要一流的、价格合理且来源可靠的原材料和服务&…

Leetcode刷题详解——岛屿数量

1. 题目链接&#xff1a;200. 岛屿数量 2. 题目描述&#xff1a; 给你一个由 1&#xff08;陆地&#xff09;和 0&#xff08;水&#xff09;组成的的二维网格&#xff0c;请你计算网格中岛屿的数量。 岛屿总是被水包围&#xff0c;并且每座岛屿只能由水平方向和/或竖直方向上…

php快速排序法

快速排序是一种常用的排序算法&#xff0c;也是最快的排序算法之一。其基本思想是通过一趟排序将待排序的数据分割成两部分&#xff0c;其中一部分的所有数据都比另一部分的所有数据小&#xff0c;然后再对这两部分分别进行快速排序&#xff0c;递归地重复这个过程&#xff0c;…

wpf devexpress post 更改数据库

这个教程示范如何使用GridControl编辑数据&#xff0c;和保存更改到数据库。这个教程基于前一个篇。 Items Source Wizard 当 CRUD (Create, Read, Update, Delete) 启动选项时添加Post data功能 Items Source Wizard 生成如下代码&#xff1a; 1、设置 TableView.ShowUpdat…

滚雪球学Java(09-1):Java中的算术运算符,你真的掌握了吗?

咦咦咦&#xff0c;各位小可爱&#xff0c;我是你们的好伙伴——bug菌&#xff0c;今天又来给大家普及Java SE相关知识点了&#xff0c;别躲起来啊&#xff0c;听我讲干货还不快点赞&#xff0c;赞多了我就有动力讲得更嗨啦&#xff01;所以呀&#xff0c;养成先点赞后阅读的好…

力扣第84 题柱状图中最大的矩形 C++ 单调栈 Java

题目 84. 柱状图中最大的矩形 困难 相关标签 栈 数组 单调栈 给定 n 个非负整数&#xff0c;用来表示柱状图中各个柱子的高度。每个柱子彼此相邻&#xff0c;且宽度为 1 。 求在该柱状图中&#xff0c;能够勾勒出来的矩形的最大面积。 示例 1: 输入&#xff1a;heigh…

人工智能基础_机器学习032_多项式回归升维_原理理解---人工智能工作笔记0072

现在开始我们来看多项式回归,首先理解多维 原来我们学习的使用线性回归,其实就是一条直线对吧,那个是一维的,我们之前学的全部都是一维的对吧,是一维的,然后是多远的,因为有多个x1,x2,x3,x4... 但是比如我们有一个数据集,是上面这种,的如果用一条直线很难拟合,那么 这个时候,…

贪吃蛇游戏和俄罗斯方块

一、创建新项目 创建一个新的项目&#xff0c;并命名。 创建一个名为images的文件夹用来存放游戏相关图片。 然后再在项目的src文件下创建一个com.xxx.view的包用来存放所有的图形界面类&#xff0c; 创建一个com.xxx.controller的包用来存放启动的入口类(控制类) package …

多svn仓库一键更新脚本分享

之前分享过多git仓库一键更新脚本&#xff0c;本期就分享下svn仓库的一键更新脚本 1、首先需要设置svn为可执行命令行 打开SVN安装程序&#xff0c;选择modify&#xff0c;然后点击 command client tools&#xff0c;安装命令行工具 2、update脚本 echo 开始更新SVN目录&…

Uniapp-小程序自定义导航栏

一、项目背景 制作小程序页面时候发现原生导航栏有一定的高度是没有背景渲染的会出现这种情况 但是我们需要的是 二、原因 小程序的原生导航栏存在。一般可以使用 纯色填充顶部栏 可以直接使用navigationBarBackgroundColor完成 在style中添加 "navigationBarBackgrou…

一文图解爬虫_姊妹篇(spider)

—引导语 爬虫&#xff0c;没有一个时代比当前更重视它。一个好的爬虫似乎可以洞穿整个互联网&#xff0c;“来装满自己的胃”。 接上一篇&#xff1a;一文图解爬虫&#xff08;spider&#xff09; 博主已初步对爬虫的“五脏六腑”进行了解剖。虽然俗称“爬虫”&#xff0c;但窃…