计算机网络概叙

基本概念

1.定义:一些互连的、独立自治的计算机集合;

2.目的:资源共享、数据通信、负载均衡和分布式计算、数据信息集中处理;

3.一般分类:

  • 按通信媒体:有线网络、无线网络;
  • 按使用对象:公众网络、专用网络、接入网;
  • 网络传输技术:广播式网络、点到点网络;
  • 按地理覆盖(常用):
    • 局域网:几十米到几千米之间;
    • 城域网:几千米到几十千米;
    • 广域网 :几十千米到几千千米,例如Internet;

网络拓扑结构

1.常见的拓扑结构:

  • 总线型拓扑结构:结构简单、易于阔充、属于广播网络;
  • 星型拓扑结构:结构简单、易于实现和管理、但是耗费电缆、中心出问题会带动其他地方;
  • 树形拓扑结构:易于分级管理和控制;
  • 环形拓扑结构:结构简单、易于实现、传输时延确定和路径选择简单;
  • 网状拓扑结构:充分利用网络资源,但是成本高;

计算机网络性能指标

1.比特的概念:比特(bit)意思是一个二进制数字(0或1)。 B为字节(Byte),b为比特(bit),一字节为8比特,即1B = 8b。 网络技术中的数率指的是数据的传送速率,当数据率较高时,常常在bit/s前面加上字母,比如k = $10^3$,M = $10^6$,G = $10^9$,T = $10^{12}$等。 (注意区分网络传输和文件系统中的数据后缀字母,文件系统一般是字节。比如一个100MB的文件,这里的M就是$2^{20}$,传输率为100Mbit/s,这里的M为$10^6$)

2.数据传输率:又叫比特率,指连接在网络上的主机在数字信道上传送数据的速率。 速率的单位是 b/s,或kb/s, Mb/s, Gb/s 等;

3.信道容量:信道容量即是指最大的数据传输速率,通常说数字通信系统所说的带宽与数据传输速率相等,注意这个数据传输速率是实际的传输速率,实际与最大的数据传输速率二者之间满足香农公式,具体如下俩种情况

  • 在有噪声的情况下即信道不是理想信道,信道容量是信道能够达到的最大数据速率,此时数字信道的带宽W与信道容量C满足香农公式C=W${Log}_{2}$(1+S/N) ;
  • 理想信道时,根据奈奎斯特定理,C=最大的数据传输速率=2W;

4.带宽:分以下俩种情况

  • 对于模拟通信或传输介质,带宽指信号具有的频带宽度,单位是赫(或千赫、兆赫、吉赫等);
  • 而数字通信系统中“带宽”,理论上是指传输信道的信道容量,也即信道中传递信息的最大值,单位为“比特/秒”。由于数字系统中的信道多指逻辑信道,而信道容量又是理论上的最大值(不可能达到),所以平时我们使用的“带宽”一词,是指信道中数据的实际传输速率;

5.误码率:误码指信号传输过程中受干扰的和衰减的数据传输错误,是衡量传输可靠性的主要观测点,误码率${P}_{e}$=接受的错位数 除以 传输总数;

6.时延:

  • 发送时延:发送数据时,数据帧从结点进入到传输媒体所需要的时间。 $\mathrm{发送时延};=;\frac{\mathrm{数据帧长度}(b)}{\mathrm{发送速率}(b/s)}$
  • 传播时延:电磁波在信道中需要传播一定的距离而花费的时间。 $\mathrm{传播时延};=;\frac{\mathrm{信道长度}(米)}{\mathrm{信号在信道上的传输速率}(b/s)}$
  • 处理时延:交换结点为存储转发而进行一些必要的处理所花费的时间;
  • 排队时延:结点缓存队列中分组排队所经历的时延.
  • 总时延:总时延 = 发送时延+传播时延+处理时延+处理时延

7.利用率:信道利用率指出某信道有百分之几的时间是被利用的。 网络利用率则是全网络的信道利用率的加权平均值. $D;=;\frac{D_0}{1;-;U}$ $D_0$为网络空闲时的时延,$D$为当前时延,U为利用率。

计算机网络的体系结构

ISO/OSI七层模型

1.专业术语

  • 实体和对等实体:每一层中,用于实现该层功能的活动元素被称为实体,不同机器同一层、完成相同功能的实体称为对等实体;
  • 协议:对等实体之间交换数据的约定;
  • 服务和接口:下层为上层提供的功能叫服务,通过上下层之间的接口实现;

2.OSI理想模型层级(由上到下):

  • 应用层(APDU):负责为用户程序提供网络服务;
  • 表示层(PPDU):表示层以下关心可靠的数据传输,而表示层关心传输数据的语法和语义;
  • 会话层(SPDU):在俩个节点之间建立、维护和释放用户连接;
  • 传输层(分段):该层负责两台主机中进程之间的通信,而传输层上三层主要面向用户提供服务,下三层面向网络通信;
  • 网络层(分组):端到端的主机通信;
  • 数据链路层(帧):解决相邻节点的数据传输等问题;
  • 物理层(比特流):直接面向原始比特流的传输;

TCP/IP模型

1.TCP\IP模型层级(从上到下):应用层、传输层、网络层、网络访问层;

2.OSI模型和TCP/IP模型比较:

  • 相同点:
    • 均采用层次结构,并具有可比的运输层和网络层;
    • 都基于协议数据单元的包交换网络,且分别作为概念模型和事实标准;
  • 不同点:
    • OSI七层,TCP四层,TCP应用层中包含了OSI上三层的功能,网络访问层包含了下俩层的功能;
    • OSI对分层很好的说明服务、协议、接口的概念,是最重要的计算机网络概念模型,但是每层都存在寻址、流量控制、差错控制等机制,所以比较复杂,缺乏实现上的操作性;
    • TCP/IP层次较少,显得更加简洁,容易实现,但是服务、协议、接口区分并不是很清晰。

OSI模型和TCP/IP模型比较

五层结构(OSI和TCP/IP折中方案)

1.五层结构(从上到下):

  • 应用层:是体系中的最高层,任务是通过应用进程间的交互来完成特定网络应用,把应用层交互的数据单元称为报文。
  • 运输层:负责两台主机中进程之间的通信提供通用的数据传输服务。主要用到以下两种协议;
    • TCP:传输控制协议(Transmission Control Protocol),提供面向连接,可靠地数据传输服务,其数据传输的单位是报文段。
    • UDP:用户数据报协议(User Datagram Protocol),提供无连接的,尽最大努力的数据传输服务,是不可靠的。其数据传输的单位是用户数据报。
  • 网络层:负责为分组交换网上的不同主机提供通信服务。在发送数据时,网络层把运输层产生的报文段或者用户数据报封装成分组或包进行传送。在TCP/IP体系中使用IP协议,因此分组也叫做IP数据报。
  • 数据链路层:两台主机之间的数据传输,总是在一段一段的链路上进行传送的,需要使用专门的链路层协议,在两个相邻结点之间传送数据时,数据链路层将网络层交下来的IP数据报组装成帧,在两个相邻结点之间的链路上传送帧。每一帧包括数据和必要的控制信息(同步信息,地址信息,差错控制等)。 在接收数据时,控制信息使接收端能够知道一个帧从哪个比特开始和到哪个比特结束。这样数据链路层在接收到一个帧后,就可以从中提取出数据部分,上交给网络层。
  • 物理层:物理层上所传数据的单位是比特。传递信息所用的载体(比如双绞线,光缆等)不属于物理层,是物理层下面一层。

分组交换技术☆

1.介绍:提高信道利用率,提高抗毁性 端到端数据流被划分为若干数据块,添加首部形成若干分组,分组首部中携带地址、长度等控制信息 主机的用途是为用户进行信息处理的,并且可以和其他主机通过网络交换信息。 路由器的用途则是用来转发分组的,即进行分组交换的,分组交换也称包交换,它是将用户传送的数据划分成一定的长度,每个部分叫做一个分组。在每个分组的前面加上一个分组头,用以指明该分组发往何地址,然后由交换机根据每个分组的地址标志,将他们转发至目的地,这一过程称为分组交换。进行分组交换的通信网称为分组交换网。从交换技术的发展历史看,数据交换经历了电路交换、报文交换、分组交换和综合业务数字交换的发展过程。分组交换实质上是在“存储—转发”基础上发展起来的。它兼有电路交换和报文交换的优点。分组交换在线路上采用动态复用技术传送按一定长度分割为许多小段的数据—分组。每个分组标识后,在一条物理线路上采用动态复用的技术,同时传送多个数据分组。把来自用户发端的数据暂存在交换机的存储器内,接着在网内转发。到达接收端,再去掉分组头将各数据字段按顺序重新装配成完整的报文。分组交换比电路交换的电路利用率高,比报文交换的传输时延小,交互性好,如下图所示;

分组交换技术

2.存储转发:路由器在输入链路上接收整个分组 存储接收的分组 然后选择输出链路,并以最大传输速率向输出链路转发;

3.优点:

  • 高效:动态分配传输带宽,对通信链路是逐段占用;
  • 灵活:以分组为传送单位和查找路由;
  • 迅速:不必先建立连接就能向其他主机发送分组;
  • 可靠:保证可靠性的网络协议;分布式的路由选择协议使网络有很好的生存性;

物理层

物理层概述

1.说明:物理层考虑的是怎样才能在连接各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。

2.物理层主要问题:

  • 信号和信道类型选择
  • 传输媒体选择
  • 提高传输媒体的利用率
  • 关于衰减和噪音影响的处理
  • 通信方式的选择
  • 物理互通的实现

3.物理层传输质量的评估:通过数据传输速率和误码率作为评估主要标准;

基带传输和数字数据编码

1.基本概念:二进制数字数据利用脉冲信号(数字信号和信道)来进行传输和编码,数字信号是离散的电压或电流脉冲序列,常用方法是使用脉冲信号来表示二进制数字字符“0”和“1”;

2.数字信号编码方式:如下

  • 不归零制:正电平代表1,负电平代表0;
  • 归零制:正脉冲代表1,负脉冲代表0;
  • 曼彻斯特编码:位周期中心的向上跳代表0,位周期中心的向下跳代表1,也可以反过来定义;
  • 差分曼彻斯特编码:在每一位的中心处始终都有跳变,位开始边界有跳变代表0,而位开始边界没有跳变代表1;
    数字信号编码方式

频带传输和调制解调

1.频带传输基本概念:基带传输受到距离限制,所以远距离一般采用模拟通信;

2.调制解调方法:如下三种

  • 幅度调制
  • 频率调制
  • 相位调制

传输媒体

1.分类:如下几种

  • 有线传输媒体:
    • 双绞线:最古老又最常用、价格便宜,但是对电磁干扰敏感,主要用于室内;
    • 同轴电缆:新标准已经不再推荐;
    • 光纤:传输带宽大,传输损耗小,中继距离长,抗干扰能力强(雷电和电磁干扰),保密性好(不易被窃听)体积小,重量轻。精确对接困难。
  • 无线传输媒体:
    • 无线电波:通过空间电磁传播、无需安装物理线路,频率范围再30kHz到30000MHz之间,波长10km~0.1mm;
    • 微波(卫星): 带宽高,容量大,不受环境影响,且不需实现铺好电缆,但是需要相关部门许可;
    • 红外线:通过空间电磁传播、不受电磁干扰和射频干扰,但是必须再直线视距之间,且数据传输速率相对较低;
    • 激光通信:短距离传输,但是受天气影响大;

无线传输媒体

2.传输媒体的比较和选用:如下图
传输媒体的比较

多路复用技术

1.基本概念:指在一条物理线路上建立多条通信信道;

2.分类:

  • 频分复用(FDM):将线路带宽划分成若干较小带宽来达到多路复用目的,用户在分配在一定频宽后,在通信过程中自始至终都占用这个频带。频分复用的所有用户在同样的时间占用不同的带宽资源。
  • 时分复用(TDM):将时间划分为一段段等长的时分复用帧,每一个时分复用的用户在每一个TDM帧中占领固定序号的时隙,时分复用的所有用户是在不同的时间占用同样的频带宽度,时分复用分为同步(STDM)和异步(ATDM)技术。
  • 波分复用(WDM):采用光波波长的分隔的多路复用方法;
  • 码分复用(CDM):是一种移动通信系统的复用技术,基于码型分割信道,每个用户可以在同样时间使用同样频带进行通信,具有很强的抗干扰性。

通信方式

1.串行通信和并行通信:

  • 串行通信:指发送端所发送和的数据,按照数据位的先后顺序,依次通过信源和信宿之间的单条信道到达接收端;
  • 并行通信:发送端和接受端之间多条并行信道实现一个节拍下多个数据位的并行传送;

2.全双工通信和半双工通信

  • 单工通信:能有一个方向的通信而没有反方向的交互(广播和电视节目);
  • 半双工通信:通信的双方都可以发送信息,但不能双方同时发送和同时接收(对讲机);
  • 全双工通信:通信的双方可以同时发送和接收信息(手机);

常见物理层组件和设备

1.常见的物理组件设备:指物理层提供的无源器件,如下所示

  • 端接器件:为网络线缆连接提供良好的端接,不同线缆对应的连接头不能通用;
  • 转换器:用于不同接口或媒体之间进行信号转换;

2.常见的物理组件:用于增强网络覆盖和传输距离的网络互联网设施

  • 中继器:对物理信号进行放大再生,单进单出,网络规模增加时,需要多个中继器;
  • 集线器:拥有多个接端口,但是只能提供一路的信号放大、整形和转发,否则会出问题;

数据链路层

数据链路层概念

1.基本概念:

  • 使用一对一的点对点通信方式;
  • 数据链路=物理链路+数据链路协议;
  • 数据链路层是为了克服物理层的不足而建立的,旨在实现网络俩个相邻节点之间的无差错传输和信息的定界;

2.待解决的问题:

  • 物理寻址:
  • 数据链路的建立、维持和释放;
  • 数据流的定界;
  • 差错控制;
  • 流量控制;
  • 帧的构造、同步和区分;

主要问题

帧与成帧

1.帧的概念:帧是数据链路层的协议数据单元,有了帧,数据就有了意义,不再是物理层的原始比特流;

2.帧的构成:在数据的前后添加上帧首和帧尾构成一个帧;

3.帧的定界:就是区分帧开始和帧结束的方法,主要如下三种

  • 字符计数法:使用一个字符计数字段来标明帧内字符数;
  • 带字符填充的首尾界符法:帧头帧尾前面加上一个ASCII的字符标志,此法会有大量的冗余DLE标记字符;
  • 带位填充的首位标志法:与上类似,但是采用特殊的二进制位数来进行标志;

4.零比特填充:在发送端,只要发现有5个连续1,则立即填入一个0;而接受端对帧中比特流进行扫描时,每当发现5个连续1,就把这5个连续1后的一个0删除;

差错控制

1.差错原因:在传输过程中可能出现误差,1可能变成0,而0可能变成1;

2.误码率:传输错误的比特占所传输比特总数的比率称为误码率(BER);误码率和信噪比有很大关系;

3.差错控制机制:计算机网络传输数据时,必须采用如校验码的技术,校验码根据校验能力不同分为纠错码和检错码,如下所说

  • 纠错码:纠错码不仅可以发现所悟,还能进行自动纠正错误,例如汉明码这种典型的纠错码(在计算机组成中有说明)
  • 检错码:而检错码只能发现传输中的错误,常见的如奇偶校验码(在计算机组成中有说明)和循环冗余校验码,目前,数据链路层广泛采用循环冗余检验码;

4.CRC循环冗余检验:以下运算皆使用二进制的模2运算 CRC冗余码的生成:先进行$2^n$乘M(待发送的数码),相当于在M后面加n个零,M(k位)是原本的数码,然后除以除数P(n+1位)(一般用多项式表示,比如P为1101,用多项式表示就是P(x) = $x^3+x^2+1$,就是对应位),得到的余数(n位)就是冗余码,把它拼接到尾部即可。 CRC冗余码的检验:将收到的数码(k+n位)除以事先商定好的除数P(n+1位),得出的余数为R(n位),如果R为0说明没有差错。

5.反馈重发机制:由于检错码本身不提供自动错误纠错的能力,所以需要一种错误纠正的机制:

  • 停止-等待方式:发出一帧后停下来判断对方是否正确收到,否则,就重发该帧,该模式性能较差;
  • 连续自动请求重发方式:发送帧后,不进行等待,而是连续发送,出现传输差错采取以下措施:
    • 拉回方式:某帧出现问题后,接收方丢弃该帧后所有帧,发送端重发该帧后所有帧;
    • 选择性重传方式:接收方只丢弃该帧,缓存该帧后所有帧,发送端只重发该帧,该方式需要足够的存储缓冲;

      流量控制

1.流量控制的作用:发送端和接受端接收数据速率不匹配造成的弱端丢帧问题;

2.滑动窗口协议:一种采用滑动窗口机制进行流量控制的方式,通过限制已经发送但还未得到确认的帧数量,滑动窗口协议可以调整发送端的发送速率,由帧序列号、发送窗口和接受窗口组成;

数据链路成协议

1.点对点协议PPP:全世界采用最多的数据链路层协议是点对点协议PPP(Point-to-Point Protocol),用户使用拨号电话接入因特网时,一般采用的就是PPP协议;

数据链路层的设备和组件

1.网卡:全称网络适配器,主要实现数据的发送和接受、帧的封装和拆封、编码和解码、数据缓存和媒体访问控制;每一个网卡在出厂时都被分配一个全球唯一的地址标识(MAC地址);

2.网桥:实际中已经不再使用,了解即可;

3.交换机:由网桥发展而来,是一种多功能网桥;

网络层

网络层的概述

1.网络层说明:数据链路层只解决了相邻之间节点的数据传输问题,而大多数源节点和目标节点并不是相邻节点,网络层由此而生,以下是主要的问题;

  • 节点之间的最佳路径选择问题(又被称为路由);
  • 路径选择时的超负载和空闲协调;
  • 异构网络的互联问题(异构指网络技术、通信协议、计算机体系和操作系统存在差异);
  • 跨越互联网的主机寻址问题;

2.网络层提供的服务:网络层向上提供简单灵活、无连接的、尽最大努力的数据报服务;

3.IP协议说明:IP协议是TCP/IP网络层的核心协议,也是整个TCP/IP模型中最重要的核心协议之一,规定该层的协议数据单元的类型和格式(分组packet)

IP地址

1.IPv4地址结构和分类:

  • 结构:IP地址目前住主要分为IPv4和IPv6,同时移动端也有特殊的“mobile”的协议;IPv4采用32位长度的二进制地址,但为了书写和记忆,又采用了点分十进制来进行记忆,
  • 分类:被分为A、B、C、D和E五类,其中ABC是普通的主机地址,而D是网路组播服务或者网路测试使用的,E类地址保留给实验和未来扩充使用;

IPv4地址的分类:
分类的IPv4地址

IPv4的指派范围:
IPv4的指派范围

一般不使用的特殊IP:
一般不使用的特殊IP

2.IP地址逻辑地址和物理地址:物理地址是数据链路层和物理层使用的地址,IP地址是网络层和以上各层使用的地址,是一种逻辑地址(因为IP地址是用软件实现的)。 在发送数据时,数据从高层下到低层,然后才能到通信链路上传输。使用IP地址的IP数据报一旦交给了数据链路层,就被封装成MAC帧了。MAC帧在传送时使用的源地址和目的地址都是硬件地址,这两个硬件地址都写在了MAC帧首部。 IP地址放在IP数据报首部,硬件地址规则放在MAC帧的首部,在网络层以上使用的都是IP地址,在数据链路层及以下使用的都是硬件地址,以MAC地址是不变的,而IP地址可能会随着网络的迁移而变化;

3.地址解析协议ARP:不管网络层使用的是什么协议,在实际网络的链路上传送数据帧时,最终还是必须使用硬件地址。通过地址解析协议ARP即可知道IP地址对应的MAC值。

地址解析协议ARP

4.

运输层

应用层

知名端口