网络

计网学习笔记|计算机网络概述

计算机网络基本概念

①计算机网络是通信技术计算机技术紧密结合的产物。

②计算机网络就是自治的、互联的计算机集合,自治意思是这台计算机不能操控另一台计算机;互联就是这些计算机是互联互通的,它们能通过通信链路如光纤、同轴电缆、无线信号等等介质连接起来。更多的情况是,我们通过交换网络互连主机,实现数据从信源到信宿。

信源就是发送信号的,信宿就是接受信号的,两者一般都是计算机。

③计算机网络就是一种通信模型。

什么是网络协议

仅仅靠硬件是无法完成双方数据通信的,通信数据需要遵守事先约好的协议规则。网络协议就是为进行网络中的数据交换而建立的规则、标准或约定。协议规定了通信实体之间所交换的消息的格式、格式意义、顺序以及针对接收到的信息或发生的事件所采取的“动作”,规范了网络中所有信息发送和接收过程,使网络上各种设备能够相互交换信息。

网络协议是网络上所有设备(网络服务器、计算机、交换机、路由器、防火墙等)之间通信规则的集合。大多数网络都采用分层的体系结构,每一层都建立在它的下层之上,向它的上一层提供一定的服务,而把如何实现这一服务的细节对上一层加以屏蔽。一台设备上的第n与另一台设备上的第n层进行通信的规则就是第n层协议。在网络的各层中存在着许多协议,接收方和发送方同层的协议必须一致,否则一方将无法识别另一方发出的信息。常见的协议有:TCP/IP协议、IPX/SPX协议、NetBEUI协议等。在局域网中用得的比较多的是IPX/SPX.。

上面提到协议有三要素:语法语义时序

  • 语法是数据与控制信息的结构或格式;
  • 语义是定义需要发出何种控制信息以及完成何种动作、做出什么响应,定义如何理解对方要具体表达的内容;
  • 时序就是事件顺序,约定两者交流时的表达顺序。

计算机网络的结构

网络的组成部分大致可分为:

  • 网络边缘:主机和运行在主机上的网络应用。
  • 接入网络,物理介质:包括有线或无线通信链路。
  • 网络核心(核心网络):互联的路由器或分组转发设备。

网络边缘

我们用的手机、电脑这些主机(端系统)就是位于“网络边缘”的,还包括在这些主机上运行着各种网络应用程序。

在网络边缘里,有客户/服务器(client/server)应用模型,当客户发送请求,会有专用服务器会接受响应,如:Web应用,文件传输FTP应用。有对等(peer-peer,P2P)应用模型,此模型的通信实体不需要依赖专用服务器,如:QQ、Skype。普通网络用户通过使用各种网络应用实现网络资源的共享,通常这些网络资源也位于网络的网络边缘部分。

接入网络

如何将网络边缘接入核心网(边缘路由器)呢?答:我们通过接入网络。接入网络又分为:家庭接入网络、机构接入网络(学校、企业等)、移动接入网络。作为用户的我们,一般更多的关心是:带宽、接入方式是共享的还是独占的(・∀・(・∀・(・∀・*)。

接入网络又分以下几种具体方式:

  • 数字用户线路(DSL),利用已有的电话线连接中心局的DSLAM,是频分多路复用的例子,在不同频带(载波)上传输不同频道。也是独占至中心局的接入的。
  • 电缆网络,也是频分多路复用的例子,各家庭(设备)通过电缆网络->光纤接入ISP路由器。
  • 机构(企业)接入网络(Ethernet),端系统通常直接连接以太网交换机。
  • 无线接入网络,通过共享的无线接入网络连接系统与路由器。无线接入网络分为无线局域网(LANs),也就是我们常用的WiFi;广域无线接入,通过蜂窝网提供商运营的基站来发送和接收分组,接入范围在几十公里,也就是我们常用的4G。
图: 典型家庭网络接入模型

网络核心

网络核心就是使网络互联的路由器网络,帮助我们实现数据从源主机通过网络核心送达目的主机。关键功能是:路由+转发。路由关键的是要遵循路由协议,靠路由算法确定数据包/分组从源到目的的传输路径。转发就是指将分组从路由器的输入端口交换至正确的输出端口

什么是Internet

首先。网络和网络通过路由器互连起来,构成了一个覆盖范围很大的网络,就是互联网。从组成成分看,Internet是全球最大的互联网络,也是数以百万计的计算设备的集合。这些计算设备通过通信链路(卫星、光纤、同轴电缆等)连接在一起的,除此之外还需要靠路由的分组交换进行连接通信。

从服务角度看,Internet为网络应用提供通信服务的基础设施,支持我们运行各种分布式网络应用;为网络应用提供应用编程接口(API),支持应用发送/接受数据。

Internet协议标准可查看RFC文档和IETF。

Internet结构

主机/端系统接入ISP连接到Internet,整个Internet有很多的接入ISP互连构成复杂的网络互联的网络。这些主机是不会两两直接互联的,效率不高也不现实;也不是靠接入ISP连接到一个国家或全球ISP实现互联,这和国家利益与实力冲突。但是这些ISP网络必须互联才能实现通信。我们可以用大量的IXP交换节点建立区域网络连接接入ISP和运营商ISP。除此之外,还有一些内容提供商网络如Google会运行自己的网络,并直接就近为用户提供服务、内容。

由上图可看出,一级ISP是如电信、网通这样的运营商,提供国家或国际范围的覆盖,还有内容提供商,他们的网络常常可绕过一级ISP和区域ISPs。

网络拓扑结构

Internet是全球最大的互联网络,其网络拓扑结构极其复杂,而且具有很强的动态性。网络拓扑结构是网络的一种物理布局形式,即用传输介质连接各种设备的物理布局。网络拓扑结构形象地描述了网络的安排和配置方式,以及各节点之间的相互关系。常见的有星型结构,环型结构和总线型结构、树型结构以及蜂窝型结构等。如星型结构风险较小因为结构简单,较易维护,延迟较少。我们可以根据现有的网络拓扑结构进行优化,设计出更优质的结构,有利于提高传输速率,节约铺设材料。

网络核心的一些点

数据交换

网络核心要解决的问题是:如何通过网络核心实现数据从源主机到达目的主机?问题主要采用的技术办法就是:数据交换-电路交换。

为什么需要数据交换:因为如果主机两两相连,就会有N²链路问题。所以需要引入交换设备,交换设备可以建立端口之间的连接。我们的主机和交换设备相连,通过设备动态交换数据。为了保证连通性和网络规模不要太大,把交换设备连起来就构成一个交换网络,实现数据从源主机穿越交换网络到达目的主机。

数据交换从技术分类上看,分为3个类型:

  • 电报交换。电报交换最典型电路交换网络:电话网络。电路交换过程可以概况为三个阶段:建立连接(拨号/电路建立)-> 通信 -> 释放连接(挂机/拆除电路)。最显著的特点是,这是一种独占资源的电路交换,也就是打电话的通信双方建立起的电路资源不可被第三方共享。要是想在电路交换网络里共享中继线,需要多路复用技术(下面会提到)。
  • 报文交换。报文是源(应用)发送信息整体,比如一个文件、图像。报文交换会一次性把报文发送到下一个相邻节点,路由器又要收到完整的报文才开始决定往哪个路口转发。常见应用就是:电报。
  • 分组交换。在这种数据交换类型里,报文会被分拆出一系列相对较小的数据包,再加上头部信息->组成报文。源主机会先报文进行拆分成一系列小分组,然后一个分组一个分组转发,路由器收到报文后转发,转发同时会继续接受新的分组,目的主机会按照顺序将目的主机重新组装在一起。分组交换的效率是比分组交换高很多的。分组交换网络不需要事先分配链路,而是采用统计多路复用,大家按需共享链路。分组交换的传输延迟=L(bits)/R(bits/sec),L是分组长度,R是链路上分组的传输速率。

报文交换与分组交换均采用存储-转发交换方式。一般会把收到的分组先暂存一下,做一下准备工作再转发。比起电路交换,分组转发又能使资源充分共享,适用于突发的数据传输网络,也就是使用于用户发送数据是很随机的情况。我们现在广泛使用的Internet就是分组交换,缺点是分组向网络中发送数据,可能超过网络的负荷能力而产生拥塞,会有分组延迟和丢失得概率,我们需要协议处理可靠数据传输和拥塞控制。

多路复用

多路复用是将链路/网络资源(如带宽)划分为“资源片”,将资源片分配给各路“呼叫”,每路呼叫独占分配到的资源片进行通信,但是资源片可能会在释放连接前被“闲置”(idle)。

典型的多路复用方法:频分多路复用/时分多路复用/波分多路复用/码分多路复用。

频分多路复用(FDM)的各用户占用不同的带宽资源,这里的带宽资源是频率带宽,不是数据的发送速率。用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带。频率相互间是隔离开的。最常见应用是有线电视网络,频道嘛~~

图:频分多路复用

时分多路复用(TDM)是将时间划分为一段段等长的十分复用帧(TDM帧),每个用户在每个TDM帧中占用固定的时隙,每个时隙允许用户发送一定的数据。每用户所占用的时隙是周期性出现,用户是在不同的时间占用相同的频带宽度。此时,大家使用的频率都一样了~

图: 时分多路复用

波分复用(WDM)就是光的频分复用。光通讯里应用的,大家的数据被调成不同波长,通过WDM的复用器调制到共享路上传输,到了目的后又通过分用器调制。WDM的实质是FDM。

码分多路复用(CDM),广泛应用于现在的无线链路共享(如蜂窝网、卫星通信等)。它并不划分时间或者频率,它给每个用户分配一个唯一的m bit码片序列(chipping sequence),用“-1”“+1”来标识01.各用户使用相同频率载波,利用各自码片序列对原始数据进行编码 -> 编码信号=(原始数据)×(码片序列)。为了保证大家通信时不互相干扰和阻塞,所以各用户码片序列要相互正交,来实现共享信道。关键是对码序列的运算。

像上面得例子中的解码部分,假如我想接受si数据,就拿si的码和叠加向量进行内积运算,如果得到运算结果为1,p里有si的码,si发送了一个比特1。如果是0,意味着叠加序列里没有si和si的反码,也就是这段时间内这位用户木有发送数据。

计算机网络性能

以下是一些衡量计算机网络性能的指标:

速率:速率就是数据率或称数据传输速率或比特率,单位:b/s(bps)。所以经常也叫比特率。是计算机网络中最重要的一个性能指标。

带宽:在信号处理或者通信领域里,指信号具有的频带宽度,就是最高频率与最低频率之差,单位是赫兹(Hz)。在计算机网络里的“带宽”通常是数字信道所能传送的“最高数据率”,单位:b/s(bps)。

延迟/时延:在分组交换中,分组进行传输的过程中,会因为在路由器缓存中排队,产生延迟。由于任何一个路由器的可用缓存是有限的,缓存要是满了,分组因到达速率超出输出链路容量而被丢弃。

以下是四种分组延迟:

  • 结点处理延迟(dproc):路由器结点需要对分组进行处理,所以会产生结点处理延迟,这个时间相对比较小。
  • 排队延迟(dqueue):当确定该分组往哪个输出链路往外传输时,等待输出链路又不巧排满了,就产生排队延迟。这个是取决于路由器当前的拥塞程度。
  • 传输延迟(dtrans):当我们链路开始传输一个分组时,从传输分组的第一个比特到最后一个比特发送完后的时间就是传输延迟。所以这个取决于分组长度和链路带宽。
  • 传播延迟(dprop):现在常见的信号有电信号、光信号和无线信号,传播延迟就是这些信号在介质上从起点传到终点所需要的时间,传播的过程中,也会产生延迟。这个和物理链路长度和信号传播速度有关,毕竟假如把信号发到月球上,路途还有有点曲折遥远的。 时延带宽积=传播时延✖宽带,链路的时延带宽积又称为以比特为单位的链路长度。

分组丢失:不同网络对于丢包的处理是不一样的~那什么原因会产生丢包呢,就是队列缓存容量有限,分组到达已满队列时分组将被丢弃。丢弃分组可能由前序结点或源重发(也可能不重发)。丢包率=丢包数/已发分组总数。

吞吐率:表示在发送端与接收端之间传送数据速率(b/s)。又分为即时吞吐量和平均吞吐量。

计算机网络体系结构

计算机网络是一个很复杂的系统,涉及许多组成部分,所以我们讨论网络时,喜欢用分层结构去讨论。

网络体系结构是从功能上描述计算机网络结构,每层需要遵循某个/些网络协议完此本层功能。所以说计算机网络体系结构是计算机网络的各层及其协议的集合。分层结构使结构变得清晰,任何一层服务实现的改变对于系统其他层都是透明的,易于系统更新、维护。

以下是分层网络通信模型的一个简化模拟模型:

  • 实体表示任何可发送或接受信息的硬件或软件进程。
  • 协议是控制两个对等实体(同一层)进行通信的规则的集合,协议是“水平的”。
  • 任一层实体需要使用下层服务,遵循本层协议,实现本层功能,向上层提供服务,服务是“垂直的”。也就是相邻层是服务和被服务的关系。也可以说数据传输是垂直的。
  • 下层协议的实现对上层的服务用户是透明的。
  • 同系统的相邻层实体间通过接口进行交互,通过服务访问点SAP,交换原语,指定请求的特定服务。

OSI参考模型

开放系统互连(OSI)参考模型是由国际标准化组织提出的分层网络体系结构模型。目的是支持异构网络系统的互联互通,也是理解网络通信的最佳学习工具。这仅仅是理论模型,理论算成功,但市场失败。

OSI参考模型数据封装与通信过程

信息层级传递时,需要进行一级一级的数据封装,增加控制信息,经常在头部增添信息,有时也在尾部增添信息,构造为协议数据单元(PDU)。控制信息主要包括:

  • 地址(Address):标识发送端/接收端
  • 差错检测编码:用于差错检测或纠正
  • 协议控制:实现协议功能的附加信息,如:优先级、服务质量和安全控制等。

物理层

物理层是实现每一个比特的传输~具体讲的功能是,定义和规范接口特性,比如这个引脚该长啥样,硬件设备上的数据接口是什么形状;解决比特编码问题;定义数据率,这个和介质有关;比特同步,时钟同步;定义传输模式(单工/半双工/全双工)

数据链路层

比特到底由谁来接收,比特出现错误又如何纠正,这个由数据链路层定义。链路层负责结点到结点的数据传输、组帧,以帧为数据单位进行传输、进行物理寻址,在帧头中增加发送端和接受端的物理地址标识数据帧、流量控制,避免淹没接收端、差错控制访问(接入)控制,在任一给定时刻决定哪个设备拥有链路(物理介质)控制使用权。

数据链路层

网络层

网络层负责源主机到目的主机数据分组交付,经常需要穿越多个网络,所以需要逻辑寻址。通过对全局唯一的逻辑地址进行逻辑寻址,确保数据分组被送达目的主机,如IP地址。除此之外,还要实现路由功能,路由器(或网关)互联网络,并路由分组至最终目的主机;完成分组转发

传输层

是第一个属于端到端层次,负责源-目的(端-端)的进程间的完整报文传输。传输层功能有报文的分段与重组、SAP寻址(确保将完整报文提交给正确进程,相当于端口号)、连接控制、端到端的流量控制、差错控制

会话层

主要进行会话管理,对 对话控制 的建立和维护,负责对话的同步,在数据流中插入“同步点”,功能较少,是最“薄”的一层。

表示层

处理端到端的两个系统间交换信息的语法与语义问题,具体是数据表示转化,数据表示转换为主机独立的编码。对应用层数据加密/解密、压缩/解压缩。

应用层

网络层给用户提供了使用网络的接口,网络应用通过应用层协议处理用户信息,支持用户通过用户代理(如浏览器)或网络接口使用网络(服务),典型应用层服务:文件传输(FTP)、电子邮件(AMTP)、Web(HTTP)。

TCP/IP参考模型

OSI七层模型是理论型的,而 TCP/IP 参考模型直接面向市场需求,实现起来也比较容易,因此在一经提出便得到了广泛的应用。此模型是由4层组成。网络接口层作为具体底层网络,负责封装网际层的IP分组,没什么具体协议。向上的层都基于TCP/IP的一系列协议。(Everything over IP)。

TCP/IP参考模型

5层参考模型

综合OSI和TCP/IP的优点,有了5层参考模型。5层参考模型是把TCP/IP参考模型的网络接层“打开”了~从功能上更清晰了~

五层协议的体系结构只是为介绍网络原理而设计的,实际应用还是 TCP/IP 四层体系结构。

Tagged

发表评论

邮箱地址不会被公开。 必填项已用*标注