IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 计算机网络:自顶向下 第一章1.5 协议层次及其服务模型 -> 正文阅读

[网络协议]计算机网络:自顶向下 第一章1.5 协议层次及其服务模型

1.5 协议层次及其服务模型

在前面几节内容中我们提及了许多概念,如主机、路由器、丰富的链接媒介、应用程序、协议…好像这些杂乱无章的东西构成了当前的网络,那么是否能将这些东西规整一下,像是整理清楚的桌面,让人一目了然呢?由此引出今天的主题-网络的层次。

1.5.1 协议分层

分层的好处是为了降低系统的复杂度,对于该层只需要直接应用下层的内容,而无需在意其实现细节,当上层出现问题时也不会影响到下层,我们再来回顾一下两台主机相互通信的过程,源主机发送需要的信息数据,通过链路与各类分组交换机传达至目的主机,我们用一张图来描述
在这里插入图片描述
我们看到途中出现了五个层级,在应用层发出的信息称为报文经过传输层进行一次解析变为报文段紧接着又通过网络层解析为数据报在链路层中又变为,最后在物理层级将帧中的比特发送出去,通过链路连接到路由或线路交换机最终达到目的主机通过逆解析变为最初的报文。我们看到每一层都会进行一次解析,且发送给下一层,而每一层的解析方式也就是我们通常所说的协议
这种解析也被称之为:封装
一个分组,在不同的层次有不同的称谓,是因为它们经过每一层的时候就被该层封装上了属于该层的相关信息,也就是前面提到的必要信息;于是,每一分层的分组有两种类型的字段:首部字段和有效负载;其中有效负载即为来自上一层的分组数据,而首部字段就是该层加上的必要信息;分组不断被封装以实现各层协议规定的相关功能
每一层遵守的协议各不相同称为网络协议栈,如下图。
在这里插入图片描述

1.5.2OSI 7层模型

在这里插入图片描述
OSI 7层模型只比网络层多了两层,主要作用是为了方便应用程序的其他实现,这两个层面在网络五层模型中在应用层之下而在传输层之上,在这个部分给予程序员大量的操作空间,而在传输层之下,则有操作系统来完成所需要的任务,关于这两个层级我们后文再来详细梳理。

小故事说网络

程序员张三爱上隔壁村子的姑娘小芳,但是他比较害羞,不敢当面和小芳聊天。于是他加上了小芳的微信,并用电脑向她发送一条消息,”你好啊,能和你做个朋友吗“,他想知道这条消息有没有顺利的发出去,于是他决定跟踪这条信息(别问我怎么跟踪的),首先他在微信(应用层)发送了一段内容(报文)张三家使用的是HTTP协议,这条信息将会被加上张三家的32比特网络地址以及一些其他内容,然后这条信息进入了传输层,传输层根据应用层所附加的内容知道了他想要和小芳通信,它首先要做的事情并不是发送张三的消息,张三是个谨慎的男人所以他家的网络遵循的是TCP协议(TCP协议会经历三次握手来建立稳固可靠的连接)我们继续来看这条消息,其实到了传输层,这条信息已经不是原来的样子了,它经过TCP协议的分组封装,变成了多个短报文”你好啊“ ”能和你做个朋友“ ”吗“以及附带更加多的信息来使得网络层能够顺利发送,而网络层做着同样的事情,它的目的是让路由器能顺利发送张三的信息,路由器同样通过一些协议来封装消息,以方便信息能在物理层传输,这样最终在物理层信息已经变得面目全非,变成一个又一个比特,向小芳家发去。说时迟那时快,这个过程所花费的时间大家应该也清楚,也就是大家平时按下vx发送按钮那一刻到小圆圈转完的那时候,在大约0.1秒后,张三ping了一下小芳家的IP(张三太喜欢小芳了,于是偷偷记录下她家的IP地址),张三发现他们已经通信成功,这意味着,他的消息已经成功发送,他不禁有些自得,这简直是天助我也(喂不过是网络好一点罢了)。但是小芳还没有回消息,这让张三有点坐立不安。欲知后事如何,请听下回分解。

书后习题

  • R22. 列出一个层次能执行的5个任务。这些任务中的一个(或两个)可能由两个(或更多)层次执行吗?
  • 答案:
    比如运输层,TCP的任务有划分为短报文,拥塞控制,流量控制,可靠性等等。它的任务不是由两个(或更多)层次执行的。但是,很多层次的任务是互相重复的。

  • R23. 因特网协议栈中的5个层次有哪些?在这些层次中,每层的主要任务是什么?
  • 答案:
    应用层:提供了一些网络应用程序和应用层协议。
    运输层:在应用程序端点之间传输运输层报文。主要有TCP和UDP两种协议。
    网络层:负责将分组从一台主机移动到另一台主机。
    链路层:沿着路经将数据报传递给下一层结点。
    物理层:将整个帧从一个网络元素移动到邻近的网络元素。

  • R24. 什么是应用层报文?什么是运输层报文段?什么是网络层数据报?什么是链路层帧?
  • 答案:
    应用层报文:一个端系统与另一个端系统应用程序交换信息的分组。
    运输层报文段:运输层的分组
    网络层数据报:网络层的分组
    链路层帧:链路层的分组

  • R25. 路由器处理因特网协议栈中的哪些层次?链路层交换机处理的是哪些层次?主机处理的是哪些层次?
  • 答案:
    路由器处理的层次:物理层 链路层 网络层
    交换机处理的层次:物理层 链路层
    主机处理的层次:物理层 链路层 网络层 运输层 应用层

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-08-30 12:32:49  更:2021-08-30 12:33:12 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年6日历 -2024/6/15 8:39:27-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码