新手学做网站从哪里开始,给前端做网站的图片叫什么,证券公司怎么拉客户,网站后台如何开发欢迎来到博主 Apeiron 的博客#xff0c;祝您旅程愉快 #xff01; 时止则止#xff0c;时行则行。动静不失其时#xff0c;其道光明。 目录 1、常见的计算机网络体系结构
2、计算机网络体系结构分层的必要性
2.1、物理层
2.2、数据链路层
2.3、网路层
2.4、运输层
2… 欢迎来到博主 Apeiron 的博客祝您旅程愉快 时止则止时行则行。动静不失其时其道光明。 目录 1、常见的计算机网络体系结构
2、计算机网络体系结构分层的必要性
2.1、物理层
2.2、数据链路层
2.3、网路层
2.4、运输层
2.5、应用层
3、计算机网络体系结构中的专业术语
4、总结 1、常见的计算机网络体系结构 为了使不同体系结构的计算机网络都能互连国际标准化组织于 1977 年成立了专门机构研究该问题。不久他们就提出了一个试图使各种计算机在世界范围内互连成网的标准框架也就是著名的 “开放系统互连参考模型”简称为 OSIOpen Systems Interconnection。 到了 20 世纪 90 年代初期虽然整套的 OSI 国际标准都已经制订出来了但这时因特网已抢先在全世界覆盖了相当大的范围。因特网从 1983 年开始使用 TCP/IP 协议族并逐步演变成 TCP/IP 参考模型。 在过去制订标准的组织中往往以专家、学者为主。但现在许多公司都纷纷挤进各种各样的标准化组织使得技术标准有着浓厚的商业气息。一个新标准的出现有时不一定反映出其技术水平是最先进的而是往往有着一定的市场背景。从这种意义上说能够占领市场的就是标准。 OSI 标准失败的原因可归纳为 ① OSI 的专家们缺乏实际经验它们在完成 OSI 标准时没有商业驱动力
② OSI 的协议实现起来过分复杂而且运行效率很低
③ OSI 标准的制订周期太长因而使得按 OSI 标准生产的设备无法及时进入市场
④ OSI 的层次划分也不太合理有些功能在多个层次中重复出现 TCP/IP 体系结构的网络接口层并没有规定什么具体的内容这样做的目的是 可以互连全世界各种不同的网络接口例如有线的以太网接口无线局域网的 WIFI 接口而不限定使用一种或几种网络接口。因此本质上 TCP/IP 体系结构只有上面的三层。 IP 协议是 TCP/IP 体系结构网际层的核心协议。TCP 和 UDP 是 TCP/IP 体系结构运输层的两个重要协议。 TCP/IP 体系结构的应用层包含了大量的应用层协议例如 HTTPSMTPDNSRTP 等。 IP 协议可以将不同的网络接口进行互连并向其上的 TCP 协议和 UDP 协议提供网络互连服务。而 TCP 协议在享受 IP 协议提供的网络互连服务的基础上可向应用层的相应协议提供 可靠传输的服务。UDP 协议在享受 IP 协议提供的网络互连服务的基础上可向应用层的相应协议提供 不可靠传输的服务。 由于 TCP/IP 体系结构为了将不同的网络接口进行互连因此它的网络接口层并没有规定什么具体的内容。然而这对于我们学习计算机网络的完整体系而言就会缺少一部分内容即缺少的是物理层内容。因此在学习计算机网络原理时往往采取折中的办法也就是综合 OSI 和 TCP/IP 的优点采用一种 五层协议的原理体系结构。 可以看出五层协议的原理体系结构将 TCP/IP 体系结构的网络接口层又重新划分为了物理层和数据链路层。这样更有利于我们对计算机网络原理的学习。 2、计算机网络体系结构分层的必要性 “分层” 可将庞大而复杂的问题转化为若干较小的局部问题而这些较小的局部问题就比较易于研究和处理。 下面我们按照由简单到复杂的顺序来看看实现计算机网络要面临哪些主要的问题以及如何将这些问题划分到相应的层次层层处理。 2.1、物理层 物理层Physical Layer这是最底层的层次负责定义传输介质和数据传输的物理规范例如电缆、光纤、无线信号等。 首先来看最简单的情况两台计算机通过一条网线连接起来。 对于这种最简单的情况我们需要考虑以下问题 ① 采用怎样的传输媒体介质 例如这是我们常见的双绞线网线。 ② 采用怎样的物理接口 例如这是 RJ45 以太网接口。 ③ 使用怎样的信号表示比特 0 和 1 例如使用这样的方波信号低电平表示 0高电平表示 1。这里我们需要说明两点① 严格来说传输媒体并不属于物理层它并不包含在体系结构之中。② 计算机网络中传输的信号并不是我们举例的方波信号我们之所以举例成方波信号是为了让初学者容易理解。 解决了这些问题两台计算机就可以通过信号来传输比特 0 或 1 了。我们可以将这些问题划规到 物理层。 2.2、数据链路层 数据链路层Data Link Layer在物理层之上负责数据的分帧、差错检测和纠正以确保数据在物理层的可靠传输。 实用的计算机网络一般都由多台主机构成。 假设我们已经解决了物理层的问题也就是说主机间可以发送信号来传输比特 0 或 1 了。我们来看看在这样一个 总线型的网络 上还面临什么需要解决的问题呢 如图所示主机 A 要给主机 C 发送数据但是表示数据的信号会通过总线传播到总线上的每一个主机。那么问题来了主机 C 如何知道该数据是发送给自己的自己要接受而主机 BDE 又如何知道该数据并不是发送给自己的自己应该拒绝呢这就很自然地引出了 如何标识网络中各主机的问题主机编址问题例如 MAC 地址。 主机在发送数据时应该给数据附加上目的地址当其他主机收到之后根据目的地址和自身地址来决定是否接受数据。这就又引出了一个问题目的主机从信号所表示的一连串比特流中区分出地址和数据也就是需要解决分组的封装格式问题。 另外对于总线型网络还会出现下面这种典型的问题。例如在某个时刻总线是空闲的也就是没有主机使用总线来发送数据。片刻之后主机 B 和 D 同时向总线发送数据这必然会造成信号碰撞。因此如何协调各主机争用总线也是必须要解决的问题。 需要说明的是这种总线型的网络早已淘汰现在常用的是使用 以太网交换机 将多台主机互相形成的 交换式以太网。 那么以太网交换机是如何实现的呢我们将这些问题全部划归到 数据链路层。到这里大家可能会发现只要解决了物理层和数据链路层各自所面临的问题我们就可以实现分组在一个网络上传输了。 2.3、网路层 网络层Network Layer这一层负责网络中不同设备之间的寻址和路由以确定数据在网络中的最佳路径。 我们每天都会使用的因特网是由非常多的网络和路由器互连起来的仅解决物理层和数据链路层还是不能正常工作。我们来看下面这个例子这是由 3 个路由器4 个网络互连起来的小型互连网我们可以把它看作是因特网中很小的一部分。 在之前的例子中只有一个网络我们不需要对网络进行标识。而在本例中有多个网络很显然我们面临着 如何标识 “各网络” 以及 “网络中各主机” 的问题网络和主机共同编址问题例如 IP 地址。 例如这是网络 N1 中各设备的 IP 地址。该类 IP 地址的前三个十进制数用来标识网络第四个十进制数用来标识主机。 我们在来看另外一个问题源主机与目的主机之间的传输路径往往不止一条分组从源主机到目的主机可走不同的路径。这样就引出了路由器如何转发分组的问题 以及如何进行路由选择的问题 。我们将这些问题全部划分到 网络层。 2.4、运输层 传输层Transport Layer传输层提供端到端的通信负责将数据分割为较小的数据段并提供流量控制和可靠性保证例如通过TCP传输控制协议实现的可靠数据传输。 如果我们解决了物理层、数据链路层以及网络层各自的问题则可以实现分组在网络间传输的问题。但是对于计算机网络应用而言这仍然不够。例如假设这台主机中运行着两个与网络通信相关的应用进程一个是浏览器进程另一个是 QQ 进程。这台服务器中运行着与网络通信相关的服务器进程。 某个时刻主机收到了来自服务器的分组那么这些分组应该交给浏览器进程处理呢还是应该交给 QQ 进程处理呢这就引出了我们如何标识与网络通信相关的应用进程进而解决进程之间基于网络的通信问题。 另外如果某个分组在传输过程中出现了误码或者由于路由器繁忙导致路由器丢弃分组这应该如何处理呢我们将这些问题都全部划归到 运输层。 2.5、应用层 我们已经解决了物理层数据链路层网络层和传输层各自的问题则可以实现进程之间基于网络的通信。在此基础上只需制定各种应用层协议并按协议标准编写相应的应用程序通过应用进程间的交互来完成特定的网络应用。例如支持万维网应用的 HTTP 协议支持电子邮件的 SMTP 协议支持文件传送的 FTP 协议我们将这些问题全部划分到应用层。 至此我们将实现计算机网络所需要解决的各种主要问题分别划归到了 物理层、数据链路层、网络层、运输层 和 应用层进而构成了五层协议体系的原理体系结构。 3、计算机网络体系结构中的专业术语
1实体任何可发送或接收信息的硬件或软件进程
2对等实体收发双方相同层次中的实体 3协议的三要素 ① 语法定义所交换信息的格式 ② 语义定义收发双方所要完成的操作 例如主机要访问远程 Web 服务器他会构建一个 HTTP 的 GET 请求报文然后将其发送给 Web 服务器。 Web 服务器收到该报文并进行解析知道这是一个 HTTP 的 GET 请求报文于是就在自身内部查找所请求的内容并将所找到的内容封装在一个 HTTP 响应报文中发回给主机。 主机收到 HTTP 响应报文后对其进行解析取出所请求的内容并由浏览器解析显示。这个例子就可以体现出通信双方收到分组后完成怎么样的操作。这是 HTTP 协议的语义所定义的。 ③ 同步定义收发双方的时序关系 请注意这里的同步并不是指时钟频率同步。例如这是 TCP 采用 “三报文握手” 建立连接的过程。要想进行运输层 TCP 实体间的逻辑通信首先必须建立连接。从连接建立的过程就可以看出 TCP 客户端和 TCP 服务器之间的时序关系以及各自的状态转换。只有双方建立连接后才能进行 TCP 数据传输。这个例子可以充分体现计算机网络协议三要素中的同步。 4服务 在协议的控制下两个对等实体间的逻辑通信使得本层能够向上一层提供服务。要实现本层协议还需要使用下面一层所提供的服务。协议是 “水平的”服务是 “垂直的” 。 实体看得见相邻下层所提供的服务但并不知道实现该服务的具体协议。也就是说下面的协议对上面的实体是 “透明” 的。
5服务访问点 在同一系统中 相邻两层的实体交换信息的逻辑接口用于区分不同的服务类型。
① 数据链路层的服务访问点为帧的 “类型” 字段
② 网络层的服务访问点为 IP 数据报首部中的 “协议字段” 。
③ 运输层的服务访问点为 “端口号” 。 6服务原语 上层使用下层所提供的服务必须通过与下层 交换一些命令这些命令称为服务原语。
7数据单元 ① 协议数据单元 PDU 在计算机网络体系结构中对通信双方所交互的数据包有专门的术语。我们把 对等层次之间传送的数据包 称为该层的协议数据单元。 ② 服务数据单元 SDU 同一系统内层与层之间交换的数据包 称为服务数据单元。 ③ 多个 SDU 可以合成为一个 PDU一个 SDU 也可划分为几个 PDU 4、总结 本期的分享总结就到这里了如果有疑问的小伙伴儿我们在评论区交流嗷~~~笔者必回我们下期再见啦
博客中难免存在疏漏和错误之处皆归因于作者水平有限诚请各位读者不吝指正
计算机网络 专栏系列持续更新欢迎订阅关注