精华内容
下载资源
问答
  • 以太网有效帧的最大长度是
    万次阅读 多人点赞
    2017-03-20 19:40:01
    以太网(IEEE 802.3)帧格式:

    1、前导码:7字节0x55,一串1、0间隔,用于信号同步
    2、帧起始定界符:1字节0xD5(10101011),表示一帧开始
    3、DA(目的MAC):6字节
    4、SA(源MAC):6字节
    5、类型/长度:2字节,0~1500保留为长度域值,1536~65535保留为类型域值(0x0600~0xFFFF)
    6、数据:46~1500字节
    7、帧校验序列(FCS):4字节,使用CRC计算从目的MAC到数据域这部分内容而得到的校验和。

    据RFC894的说明,以太网封装IP数据包的最大长度是1500字节,也就是说以太网最大帧长应该是以太网首部加上1500,再加上7字节的前导同步码和1字节的帧开始定界符,具体就是:7字节前导同步吗+1字节帧开始定界符+6字节的目的MAC+6字节的源MAC+2字节的帧类型+1500+4字节的FCS。

    按照上述,最大帧应该是1526字节,但是实际上我们抓包得到的最大帧是1514字节,为什么不是1526字节呢? 原因是当数据帧到达网卡时,在物理层上网卡要先去掉前导同步码和帧开始定界符,然后对帧进行CRC检验,如果帧校验和错,就丢弃此帧。如果校验和正确,就判断帧的目的硬件地址是否符合自己的接收条件(目的地址是自己的物理硬件地址、广播地址、可接收的多播硬件地址等),如果符合,就将帧交“设备驱动程序”做进一步处理。这时我们的抓包软件才能抓到数据, 因此,抓包软件抓到的是去掉前导同步码、帧开始分界符、FCS之外的数据,其最大值是6+6+2+1500=1514。

    以太网规定,以太网帧数据域部分最小为46字节,也就是以太网帧最小是6+6+2+46+4=64。除去4个字节的FCS,因此,抓包时就是60字节。当数据字段的长度小于46字节时,MAC子层就会在数据字段的后面填充以满足数据帧长不小于64字节。由于填充数据是由MAC子层负责,也就是设备驱动程序。

    以CSMA/CD作为MAC算法的一类LAN称为以太网。CSMA/CD冲突避免的方法:先听后发、边听边发、随机延迟后重发。一旦发生冲突,必须让每台主机都能检测到。关于最小发送间隙和最小帧长的规定也是为了避免冲突。

    考虑如下的情况,主机发送的帧很小,而两台冲突主机相距很远。在主机A发送的帧传输到B的前一刻,B开始发送帧。这样,当A的帧到达B时,B检测到冲突,于是发送冲突信号。假如在B的冲突信号传输到A之前,A的帧已经发送完毕,那么A将检测不到冲突而误认为已发送成功。由于信号传播是有时延的,因此检测冲突也需要一定的时间。这也是为什么必须有个最小帧长的限制。

    按照标准,10Mbps以太网采用中继器时,连接的最大长度是2500米,最多经过4个中继器,因此规定对10Mbps以太网一帧的最小发送时间为51.2微秒。这段时间所能传输的数据为512位,因此也称该时间为512位时。这个时间定义为以太网时隙,或冲突时槽。512位=64字节,这就是以太网帧最小64字节的原因。

    512位时是主机捕获信道的时间。如果某主机发送一个帧的64字节仍无冲突,以后也就不会再发生冲突了,称此主机捕获了信道。

    由于信道是所有主机共享的,如果数据帧太长就会出现有的主机长时间不能发送数据,而且有的发送数据可能超出接收端的缓冲区大小,造成缓冲溢出。为避免单一主机占用信道时间过长,规定了以太网帧的最大帧长为1500。

    100Mbps以太网的时隙仍为512位时,以太网规定一帧的最小发送时间必须为5.12μs。

    1000Mbps以太网的时隙增至512字节,即4096位时,4.096μs。


    更多相关内容
  • 来源:《传智播客》及网络整理:王耀以太网(Ethernet)最早是由Xerox(施乐)公司创建的局域网组网规范,1980年DEC、Intel和Xeox三家公司联合开发了初版Ethernet规范—DIX 1.0,1982年这三家公司又推出了修改版本DIX ...

    来源:《传智播客》及网络

    整理:王耀

    以太网(Ethernet)最早是由Xerox(施乐)公司创建的局域网组网规范,1980年DEC、Intel和Xeox三家公司联合开发了初版Ethernet规范—DIX 1.0,1982年这三家公司又推出了修改版本DIX 2.0,并将其提交给IEEE 802工作组——现在好多的10G、40G、100G、400G光模块标准也出自这个组,经IEEE成员修改并通过后,成为IEEE的正式标准,并编号为IEEE 802.3。

    虽然Ethernet规范和IEEE 802.3规范并不完全相同,但一般认为Ethernet和正IEEE 802.3是兼容的。

    以太网是应用最广泛的局域网技术,根据传输速率的不同,以太网分为标准以太网(10Mbit/s)、快速以太网(100Mbis)、千兆以太网(1000Mbs)和万兆以太网(10Gbit/s),这些以太网都符合IEEE 802.3标准,是兼容的。

    1、标准以太网

    标准以太网是最早期的以太网,其传输速率为10Mbts,也称为传统以太网。

    此种以太网的组网方式非常灵活,既可以使用粗、细缆组成总线网络,也可以使用双绞线组成星状网络,还可以同时使用同轴电缆和双绞线组成混合网络。这些网络都符合IEE802.3标准,IEEE802.3中规定的一些传统以太网物理层标准如下。

    • 10 Base-2:使用细同轴电缆,最大网段长度为185m。

    • 10 Base-5:使用粗同轴电缆,最大网段长度为500m。

    • 10 Base-T:使用双纹线,最大网段长度为100m。

    • 10 Boad-36:使用同轴电缆,最大网段长度为3600m。

    • 10 Base-F:使用光纤,最大网段长度为2000m,传输速率为10Mb/s。

    以土标准中首部的数字代表传输速率,单位为Mbis;末尾的数字代表单段网线长度(基准单位为100m);Base表示基带传输, Broad表示宽带传输。

    2、快速以太网

    随着网络的发展和各项网络技术的普及,标准以太网技术已难以满足人们对网络数据流量和速率的需求。

    1993年10月以前,人们只能选择价格昂贵、基于100Mbs光缆的FDD技术组建高标准网络,1993年10月, Grand Junction公司推出了世界上第一台快速以太网集线器FastSwitch10/100和百兆网络接口卡 Fast NIC 100,快速以太网技术正式得到应用。

    随后,Intel、3COM等公司也相继推出了自己的快速以太网设备,同时IEEE802工作组对100Mbi/s以太网的各种标准进行了研究,并于1995年4月发布了IEEE 802.3u 100Base-T快速以太网标准,快速以太网时代到来。

    IEEE 802.3U标准基本保持了标准局域网的规定,包括帧格式、接口、介质访问控制方法

    ( CSMA/CD)等,只是将数据传输速率从10Mbts提升到了100Mbit/s,又使用了一些新的物理层标准,具体如下所示。

    • 100 Base-1X:使用两对5类屏蔽或非屏蔽双绞线,一对用于发送数据,一对用于传输数据;使用RJ-45或DB9接口,节点与集线器的最大距离为100m,支持全双工。

    • 100 Base-T4:使用4对3类、4类或5类双绞线,3对用于发送数据,1对用于检测冲突信号;使用R-45连接器,最大网段长度为100m,不支持全双工。

    • 100Base-FX:使用一对单模或多模光纤,一路用于发送数据,一路用于接收数据;最大网段长度为200m(使用单模光纤时可达2000m),支持全双工。此种网络主要用于搭建主千网,以提升主干网络传输速率。

    3、千兆以太网

    千兆以太网(GigabitEthernet)也称为吉比特以太网。

    1995年11月,IEEE 802.3工作组委任一个高速研究组,以研究将快速以太网速率增至1000Mbls的可行性和方法。

    1996年6月,IEEE标准委员会批准了千兆以太网方案授权申请,随后IEEE 802.3工作组成立了IEEE 802.3z工作委员会,该委员会建立了千兆以太网标准,该标准的主要规定如下:

    • 速率为1000Mbit/s的以太网在通信时的全双工/伴半双工操作。

    • 使用8023以太网帧格式、CSMA/CD技术。

    • 在一个冲突域中支持一个中继器。

    • 向下兼容10Base-T和100Base-TIEEE 802.3。

    工作组为千兆以太网制定了一系列物理层标准,其中常用的标准如下。

    (1)1000 Base-SX:使用芯径为50m及625m、工作波长为850m的多模光纤,采用8B/10B编码方式,传输距离分别为260m和525m。此标准主要应用于建筑物中同一层的短距离主于网。

    (2)1000 Base-LX:使用芯径为50pm及625m、工作波长为850nm和芯径为5m、工作波长为1300nm的多模、单模光纤,传输距离分别为525m、550m和3000m。此标准主要应用于校园主干网。

    (3)1000 Base-CX:使用1500屏蔽双绞线,采用8B/10B编码方式,传输速率为1.25Gbis,传输距离为25m。此标准主要用于集群设备的连接,如一个交换机机房内的设备互联。

    (4)1000 Base-T:使用4对5类非屏蔽双绞线,采用PAM5编码方式,传输距离为100m。

    此标准主要用于同一层建筑的通信,从而可利用标准以太网或快速以太网已铺设的非屏蔽双绞线电缆。

    千兆以太网采用光纤作为上行链路,用于楼宇间的连接,原本被作为一种交换技术设计,之后被广泛应用于服务器的连接和主干网中。如今,千兆以太网已成为主流的网络技术,无论是大型企业还是中小型企业,在组建网络时都会把千兆以太网作为首选高速网络技术。

    4、万兆以太网

    万兆以太网(10 Gigabit Ethernet,10GE)也称为10吉比特以太网,是继千兆以太网之后产生的高速以太网。在千兆以太网的IEEE 802.3Z规范通过后不久,IEEE成立了高速研究组(High Speed Study Group,HssG),该研究组主要致力于10GE的研究。

    10GE并非简单地将千兆以太网的速率提升了10倍,2002年6月,IEEE 802.3ae委员会制定了10GE的正式标准,该标准主要包括以下内容。

    • 兼容8023标准中定义的最小和最大以太网帧长度。

    • 仅支持全双工方式。

    • 使用点对点链路和结构化布线组建星状局域网。

    • 在 MAC/PLS服务接口上实现10Gbs的速度。

    • 定义两种物理层规范,即局域网PHY和广域网PHY。

    • 定义将 MAC/PLS的数据传输速率对应到广域网PHY数据传输速率的适配机制。

    • 定义支持特定物理介质相关接口(PMD)的物理层规范,包括多模光纤和单模光纤以及相应传输距离;支持ISO/C11801第二版中定义的光纤介质类型等。

    • 通过WAN界面子层,10Gbi/s也能被调整为较低的传输速率。

    此外,10Gbis不再使用铜线,只使用光纤作为传输媒介,不再使用 CSMA/CD协议。千兆以太网仍可使用已有的光纤通道技术,但10GE使用新开发的物理层。10GE常用的物理层规范如下。

    • 10G Base-SR:SR表示" Short Reach"(短距离),10GBae-SR仅用于短距离连接,该规范支持编码方式为64B/66B的短波(850mm)多模光纤,有效传输距离为2m~300m。

    • 10G Base-LR:LR表示“Long Reach”(长距离),10 G Base-LR主要用于长距离连接,该规范支持编码方式为64B/66B的长波(1310mm)单模光纤,有效传输距离为2m~10km,最高可达25km。

    • 10 G Base-ER:ER表示“ Extended Reach”(超长距离,10G Base-ER支持超长波(1550nm)单模光纤,有效传输距离为2m~40km。

    5、以太网标准的发展及历史版本

    eab6928c6a96895c3069fbaf0930f65e.png

    ecb2590d8ab3c01c6846421adf591471.png

    22db05de22008a13c146c36d7055dc3b.png

    备注:

    1、这是最原始的一种格式,是由Xerox PARC提出的3MbpsCSMA/CD以太网标准的封装格式,后来在1980年由DEC,Intel和Xerox标准化形成EthernetV1标准。

    2、这是最常见的一种以太网帧格式,也是今天以太网的事实标准,由DEC,Intel和Xerox在1982年公布其标准,主要更改了EthernetV1的电气特性和物理接口,在帧格式上并无变化;Ethernet V2出现后迅速取代EthernetV1成为以太网事实标准。

    3、BASE表示Ethernet使用的是基带传输;10M/100M/1G/10G/...都是线路速率。

    4、这是1983年Novell发布其划时代的Netware/86网络套件时采用的私有以太网帧格式,该格式以当时尚未正式发布的802.3标准为基础;但是当两年以后IEEE正式发布802.3标准时情况发生了变化—IEEE在802.3帧头中又加入了802.2 LLC(Logical Link Control)头,这使得Novell的RAW 802.3格式跟正式的IEEE 802.3标准互不兼容。

    关于“10+分享”

    “10+分享”(即"拾加分享")是国内首家集成电路行业的经验分享平台,涵盖芯片设计、IP开发、制造、封装、测试,以及EDA软件使用等领域。特色是分享的经验和知识全部来自于实际产品、项目和岗位。

    b1a13117e5bfdf9774a951f70fee5036.png

    展开全文
  • 在使用CLICK路由器的时候会发现,当数据字段填充过少发送时,网卡会自动对进行填充,确保它至少有64...为什么需要有一定的长度,查阅资料,原因如下: 以太网(IEEE 802.3)格式: 1、前导码(前同步...

    参考链接:https://www.cnblogs.com/dalulu/p/10331065.html

     

    在使用CLICK路由器的时候会发现,当数据字段填充过少发送帧时,网卡会自动对帧进行填充,确保它至少有64字节

     

    为什么需要帧有一定的长度,查阅资料,原因如下:

                                

    以太网(IEEE 802.3)帧格式:

    1、前导码(前同步码):7字节0x55,一串1、0间隔,用于信号同步

    2、帧开始定界符:1字节0xD5(10101011),表示一帧开始

    3、DA(目的MAC):6字节

    4、SA(源MAC):6字节

    5、类型/长度:2字节,0~1500保留为长度域值,1536~65535保留为类型域值(0x0600~0xFFFF)

    6、数据:46~1500字节

    7、帧校验序列(FCS):4字节,使用CRC计算从目的MAC到数据域这部分内容而得到的校验和。

    以CSMA/CD作为MAC算法的一类LAN称为以太网。CSMA/CD冲突避免的方法:先听后发、边听边发、随机延迟后重发。一旦发生冲突,必须让每台主机都能检测到。关于最小发送间隙和最小帧长的规定也是为了避免冲突。

    考虑如下的情况,主机发送的帧很小,而两台冲突主机相距很远。在主机A发送的帧传输到B的前一刻,B开始发送帧。这样,当A的帧到达B时,B检测到冲突,于是发送冲突信号。假如在B的冲突信号传输到A之前,A的帧已经发送完毕,那么A将检测不到冲突而误认为已发送成功。由于信号传播是有时延的,因此检测冲突也需要一定的时间。这也是为什么必须有个最小帧长的限制。

    按照标准,10Mbps以太网采用中继器时,连接的最大长度是2500米,最多经过4个中继器,因此规定对10Mbps以太网一帧的最小发送时间为51.2微秒。这段时间所能传输的数据为512位,因此也称该时间为512位时。这个时间定义为以太网时隙,或冲突时槽。512位=64字节,这就是以太网帧最小64字节的原因。

    512位时是主机捕获信道的时间。如果某主机发送一个帧的64字节仍无冲突,以后也就不会再发生冲突了,称此主机捕获了信道。

    由于信道是所有主机共享的,如果数据帧太长就会出现有的主机长时间不能发送数据,而且有的发送数据可能超出接收端的缓冲区大小,造成缓冲溢出。为避免单一主机占用信道时间过长,规定了以太网帧的最大帧长为1500。

    100Mbps以太网的时隙仍为512位时,以太网规定一帧的最小发送时间必须为5.12μs。

    1000Mbps以太网的时隙增至512字节,即4096位时,4.096μs。

    IP数据包长度问题总结

    TCP/IP协议,涉及到四层:链路层、网络层、传输层、应用层。

    其中以太网的数据帧在链路层

    IP包在网络层

    TCP或UDP包在传输层

    TCP或UDP中的数据(Data)在应用层

    它们的关系是数据帧{IP包{TCP或者UDP包{Data}}}

    ————————————————————————————————

    在应用程序中我们用到的Data的长度最大是多少,直接取决于底层限制。

    我们从下到上分析一下:

    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包中的数据多于1472时,发送方的IP层需要分片fragmentation进行传输,而在接收方IP层则需要进行数据报重组,由于UDP是不可靠的传输协议,如果分片丢失导致重组失败,将导致UDP数据包被丢弃。)

    从上面的分析来看,普通的局域网环境下,UDP的数据最大是1472字节最好,避免分片重组。

    但是在网络编程中,Internet中的路由器可能设置成不同的值(小于默认值),Internet上的标准MTU值为576,所以Internet的UDP编程时的数据长度最好在576 - 20 -8 = 548字节以内。

    Mac OS点击系统偏好设置——网络——高级——硬件可以查看本机的MTU设置。

    IP数据包的最大长度是64K字节(2^16 -1),因为在IP包头中用2个字节描述报文长度,2个字节所能表示的最大数字就是2^16-1 = 65536 -1 = 65535.

    由于IP协议提供为上层协议分割和重组报文的功能,因此传输层协议的数据包长度原则上来说没有限制。实际上限制还是有的,因为IP包的标识字段终究不可能无限长,按照IPv4,上限是2^32=4G字节。依照这种机制,TCP包头中就没有“包长度”字段,而完全依靠IP层去处理分帧。这就是为什么TCP常常被称作一种“流协议”的原因,开发者在使用TCP服务的时候,不必关心数据包的大小,只需要将SOCKET看作一条数据流的入口,往里面放数据就是了,TCP协议本身会进行拥塞/流量控制。

    UDP则和TCP不同,UDP包头内有总长度字段,同样为2个字节,因此UDP数据包的总长度被限制为(2^16-1),这样恰好可以放进一个IP包内,使得UDP/IP协议栈的实现非常简单高效。65535再减去UDP头本身所占据的8个字节,UDP服务中的最大有效负载长度仅为65527.这个值也就是调用getsockopt()时指定SO_MAC_MSG_SIZE所得到的返回值,任何使用SOCK_DGRAM属性的socket,一次send的数据都不能超过这个值,否则必然得到一个错误。

    那么,IP包提交给下层协议时将会得到怎样的处理呢?取决于数据链路层协议,一般得到数据链路层协议都会负责将IP包分割成更小的帧,然后在目的端重组它,在EtherNet上,数据链路帧的大小如开篇所述。而如果是IP over ATM,则IP包将被切分成一个一个的ATM Cell,大小为53字节。

    展开全文
  • 01概述以太网这个术语一般是指数字设备公司(Digital Equipment Corp.)、英特尔公司(IntelCorp.)和Xerox公司在1982年联合公布的一个标准。它是当今TCP/IP采用的主要的局域网技术。几年后,IEEE(电子电气工程师协会)...
    01概述

    以太网这个术语一般是指数字设备公司(Digital Equipment Corp.)、英特尔公司(IntelCorp.)和Xerox公司在1982年联合公布的一个标准。它是当今TCP/IP采用的主要的局域网技术。几年后,IEEE(电子电气工程师协会)802委员会公布了一个稍有不同的标准集,其中802.3针对整个CSMA/CD网络,802.4针对令牌总线网络,802.5针对令牌环网络。

    互联网早期的时候,主机间的互连使用的是NCP协议。这种协议本身有很多缺陷,如:不能互连不同的主机,不能互连不同的操作系统,没有纠错功能。为了改善这种缺点,大牛弄出了TCP/IP协议。现在几乎所有的操作系统都实现了TCP/IP协议栈。TCP/IP不是一个单一协议,而是一个协议族的统称。里面包括了IP协议,IMCP协议,TCP协议,以及我们更加熟悉的HTTP、FHP协议等等。

    首先我们看一下以太网数据结构:

    3cd2704387e3f3ab9c5c5de86b0f56a4.png

    8fbf598c5db3951dcac2db6c5e632de5.png

    注意数据长度为46~1500。

    从物理层上看,一个完整的以太网帧有7个字段,事实上前两个字段(前同步码和SFD码)并不能算是真正的以太网数据帧,它们是网卡在物理层上发送以太网数据时添加上的,是为了实现底层的正确传输。上图中的目的地址,源地址,长度/类型属于以太网首部的部分。

    特别说明:上面的目的地址和源地址是MAC,不是IP!!!!

    关于OSI七层模型:应用层、表示层、会话层、传输层、网络层、数据链路层、和物理层,如下图:

    8e7f9c9abc0d267e71536166346f834c.png

    02TCP/IP四层模型

    ISO制定的OSI参考模型的过于庞大、复杂招致了许多批评。与此对照,由技术人员自己开发的TCP/IP协议栈获得了更为广泛的应用。下图,是TCP/IP参考模型和OSI参考模型的对比示意图。

    68b551b423c3b0ebe367ebb887dac3b8.png

    TCP/IP参考模型分为四个层次:应用层、传输层、网络互连层和主机到网络层。

    ac2b22c7d5209722d1239293a4f4f3a7.png

    在TCP/IP参考模型中,去掉了OSI参考模型中的会话层和表示层(这两层的功能被合并到应用层实现)。同时将OSI参考模型中的数据链路层和物理层合并为主机到网络层。下面,分别介绍各层的主要功能。

    1、主机到网络层

    实际上TCP/IP参考模型没有真正描述这一层的实现,只是要求能够提供给其上层-网络互连层一个访问接口,以便在其上传递IP分组。由于这一层次未被定义,所以其具体的实现方法将随着网络类型的不同而不同。  

    2、网络互联层

    网络互联层是整个TCP/IP协议栈的核心。它的功能是把分组发往目标网络或主机。同时,为了尽快地发送分组,可能需要沿不同的路径同时进行分组传递。因此,分组到达的顺序和发送的顺序可能不同,这就需要上层必须对分组进行排序。

    网络互联层定义了分组格式和协议,即IP协议(InternetProtocol)。

    网络互联层除了需要完成路由的功能外,也可以完成将不同类型的网络(异构网)互连的任务。除此之外,网络互联层还需要完成拥塞控制的功能。

    3、传输层

    在TCP/IP模型中,传输层的功能是使源端主机和目标端主机上的对等实体可以进行会话。在传输层定义了两种服务质量不同的协议。即:传输控制协议TCP(transmissioncontrol protocol)和用户数据报协议UDP(userdatagram protocol)。

    TCP协议是一个面向连接的、可靠的协议。它将一台主机发出的字节流无差错地发往互联网上的其他主机。在发送端,它负责把上层传送下来的字节流分成报文段并传递给下层。在接收端,它负责把收到的报文进行重组后递交给上层。TCP协议还要处理端到端的流量控制,以避免缓慢接收的接收方没有足够的缓冲区接收发送方发送的大量数据。

    UDP协议是一个不可靠的、无连接协议,主要适用于不需要对报文进行排序和流量控制的场合。  

    4、应用层

    TCP/IP模型将OSI参考模型中的会话层和表示层的功能合并到应用层实现。  

    应用层面向不同的网络应用引入了不同的应用层协议。其中,有基于TCP协议的,如文件传输协议(FileTransfer Protocol,FTP)、虚拟终端协议(TELNET)、超文本链接协议(HyperText Transfer Protocol,HTTP),也有基于UDP协议的。

    4ce932f34dee3fb17cc5291d68f33129.png

    各行信息分别为:

    Frame:   物理层的数据帧概况;

    Ethernet II: 数据链路层以太网帧头部信息;

    Internet Protocol Version 4: 互联网层IP包头部信息;

    Transmission ControlProtocol:  传输层T的数据段头部信息,此处是TCP;

    Hypertext Transfer Protocol:  应用层的信息。

    9824652470d8c6c2dfdfb60d95c4804b.png

    几个常用的协议的功能我们通过一个形象的说法来展现:

    IP:I want to send data to 192.168.0.127

    UDP:I want to send a datagram on the port N

    TCP:I want to send data in a reliable way onthe port N (reliable:可靠的)

    ARP:who knows 192.168.0.127's MAC address?

    RARP:who knows 21.21.12.21.21.12's IP address?

    ICMP:I send or receive queries or error message

    DHCP:I want to get an IP address

    DNS:what is the IP address of www.baidu.com?

    上文讲解了以太网数据包结构,其中牵扯到了802.3,以太网数据包等名词,下面讲解一下这方面的内容。

    在TCP/IP世界中,以太网IP数据报的封装是在RFC894中定义的,IEEE802网络的IP数据报封装是在RFC1042中定义的。最常使用的封装格式是RFC 894定义的格式。下图显示了两种不同形式的封装格式。

    8fc1bbf6e29ead14b9e1eeeb44af11a0.png

    从上图看到,两种帧格式都采用48bit(6字节)的目的地址和源地址。

    接下来的2个字节在两种帧格式中互不相同。

    在802标准定义的帧格式中,长度字段是指它后续数据的字节长度,但不包括CRC检验码。

    以太网的类型字段定义了后续数据的类型。而在802标准定义的帧格式中,类型字段则由后续的子网接入协议的首部给出。

    幸运的是,802定义的有效长度值与以太网的有效类型值无一相同,这样,就可以对两种帧格式进行区分。

    长度/类型有两个意义,小于1518,代表后面字段的长度(也就是IEEE802.2/802.3(RFC1042)),大于1518,代表不同的类型(以太网的封装格式(RFC894))

    0800 指IP数据类型

    0806 指ARP协议,通过IP地址获得对应的MAC地址,称为地址解析协议

    8035 指RARP协议,通过MAC地址来获得对应的IP地址,称为逆向地址解析协议

    6ece6d57f1e9aa14332107f30c48a319.png

    在以太网帧格式中,类型字段之后就是数据。而在802帧格式中,后面是3字节的802.2LLC,它是由目的服务访问点(DestinationService Access Point,DSAP)、源服务访问点(SourceService Access Point,SSAP)和Ctrl字段组成,DSAP和SSAP默认值是0xaa,Ctrl默认是3。再接下来的2个字节类型字段和以太网帧格式一样。

    802.3标准定义的帧和以太网的帧都有最小长度要求。802.3规定数据部分必须至少为38字节,而对于以太网,则要求最少要有46字节。为了保证这一点,必须在不足的空间插入填充(pad)字节。

    下面只讲最常用的以太网的封装格式(RFC894)

    9f35d4637f794b20ad5a727f62da0a5d.png

    特别说明:上面的目的地址和源地址是MAC,不是IP!!!!

    MAC地址解析

    cb8a49fa392683a2d23ec01ee7a7b0b0.png

    MAC地址前3个字节:组织身份标记  后3个字节:组织自行分配

    第1个字节

    b0:0表示单播,1表示组播

    b1:0表示被某个组织使用,1表示个人使用

    例子:

    02-00-00-00-00-01:本地分配

    00-50-C2-xx-xx-xx:ST的MAC地址

    01-00-5E-xx-xx-xx:IPv4的多播地址

    FF-FF-FF-FF-FF-FF:广播地址。

    上文说到,以太网和802.3对数据帧的长度都有一个限制,其最大值分别是1500和1492字节。链路层的这个特性称作MTU,最大传输单元。不同类型的网络大多数都有一个上限。如果IP层有一个数据包要传,而且数据的长度比链路层的MTU还大,那么IP层就需要进行分片,把数据包分成若干片,这样每一片都小于MTU,IP分片的问题会在讲解IP协议的时候讲解。下图列出了一些典型的MTU值。

    51dbfb9e357fc1643cf51f1562621edf.png

    我们将用netstat命令打印出网络接口的MTU。

    ae73ddd4285030b2c4a664e7ba8612f3.png

    - i参数将打印出接口信息,- n参数则打印出IP地址,而不是主机名字。

    这个命令打印出每个接口的MTU、输入分组数、输入错误、输出分组数、输出错误、冲突以及当前的输出队列长度。

    展开全文
  • 以太网帧分析

    千次阅读 2021-09-21 16:05:56
    OSI 模型的数据链路层(第 2 层)实际上由两个子层组成:媒体访问控制 (MAC) 子层和逻辑链路控制 (LLC) 子层。 MAC 子层控制设备交互。... 它们包含除其他外的以太网帧,该被分成多个数据集。 这些记录由提供重要信
  • 以太网数据最短长问题

    万次阅读 2019-09-06 20:41:13
    1.以太网帧的最短长度为64字节,或者中的数据不得少于46个字节,其中以太网帧头有18字节(以太网2的值为:MAC+2类型+4CRC,注意,如果是802.3的规范,它支持SNAP和802.3以太,其中的2个字节的类型字段就变为长度),...
  • 以太网帧最小长与最大帧

    千次阅读 2014-10-16 10:38:40
    讨论以太网长,就不得不先提一下以太网的大名鼎鼎的CSMA/CD协议。 1.1 CSMA/CD协议 CSMA/CD是英文carrier sense multiple access/collision detected 的缩写,可把它翻成“载波监听多路访问/冲突检测”,...
  • 以太网帧和一些标准

    千次阅读 2021-01-13 09:22:33
    链路层3.2.2 以太网帧格式校验序列/循环冗余校验大小802.1p/q:虚拟局域网和Oos标签802.1AX :链路聚合(以前的802.3ad) 3.2.2 以太网帧格式 48位(6字节)的目的地址(DST)和源地址(SRC)字段 他们也叫MAC地址...
  • 为什么以太网最小为64字节

    千次阅读 2018-12-16 22:26:34
    以太网中的最小长的设定: 1,假设公共总线媒体长度为S,在媒体上的传播速度为0.7C(光速),网络的传输率为R(bps),长为L(bps),tPHY为某站的物理层时延;则有: 碰撞槽时间=2S/0.7C+2tPHY 因为Lmin/R=...
  • 以太网原理 最大帧长 最小

    千次阅读 2017-06-20 23:06:23
    在传统以太网中,为什么要有最小帧长度最大帧长度的限制? 以太网(IEEE 802.3)格式: 1、前导码:7字节0x55,一串1、0间隔,用于信号同步 2、起始定界符:1字节0xD5(10101011),表示一开始 3、DA(目的MAC)...
  • 在传统以太网中,为什么要有最小帧长度最大帧长度的限制?以太网(IEEE802.3)格式:1、前导码:7字节0x55,一串1、0间隔,用于信号同步2、起始定界符:1字节0xD5(10101011),表示一开始3、DA(目的MAC):6字节4、...
  • 详解以太网MAC格式

    千次阅读 2022-03-12 16:34:37
    数据字段的最大长度为1500字节。 CRC 4字节 用于内后续字节差错的循环冗余检验(也称为FCS或检验序列)。这个字段只是提供检错功能,并不提供纠错功能。该效验和效验的范围为:目的地址,源地址,类型,数据等...
  • 以太网的最小最大帧长的意义

    万次阅读 多人点赞 2018-09-18 23:45:20
    以太网最小长为什么是64字节 以太网是无连接的,不可靠的服务,采用尽力传输的机制。以太网CSMA/CD我就不多讲了,我相信大家都了解这个原理。  以太网是不可靠的,这意味着它并不知道对方有没有收到自己发出的...
  • 以太网帧

    万次阅读 2018-05-20 20:46:59
     以太网帧(Ethernet frame)是符合以太网标准的链路层协议数据单元(PDU),其格式有Ethernet V1、Ethernet V2、RAW 802.3、IEEE 802.3/802.2 LLC和IEEE 802.3/802.2SNAP。现在大多数网络应用都使用Ethernet V2...
  • 1、以太网的最小长 前提条件:10Mbps的传输速率;载波多路复用/冲突检测(CSMA/CD) (1)、CSMA/CD (Carrier Sense Multiple Access with Collision Detection)带冲突检测的载波监听多路访问技术(载波监听多点...
  • 以太网帧以太网帧以太网帧以太网帧以太网帧以太网帧以太网帧以太网帧以太网帧
  • 以太网数据详细解析 逐字节分析

    千次阅读 多人点赞 2020-08-25 21:18:49
    以太网数据详细解析 详细解析以太网通信数据 测试环境 机器名 mac ip port tcp_server 00:0c:29:8b:37:da 10.1.2.7 9502 tcp_client 00:50:56:c0:00:08 10.1.2.1 12345 抓包 客户端向服务端发送 '...
  • 遇到的问题:以太网的数据封装如下图所示,包含在IP数据报中的数据部分最长应该是( )字节? A.1434 B.1460 C.1480 D.1500 答案:C 原因: 以太网(IEEE 802.3)格式: 1、前导码(前同步码):7字节0x55,...
  • 以太网结构

    2021-02-28 16:38:26
    以太网结构 在《以太网发展史》一节中说过,DIX联盟: 1980年发布以太网的第一个版本,EthernetI, 1982年,DXI联盟又发布以太网的第二个版本,即EthemeII, 1983年 IEEE 发布了第一个关于以太网的标准, IEEE发布的...
  • TCP IP 以太网帧格式,ICMP实验
  • 前言 搞SOA、搞 AP & CP AUTOSAR、搞异构SoC、搞车载以太网、搞车载OS等就找搞一下汽车电子...我们身边充满了以太网,不管是新势力还是传统的主机厂,都已经在准备或是在更上一层地去做以太网的一些升级,包括电子
  • 最大帧长和最小长详解

    万次阅读 多人点赞 2018-04-01 16:02:52
    文章出处:https://blog.csdn.net/ixidof/article/details/7799891 在传统以太网中,为什么要有最小帧长度最大帧长度的限制? 以太网(IEEE 802.3)格式: 1. 前导码:7字节0x55,一串1、0间隔,用于信号同步...
  • 传统以太网最大帧长度是1518字节(包括4字节CRC和14字节头部)。选择这个值出于一种折中:如果一个中包括一个错误(接收到不正确的CRC校验),只需重发1.5kB以修复该问题。另一方面,MTU大小限制为1500字节。为了...
  • 以太网帧解析

    千次阅读 2021-05-08 10:56:20
    解析以太网数据的关键是获取类型字段,然后根据类型字段将数据字段的数据交给上层协议进行处理,同时保存下目的MAC地址和源MAC地址,以供后续其他使用。 以太网帧数据格式: 1.前同步码 前7B都是10101010,...
  • 网络基础知识(以太网帧结构)二

    千次阅读 2019-04-11 18:26:30
    以太网帧整体结构 3. 以太网帧
  • 我们先来看看最初的以太网的构思吧!把相距有一定距离的一些电脑连接起来,实现计算机之间互相通信就可以了。最初都是把这些计算机连接在一根网线上,这种方式实现起来简单又可靠。总线的特点是:当一台计算机发送...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 14,542
精华内容 5,816
关键字:

以太网有效帧的最大长度是