当前位置: 首页 > article >正文

计算机网络笔记(三)——1.3互联网的组成

互联网的拓扑结构虽然非常复杂,并且在地理上覆盖了全球,但从其工作方式上看,可以划分为以下两大块:
(1)边缘部分:由所有在连接在互联网上的主机组成。这部分是用户直接使用的,用来进行通信(传送数据、音频或视频)和资源共享。
(2)核心部分:由大量的网络和连接这些网络的路由器组成。这部分是为边缘部分提供服务的(提供连通性和交换性)。
在这里插入图片描述

1.3.1互联网的边缘部分

处在互联网边缘的部分就是连接在互联网上的所有的主机,这些主机又称为端系统(end system)。端系统的拥有者可以是个人、也可以是单位(如学校、企业、政府机关等),当然也可以是某个ISP(ISP不仅仅是向端系统提供服务,它也可以拥有一些端系统)。边缘部分利用核心部分所提供的服务,使众多主机之间能够互相通信并交换或共享信息。

值得注意的是,现在大部分提供信息检索、万维网浏览以及视频播放等功能的服务器,都不再是一个孤立的服务器,而是属于某个大型数据中心(拥有数量极大的服务器)。

通常,我们所说的"主机A和主机B通信",实际上是指"运行在主机A上的某个程序和运行在主机B上的另一个程序进行通信"。由于"进程"就是"运行着的程序",因此这也就是指:“主机A的某个进程和主机B上的另一个进程进行通信”,我们也简称为"计算机之间通信"。

1.客户-服务器模式

这种方式在互联网上是最常用的,也是传统的方式。计算机通信的对象是应用层中的应用程序,采用客户-服务器方式可以使两个应用进程能够进行通信。

客户(client)和服务器(server)都是指通信中所涉及的两个应用程序。客户-服务器方式所描述的是进程之间服务与被服务的关系。如下图,主机A运行客户程序而主机B运行服务器程序。在这种情况下,A是客户而B是服务器。客户A向服务器B发送请求服务,而服务器B向客户A提供服务。这里最主要的特征是:客户是服务请求方,服务器是服务提供方

在这里插入图片描述

服务请求方和服务提供方都要使用网络核心部分所提供的服务。

在实际应用中,客户程序和服务器程序通常还具有以下一些主要特点。

客户程序

  • (1)被用户调用后运行,在通信时主动向远地服务器发起通信(请求服务)。因此,客户程序必须知道服务器程序的地址。
  • (2)不需要特殊的硬件和很复杂的操作系统。
    服务器程序
    (1)是一种专门用来提供某种服务的程序,可同时处理多个远地或本地客户请求。
    (2)系统启动后即一直不断地运行着,被动地等待并接受来自各地的客户的通信请求。因此,服务器程序不需要知道客户程序的地址。
    (3)一般需要有强大的硬件和高级的操作系统的支持。

客户与服务器的通信关系建立后,通信可以是双向的,客户和服务器都可以发送和接收数据。

2.对等连接方式

对等连接(peer-to-peer)是指两台主机在通信时,并不区分哪一个是服务请求方,哪一个是服务提供方。只要两台主机都运行了对等连接软件(P2P软件),它们就可以进行平等的对等连接通信。这是,双方都可以下载对方已经存储在硬盘中的共享文档。这种方式也被称为P2P方式。
在这里插入图片描述

对等连接方式从本质上看仍然是使用客户-服务器方式,只是对等连接中的每一台主机既是客户同时又是服务器。

1.3.2互联网的核心部分

网络核心部分是互联网中最复杂的部分,因为网络中的核心部分要想网络边缘部分中的大量主机提供连通性,使边缘部分中的任何一台主机都能够与其他主机通信。

在网络核心部分器特殊作用的是路由器(router) ,它是一种专用计算机(但不叫作主机)。路由器是实现分组交换(packet switching) 的关键构件,其任务是转发收到的分组,这是网络核心部分最重要的功能。为了弄清楚分组交换,我们先介绍一下电路交换的基本概念。

1.电路交换的主要特点

从通信资源的分配角度来看,交换(switching)就是按照某种方式动态地分配传输线路的资源。电路交换分为是三个步骤:建立连接(占用通信资源) -> 通话(一直占用通信资源) -> 释放连接(归还通信资源)。

如果用户在拨号呼叫时电信网的资源不足以支持这次的呼叫,则主机用户会听到忙音,表示电信网不接受用户的呼叫,用户必须挂机,等待一段时间再重新拨号。

电路交换的一个重要特点就是在通话的全部时间内,通话的两个用户始终占用端到端的通信资源

当使用电路交换来传送计算机数据时,其线路的传输效率往往很低。这是因为计算机数据时突发式低出现在传输线路上的,因此线路上真正用来传输数据的时间往往不到10%甚至1%,被占用的通信线路资源绝大部分时间里是空闲的,白白浪费掉。

2.分组交换的主要特点

分组交换采用存储转发技术,将一个报文划分为几个分组后再进行传送,我们把要发送的整块数据称为一个报文(message)。

在发送报文之前,先把较长的报文划分为一个个更小的等长数据段,在每个数据段前面,加上一些必要的控制信息组成的首部(header)后,就构成一个分组(packet),分组又称为"",而分组的首部也可称为"包头"。分组是在互联网中传送的数据单元。分组的中的首部是非常重要的,正是由于分组的首部包含了诸如目的地址和源地址等重要控制信息,每一个分组才能在互联网中独立地选择传送路径,并被正确地交付到分组传输的终点。

互联网核心部分的路由器之间一般都用高速链路相连接,而在网络边缘部分的主机接入到核心部分则通常使用以相对较低速率的链路相连接。

位于网络边缘部分的主机和位于网络核心部分的路由器都是计算机,但是它们的作用却不一样。主机是为用户进行信息处理的,并且可以和其他主机通过网络交换信息。路由器则用来转发分组,进行分组交换的。路由器收到一个分组,先暂时存储一下,检查其首部来查找转发表,按照首部中的目的地址,找到合适的接口转发出去,把分组交给下一个路由器,这样一步一步地(有时会经过几十个不同的路由器)以存储转发的方式,把分组交付最终的目的主机。

各路由器之间必须经常交换彼此掌握的路由信息,以便创建和动态维护路由器的转发表,使得转发表能够在整个网络拓扑发生变化时及时更新。

路由器暂时存储的是一个短分组,而不是整个的长报文。短分组是暂存在路由器的存储器(即内存)中而不是存储在磁盘中的,保证较高的交换速率。分组交换在传送数据之前不必先占用一条端到端的通信资源,分组在哪段链路上传送才占用那段链路的通信资源。分组在传输时断续地占用通信资源,而且还省去了建立连接和释放连接的开销,因而数据的传输效率更高。

当网络中的某些节点或链路突然出现故障时,在各路由器中原先的路由选择协议(protocol)能够自动找到转发分组最合适的路径。

采用存储转发的分组交换,实质上是采用了在数据通信过程中断续(或动态)分配传输带宽的策略。为了提高分组交换网的可靠性,互联网的核心部分常采用网状拓扑结构,使得当发生网络拥塞少数节点,链路出现故障时,路由器可灵活地改变转发路由而不导致引起通信的中断或全网的瘫痪。

优点所采用的手段
高效在分组传输的过程中动态分配传输带宽,对通信链路逐段占用
灵活为每一个分组独立地选择最合适的转发路由
迅速以分组作为传送单位,不先建立连接就能向其他主机发送分组
可靠保证可靠性的网络协议,分布式多路由的分组交换网,使网络有很好的生存性

分组交换也存在一些问题。例如,分组在各路由器存储转发时需要排队,这就会造成一定的时延,因此,必须尽量设法去减少这种时延,此外也无法确保通信时端到端所需的带宽。

此外,还有一种报文交换的存储转发方式,但不用于网络转发中。
在这里插入图片描述

简单列出三种交换方式在数据传送阶段的注意特点:

  • 电路交换:整个报文的比特流连续地从源点直达终点,好像在一个管道中传送。
  • 报文交换:整个报文先传送到相邻节点,全部存储下来后查找转发表,转发到下一个节点。
  • 分组交换:单个分组(这只是整个报文的一部分)传送到相邻节点,存储下来后查找转发表,转发到下一个节点。

http://www.kler.cn/a/592816.html

相关文章:

  • 再学:abi编码 地址类型与底层调用
  • AI小白的第六天:必要的数学知识(一)
  • node.js判断在线图片链接是否是webp,并将其转格式后上传
  • jmeter将返回的数据写入csv文件
  • 基于MySQL的创建<resultMap>和查询条件<if test>
  • 函数闭包的学习
  • 分治-快速排序系列一>快速排序
  • ESP8266 与 ARM7 接口-LPC2148 创建 Web 服务器以控制 LED
  • 穿越禁区:前端跨域通信的艺术与实践
  • C语言每日一练——day_7
  • Netty基础—6.Netty实现RPC服务二
  • 痉挛性斜颈护理宝典:重拾生活平衡
  • 2025-03-19 学习记录--C/C++-C语言-单链表的结构体定义 + LNode * 和 LinkList 的区别
  • 如何在 HTML 中实现无障碍访问,列举关键措施?
  • NAT及P2P通信
  • 比较常见的几种排序算法
  • 利用knn算法实现手写数字分类
  • Kafka-QA
  • 前端字段名和后端不一致?解锁 JSON 映射的“隐藏规则” !!!
  • 批量删除 PPT 中的所有图片、某张指定图片或者所有二维码图片