Skip to content

概述

约 2311 个字 1 张图片 预计阅读时间 8 分钟

概述

概念

一般认为,计算机网络是一个将众多分散的、自治的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。这里需要区分internetInternet

  • internet:是一个通用名词,泛指由多个计算机网络互联而成的计算机网络。
  • Internet:是一个专有名词,指当前全球最大的、开放的、由众多网络和路由器互连而成的特定计算机网络。

组成

  1. 从组成部分看,计算机网络可以分为硬件、软件和协议
  2. 硬件:主机、通信链路(如双绞线、光纤)、交换设备(如路由器、交换机等)和通信处理机(如网卡)
  3. 软件:各种工具软件,比如E-mail程序、FTP程序、聊天程序等
  4. 协议:网络传输数据时需要遵循的规范
  5. 从工作方式看,计算机网络可以分为边缘部分和核心部分
  6. 边缘部分由所有连接到计算机网络上供用户直接使用的主机组成,用来通信和资源共享
  7. 核心部分由大量网络和连接这些网络的路由器组成,它们为边缘部分提供联通性和交换服务
  8. 从功能组成看,计算机网络由通信子网和资源子网组成,顾名思义,通信子网主要用于数据通信,资源子网主要用于资源共享

电路交换、报文交换和分组交换

最典型的电路交换网是传统电话网,在传输资源前,两个用户之间必须建立一条专用的物理通信路径。在数据传输过程中,这一物理通信路径始终被两个用户独占,直到通信结束后才被释放。在电路交换中,任何节点都采用直通方式,即不存在存储和转发的开销,比特流在整个通信阶段源源不断地从源节点直达目的节点。

报文交换采用存储转发技术,整个报文先传送到相邻节点,全部存储后查找转发表,转发到下一个节点,如此重复,直到到达目的节点。每个报文都可以单独选择到达目的端点的路径。

分组交换也采用存储转发技术,解决了报文交换中报文过长的问题,做法是先把较长的报文划分成若干较小的等长数据段,在每个数据段前添加一些必要的控制信息组成的首部,构成分组(Packet)

分类

按照分布范围,可以分为:

  1. 广域网(WAN)
  2. 城域网(MAN)
  3. 局域网(LAN)
  4. 个人区域网(PAN)

按照传输技术,可以分为:

  1. 广播式网络:所有联网计算机都共享一个公共通信信道
  2. 点对点网络:每条物理线路连接一对计算机

按照拓扑结构,网络可以分为:

  1. 总线型:用单根传输线把计算机连接起来
  2. 星型:每个终端或计算机都以单独的线路与中央设备相连
  3. 环型:所有计算机接口设备连接成一个环
  4. 网状:每个节点至少有两条路径与其它节点相连

按使用者分类:

  1. 公用网:电信公司出资修建的大型网络
  2. 专用网:指某个单位为满足本单位特殊业务需要而建造的网络

按传输介质分:

  1. 有线:双绞线和同轴电缆
  2. 无线:蓝牙、微波、无线电等

性能指标

默认B是Byte,b是bit

  1. 速率(speed):指连接到网络的节点在数字信道上传输数据的速率,也称数据传输速率、数据率或比特率,单位为b/s(bit/s),有时简写bps
  2. 带宽(bandWidth):在计网中表示网络的通信线路所能传送数据的能力,是最高数据传输率的同义词,单位是b/s
  3. 吞吐量(throughput):指单位时间通过某个网络的实时数据量
  4. 时延(delay):指数据从一端传到另一端的总时间,包括发送时延、传播时延、处理时延和排队时延
  5. 发送时延 = 分组长度/发送速率
  6. 传播时延 = 信道长度/电磁波在信道上的传播速率
  7. 处理时延:分组在交换节点为存储转发而进行的一些必要处理所花时间
  8. 排队延迟:分组在路由器的输入队列和输出队列中排队等待所花的时间

体系结构

分层结构

计算机网络各层及其协议的集合称为网络的体系结构(Architecture),体系结构是抽象的,而实现是具体的,是真正的运行的计算机硬件和软件。计算机体系结构通常具有分层特性:

  1. 每层实现一种相对独立的功能,降低大系统的复杂度
  2. 各层之间的接口自然清晰,易于理解,相互交流尽可能少
  3. 各层功能的精确定义独立于具体的实现方法,可以采用最适合的技术来实现
  4. 保持下层对上层的独立性,上层单向使用下层提供的服务
  5. 整个分层结构应能促进标准化工作

在网络分层结构中,第$n \(层的活动元素通常称为第\)n \(层实体,不同机器上同一层称为对等实体。第\)n \(层向第\)n+1 $层提供的服务包括在其以下各层提供的服务。

  • 协议数据单元(PDU):对等层之间传送的数据单位
  • 服务数据单元(SDU):层与层之间交换的数据单元
  • 协议控制信息(PCI):控制协议操作的信息

n-SDU+n-PCI=n-PDU=(n-1)-SDU

协议

要在网络中做到有条不紊地交换数据,就必须要遵循一些事先约定好的规则,其规定了所交换数据的格式及有关的同步问题。为了在网络中进行数据交换而建立的这些规则、标准或约定称为网络协议(Network Protocol),是控制在对等实体间进行通信的规则的集合,是水平的。

协议由三部分组成:

  1. 语法:数据与控制信息的格式
  2. 语义:需要发出何种控制信息、完成何种动作及做出何种应答
  3. 同步:执行各种操作的条件、时序关系等

服务

服务指下层为紧邻的上层提供的功能调用,是垂直的,并非在一层内实现的所有功能都称作服务,只有那些能够被高一层实体“看得见”的功能才称为服务。

模型

有两种主流的模型,即OSI参考模型和TCP/IP模型,不过教学中日常使用的是五层协议模型。

不同层发送的内容有各自的名称:

  • 传输层:报文段 (Segment)
  • 网络层:包/分组 (Packet)
  • 数据链路层:帧 (Frame)
  • 物理层:比特流 (Bit Stream)

在实际当中计算网络并不是严格分层的,因为有许多现实因素会导致不得不去查看其它层的内容,比如

  • NAT:工作在网络层,但用到了端口号(传输层)
  • TCP/UDP header:checksum中有IP地址

OSI 参考模型

OSI 参考模型和上课使用的五层模型差不多:

  1. 物理层:在物理介质上为数据端设备透明地传输原始比特流
  2. 数据链路层:将物理层提供的可能出错的物理连接改造为逻辑上无差错的数据链路
  3. 网络层:将分组从源主机传送到目的主机
  4. 传输层:负责两个主机进程间的通信,实现端到端传输
  5. 会话层:允许不同主机间各个进程进行会话,包含一种称为检查点的机制来维持可靠会话
  6. 表示层:处理在不同主机中交换信息的表示方式
  7. 应用层:为特定类型的网络应用提供访问OSI参考模型环境的手段

但还是有些微妙的区别:

  1. 网络层既提供有连接可靠的虚电路服务,也提供无连接不可靠的数据报服务
  2. 传输层仅提供有连接可靠的服务

TCP/IP 模型

TCP/IP模型从低到高依次为:

  1. 网络接口层:从主机或节点接收IP分组,并将它们发送到指定的物理网络上,但并未描述具体的功能和协议
  2. 网际层:将分组发往任何网络,并为其独立地选择合适路由,但不保证分组有序地到达,各个分组的有序和可靠由高层负责
  3. 传输层:使得发送端和目的端的对等实体进行会话,使用TCP/UDP
  4. 应用层:包含所有的高层协议

TCP/IP协议因为广泛的应用而成为事实上的国际标准