资源描述
RFC2544:
(1) 吞吐量(Throughput) :定义:被测设备在不丢包的情况下,所能转发的最大数据流量。通常使用每秒钟通过的最大的数据包数或者字节数来衡量(MB/s) 。
作用:反映被测试设备所能够处理(不丢失数据包) 的最大的数据流量。
过程:发送特定数量的由测试设备转发的帧。如果提供的帧数量与接收到的帧计数量相等,或者接收到的帧少于发送出的,那么提供的数据流频率被减少,测试返回。
吞吐量是测试设备转发的测试帧计数量与测试仪器发出的测试帧数量相等的最高频率。
报告格式:吞吐量测试的结果应该使用图表中给出的形式报告。在这种方式中,X轴应该是帧大小,Y轴应该是帧频率。应该在图表中至少存在两条线。一条显示在各种帧大小下媒介的理论帧频,另一条则由测试结果绘出。附加的线条可能被用于显示每种测试的数据流类型的结果。紧挨着图表的文字应该指出协议、数据流格式以及测试过程中使用的媒介类型。
(2) 丢包率(Lost Rate) :定义:在一定的负载下,由于缺乏资源而未能被转发的包占应该转发的包数的百分比。
作用:反映被测设备承受特定负载的能力。
(3) 时延(Latency):定义:发送一定数量的数据包,记录中间数据包发出的时间T1,以及经由测试设备转发后到达接收端口的时间T2,然后按照下面的公式计算:
对于存储/位转发设备: Latency = T2 - T1
T2:输出帧的第一位到达输出端口的时间;T1:输入帧的最后一位到达输入端口的时间。 作用:反映被测设备处理数据包的速度
(4) 背靠背(Back-to-Back):定义:以所能够产生的最大的速率,发送一定长度的数据包,并不断改变一次发送的数据包数目,直到被测设备能够完全转发所有发送的数据包,这个包数就是此设备的背对背值。
作用:反映被测设备处理突发数据的能力(数据缓存能力)。
客户常问问题:
1、100M单位:位(bit) 网络带宽的10M、100M和1000M的单位是bps(即bit/s,位/秒),而我们通常所说的100M大小的文件,这里的单位是Byte,而1Byte=8bit,显然100M bit=(100/8)M Byte=12.5M Byte。
2、以太网帧长范围:
目标MAC 源MAC 类型 数据 FCS
6字节 6字节 2字节 46-1500字节 4字节
所以最小6+6+2+46+4 = 64,最大6+6+2+1500+4 = 1518。
(注:ISL封装后可达1548字节,802.1Q封装后可达1522字节)
100m的以太网,全双工就是200m,其单位就是bit/s,100m换算成byte则是100/8=12.5m byte/s,换算出来就是12500000bytes。那么在以太网的数据包中,最小的数据包的大小是64byte/s,加上8个byte的前导字节以及12个byte帧间间隙,合计就是84byte。那么用12500000/84=148809,得到在100m吞吐量单向环境下的每秒最大的包转发个数148809,换算成k即为148.8k pps。同上,则在双向200m吞吐量的以太网中,每秒转发个数297618
包转发线速的衡量标准是以单位时间内发送64byte的数据包(最小包)的个数作为计算基准的。对于100M以太网来说,计算方法如下:1,000,000,00bps/8bit/(64+8+12)byte=1,488,095pps 说明:当以太网帧为64byte时,需考虑8byte的帧头和12byte的帧间隙的固定开销
100m的以太网,全双工就是200m,其单位就是bit/s,100m换算成byte则是100/8=12.5m byte/s,换算出来就是12500000bytes。那么在以太网的数据包中,最小的数据包的大小是64byte/s,加上8个byte的前导字节以及12个byte帧间间隙,合计就是84byte。那么用12500000/84=148809,得到在100m吞吐量单向环境下的每秒最大的包转发个数148809,换算成k即为148.8k pps。同上,则在双向200m吞吐量的以太网中,每秒转发个数297618,换算成k则包转发率为297.6k pps。
这是在二层交换上面所能达到的包转发率,但是如果一个路由器在三层路由上面,甚至在开启nat的情况下,其包转发率会有很大降低,而这个值才是真正用户值得关心的,所以我们在看到很多商家在一直强调包转发个数148810个包,其实这是二层交换的理论极限值,而不是真正的路由器在三层工作时候的值。
时延:
时延就是对一个网址发送测试数据包,看对方网址是否有响应并统计响应时间,以此测试网络。时延是指一个报文或分组从一个网络的一端传送到另一个端所需要的时间。它包括了发送时延,传播时延,处理时延,排队时延。(时延=发送时延+传播时延+处理时延+排队时延)一般,发送时延与传播时延是我们主要考虑的。对于报文长度较大的情况,发送时延是主要矛盾;报文长度较小的情况,传播时延是主要矛盾。(计算机网络方面的时延概念)传送时延由Internet的路由情况决定,如果在低速信道或信道太拥挤时,可能会导致长时间时延或丢失数据包的情况。
假设一个数据包X从路由器A到路由器B,我们来分析下,在这种情况下,数据包X从A到B的总时延:
当A接收到数据包时,会检测数据包的首部,决定将该数据包导向哪一个链路上,这个过程所需的时间叫做节点处理时延。路由器的优劣对处理时延起决定性的作用。
知道了该数据包该导向哪个链路上后,接下来数据包要经历排队时延,排队时延取决于先期到达的,正在排队等待向该链路传输数据包的数量。如果队列是空的,并且没有其它分组正在传输,那么排队时延就为0。
当先期到达的数据包,传输完毕后,我们就经过了排队时延,就下来就是将X全部数据推向链路,这个过程所需要的时间就是传输时延。传输时延取决于数据包X的长度和链路传输速率决定。链路的传输速度的单位是bit/s。传输速率主要与该以太网链路的速率有关。如在100M/s的以太网链路中,那么链路传输速率就是100M/s。
当X所有的数据全部推到链路上后,这是就进入了传播时延。传播时延取决于传播的距离及传播速度。传播速度取决于该链路的物理媒介,如光纤,双绞线等,一般等于或者小于光速。单位是m/s。
经历过传播时延后,数据包X就能到达目的地路由器B了。
我们可以得出一个节点总时延的计算公式:
节点总时延= 节点处理时延+ 排队时延+ 传输时延+ 传播时延
RFC2544测试指标
RFC2544提供了一个对网络设备测试的基准,它规定了一系列的测试过程和方法,使得服务提供商和用户间可以在同一个基准下,对测试的实施和结果达成共识。
RFC2544标准要求的帧长:64byte、128byte、256byte、512byte、768byte、1024byte、1280byte、1518byte
一、吞吐量(Throughput)
设备能够无丢失地传送接收到的帧信号的最大速率,简单的说就是从源发送方,到目的接收方,无丢包的情况下,单位时间内可传输的最大数据量。对于一个以太网系统,绝对的量大吞吐率应该等同于其接口的速率。实际上,由于不同的帧长度具有不同的传输速率,这些绝对的吞吐率是无法达到的,越小的帧由于前导码的帧间隔的原因,其传输效率就越低。
64byte的帧,其最大数据吞吐率(Data Throughput)是76.19MBit/s,每秒可传输148809帧。对于1518byte帧,则分别为98.69MBit/s和8127帧/s。
测试要求:一般把测试持续时间设定为20s,为了克服随机性的影响,每一个测试案例的测试次数设定为20次;测试粒度设定为不过理论速率的1%。
二、时延(Latency)
是指一个帧从源点到目的点的总传输时间,这个时间包括网络节点的处理时间和在传输介质上的传播时间。一般的测试方法是发送一个带有时间戳的帧,通过网络后,在接收方将当时的时间和帧所携带的时间戳比较,从而得出延时值。考虑到时间同步的问题,一般采用将发出的帧环回到发送方进行比较,因此也称为双程时延。
有两种定义方法:存储转发时延(store and forward latency,S&F)和直通交换时延(cut through latency,CT)。存储转发时延是指数据帧最后一个比特到达设备输入端口的时间与该数据帧第一个比特出现在设备输出端口的时间间隔,按后进先出的方法计算;直通时延是指数据帧第一个比特到达设备输入端口的时间与该数据帧第一个比特出现在设备输出端口的时间间隔,按先进先出的方法计算。
RFC2544要求对时延测试至少要重复20次,至少持续120s,结果取所有测试结果的平均值。
三、丢包率(Frame Loss Rate)
就是发送方发出但没有到达接收方的帧的数目。一般表示为帧丢失率。即相对于总发送帧数目的一个百分比。
计算公式:丢包率 = 接收方没有收到的包的个数/发包方的发包总数 * 100%
四、背靠背(Back to back)
属于边界值测试范畴,是向被测试设备连续发送具有最小帧间隔的N个帧(以太网标准规定最小帧间隔为0.96微秒),在不发生丢包的情况下,统计被测设备送出的帧的个数。如果和发送的个数相等,则增加N值,重复上述测试过程。直到被测设备送同的帧个数小于测试发送帧个数。反之则减少发送帧数,并减少发包时间,直至没有帧丢失发生。主要用于衡量具有存储转发能力的被测试设备的最大贮转发能力。
它主要和以下一些因素有关:网络设备内部缓冲的大小;网络设备入、出口之间的速率差;网络设备转发能力的大小;网络设备交换网络的调度算法等。
标准中要求发送时间不能小于2s,建议至少重复20次,结果取其平均值。
一、什么是组播:
1、组播的特点
1)什么是组播?
组播是一种数据包传输方式,当有多台主机同时成为一个数据包的接受者时,出于对带宽和CPU负担的考虑,组播成为了一种最佳选择。
2)组播如何进行工作?
组播通过把224.0.0.0-239.255.255.255的D类地址作为目的地址,有一台源主机发出目的地址是以上范围组播地址的报文,在网络中,如果有其他主机对于这个组的报文有兴趣的,可以申请加入这个组,并可以接受这个组,而其他不是这个组的成员是无法接受到这个组的报文的。
3)组播和单播的区别?
为了让网络中的多个主机可以同时接受到相同的报文,如果采用单播的方式,那么源主机必须不停的产生多个相同的报文来进行发送,对于一些对时延很敏感的数据,在源主机要产生多个相同的数据报文后,在产生第二个数据报文,这通常是无法容忍的。而且对于一台主机来说,同时不停的产生一个报文来说也是一个很大的负担。如果采用组播的方式,源主机可以只需要发送一个报文就可以到达每个需要接受的主机上,这中间还要取决于路由器对组员和组关系的维护和选择。
4)组播和广播的区别?
如同上个例子,当有多台主机想要接收相同的报文,广播采用的方式是把报文传送到局域网内每个主机上,不管这个主机是否对报文感兴趣。这样做就会造成了带宽的浪费和主机的资源浪费。而组播有一套对组员和组之间关系维护的机制,可以明确的知道在某个子网中,是否有主机对这类组播报文感兴趣,如果没有就不会把报文进行转发,并会通知上游路由器不要再转发这类报文到下游路由器上。
2、组播的缺点:
1) 与单播协议相比没有纠错机制,发生丢包错包后难以弥补,但可以通过一定的容错机制和QOS加以弥补。
2) 现行网络虽然都支持组播的传输,但在客户认证、QOS等方面还需要完善,这些缺点在理论上都有成熟的解决方案,只是需要逐步推广应用到现存网络当中。
二、什么是单播:
1、单播的定义
主机之间“一对一”的通讯模式,网络中的交换机和路由器对数据只进行转发不进行复制。如果10个客户机需要相同的数据,则服务器需要逐一传送,重复10次相同的工作。但由于其能够针对每个客户的及时响应,所以现在的网页浏览全部都是采用IP单播协议。网络中的路由器和交换机根据其目标地址选择传输路径,将IP单播数据传送到其指定的目的地。
2、单播的优点:
1)服务器及时响应客户机的请求
2)服务器针对每个客户不通的请求发送不通的数据,容易实现个性化服务。
3、单播的缺点:
1)服务器针对每个客户机发送数据流,服务器流量=客户机数量×客户机流量;在客户数量大、每个客户机流量大的流媒体应用中服务器不堪重负。
2)现有的网络带宽是金字塔结构,城际省际主干带宽仅仅相当于其所有用户带宽之和的5%。如果全部使用单播协议,将造成网络主干不堪重负。现在的P2P应用就已经使主干经常阻塞,只要有5%的客户在全速使用网络,其他人就不要玩了。而将主干扩展20倍几乎是不可能。
三、 什么是广播:
1、广播的定义
主机之间“一对所有”的通讯模式,网络对其中每一台主机发出的信号都进行无条件复制并转发,所有主机都可以接收到所有信息(不管你是否需要),由于其不用路径选择,所以其网络成本可以很低廉。有线电视网就是典型的广播型网络,我们的电视机实际上是接受到所有频道的信号,但只将一个频道的信号还原成画面。在数据网络中也允许广播的存在,但其被限制在二层交换机的局域网范围内,禁止广播数据穿过路由器,防止广播数据影响大面积的主机。
2、广播的优点:
1)网络设备简单,维护简单,布网成本低廉
2)由于服务器不用向每个客户机单独发送数据,所以服务器流量负载极低。
3、广播的缺点:
1)无法针对每个客户的要求和时间及时提供个性化服务。
2)网络允许服务器提供数据的带宽有限,客户端的最大带宽=服务总带宽。例如有线电视的客户端的线路支持100个频道(如果采用数字压缩技术,理论上可以提供500个频道),即使服务商有更大的财力配置更多的发送设备、改成光纤主干,也无法超过此极限。也就是说无法向众多客户提供更多样化、更加个性化的服务。
3) 广播禁止在Internet宽带网上传输。
四、什么是多播:
1、多播的定义
“多播”可以理解为一个人向多个人(但不是在场的所有人)说话,这样能够提高通话的效率。如果你要通知特定的某些人同一件事情,但是又不想让其他人知道,使用电话一个一个地通知就非常麻烦,而使用日常生活的大喇叭进行广播通知,就达不到只通知个别人的目的了,此时使用“多播”来实现就会非常方便快捷,但是现实生活中多播设备非常少。多播包括组播和广播,组播是多播的一种表现形式。
2、多播的特点
广播和多播仅应用于UDP,它们对需将报文同时传往多个接收者的应用来说十分重要。TCP是一个面向连接的协议,它意味着分别运行于两主机(由IP地址确定)内的两进程(由端口号确定)间存在一条连接。
考虑包含多个主机的共享信道网络如以太网。每个以太网帧包含源主机和目的主机的以太网地址(48 bit)。通常每个以太网帧仅发往单个目的主机,目的地址指明单个接收接口,因而称为单播(unicast)。在这种方式下,任意两个主机的通信不会干扰网内其他主机(可能引起争夺共享信道的情况除外)。然而,有时一个主机要向网上的所有其他主机发送帧,这就是广播。通过ARP和RARP可以看到这一过程。多播(multicast) 处于单播和广播之间:帧仅传送给属于多播组的多个主机。
五、什么是泛洪:
1、泛洪的定义
在CISCO设备上有个概念叫泛洪。如果有学设备的,我这里顺便对比讲下,比如现在有个信息包进来,从我们交换机某个端口进来,他要寻址如果事先没有地址那么他就会给每个端口发信息,包括自己,来求证是否是对方。所以交换机不能屏蔽广播而路由器可以,因为他有记忆功能,可以形成路由表。而设备上的泛洪呢他的意思是给所有端口发,除了自己,大家对记下这两个概念.而我们IP地址上的广播地址的概念:IP地址是由2进制组成,当全为一时,表示广播地址。广播地址主机都为1.主机全为0的话是网段表示一个网。
2、网络泛洪
从定义上说,攻击者对网络资源发送过量数据时就发生了洪水攻击,这个网络资源可以是router,switch,host,application等。常见的洪水攻击包含MAC泛洪,网络泛洪,TCP SYN泛洪和应用程序泛洪。接下来简单的分别解释一下以上这些:
1)MAC泛洪发生在OSI第二层,攻击者进入LAN内,将假冒源MAC地址和目的MAC地址将数据帧发送到以太网上导致交换机的内容可寻址存储器(CAM)满掉,然后交换机失去转发功能,导致攻击者可以像在共享式以太网上对某些帧进行嗅探,这种攻击可以通过端口安全技术方式,比如端口和MAC地址绑定。
2)网络泛洪包括Smurf和DDos:
smurf发生在OSI第三层,就是假冒ICMP广播ping,如果路由器没有关闭定向广播,那攻击者就可以在某个网络内对其它网络发送定向广播ping,那个网络中的主机越是多,造成的结果越是严重,因为每个主机默认都会响应这个ping,导致链路流量过大而拒绝服务,所以属于增幅泛洪攻击,当然也可以对本 网络发送广播ping。
3)DDos发生在OSI第三、四层,攻击侵入许多因特网上的系统,将DDos控制软件安装进去,然后这些系统再去感染其它系统,通过这些代理,攻击者将攻击指令发送给DDos控制软件,然后这个系统就去控制下面的代理系统去对某个IP地址发送大量假冒的网络流量,然后受攻击者的网络将被这些假的流量所占据就无法为他们的正常用户提供服务了。
4)TCP SYN泛洪发生在OSI第四层,这种方式利用TCP协议的特性,就是三次握手。攻击者发送TCP SYN,SYN是TCP三次握手中的第一个数据包,而当服务器返回ACK后,改攻击者就不对之进行再确认,那这个TCP连接就处于挂起状态,也就是所谓的半连接状态,服务器收不到再确认的话,还会重复发送ACK给攻击者。这样更加会浪费服务器的资源。攻击者就对服务器发送非常大量的这种TCP连接,由于每一个都没法完成三次握手,所以在服务器上,这些TCP连接会因为挂起状态而消耗CPU和内存,最后服务器可能死机,就无法为正常用户提供服务了。
5)最后应用程序泛洪发生在OSI第七层,目的是消耗应用程序或系统资源,比较常见的应用程序泛洪是什么呢?没错,就是垃圾邮件,但一般无法产生严重的结果。其它类型的应用程序泛洪可能是在服务器上持续运行高CPU消耗的程序或者用持续不断的认证请求对服务器进行泛洪攻击,意思就是当TCP连接完成后,在服务器提示输入密码的时候停止响应。
应用领域
1.单播:网络节点之间的通信就好像是人们之间的对话一样。如果一个人对另外一个人说话,那么用网络技术的术语来描述就是“单播”,此时信息的接收和传递只在两个节点之间进行。单播在网络中得到了广泛的应用,网络上绝大部分的数据都是以单播的形式传输的,只是一般网络用户不知道而已。例如,你在收发电子邮件、浏览网页时,必须与邮件服务器、Web服务器建立连接,此时使用的就是单播数据传输方式。但是通常使用“点对点通信”(Point to Point)代替“单播”,因为“单播”一般与“多播”和“广播”相对应使用。
2.多播:“多播”也可以称为“组播”,在网络技术的应用并不是很多,网上视频会议、网上视频点播特别适合采用多播方式。因为如果采用单播方式,逐个节点传输,有多少个目标节点,就会有多少次传送过程,这种方式显然效率极低,是不可取的;如果采用不区分目标、全部发送的广播方式,虽然一次可以传送完数据,但是显然达不到区分特定数据接收对象的目的。采用多播方式,既可以实现一次传送所有目标节点的数据,也可以达到只对特定对象传送数据的目的。 IP网络的多播一般通过多播IP地址来实现。多播IP地址就是D类IP地址,即224.0.0.0至239.255.255.255之间的IP地址。Windows 2000中的DHCP管理器支持多播IP地址的自动分配。
3.广播:“广播”在网络中的应用较多,如客户机通过DHCP自动获得IP地址的过程就是通过广播来实现的。但是同单播和多播相比,广播几乎占用了子网内网络的所有带宽。拿开会打一个比方吧,在会场上只能有一个人发言,想象一下如果所有的人同时都用麦克风发言,那会场上就会乱成一锅粥。集线器由于其工作原理决定了不可能过滤广播风暴,一般的交换机也没有这一功能,不过现在有的网络交换机(如全向的QS系列交换机)也有过滤广播风暴功能了,路由器本身就有隔离广播风暴的作用。 广播风暴不能完全杜绝,但是只能在同一子网内传播,就好像喇叭的声音只能在同一会场内传播一样,因此在由几百台甚至上千台电脑构成的大中型局域网中,一般进行子网划分,就像将一个大厅用墙壁隔离成许多小厅一样,以达到隔离广播风暴的目的。 在IP网络中,广播地址用IP地址“255.255.255.255”来表示,这个IP地址代表同一子网内所有的IP地址。
交换机根据数据包中分装的目的
主机的MAC地址信息查找MAC地
址表,同时根据源主机MAC地址
信息更新自己的MAC地址表
如果表中存在该目的主机的MAC
地址,则从其对应的端口将数据
包发送出去。
如果表中不存在该目的主机的
MAC地址,则将该数据包通过
广播方式发送到所有端口。
目的主机PC2接收到数据包后,回
复响应数据包给PC1,该过程与
PC1发送数据包给PC2类似,但此
时,PC2是源主机,PC1是目的主
机。
报文结构:
Vlan:
UDP:
TCP
1) 源、目的端口号:标识封装应用进程的端口,各2字节; 2) 序号:用于标识发送的数据字节流,4字节; 3) 确认号:包含发送确认的一段所希望收到的下一个序号,当ACK为1时,该 确认号有效,4字节; 4) 首长:即首部长度,4 bit; 5) URG:紧急指针有效; 6) ACK:确认号有效; 7) PSH:接收方尽快将该报文移交给应用层; 8) RST:重新连接; 9) SYN:同步序号,发起一个连接; 10) FIN:完成发送任务; 11) 窗口大小:声明窗口大小,2字节; 12) 校验和:校验整个TCP数据包; 13) 紧急指针:描述“紧急数据”放置在普通数据流中,当URG置为1时有效。
展开阅读全文