计算机网络合集(除应用层之外)


目录

第一章 绪论

1.1 计算机网络概述

什么是计算机网络

计算机网络就是将分布在不同地理位置上,具有独立工作能力的计算机、终端设备及其附属设备通信设备和通信线路连接起来,并配置网络网线和通信协议以实现数据的传输和资源共享的系统就叫做计算机网络。

计算机网络的分类
  • 按照传输介质,我们把计算机网络分为有线网和无线网
  • 按照经营方式,分为公用网络和专用网络,比如互联网和某银行的内部网络系统
  • 按照服务类型,分为电信网,有线电视网络和计算机网络
  • 按照网络地域规模,分为个域网,局域网,城域网,广域网
  • 按照拓扑结构,分为总线型网络,星型网络,环形网络,树型网络和网状网络
  • 按照资源管理,分为对等网络(QQ)和客户服务器网络(电子邮件系统)
计算机网络标准

所有的互联网设备都遵守RFC才能进行网络的互通,所以RFC是不自称的实际标准

计算机网络的发展
  • 第一阶段:从单个ARPANET向互联网发展(互联网的前身是ARPANET)
  • 第二阶段:为了解决互联网上数据流急剧增长后如何进行更快速的分组转发,更加有效地利用网络资源,互联网交换点IXP应运而生(允许两个网络直接相连并交换分组数据,不需要第三个网络充当中转站)
  • 第三阶段:2007年美国苹果公司推出iphone手机,2008年谷歌公司推出安卓手机系统,由此互联网发展进入移动互联阶段

1.2 计算机网络的性能和体系结构

计算机网络性能
比特率

是主机在数字信道上传输数据的速率,单位是bit/s

带宽

是指网络中某通道传输数据的能力,单位时间内网络中某信道所能通过的最高数据率,单位是bit/s

时延

指数据从网络中的一端到网络中的另一端所需要的时间

  • 传输时延:是数据从节点传输到传输媒体所需要的时间,所以传输时延又称为发送时延
  • 传播时延:是电磁波在信道中需要传播一定距离而花费的时间
  • 处理时延:是指主机或路由器在收到分组为处理分组(如解析部首,提取数据,差错检验或查找路由)所花费的时间
  • 排队时延:分组在路由器输入输出队列中排队等待处理所经历的时间
  • 往返时延(RTT):是指从发送方发送数据开始到发送方接到来自接收方的确认经历的总时间 ,可以利用这个指标来判断网络的通断性,测试网络时延,计算数据包丢失率等
时延带宽积

是传播时延和带宽的乘积,若发送端连续发送数据,则当发送的第一个比特即将到达终点时,发送端就已经发送了时延带宽积个比特

信道利用率

指出某信道有百分之几的时间是被利用的

网络利用率

是全网络信道利用率的加权平均值

网络的利用率越大,网络所产生的时延也越大

计算机体系结构

是网络层次结构模型与各层协议的集合 。

网络体系只是对计算机网络应该实现的功能进行精确的定义,而这些功能应该用什么样的软件和硬件去完成只是实现问题

层次:是网络层次结构中的基本组成部分

实体:是每层中实现该层功能的软件或硬件,也实现与另一个系统中同等实体通信的协议

同等实体:互相通信的一对节点在同一层中相应的实体

协议:计算机网络为进行数据交换需要建立的规则、标准和约定

  • 在某一具体的层次中指导实体之间通信的规则
  • 在n层中为实现n层的服务实体应如何与另一层中的同等实体继续信息的交换
  • 定义了所交换信息的格式
  • 语义规则:定义了发送者和接收者必须完成的操作

SAP:即Service Access Point,是上层访问下层所提供服务的点。在计算机体系结构中,下层是为相邻上层提供服务的,而下层对它的所有上层都是透明的。

在这里插入图片描述

如果进程A要与进程B进行联系,进程A首先通过主机A的操作系统调用实现应用层的软件应用模块,应用层模块将主机A的数据传输到表示层,表示层再向会话层传输直至物理层,物理层通过连接主机A和路由器A的传输介质,将表示数据的比特序列传输到路由器A的物理层,物理层接收到主机A的数据后交由链路层检查数据是否传输错误,如果没有错误路由器A则将数据传送给网络层,通过下一步判断要将数据传送给哪一个路由器,如果传送的是路由器B,那么路由器B通过同样的方法将数据传送回主机B,主机B将数据从物理层依次向上传输到应用层,再从应用层传送到进程B,这样就通过计算机网络完成了一次数据交换。

物理层

产生并监测电压中带有数据的电气信号或者对应的光学、电磁信号,物理层传递电气信号的载体被称为位流或比特流

数据链路层

在这里插入图片描述

位于OSI模型的第二层,主要作用是把网络层接收到的数据分割成物理层可以传输的帧,直接控制着网络层和物理层的通信

网络层

位于OSI模型的第三层,主要负责将分组从原端传递到目的端,这可能要跨越多个网络

传输层

负责将报文准确、可靠、顺序地进行原端到数据端的传输

会话层

在网络中不同用户之间建立和维护通信信道,重复两个节点之间的会话,决定通信是否被中断以及中断时从何处重新发送

表示层

为开放系统的两个数据之间提供格式变换服务,使应用层理解所交换数据的意义

应用层

直接面对用户进程,主要功能是为应用系统提供能访问OSI系统的接口和服务

目前我们实际采用的计算机网络系统是TCP/IP协议

TCP/IP协议
  • 开放的协议标准
  • 独立于特定的计算机硬件和操作系统
  • 独立于特定的网络系统,可以运行在局域网、广域网,适用于网络互连
  • 所有运行TCP/IP协议的设备都具有唯一的网络地址
  • 标准的应用层协议可以提供多种网络服务

在这里插入图片描述

我们所学的是5层模型

在这里插入图片描述

第二章 物理层和数据通信基础

2.1 数据通信基础知识

物理层基本概念

物理层并不是连接计算机的具体物理设备,也不是负责信号传输的具体物理媒体

数据链路层将数据比特流传送给物理层,物理层将比特流按照传输媒体的需要进行编码,信号通过传输媒体传输到下一个节点的物理层,为数据链路层提供一个统一的数据传输服务。

物理层的主要任务就是确定与传输媒体的接口的一些特性

  • 机械特性(物理特性):指明接口所用接线器的形状和尺寸、引脚数目和排列、固定和锁定装置等。

  • 电气特性:指明在接口电缆的各条线上出现的电压的范围

  • 功能特性:指明某条线上出现的某一电平的电压的意义

    用来定义接线器每一引脚的作用,可以理解为物理设备每一个装置的作用是什么

  • 过程特性:知名对于不同功能的各种可能时间的出现顺序

什么是数据通信

数据通信是指由源点产生的数据流按照一定的通信协议在信道中传送到终点的过程,数据通信以数据传输为基础,包括数据传输和数据交换以及传输前后的数据处理

在这里插入图片描述

源系统:

  • 源点:源系统中的源点是生成数据的设备,如计算机输出的数字比特流,源点生成的数据要通过发送器编码后才能在传输系统中进行传输。
  • 发送器:典型的发送器是调制器,它将计算机输出的数字比特流转化成可在电话线上传输的模拟信号。
  • 传输系统:指传输线或网络系统

目的系统:

  • 接收器:用来接收来自传输系统的信号,并将其转化成终点可处理的信息,典型的接收器是解调器,它把来自传输线上的模拟信号进行解调,还原出发送端发送的数字比特流
  • 终点:获取来自接收器数据的设备
一些概念
  • 数据:是消息的一种表示形式,是传达某种意义或信息的实体。通信系统中,数据有数字数据和模拟数据
  • 信号:是消息的载体,比如电信号、光信号等等。在通信系统中,消息是通过电信号来传递的,通信系统中的电信号分为数字信号和模拟信号
  • 模拟信号:物理量的变化在时间上和幅度上都是连续的,把表示模拟量的信号称为模拟信号,声音、温度、速度等都是模拟信号
  • 数字信号:物理量的变化在时间上和数值(幅度)上都是不连续(或称为离散)的,把表示数字量的信号称为数字信号

无论是模拟数据还是数字数据,都可以编码成模拟信号或者数字信号,我们选择何种编码方式取决于可能提供的传输媒体和通信设施

  • 码元:当用某时域的波形表示数字信号时,所代表的不同离散数值的基本波形称之为码元。码元所携带的信息量是不固定的,由调制方式和编码方式来决定。n进制,就有n种码元,1个码元携带log2(n)位二进制数,一个码元就是一个脉冲信号
数据传输方式
  • 按照传输数据的时空顺序

    并行传输:数据在同个信道上同时传输的方式,适用于要求速率高的短距离数据传输,计算机内部便采用此种方式。

    串行传输:数据在信道上按位次传输的方式,适用于远距离数据传输

  • 按照收、发端实现同步的方式

    异步传输:被传输的每一个字符一般都附加有一个起始位和一个停止位,异步传输的发送器和接收器的时钟不是同步的

    同步传输:按位进行传送,数据块以帧作为整体传输,每一帧建立同步标志,建立帧同步,通步传输的发送器和接收器的时钟是同步的

  • 按照传输过程中是否搬移频谱

    基带传输:不搬移基带信号频谱的传输方式,最简单最基本的传输方式,低电平表示0,高电平表示1

    频带传输:利用调制解调器搬移信号频谱的传输方式,搬移频谱的目的是为了适应信道的频率特性

数字信号常用的编码方式

在这里插入图片描述

  • 不归零制编码:高电平表示1,低电平表示0,容易产生传播错误
  • 归零制编码:每一跳都有变化,上升位1,下降位0
  • 曼彻斯特编码:每一位中间都有一跳变化,从低跳到高表示0,从高跳到低表示1,这种编码方式每位中间的跳变既可表示数据,又可作为时钟,能够自同步
  • 差分曼彻斯特编码:每一位中间都有一跳变化,每一位开始时有跳变表示0,无跳变表示1,位前跳变表示数据,位中跳变表示时钟,这种编码方式即可做到数据分离又便于提取
限制码元在信道上的传输速率的原因
  1. 信道能够通过的频率范围

    信号中有很多高频分量往往不能够通过信道

    奈氏准则:是1924年奈奎斯特推导出的准则,是指在假定的理想条件下,为了避免码间串扰,码元的传输速率的上限值。

    公式: C=2WlogM (W是带宽,M是码元数,C是速率)

  2. 信噪比

    实质: 正常声音信号与信号噪声信号比值

    公式:(dB)= 10 * log10(S/N) (dB)

    香农公式C=W log2(1+S/N)

    是香农(Shannon)提出并严格证明的“在被高斯白噪声干扰的信道中,计算最大信息传送速率C公式。W是信道带宽(赫兹),S是信道内所传信号的平均功率(瓦),N是信道内部的高斯噪声功率(瓦)。

    当规定的信道容量超过香农公式的信道速率时,误码率大大提高。

奈氏准则和香农公式的区别

奈氏准则指出,码元传输速率是受限的,针对的是波特率,且是在理想状态下提出的;香农定理则给出了信息传输速率的极限,是针对比特率的,且是带宽受限且有高斯白噪声干扰的信道极限 。也就是说,奈氏准则认为码元编码足够好,就不会限制信息传输速率,而香农定理认为信息传输速率是有极限的。

2.2 常见网络传输介质

传输介质是指发送器和接收器之间的物理通路,可以分为两大类

  • 导引型传输介质:电磁波被导向沿着某一媒体传播,包括双绞线、同轴电缆、电力线和光纤等
  • 非导引型传输介质:电磁波在大气层外层空间或海洋中进行的无线传播,包括短波,地面微波,卫星微波以及光波传输等
导引型传输介质
双绞线

双绞线是目前以太网中使用频率较高的一种传输介质,它是将具有绝缘保护层的两根铜导线按一定密度绞缠在一起形成的线。多根这样的线再绞合成电缆状,绞合密度,纽绞方向和绝缘材料等就成为了影响双绞线特性阻抗的因素。

双绞线适用于模拟传输或数据传输,传输距离一般为几到几十公里。

  • UTP:非屏蔽双绞线,家庭中使用频率最高的线材,主要用于传输带宽在250HZ以下,没有特殊性能要求的普通网络系统
  • FTP:用铝箔屏蔽的双绞线,这种线缆支持带宽能力强并且具备一定的抗干扰能力,能够减小信号衰减,此外最明显的特性是采用可回收的低烟材料,环保型强
  • STP:是指独立屏蔽双绞线。该双绞线外有一层铝箔层,并且每对线都有单独铝箔屏蔽层,能够减小信号衰减,每4对线合并后外部还包裹着一层金属编织网屏蔽,STP网线主要适用于高速网络或者高保密要求的场所传输
  • SFTP:双屏蔽双绞线,在STP铝箔层的基础上增设了编织网,通常采用铝镁丝或镀锌铜材料,外层采用PVC材料,相对STP有两层屏蔽层,以及屏蔽层之间多了绝缘隔离结构,屏蔽环境磁场,抗干扰能力更强,内部信号衰减程度更低,适用于特殊环境的专业工程布线中

双绞线的接口线序标准包括568A和568B两种。

无论使用哪种类别的双绞线,衰减都随频率的升高而增大。使用更粗的导线可以减少衰减,却增加了导线的重量和价格。

同轴电缆

在这里插入图片描述

有寿命长、容量大、传输稳定、外界干扰小和维护方便等优点,按内外导体尺寸不同分为中小微三种规格,按特性抗阻的不同分为50欧姆的基带同轴电缆和75欧姆的宽带同轴电缆,基带同轴用来传送基带信号,距离可达1000米,传输速率为10Mbps,宽带同轴是有线电视的标准传输电缆,传送频分复用的宽带信号,信号频率可高达300-400MHZ,距离可达100km。

局域网发展初期广泛应用基带同轴,现在宽带同轴只要用于有线电视网

光纤

在这里插入图片描述

是一种新型的光波导,实际应用中有三种光纤

  • 单模光纤

    光线的直径减小到只有几个光波长的量级,可以使光线一直向前传播,不会产生多次反射,带宽极宽,适用于大容量远距离传输

  • 多模光纤

    可以存在多条不同角度入射的光线在一条光纤中传输,适合近距离传输

光纤的优点:

  • 通信容量大
  • 传输损耗小,中继距离长
  • 抗雷电和电磁干扰性能好
  • 无串音干扰,保密性好
  • 体积小,重量轻
非导引型传输介质
  1. 微波中继站

    多路复用、射频工作和中继接力是地面微波传输的三个基本的特点,远距离传输则采用中继方式。两中继站之间的距离一般在40-60km

  2. 短波传输(无线电波)

    短波可沿地球表面以地波形式传播数百千米

  3. 卫星通信

    卫星通信采用微波波段,俗称卫星微波,利用人造地球卫星作为中继站来转发电磁波,从而实现两个或多个地球站之间的通信,分为同步卫星通信和移动卫星通信。

2.3 信道的复用技术

复用:把一个物理信道按一定机制划分为互不相干扰影响的逻辑信道,每个逻辑信道各自为一个通信过程服务,每个逻辑信道均占用物理信道的通信容量

在这里插入图片描述

(a)采用单独信道,利用率比较低,(b)采用共享信道的方式,在信道入口处A1,B1,C1按照一定的策略把业务复用到同一条信道上,到了信道的出口进行解复用,分发给A1,B1和C1

频分复用

在这里插入图片描述

整个带宽被分成了n个频带,可以分配给不同的用户,这些用户可以同时进行通信。

频分复用在无线通信中有着广泛的应用,如上图所示,可以在一个信道中传送三种信号。

在同样的时间,占用不同的带宽资源

这里的带宽是频率带宽,而不是数据的发送速率

时分复用

在这里插入图片描述

将时间划分为一段段等长的时分复用帧,我们也称之为TDM帧。每一个时分复用的用户在每一个TDM帧中占用固定序号的时隙,而且每一个用户占用的时隙是周期性地出现,这个周期就是TDM帧的长度。我们把TDM信号也称为等时信号。

不同的时间,占用同样的频带宽度

但是时分复用存在传输时延和利用率不高的问题,所以采用动态时分复用

在这里插入图片描述

波分复用

在这里插入图片描述

就是光的频分复用,是用一根光纤来同时传输的光的多载波信号,光波的分复用一般采用光的复用器和分用器分别置于光纤的两端,实现不同光波的耦合和分离。在发送端通过复用器将不同光波耦合在一起,在传输过程中光信号会不断减弱,需要通过光放大器对光信号进行放大,在接收端通过分用器对光信号进行分离。

码分复用

在这里插入图片描述

是利用码序列相关性实现的多址通信,基本思想是靠不同的地址码来区分的地址,用户使用经过特殊挑选的不同码型,因此彼此不会造成干扰,这种系统发送的信号有很强的抗干扰能力。

码片:在码分多址中,每一个比特时间划分为m个短的间隔,我们把它称为码片

每个站被指派一个唯一的m比特的码片序列,比如发送比特1,则发送自己的m比特的码片序列,如发送比特0,则发送该码片序列的二进制反码,每个站分配的码片序列不仅必须各不相同,而且还必须互相正交(规格化内积为0)

在CDMA中是使用42位的伪随机码,重复的可能性为4.4万亿分之一。

在图中我们可以看到,S站和T站都要发送110三个比特,分别使用自己的码片进行编码后,把信号发送出去,在接收端收到的是S和T发送信号的叠加,接收端是用S站码片对收到信号的各个分量进行规格化内积,对S站发送的信号解码得到110,而对T站解码得到的是噪声信号。

所以如果要计算某站发送为1还是0,计算方法为将接收站信号与该站码片序列进行规格化内积,并乘以码片序列数分之一,得到为1则发出信号为1,得到为-1则发出信号为0,得到为0则没有发送

例题

共有四个站进行码分多址CDMA通信。四个站的码片分别为 A:(-1 -1 -1 +1 +1 -1 +1 +1) B:(-1 -1 +1 -1 +1 +1 +1 -1) C:(-1 +1 -1 +1 +1 +1 -1 -1) D:(-1 +1 -1 -1 -1 -1 +1 -1 ) 现收到这样的码片序列:(-1 +1 -3 +1 -1 -3 +1 +1)问哪个站发送数据了?发送数据的站发送的1还是0?

A:1-1+3+1-1+3+1+1=8

B:1-1-3-1-1-3+1-1=-8

C:1+1+3+1-1-3-1-1=0

D:1+1+3-1+1+3+1-1=8

故A点发送的是1,B点发送的是0,C点没有发送,D点发送的是1.

2.4 宽带接入技术

用户要连接到互联网,必须先连接到某个网络服务商,在互联网初期用户大多是利用电话线,通过调制解调器连接到服务商。为了提高用户的上网速率,近年来已经有多种宽带技术进入到用户的家庭,从宽带接入的媒体来看可以划分为两大类:有线带宽接入和无线带宽接入。

  • 有线带宽接入

    有线网络接入技术包括光纤到户FTPH,以太网同轴电缆,双绞线的DSL以及古老的拨号上网

  • 无线带宽接入

    WIFI、4G、5G以及卫星广域覆盖

接入场景包括家庭接入网、机构(学校、公司等)以及移动接入网络

在这里插入图片描述

  • DSL

    数字用户线DSL中典型的有ADSL,也就是非对称的数字用户线路,它在电话线上产生三个信息通信,一个高速下行通道,用于用户下载信息,一个中速双工通道,一个普通的老式电话服务通道,并且这三个通道可以同时工作。非对称性是指它的上下行速率不对称:24-52Mbps的下行速率以及3.5-16Mbps的上行速率。目前这种方式在我国使用的比较少,我国已广泛升级为FTTH方式,但在国外出于对老旧房屋保护的原因,仍存在DSL和同轴电缆接入。

  • HFC

    混合光纤同轴电缆(HFC)是一种结合光纤与同轴电缆的宽带接入网,是一种以频分复用为基础,综合应用数字传输技术、光纤和同轴电缆技术的智能宽带接入网,是有线电视和电话网结合的产物。从接入用户的角度看,它经过双向改造有线电视网,但从整体上看,它是以同轴电缆网络为最终接入部分的宽带网络系统,这种接入方式在我国并没有大范围的普及。

  • FTTH

    是我国和大多数前进地区采取的接入方式,分为有源光纤网络(AON)和无源光纤网络(PON),现在广泛使用的是PON,iusye’ju不需要配置电源,易于维护。

第三章 数据链路层和局域网技术

3.1 数据链路层功能

在这里插入图片描述

图中可以看出H1到H2所经过的网络是可以多种的,从协议层上来看数据的流动如下面的图,仅从数据链路层帧的流动是水平方向的.

链路:是一条无源的点到点的物理线路段,中间没有任何其他的交换节点。而一条链路只是一条路径的组成部分。

数据链路:除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。

也有人把链路分为物理链路和逻辑链路,物理链路就是上面所说的链路,逻辑链路就是上面所说的数据链路,是物理链路加上一些协议。

数据链路层传送的数据单位是帧

在这里插入图片描述

常常两个对等的数据链路层之间画出一个数字管道,而在这条数字管道之内传送的数据单位是帧。

数据链路层协议:

  1. 封装成帧

    就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧,确定帧的界限。首部和尾部的一个重要作用就是进行帧定界。

在这里插入图片描述

当数据是由可打印的ACSLL码构成的文本文件时,帧定界可以使用特殊的帧定界符。控制字符SOH放在帧的最前面,表示帧的开始,另一个控制字符EOT表示帧的结束。

为了使接收方能够准确区别出一帧的开始和结束,就要实现帧同步,而实现帧同步通常有以下几种方法:

  • 字节计数法

    以一个特殊字符表征一帧的开始(如SOH控制字符),并有一个专门字段来标明一帧的字节数。可以从特殊字符区别帧的开始,并通过专门字段获知该帧的字节数,从而确定帧的终止位置,采用这种帧同步的方法不会引起数据信息与其他控制信息的混淆。

  • 字符填充法

在这里插入图片描述

 使用特定字符鉴定一帧的起始与终止,为了不使信息域中产生与特定字符相同的字符,可在特定字符前填充一个转义字符如ESC加以区别,从而达到数据的透明。由于这种方法的特定字符依赖于所采用的字符编码集,故兼容性较差。
  • 比特填充法

    用一组特定的比特组合标志一帧的起始与终止。具体方法是在帧的传输起始标志和结束标志之间每当出现5个连续的1之后发送器就会插入一个附加的0,一旦有5个1模式出现就会检查第6个比特,若为0该比特将被删除,若为1且第七个比特为0那么这个组合被认为是标志字段,若第六位和七位都为1,则此时处于异常的终止状态。

  • 违法编码法

    曼彻斯特编码和差分曼彻斯特编码属于违法编码法。不需要任何的填充技术便能实现数据的透明,但它只适用于采用冗余编码的特殊编码环境。

  1. 透明传输

在这里插入图片描述

如果数据中某个字节的二进制代码恰好和SOH或者EOT一样,数据链路层就会错误地找到帧的边界。解决透明传输可以采用字节填充

在这里插入图片描述

发送端的数据链路层在数据中出现控制字符SOH或EOT前面插入一个转义字符ESC,接收端的数据链路在将数据送往网络层之前删除插入的转义字符,如果转义字符也出现在数据当中,那么应当在转义字符前面插入一个ESC,当接收端收到连续的两个转义字符时就删除前面的一个。

  1. 差错检测

    在传输过程中可能会产生比特差错,1可能变成0,0也可能变成1,为了保证数据传输的可靠性,在计算机传输数据时必须进行各种差错检测的措施。

    ==差错控制是数据链路层的主要功能之一,但不是数据链路层所持有的功能。==在网络层和传输层也都有差错控制能力,只是差错控制的对象不同。

    数据链路层的差错控制是保证相邻节点之间的传输差错控制在允许的最小范围之内。在数据链路层传输的帧中,广泛使用了循环冗余检验(CRC)

在这里插入图片描述

在发送端先把数据划分为组,假定每个组有k个比特,假设待传输的一组数据M为101001,我们再在M后添加供差错检测用的n位冗余码一起发送,在M后添加n位0,得到K+N位的数,除以事先选定好的n+1位的除数P,得出的商是Q,余数是R,R是n位。将余数R作为冗余码拼接在数据M后面发送出去,也就是一共有k+n位数据。在数据后面添加上的冗余码称作帧检验序列FCS。

循环冗余检验CRC和帧检验序列FCS并不等同

CRC是一种常用的检错方法,而FCS是添加在数据后面的冗余码。

把收到的每一个帧都除以同样的除数P(模2运算),然后检查得到的余数R,若R为0则传输过程无差错,接受帧,若R不为0则丢弃帧。

但这种方法并不能确定是哪一个或者哪几个比特出现了错误。

CRC只能做到无差错接受

模2运算:异或运算,相同为0,不同为1

3.2 点到点信道的数据链路

PPP协议的特点

对于点对点的链路,目前使用最广泛的链路层协议是点对点协议——PPP协议。PPP是1994年正式成为因特网的标准协议,用户使用拨号电话线接入互联网时,用户计算机和RSP进行通信时所使用的数据链路层协议就是PPP协议。

PPP是一个面向连接的协议,它使得第二层链路能与多种物理层连接,它支持同步和异步电路,也能在半双工和全双工模式下工作,它允许任意类型的网络数据通过PPP协议连接发送。

PPP协议是目前最广泛的广域网协议。

  • 能够控制数据链路的建立
  • 能够对IP地址进行分配和使用
  • 能够同时采用多种网络层协议
  • 能够配置和测试数据链路
  • 能够进行错误检测
  • 有协商选项(对网络层地址和压缩等进行协商)

PPP协议由三个部分组成:

(1)一个将IP数据报封装到串行链路的方法。该方法支持异步、同步链路。需要注意PPP帧当中的IP数据报的长度受到MTU的限制。

(2)链路控制协议LCP。它用来限制、配置和测试数据链路层连接。

(3)网络控制协议NCP。用来支持不同的网络层协议。

在这里插入图片描述

PPP协议采用高级数据链路控制协议作为点到点的串行链路上封装数据报的基本方法,采用链路控制协议LCP启动线路测试任选功能的协商后即关闭链接,采用网络控制协议NCP建立和配置不同的网络层协议。PPP协议允许采用多种不同的网络层协议,如IP、IPX协议等,PPP使用NCP对多种协议进行封装。

PPP协议的帧格式

在这里插入图片描述

PPP协议帧首部和尾部分别为4个字段和2个字段。标志字段F为0X7E,地址字段A为0XFF,地址字段实际上并不起作用,控制字段C通常设置为0X03。PPP有一个两字节的协议字段,其数值不同后面的信息字段表示不同。PPP是面向字节的,所有的PPP帧长度都是整数个字节。

  • PPP协议用在同步传输链路时,规定采用硬件来完成比特填充。

    PPP协议采用零比特填充方法,在发送端只要发现信息字段中有5个连续的1就自动填充一个0,接收端每当发现5个连续的1就把后面的一个0删除。

  • PPP协议用在异步传输链路时,使用一种特殊的字节填充法。

    将信息字段中出现的0X7E字节都转变为两字节的序列(0X7D,0X5E),0X7D字节转变为(0X7D,0X5D),如果控制字符中出现数值小于0X20的字符,在该字符前面加入一个0X7D字节,同时改变该字符编码,接收端需要进行逆转换来获取原有的信息。

PPP协议的工作状态

在这里插入图片描述

当用户拨号接入RSP时,路由器的调制解调器对拨号做出确认并建立一条从用户个人电脑到RSP的物理连接,PC机向路由器发送一系列的LCP分组,这些分组及其响应选择一些PPP参数并进行网络层的配置。NCP给新接入的PC机分配一个临时的IP地址,使得PC能成为因特网上的一个有IP地址的主机。通信完毕后,NCP释放网络层连接,收回原来分配出去的IP地址,接着LCP释放数据链路层的连接,最后释放的是物理层的连接。可见,PPP协议已经不是纯粹的数据链路层协议,它还包含了物理层和网络层的内容。

PPP提供了建议、配置、维护和终止点到点连接的方法,从开始发起呼叫到最后通信完成后释放链路,PPP的工作可以分为以下四个阶段:

  • 链路的建立和配置协调

    通信的发起方发送LCP帧来配置和检测数据链路,主要用于协商选择将要采用的PPP参数,包括身份验证等

  • 链路质量检测

    在链路建立、协调之后这一阶段是可以选择的

  • 网络层协议配置协调

    通信的发起方发送NCP帧以选择并配置网络层协议,配置完成后,通信双方可以发送各自的网络层协议数据报

  • 关闭链路

    通信链路将一直保持到LCP或NCP关闭链路或发生一些未卜时间(空闲时间超长、用户干预、链路故障等)

3.3 广播信道的数据链路

局域网的数据链路层

局域网主要特点:网络为一个单位所拥有、有限的地理范围和站点数目。

局域网主要优点:具有广播功能、从一个站点可以很方便地访问全网,局域网的主机可以共享连接在局域网上的硬件和软件资源,便于系统的扩展和逐渐地演变,各设备的位置可以灵活地调整和改变,提高了系统的各种性能。

常见局域网的拓扑结构有星形结构,总线型结构和环形结构。

以太网是一种星形局域网,现在大部分局域网都是以太网。

Ethernet V2是世界上第一个局域网产品的规约,诞生于1982年。

IEEE 802.3是第一个IEEE地以太网标准,诞生于1983年。

因为V2与802.3有很小的差别,所以可以将802.3局域网简称为以太网,严格说来以太网应该是指符合Ethernet V2标准的局域网。

为了使数据链路层能更好地适应局域网标准,将局域网的数据链路层拆分成两个子层:逻辑链路控制LLC子层媒体接入控制MAC子层

在这里插入图片描述

与接入到传输媒体有关的内容都放到MAC子层,而LLC子层则与传输媒体无关,不管采用何种协议的局域网,对LLC子层来说都是透明的,由于常用的是V2以太网,因此现在LLC子层作用已经不大,很多厂商适配器上只装有MAC协议,没有LLC协议。

网络接口板又称为通信适配器或网络接口卡或网卡,计算机通过适配器和局域网进行通信。适配器的重要功能有:

  • 进行串行/并行转换
  • 对数据进行缓存
  • 在计算机的操作系统安装设备驱动程序
  • 实现以太网协议

最初的以太网是将许多计算机都连接到一根总线上,当初认为这样的方法既简单又可靠,因为线上没有有源器件,以太网采用广播的形式发送。

为了通信方便,以太网采取了两种重要的措施:

(1)采用较为灵活的无连接的工作方式:不必先建立连接就可以直接发送数据,对发送的数据帧不进行编号,也不要求对方发回确认。以太网提供的是不可靠的交付,即最大努力的交付。当收到差错帧就丢弃,其他什么也不做,而差错的纠正由高层来决定。

(2)以太网发送的数据都使用曼彻斯特编码。缺点是工作时频带宽度比原始信道增加了一倍。

CSMA/CD协议

含义:载波监听、多点接入、碰撞检测

载波监听:每一个站在发送数据之前先要检测一下总线上是否有其他计算机在发送数据,如果有则暂时不要发送数据,以免发生碰撞。

多点接入:许多计算机以这种方式连接在一根总线上

碰撞检测:计算机边发送数据边检测信道上的信号电压。当几个站同时在信道上发送数据时,总线上的信号摆动值将会增大,当一个站检测到的信号电压超过一定的值时,就认为总线上至少有两个站在同时发送数据,表明产生了碰撞。每一个正在发送数据的站一旦发现总线上发生了碰撞就要立即停止发送,然后等待一段随机的时间再次发送.

在这里插入图片描述

争用期:以太网的端到端往返时延2τ 称为争用期或碰撞窗口。

争用期的长度:在10Mbit/s的以太网中,取51.2μ s为争用期的长度。

退避时间:发生碰撞的站在停止发送数据后要推迟一个随机时间才能再次发送数据,减小重传时发送冲突的概率,这个基本退避时间取为争用期2τ.

最短有效帧长:以太网规定最短有效帧长为64字节。凡是小于64字节的帧都是由于异常冲突中止的无效帧。

强化碰撞:发送数据的站一旦发现发生碰撞时立即停止发送数据,再继续发送若干比特为干扰信号,以便让所有用户都知道信道上发生了碰撞。

帧间最小间隔:一个站在检测到总线开始空闲后还要等待9.6μ s才能再次发送数据。

使用CSMA/CD的以太网不能进行全双工通信,只能进行 半双工通信。

使用集线器的星型拓扑

在这里插入图片描述

在星型中加入了一个十分可靠的设备叫做集线器。

使用集线器的以太网在逻辑上仍然是一个总线网,各工作站使用的还是CSMA/CD协议,并共享逻辑上的总线。集线器很像一个多接口的转发器,它工作在物理层,每个端口仅转发比特不检测碰撞。

以太网的信道利用率

一个站在发送帧时出现了碰撞,经过一个争用期2τ之后可能又出现了碰撞,这样经过若干个争用期后这个站发送成功了,成功发送一个帧需要占用的时间为T0+n*2τ,比这个帧发送成功要多n个端到端时延。

n= Min[重传次数,10]

以太网的MAC层

在这里插入图片描述

局域网中硬件地址又称为局域网地址或MAC地址,IE802标准规定MAC地址字段可以采用6字节,48位,其中前三个字节称为组织唯一标识符,后三个字节由厂商自行指配,称为扩展唯一标识符,必须保证生产出的适配器没有重复的地址。

MAC帧格式有两种标准:DIX Etherent标准和IEEE的802.3标准。最常用的帧格式是以太网V2的标准

在这里插入图片描述

目的地址字段:6字节

源地址字段:6字节

类型字段:2字节,用来标志上一层使用的是什么协议,以便把收到的MAC帧的数据上交给上一层的这个协议。

数据字段:16-1500字节,当数据字段的长度小于16字节时,应在数据字段的后面加入整数字节的填充字段,以确保以太网的MAC帧长不小于61字节

FCS(校验)字段:4字节

以太网V2的MAC帧格式在前面插入了8个字节,其中7个字节为前同步码,用来实现比特同步,1个字节为帧开始定界符,现在市场上流行的都是V2以太网MAC帧。

3.4 高速以太网

高速以太网通常是速率达到或超过100Mbit/s的以太网

100BASE-T 以太网

是在双绞线上传送100Mbit/s基带信号的星形拓扑以太网,仍使用IEEE 802.3的CSMA/CD协议。

100BASE-T 以太网又称为快速以太网,可以在全双工方式下工作而无冲突发生(全双工工作时不使用CSMA/CD协议),保持最短帧长不变,争用期从51.2μ s降到5.12μ s,帧间时间间隔从原来的9.6μ s转变为0.96μ s.

吉比特以太网

允许在1Dbit/s下以全双工和半双工两种方式工作。

在半双工方式下使用CSMA/CD协议,全双工方式下不使用

吉比特以太网工作在半双工方式时,就必须进行碰撞检测,为了保证64字节最小帧长度和100米的网段最大长度,吉比特以太网增加了两个功能

  • 载波延伸

在这里插入图片描述

当MAC帧字节不足512时就用一些特殊字符填充在帧的后面,使MAC帧的字节长度增大到512字节。接收端在收到以太网的MAC帧后,要将所填充的字符删除之后才向高层交付

  • 分组突发

在这里插入图片描述

当很多短帧要发送时,第一个短帧要用短波延伸的方法进行填充,随后的短帧可以一个接一个地发送,只需留有必要的帧间最小间隔就可以,这样就形成了一串分组突发 ,直到达到1500字节或稍微多一些字节为止

当吉比特以太网工作在全双工方式时,不适用载波延伸和分组突发

10吉比特以太网

10吉比特以太网并非把吉比特以太网速率简单提高到十倍,它的帧格式与10Mbit/s、100Mbit/s和1Gbit/s以太网的帧格式完全相同,也保留了802.3标准规定的以太网最小和最大帧长。

使用光纤为传输媒体

只工作在全双工方式

在10GE之后又制定了40GE/100GE的标准,都是只能工作在全双工方式下。

以太网的工作范围已经从局域网扩大到城域网和广域网,从而实现了端到端的以太网传输,这种工作方式的好处有:

  • 技术成熟
  • 互操作性好
  • 价格便宜
  • 采用统一的以太网格式,简化了操作和管理

以太网从10Mbit/s到100Gbit/s的演进证明了以太网的以下优点:

  • 可扩展性
  • 灵活性
  • 稳健性
  • 易于安装
宽带接入

IE在2001年初成立了802.3工作组,专门研究高速以太网的宽带接入技术问题

以太网宽带接入特点:

  • 提供双向的宽带通信
  • 灵活地进行宽带升级
  • 实现端到端的以太网传输,中间不需要帧格式的转换,提高了数据的传输效率,降低了传输的成本
  • 不支持用户身份鉴别

PPPoE(PPP OVER Ethernet):在以太网上运行PPP“,它把PPP协议与以太网协议结合起来,把PPP帧再封装到以太网中来传输。

我们现在的光纤接入FTTPX就是使用PPPoE的方式

3.5 扩展以太网

在物理层扩展以太网

在物理层扩展以太网可以使用光纤扩展和集线器扩展,使用一对光纤和一对光纤调制解调器很容易使主机和几公里以内的集线器相连接,同时使用多个集线器可以练成更大的多级星型结构的以太网,比如一个学院三个系,各有一个10base-T的以太网,可以通过一个主干集线器把各系的以太网连接起来成为一个更大的以太网,使用集线器扩展以太网可以使原来属于不同碰撞域上的计算机能够进行跨碰撞域的通信,扩大了以太网覆盖的地理范围。

在数据链路层扩展以太网

早期数据链路层使用网桥,现在使用以太网交换机来扩展以太网。

网桥是根据MAC的目的地址对收到的帧进行转发和过滤。网桥可以使各个网段成为隔离开的碰撞域。

在这里插入图片描述

集线器和交换机的区别

交换式集线器常称为以太网交换机或第二层交换机,强调这种交换机工作在数据链路层。集线器是在线路上简单地连接所有用电线,从而达到共享总线的目的。逻辑上等于单根电缆的经典以太网,所有不能增加容量,所有的栈共用同一个冲突域。

交换式以太网核心是交换机,它包含了一块连接所有端口的高速配板,交换机只把帧输出到该帧想去的端口就可以了,每个端口都有自己独立的冲突域。

交换机的性能优于集线器,可以同时发送多个帧,考虑到不同数据帧可能在同一时间到达同一个输出端口,交换机必须有缓存以便储存排队序列,直到数据帧被传输到输出端口。

以太网交换机实质上就是一个多接口的网桥,每个接口都直接与主机或另一个以太网交换机相连,并且一般工作在全双工的方式下。

以太网交换机具有并行性,它能同时连接多对接口,多对主机能够同时通信,相互通信的主机都是独栈传输媒体,无碰撞地传输数据。

以太网交换机的接口有存储器,能在输出端口繁忙的时候对到来的帧进行缓存。

以太网交换机也是一种即插即用的设备,内部的地址表是通过自学习的算法自动建立起来的。以太网交换机还使用了专用的结构芯片,用硬件来转发,其转发速率要比用软件转发的网桥快很多。

以太网交换机的优点

  • 用户独享带宽,增加了总容量。例如,对于普通10Mbit/s的共享式以太网,若共有n个用户,则每个用户占有的带宽只有每个带宽的1/n,使用以太网交换机时,虽然每个接口到主机的带宽还是10Mbit/s,但由于一个用户通信时是独占而不是和其他用户共享传输媒体的带宽,所有对于拥有n个接口的交换机,它的总容量变为n倍的10Mbit/s
  • 从共享总线以太网转到交换式以太网时,所有接入设备不需要做任何改动,以太网交换机一般都有多种速率的接口,方便了不同种类的用户。

以太网交换机的交换方式

  • 存储转发方式

    把整个数据帧先缓存后再处理

  • 直通方式

  • 从接受数据帧看开始就立即根据数据真的目的MAC地址进行转发,从而提高了帧的转发速度,缺点是不检查差错,就直接将帧转发出去,有可能将一些无效的帧也转发出去

以太网交换机的自学习功能

以太网交换机通过自学习算法自动维护交换表

在这里插入图片描述

交换机自动维护时交换表刚开始是空白的,如图A先向B站发送一个帧,从接口1进入到交换机,交换机收到后先查找它的交换表,如果没有查找到从哪个接口应该转发出这个帧,那么交换机就把这个原地址A和接口1写入交换表中,并向除接口1以外的所有接口去广播这个帧,而C站和D站因为目的地址不一样就丢弃这个帧,只有B站收下这个目的地址正确的帧,这个过程也称之为过滤。从新写入交换表中的A和1可以看出以后不管哪一个接口收到帧只要它的目的地址是A,就应当把它收到的帧从接口1转发出去,B站通过接口3向A站发送一帧,交换机查找发送表发现有A,表明应当从接口1进行转发,于是就把这个帧传送到接口1转发给A,交换表这时新增加一个项目B,3,表明如果以后有发送给B站的帧应当从接口3转发出去,经过一段时间后只要主机C和D也向其他主机发送帧,交换机就会把要发送到C或D的2和4也写入到表中。考虑到有时要在交换机的接口更换主机,或者主机要更换它的网络适配器,这就需要更换交换表中的项目,所以在交换表中每个项目都设定一个有效时间,过期的项目就将被自动删除。

为了防止交换机之间一直兜圈子浪费资源,IE 802.ID标准制定了一个生成树协议STP。不改变网络的实际拓扑结构,但在逻辑上切断某些链路,使得从一台主机到所有其他主机的路径是无环路的树状结构。

3.6 VLAN(虚拟局域网)

虚拟局域网是局域网给用户提供的一种服务,并不是一种新型局域网。

虚拟局域网简称VLAN,是由一些局域网网段构成的与物理位置无关的逻辑组,而这些网段具有某些共同的需求,每一个VLAN的帧都有一个明确的标识符指明发送这个帧的计算机是属于哪一个VLAN,概括地说VLAN是将一个物理交换机通过配置变成多个逻辑上的交换机,每一个逻辑交换机连接一个局域网。

VLAN的特点

  • 是基于逻辑的分组。在同一VLAN内和真实局域网相同
  • 不受物理位置限制
  • 不同VLAN不同网段的用户需要借助三层设备通信
  • 减少节点在网络中移动的管理代价

VLAN具有的功能

  • 控制网络广播、提高网络性能

  • 分隔网段、确保网络安全

  • 简化网络管理、提高组网灵活性

在这里插入图片描述

当B1向工作组成员发送信息时,工作站V2和V3都会收到B1的消息,B1发送数据时尽管和A1,A2和C1在同一条交换线上,但它们都不会受到B1发送的广播信息,由此可见虚拟局域网限制了广播信息的站数,使得网络不会因为传播过多的网络信息引起广播风暴。

虚拟局域网使用的以太网帧格式

虚拟局域网允许在以太网的帧格式中插入一个四字节标识符,称为VLAN标记,用来指明发送该帧的计算机属于哪一个局域网。插入VLAN标记得出的帧又称为802.1Q帧,以太网MAC帧最大帧长也由原来的1518字节变为1522字节。

创建新的VLAN可以通过几种方式。

通过端口来创建。通过手工的方式我们可以将端口直接加入到新的VLAN中。但是随着网络规模的扩大,交换机接口经常不够用的情况可以实现多台交换机同VLAN的通信。

交换机有两种端口,分别为Trunk端口和Access端口。Access端口只属于一个VLAN,它发送的帧没有VLAN标签,一般用来连接计算机的端口。而Trunk端口可以允许接多个VLAN通过,它发送的帧有VLAN标签,一般用于交换机之间连接的端口。

基于端口的VLAN遵循Port-VLAN原理,通过查找MAC地址表交换机对发往不同VLAN的数据不进行转发。比如A、C在VLAN1,B在VLAN2,A站只能向C站转发数据,不能向B站转发。

802.1Q帧传送时对用户完全是透明的,Trunk端口上默认会转发交换机上存在的所有VLAN数据。Trunk在转发数据前,会在数据上打开一个Tag标签,在到达另一个交换机之后再剥去此标签。

第四章 网络层与网络互连技术

网络层应该提供什么样的服务呢?有两种观点,一种观点借助电信网的成功经验,由网络负责可靠交付,两端设备功能则可以很简单,通信前先建立虚电路保证双方通信所需要的一切访问资源,再使用可靠的网络协议就可以使所发送的分组无差错、按需到达终点,不丢失,不重复。另一种观点是网络层只向上提供简单灵活的,尽最大努力交付的数据包服务,路由器功能比较简单,价格低廉,每个分组都独立发送,与其前后的分组无关,传送的分组可能丢失、出错、重复和失去,也不保证分组传送的时限,如果出错则由传输层负责。

网际协议IP是TCP/IP协议中最重要的协议之一,与IP协议配套使用的还有4个协议,地址解析协议ARP,网际控制报文协议ICMP,网际组管理协议IGMP和反向地址解析协议RARP,其中RARP用到的很少。

整个TCP/IP协议族呈现沙漏计时器形状,有Everything over IP和 IP over Everything的说法

  • Everything over IP:IP可为各式各样的应用程序提供服务
  • IP over Everything:IP协议可以应用到各式各样的网络上

4.1 分类的IP地址

在IP协议中IP地址是一个十分重要的概念。

IP地址就是给每个互联网网络设备分配一个唯一的32位的标识符,由互联网名字和数字分配机构进行分配。

IP地址经过了三个阶段:

  • 分类的IP地址:最基本的编址方法其标准在1981年通过
  • 子网划分:对最基本编址的改进,其标准在1985年通过
  • 构造超网:这是比较新的无编址构造方法,1993年提出后很快就得到了推广应用

每类地址严格意义上是ABC三类,都有两个固定长度的字段组成,第一个字段是网络号,它标志主机所连接到的网络,另一个字段则是主机号,它标志该主机。网络号和主机号共32位,主机号在高网络范围内是唯一的。

在这里插入图片描述

IP地址共分为ABCDE五类

  • A类地址:网络号占8位,第一位为0,取值范围为1-126,主机号占24位
  • B类地址:网络号占16位,前两位为10,取值范围为128.1-191.255,主机号占16位
  • C类地址:网络号占24位,前三位为110,取值范围为192.0.1-223.255.255,主机号占8位
  • D类地址:前四位为1110,取值范围为224.0.0.0-239.255.255.255,为多播地址,比如网络直播时所有主机的地址都是多播地址
  • E类地址:前四位为1111,取值范围为240.0.0.-255.255.255.255,保留为以后使用

32位二进制的IP地址不容易记忆,为此我们采用点分十进制记法,每8位一组转换为对应的十进制,十进制数之间加点,提高可读性。

根据IP地址的定义我们可以计算出ABC类地址的网络数以及每个网络中的最大主机数。

在这里插入图片描述

  • A类地址最大的可指派网络数为27-2,-2的原因是除去0以及回环地址127,去头去尾,每个网络中的最大主机数为224 -2,减2的原因是全0的主机号表示网络号,全1的主机号表示该网络的广播号

  • B类地址中最大的网络数为214 ,每个网络中最大的主机数为216 -2,减2原因同上。

  • C类地址中最大网络数为221 ,每个网络中的最大主机数为28 -2,减2原因同上。

我们可以看出ABC类每个网络的最大主机数过多,因此就出现了后续的子网划分。

分辨ABC类地址:看第一个十进制数,1-126为A类地址,128-191为B类地址,192-223则为C类地址。

有些特殊的IP地址不分配给设备。

  • 网络号和主机号全0的,源地址可以使用,目的地址不可以使用,它表示在本网络的本主机
  • 网络号为0,主机号正常的,源地址可以使用,目的地址不可以使用,它表示在本网络的某台主机
  • 网络号和主机号全1的地址,源地址不可以使用,目的地址可以使用,它表示只在本网络上进行广播(路由器不会进行转发)
  • 网络号正常,主机号全1的,源地址不可以使用,目的地址可以使用,表示对这个网络上的所有主机进行广播
  • 网络号为127,主机号为非全0或全1的任何书,源地址和目的地址都可以使用,但是它是用来本地软件环回测试的

4.2 ARP

ARP协议能够根据IP地址(网络层)解析出MAC地址(数据链路层)。

网络层及以上使用IP地址,链路层及以下使用MAC地址(硬件地址)

IP地址放在IP数据包的首部,而硬件地址则放在MAC帧的首部。

在这里插入图片描述

主机H1和H2通信,中间经过两台路由器R1和R2,在整个通信过程中IP地址以及MAC地址如表所示

在这里插入图片描述

源IP地址和目的IP地址一直不变,源MAC地址和目的MAC地址一直发生变化,MAC地址是怎么得到的呢?这就要用到ARP协议

地址解析协议ARP:根据IP地址,解析出在数据链路层使用的MAC地址,因此ARP位于IP协议的下面

  • 不管网络层采用什么协议,在实际链路上传送数据帧时,最终必须使用MAC地址。、
  • 每一台主机或路由器都设有一个ARP高速缓存,存储局域网上的各设备IP地址与MAC地址的映射关系

当主机A想要向本局域网上的某个主机B发送IP数据包时,就先在其ARP缓存中查看有无主机B的IP地址。有就将此MAC地址写入帧,将该帧发往此MAC地址,没有就广播发送一个ARP请求分组,收到ARP相应分组后,将映射写入ARP高速缓存,并将MAC地址写入帧,将此帧发往MAC地址。

ARP请求分组(广播方式发送)包括:

  • 发送方MAC地址
  • 发送方IP地址
  • 全0的目标方MAC地址
  • 目标方IP地址

路由器不转发ARP广播,也就是说ARP只解析在同网段上设备的MAC地址,如果目标地址与发送地址不在同一个网段,发送方收到的将是该网段路由器的MAC地址。

ARP响应分组(单播方式发送)包括:

  • 发送方MAC地址
  • 发送方IP地址
  • 目标方MAC地址
  • 目标方IP地址

ARP高速缓存表

  • 发送请求时捎带自己的映射关系
  • 收到请求后存储自己的映射关系
  • 设有生存时间,以及时更新
  • ARP解析是自动进行的,此过程对用户透明

ARP注意事项

  • 当源MAC地址和目的1MAC地址在同一个网络时,直接解析目的设备的MAC地址
  • 不在同一个网络时,ARP解析出源主机的网关的MAC地址,把分组发送给网关(即路由器),网关再把分组转发给下一跳。

在这里插入图片描述

为什么不直接使用MAC地址进行通信?

  • 各式各样的网络使用不同的MAC地址,要使这些网络能够通信必须进行非常复杂的MAC地址转换功能,不现实
  • IP地址能够解决这个复杂的问题。连接到互联网的主机只需要各自拥有唯一的IP地址通信就像连接到同一个网络上那样简单方便,因为解析过程是透明的。

RARP:实现MAC地址到IP地址的转换,除了网上的无盘工作站,通常很少使用,必须设置一个RARP服务器。网管事先将映射关系写入RARP服务器的数据库中,与ARP相同,RARP请求包采用广播方式,响应包采用单播方式。

pc机发送ARP响应时,不需要先收到ARP请求报文,任何一台计算机都可以在局域网上发送自己是IP_A和MAC_A的对应者,因此就出现了ARP攻击。

ARP攻击:

  • ARP欺骗。攻击者向其他主机发出响应,告知了错误的MAC地址,导致ARP表刷新,形成错误的映射关系。
  • ARP流量攻击。利用攻击软件,发送大量ARP的请求和响应,报文中的IP地址和MAC地址均为伪造,随即填入,大量的广播流量会导致网络拥塞。

4.3 IP数据报格式

数据帧包含帧首,数据和帧尾,一个IP数据报由首部和数据两部分组成,没有尾,发送时先发送首部,再发送数据。

首部包括固定部分和可选字段,固定部分的长度为20字节,是所有IP数据包必有的,固定部分的后面是一些可选字段,1-40字节,长度可变,但必须为4字节的整数位,所有可能有填充部分。

在这里插入图片描述

  • 首部的第一个字段是版本号,占4位,指IP协议的版本,目前版本号为4(IPV4)

  • 第二个字段为首部长度,占4位,可表示的最大数值是15(单位是4字节),因此首部长度的最大值是60字节。

  • 区分服务占8位,用来获得更好的服务。只有在使用区分服务时,这个字段才起作用,一般情况下不使用这个字段。

  • 总长度占16位,指首部和数据长度之和,单位为字节,最大长度为65535字节,但是不能超过MTU,否则要分片。

  • 标识占16位,是一个计数器,用来产生IP数据包的标识。

  • 标志占3位,只有前两位由意义。最低位是MF,取值为1表示后面”还有分片“,取值为0表示最后一个分片,中间位是DF,只有DF取0才允许分片

  • 片偏移占13位,指出较长的分组在分片后某片在原分组中的相对位置,以8个字节为单位。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 生存时间占8位,记为TTL,指示数据报在网络中可通过的路由器数的最大值即最大多少跳。假设初始TTL为3,经过一个路由器就会被减1,当TTL为0时这个IP数据报就会被Internet处理掉。

  • 协议占8位,指出此数据包携带的数据使用何种协议,以便目的主机的IP层将数据部分上交给对应的处理过程。

    IP数据包可以封装多种协议PDU,可以是网络层的ICMP,IGMP以及OSPF,也可以是传输层的TCP和UDP,根据协议号进行区分。

  • 首部检验和占16位,只检验数据包的首部,不检验数据部分,不采用CRC而采用简单的计算方法。

  • 源地址和目的地址都是IP地址,各占4字节

  • IP首部的可变部分是一个选项字段,用来支持排错、测量以及安全等措施,内容很丰富,取决于所选择的项目。多个选项拼接,中间无需分隔符,用全0的填充段补齐为4字节的整数倍。增加首部的可变部分是为了增加IP数据报的功能,增加了路由器处理数据包的开销,实际上这些选项很少被使用。

4.4 ICMP

网际控制协议ICMP可以报告IP数据包传输过程中的差错。

为了更高效地转发IP数据包,提高交付成功的机会,在网际层使用了ICMP,是互联网的标准协议,允许主机或路由器报告差错情况和提供有关异常情况的报告。

ICMP报文封装在IP数据报中,但它并不是高层协议,与IP协议都位于网络层。

在这里插入图片描述

ICMP报文的格式:

  • 前4个字节都一样,第一个字段为类型,占1一个字节,第二个字段为代码。占1个字节,第三个字段为检验和占2个字节,后续为ICMP的数据部分,其长度取决于类型

ICMP报文的种类

  • 差错报告报文

在这里插入图片描述

当路由器收到TTL为0的报文时,丢弃此报文,并向原点发送超时报文。

参数问题:收到的数据包首段中的数据出现错误,弃此报文,并向原点发送参数问题报文。

路由发送改变路由报文给源点主机,让主机知道下次应该发送报文给另外的路由器。

在这里插入图片描述

  • ICMP的前8个字节,包括类型,代码,校验和以及后续的四个字节,其次是出错IP报文的20个字节,然后再提取IP报文的后续8个字节,是为了得到传输层传输口或UDP的端口号以及TCP报文的序号以便汇报给上层。
  • 整个ICMP报文作为IP的数据字段装入IP报文中,发送给源点。

并不是所有的出错报文都通知到源点,对于以下几种情况就不再发送

  • ICMP差错报告报文。

  • 第一个分片的数据报片的所有后续数据报片

  • 具有多播地址D类的数据报

  • 具有特殊地址的数据报

  • 询问报文
    在这里插入图片描述

ICMP的应用

  1. 分组网间探测Ping

    用来测试两台主机或者路由器之间的连通性。

    基于ICMP询问报文中的回送请求和回送应答报文。

    是应用层直接使用网络层ICMP的例子,没有通过传输层。

    • ping[-t]target_name:不断向目标主机发送回送请求报文,直到用户中断
    • ping[-n count]target_name:由count指定Ping多少次,缺省值(默认值的计算机术语)为4
    • ping[-l size]target_name:数据包大小,默认为32字节,最大值是65,527
    • ping[-w timeout]target_name:指定超时时间间隔,单位为毫秒,默认为4000毫秒
    • target:指定要ping的远程计算机,可以是域名,也可以是IP地址

    测试本机与新浪邮件服务的连通性,所有参数都采用默认值

在这里插入图片描述

ICMP与IP协议的关系

在这里插入图片描述

192.168.1.10发送请求给192.168.1.20,因为请求报文中无任何实际有意义的数据,通常用abcd等填充,假定标识符为0200,序号为0100,类型值为08,代码为00,校验码为十六进制的4a5c,这些构成ICMP报文,作为IP报文的数据

在这里插入图片描述

IP报文中的协议字段取值为01,表示封装的数据为ICMP报文,源地址为192.168.1.10对应的十六进制c0a8010a,目标IP地址为192.168.1.20对应的十六进制c0a80114。

192.168.1.10向192.168.1.20发送应答报文,报文内容与请求报文基本一致,类型值修改为00,校验值也发生了变化

在这里插入图片描述

IP报文中的目标地址与源地址互换。

  1. Traceroute/Tracert(追踪从源点到终点的路由)

    在Windows中该命令是tracert,UNIX或路由器中为raceroute。利用IP数据包中的TTL字段和ICMP超时差错报告报文,源点发送的第一个UDP报文TTL值为1,到达第一台路由后将其减1,减为0后第一台路由器将此报文丢弃,并向源点发送超时报告报文,这样就得到了第一台路由器的地址,这样一直继续下去得到剩下所有路由器的地址,当最后一个数据包到达目的主机时,数据报的TTL的为1,主机不转发数据报,也不把TTL减一。但是由于IP数据包中封装的是无法正常交付的UDP数据报,使用了非法的端口号,主机须向源主机发送ICMP终点不可达差错报文,我们就得到了目的主机的IP地址,于是我们就得到了从源点到终点的路径。

    • tracert[-d]traget_name:不解析目标主机的名称

    • tracert[-h]traget_name:指定搜索到目标地址的最大跳数,默认30

    • tracert[-j]traget_name:与主机列表一起的松散源路由

    • tracert[-w]traget_name:指定超时时间间隔,默认单位是毫秒,默认5秒

在这里插入图片描述

4.5 划分子网

划分子网的基本思路:从主机号的高位中连续借用若干个子位作为子网号,而主机号也就相应减少了若干个位,这样IP地址就从两级变成了三级。

在这里插入图片描述

从主机中借用几位来划分子网呢?我们使用子网掩码来作为标识。

子网掩码是一个非常重要的概念,网络号和子网号对应的部分取1,主机号对应的部分取0

在这里插入图片描述

(IP地址)AND(子网掩码)=网络地址

子网掩码中掩的作用是把主机号掩掉。

默认子网掩码

如果ABC类地址没有划分,我们就称为默认子网掩码。

在这里插入图片描述

A类默认:8个1和24个0

B类默认:16个1和16个0

C类默认:24个1和8个0

子网划分方法

  • 固定长度子网

    所有子网的子网掩码都是相同的

    B类地址的子网划分

在这里插入图片描述

子网号的位数没有15和16这两种情况。

子网号不能占15位,因为此时主机号只剩下1位,主机号只能取0和1这两种特殊情况,子网号也不能占16位,此时就没有主机号了。

在这里插入图片描述

在这里插入图片描述

不同的子网掩码可能会得到相同的网络地址,但不同的子网掩码的效果是不同的。

等长子网划分方法

  • 确定子网数

  • 根据子网数和获得的IP地址控件确定子网掩码

  • 确定每个子网的网络地址(主机号全0)主机地址范围 广播地址(主机号全1)

  • 为每台主机分配地址

  • 确定范围
    开始的时候子网位数都为0,子网号从0开始往上递增,直至所有的子网位数都为1,计算十进制网络号和广播号时注意后面的主机号全为0或全为1。

在这里插入图片描述

在这里插入图片描述

  • 变长子网(VLSM)

    所有子网的子网掩码不一定相同,产生不同大小的子网,能够高效分配IP地址。

    例题

    假定已经将172.16.0.0/16进行了子网划分,其中国有一个子网为172.16.32.0/20,现欲将该子网继续划分,要求每个网段50台主机。

    解题步骤:确定主机位:2^N-2>=50得到主机位,得到主机号为6位,新子网号为6位。

在这里插入图片描述

虽然划分子网增加了灵活性,减少了地址浪费,但是也减少了能够连接在网络上的主机总数。

4.6 构造超网

虽然划分子网提高了对IP地址的使用,但是还是存在一些问题。

  • B类地址在1994年3月全部分配完毕
  • 主干网上的路由表中的项目数急剧增长
  • 整个IPV4的地址空间最终将全部耗尽

所以采取了一种无分类编址方法,也称为无分类域间路由CIDR,构造超网。

CIDR的特点:

  • 更有效分配IPV4地址
  • 使用网络前缀
  • CIDR地址块

CIDR地址块中的所有网络聚合起来称为路由聚合

聚合后,一条路由可以代表多条,缩小了路由表。

路由聚合有利于减少路由器之间的信息交换,提高了互联网的性能。

路由聚合也称为构造超网

CIDR虽然不使用子网了,但仍然使用”掩码“。

CIDR记法的其他形式

10.0.0.0/10可以简写为10/10,把点分十进制中地位连续的0省略。

网络前缀的后面加一个星号*的表示方法。

如0000101000*,在星号 * 之前是网络前缀,而星号 *表示IP地址中的主机号,可以是任意合法值。

常用到的CIDR地址块

在这里插入图片描述

网络前缀越短,其包含的网络数就越多。

第一个为例:

包含的地址数:2^(32-13),2 ^9/2 ^16=2 ^3个B类地址,2 ^19/2 ^8=2 ^11个C类地址

构造超网

划分子网会使网络前缀变成,构造超网使得网络前缀变短。

在这里插入图片描述

这四个地址,前23位都是相同的,所以聚合时前23位都不变,后9位都设为0,得到聚合后的地址为206.0.68.0/23

使用CIDR时,路由表中的每个项目都由网络前缀和下一跳地址组成,在查找路由表时可能会得到不止一个匹配结果。

我们应当从匹配结果中选择具有最长网络前缀的路由,即最长前缀匹配。

网络前缀越长,其地址块就越小,路由就越具体。

在这里插入图片描述

将目的IP地址和掩码地址转化为二进制,按位相与,结果与目标网络地址相匹配

在这里插入图片描述

两个都比较匹配,应该选择两个匹配地址中更具体的一个,即选择最长前缀的地址。

RFC建议

整个世界被分为四个地区,每个地区拥有一段连续的CIDR地址块,这样就可以大大压缩路由表中的项目数。

然而在CIDR提出之前,IP地址的分配与地理位置并没有建立联系,而且将已分配的IP地址回收分配非常困难,因此此方案并未实际实施。

4.7 路由器

交换机:链路层,只对局域网中的帧进行转发

路由器:网络层,用来连接不同的网络,选择最佳路由,提高通信速度

路由器包含两部分:路由选择和分组转发

路由选择部分也叫控制部分,其核心构件是路由选择处理机,任务是根据路由协议构造路由表,同时经常或定期和相邻路由器交换路由信息而不断更新和维护路由表。

分组转发由三部分组成:

  • 一组输入端口
  • 一组输出端口
  • 交换结构

从某个输入端口输入转发表,将分组转发表转发到合适的输出端口,从而转发给下一跳路由器。

转发:基于转发表,将IP数据报从端口转发出去,仅涉及一个路由器。

路由选择:按照分布式算法,根据从相邻路由得到网络拓扑的变化情况,动态改变路由并构造完整的路由表。

路由表基于路由选择算法,而转发表基于路由表,二者采用不同的数据结构,一般我们并不区别。

虽然我们说路由器属于网络层的设备,但其实输入输出端口还涉及物理层和链路层。

输入端口从线路的物理层接收到分组,数据链路层剥去帧首和帧尾,将分组送到网络层的队列中排队等待处理。

分组有两种情况:

  • 路由器间的路由信息,将分组送交路由选择控制机,用来更新和维护路由表。
  • 数据分组,按照分组选择中的目的地址查找转发表,经过交换结构最终到达合适的输出端口。

输入端口设有缓冲区,对数据分组进行查找和转发,是路由器中最重要的功能。

在这里插入图片描述

输出端口也设有缓冲区,当分组进入速率大于路由器处理队列速率时,来不及发送的分组就暂存在这个队列中。链路层加上帧首和帧尾,交给物理层后发送到外面的线路。

分组丢弃的原因

  • 路由器中找不到合适的路由
  • 处理速率低,存储空间减为0,缓冲区溢出,丢弃后续分组。

交换结构把数据从一个输入端口转发到某个合适的输出端口,交换结构是交换机的关键构件,常用方式有三种:

  • 通过存储器

在这里插入图片描述

当输入端口收到一个分组时,就用中断的方式通知路由选择处理机将分组从输入端口复制到存储器中,路由选择处理机从分组首部提取目的地址,查找路由表,再将分组复制到合适输出端口的缓存中,实际用的并不多。

  • 通过总线

在这里插入图片描述

数据报通过输入端口通过共享总线直接传送到合适的输出端口,不需要路由选择处理机的干预,因为每一个要转发的分组都要通过这一条总线,因此路由器的转发带宽受总线的限制。

  • 通过网络

在这里插入图片描述

它有2n条总线,可以使n个输入端口和n个输出端口相连,当输入端口收到一个分组时,就将它发送到与该输入端口连接的水平总线上,若通向所要转发的输出端口的垂直总线是空闲的,则在这个结点将水平总线和垂直总线连通,然后将该分组转发到这个输出端口,但若这个垂直总线已被占用,则后到达的分组就会被阻塞,必须在输入端口排队,后来采用ASIC硬件来实现,并采用了共享内存的方式解决了内部交换的问题,目前路由器都采用这种交换方式。

4.8 RIP

路由器的作用就是路由选择,那么什么是最佳路由?首先明确一点,不存在绝对的最佳路由算法,所谓最佳只能是尽可能接近理想的算法。

路由选择是个非常复杂的问题:

  • 它是网络所有节点共同协调工作的结果
  • 网络环境往往是不断变化的,这种变化有时无法预知

从路由算法的自适应性考虑:

  • 静态路由选择

    非自适应路由选择,简单,开销较小,不能及时适应网络状态的变化,适用于小型、简单的网络。

  • 动态路由选择

    自适应路由选择,较好地适应网络状态的变化,实现起来复杂,开销较大,适用于大型、复杂的网络。

互联网采用自适应的分层次的分布式的路由选择协议

  • 互联网规模非常大,如果让所有的路由器知道应如何到达,路由表将非常大,同时路由器之间交换信息所需的带宽也会使路由器的通信链路饱和。
  • 很多单位在连接到互联网的同时不希望网络拓扑结构及网络协议为外部所知道。

自治系统AS

AS间的1路由使用AS间的网络协议。

AS内的路由选择叫做内部网关协议,如RIP和OSPF

AS间的路由选择叫做外部网关协议,如IBGP-4

RIP

是分布式、基于距离的向量,是互联网的标准协议,简单却很少应用,几近淘汰。

每个路由器都要维护从自己到每个目的网络的最短距离,及距离向量。

最短距离

  • 从一个路由器到直连网络的距离定义为0
  • 从一个路由器到非直连网络的距离定义为所经过的路由器数
  • 距离也称为跳数,每经过一个路由器,跳数就加1
  • RIP规定一条路径最多只能包含15台路由器,16跳就不可达,因此只适用于小型网络。
  • RIP不能在两个网络之间同时使用多条路由,无法实现负载均衡
  • 选择一条具有最少路由器的路由,哪怕还存在另一条高速、低时延但路由器较多的路由

RIP协议的三个要点

  • 仅和相邻路由器交换信息
  • 交换的信息是本路由器知道的全部信息,即自己的整张路由表
  • 按固定的时间间隔交换路由信息,例如每隔30s
  • 当网络拓扑发生变化时,路由器也即时向相邻路由器通告拓扑变化后的路由信息

路由表的建立过程

  • 路由器在刚开始工作时,路由表是空的,只知道到直连网络的距离为0
  • 每个路由器也只和数目非常有限的相邻路由交换并更新路由信息
  • 经过若干次更新后,所有路由器都知道到达本AS内所有网络的最短距离和下一跳网络的地址
  • RIP协议收敛过程较快。收敛就是在AS所有路由器中都得到正确信息的过程

距离向量算法路由表的更新过程

没有则加入,下一跳更新则替换,下一跳不同有两种情况,跳数变小则替换,跳数相同或不变则不变。

  1. 路由器收到相邻路由器X的RIP报文,先修改此报文中的所有项目,把下一跳的字段地址都改为x,并把所有距离字段的值加1,最终路由项目有三个关键数据,目的网络N,距离d,下一跳路由器x。

  2. 对修改后的RIP报文的每一个项目重复以下步骤:

    若目的网络不在路由表中,则把该项目加到路由表中,否则若下一跳字段给出路由器的地址相同,则用收到的项目替换原路由表中的项目,无论距离变大还是变小,否则若收到的项目中的距离小于路由表中的距离,则进行更新,否则什么也不做,保留路由表中的原有信息。

  3. 若3分钟还没有收到相邻路由器的路由表,则将此相邻路由器连接的网络记为不可达,即将距离置为16。

在这里插入图片描述

RIPv2的报文格式

报文由首部和路由部分组成。

在这里插入图片描述

  • 首部占4个字节,命令字段指出报文的意义。1表示请求路由信息,2表示响应或路由更新报文,版本字段指出RIP的版本是1还是2,后续部分置为0.
  • 路由部分由若干条路由信息组成,每条路由信息占用20字节,地址族标志字段用来表示标志所使用的地址协议,IP地址为2,路由标记号填入AS号,因为有可能收到AS外的信息。在后面指出网络地址,该网络的子网掩码,下一跳的路由器地址以及到此网络的距离。

一个RIP报文最多可以包含25个路由,IP报文中数据最大长度为512字节,减去UDP首部的8字节和RIP首部的4字节,剩余500字节,500/20=25,因此RIP最大报文长度为4+20*25=504字节,如超过必须再用一个RIP报文传送。

RIPv2具有简单的鉴别功能,将原来写入第一个路由信息的位置用作鉴别,此时地址符标识符全1,而路由标记写入鉴别类型,余下16字节为鉴别数据,在鉴别数据之后才写入路由信息,但这时最多只能放入24条路由信息。

RIP协议特点

好消息传的快,坏消息传的慢。

优点:实现简单,开销较小

缺点:

(1)限制了网络规模

(2)路由器之间交换完整的路由表,随着网络规模的扩大开销也就增加

(3)坏消息传播的慢,更新过程的收敛时间过长。

4.9 OSPF

是为克服RIP的缺点开发的,它的原理简单但是实现起来较复杂。

  • 开放表明该协议不受某厂商控制,而是公开发表的。
  • 最短路径优先使用了最短路径算法SPF,注意SPF只是一个协议的名字,并不表明其他协议不是最短路径优先。
  • 采用分布式链路状态协议

协议三要点

  • 刚开始向本AS中所有路由器洪泛发送信息,发送的信息是与本路由器相邻的路由器的链路状态,但这只是路由器知道的部分信息
  • 链路状态:本路由器都和哪些路由器相连以及该链路的度量,度量值与费用、距离、时延和带宽等相关。
  • 后续只有当链路状态发生变化时,才用洪泛法向所有路由器发送信息。

由于各路由器之间频繁地交换链路状态信息,所有的路由器最终都能建立一个链路状态数据库,即全网的拓扑结构图,它在全网范围内是一致的。

OSPF的链路数据库能较快地进行更新,使各个路由器能及时更新其路由表。

OSPF的更新过程收敛快是其重要优点。

为了使OSPF能应用于规模很大的网络,OSPF将一个AS划分为若干更小的范围叫做区域,每个区域都有32位的区域标识符,区域也不能太大,在一个区域的路由器最好不要超过200个。

OSPF使用层次结构进行区域划分,与其他AS区域相邻的区域称为主干区域,其标识符为4个0,用来连通其他的非主干区域。

在这里插入图片描述

为什么要划分区域呢?将洪泛法交换链路信息的范围局限于每个区域,而不是整个AS,大大减少了整个网络上的通信量。在一个区域内部的路由器只需要知道本区域的完整网络拓扑,而不需要知道其他区域的网络拓扑。

根据路由器所处位置的不同,将位于主干区域的路由器叫做主干路由器,如图中的R3-R7,将同时位于两个区域的路由器叫做区域边界路由器,如R3,R4和R7,将与其他AS连接的路由器叫做AS边界路由器,如R6。

OSPF不用UDP而是直接用IP数据报传送,首部协议字段值为89。OSPF构成的数据报很短,这样做可以减少路由信息的通信量,同时不必将长的数据报进行分片。

OSPF分组格式

在这里插入图片描述

版本目前为2,类型是5种类型中的一种,分组长度包含首部在内以字节为单位,路由器标识符是本路由器接口的IP地址,区域标识符是分组所属区域的标识符,检验和检验分组中的差错,鉴别类型有2种,取0无须鉴别,取1需要鉴别,鉴别区鉴别类型为0时填入0,鉴别类型为1时填入8个字符的口令。

OSPF的其他特点:

  • 对不同的业务可计算出不同的路由
  • 可以实现负载均衡
  • 分组具有鉴别功能,保证了信息的安全性
  • 每一个链路状态都有一个32位的序号,序号越大状态就越新。

OSPF的五类分组

  • 类型1,问候分组。发现和维持连接站点的可达性。
  • 类型2,数据库描述分组。向邻居站点发送自己的链路状态数据库中项目的摘要信息
  • 类型3,链路状态请求分组。向对方请求发送某些链路状态项目的详细信息。
  • 类型4,链路状态更新分组。用洪泛法向全网更新链路状态,是OSPF最核心最复杂的部分。
  • 类型5,链路状态确认分组。对链路更新分组的确认。

OSPF基本操作
在这里插入图片描述

首先,R1和R2使用问候分组确认邻居关系,然后R1和R2互相发送数据库描述分组,假定R1的数据库中有一些项目不在R2发送的数据库描述分组中,R1就向R2发送某些链路请求分组,R2向R1发送其请求对应的相应信息,即链路状态更新分组,R1收到后向R2发送链路状态更新确认分组。

OSPF使用可靠的洪泛法发送更新分组

OSPF的其他特点:

  • 每30分钟刷新数据库中的链路状态
  • 当互联网规模很大时,OSPF比RIP好得多
  • 没有“坏消息传得慢”的问题

4.10 外部网关协议BGP

对于AS之间的路径要寻找最佳路由不现实,一条路径通过几个不同的AS时,对这样的路径计算代价也不现实,比较合理的做法就是在AS之间交换可达性信息。

AS之间的协议必须考虑有关策略,包括政治安全或经济方面,寻找一条能够到达目的网络且比较好的路由,即不兜圈子而并非寻找一条最佳路由,因此选择路径向量路由选择协议。

每一个AS至少有一台路由器作为BGP发言人,两个BGP发言人通过一个共享网络连接在一起,BGP发言人往往就是BGP边界路由器,但也可以不是。

BGP发言人与AS之间的关系

在这里插入图片描述

发言人之间建立TCP连接以此交换路由信息,路由的增加和撤销以及报告出错等情况。TCP连接能够提供给可靠的服务,也简化了路由选择协议。两个BGP发言人彼此成为对方的邻站或对等站。

BGP可达网络要交换的信息就是就是要到达某个网所要经过的一系列AS,当BGP发言人互相交换了可达性信息后,各BGP发言人就根据所采用的策略从收到的路由信息中找到到达各AS的较好路由,一般是树形结构,不存在回路。

BGP协议的特点

  • BGP交换信息的节点数量是AS数的量级,比AS中的网络数小很多。
  • 每个AS中的BGP发言人数目很少,使AS间的路由选择不会过分复杂。
  • BGP发言人需检查其他BGP发言人发来的路径通知中本AS是否已在其中,若在其中则此条路由将被丢弃或忽略
  • 在BGP刚刚运行时,BGP的邻站交换整张BGP路由表
  • 以后只需要在发生变化时更新发生变化的部分,节省网络带宽,减小路由器的开销。

BGP-4使用的报文

  • 打开报文,用来和邻站建立关系

  • 更新报文,用来发送某一路由的信息,并列出要撤销的多条路由

  • 保活报文,确认打开报文,周期性地证实邻站关系

  • 通知报文,发送检测到的差错

RIP基于UDP,OSPF基于IP,BGP基于TCP

  • RIP只和邻站交换信息,UDP虽然不可靠,但开销小,周期性克服UDP不可靠的缺点。
  • OSPF使用可靠的洪泛法,直接使用IP,灵活性小,开销小
  • BGP交换整个路由表和更新信息,TCP确保可靠,无需周期性。

4.11 VPN和NAT

一个公司和分支机构如果不在同一个地方该如何通信呢?一个员工在外地如何连接工作单位呢?

本地地址:仅在机构内部使用的IP地址,可由本机构自行分配,无需向互联网的管理机构申请,一般指私网地址,有三类:

  • A类地址:10.0.0.0到10.255.255.255及10.0.0.0/8
  • B类地址:172.16.0.0到172.31.255.255及172.16.0.0/12
  • C类地址:192.168.0.0到192.168.255.255及192.168.0.0/16

全球地址:全球唯一的IP地址,必须向互联网的管理机构申请,一般指公网地址。

IP地址紧缺,一个机构所能申请到的IP地址数往往小于本机构所拥有的主机数,考虑到互联网并不安全,一个机构内也不需要把所有的主机接入互联网。专用地址只能用作本地地址,而不能用作全球地址,路由器对目的地址是专用地址的数据报一律不进行转发。

VPN

采用专用IP地址的互连网络称做专用互联网,简称专用网。

利用互联网作为本机构各专用网之间的通信载体,又称为虚拟专用网VPN,该网络是为本机构的主机进行本机构的通信,不是用于和网络外非本机构的主机通信。

VPN中的虚拟是并没有使用通信专线,但是效果上和真正的专用网一样。

VPN构建

  • 有保密需求,数据必须加密
  • 专门的硬件和软件

用隧道技术实现VPN

在这里插入图片描述

部门A和部门B距离很远,比如跨市跨省甚至跨国家,内部都使用A类私网地址,现在A部门的主机X要和B部门的主机Y通信,两部门之间通过搭建隧道实现数据的加密。X的私网地址10.1.0.1在进入隧道前需要将其转化为公网地址125.1.2.3,X要访问主机Y,但其目的地址并不是私网地址10.2.0.3,而是公网地址194.4.5.6,也就是说隧道内的源地址和目标地址都是公网地址,数据通过隧道后到达B网络,再将公网地址194.4.5.6转换为私网地址10.2.0.3,从而实现两个专用网之间的通信。

在这里插入图片描述

内联网和外联网

由部门A和B所构成的内部网络所构成的VPN称为内联网,表示部门A和B都是在一个机构的内部,一个机构和某些外部机构共同建立的VPN称为外联网。

远程接入VPN

某个流动员工需要远程接入VPN访问公司网络:该员工接入互联网,基于VPN软件在员工的PC机和公司的主机之间建立VPN隧道,通信内容是加密的,感觉好像在使用公司内部的本地网络。

NAT

要将私网地址和公网地址转换,这种地址转换就叫做网络地址转换NAT,需要在将专用网连接的互联网的路由器上安装NAT软件,该路由器就叫做NAT路由器,它至少有一个公网IP地址,所有使用私网地址的主机和外界通信时都要在NAT路由器上将私网地址转换为公网地址,当互联网回应后必须将公网地址转换为私网地址才能找到内部某主机。

在内外主机通信时,NAT路由器共发生了两次地址转换。

  1. 离开专用网时:替换源地址,将私网地址替换为公网地址

  2. 进入专用网时:替换目的地址,将公网地址替换为私网地址

NAT转换分类

  • 静态转换:某个私网IP地址只转换为某个公网IP地址,是一成不变的,一对一,服务器采用该方式
  • 动态转换:IP地址对是随机的,是不确定的,所有合法的私网IP地址均可随机转换为合法的IP地址,属于多对多的关系。如果IP地址略少于VPN内部主机数量时,可以采用动态转换的方式,但VPN内部主机不能同时连接互联网,一般主机采用该方式
  • NAPT/PAT:为了更加有效利用公网IP地址,我们可以利用传输层的端口号,内部网络的有线主机均可共享一个合法的公网IP地址。

PAT最大限度地节约IP地址,又可隐藏网络内部的所有主机,有效避免网络攻击。

目前网络中应用最多的就是PAT(普通设备)和静态转换(服务器)

在这里插入图片描述

第五章 传输层

5.1 传输层概述

传输层架构在网络层形成的服务之上,把数据传输服务从两台计算机之间扩展到两台计算机上的进程之间,网络层提供尽力而为的服务,而传输层是有所为有所不为。

传输层提供进程之间本地通信的抽象模式,即运行在不同终端上的应用进程仿佛是直接连接在一起的。

进程之间的通信

传输层介乎于应用层和网络层之间,向上为应用层提供通信服务,属于面向通信部份的最高层,同时也是用户功能中的最低层,当网络边缘的两个主机使用网络核心部分的功能进行端到端的通信时,只有位于网络边缘的协议栈才有传输层,也就是说网络核心部分的路由器在转发分组时只用了下三层的功能。

在这里插入图片描述

严格来讲,两台主机进行通信就是两台主机中运行的进程相互通信,从传输层的角度看,通信的真正端点其实并不是主机本身,而是主机中的进程。

网络层与传输层的区别

在这里插入图片描述

网络层是为主机之间提供逻辑通信,通信所用到的关键参数是IP地址,包括源地址和目标地址,而传输层是为应用进程之间提供端到端的逻辑通信,其所需要的关键参数除了IP地址外还需要传输协议及端口号。

而传输层的作用体现在一台主机中经常会有多个应用进程同时分别和另一台主机中的多个应用进程进行通信,这种情况下传输层有一个很重要的功能:复用和分用。

复用是指在发生方不同的应用进程都可以使用同一传输协议,通过增加适当的首部传送数据,分用是指接收方的传输层在剥去报文的首部后能够把这些数据正确交付到目的应用进程,另外传输层对接收到的报文进行差错检测,在网络层的IP数据报首部中存在着校验和字段,但其只对首部的差错进行校验,不会对报文本身内容进行校验。根据应用层的不同需求,传输层需要有两种不同的协议:面向连接的TCP和无连接的UDP。

传输层可以为高层用户建立一条端到端的逻辑通信信道,上层协议不同信道也有很大的差别。当传输层采用TCP协议时,逻辑信道采用全双工可靠信道,当使用无连接的协议时,逻辑信道采用不可靠信道。

传输层的两个主要协议
  • 用户数据报协议UDP:传送单位是UDP报文或用户数据报,是一种无连接协议,可提供进程到进程之间的报文交付或报文检错
  • 传输控制协议TCP:传送单位是TCP报文段,面向连接的协议,不提供广播或多播服务,因为要提供可靠的传输服务因此增加了许多开销
传输层的端口
  • 硬件端口:路由器或交换机上的端口
  • 软件端口:在协议栈层间的抽象的协议端口

端口号只具有本地意义,即端口号只是为了标记本计算机应用的进程,在互联网中不同计算机的端口号是不互相关联的。两个计算机要互相通信,不仅要知道对方的IP地址(为了找到计算机),还要知道对方计算机的端口号,这样就可以找到对方计算机中的应用进程。

TCP/IP传输层端口
  • 服务器使用的端口号

    包括熟知端口,也就是系统的端口号,数值通常为0-1023,还有登记端口,数值通常为1024-49151,为没有数值端口号的程序使用,使用这个端口号必须在IANA登记,以防止端口重复使用

  • 客户端使用的端口号

    又称为短暂端口号,数值在49152-65535,留给客户进程选择暂时使用,该端口属于动态端口范围,没有端口可以被正式地注册占用,当服务器进程收到客户进程的报文时,就知道了客户进程所使用的动态端口号,通信结束后这个端口号可提供其他客户以后使用

常用的熟知端口:

在这里插入图片描述

5.2 UDP

UDP需要实现的功能

UDP只在IP的数据服务基础上增加了很少的一点功能——复用和分用的功能,报文和差错检错的功能

UDP提供的服务

UDP在网络服务的基础上提供进程到进程的报文交付服务以及可选的完整检查性服务

UDP适合哪些应用

能容忍丢包但对延迟敏感的应用,以单次响应为主的应用

UDP协议的特点
  • UDP是无连接的

    发送数据之前不需要建立连接,因此减少了开销和发送数据之前的时延

  • UDP使用尽最大努力交付

    不保证可靠交付,因此主机不需要维持复杂的连接状态表

  • UDP是面向报文的

    UDP对应用层下来的报文既不合并,也不拆分,而是保留这些报文的边界,UDP以此交付一个完整的报文

  • UDP没有拥塞控制

    网络出现拥塞不会使源主机发送速率降低

  • UDP支持多种交互通信方式:一对多,多对一

  • UDP首部开销小

在这里插入图片描述

UDP对应用层的报文只添加UDP首部便向下交付,一次交付一个报文,当接收方收到到网络层的报文后,除去首部向上交付,一次交付一个报文,应用程序必须选择合适大小的报文,若报文太长UDP把它交付给IP层,IP层再传输时可能要进行分片,这会降低IP层的传输效率。

UDP基于端口的分用

在这里插入图片描述

当传输层从IP层收到UDP数据报时,就根据首部的目的端口把UDP数据报分别转向相应端口,上交到最终的终点,如果接收方UDP收到的目的端口不正确,就丢弃该报文,并由ICMP发送端口不可达的差错报文给发送方。

UDP报文的首部格式

在这里插入图片描述

UDP报文有两个字段,首部字段有8个字节,共有四个字段组成,每个字段都是两个字节,UDP报文的报头是携带协议所处理需要的信息,载荷部分是携带上层的数据,对应用于复用和分用的字段是源端口号和目的端口号,用于检测报文错误的字段包括了报文总长度及校验和。

UDP校验和字段的作用:对传输的报文段进行检错。

在计算校验和的时候,把UDP用户数据报之前的12个字节作为伪首部,临时把伪首部和UDP用户数据报连接在一起,仅仅是为了计算校验和。伪首部其实是IP报文首部的一部分,包括源IP地址,目的IP地址,1字节的全0字段,协议字段数值为17,及UDP的长度字段。

在这里插入图片描述

5.3 TCP概述

TCP最主要的特点
  • TCP是面向连接的传输层协议,会有连接的建立与释放的过程
  • 每一条TCP连接只能由两个端点,也就是一对一的
  • TCP提供可靠交付的服务,流水线式发送,无差错,无丢失,不重复且能够按序到达
  • TCP提供全双工通信的方式,两端都设有发送和接收缓存且实现流量控制
  • TCP是面向字节流的。TCP中的流指的是流入或流出进程的字节序列。面向流的含义是虽然应用程序和TCP的交互是一次一个数据块,但TCP把应用层交下来的数据看成仅仅是一串无节奏的字节流
TCP面向流的概念

在这里插入图片描述

TCP不保证接收方应用程序所收到的数据块和发送方应用程序所发送的数据块大小具有一一对应的关系,但接收方应用程序收到的字节流必须是和发送方应用程序发出的字节流完全一样,TCP不关心应用进程一次把多长的报文发送到TCP的缓存中,而TCP对连续的字节流根据当前网络环境因素进行分段,形成TCP报文段实现数据传输。TCP的连接是一条虚连接,而不是一条真正的物理连接,TCP根据对方给出的窗口值和当前网络拥塞的程度来决定一个报文段应包含多少个字节,而UDP发送的报文段是完全由应用进程所确定的。TCP可把太长的数据块分段再传送,也可等待足够多的字节构成报文段再发送。

TCP的连接

TCP把连接作为最基本的抽象,每一条TCP连接有两个端点,TCP连接的端点不是主机,不是主机的IP地址,不是应用进程,也不是传输层的协议端口,TCP连接的端口被称作套接字或插口,把端口号拼接到IP地址就构成了套接字。

每一条TCP连接唯一地被通信两端的两个端点(即两个套接字)所确定。

TCP连接就是由协议软件所提供的一种抽象,TCP连接的端点是个很抽象的套接字:

套接字 socket = (IP地址:端口号)

TCP连接::={socket1,socket2}={(IP1:port1),(IP2:port2)}

Socket不同的含义
  • 应用编程接口API
  • socket API中的一个函数名
  • 调用socket函数的端点称为socket
  • 调用socket函数时其返回值
  • 在操作系统内核中socket实现的概念

以上均与本节所提及的套接字不同

5.4 TCP报文格式

TCP报文段的首部格式

在这里插入图片描述

图中每行是4个字节,32位,TCP是面向字节流的,但TCP传输的单位却是报文段,一个TCP报文段分为首部和数据两部分,而TCP的全部功能都体现在它首部中各字段的作用。

TCP报文段中前20个字节是固定的,后面有4*n个字节是根据需要而增加的选项字段,n是个整数,最长是40个字节,因此TCP首部的长度是20-40个字节之间。

  • 第一行是源端口和目的端口字段,各占2个字节。端口是传输层和应用层的服务接口,传输层的复用和分用功能都要通过端口才能实现。
  • 第二行是序号字段,占4个字节。TCP连接中传输的数据流每一个字节都编上了序号,序号字段的值实际是指的本报文段中所发送的数据的第一个字节的序号
  • 第三行是确认号字段,占4个字节。是期望收到对方的报文段数据的第一个字节序号。
  • 数据偏移字段,即首部长度,它占了四位,指出了TCP报文段的数据起始处距离TCP报文段的起始处有多远,数据偏移的单位是32位字。以4字节长的字为计算单位,最大的数值是60字节
  • 保留字段,占6位,保留位今后使用,目前都把它设置为0
  • 紧急标志URG,当URG=1时,表明紧急指针字段有效,它高速系统此报文段中有紧急数据,应尽快传送,相当于是一个高优先级的数据
  • 确认标志ACK,只有当ACK=1,确认号字段才有用,当ACK=0时确认号无效
  • 推送标志PSH,接收TCP收到PSH=1的报文段,就尽快地交付接收应用进程,不再等到整个缓存填满了再向上交付
  • 复位标志RST,当RST=1时表明TCP连接中出现了严重的差错,如主机崩溃或其他的原因,此时必须释放连接然后再重新建立连接
  • 同步标志SYN,SYN=1表示这是一个连接请求或连接接受报文,与ACK标志配合实现
  • 终止标志FIN,它是用来释放一个连接的,FIN=1表明此报文段中的发送数据已经发送完毕并要求释放传输连接
  • 窗口字段占了2个字节,作为接收方让发送方设置发送窗口的依据,单位为字节,窗口指经常在动态变化着,此字段明确指出现在允许对方发送的数据量
  • 检验和字段占两个字节,检验范围为首部和数据两个部分,在计算检验和时要在TCP报文段前加上12位伪首部
  • 紧急指针字段占16位,指出在本报文段中紧急数据有多少个字节,紧急数据放在本报文段的最前端,它只当URG=1时才有效
  • 选项字段长度可调,最长40个字节,TCP最初只规定了一种选项,即最大报文段长度MSS,MSS告诉对方TCP我的缓存所能接受的报文的最长字段是MSS个字节,而MSS是TCP报文段中的数据字段的最大长度,数据字段加上TCP首部等于整个TCP的报文段,所以MSS的长度是TCP报文长度减去首部长度。
  • 填充字段,为了使整个首部长度为4的整数倍
为什么要规定MSS

设置合理的MSS数值,可以提高网络利用率,减小额外开销,在建立连接时,双方都把自己能够支持的MSS写入字段,传送数据时就以此为准,两个方向可以采用不同的MSS,MSS的默认值是536字节,即所有互联网都能够接受的长度是536+20即556个字节。MSS的选择应尽可能大些,只要在IP层传输时不需要再分片就行。

其他选项
  • 窗口扩大选项,占3字节,其中有一个字节表示移位值S,新的窗口值等于TCP首部的窗口位数增大到16+S,相当于把窗口值向左移动S位后获得的窗口值,移位值允许使用的最大值是14,窗口的最大数值可以增大到230-1
  • 时间戳选项占10字节,其中最主要的字段是时间戳值字段(4字节)和时间戳回送回答字段(4字节),它们通常是用来计算往返时间RTT和用来处理TCP序号超过22的情况,防止序号绕回这种情况
  • 选项确认选项

5.5 可靠传输的工作原理

理想的传输条件特点
  • 传输信道无差错
  • 不管发送方以多快的速度发送数据,接收方总是来得及处理收到的数据
停止等待的协议

每发送完一个分组就停止发送,等待对方的确认,当收到确认后再发送下一个分组。全双工通信的双方既是发送方又是接收方,为了讨论问题的方便,我们在后面仅考虑A发送数据,B接受数据并发送确认,因此A叫做发送方,B叫做接收方,我们分情况来讨论。

  1. 无差错情况

在这里插入图片描述

A向B发送数据M1,B确认收到后A继续发送M2

  1. 出现差错

在这里插入图片描述

B检测M1时检测到差错,就直接丢弃M1,其他什么都不做,也不会通知A收到了有差错的分组;如果M1在传输过程中丢失了,B当然什么也不知道,就什么都不做。

A为每一个已发送的分组都设置了一个超时计时器,A只要在超时计时器到期之前收到了相关的确认就撤销该超时计时器,继续发送下一个分组M2,反之则超时重传M1.

  1. 确认丢失和确认收到

在这里插入图片描述

A向B发送M1,B也收到了M1,但是B向A发送的确认收到丢失了,A并不能确定是自己没有将M1传给B还是B没有将确认报文传给自己,于是选择了重传,B此时收到再次发送来的M1要做两个动作,一个是丢弃这个重新发送过来的M1,并不把它交付给上层,二是再次向A发送确认报文表明自己接收到了M1报文。

在这里插入图片描述

B向A发送的确认报文迟到了,A仍然与确认丢失的情况一样对M1进行重传,此时B对重新发送的M1进行丢弃,并重新发送确认报文。

在发送完一个分组后,必须暂时保留已发送的分组的副本,以备重发,分组和确认分组都必须要进行编号。超时计时器的重传时间应当比数据在分组传输的平均往返时间RTT要更长一些。

自动重传请求ARQ

通常A最终总是可以收到对所有发出的分组的确认,如果A总是重传分组却收不到确认就表明通信线路质量太差,不能进行通信。

使用确认和重传机制,我们就可以在不可靠的传输网络上实现可靠的通信,而这种可靠传输协议常称为自动重传请求ARQ,意思是重传的请求是自动进行的,接收方不需要请求发送方重传某个出错的分组。

信道利用率

在这里插入图片描述

TD是发送分组所需要的时间,等于分组长度除以数据率,TA是B发送确认分组所需要的时间,RTT是往返时间,停止等待协议的优点是简单,缺点是利用率太低。

流水线传输

在这里插入图片描述

为了提高传输效率,发送方可以不使用低效率的停止等待协议,而是采用流水线传输,如图所示,流水线传输就是发送方连续发送多个分组,不必每发完一个分组就停下来等接收方确认,这样可使信道上一直有数据不间断地传送,这样可以获得很高的信道利用率。

连续ARQ协议

发送方维持的发送窗口意义在于位于发送窗口内的分组都可连续地发送出去,而不需要等待对方的确认,这样信道利用率就提高了。

在这里插入图片描述

连续ARQ协议规定发送方每收到一个确认,就把发送窗口向前滑动一个分组的位置

接收方一般采用累计确认的方式,即不必对收到的分组逐个发送确认,而是对按需到达的最后一个分组发送确认,这样就表示到这个分组为止的所有分组都正确收到了。它的优点是确认丢失,即使确认丢失也不必重传,缺点是不能向发送方反映出接收方已经正确收到的所有分组的信息,如果发送方发送了前五个分组,而中间的第三个分组丢失了,这时接收方只能对前两个分组发出确认,发送方无法知道后面三个分组的下落,只好把后面的三个分组都再重传一次,这就叫==Go-back-N(回退N),表示需要再退回来重传已发送的N个分组,可见当通信质量不好的时候连续ARQ协议会带来负面的影响。

TCP可靠通信的具体实现

TCP连接的每一端都必须要设置两个窗口,一个发送窗口和一个接收窗口,TCP的可靠传输机制是用字节的序号来进行控制的,TCP所有的序号都是基于序号的,TCP两端的四个窗口是动态变化的,TCP的往返时间RTT也不是固定不变的,需要算法来估算合理的重传时间。

5.6 TCP可靠传输的实现

以字节为单位的滑动窗口

在这里插入图片描述

如图,假定A收到了B发来的确认报文段,其中窗口是20字节,而确认号是31,这表明B期望收到的下一个序号是31,而序号30之前的数据已经收到,根据这两个数据,A就构造出了自己的发送窗口。发送窗口表示在没有收到B的确认的情况下,A可以连续把窗口内的数据都发送出去,这个数值是20个字节,但在未收到确认之前着这20个字节都必须要暂时保留,以便在超时重传时使用,发送窗口里面的序号表示允许发送的序号,窗口越大发送方就能在得到对方确认前连续发送更多的数据,从而获得更高的传输效率。TCP标准强烈不赞成发送窗口前沿或向后收缩

在这里插入图片描述

A发送了11个字节的数据,没有收到任何确认信息,图中的指针P3-P2等于允许发送但尚未发送的字节数,又称可用窗口,p3-p1等于A的发送窗口,又称通知窗口,p2-p1等于已发送但尚未收到确认的字节数,A的发送窗口位置不变。

在这里插入图片描述

B的接收窗口中32,33没有按序到达,接收窗口内31-50是允许接收的序号,确认报文段的序号只能是31.

在这里插入图片描述

A收到新的确认号34,发送窗口向前滑动,指针P2不变,可用窗口增大为42-53,B的接收窗口37,38,40没有按序到达,只能暂存于接收窗口内.

A继续发送序号42-53,此时P2与P3指针重合,还未收到B的确认,可用窗口减为0,停止发送,纸质收到B的确认,否则启用超时重传,如A收到的确认序号落在窗口内,那么A就可以使窗口继续向前滑动并发送新的数据

发送缓存

缓存空间和序号空间都是有限的,并且都是循环使用的。

在这里插入图片描述

发送方的应用进程把字节流写入TCP的发送缓存,发送窗口通常只是发送缓存的一部分,发送缓存和发送窗口的后沿都是重合的,发送应用程序必须控制写入缓存的速率,否则可能造成缓存溢出

在这里插入图片描述

对于接收缓存,接收方的应用进程从TCP的接受缓存中读取字节流,收到检测有差错的分组就会被丢弃掉,接受应用程序如若未能来得及读取收到的数据,接收缓存就会被填满,就无法接受新的数据。反之,应用程序能够及时从接收缓存中读取收到的数据,接收窗口就会增大,但不能超过接收缓存的大小。

发送缓存与接收缓存的作用

在发送缓存里,暂存的信息是:

  • 发送应用程序传送给发送方TCP准备发送的数据
  • TCP已发出但尚未收到确认的数据

在接收缓存中,暂存的信息是:

  • 按序到达的但尚未被接受应用程序读取的数据
  • 没有按序到达的数据

注意事项:

  1. A的发送窗口并不总是和B的接收窗口一样大,因为它有一定时间的滞后
  2. TCP标准没有规定对不按序到达的数据如何处理,通常的处理方法是先临时储存在接收窗口中,等到字节流中所缺少的字节到达后再按序交付给上层的应用进程
  3. TCP要求接收方必须要有累计确认的功能,这样可以减少传输开销
接收方发送确认

接收方可以在合适的时候发送确认,也可以在自己有数据要发送时把确认信息捎带上,但需注意两点:

  • 接收方不应过分推迟发送确认,都则会造成发送方不必要的重传,确认推迟时间不能超过0.5s
  • 稍待确认实际上并不经常发生,因为大多数应用程序很少在两个方向上发送数据
超时重传时间的选择

TCP每发送一个报文段就对这报文段设置一次计数器,只要计时器时间到且没有收到确认就要重传这一报文段

如何设置超时值

若超时值太小就会造成不必要的重传,若超时值太大丢包恢复的时间又太长,直观上超时值应大于RTT,但RTT是变化的,而且往返时间的方差很大。由于TCP下层是互联网的环境,IP数据报的路由变化很大,因此传输层的往返时间RTT也会很大,所以我们要先对RTT进行估计。

RTT是变化的,需要实际测量某一个报文段的往返时间,也就是样本RTT。由于样本RTT波动很大,所以计算平均值更有意义。

TCP采用了一种自适用的算法,它记录一个报文段所发出的时间以及收到相应确认的时间,这两个时间之差就是报文往返时间RTT。

加权平均往返时间

TCP保留了RTT的加权平均往返时间RTTs,也称平滑的往返时间。第一次测到RTT样本时,RTTs的值就取为所测量到的RTT样本值,以后每测到一个RTT样本就按照公式重新计算一个RTTs。

在这里插入图片描述

在公式中α是在0到1之间,若α接近于0则表示RTT值更新较慢,若α接近于1则表示RTT值更新较快,推荐α的数值是八分之一,也就是0.125

超时重传时间RTO

RTO应该略大于上面所得出的加权平均往返时间,RTTd是RDD的偏差的加权平均值。

在这里插入图片描述

第一次测量时,RTT值取为到RTT样本值的一半,在以后的测量中使用以下公式计算加权平均的RTTd

在这里插入图片描述

这里的β是一个小于1的系数,推荐值是四分之一即0.25

TCP确认的二义性

考虑到可靠传输需要确认机制及RTT的测量,这又引出了TCP确认的二义性

在这里插入图片描述

发送方发送了报文段1没有收到确认报文,于是又发送了报文段2,此时收到了确认报文,但是无法辨别是发送给1还是给2的确认,这根本原因是TCP报文段使用了与原报文段相同的序号

Karn算法

当TCP重传一个报文段时,停止测量本次RTT样本,这样得出的加权平均平均往返时间RTTS和超时重传时间RTO比较准确。

但是当出现报文段的时延突然增大了很多的极端情况怎么办呢?根据Karn算法超时重传时间没有办法得到及时的更新,于是对Karn算法进行了修正

修正的Karn算法

报文段每重传一次就把RTO的值增大γ倍,系数γ的典型值是2,当不再发生报文段的重传时才根据报文段的往返时延更新平均往返时延RTT和超时重传时间RTO的数值

选择确认SACK

若收到的报文无差错只是未按照序号到达,中间还缺少一些序号的数组,那么能否设法传送缺少的数据而不传送已经到达接收方的数据呢?答案是可以的。

接收到的字节流序号不连续的情况下,TCP的接收方在接受对方发过来的数据字节流的序号发生了不连续的状态,结果就形成了一些不连续的字节块,前后不连续的每一个字节块都有两个边界,左边界和有边界。

在这里插入图片描述

第一个字节块的左边界L1等于1501,但是右边界R1却等于3001,左边界指出字节块第一个字节的序号,但右边界减一才是最后一个字节的序号,第二个字节块的左边界L2等于3501,但是右边界R2却等于4501,接收方收到了前面的字节流不连续的两个字节块,如果这些字节的序号都在接收窗口之内,那么接收方就先收下这些数据,但要把这些信息准确地告诉发送方,使发送方不要再重复发送这些已收到的数据。

RFC 2018的规定

在使用选择确认前,收发双方必须在建立TCP连接时,在TCP首部的选项中加上“允许SACK”的选项。

原首部中的“确认号字段”留用,以后在TCP报文段的首部中都增加了SACK选项,确认收到的不连续的字节块的边界。

首部选项的长度最多只能有40个字节,一个字节块的两个边界就要用到4*2=8个字节,因此在选项字段中最多只能指明4个字节块的边界信息,另外需要两个字节,一个字节指明是SACK选项,一个字节指明此选项占用的字节数。

5.7 TCP的流量控制

通常我们希望数据传输的快一些并且接收方能够来得及接受从而避免丢失,流量控制就是TCP发送端通过调节发送速率不会造成接收端缓存溢出也不会使得网络拥塞。

利用滑动窗口实现流量控制

在这里插入图片描述

A向B传送数据,在连接建立时,B告诉A我的接收窗口rwnd=400,A的发送窗口是100,A连续发送两个100的数据都正常确认了,201-300丢失了,此时B确认了201以前的报文并修改了接收窗口为300,A继续分两次发送了301-500,因为201-300丢失所以需要超时重传,此时B的接收窗口已满,B确认了501之前的信息后再次调整接收窗口为100,A再次发送501-600,B确认此次传输接收窗口置0,本次传输中B三次调整接收窗口大小。

零窗口特例下死锁的解决

B向A发送了0窗口的报文段后,B释放了部分接收缓存的空间,并且重新向A发送了rwnd=400的报文段,但此报文丢失而A并不知道,AB双方此时就互相等待对方的信息,陷入了一个死锁的状态。

为了解决这个问题,TCP为每一个连接设置有一个持续计时器,只要TCP连接一方收到了对方的零窗口通知就启动该持续计时器,若持续计时器设置的时间到期就发送一个零窗口的探测报文段,仅携带了一个字节的数据,而对方就在确认这个探测报文段的时候给出了当前的窗口值,若窗口仍然是0,则收到这个报文的一方就重新设置持续计时器,若窗口不是0则死锁的僵局就此打破。

TCP的传输效率

有三种机制控制TCP报文段发送时机

  • 第一种机制是TCP维持一个变量,它等于最大报文段长度MSS。只要缓存中存放的1数据达到MSS字节时,就组装成一个TCP报文段发送出去。
  • 第二种进制是由发送方的应用进程指明要求发送报文段,即TCP支持的推送操作
  • 第三种机制是发送方的一个计时器期限到了,这时就把当前已有的缓存数据装入报文段(但长度不能超过MSS)发送出去
发送方糊涂窗口综合征

发送方TCP每次收到一字节的数据后就发送。

这样,发送一个字节需要形成41字节长的IP数据报。若接收方确认,并且发送方要求回送这一字节,就需传送总长度为162字节共4个报文段,效率很低。

解决办法:使用Nagle算法

Nagle算法

若发送应用进程,把要发送的数据逐个送入到TCP的发送缓存,则发送方就把第一个字节先发送出去,把后面到达的数据都缓存起来;当发送方收到对第一个字节的确认后,再把发送缓存中的所有数据组装成一个报文段发送出去,同时继续对随后到达的数据进行缓存;只有在收到对前一个报文段的确认后,才继续发送下一个报文段;当数据发送较快而网络速率较慢时,用这样的方法可明显减少所用网络带宽;当到达的数据已到达发送窗口一半或报文段最大值时就立即发送一个报文段,这样可以提高网络的吞吐量。

接收方糊涂窗口综合征

当接收方的TCP缓冲区已满,接收方会向发送方发送窗口大小为0的报文。

若此时接收方的应用进程以交互方式每次只读取一个字节,于是接收方又发送窗口大小为一个字节的更新报文,发送方应邀发送一个字节大小的更新报文(IP数据报是41字节长),于是接收窗口又满了,如此循环往复。

解决方法:让接收方等待一段时间,使得或者接收缓存已有足够空间容纳一个最长的报文段,或者等到接收缓存已有一般空闲的空间。只要出现这两种情况之一,接收方就发出确认报文,并向发送方通知“当前的窗口大小”,同时发送方也不要发送太小的报文段。

TCP流量控制小结

TCP接收端:

  • 使用显式的窗口通告,告知发送方可用的缓存空间大小。
  • 在接收窗口较小时,推迟发送确认。
  • 仅当接收窗口显著增加时,通告新的窗口大小。

TCP发送端:

  • 使用Nagle算法确定发送时机
  • 使用接收窗口限制发送的数据量,已发送未确认的字节数不超过接收窗口的大小

5.8 TCP的拥塞控制

网络拥塞的现象实际上是短时网络中的分组太多,网络带宽不足,解决的措施是减少分组进入网络。

拥塞控制的一般原理

流量控制是限制发送速度,使之不超过接收端的处理能力,也就是接收端控制发送端,而拥塞控制是限制发送速度,使之不超过网络的处理能力,是一个全局性的问题。

网络拥塞产生的后果及原因

网络拥塞会造成:丢包(路由器缓存溢出)、分组延迟增大(链路接近满载)

大量的网络资源用于:重传丢失的分组、不必要地重传延迟过大的分组,转发最终被丢弃的分组

这样会使得网络的负荷很重,流量很大但网络吞吐量却很低,有效流量很少,根本原因是系统对资源的需求总和大于可用的资源

拥塞控制所起的作用

在这里插入图片描述

横坐标是输入负载,纵坐标是吞吐量,理想的拥塞控制是在吞吐量达到饱和前曲线以45°斜率的线性增长至饱和水平线,而实际上是随着负载的增加,网络吞吐量的增长率逐渐减小,已进入了轻度拥塞状态,继续增加负载网络吞吐量反而会下降,此时网络拥塞了,负载增加到一定程度,网络吞吐量会降为0,此时为死锁状态,实际拥塞控制曲线基本介乎于理想拥塞控制和无拥塞控制的曲线之间。

实践证明,拥塞控制是很难设计的,因为它是一个动态的问题。

丢包是网络拥塞的征兆,不是引起拥塞的原因

开环控制和闭环控制

开环控制方法就是在设计网络时事先将有关发生拥塞的因素考虑周到,力求网络在工作时不产生拥塞。

闭环控制方法是基于反馈环路的概念,有以下三种措施:

  • 监测网络系统,以便监测到拥塞在何时何处发生

  • 将拥塞发生的信息传送到可采用行动的地方

  • 调整网络系统的运行,以解决出现的问题

    监测网络拥塞的指标
    • 由于缺少缓存空间而被丢弃的分组的百分比
    • 平均队列长度
    • 超时重传的分组数
    • 平均分组时延
    • 分组时延的标准差

    上述这些指标的上升都标志着拥塞的增长

方法一监测拥塞发生时通知拥塞发生的分组客观上增加了网络的流量,同样会使网络更加拥塞;方法二在转发分组中增加相应的字段表示网络拥塞状态或周期性地发出探测分组

TCP的拥塞控制方法

TCP采用基于窗口的方法进行拥塞控制,该方法属于闭环控制方法。

TCP发送方维持一个拥塞窗口CWND,拥塞窗口的大小取决于网络的拥塞程度,网络通畅就增大拥塞窗口,提高网络利用率,当网络拥塞时减小拥塞窗口,缓解网络的压力。发送端利用拥塞窗口根据自己感知的网络拥塞程度来调整发送的数据量,所以发送窗口的大小不仅取决于接收方公告的接收窗口,还取决于网络的拥塞状况。

在这里插入图片描述

网络拥塞的判断依据

发送方利用丢包时间来感知拥塞,拥塞造成了丢包和分组延迟的增大,这两种情况对于发送端来说都是丢包,丢包事件反映在重传计时器超时或发送端接收到3个重复的确认信号ACK。

发送方通常使用拥塞窗口来限制已发送未确认的数据量,当感知到网络拥塞后,发送方通常是由CWND来随发送方感知的网络拥塞程度进行调整

TCP拥塞控制算法
  • 慢开始(slow-start)

    算法的思路:在新建连接上指数级增大cwnd,直至检测到丢包,此时会终止慢开始的阶段。它是希望通过迅速增大cwnd至可用的发送速率

    原有的规定是先把初始的拥塞窗口的cwnd值设为1至2个发送窗口的最大报文段SMSS,新规则是把初始的拥塞窗口cwnd值设置为不超过2-4个SMSS的数值,防止拥塞窗口cwnd增长过大引起网络拥塞,我们还需要设置一个状态变量慢开始门限ssthresh。

在这里插入图片描述

拥塞窗口CWND它的控制方法是在每收到一个对新的报文段的确认后,可以把拥塞窗口增加最多一个SMSS的数值,其中N是原先未被确认的但现在刚确认的报文段的字节数,所以当N小于SMSS的时候,拥塞窗口每次的增加量要小于SMSS。用这样的方法逐渐增大发送方的拥塞窗口,可以使分组注入到网络的速率更加合理。

在这里插入图片描述

发送方每收到一个对新报文段的确认(重传不计算在内),就使得cwnd加1,此处的1是一个单位也就是一个报文段,每经过一个RTT将cwnd加倍。

为了防止拥塞窗口cwnd增长过快,还要再设置慢开始门限状态变量ssthresh,它的用法如下:

  • 当cwnd<ssthresh时,使用慢开始算法

  • 当cwnd>ssthresh时,停止使用慢开始算法而改用拥塞避免算法

  • 当cwnd=ssthresh时,既可使用慢开始算法,也可以使用拥塞避免算法

  • 拥塞避免(congestion avoidance)

    思路:让拥塞窗口cwnd缓慢增大,即每经过一个往返时间RTT就把发送方的拥塞窗口cwnd加1,使拥塞窗口cwnd按线性规律缓慢增长。

    在拥塞避免阶段就有“加法增大”的特点,比慢开始算法的拥塞窗口增长速率缓慢得多。

  • 在网络拥塞时的处理:

    只要发送方判断网络出现拥塞(重传定时器超时):

    • ssthresh=max(cwnd/2,2)
    • cwnd=1
    • 执行慢开始算法
  • 慢开始和拥塞避免算法的实现举例

在这里插入图片描述

初始cwnd=1,在cwnd<ssthresh的情况下,每经过一个伦茨cwnd就指数增长一次,直到cwnd=ssthresh时,实施拥塞避免算法,cwnd呈线性增长,随着传输轮次的增长每次自增1,当网络拥塞时cwnd变为1,ssthresh降为8,重新一阶段与二阶段,当收到连续三个ACK时,进行快重传算法。

  • 快重传(fast retransmit)

    快重传算法可以让发送方尽早直到发生了个别报文段的丢失。

    快重传算法并非取消重传计时器,而是在某些情况下可更早地重传丢失的报文段。

    快重传算法首先要求接收方不要等到自己发送数据时才进行捎带确认,而是要立即发送确认,即使收到了失去的报文段也要立即发出对已收到的报文段的重复确认,发送方只要一连收到三个重复的确认,就知道接收方确实没有收到报文段,因而应当立即进行重传也就是快重传,这样就不会出现超时,发送方也不会误认为网络拥塞。

在这里插入图片描述

  • 快恢复(fast recovery)

    当发送端收到连续三个重复的确认时,由于发送方现在认为网络很可能没有发生拥塞,因此现在不执行慢开始算法,而是执行快恢复算法FR算法:

    • 慢开始门限ssthresh=当前拥塞窗口cwnd/2
    • 新拥塞窗口cwnd=慢开始门限ssthresh
    • 开始执行拥塞避免算法,使拥塞窗口缓慢地线性增大

在这里插入图片描述

如图四收到了3个ACK确认,此时执行快恢复算法。

拥塞窗口的调节策略:AIMD

在这里插入图片描述

AI指的是加法增大,若无丢包,每经过一个RTT将cwnd增大一个MSS,直到检测到丢包,目的是缓慢增大发送速率。MD指的是乘法减小,发送发检测超时或三个重复确认时,把门限值设为当前拥塞窗口的一半,目的是迅速减小发送速率从,缓解网络压力。

TCP拥塞控制流程图

在这里插入图片描述

发送窗口的上限值

在这里插入图片描述

发送窗口的上限值应取为接收方窗口rwnd和拥塞窗口cwnd中较小的一个。

5.9 TCP的传输连接管理

传输连接的三个阶段
  • 连接建立(握手)
  • 数据传送
  • 连接释放(放手)
连接建立前的准备
  1. 要使每一方确知对方的存在
  2. 要允许双方协商一些参数
  3. 能够对传输实体的资源进行分配

TCP连接建立采用客户服务器方式,主动发起连接建立的进程叫做客户,被动连接的进程叫做客户

TCP的三次握手

在这里插入图片描述


SAP-Garson
原文链接:https://blog.csdn.net/m0_53602804/article/details/125008764

文章来自于网络,如果侵犯了您的权益,请联系站长删除!

上一篇:选择屏幕abap开发
下一篇:计算机网络知识点总结提纲(谢希仁)
评论列表

发表评论

评论内容
昵称:
关联文章

计算机网络应用之外
计算机网络——网络
计算机网络应用
计算机网络(自顶向下)——应用
计算机网络第二章 应用
计算机网络
计算机网络学习笔记》-01章 计算机网络体系结构、02章 物理
计算机网络
计算机网络
计算机网络
计算机网络复习重点详细整理(第1章 概述、第2章 物理、3章 数据链路、第4章 网络、第5章 运输、第6章 应用
计算机网络
计算机网络第五章传输
计算机网络--传输正文
转载-计算机网络原理
计算机网络【王道】
计算机网络原理知识
计算机网络原理 笔记
计算机网络期末复习】
计算机网络笔记(收藏版)

热门标签
CBP 问题处理 # ALV # 【SAP | 前世今生】 # 1.moonsec-2020-[持续更新] # ABAP # ABAP-接口 # abap学习路线 # ALV # AVRCP协议 # bdc # BMS项目实战记录 # BW # ClickHouse # crud 框架 (mybatis-plus/ jpa等) # dynpro # ERP # JCo3.0 # PyRFC # Python数据分析与机器学习 # SAP ABAP # SAP FICO # SAP FTP # SAP HANA # SAP MM # SAP-Restful # SAP消息号A类 # sap应用技巧 # 工具使用 # 数据库 # 网安神器篇 # 优化篇 # 语法 # 筑基08:渗透测试综合实验 (path.Combinee(rootDir, "nwrfcsdk", "icuuc50")) ,ides .NET .NET 6 .NET Core .NET Remoting和WebServices .net(C#) .NET/C# .netcore .NET技术 .NET连接SAP .UD选择集 /h /ui2/cl_json @click.prevent _E8_AE_BA_E6_96_87 ~ { ABAP} ~ ~{一起学ABAP}~ “SAP.Middleware.Connector.RfcConfigParameters”的类型初 《ABAP专栏》 《SAP ABAP基础通关百宝书》【从入门到精通】 《测绘程序设计精品案例合集》 《计算机网络自顶向下方法》学习笔记 【Azure 应用服务】 【SAP】ABAP-CDSVIEW 【速成之路】SQLserver 0.0-SAP BW学习 001-计算机基础 01检验类型 1 10.Abap 10.ABAP-CTS 102 1024程序员节 103 1155服务器装系统 12.SAP-SKILL 122 13台根服务器位置 15行 1809 1909 1核1g1m服务器相当于什么性能 2003服务器修改ftp密码 2010 2012服务器系统安装数据库 2012服务器系统安装数据库吗 2018年终总结 2019 2019java专科 2019年终总结之SAP项目实践篇 2022跨年烟花代码 2022年 2023云数据库技术沙龙 2023云数据库技术沙龙 “MySQL x ClickHouse” 专场 2-step picking 2-step拣配 2月一次的flyback 321 32位服务器系统安装教程 3D 40 408 408——计算机网络 408学习笔记 40位 478g+ 虚拟服务器 4hana 545移动类型 5G 6.824 60.技术开发 6------SAP 701 711 740新语法 7------SAP A a2dp AA AB01 ABAP ABAP 语法 ABAP AES加密解密 ABAP ALV abap alv 更改数据 abap alv新增行数据 ABAP AMDP abap bapi ABAP BAPI分享 ABAP BASE64加解密 ABAP BC400 ABAP CDS ABAP checkbox ABAP Dialog开发 ABAP DOI ABAP EXCEL ABAP Expression ABAP GUID ABAP Handy program abap hr ABAP IDOC abap java ABAP JSON ABAP JSON大小写 ABAP JSON驼峰 abap me21n增强 abap mm后台表 ABAP Modify 的用法 ABAP New ABAP REST API ABAP REST JSON ABAP RSA PSE ABAP RSA 加密解密 ABAP SAP ABAP SESSION传递 ABAP SMARTFORMS 默认 WORD 编辑 ABAP Table ABAP Toolbar ABAP tools ABAP wait abap xml 日期格式 ABAP 报错 ABAP 笔记 ABAP 常见错误 ABAP 程序开发 abap 程序模板 ABAP 初级技术 abap 创建出口历程 abap 调用java abap 发送json报文 ABAP 关键字 ABAP 基础知识 ABAP 技巧 ABAP 接口 ABAP 开发 ABAP 乱乱记 ABAP 内表 ABAP 内表 排序 abap 内表 条件查找 ABAP 配置相关 ABAP 批量创建货源清单 ABAP 屏幕开发激活显示 ABAP 人事模块 abap 上传excel数字去除千分符 ABAP 实用程序记录 ABAP 事务代码 ABAP 数据字典 ABAP 替换 ABAP 替换字符 ABAP 条件断点 DEBUG ABAP 未按大小排序 ABAP 销售模块 ABAP 新语法 ABAP 选择屏幕 ABAP 学习 ABAP 学习笔记 ABAP 一些常用技巧 ABAP 语法备忘 ABAP 增强 abap 指定长度服务器上传数据 ABAP 中级技术 abap 转换成字符串 ABAP 字符查找 abap 字符串操作 ABAP  屏幕流 ABAP 开发模块 ABAP/4 ABAP_01 ABAP_02 ABAP_BASIS ABAP_FUNCTION MODULE ABAP_OTHERS ABAP_SYNTAX ABAP_各路小技能 ABAP2XLSX ABAP4 ABAP7.50 ABAP740新语法 abapdata定义方法 abaper ABAP-FICO ABAP报表程序结构框架 ABAP报错 abap捕获当前功能键sy ABAP查找代码块 ABAP常用代码段 ABAP程序例子 ABAP初级 ABAP创建搜索帮助 ABAP打印 ABAP的BAPI ABAP调优 LOOP ABAP定时job abap动态变量 ABAP动态修改屏幕 abap读取sap服务器文件名 abap对接外围系统 abap分页 ABAP工具 ABAP关键字 ABAP函数 abap获取日期 ABAP基础 abap基础入门 ABAP基础语法 ABAP基础知识 ABAP技能树 ABAP技巧之游标 ABAP技术 abap技术栈 ABAP加密 ABAP-接口 ABAP开发 ABAP开发回顾总结 ABAP开发随便记录 ABAP开发学习 ABAP开发语言 abap开发注释快捷键 ABAP开源项目清单 ABAP快捷键 abap连接mysql ABAP模块 ABAP内表汇总 abap判断包含字符当中包含小数点 ABAP屏幕相关 ABAP其他增强 ABAP入门 ABAP时间戳 ABAP实例分享 ABAP使用技巧 abap视图字段限制 ABAP数据库删除 abap数据类型转换 ABAP四代增强 ABAP四舍五入 ABAP随笔 ABAP提取汉字 abap文件上传 abap文件下载导出 ABAP问题记录 abap系列 ABAP相关 ABAP小工具 ABAP小记 ABAP小技巧 ABAP校验时间日期格式 abap新语法 ABAP新语法汇总 ABAP新语法收集整理 ABAP修改删除数据 ABAP选择屏幕 ABAP选择屏幕开发 ABAP学习 ABAP学习记录 ABAP学习实用网址 abap语法 ABAP语法优化 ABAP语言 ABAP增强 ABAP知识点总结 ABAP指针 ABAP中RANGES的用法 ABAP中的同步和异步调用 abap字符串值变量 Abaqus ABLDT ABLDT_OI ABMA AC_DOCUMENT Account Group ACDOCA Activate ADD NEW FONT ADO.NET Adobe Form ADT AES AFAB/AFABN AFAMA AG1280 AirByte AJAB ajax AL11 ALE all in one Allocation Rule ALV ALV List ALV SEL_MODE alv 刷新 ALV报表 ALV横列单元格颜色 ALV模板 ALV鼠标右键 alv下拉 alv显示基础 ALV知识点 AMDP amp AMS系列产品 android android studio Android9设备打开WIFI热点 android不同版本风格 android模拟器 android热点流程 Android网络接入框架分析 Android系统开发 Angular angular.js ANSYS Ant Anywhere数据库监控 AO25 aof apache Apache DolphinScheduler API api document APM APO APO函数 APO开发 app App Service for Window application app测试 app服务器设计文档 app服务器数据库文件夹下 aps APT Architecture Archiving Area Menu arm arraylist ar路由器的虚拟服务器 ASAP asp.net asp.net MVC Assortment ATO Attribute AuCs authorization Automatic AutomaticScrg automation AVForamt AW01N Awesome Java awk awr AWS AWS SAP AWS SAP认证 aws认证 AWS战报 Azure Azure Storage B2B增长 Backflush BADI BANK Bank Account BAPI bapi sap 创建物料 BASE base64 bash BASIS Basis Consultant Questionnaire BASIS基础知识 BASIS模块 BASIS系统配置及操作 BASIS中遇到的问题 batch Batch Data Conversion BD87 BDC bdv021-clickHouse Beginning WF 4.0翻译 BGP路由器协议排错 bgRFC BI BI+BW+BO仓库管理 big data BigData ble bluetooth BO BOBF bom bom成本分析模型 bom更改编号 sap books bookv001——navigationing Boost完整实战教程 bootstrap BOPF BP BPC BPC开发 BP共用编码 BP和客商关联后台表 BP-客商 BP配置 bp配置 sap BP文档 break BRF+ BRFplus BSP BSTAT=U bt BTE BTEs BTP BUG BUG问题解决 BulkStorage BurpSuite插件 Business Suite BusinessPartner BUT000 BW BW/4 HANA BW4 bw4/ hana BW4/HANA BW4HANA BW报表使用操作手册 BW技术 BW建模 BW实施 ByteDance C# C# IO相关 C# sap集成 C# WPF C# 编程 C# 窗体应用 C# 读取txt文本数据 C# 读取文本每行每列数据 C# Stopwatch C#Winform C#编程 C#高级 C#格式转化 C#基础 C#基础知识 C#教程 C#入门经典 C#算法演义 c#学习 C#知识点笔记 C/4 C/4HANA c/c++ C++ C4C CA CS CO cad项目数据库服务器 Calculation CapacityCheck case when Cash Management cast CA周记 CBS CCNP题库 CDISC CDS CDS View CDS Views CDS视图 Cell Popin centos certificate CertificateType Change Log ChatGPT CHECK_ACCESS_KEYS CHECKBOX CheckBoxGroup Check按钮 chrome CI & CD CIO ci上传文件到不同服务器 cj20n sap 报错未知列的名称 CKM3 CKMLCP CL_GUI_ALV_GRID cl_ukm_facade Class ClickHouse clickhouse数据库 Client Copy CLIENTCOPY Cloud Cloud Native Cloud Platform CloudFoundry CMS CMU15-445 (Fall 2019) CO CO01 co88 sap 实际结算 COCA单词表 COCA高频单词 COCA核心词汇 COCA英语分频词汇 COCA英语语料库 CO-CCA CODE COGI COKEY Commerce Commvault Commvault技术知识点 Configuration connect_by_path ContentServer continue Control ControlQuantity CONV Conversion COPA COPC COPY来源 Cording Block Core Data Service(CDS View) CO控制 CO配置 CPI CPI技术小知识 CPLD CPM cpu CRM CRM系统 crm系统服务器要求 cross warehouse Crystal Reports CS CSharp CSI SAP2000 CSI SAP2000安装教程 css css3 CSV认证 CTCM ctf CTF-MISC CTF-Misc-wp CTS Customers CVI_CUST_LINK CVI_VEND_LINK C和C++Everything教程 C语言 C语言程序设计 Dapr Data Services Data sources database datagridview dataTable交换列 dataTable列操作 DATAX date DateNavigator DB DB LUW DB2 dba DBA 实战系列 DBCO DD08V DDIC DDS算法 debian debian云服务器项目 Debug debug方法 DEBUG改SAP表数据 Decal Decline demo DEMO程序 des DESADV DESTINATION DestinationProvider devexpress v22.1 devops DevSecOps DIalog Dictionary Encoding Diff discuz服务器系统 disk dms dns怎么修改默认服务器 docker docker容器 dom dont show this message again Driver E5调用API E5开发者 E5续订 EBS Ecc ECC_常用标准函数标准方法 ECC6 ECC6是否支持linux7 echarts eclips Eclipse eclipse报错 ECM ecmascript ECM企业管理 ecn EDI EDIT Ehancement EHP EHP4 EHP8 elasticsearch elementui ELT emqx English Enhancement enhancement MBCF0007 Enterprise Servers and Development Entity Linking Enumeration EOS空项目添加服务器 EPIC EPIC_PROC epoll EPPM erp erp oracle数据库连接失败 ERP 增强 erp5 ERP-SAP erp服务器系统分区多大 ERP供应链 ERP实施 erp无线架设服务器 ERP系统 erp系统 服务器在哪里的 ERP项目 ERP小讲堂 es6 esb ESP8266 esri ESXI ETBAS二次开发 eth节点计划服务器维护 ETL etl工程师 ETL工具 ETL开发规范 ETL社区版 ETL数据集成 ETO events EWM EWM模块 Example examples EXCEL Excel服务器数据库修改 Exception EXCLUDING express F.13 F-02 F110 F5080 FAA_CMP_LDT FAGL_FC_VAL FAGLGVTR FB05 FBB1 FBL1N ffmpeg FI FI01 FI12 FI12_HBANK FI-AA FICO fico bapi FICO Integration FICO-AA FICO模块 FICO-年结 FICO问题点 FICO-月结 FICO增强 field-symbols fifaol服务器不稳定 file Fine finereport FINSC_LEDGER Fiori fiori 2.0 fiori app configuration fiori launchpad Fiori-Web FIORI配置 Fixed point arithmetic FixedStorageBin FI财务 FI金额 FI配置 FLCU00 flex FLVN00 FM Focus FONT FONTS For FOR ALL ENTRIES IN FPGA fpga开发 FPGA项目例子总结 FPM framework freemarker Freight标签页 freshman to ABAP FS15会计科目扩充 FTP ftp 网页如何上传到服务器 ftp传输文件到其他服务器 ftp服务器存放文档 ftp服务器端文件大小设置 ftp服务器设置上文件大小 ftp服务器生成xml文件 FTP服务器收不到传送的文件 ftp服务器数据存放位置 ftp服务器文件路径怎么写 ftp服务器限制文件大小 function Function ALV Function Modules functional programming Functions Game Gartner Gateway GATEWAY100 GBase gdal GeneXus GeneXus 2021 gentoo 安装php7 GeoTools GET Parameter GIS Git github Gizmos gnu go google Google 微软 亚马逊 阿里 腾讯 字节跳动面试总结 GR GR Date GR/IR GR/IR余额清单 GRaph Process groovy GroupNumber gui GUI STATUS gui740的消息服务器 GUID GW100 H3c 服务器bmc管理芯片 h3c服务器 raid 型号 h3虚拟服务器 h5修改服务器数据 hadoop HAHA SQL halcon HANA HANA Advanced Data Modeling HANA Advanced Data Modeling 读书笔记 HANA DB HANA DBA hana s4 服务器 HANA SQL hana sql mysql oracle HANA SQLScript HANA Studio HANA VIEW hana vs oracle hana 表空间 hana 查看表字段 HANA 导入数据 hana 服务器性能测试 HANA Studio HANA安装 hana查询去重 HANA常用函数 hana抽数到mysql hana的date对应oracle日期 hana服务器销售资质 HANA进阶学习 hana生产系统服务器 HANA实战 hana数据库 hana数据库 字段长度 hana数据库导入mysql hana数据库导入到oracle hana数据库服务器文件丢失 hana数据库教程php hana数据库连接mysql hana数据库连接oracle hana数据库与mysql HANA信息建模 Hana性能优化 hana修改字段 HANA学习 hana语法 HANA在线日志 Hashid hash-identifier hbase HCM HCP HDI Container HEC hibernate hierarchy Hints his系统服务器数据存在哪里 His系统数据库服务器关系 hive HNUST湖南科技大学计科专业考试复习资料 hp380G5服务器系统安装 hp服务器产品文档 HR HR模块 HR薪资发放过账 HR增强 HTAP HTAP for MySQL html html5 HTML5/CSS/Bootstrap http http://95u.free.fr/index.php httpcompnents https https://mp.weixin.qq.com/s/keb HU Hybris I/F IBAN IBP ICF ID ide idea idea中项目如何上传到服务器中 IDES IDoc idoc java IDOC技术 IDT ifm_research_notes IFRS16 iis ftp服务器文件大小 ijkplayer IM image imessage IMG子菜单 import IM层面 Include Informatica inspection point intellij idea Inter-company Intergration Internal table Interview INVOIC ios iot IP ipad协议 ipfs存储服务器销售 IQ02 IQ09 IR IRPA ISO IS-RETAIL issue IT IT - Linux ITS ityangjia IT技术 IT企划 IT生涯 IT项目与团队 IT养家 j2ee J3RCALD jar Java java b1 b1 be a9 Java Connector java jco sap 重连 JAVA PI PO SOAP JAVA PO SOAP java sap总账凭证接口 java webservice调用sap Java Why java 访问hana java 薪水完爆abap JavaScript javaSE基础篇 Java并发 Java调用SAP java调用sap接口 JAVA调用SAP接口地址 java对接sap java更换sap配置不生效 Java工具类 JAVA工作日常 java函数调用报错 java获取hana接口数据 java获取sap数据 java开发 java连接hana java连接sap Java连接sap无明显报错信息 java实战 java项目所需服务器 JAVA学习 java云服务器怎么上传文件大小 java怎么安装apple JAVA重点部分的笔记 java转sap hybris方向 JCo jco.client.saprouter JCo3 JCO连接 jdbc JDBC连接 JDK jira JOC Join JOIN 内表 jpa jquery js json json 服务器 文件 js基础笔记 junit JVM jwt K3 kafka KANBAN KE24 kernel kettle KEY kohana KP06与KP26 KSU5 KSV5 kubernetes labview lambda lamp LAN leetcode LEFT DELETING LEADING LENGTH Leonardo less linq Linux linux 64位vcs linux hana linux hana 版本查询 linux 安装sap linux 划分两个VDisk linux 命令是 的sap linux64 solvers Linux查看hana数据库进程 linux登录Hana数据库 linux调用rfc函数配置 Linux开发分享 Linux启动SAP服务 linux如何查看MBFE版本信息 Linux网络 linux系统的服务器怎么重启 linux相关 linux中停sap服务 lisp list LISTING Lock Logic LogicSystem lpfs存储服务器怎样维护 LQ02 LSETBF01 LSMW LT23 LT41 LT42 LT45 LTMC LTMC和LSMW等 LTMOM LX03 LX09 LX10 LX11 LX12 LX29 LX39 M_MSEG_LGO mac mac os x macos Mail makefile Manage Banks manager mariadb Markdown mass MASTER DATA MAST表 matdoc Material Group Material Ledger MaterialSpec matplotlib matrix maven MaxDB MaxWeight MB04 MB51清单格式 MB5B MB5M MBSM MBST MBST冲销 mcu md01和md02区别 MD04 MD04中例外信息30 MDBS MDG MDG 2021 MDG 2022 MDG BP MDG顾问 MDG项目 ME me15 me21nme22nme23n增强ME_ ME22N ME57界面看到的供应源跟Source List主数据不一致 MEBV memcached MES Mesh Message Messages MetaERP Method List MF47和COGI MI10 MIBC microsoft Microsoft Access Microsoft Azure Microsoft365 E5 MIGO MIGO 241 migo 311 MIGO+201 migo初始化库存 s4 MIGO事务代码 MIGO增强 MIGO子功能 migration Migration cock MIRO MIRO发票校验 MIRO发票校验多采购订单选择 mkpf ml MM mm bapi MM/SD mm17 MM41创建的商品主数据 MM41创建商品主数据 MM60 MMBE MMPV MMSC MM-报表功能开发 MM-采购管理 MM-采购审批 MM常用BAPI MM-定价过程 MM更改物料类型 MM顾问 MM教程 MM模块 MM配置 MM物料管理 mobile MODIFY table MOVE TO movement type mp3 MP38 MPN MPN物料的采购初探 mps MQTT mqtt服务器数据存储位置 mqtt协议库服务器 MRP MRP标识 MRP处理代码 MRP过程 MRP组 MS SQL mseg mssql MTE MTO MTO/MTS MTS MTS/MTO/ATO/ETO MTS/MTO/ETO Mule ESB 开发 Mule ESB 社区版 实施 Mule ESB 实施 Mule ESB开发 Mule ESB社区版实施 Mule ESB实施 MultipleBOM MultipleSpecifications MultipleSpecs Muxer mvc MWSI mybatis mybatis-plus myeclipse mysql mysql 1060指定的服务未安装 mysql hana数据同步 mysql版本情况 Mysql等数据库 MySQL高级 mysql和hana mysql数据库停库停不下来 MZ SAP FICO精讲视频 MZ SAP那些事 nagios name_mappings Naming Convention NAST nas怎么备份服务器文件夹 NativeLibrary.Load nat服务器性能 nc 二次开发 NCO NCO3.0 nc文件服务器 数据库文件 NDSS NetSuite 案例 NetSuite新闻 Netweaver network New NineData nlp Node node.js nodejs nokia NoSQL NOTE npm null Number Range numbers numpy NW751 nwa key-storage NWBC NX文档服务器 o365 OA OAAQ OABL oa办公 OB07 OB08 OB13 OB52 OB62 OB74 OBBH OBJK ObjType OBR1 OBR2 OBR3 OBYC-DIF OBYC-PRD oceanbase ocx OData odbc odoo office OI-题解 olap OMIR OMSJ OMSY OMX6 Onenote_DB Onenote_Others onetime vendor On-premise OO OOALV OOALV进阶 OOALV增删改查 OPEN open item OPEN SQL Open Storage Opengauss openGauss核心技术 OPENSAP UI5 扫盲 OPENSQL Openui5 openwrt系统安装到云服务器异常 ops$ oracle数据库用户 ora 01005 linux Oracle oracle 60401 oracle clob minus oracle dba Oracle EBS oracle e-business suite 下载 Oracle ERP oracle ftp 文件乱码 oracle hana 字段长度 oracle logon 乱码 oracle nid ora 24324 oracle sap 备份 oracle sap金蝶 oracle set newpage Oracle Tuning oracle 抽数据到 hana oracle 创建一揽子协议 oracle 打开数据库三步 oracle 应用系统 oracle创建服务出错1073 oracle和netsuite培训 Oracle数据库 oracle数据库恢复版本不一致 oracle与用友的差别 OS other Others Outbound Overtime p2p PA PaaS PACKAGE SIZE Pandas parallel Parameter Partner payment Payment method Payment Terms PA认证 PB00 PBXX PC PC00_M99_CIPE PCo PCP0 PC安装服务器系统 PDA pdf performance PE安装服务器系统6 PFCG PGI Pharos(小白路标) php php功能函数 PHP开发erp功能模块 php连接sap hana数据库 php清理服务器文件大小 php与sap系统 php转行自学java PhysicalSamples PI PI/PO ping pip PIPO PIR PI接口常见问题处理 pi节点虚拟服务器怎么弄 Plant Group PLG PLG Application跳转传参 plm PLSQL PLSQL13 PLSQL弹出框 PM pmp pms PMW PO po 价格条件表 PO&amp poi PolarDB Popup Port Portal POS POS Interface PostgreSQL posting key postman Postman 接口测试 Power BI PowerBI PowerBuilder Powered by 金山文档 powerpoint PowerQuery&amp PO接口常见问题处理 PO中基于GR的IV清单 PP PP &amp PP Module PPM PP模块 pp模块常用表 sap PP生产订单 PP生产过程 PR PREPACK Pricing Print PROCEDURE Product Hierarchy project management PS PS模块 pu Purchase Purchase Order History Categor pyautogui pycharm python Python Golang 人工智能 机器学习 图像处理 Python场景积累 python获取sap数据 Python基础 PYTHON接口开发 python连接sap接口 python能连sap吗 python学习 python与sap QA08 QA11 QC51 QE01 QE23 QM QM Control Key QM采购质量管理 QM质量管理 QP01 qRFC QS28 QS61 qt qt5 Quality Certificate Quant QUERY R3 rabbitmq rac 服务器 修改时间 RadioButtonGroup Random react react.js READ receive idoc redhat redis REDUCE Reflex WMS REM REP Report ReRAM rest REST ADAPTER RESTful RETAIL ReturnDelivery RFC rfcv函数实现 RFC查询SAP数据库 rfc方式的集成 sap RFC封装WEBService RFC函数 rfc垮端口 sap RFSEPA02 RIGHT DELETING TRAILING Rollout project Routing RPA RPA机器人 RPA机器人流程自动化 RPA魔力象限 RPA资讯 RPC0 RSA RSA Encryption RSA PRIVATE KEY RSS RTMP协议云服务器 runtime rust RV_ORDER_FLOW RWBE r语言 R语言入门课 S/4 S/4 HANA S/4 HANA 1809 S/4HANA S/4HANA 2020 S/4HANA 2021 S/4HANA 2022 S/4HANA迁移 S/4补0 去0 s_alr_87013127 S_ALR_87013611 S_ALR_870136XX s2k S4 S4 CLOUD/ FIORI S4 CRM S4 HANA s4 hana ecc S4 HANA 功能变化清单 S4 HANA数据迁移工具 S4 HAVA S4 Kernel S4CRM S4H PA S4HANA S4HANA Conversion S4HC S4HC产品相关 S4新表ACDOCA S4新型数据导入工具 saas SAC Sales Area SALES PRICE SampleSize SAP sap abap SAP ABAP学习 SAP Basis SAP / 后台配置 SAP 1809 sap 46c oracle 从unix 迁移至 windows SAP ABAP SAP ABAP  Excel模板上传及Excel数据批导 SAP ABAP AES128 SAP ABAP AES256 SAP ABAP for HANA SAP ABAP HANA SAP ABAP Runtime Error SAP ABAP SHA512 SAP ABAP 编程教程 SAP ABAP 并发 SAP ABAP 核心代码 SAP ABAP 基础 学习 SAP ABAP 李斌的分享笔记本 SAP ABAP 问题整理 SAP ABAP 学习资料 SAP ABAP 增强 SAP ABAP(总结) sap abap接口篇 SAP ABAP开发 sap abap开发从入门到精通 SAP ABAP开发实战——从入门到精通 SAP ABAP开发问题记录 SAP ABAP开发专栏 SAP ABAP零碎知识 SAP ABAP浅尝截止 SAP ABAP实例大全 SAP ABAP性能优化 SAP ABAP增强 SAP ABAP自学教程 SAP Adapter SAP Adobe Form SAP AES加密解密 SAP ALE SAP ALV SAP Analytics Cloud sap and oracle SAP APO SAP APO 介绍 SAP Ariba SAP ARM SAP B1 SAP B1 License Serve SAP B1原创 SAP BAPI SAP Basis SAP Basis Tips SAP Basis 系统学习 SAP Basis&amp SAP BDC SAP BDC MODE SAP BDC模式 SAP BI on HANA SAP BO SAP BOBF/FPM/WEBDYNPRO SAP BOBJ SAP BOM反查 SAP BOM记录查询 SAP BOM修改记录 SAP BP SAP BTP SAP business one SAP Business One 二次开 SAP BW sap bw、echar、smart bi sap bw4 sap C/4HANA SAP C4C SAP CAR sap cds view SAP client2.0 download SAP Cloud SAP Cloud Platform SAP Cloud Platform Cockpit SAP CO SAP Consultancy SAP CP SAP CPI SAP CRM sap crm button SAP Data Service sap dbco访问oracle SAP DEMO数据增加 SAP Dialog调用 SAP Dialog开发 SAP Dialog学习 SAP ECC SAP ECC6 SAP ECC6 / CO SAP ECC6 / FI SAP EDI SAP EPIC SAP ERP SAP ERP系统 SAP EWM SAP excel数据导入 SAP FI sap fi  凭证跳号 SAP FI-AA SAP FICO SAP FICO 报错处理办法 SAP FICO 开发说明书03(源代码仅做参考) SAP FICO 系统配置 SAP FICO 资料免费分享 SAP FICO开发说明书_01(源代码仅作参考) SAP FICO开发说明书_02(源代码仅作参考) SAP Fiori SAP Fiori & SAP(open) UI5 SAP Fiori 开发实践 SAP FM SAP freelancer SAP Frori SAP Gateway SAP GUI sap gui script SAP GUI 登录不需要密码 SAP GUI 界面 SAP GUI 快捷方式密码 SAP GUI 密码保存 SAP GUI 免密登录 SAP GUI 主题 SAP GUI 主题切换 SAP GUI+WEBGUI SAP GUI界面切换 SAP GUI密码设定 SAP GUI切换 SAP HAN SAP HANA SAP HANA Hint sap hana oracle exadata SAP HANA SDI sap hana 迁移 oracle SAP HANA 数据库学习 SAP HANA  上云 SAP HANA2.0 SAP HANA总结 SAP HCM SAP HCM学习 SAP HR sap http SAP IBP SAP IDOC sap idoc java SAP INBOX SAP IRPA SAP ISSUE sap java客户端 sap java乱码 SAP JCO NCO SAP JCO 负载均衡 SAP License sap linux客户端 sap linux系统安装教程 sap linux下配置文件 SAP List Viewer(ALV) SAP LOGON SAP LSMW SAP LSMW教程 SAP LUW SAP MASS SAP material classification SAP MDG SAP ME sap me21n增强 sap me22n增强 sap me23n增强 sap mes java SAP MII SAP MM SAP MM BAPI SAP MM 对于MRKO事务代码的几点优化建议 SAP MM 后台配置 SAP MM 特殊库存之T库存初探 SAP MM 小贴士 SAP MM/SD 业务相关 SAP MM06 SAP MM基础配置 SAP MM模块面试 SAP MRP默认值 SAP MRP默认值设置 SAP MRP配置 sap mysql SAP Native SQL SAP Nco 3 Connector 连接SAP 并接收数据 SAP NetWeaver sap netweaver 7.02 sap netweaver application server java SAP NetWeaver RFC library SAP NWBC sap nwds as java SAP ODATA SAP OData 开发实战教程 - 从入门到提高 sap oracle client SAP PA证书 SAP PI SAP PI - 同步 vs. 异步 SAP PI PO 接口调用 SAP PI PO 接口问题 SAP PI SSL证书 SAP PI&amp SAP PI/PO SAP PI/PO 系统集成 SAP PI架构 SAP PLM SAP PM SAP PM 工厂维护 SAP PO SAP PO PI 系统接口集成 SAP PO SSL证书 SAP PO 导入SSL证书 SAP PO/PI接口 sap powerdesigner SAP PO安装 SAP PP SAP project SAP PS SAP QM sap query SAP R/3 SAP R3 SAP R3 ABAP4 SAP R3 主流系统EAI接口技术剖析 sap r3的lanuage 代码 SAP REST API SAP REST JSON SAP Retail SAP RFC SAP RFC 与 Web有啥区别 SAP ROUTRE SAP RSA 加密解密 SAP S/4 SAP S/4 HANA SAP S/4 HANA Cloud Sap S/4 Hana 和Sap ERP有什么不同 SAP S/4 HANA新变化-FI数据模型 SAP S/4 HANA新变化-MM物料管理 SAP S/4 HANA新变化-SD销售与分销 SAP S/4 HANA新变化-信用管理 SAP S/4 HANA新变化-主数据:物料主数据 SAP S/4 HANA新变化-主数据:业务伙伴之后台配置 SAP S/4 HANA与SAP Business Suit SAP S/4 MM SAP S/4HANA SAP S/4HANA表结构之变 SAP S4 SAP S4 HANA SAP S4 HANA CLOUD SAP S4  有用链接 SAP S4/Cloud应用 SAP S4/HANA FICO都有哪些改变? SAP S4HANA SAP S4HANA里委外加工采购功能的变化 SAP SBO9.1 SAP SBO重装 SAP SCM EWM SAP script SAP SD SAP SD MM PP FICO SAP SD 常用表 SAP SD 基础知识之定价配置(Pricing Confi SAP SD 基础知识之计划行类别(Schedule Lin SAP SD 基础知识之物料列表与物料排除 SAP SD 基础知识之行项目类别(Item Categor SAP SD 销售中的借贷项凭证 SAP SD 信贷管理的操作流程 sap sdi mysql SAP SD常用表 SAP SD基础知识之凭证流(Document Flow) SAP SD基础知识之输出控制(Output Control SAP SD模块 SAP SD模块-送达方和售达方的区别和联系 SAP SD微观研究 SAP SHIFT SAP SICF REST SAP smartforms乱码 SAP smartforms转pdf SAP smartforms转pdf乱码 SAP SQL sap srm SAP SRM 开发 SAP SRM  函数 sap strans解析json SAP TIPS SAP UI5 SAP UI5&amp SAP Variant 配置 SAP VC SAP Web Service SAP Web Service简介与配置方法 SAP Webservice SAP WM SAP WORKFLOW SAP XI/PI SAP 案例方案分享 sap 报错 注册服务器错误 SAP 报错集合大全 SAP 标准功能 SAP 标准教材和自学方法 sap 标准委外和工序委外 sap 查看服务器文件夹 SAP 常规 SAP 常用表 SAP 常用操作 sap 成本中心下的po SAP 成都研究院 SAP 导出 HTML sap 导出系统所有的单位 SAP 登录图片修改 SAP 顶级BOM查询 sap 订单状态修改时间 SAP 端口 SAP 发票合并与拆分 sap 发送mesage SAP 反查顶级BOM SAP 反查一级BOM sap 服务器信息 SAP 功能函数 sap 供应商表 SAP 顾问宝典 SAP 函数 SAP 后台表 SAP 后台配置 sap 计划订单 sap 假脱机请求 SAP 接口 SAP 接口测试 SAP 结账流程 sap 界面创建凭证 SAP 金税接口介绍 SAP 开发 sap 流程图 退货销售订单 sap 默认屏幕变式 SAP 配置 &amp SAP 批量创建货源清单 SAP 请求号 SAP 权限 SAP 权限配置 SAP 商超订单统一管理系统 SAP 商品主数据 SAP 数据库删除 SAP 数据字典 sap 双计量单位 sap 思维导图 SAP 锁机制认识 SAP 通用功能手册 SAP 透明表 SAP 图片修改 sap 文档服务器安装 SAP 问题以及报错 SAP 物料版次 SAP 物料不一致 SAP 物料删除标记 SAP 物料在启用序列号管理或者不启用序列号管理之间快速切换 SAP 系统 sap 消耗策略999 sap 消息服务器 bat sap 小技巧 sap 新建事务 sap 新增科目表 sap 修改服务器时间格式 sap 修改许可服务器 SAP 虚拟机配置1-FI SAP 虚拟机配置2-CO SAP 虚拟机配置3-MM SAP 虚拟机配置7-WM SAP 序列号与库存关联起来? SAP 选择屏幕 SAP 选择屏幕开发 SAP 演示数据增加 SAP 业务 SAP 业务顾问成长之路 sap 一代增强 SAP 银企直连 SAP 银企直联 SAP 银行对账 sap 用户权限表 SAP 语法(Syntax) SAP 员工主数据 SAP 原材料 SAP 云 SAP 杂项 SAP 增強 SAP 增强 SAP 之门 01 SAP 中国研究院 SAP 主题 SAP 字段增强 SAP 自动化 SAP  ERROR sap  hana SAP  MM知识点 SAP  PP SAP  配置 BOM SAP Enhancement SAP Migration SAP SD SAP STMS SAP&amp SAP* sap*账号 SAP,SD SAP/ABAP SAP/ABAP 相关汇总 SAP/ABAP记录 SAP/ERP SAP/FICO sap/hana SAP_ABAP SAP_ABAP知识点 SAP_BAPI SAP_BASIS SAP_FICO sap_mm SAP_PP SAP_SD SAP_Table SAP_TCODE SAP_モジュール_MM SAP_モジュール_SD SAP_常见问题集合 SAP_常用BAPI SAP_常用表 SAP_各路小技能 SAP_基本配置 SAP_接口 SAP_视图 SAP·SD SAP2000 sap2000学习笔记 SAPabap SAP-ABAP SAP-ABAP-Function SAP-ABAP基础语法 SAP-ABAP-基础知识 SAP-ABAP小白学习日常 SAP-ALL SAP-ALV SAPB1 SAP-BASIC SAP-Basis SAP-Bassic-基础知识 SAP-C01 SAP-CO SAPECC6.0 SAPFI SAP-FI SAP-FI/CO SAP-FICO SAP-FICO-CO SAP-Fiori SAP-GR SAPGUI SAPHANA SAP-HANA saphana服务器操作系统说明 saphana服务器硬件评估 SAP-IR sapjco SAPJCO3 sapjco配置文件下载 sapjoc3 SAPLINK SAP-MDG SAP-MDG-GEN SAP-MDG-HOWTO SAP-MDG-INTEGRATION SAPMM SAP-MM SAP--MM SAP-MM-采购管理 SAP-MM-后台 SAP-MM-前台 SAP-MM问题集锦 SAP-MM-问题记录 sapmto生产模式配置及操作详解 sapnco sapnco3 receive idoc sapnco3 接收 idoc sapnco3.0 SapNwRfc.dll SAPOSS SAP-Other SAP-PM SAP-PO SAPPP SAP-PP SAP-PP模块 SAP-PS SAP-QM SAP-RETAIL SAProuter SAP-RPA SAP-SD SAPUI5 SAP-UI5 SAPUI5核心内容 SAPUI5教程 SAP-WDA SAP-WM SAP案例教程 SAP宝典 SAP报表开发工具 Report Painter SAP边做边学(自学)-看看坚持多久 SAP标准工具程序 SAP表 SAP--表相关 sap采购订单更改记录 SAP采购订单增强 sap采购申请自动转采购订单 SAP仓储单位SU SAP-操作文档 SAP策略组 sap产品 sap产品图谱 - road to sap.pdf SAP常规功能 SAP-常见问题 SAP常用BAPI SAP常用表 SAP超时设置 sap成本流怎么看 SAP创建自定义权限 SAP呆滞库存的计算 SAP代码分享 SAP单链接 SAP的NOTE sap的pod确认 sap的工作日历 SAP的技术战略 SAP的竞争战略 sap的清账是什么意思 SAP调用 SAP队列 SAP访问本机虚拟机服务器 sap放弃java sap服务器安全证书 sap服务器查看系统日志目录 sap服务器出pdf文件 sap服务器迁移性能问题 sap服务器数据库配置文件 sap服务器文件上传 sap服务器怎么安装双系统 sap服务器之间文件复制 SAP改表 SAP--概念 SAP干货分享 SAP各种BOM汇总——含义解释 SAP更改物料类型 sap更改主题 SAP工具 SAP-工作 SAP公司 sap供应商更改组 sap固定资产号码范围 SAP顾问 SAP顾问进行时 SAP顾问那些事 SAP管理 SAP核心模块 SAP后台配置 sap后台配置原因代码 SAP环境配置 sap获取系统时间 SAP基本安装 sap基于mysql安装 SAP技巧 SAP技巧集 SAP技术 SAP技术端 SAP技术文档 SAP技术小知识 SAP技术总结 SAP加解密 SAP加密 SAP架构 SAP-架构 sap假脱机打印机设置 SAP监控 SAP监控常用TCODE sap脚本运行 SAP教程 SAP接口 SAP接口 证书和密钥 SAP接口编程 SAP接口常见问题处理 SAP接口开发 SAP接口数据库 SAP接口相关设置 SAP解密 SAP界面设置 SAP经验 SAP开发 SAP-开发 sap开发需要java吗 sap开发语言 sap可以指定应用服务器 SAP客户数据 SAP客户数据导出 sap客户信贷 sap客户主数据bapi SAP-跨模块知识 SAP零售 SAP零售行业 SAP密码过期设置 sap模糊搜索闪退 SAP模块 SAP模块知识 sap内部顾问 sap内部运维 sap培训 SAP培训机构 SAP配置 SAP批量打开工单 SAP批量导出客户 SAP批量导出客户数据 SAP批量修改 sap期初导资产代码 sap清账使用反记账 SAP请求传输 SAP取历史库存(可查询期初期末库存和指定日期之库存) SAP权限管理 sap权限激活 SAP认证 SAP如何发布webservice SAP入门 SAP软件 SAP删除物料 SAP上云 sap生产工单报工 SAP实施 SAP实施攻略 SAP实施知识 SAP使用技巧 sap事务代码 sap事务代码如何收藏 SAP视频 SAP视频教程 SAP视图 SAP视图批量维护 SAP视图维护 SAP数据表 SAP数据导入导出 SAP数据分析 SAP-数据库 sap税码配置 SAP索引不存在 SAP通用技能 sap外币重估流程图 SAP维护 SAP-未分类 sap未分摊差异怎么处理 sap文化 SAP文章 SAP问题处理记录 sap无法正常启动服务器配置文件 SAP物料classification SAP物料类型 SAP物料删除 SAP物料视图批量维护 SAP物料视图维护 SAP物料特性值 SAP物料主数据 SAP稀有模块 sap系统 SAP--系统 sap系统ftp服务器下文件 SAP系统-MM模块 sap系统搭建教程 sap系统登录时没有服务器 SAP系统管理 SAP系统界面 SAP系统配置 sap系统前台数据与后台表之间 SAP系统研究 sap系统中的batch sap相关知识 SAP项目 sap项目部署到服务器 SAP-项目经验 SAP项目实施 SAP-项目实施随笔小计 SAP项目问题 sap消息服务器错误 SAP--消息号 SAP消息监控器 SAP销售订单邮件 sap销售发货的流程 sap销售凭证流mysql表 sap销售维护 SAP销售员维护 SAP小问题 SAP写入mysql SAP心得 SAP新产品系统 SAP修改已经释放了的请求号 sap虚拟机 多个服务器 sap虚拟机作为服务器 SAP选择屏幕 SAP选择屏幕开发 SAP学习 SAP业务 SAP异常处理 SAP银企直连 SAP银企直联 SAP银行账户管理(BAM) sap应用服务器超载 SAP邮件发送 SAP邮件记录 SAP邮件记录查询 SAP云平台 SAP运维 SAP-运维记录 SAP杂谈 SAP-杂谈 SAP杂项 SAP在采购和销售中的税务处理-增值税 sap增加事务代码权限 SAP增强 SAP战报 SAP战略中的机器学习 SAP知多少 SAP知识点 SAP制造集成和智能 SAP智能云ERP SAP中CK11N成本估算 sap中re凭证是什么意思 SAP中s_p99_41000062查询物料价格数据库表 SAP中报表清单导出的常用方法 SAP中的client SAP中的贷项凭证、借项凭证 SAP中的移动类型 SAP中方会计凭证解决方案 sap中国 sap中文使用手册 模块指南 SAP中销项税MWSI和MWST有什么区别? SAP中执行没有权限的事务 SAP中自动登出 SAP转储订单(STO) SAP咨询公司 SAP资讯 sap字段及描述底表 sap自带samples sap自动化 SAP自习室 SAP组连接 SAP最大用户数设置 sara SAST SAT SBO开发 SCA scala SCC4 Schema schema增强 scipy scm SCP SCP Cockpit scpi Screen SCRIPTFORM scripting Tracker SD sd bapi SD Module SDI SD常用表 SD模块 SD销售 se09 SE11索引 SE16N SE16和SE16N修改后台表数据方法 SE37 SE38 se91 SE93 Search search help security segw SELECT Select Screens select sql Selenium SEN SER01 Serial  Numbers SERVER Serverless service servlet Set SET Parameter setting SFW5 ShaderGraph sharepoint Sharepoint Or Online shell SLD SLT SM02 sm36 SM37 SM50 SM59 smartbi问题 Smartform smartforms SNOR SNP BLUEFIELD SNP 中国数据转型公司 SNUM SOA soamanager soap SoapUI 接口测试 socket SOD Software Development Notes Sort and Filter Sotap Source Scan spa Hana SPAD Spartacus标准开发 Spartacus二次开发 SPC SPED SPOOL打印 spring Spring Boot SpringBoot SPRO spss打开oracle SQL SQL server SQL Trace sqlite Sqlmap使用教程 sql-sap SQLSERVER SQLSERVER内部研究 SqlSugar sql笔记 SQL语法 sqoop SR2 sRFC srm SSCRFIELDS ssh SSIS ssl SSL证书 ST05 ST12 START STE stm32 STO Stock Type stocktransfer Stopwatch StorageLocationControl StorageType StorageUnitType StorLocControl streamsets string SU20 SU21 SU24 Submission SUBMIT sudoku SUM Suport SUSE SUSE 11 SP4 SUSE Linux SU号码 SXI_MONITOR SXMB_MONI SXMSPMAST Sybase Sybase迁移数据到Oracle Sybase数据库迁移数据到Oracle SYSAUX Sysbase system System_failure s云服务器 网站群服 T184L T681 table TABLE FUNCTION Tableau Tabstrip TCode T-Code tcp/ip TCP/UDP Socket TCPH TCP客户端显示服务器图片 TDSQL-C TeamViewer Tech 专栏 TechArt Teradata Test Automation test-tools Textbox TH_POPUP TiDB TikTok tim发文件服务器拒绝 TITLE TM TMS TODO tomcat tomcat报错 ToPrintControl Tough tp5部署虚拟机服务器 tp5服务器信息 tp5网站 服务器部署 tp5项目链接服务器数据库端口888 TR TR LIST Trace Transact-SQL transformer tree control tRFC trigger TryHackMe typescript T公司 T库存 u3d微信小游戏 u8信息服务器 UB UB STO ubuntu UD udp UD配置 uefi ugui ui UI5 Uibot Uipath UI开发 UI控件 UI自动化 unicode unity Unity 100个实用技能 Unity UGUI Unity3D Unity开发 Unity日常开发小功能 Unity微信小游戏 unity项目部署到服务器上 unity游戏开发 Unity坐标转换 unix Url URP user Userid usual UUID ux U盘 U盘文件拷贝到服务器 VALUE VARIANT VariantBOM vasp计算脚本放在服务器的位置 vb.net VBA VBA开发专栏 VBFA v-bind vbs Vendor CoA VendorCOA VendorRebate Verilog-HDL veth vhm在服务器上创建虚拟机 v-html VIEW vim visual studio visualstudio vite VKM3 VKM4 VL02N VL04 VL10B VL31N VL32N VMware VN VOFM v-on VS Code vscode v-show Vue vue.js vue2 Vue3 基础相关 vue项目如何放到服务器上 VulnHub渗透测试 WA01 WA21 WBS WCF WCN WDA WDA的配置 wdb WE20 WeAutomate Web web app Web Dynpro web gui Web IDE Web Service WebDispather WEBGUI WEBI webm webrtc WebService WEBSOCKET webvervice webview web安全 Web安全攻防 web渗透工具 WF 4.0 while Wifi热点java win10服务器系统数据库 win7系统创建ftp服务器地址 win7系统数据库服务器 Window windows windows服务 windows服务器版本系列 windows系统部署git服务器 Windows系统电脑操作 winform wireshark wlan WM WMS WM仓库管理 WM层面盘点 WM模块 WM配置 WM移动类型 Work Work Flow workflow wpf wps WR60 WRMO wsdl xaf xml xp系统怎么上传到ftp服务器 XS HANA XS Job xsdbool yara规则 yqv001-navigation Y企业信息化集成 Zabbix ZIP zk zookeeper zypper in 安装下载不了 阿里云 阿明观察 埃森哲 X SAP:智慧转型高手论剑 安鸾靶场 安全 安全分析 安全工具 安全架构 安全手册 安全与测试 安阳虚拟服务器 安装 安装报错 安装服务器系统数据库服务器 安装数据库服务器需要的文件 安装完数据库服务器为空 安卓 安卓服务器文件 案例 案卓盒子建立文件服务器 靶机 百度 办公自动化 包含服务器数据库的聊天系统 保护交货计划 保留空格 报表 报表优化 报错 报工 贝叶斯 备份及容灾 备份文件到内网服务器 被合并的公司 笔记 笔记本通过服务器提升性能 币别转换 编程 编程技术 编程世界 编程语言 编程语言排名 编辑器 编辑器转换 变更物料类型 变化 变式物料 标题 标准 标准成本历史清单 标准价 标准价和移动平均价 标准解决方案 表白网站怎么上传到服务器 表关系 表维护生成器 博弈论 补丁 补货监控 不常用 不能从服务器上获取视频文件格式 不同系统可以用一个数据库服务器吗 布局 部署 部署网页到华为云服务器 部署系统时访问服务器 财务报表 财务报表版本 财务管理 财务会计 财务科目导入 财务凭证行项目 财务增强 财务账期 采购 采购订单 采购订单和内部订单对应关系清单 采购订单价格与发票价格差异 采购订单审批 采购订单收货和订单收货区别 采购订单修改触发重新审批 采购订单增强 采购订单状态标准查询配置 采购附加费 采购附加数据 采购合同与采购计划协议关联性 采购价格 采购凭证模板 采购申请 采购审批 采购审批过程 采购收货及发票校验记录清单 采购退货 采购退货操作 采购退货测试 采购退货流程 采购退货业务 采购退货移动类型 采购信息记录 采购组 踩坑 踩坑日记 菜根发展 菜鸟日记 菜鸟之家 参数文件 参与MRP 仓库 苍穹ERP 操作符 操作系统 测绘程序 测试 测试工程师 测试工具 测试环境 策略组 层级查询 查看ftp服务器里的文件 查看服务器上文件命令 查询分析器 查询服务器系统类型有哪些 查找代码段 查找增强点 差异 差异分析 产品 产品成本估算 产品成本核算号 产品创新 产品经理 产品驱动增长 产品运营 常见端口 常见问题 常用bapi 常用sql 常用函数 常用数据类型 常用问题收集 常用自建函数 超自动化 成本对象 成本分割 成本估价历史清单 成本估算 成本估算的取价逻辑 成本核算表计算间接费用 成本核算结构 成本核算中BOM和工艺路线 成本收集器 成本要素 成本要素不可更改 成本中心标准报表 成本中心实际/计划/差异报表 成都最稳定的dns服务器地址 程序/PROGRAM 程序导出 程序人生 程序人生 ABAPer 程序人生和职场发展 程序设计 程序下载 程序员 程序员职业发展 持久类 持续集成 冲销扣料 初级成本要素 初阶 初学 初学者 处理外向交货单 触发器 传媒 传输 传输层 传输请求 传输日期 串口通信 创建服务器共享文件夹 创建物料主数据时的视图状态 创新 创新案例 创新战略 垂直居中 磁盘管理虚拟磁盘服务器 次级成本要素 从u盘引导进入linux6 存储 错误处理 错误解决 达梦 打印 打印次数 打印机 大厂面试 大庆服务器维修 大数据 大数据分析 大数据工程师 大数据可视化 大小写 大型服务器安装什么系统 代码规范 代码片段 代码在哪用到了 带格式的邮件附件 带你走进SAP项目 单片机 单片机系列 单位 单文件 单元测试 弹出框问题 弹性计算 导出电子表格问题 导出内表数据至Excel文件中 导出期末或指定日期库存 导入 导入license 导入数据库显示服务器发生意外 倒冲 到期发票清单VF04功能 登陆语言 登录oa系统输入服务器地址 登录日志怎么实现 低代码 低功耗文件服务器 地球 递归 第三方 第三期间 第一个ABAP程序 点击ftp服务器的文件弹出登录界面 电话 电商 调试 调试器 调用sap接口 调用接口 调用子屏幕修主屏幕 调优 调制与编码策略 鼎信诺显示连接服务器失败 订单 定价 定价过程 定价例程 定价值 定时采用ajax方式获得数据库 定时器 定时任务 定时同步文件到ftp服务器 定义 定义详解 动态安全库存 动态获取字段名 动态类 动态属性和事件绑定 冻结功能 冻结库存 冻结库存转库 读取文件内表数据 端口 队列 队列末尾 对象 对象不支持属性或方法dbzz.html 多扣料冲销 多流 多人共用 不能访问目录 多送或者少送 多线程 多引擎数据库管理系统 多源异构数据汇聚平台 多重科目分配 俄罗斯报表 二代增强 二级标题-003-Pacemaker 发票处理系统 发票冻结原因 发票冻结原因及解除冻结 发票小金额差异 发票自动化 翻译 反冲 反记账 反记账数据转换 返工 泛微OA调用SAPwebservice详解 泛微OA开发 方便小函数 方格子无盘服务器怎么用 访问后台接口 非技术区 非技术文章 非限制库存 分包后续调整 分布式 分类 分类账 分配表 分配分摊 分三个屏幕的OOALV 分析云 分享学习 服务 服务类采购订单的收货审批确认 服务器 服务器 文件类型 服务器 稳定 重要性 服务器1g内存装什么系统 服务器cpu只显示一个核 服务器host文件目录 服务器raid1做系统 服务器vos系统怎么装 服务器安全证书登陆失败怎么办 服务器安装系统sles系统 服务器安装系统如何选择网关 服务器安卓系统安装教程 服务器被攻击 文件被删除 服务器比对数据库差异文件 服务器标识信息 服务器部署的参数文档 服务器操作系统套什么定额 服务器操作系统用什么好 服务器操作系统与数据库 服务器查看操作系统类型 服务器查看数据库日志文件 服务器查文件 服务器出生点配置文件 服务器传送过来的是什么信息 服务器搭建网站方案500字 服务器大内存系统吗 服务器的ftp数据库信息 服务器的参数配置文件 服务器的地址信息 服务器的共享文件地址 服务器的系统文件怎么恢复出厂设置密码 服务器登录需要信息吗 服务器定时任务系统 服务器读取不了文件 服务器放文件 服务器故障修复费用需要摊销吗 服务器光纤存储系统 服务器接入协议是什么 服务器快照能代替网站备份吗 服务器扩容文档说明 服务器链接数据库配置文件 服务器两个网站公用一个数据库 服务器默认文档 服务器内存扩展板位置 服务器内存条的种类文档 服务器内存性能好 服务器内存在哪个位置 服务器内核文件在哪 服务器迁移操作系统 服务器迁移需要哪些操作系统 服务器如何查看文件个数据库文件夹 服务器如何分多个文件 服务器设计虚拟内存 服务器设置上传文件大小 服务器适合安装深度系统deepin 服务器数据库查看版本信息 服务器数据库查看版本信息失败 服务器数据库的文件读取数据库 服务器数据库系统 服务器数据库协议 服务器数据库用什么系统 服务器数据系统 服务器网站关联数据库 服务器微端位置 服务器维护 吸尘器 服务器维护费入什么科目 服务器文件地址 服务器无盘镜像导入 服务器物理机部署 服务器物理内存只增不降 服务器物理组成 服务器系统安全方案 服务器系统安装ansys 服务器系统安装oracle数据库 服务器系统安装报价 服务器系统版本选择 服务器系统方案 服务器系统和数据库的用处 服务器系统架构讲解 服务器系统盘50g什么意思 服务器系统盘大文件检测指令 服务器系统盘分多少 服务器系统数据库安装 服务器系统性能灯 服务器系统有多大 服务器系统与数据库 服务器系统怎么恢复出厂设置 服务器修改mime类型 服务器修改密码规则 服务器虚拟化与企业私有云 服务器虚拟机的c盘怎么加 服务器选择系统版本 服务器与本地文件共享 服务器怎么清除日志文件 服务器只读团体字信息 服务器中文档存储在哪 服务器主板坏了怎么维修 服务器主板维修电子书 服务器装系统快吗 服务器装系统无显示屏 服务器租赁文档 服装信息化 浮点运算 福建工程学院计算机网络技术期末考试试卷 辅助线框 付款 付款流程 付款条款 付款信息 负号前置 负库存的相关设定 复合角色 复制创建采购申请 复制控制 复制文件到服务器 内容不足 概念整理 感悟 高级退货管理 高阶 高可用架构 高斯坐标 高性能服务器一体机 高性能有限元计算服务器 个人经历 个人开发 个税系统代理服务器参数是什么 个性化定制 给标准报表添加字段 给一个oracle账号密码是什么 更改成本要素类别 更改物料类型 更新服务器数据库文件位置 工厂 工厂管理 工厂内库存转移 工厂日历 工具 工具集锦 工具类 工具使用 工具使用指南 工具手册 工具系列 工业软件 工艺路线 工资发放和结算 工资计提 工作 工作笔记 工作量法 工作流程自动化 工作流自动化解决方案 工作杂记 工作总结 公式计算 公司财务系统html 公司代码货币 公司服务器可以查询员工哪些信息 公司间STO 公司间STO‘ 公司间过账 公有云-华为 功能 功能测试 功能开发说明书 供应链 供应链管理 供应商 供应商采购冻结 供应商评估 供应商清单输出 供应商子范围 沟通能力 购买云服务器配置项目 估价容差测试 固定点算术 固定资产 固定资产会计 固定资产折旧 固定资产折旧码 顾问之路 挂微群发软件需要什么服务器信 关闭 关系模型 关于R/3 关于赛锐信息 关于信用管理--信用更新 管理 管理数据库 广播 消息 没有服务器 归档 规格说明书 国产器件 国产软件 国产数据库 国科大学习 国内服务器内存缓冲芯片 国外服务器显示数据库 哈希算法 海康4200服务器进不去系统 海口服务器系统租用 海纳百川 含税价 邯郸虚拟服务器 函数 函数/FUNCTION 函数技巧 函数模块 函数式编程 好书推荐 合作案例 合作伙伴 和车神哥一起学 核心主数据 黑盒测试 黑名单 恨ta就教ta  SAP 红蓝攻防篇 后端 后端开发 后鸿沟时代 后台Job 后台表 后台导出表数据 后台服务器 后台开发 后台作业 胡思乱想 湖仓一体 互联网-开源框架 华为 华为2012服务器系统安装教程 华为hana服务器型号齐全 华为服务器gpu芯片 华为服务器raid1装系统 华为服务器安装2012系统怎么分区 华为服务器安装nas系统 华为服务器扩容内存进不去系统 华为服务器修改root密码 华为无线局域网 华为云 华为云服务器更换操作系统 华为云服务器还需要确定位置吗 华为云服务器系统备份 华为云服务器自己维护吗 华为怎么安装服务器系统版本 环境搭建 缓存 汇率维护 汇率转换 汇总 会计 会计分录 会计基础资料 会计科目 会计科目表 会计科目删除 会计凭证批量导出 会计凭证清账 会计凭证替代 会计凭证中的注释项目 会用到的 绘图 绘图工具 惠普服务器G8系列做raid 活动 伙伴功能 货币过期 货币类型 货币停用 货源清单 获取窗体下的所有控件 获取汇率 机器人流程自动化 机器学习 鸡肋 积累 基本单位 基本配置 基础 基础模块 基础入门 基于收货的发票校验配置过程 基准日期 集成 集团货币 集中采购 己建立BOM清单 计划策略 计划策略40 计划订单 计划时界应用 计划时界应用测试 计划数量小于收货或发票数量 计划协议 计划行类别 计划行类别中请求/装配 计划行统计清单 计量单位 计入物料成本 计算步骤 计算机 计算机毕业设计 计算机基础 计算机基础知识 计算机科学分成什么模块 计算机体系 计算机图书 计算机网络 计算机网络 王道 计算机网络rip路由表题目 计算机网络理论概述 计算机网络原理(谢希仁第八版) 计算机网络远程管理作业答案 计算机维护 计算机信息管理自考-04741计算机网络原理 计算机自学考试 记录问题 记账冻结 记账码 技能 技巧 技术 技术分享 技术干货 技术交流 技术类 技术沙龙 技术渗透 技术文档 技术总结 寄售 寄售交货 寄售结算规则 寄售模式 加密 加密算法 加前导零 加速器 价格修改历史 架构 架构设计 架设企业文件服务器 假期日历 监控 监控服务器系统备份 监控服务器系统密码忘了怎么办 监控平台 监控事件 监控系统 监控系统里服务器 监控系统是否要服务器 减值准备 检验点 检验计划 检验类型 检验类型89 检验批 检验批系统状态 简单窗体实现 简单的数据库管理系统 用什么云服务器 简述客户 服务器系统的组成 建议组件分配到BOM 渐变色UI描边 将服务器上数据库复制到本地文件 将已有项目转移到云服务器 交互 交货单 交货计划固定 交货计划期间保护 角色 角色继承 角色设计 教程 教育电商 阶梯价格 接管日期 接口 接口测试 接口方式 接口问题处理 接口-银企直连 结算会计年度 截取年月日在hana中怎么写 解决方案 界面 借贷 金丹期 金蝶 金蝶 系统服务器繁忙 金蝶K3 金蝶二次开发好跳槽吗 金蝶服务器维护 金蝶云星空操作手册 金蝶中间件部署报栈溢出 金额转换 金税接口 仅在总账中过账 仅装配 仅组件 进口采购 进入文档服务器不能输入密码 进销存 进销存报表 进销存系统怎么部署到自己服务器 经历 经验 经验分享 经验总结 精诚MES 精诚智慧工厂 精选 境外服务器稳定 镜像 玖章算术 就是玩儿 矩阵 聚合函数 聚集函数 开发 开发笔记 开发工具 开发管理报表 开发环境 开发平台 开发语言 开发者 开发知识点 开源 开源ERP 开源-JDK-镜像 开源系列谈 开源项目 看板 考试 考试复习 考研 科技 科技公司 科目行项目不显示 可配置物料 客供料 客户 客户冻结 客户端往服务器写文件 客户端修改opc服务器的数据 客户服务 客户-服务器数据库系统举例 客户服务器系统的特点是 客户关系处理能力 客户关系管理 客户贸易伙伴 客户信贷管理解析 客户主数据 课程 课程笔记 课堂笔记 空调控制系统节点服务器 空间管路 口碑效应 库存地点MRP 库存地点权限控制 库存管理 库存决定 库存批次 库存需求天数关系 库龄 跨公司STO 跨国跨公司间转储 块设备驱动 快捷 快捷键 快手服务器协议 快速定制 框架 鲲鹏服务器系统重装 扩充存储地点 扩展 扩展知识 来也科技 蓝桥杯 蓝牙 蓝牙A2dp 浪点服务器芯片 乐鑫 类型强转 理解 历史库存sap 利润表 利用云服务器传递信息 连接 链表 良仓太炎共创 两步法拣配 料主数据中的屏幕字段 列表 列存索引 列存引擎 零基础快速学习 ABAP 零散知识 零售 零售行业 零碎(凑数)的算法[题] 零停机 流程自动化 流水号 流水码 流星的程序集 漏洞预警 录屏 录像机显示服务器 乱码 论文 论文阅读笔记 蚂蚁无线管理器服务器 买个服务器来挂协议 买了一个服务器修改密码 漫谈计算机网络 贸易伙伴的应用 没有MANDT字段 没有中间凭证冲销 媒体 每日摸鱼新闻 门店视图 门店主数据 免费流量获取 免关税 面试 面向对象编程 面向对象方法 敏捷 敏捷开发 命名规范 模板语法 模块 模块测试 莫队 莫队算法 目标跟踪 内表 内表类型 内表字段 内部订单 内部订单清单 内部订单删除问题 内部订单月结差异 内存管理 内存数据库 内存图片 内核 内核驱动 内核驱动开发记录 内嵌Excel 内容服务 内容服务平台 内容服务软件 内容库 内外码转换 内网 内网渗透 内向交货单 那个网站的服务器不限制内容 能不能用pe安装服务器系统安装系统 能力建设 能源 年结 爬虫 排行榜 排序算法 盘点 盘点流程 培训 配额协议 配置 配置SAP服务器外网登陆以及网络故障解决示例 配置笔记 配置高性能文件服务器方案 批次 批次拆分 批次管理 批次号 批次确定 批次特定单位 批次特性 批导程序模板 批导模板下载 批量采购冻结 批量导出表数据 批量更改会计凭证文本 批量维护 批量用户账户锁定 平行记账 凭证冲销的种类和处理逻辑 凭证打印 凭证流 凭证状态 凭证状态S 屏幕(Dialog)开发 屏幕SCREEN字段属性 屏幕程序 屏幕设计 破坏式创新 破解 期初库存金额 期初资产数据导入 期刊阅读 期末不挂科 期末复习 期末库存金额 其他 其他应付款-代扣代缴 其他知识点 奇技淫巧 麒麟服务器数据库协议 企业/办公/职场 企业安全 企业服务器文件管理 企业管理软件 企业级应用 企业解决方案 企业内部控制 企业内容管理 企业软件 企业微信 企业文件服务器备份 企业系统 企业信息化 企业信息化前沿 企业资源计划 启用WEBGUI服务 迁移驾驶舱 前端 前端基础练手小项目 前端架构 前端开发 前端开发相关 前端框架 前后端 前台操作 嵌入式 嵌入式开发 嵌入式学习--STM32 嵌入式硬件 清软英泰plm服务器安装文档 清帐 清账 清账凭证 请求 请求传输再还原 请求号 区块链 区块链技术 区域菜单 驱动开发 取价逻辑 取消审批 取样策略 取值相关 去前导零 全角半角转换 全球最大sap hana系统建立在以下哪个厂商的服务器产品上 全球最大的采购服务平台 权限 权限对象 权限管理 权限合规检查系统 权限控制 権限 缺料提醒及警报 热点开启 流程 人工智能 日常ABAP开发记录 日常Bug 日常工作 日常记录 日常学习工作经验分享 日常知识分享 日记 日历 日期 日期函数 容器 容器服务 容灾 如何安装华为服务器系统软件 如何把项目部署到内网服务器 如何传输本地文件到服务器 如何从服务器上更新文件 如何导出序时账 如何读取服务器文件数据 如何复制服务器数据库文件大小 如何将CRM系统上传到服务器 如何将hana数据同步到oracle 如何设置sap生产订单自动关闭 如何统计输出条目数量 如何修改服务器root密码 如何知道有哪些物料存在BOM 入后在服务器修改数据库 入库 入门 入侵一个网站的服务器拿数据 入行SAP咨询 入职甲方 软件 软件安全 软件部署 软件测试 软件测试知识 软件程序 软件工程 软件教程视频集合 软件开发 软件生态 软件下载 软件显示未找到服务器 软考 软实力 软硬件运维 赛锐信息 三代增强 扫描代码 删除 删除记录 商城小程序买哪种服务器 商品主数据 商务智能 商业软件 商业智能 上传 上传附件出错 上传图片 上传文件到云服务器存储路径 上架策略B 上架策略C 上架策略P 上线 上云 设备维修 设计模式 设计与维护类 设置参数缺省值 社保管理系统连接不上服务器 社区活动 深度学习 深度优先 深澜系统服务器架构 审计导出表数据 审计序时账 审批策略 审批代码 渗透 渗透笔记 渗透测试 渗透测试自学日志之基础原理篇 渗透工具之信息收集 升级 生产版本 生产版本排序规则 生产版本选择规则 生产版本选择逻辑 生产版本选择顺序 生产版本优先顺序 生产成本收集 生产排程 生产系统服务器主机名怎么看 生活 生活感悟 什么情况使用一次性供应商及客户 什么是BAPI 什么是序时账 时间比较 时间对象 时序数据库 实施 实施SAP 实施项目 实时集成变式 实时库存 实体服务器怎么配置文件 实习 实习生 实战SAP程序开发 使用感受 使用决策 事务代码 事务代码LX04 事务代码WRCR 事务技术名称的显示与隐藏 事务码/TCODE 视觉语言导航 视频 视频处理 视频监控选择服务器的配置文件 视图 收货冲销 收货处理 手动加载ICU库 手机主服务器怎么配置文件 售后管理 输入历史记录 暑假复习 树查询 树莓派 数独 数据安全 数据仓库 数据仓库学习分享 数据从hana倒回Oracle的方法 数据导入 数据导入和处理 数据分析 数据分析 + 机器学习 数据分页 数据服务器 操作系统 数据服务器什么系统软件 数据服务器文件夹 数据服务器与文件服务器 数据格式 数据湖 数据结构 数据结构与算法 数据科学入门 数据可视化 数据库 数据库备份到文件服务器 数据库表字段 数据库操作 数据库的文件服务器配置 数据库服务器部署文档 数据库服务器网页 数据库服务器系统 数据库服务器系统崩溃 数据库服务器系统的 研发 数据库服务器系统软件 数据库服务器压缩文件 数据库管理与维护 数据库规划、部署 数据库和服务器什么协议 数据库和服务器系统怎么安装 数据库技术 数据库架构 数据库监控 数据库监控软件 数据库开发 数据库文件共享服务器配置 数据库系统概论 数据库系统原理 数据库系统怎么与软件连接到服务器 数据库与服务器通讯协议 数据库最新排名 数据类型 数据链路层 数据浏览器的字段名称显示 数据迁移 数据迁移驾驶舱 数据迁移完整性检查 数据挖掘 数据治理 数据中台 数据中心IDC架构及容灾与备份 数据重置 数据字典 数学建模篇 数字化 数字化管理 数字化转型 数字货币 数字业务整合 双计量单位 双路服务器只显示一半内存 双碳 双网文件服务器 水晶报表 税改 税率 税友报税软件让修改服务器地址 私有云虚拟化服务器群 思爱普 思科里服务器的dns配置文件 死锁 四代增强 四元数 搜索帮助 搜索引擎 搜索引擎营销 速食 算法 随便看看 随机方向 随机数 损益表 所见即所得的打印功能 锁定 锁定事务代码 抬头文本被强制清空 探测服务器操作系统版本 特殊库存 特殊移动标记 特性 腾讯云 提升工作效率的工具 题解 替代 替代/校验/BTE 天正服务器不显示 添加列到指定位置 条件 条件表 条件类型 条码系统 跳槽 跳过代码 贴花 通过SQVI增加表格字段 通信协议 同步 同方服务器系统安装 统驭科目理解 透明表 图论 图像处理 吐槽 外币评估 外币评估记账 外部采购 外部断点 外贸管理软件 外贸软件 外向交货单 外协加工 外语能力 完美汽配管理系统v12服务器 完整的采购订单业务信息凭证流 玩转STM32 万彩录屏服务器不稳定 网吧无盘用华为服务器 网卡 网卡驱动 网络 网络安全 网络安全学习 网络存储服务器的系统 网络管理定时备份服务器网站文件 网络接口 网络配置 网络通信 网络拓扑仿真模拟 网络文件服务器有哪些 网络协议 网络协议栈 网络设备 网络规划 网络工具开发 网络营销 网页 服务器 数据库 网页如何从服务器获取数据 网页与服务器数据库 网易数帆精彩活动 网站服务器存储数据库吗 网站服务器没有安装数据库 网站服务器没有数据库备份 网站服务器与系统部署策略 网站跨域访问服务器数据库 网站上传到服务器需要上传数据库 网站数据库断连重启服务器 网站虚拟服务器1核1g速度 网站需要数据库服务器吗 网站与数据库不在同一服务器 网站云服务器需要数据库吗 往来余额结转 往年购置资产 微前端 微软 微软azure 微信 微信小程序 为服务器安装操作系统的流程图解 为什么文件上传不了服务器上 为资产分类定义折旧范围 维护视图 维护思路 委托加工 委托租赁云服务器协议 委外 委外加工 委外加工采购流程里副产品的收货 委外库存 委外销售订单库存 未能找到使用主机名称的服务器 未能注册模块 未清项管理 文本编辑器 文本表 文档管理 文档管理软件 文档协作 文档资料 文华软件登录显示请选择服务器 文件存储服务器 方案 文件服务器 华为 文件服务器 内存需求 文件服务器 内存需求大么 文件服务器报码表xls 文件服务器存储 文件服务器放在哪里 文件服务器和nas存储 文件服务器和数据库的区别 文件服务器可以存储的文件类型有 文件服务器内存 文件服务器内存要大吗 文件服务器网盘 文件服务器为何存不了大文件 文件服务器帐号切换 文件服务器属于固定资产吗 文件共享服务器所需虚拟机资源 文件名带中文上传ftp服务器变乱码 文件虚拟服务器 文件一般存在数据库还是服务器 问答 问题 问题处理 问题记录 问题解决 问题总结 我的SAP系统开发里程碑 我的问题 无代码 无代码开发 无法输入事务代码 无盘服务器工作流程 无盘服务器内存多大好 无盘服务器配置20台 无线监控设置smtp服务器 无值记账 物定工厂物料状态 物联网 物料 物料编号 物料编码 物料编码更改 物料变式 物料单位更改 物料分类账 物料管理 物料价格清单 物料库存/需求及供应天 物料凭证 物料凭证类型和交易/事件类型 物料帐 物料账 物料账期 物料主数据 物料主数据视图 物料主数据视图维护状态 物料组 物料组的分配规则 物流 习题 系统/网络/运维 系统安全 系统安装 系统服务器常见出厂密码有哪些 系统集成 系统架构 系统开发 系统未配置文件服务器是啥意思 系统相关 系统云端服务器 系统怎么访问数据库服务器 系统中的缺料情况及控制 下架策略A 下架策略M 下拉框 下载 下载程序 先后顺序 先进的数据库服务器操作系统 先进生产力工具大全 现金管理 现金流量表 线段树 线性规划 响应函数 向上取整 向下取整 项目 项目表 项目部署在服务器上的形式 项目管理 项目迁移 项目前端 项目实施经验贴 项目实战 消耗冲销 消息服务器待办事项数据库 消息控制采购订单 销售 销售(SD)凭证流 销售订单 销售订单冻结 销售订单库存 销售订单项目类别 销售订单信用冻结 销售订单中的条件类型 销售发货冻结 销售发货可用性检查 销售交货 销售开票冻结 销售税 销售项目开票 销售员 小白 小白的SAP问题积累 小程序 小程序云服务器磁盘怎么分区 小丁的blog 小记 小结 小项目(新手可做) 小型服务器的操作系统 小型企业网络存储服务器系统方案 效率 协议 心得感悟 新程序员 新基建 新建表维护程序SM30 新收入准则 新手时期 新闻 新语法 新增漏洞报告 新增移动类型科目确定配置 新总帐 薪酬核算 薪酬计提和发放 信贷 信息安全 信息安全顶会论文导读 信息化 信息化建设 信息记录 信息收集 信用额度 信用管理 行业 行业客户信息 行业趋势 性能测试 性能优化 修改,F4帮助,添加按钮 修改Q系统代码 修改表数据 修改服务器端的访问模式 修改服务器网络 修改服务器信息使密钥不过期 修改记录 修改交货单 修改历史 修改数据库安装的服务器 系统时间 修改物料组 虚拟服务器需要网关吗 虚拟服务器英文翻译 虚拟服务器资源 虚拟服务器资源配置 虚拟服务器最大磁盘2TB 虚拟化 虚拟机 虚拟机迁移后服务器无法启动 虚拟机如何做服务器系统 需求分析 需求类型 需要访问其他服务器信息吗 序列号 序列号管理 序列号清单 序时账导出方法 序时账核对 选型 选择屏幕 选择屏幕打开文件路径 学术前沿 学习 学习ABAP笔记 学习笔记 学习方法 学习人生 学习问题 学校三级项目 循环 压力测试 压力测试 闪存 亚马逊 亚马逊云科技 研发管理 研发效能 业财一体化 业务 业务处理 业务范围 业务分析 业务功能 业务顾问 业务顾问的小需求 业务伙伴 业务价值 一般总账科目数据转换 一次性供应商及客户 一次性供应商及客户应用经验 一个服务器 定时从各个系统取数据 一键还原服务器系统 一台服务器能存放几个系统 一台服务器如何部署多个项目 一套适合 SAP UI5 开发人员循序渐进的学习教程 医药行业 移动开发 移动类型 移动类型101/102 移动类型325 移动类型343 移动类型配置 移动平均价 异步Function 异常 异速联客户端未获取到服务器信息 音频编码解码 音视频 音视频开发 银企直连 银企直连接口 银企直联 银行 银行账户管理 隐式增强 印度 印资企业 应付职工薪酬 应收应付 应用设计 应用性能监控 英一 英语 硬件服务器搭建系统步骤 用户 用户定义的消息搜索配置 用友 优化 由于质量原因而冻结 邮件发送 邮件服务器及相关配置 邮件合并居中,框线 邮件预警 游戏 游戏服务器修改其他玩家数据 游戏开发 游戏引擎 有没有便宜一点的网站服务器 有限元模拟 余额不平 与SAP集成相关 语言 语言概览 语音 预留 预算管理 预制凭证 原创 原创项目 原力计划 源码 源码分析 月结 阅读分享 云 文件 服务器 文件怎么恢复出厂设置密码 云ERP 云安全 云备份 云财经服务器维护 云存储系统服务器版安装 云打印 云端 云服务 云服务器 云服务器 ftp上传文件大小 云服务器 选择什么系统版本 云服务器 重做系统软件 云服务器1和1g装什么系统好 云服务器cpu系列 云服务器ecs销售渠道 云服务器ubuntu修改密码 云服务器安装其他版本系统 云服务器部署mqtt协议通信 云服务器部署tomcat文件修改 云服务器磁盘怎么安装系统 云服务器存放位置 云服务器搭建推流系统 云服务器可以存放文件吗 云服务器免费suse系统 云服务器哪种系统好用 云服务器如何修改ssh密码是什么 云服务器软件文件管理 云服务器数据库密码修改zoc 云服务器网络配置信息查询 云服务器维护安全管理制度 云服务器物理部署位置 云服务器系统类别怎么选 云服务器系统租赁费用 云服务器修改ssh密码 云服务器需要装系统吗 云服务器怎么存文件大小 云服务器怎么多人进去编辑文档 云服务器怎么设置数据库文件 云服务器转租赁协议 云基础架构 云计算 云计算/大数据 云解决方案 云排产 云平台 云文档管理 云文档管理系统 云原生 云运维&&云架构 运算符 运维 运维开发 运维实施 运维系统 服务器监控 运维相关 运行效率 杂货铺 杂记 杂谈 杂项 再次冲销 在服务器删除的文件 恢复出厂设置密码 在服务器上建一个文件夹 在建工程 在建工程期初数据 在没有配置的dns服务器响应之后名称 在制品 怎么看系统服务器类型 怎么修改存储在服务器的数据 怎么修改服务器php版本信息 怎么在服务器上备份数据库文件在哪里 怎么在服务器上复制网站 怎么找到服务器的文档 怎样读取服务器上的数据库文件 怎样修改美国的服务器节点 增长策略 增长黑客 增强 增删改查 增值税 增值税调整 掌握物料库存,需求及供应情况 账号 账期设置 账期未开 折旧记账数据不在BSEG 正确使用一次性供应商及客户 正则表达式 证书 知识分享 知识管理 知识库 知识图谱 直线折旧法 职场 职场和发展 职业 职业发展 只存放文件的服务器 指纹识别 指纹字典 指针 制造 制造商物料 质量部门 质量管理 质量信息记录 质量证书 智慧企业 智能开发 智能运维 智能制造IT规划 智能制造执行系统 中国本地化内容 中间件 中阶 中维监控显示无法连接服务器失败怎么办 中文名称的文件传不到ftp服务器 中小企业 中小型网站服务器搭建方案 中转 重复打印 重复制造 重置期初数据 重置业务数据 重置主数据 重置资产会计数据 主检验特性 主批次 主数据 主数据导入 注册机 注解 注塑行业ERP 注意事项 转换Lookup功能 转义字符 转载 装服务器得时候选择系统版本 状态栏 咨询 资产 资产负债表 资产会计 资产接管 资产年初切换上线 资产折旧 资金 资料 资讯 子屏幕 字典 字段符号 字符操作 字符串 字符串拆分 字符串前导0 字节跳动 自动补货 自动创建交货单 自动登录SAPGUI 自动化 自动化测试 自动化工具 自动清账 自动邮件 自考 自然语言处理 自学成才 综合 综合资源 总结 总账 总账科目 总账行项目中凭证缺失 总账余额结转 租赁mt4虚拟服务器 组件 组织架构 组织结构 最大限制 最佳业务实践 最具性价比的方式 作业返冲 作业价格计算 坐标反算