竭诚为您提供优质文档/双击可除
以太网用什么协议?
篇一:以太网协议报文格式
tcp/ip协议族
ip/tcp
telnet和Rlogin、Ftp以及smtpip/udp
dns、tFtp、bootp、snmp
icmp是ip协议的附属协议、igmp是internet组管理协议
aRp(地址解析协议)和RaRp(逆地址解析协议)是某些网络接口(如以太网和令牌环网)使用的特殊协议,用来转换ip层和网络接口层使用的地址。
1、
以太帧类型
以太帧有很多种类型。不同类型的帧具有不同的格式和mtu值。但在同种物理媒体上都可同
时存在。
标签协议识别符(tagprotocalidentifier,tpid):一组16位元的域其数值被设定在0x8100以用来辨别某个ieee802.1q的帧为已被标签的,而这个域所被标定位置与乙太形式/
长度在未标签帧的域相同,这是为了用来区别未标签的帧。优先权代码点(prioritycodepoint,pcp):以一组3位元的域当作优先权的参考,从0(最低)到7(最高),用来对资料流(音讯、影像、档案等等)作传输的优先级。
标准格式指示(canonicalFormatindicator,cFi):1位元的域。若是这个域的值
为1,则mac地指则为非标准格式;若为0,则为标准格式;在乙太交换器中他通常默认为0。在乙太和令牌环中,cFi用来做为两者的相容。若帧在乙太端中接收资料则cFi的值须设为1,且这个端口不能与未标签的其他端口桥接。虚拟局域网识别符(Vlanidentifier,Vid):12位元的域,用来具体指出帧是属于
哪个特定Vlan。值为0时,表示帧不属于任何一个Vlan;此时,802.1q标签代表优先权。16位元的值0x000和0xFFF为保留值,其他的值都可用来做为共4094个Vlan的识别符。在桥接器上,Vlan1在管理上做为保留值。这个12位元的域可分为两个6位元的域以延伸目的(destination)与源(source)之48位元地址,18位元的(triple-tagging)可和原本的48位元相加
成为66位元的地址。
0、以太网的封装格式(RFc894)
ieee802.2/802.3(RFc1042)
一个0x0800的以太类型说明这个帧包含的是ipv4数据报。同样的,一个0x0806的以太类型说明这个帧是一个aRp帧,0x8100说明这是一个ieee802.1q帧,而0x86dd说明这是一个ipv6帧,而0x8864有pppoe封装(其他以太网类型见附2)
1、以太网pau帧
ieee802.3x是全双工以太网数据链路层的流控方法。当客户终端向服务器发出请求后,自身系统或网络产生拥塞时,它会向服务器发出pau帧,以延缓服务器向客户终端的数据传输。
有关交换机的流量控制机制:定义:流量控制用于防止在端口阻塞的情况下丢帧,这种方法是当发送或接收缓冲区开始溢出时通过将阻塞信号发送回源地址实现的。流量控制可以有效的防止由于网络中瞬间的大量数据对网络带来的冲击,保证用户网络高效而稳定的运行。两种控制流量的方式:
1,在半双工方式下,即半双工背压控制,是通过反向压力(backpressure)即我们通常说的背压计数实现的,这种计数是通过向发送源发送jamming信号使得信息源降低发送速度。
军训心得 2,在全双工方式下,流量控制一般遵循ieee802.3x标准,是由交换机向信息源发送“pau”帧令其暂停发送。
采用流量控制,使传送和接受节点间数据流量得到控制,可以防止数据包丢失。
pau帧格式:
关于竹子的诗句 mac控制帧通过其唯一的类型域标识符(0x8808)识别。pau格式:
目的地址:组播地址(01-80-c2-00-00-01)源地址:类型:8808
mac控制操作码:2个字节0x0001(pau帧仅是mac控制帧的一种,对于pau帧,其在mac控制帧中的操作码为00-01;)
mac控制操作参数域:2个字节代表要求对方停止的时间。(mac控制参数域,包含用于mac控制相关的参数。保留域。
对于pau帧,此处应填入要求对端设备暂停发送的时间长度,由两个字节(16位)来表示该长度,每单位长度为物理层芯片发送512
位数据的时间。
所以发送一次pau帧,要求对端设备暂停发送的时间长度为:0-65535×
(512/以太网传输速率)。)
2、以太网Vlan帧格式
一、ieee802.1q标签帧格式
7b
1b
6b6b
营销论文 4b
2b
42-1496b
4b
Vlantag
:4字节,包含2个字节的标签协议标识(tpid)和2个字节的标签控制信息(tci),tci字段具体又分为:priorty、cFi、Vlanid,具体格式如下所示:
2b
1b
12b
3b
tpid(标签协议标识):2字节,用于标识帧的类型,其值为0x8100时表示802.1q/802.1p
的帧。设备可以根据这个字段判断对它接收与否。
tci(标签控制信息字段):2字节,包括用户优先级(urpriority)、规范格式指示器夏天的亭漫画
(canonicalFormatindicator)和Vlanid。
urpriority:3个bti,表示帧的优先级,取值范围0~7,值越大优先级越高,用
于802.1p。
cFi,1bit,值为0代表mac地址是以太帧的mac,值为1代表mac地址是Fddi、
令牌环网的帧。
Vid(Vlanid):12bit,表示Vlan的值。12bit共可以表示4096个Vlan,实际上,
由于Vid0和4095被802.1q协议保留,所以Vlan的最大个数是4094(1-4094)个(据说Vid=0用于识别帧优先级。4095(FFF)作为预留值)
篇二:以太网协议
新人进阶之以太网协议
相信很多新人在学习协议的时候会遇到很多问题,有些地方可能会总是想不明白(因为我自己也是新人^_^),所以,跟据我自己学习的经历和我在学习中所遇到的问题,我总结了一下列出来。如果能对大家有所帮助,将是我莫大的荣耀!
关于局域网的起源和发展,这里就不多说,因为很多书上和网上都有详细的说明,我们将直接进入对局域网协议的学习中。
局域网的几种协议,主要包括以太网第二版、ieee802系列、令牌环网和snap等(之所以加个“等”字,是因为我只知道这几种,如果还有其他的,欢迎朋友们给我补充)。而最为常见的,也就是以太网第二版和ieee802系列,我们也主要去了解这两种(ieee802包括好多种,我们也不一一介绍,只对其中常见做研究)。
一,以太网(V2)
以太网第二版是早期的版本,是由dec、intel和xerox联合首创,简称dix。帧格式如下图:
(20.8kb)
20xx-6-911:04
前导信息:采用1和0的交替模式,在每个数据包起始处提供5mhz的时钟信号,以充许接收设备锁定进入的位流。
目标地址:数据传输的目标mac地址。
源地址:数据传输的源mac地址。
以太网类型:标识了帧中所含信息的上层协议。
数据加填充位:这一帧所带有的数据信息。(以太网帧的大小是可变的。每个帧包括一个14字节的报头和一个4字节的帧校验序列域。这两个域增加了18字节的帧长度。帧的数据部分可以包括从46字节到1500字节长的信息(如果传输小于46字节的数据,则网络将对数据部分填充填充位直到长度为46字节)。因此,以太网帧的最小长度为18+46,或64个字节,最大长度为18+1500,或1518个字节。)千里戈壁打一城市名字
Fcs:帧校验序列(Fcs,Framecheckquence)域确保接收到的数据与发送时的数据一样。当源节点发送数据时,它执行一种称为循环冗余校验(cRc,cyclicalRedundancycheck)的算法。cRc利用帧中前面所有域的值生成一个惟一的4字节长的数,即Fcs。当目标节点接收数据帧时,它通过cRc破解Fcs并确定帧的域与它们原有
的形式一致。如果这种比较失败,则接收节点认为帧已经在发送过程中被破坏并要求源节点重发该数据。
二,ieee802系列。
ieee802系列包含比较多的内容,但比较常见的是802.2和802.3。下面我们就比这两种帧。
1,ieee802.3
为什么我要先把802.3列出来?因为我个人觉得802.3应该是在802。2之前出来,只它存在问题,所以才出现了802。2以解决它的问题,大家是不是觉得有点糊,没关系,请继续看下去。下面是这个帧的帧格式:
(19.21kb)
20xx-6-911:04
大家有没有发现在这个帧格式跟以太网第二版本的格式非常像?没错,它们这间改动的比较少,因为802。3是在以太网V2的基础上开发的,为了适应100m的网络,所以才把8位的前导步信息分成了7字节,并加入了一个sFd的域(为什么说这样分开一下可以支持100m?我目前还没搞懂。^8^那位高手有这方面的资料贡献一下啊)。那前导和sFd到底
起什么作用?我的理解是,前导与soFd相当于跑步竞赛开始时的那句“预备!跑!”,前导就是“预备!”,sFd就是“跑!”,所以前导让接收设备进入状态,soFd让接收设备开始接收。而这里所谓比特流硬件时钟同步,是指让设备按当前比特流信号频率同步,以得到精确的接收数据的位置,避免接收出错,与pc里所谓时钟概念是一样的。
再有就是类型字段变成了长度字段,这是因为当初这个协议是由novell开发的,所以它默认就是在就是局域网就是novell网,服务器是netware服务器,跑的是ipx的协议,因此去掉了类型换成了长度。后来ieee再据此制定802。3的协议,结果问题也就出来了。如果我上层用的是ip协议呢?那怎么办?别急,有问题就会有方法,ieee802。2也就由此出现了。
2,ieee802。2五绝格律平仄
请看帧格式:
(24.23kb)
20xx-6-911:04
可以看到,种帧的最大区别就在于多了一个llc的域,即逻辑链路控制(llc,logicallinkcontrol)。该信息用来区别一个网络中的多个客户机。如果llc和数据信息的总长度不足46字节,数据域还将包括填充位。长度域并不关心填充位,它仅仅报告逻辑链接控
制层信息(llc)加上数据信息的长度。逻辑链接控制层(llc)信息由三个域组成:目标服务访问点(dsap,destinationrviceaccesspoint),源服务访问点(ssap,sourcerviceaccesspoint)和一个控制域。每个域都是1个字节长,llc域总长度为3字节。一个服务访问点(sap,rviceaccesspoint)标识了使用llc协议的一个节点或内部进程,网络中源节点和目标节点之间的每个进程都有一个惟一sap。控制域标识了必须被建立llc连接的类型:无应答方式(无连接)和完全应答方式(面向连接)。
我们在工作中最常见的也就是这三种帧了,下面加入一张网上找到的图片,以加深大家的理解,并做一个小小的总结:
(31.6kb)
20xx-6-911:04
三、用sniffer捕帧。
ok,局域网的基本协议已经讲完,现在该动动手了。
下面是我用sniffer捕的几个帧。
aRp,dns,http的包
(40.55kb)
20xx-6-911:04
通过上面所捕获的帧,相信大家对网络的分层应该会有一个比较深的理解。我所展开的是数据链路层的包头。
对照上面的帧格式,我们可以看到,有目的地址,有源地址,有类型,从ip开始就属于
信息字段了。姨,不对呀,怎么没有前导和sFd?当然,这是用来同步的,对协议分析没有意
义,包括Fcs,所以去掉了(*8*不是我想的,sniffer捕完后就去掉了的别打我)。
可是,不对啊?没错,眼尖的朋友发现了,哈,都是以太网第二版的帧,看上面字段“ethertype=0800(ip)”.这是怎么回事?不是说现在都是802。3的,至少也是802。2的嘛?怎么
还用以太网V2?那么打包成何种帧是由哪个决定的?
其实这个问题我当时也糊了,而且很多人也都不是特别的清楚,后来跟我们老师沟通后这么认为:打包成何种帧一般是由操作系统决定的,在微软的os里边,其默认都会打包成以太网第二版的(可以改),这并不是说网络环境变成10m了,因为现在这个以太网第二版应该也是支持100m的,而在netware环境里面,通常都默认是802。2或802。3,具体2还手机5g手机
是3,就要看netware版本了,一般来讲,运行低于netware3.12版本的网络的缺省帧类型是802。3。
篇三:以太网协议的规则
以太网协议
20xx-08-2516:45:54|分类:默认分类|字号订阅
历史上以太网帧格式有五种:
1ethernetV1:这是最原始的一种格式,是由xeroxpaRc提出的3mbpscsma/cd以太网标准的封装格式,后来在1980年由dec,intel和xerox标准化形成ethernetV1标准;2ethernetii即dix2.0:xerox与dec、intel在1982年制定的以太网标准帧格式。cisco名称为:aRpa。
这是最常见的一种以太网帧格式,也是今天以太网的事实标准,由dec,intel和xerox在1982年公布其标准,主要更改了ethernetV1的电气特性和物理接口,在帧格式上并无变化;ethernetV2出现后迅速取代ethernetV1成为以太网事实标准;ethernetV2帧头结构为6bytes的源地址+6bytes的目标地址+2bytes的协议类型字段+数据。
常见协议类型如下:
0800ip
0806aRp
0835RaRp
8137novellipx
809bappletalk
如果协议类型字段取值为0000-05dc(十进制的0-1500),则该帧就不是ethernetV2(aRpa)类型了,而是下面讲到的三种802.3帧类型之一;ethernet可以支持tcp/ip,novellipx/spx,
在每种格式的以太网帧的开始处都有64比特(8字节)的前导字符,如图所示。其中,前7个字节称为前同步码(preamble),内容是16进制数0xaa,最后1字节为帧起始标志符0xab,它标识着以太网帧的开始。前导字符的作用是使接收节点进行同步并做好接收数据帧的准备。
——pR:同步位,用于收发双方的时钟同步,同时也指明了传输的速率(10m和100m的时钟频率不一样,所以100m网卡可以兼容10m网卡),是56位的二进制数
——sd:分隔位,表示下面跟着的是真正的数据,而不是同步时钟,为8位的10101011,跟同步位不同的是最后2位是11而不是10.
——da:目的地址,以太网的地址为48位(6个字节)二进制地址,表明该帧传输给哪个网卡.如果为FFFFFFFFFFFF,则是广播地址,广播地址的数据可以被任何网卡接收到.
——sa:源地址,48位,表明该帧的数据是哪个网卡发的,即发送端的网卡地址,同样是6个字节.
----type:类型字段,表明该帧的数据是什么类型的数据,不同的协议的类型字段不同。如:0800h表示数据为ip包,0806h表示数据为aRp包,814ch是snmp包,8137h为ipx/spx包,(小于0600h的值是用于ieee802的,表示数据包的长度。)
----data:数据段,该段数据不能超过1500字节。因为以太网规定整个传输包的最大长度不能超过1514字节。(14字节为da,sa,type)
----pad:填充位。由于以太网帧传输的数据包最小不能小于60字节,除去(da,sa,type14字节),还必须传输46字节的数据,当数据段的数据不足46字节时,后面补(当然也可以补其它值)
----Fcs:32位数据校验位.为32位的cRc校验,该校验由网卡自动计算,自动生成,自动校验,自动在数据段后面填入.对于数据的校验算法,我们无需了解.
----事实上,pR,sd,pad,Fcs这几个数据段我们不用理它,它是由网卡自动产生的,我们要理的
是da,sa,type,data四个段的内容.
----所有数据位的传输由低位开始(但传输的位流是用曼彻斯特编码的)
芈月传芈茵 ----以太网的冲突退避算法就不介绍了,它是由硬件自动执行的.
da+sa+type+data+pad最小为60字节,最大为1514字节.
----以太网卡可以接收三种地址的数据,一个是广播地位,一个是多播地址(我们用不上),一个是它自已的地址.但网卡也可以设置为接收任何数据包(用于网络分析和监控).
----任何两个网卡的物理地址都是不一样的,是世界上唯一的,网卡地址由专门机构分配.不同厂家使用不同地址段,同一厂家的任何两个网卡的地址也是唯一的.根据网卡的地址段(网卡地址的前三个字节),可以知道网卡的生产厂家.有些网卡的地址也可以由用户去设定,但一般不需要.
3ethernet802.3raw帧格式
如图5所示,是ethernet802.3raw类型以太网帧格式。
图5ethernet802.3raw帧格式
在ethernet802.3raw类型以太网帧中,原来ethernetii类型以太网帧中的类型字段被"总长度"字段所取代,它指明其后数据域的长度,其取值范围为:46-1500。
接下来的2个字节是固定不变的16进制数0xFFFF,它标识此帧为no(以太网用什么协议)vell以太类型数据帧。
4ethernet802.3sap帧格式
如图6所示,是ethernet802.3sap类型以太网帧格式。
图6ethernet802.3sap帧格式
从图中可以看出,在ethernet802.3sap帧中,将原ethernet802.3raw帧中2个字节的0xFFFF变为各1个字节的dsap和ssap,同时增加了1个字节的"控制"字段,构成了802.2逻辑链路控制(llc)的首部。llc提供了无连接(llc类型1)和面向连接(llc类型2)的网络服务。llc1是应用于以太网中,而llc2应用在ibmsna网络环境中。
新增的802.2llc首部包括两个服务访问点:源服务访问点(ssap)和目标服务访问点(dsap)。它们用于标识以太网帧所携带的上层数据类型,如16进制数0x06代表ip协议数据,16进制数0xe0代表novell类型协议数据,16进制数0xF0代表ibmnetbios类型协议数据等。
常见sap值:
0nulllsap[ieee]
4snapathcontrol[ieee]
6dodip[79,jbp]
aasnap[ieee]
Feisodis8473
[52,jxj]
FFglobaldsap[ieee]
sap值用以标志上层应用,但是每个sap字段只有8bits长,而且其中仅保留了6比特用于标识上层协议,因此所能标识的协议数有限(不超过32种);并且ieee拒绝为某些重要的协议比如aRp协议定义sap值(奇怪的是同时他们却定义了ip的sap值);因此802.3/802.2llc的使用有很大局限性;
至于1个字节的"控制"字段,则基本不使用(一般被设为0x03,指明采用无连接服务的802.2无编号数据格式)。
5ethernet802.3snap帧格式
如图7所示,是ethernet802.3snap类型以太网帧格式。
图7ethernet802.3snap帧格式
ethernet802.3snap类型以太网帧格式和ethernet802.3sap类型以太网帧格式的主要区别在于:
●2个字节的dsap和ssap字段内容被固定下来,其值为16进制数0xaa。
●1个字节的"控制"字段内容被固定下来,其值为16进制数0x03。
●增加了snap字段,由下面两项组成:
◆新增了3个字节的组织唯一标识符(organizationallyuniqueidentifier,ouiid)字段,其值通常等于mac地址的前3字节,
◆增加了表示上层协议的类型
这是ieee为保证在802.2llc上支持更多的上层协议同时更好的支持ip协议而发布的标准,与802.3/802.2llc一样802.3/802.2snap也带有llc头,但是扩展了llc
属
性,新添加了一个2bytes的协议类型域(同时将sap的值置为aa),从而使其可以标识更多的上层协议类型;另外添加了一个3bytes的oui字段用于代表不同的组织,RFc1042定义了ip报文在802.2网络中的封装方法和aRp协议在802.2sanp中的实现;不同厂商对这几种帧格式通常有不同的叫法,比如:
Frametypenovelcisco
ethernetVersion2ethernet_iiarpa
802.3Rawethernet_802.3novell_ether
ieee802.3/802.2
ieee802.3/802.2snap
ethernet_802.2etheRnet_snapsapsnap