精华内容
下载资源
问答
  • 以太网数据包长度限制

    千次阅读 2020-06-21 19:13:10
    我们使用以太网进行数据传输(UDP、TCP),数据包大小是有限制的,并不是多长都可以。 TCP/IP协议从下到上包含:链路层、IP层、传输层、应用层。 链路层: 链路层的数据交互是基于数据帧, 一帧数据包的最大...

    我们使用以太网进行数据传输(UDP、TCP),数据包的大小是有限制的,并不是多长都可以。

    TCP/IP协议从下到上包含:链路层、IP层、传输层、应用层。

    链路层:

    链路层的数据交互是基于数据帧, 一帧数据包的最大长度1518(以太网帧最大长度)-18(以太网帧头帧尾) = 1500字节。

    IP层:

    由于链路层的数据帧最大为1500,所以该层的最大数据包长度为1500-20(IP包首部)=1480字节。

    传输层:

    如果禁止IP层进行数据分包传输:

    对于TCP数据包最大长度1480-20(TCP包首部)=1460字节,大于该长度数据在经过IP层时就会进行分包。

    对于UDP数据包最大长度1480-8(UDP包首部)=1472字节,大于该长度数据在经过IP层时就会进行分包,某一些路由器设置允许通过的最小以太网数据帧为576字节,如果考虑到这一限制,那么允许发送的最大UDP数据包长度为 576 -  20(IP包首部) - 18(UDP包首部) = 548字节。 

    如果允许IP层进行数据分包传输:

    TCP 协议:基于流进行数据传输,数据包的长度不受限制。

    UDP协议:UDP协议要求一帧数据包最大不能超过64K。

    总结:一般来说,TCP协议是可靠的数据传输,自身会进行数据丢包重传,保证数据完整可靠的到达目的主机,但UDP协议是不可靠的数据传输方式,无法保证数据一定可以到达目的主机。所以一般在使用时需要自己添加应答重传机制,但是对于网络通讯质量很差的场合,如果发送的UDP数据包长度很大,那么在经过IP层时就会进行分包发送,在传输过程中任何一个子数据包的丢失,都会导致整个数据包在IP层被丢弃,从而导致传输失败,因此在这种情况下,最好的办法就是限制传输层发送的数据包大小,保证数据包在经过IP层时不会进行分包发送,然后我们自己在传输层上添加应答重传机制,并自己进行分包发送、组包接收。

     

     

    展开全文
  • 以太网 数据包速率计算方法

    千次阅读 2018-09-10 23:15:49
    以太网 数据包速率计算方法 2017年02月25日 20:24:24 阅读数:2520更多 个人分类: 网络安全 我们知道1个千兆端口的线速包转发率是1.4881MPPS, 百兆端口的线速包转发率是0.14881MPPS,这是国际标准,但是如何...

    以太网 数据包速率计算方法

    2017年02月25日 20:24:24 阅读数:2520更多

    个人分类: 网络安全

    我们知道1个千兆端口的线速包转发率是1.4881MPPS,

    百兆端口的线速包转发率是0.14881MPPS,这是国际标准,但是如何得来的呢?

    具体的数据包在传输过程中会在每个包的前面加上64个(前导符)preamble也就是一个64个字节的数据包,原本只有512个bit,但在传输过程中实际上会有512+64+96=672bit,也就是这时一个数据包的长度实际上是有672bit的千兆端口线速包转发率=1000Mbps/672=1.488095Mpps,约等于1.4881Mpps,百兆除于10

    为0.14881Mpps那么以后很简单了,其实直接用设备参数中的pps数值乘以672那么就转化成我们比较能理解的大众化的bps概念了。

    一般销售为了方便大家计算和整数化的理解就改672为500。

    理解了这个后忽然发现网络设备选型原来是那么的简单,我只需要预计网络中的总节点数和带宽需求及流量需求,那么需要的交换机性能型号和路由器型号就呼之欲出了。

    注:现在的设备很多是三层交换机,我们看到的参数是分别针对三层模块和二层模块来说的。

    例如4楼提到的的6509就是这样了。

    数据交换能力是720Gbps,但是路由包转发能力是400Mpps。这里没有矛盾。因为两个数据都不是描述一件事情。

    交换机背板计算

    交换机的背板带宽,是交换机接口处理器或接口卡和数据总线间所能吞吐的最大数据量。背板带宽标志了交换机总的数据交换能力,单位为Gbps,也叫交换带宽,一般的交换机的背板带宽从几Gbps到上百Gbps不等。一台交换机的背板带宽越高,所能处理数据的能力就越强,但同时设计成本也会越高。

       一般来讲,计算方法如下:

    1)线速的背板带宽

    考察交换机上所有端口能提供的总带宽。计算公式为端口数*相应端口速率*2(全双工模式)如果总带宽≤标称背板带宽,那么在背板带宽上是线速的。

    2)第二层包转发线速

    第二层包转发率=千兆端口数量×1.488Mpps+百兆端口数量*0.1488Mpps+其余类型端口数*相应计算方法,如果这个速率能≤标称二层包转发速率,那么交换机在做第二层交换的时候可以做到线速。

    3)第三层包转发线速

    第三层包转发率=千兆端口数量×1.488Mpps+百兆端口数量*0.1488Mpps+其余类型端口数*相应计算方法,如果这个速率能≤标称三层包转发速率,那么交换机在做第三层交换的时候可以做到线速。

       那么,1.488Mpps是怎么得到的呢?

    包转发线速的衡量标准是以单位时间内发送64byte的数据包(最小包)的个数作为计算基准的。对于千兆以太网来说,计算方法如下:1,000,000,000bps/8bit/(64+8+12)byte=1,488,095pps 说明:当以太网帧为64byte时,需考虑8byte的帧头和12byte的帧间隙的固定开销。故一个线速的千兆以太网端口在转发64byte包时的包转发率为1.488Mpps。快速以太网的线速端口包转发率正好为千兆以太网的十分之一,为148.8kpps。

    *对于万兆以太网,一个线速端口的包转发率为14.88Mpps。

    *对于千兆以太网,一个线速端口的包转发率为1.488Mpps。

    *对于快速以太网,一个线速端口的包转发率为0.1488Mpps。

    *对于OC-12的POS端口,一个线速端口的包转发率为1.17Mpps。

    *对于OC-48的POS端口,一个线速端口的包转发率为468MppS。

    所以说,如果能满足上面三个条件,那么我们就说这款交换机真正做到了线性无阻塞

       背板带宽资源的利用率与交换机的内部结构息息相关。目前交换机的内部结构主要有以下几种:一是共享内存结构,这种结构依赖中心交换引擎来提供全端口的高性能连接,由核心引擎检查每个输入包以决定路由。这种方法需要很大的内存带宽、很高的管理费用,尤其是随着交换机端口的增加,中央内存的价格会很高,因而交换机内核成为性能实现的瓶颈;二是交叉总线结构,它可在端口间建立直接的点对点连接,这对于单点传输性能很好,但不适合多点传输;三是混合交叉总线结构,这是一种混合交叉总线实现方式,它的设计思路是,将一体的交叉总线矩阵划分成小的交叉矩阵,中间通过一条高性能的总线连接。其优点是减少了交叉总线数,降低了成本,减少了总线争用;但连接交叉矩阵的总线成为新的性能瓶颈。

    传输速率

    1M带宽的意思是1Mbps注意是bps而不是Bps!

    换算吧,1Bps=8bps;

    所以1Mbps=128KBps;

    所以下载速度最高为128KBps

    1Mbps=1024KBps/8=128KBps

    随便说说什么是bps

    bps是bits per second的缩写,表示比特/秒。那么客户下载一首5兆的MP3歌曲,需要多长时间?这与下载速率有直接的关系。

    以普通的ADSL为例(基本都能达到50Kbps的下载速率):(5MB=5120KB÷50K=102.4秒,约1.7分钟。

    端口速率与包个数计算 PPS 与 BPS

    分类: L2 Switch 2009-06-15 17:59 1650人阅读 评论(0) 收藏 举报

    byte路由器面试工作

    端口速率 与 包个数   PPS 与 BPS

    下面是某位同事的面试题,

    “交换机端口速率100Mbps代表什么意思? 那每秒钟能最多能发送多少个数据包 ? ”

    如果你能回答请忽略下文。

    一, PPS 和BPS的概念.

    PPS = Packets Per Second  

    Bps  = Bytes Per Second   

    bps  = bits per Second

    二, 计算公式,

      如以每秒 200个包的速率发送包大小为100Bytes的数据包,  则其速率为多少byteps / bps,

       ( 8 + 100 + 12 ) x 200 = 24000 Byte per seconds

    其中 8 为 8个字节的前倒符 ,  12为12个字节的包间隔(gap)

       (64 +100x8 +12x8) x 200 =  192000 bitps

    三, 详细如下,

    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个包,其实这是二层交换的理论极限值,而不是真正的路由器在三层工作时候的值。

    展开全文
  • 以太网数据包协议格式MAC层ARP层IP层ICMPUDPTCP、UDP数据包大小的限制 MAC层 帧格式: 帧介绍: 帧间隙(IFG): 网络设备和组件在接收一个帧之后,需要一段短暂的时间来恢复并为接收下一帧做准备。 不管 10M/100M/...

    MAC层

    帧格式:
    在这里插入图片描述

    帧介绍:
    在这里插入图片描述帧间隙(IFG):
    网络设备和组件在接收一个帧之后,需要一段短暂的时间来恢复并为接收下一帧做准备。
    不管 10M/100M/1000M的以太网,两帧之间最少要有96bit;公式:IFGmin=96bit/speed (单位:s),则:
    10Mmin 是9600 ns
    100Mmin 是960 ns
    1000Mmin 是 96 ns

    ARP层

    功能:
    地址解析协议(Address Resolution Protocol),其基本功能为透过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。

    帧格式:
    在这里插入图片描述
    帧介绍:
    在这里插入图片描述帧传输:
    若当前链路层网络类型为以太网,网络层协议为IP协议,以太网源地址为MAC1,源IP地址为IP1, 以太网目的地址为MAC2,目的IP地址为IP2。
    在这里插入图片描述

    IP层

    帧格式:
    在这里插入图片描述帧介绍:
    在这里插入图片描述

    ICMP

    功能:
    侦测远端主机是否存在,建立及维护路由资料,重导资料传送路径(ICMP重定向),资料流量控制。ICMP在沟通之中,主要是透过不同的类别(Type)与代码(Code) 让机器来识别不同的连线状况。
    帧格式:
    在这里插入图片描述帧介绍:
    在这里插入图片描述

    UDP

    UDP 报头使用两个字节存放端口号,所以端口号的有效范围是从 0 到 65535。一般来说,大于 49151 的端口号都代表动态端口。
    帧格式:
    在这里插入图片描述帧介绍:
    在这里插入图片描述

    TCP、UDP数据包大小的限制

    在这里插入图片描述
    1.在链路层,由以太网的物理特性决定了数据帧的长度为(46+18)-(1500+18),其中的18是数据帧的头和尾,也就是说数据帧的内容最大为1500(不包括帧头和帧尾),即MTU(Maximum Transmission Unit)为1500;  
    2.在网络层,因为IP包的首部要占用20字节,所以这的MTU为1500-20=1480; 
    3.在传输层,对于UDP包的首部要占用8字节,所以这的MTU为1480-8=1472;   
    所以,在应用层,你的Data最大长度为1472。当我们的UDP包中的数据多于MTU(1472)时,发送方的IP层需要分片fragmentation进行传输,而在接收方IP层则需要进行数据报重组,由于UDP是不可靠的传输协议,如果分片丢失导致重组失败,将导致UDP数据包被丢弃。   
    从上面的分析来看,在普通的局域网环境下,UDP的数据最大为1472字节最好(避免分片重组)。   
    但在网络编程中,Internet中的路由器可能有设置成不同的值(小于默认值),Internet上的标准MTU值为576,所以Internet的UDP编程时数据长度最好在576-20-8=548字节以内。

    展开全文
  • 前言: 讲述以太网传输中各个层的结构 内容 一、数据传输封装过程: ...(3)以太网帧中的数据长度规定最小46 字节,最大1500 字节,ARP 和RARP 数据包的长度不够46 字节,要在后面补填充位...

    前言:

    讲述以太网传输中各个层的结构

    内容:

    一、数据传输封装过程:

     

     

    2、以太网帧格式

     

    (1)其中的源地址和目的地址是指网卡的硬件地址(也叫MAC 地址),长度是48 位,是在网卡出厂时固化的。

    (2)注意网卡芯片(例如DM9000A)收到的数据就是如上所示的一长串数据;其中包括以太网帧头、IP报报头、传输层协议段头、应用层所需数据。

    (3)以太网帧中的数据长度规定最小46 字节,最大1500 字节,ARP 和RARP 数据包的长度不够46 字节,要在后面补填充位。最大值1500 称为以太网的最大传输单元(MTU),不同的网络类型有不同的MTU,如果一个数据包从以太网路由到拨号链路上,数据包度大于拨号链路的MTU了,则需要对数据包进行分片fragmentation)。ifconfig 命令的输出中也有“MTU:1500”。注意,MTU 个概念指数据帧中有效载荷的最大长度,不包括帧首部的长度。

    展开全文
  • 《TCP/IP网络协议栈:以太网数据包结构、802.3》 《TCP/IP网络协议栈:ARP协议详解》 《TCP / IP攻击:ARP缓存中毒的基本原理、TCP序列号预测和TCP重置攻击》 目录 01 概述 02 TCP/IP四层模型 1、主机到网络层...
  • 以太网首部 目地MAC地址(6字节) 源MAC地址(6字节) 类型(2字节) 1、IP头的结构 版本(4位) 头长度(4位) 服务类型(8位) 封包总...
  • TCP、UDP数据包大小的限制

    万次阅读 多人点赞 2016-05-29 10:27:34
    其中以太网(Ethernet)的数据帧在链路层 IP包在网络层 TCP或UDP包在传输层 TCP或UDP中的数据(Data)在应用层 它们的关系是 数据帧{IP包{TCP或UDP包{Data}}} 不同的协议层对数据包有不同的称谓,在传输...
  • 以太网数据包TCP、IP、ICMP、UDP、…

    千次阅读 2014-04-15 10:51:56
    以太网首部 目地MAC地址(8字节) 源MAC地址(8字节) 类型(2字节)     1、IP头的结构 版本(4位) 头长度(4位) 服务类型(8位) 封包总长度(16位) 封包标识(16位) ...
  • 以太网数据包如下表结构所示:     目地地址( 6B )  原地址     ( 6B )  类型     ( 2B )  数据     ( 46~1500B )  校验和     ( 4B )   ...
  • 以太网数据包、IP包、TCP/UDP 包结构

    万次阅读 2011-09-22 14:48:56
    以太网数据包如下表结构所示: 目地地址(6B) 原地址  (6B) 类型  (2B) 数据  (46~1500B) 校验和  (4B) IP数据包结构如下页表: 版本号(4位) 头...
  • 最大最小帧的大小以太网规定的,对于过小的帧,在发送时要填充。  TPSR为发送起始寄存器,将StartPage写入TPSR寄存器,高字节写入TBCRH(TBCR1),低字节写入TBCRL(TBCR0)。当写发送命令时,RTL8019AS将从TPSR...
  • udp数据包大小问题

    千次阅读 2018-07-15 16:31:50
    参考UDP数据包大小问题 几个关键点: 1. 以太网(Ethernet 在数据链路层)数据帧的长度必须在46-1500字节之间,这个1500字节被称为链路层的MTU(最大传输单元)(已经减去首部和尾部的18字节)这个1500字节就是网络层IP...
  • Netty数据包大小的确定

    万次阅读 2014-09-18 16:28:30
    当客户端数据量过大时,TCP协议会自动分包进行数据传输(何时分包,如何分包,每包大小尚未研究), 使用netty做server时,netty会根据当前接收到的数据包大小(适用于当前连接),自动调整下次接收到数据包大小...
  • 网络数据包大小计算

    万次阅读 2017-02-17 17:43:33
    以太网为例,这个值通常是1500字节。 2、对于IP数据包来讲,也有一个长度,在IP包头中,以16位来描述IP包的长度,也就是说, 一个IP包,最长可能是65535字节。 3、结合以上两个概念,第一个重要的结论就...
  • TCP、UDP数据包大小的问题

    千次阅读 2018-04-16 20:51:21
    在进行UDP编程的时候,由于发送的内容大小不固定,那么一次发送多少bytes比较好? 以太网(Ethernet)数据帧的长度必须在46-1500字节之间,这是由以太网的物理特性决定的.这个1500字节被称为链路层的MTU(最大传输单元)...
  • UDP数据包大小设定

    2019-11-30 13:48:23
    以太网(Ethernet)数据帧的长度必须在46-1500字节之间,这是由以太网的物理特性决定的.这个1500字节被称为链路层的MTU(最大传输单元).但这并不是指链路层的长度被限制在1500字节,其实这这个MTU指的是链路层的数据区.并...
  • UDP数据包大小分析

    千次阅读 2016-07-03 22:35:32
    在进行UDP编程的时候,我们最容易... UDP属于运输层,下面我们由下至上一步一步来看: 以太网(Ethernet)数据帧的长度必须在46-1500字节之间,这是由以太网的物理特性决定的. 这个1500字节被称为链路层的MTU(最大传输单元
  • tcp udp 数据包大小

    千次阅读 2011-09-28 15:43:17
    首先要看TCP/IP协议,涉及到四层:链路层,网络层,传输层,应用...其中以太网(Ethernet)的数据帧在链路层 IP包在网络层 TCP或UDP包在传输层 TCP或UDP中的数据(Data)在应用层 它们的关系是 数据帧{IP包{TC
  • UDP数据包大小的问题

    千次阅读 2011-05-26 10:38:00
    <br />UDP数据包大小问题   转帖自: http://blog.csdn.net/buptzwp/archive/2009/12/22/5055487.aspx<br />  在进行UDP编程的时候,我们最容易想到的问题就是,一次发送多少bytes好? ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 27,007
精华内容 10,802
关键字:

以太网数据包大小