当前位置:文档之家› RDP协议详细解析

RDP协议详细解析

RDP协议详细解析(一)

RDP协议详细解析

一前言

二概述

三同络层次

四各连接模块说明

五各功能模块说明

六rdpwin结构、数据流说明

七总结

一、前言

windows从NT开始提供终端服务,它是微软买来的网络协议技术(Citrix),服务器端要安装、配置,客户端要连接程序。终端服务使任何一台有权限的终端机,用已知的账号登录服务器,可以使用账号内的资源,包括软件,硬件资源;同时,在协议升级后,客户端连接后可以使用本地的资源,包括本地打印机、声音本地回放,本地磁盘资源和本地硬件接口。所有的计算都在服务器端进行,客户端只需要处理网络连接、接收数据、界面显示和设备数据输出。

目前,关于RDP服务的linux客户端程序有winconnect,linrdp,rdesktop,前两个没有源码,但redsktop已经由原来的个人开发后公开代码演变成现在的项目组开发。由于项目的跨平台开发需要,我们在开始时进行过单独的协议破解工作,破解后,我们的程序在原来的基础上扩展到,实现了16位颜色,声音本地回放,映射本地打印机。对于当前的终端机,这些功能完全满足需要,因此其他功能暂不便破解实现。为防患RDP协议的升级而影响我们破解而得的终端程序的功能性,需要对RDP协议的变化进行跟踪,对et-rdesktop进行优化、完善。鉴于当前的工作安排,将跟踪redsktop项目的进展,以提炼功能为我所用和完善现有程序。

二、概述

1 版本功能说明:

RDP协议在终端服务推出后已有四个版本,、、、。一般来说,版本是根据windows 的版本确定的。

从客户端的角度来说,版本间提供的功能差别不是很大,相对于版本,它提供了用户带密码直接登录、客户端驱动器资源映射、客户端音频回放、最高24位色显示和符合FIPS加密级别连接。

另外,从协议开始变提供的客户羰功能有:高、中、低三种数据加密级别,客户端自定义初始登录环境,客户端打印机映射,客户端LPT端口映射,客户端com端口映射,剪贴板映射,客户登录的个性化设置(包括键盘、显示界面大小等)。

2、协议层次说明:

通过破解研究,我们掌握了RDP协议的基本层次结构。基本上,RDP协议的每一层次上都标示出其层内的数据长度值。

对于层次划分,主要是指RDP协议网络功能数据传送时通常都包含的各层次,而对于各层次内所实现的单层次连接等功能将做为单独的模块来进行阐述。

网络连接层:RDP协议建立在TCP/IP协议之上,由于传输的数据量比较大,因此在协议的底层首先定义一层网络连接层。它定义了一个完事的RDP数据逻辑包,以避免由于网络包长度过长而被分割使数据丢失。

ISO数据层:在网络连接层之上是ISO数据层,它表示RDP数据的正常连接通信。

虚拟通道层:在ISO数据层之上,RDP协议定义一个虚拟通道层,用以拆分标示不同虚拟通道的数据,加快客户端处理速度,节省占用网络接口的时间。

加密解密层:在虚拟通道层之上,RDP定义一个数据加密解密层。此层用于对所有的功能数据进行加密、解密处理。

功能数据层:在加密解密层之上是功能数据,画面信息,本地资源转换,声音数据,打印数据等所有的功能数据信息都在此层进行处理。另外,根据数据类型的不同,这些数据都有各自不同层次的分割,他们的内部层次结构将在各个功能模块中进行阐述。

3 其它说明:

本协议解析中所提到的各层次结构都是指RDP功能数据正常传送时的各底层结构,在功能数据传送前的各层次的建立连接过程及其结构、实现都归于模块实现来进行说明。

对于服务器端的各种设置以及个版本间的内部实现差异请看RDP帮助文档,以及rdpwin 开发文档。

4 连接过程说明:

1) 客户端连接服务器

2) ISO数据层建立连接

3) 发送初始协议相关信息,接收加密、解密密钥

4) 虚拟通道申请

5) 加密形式发送客户端系统信息,同时验证加密协议

6) 平台软件证书验证

7) 各功能建立连接,各功能数据传输,功能实现

三、网络层次:

1 网络连接层:

在RDP协议网络实现连接中,本层的数据格式是固定的。

内容协议版本号保留此逻辑包长度

字节数112

值当前版本皆是30逻辑长度,从版本号开始到本包结束

2 ISO数据层:

在RDP功能数据网络传输中,本层的数据格式是固定的。

内容单层数据长度ISO包类型标志

字节数111

值2,从下字节开始计算0xf0,表示数据0x80

3 虚拟通道层:

虚拟通道层用于在正常的网络连接数据之上,中个虚拟通道的功能数据。此层次的连接另见初始连接模块与通道申请模块,在此只说明正常数据连接时的层次结构。

1) 结构信息:

内容类型虚拟通道个数虚拟通道号标志

字节数1221

值0x64/0x680x00010x03eb至0x03ee0x70/0xf0

2) 类型说明:

0x64:客户端发送数据

0x68:客户端接收数据

3) 用户号说明:

本次连接的用户号,服务器发送的是0x0001;客户端所发送的值是初始连接时请

示通道后服务器同意开通的虚拟个数。

4) 虚拟通道号说明:

虚拟通道号是本层次以上所发送的功能数据所在的虚拟通道号,其由初始连接通

道申请建立时确定。

5) 标志说明:

客户端发送的标志为0x70;服务器端发送的标志,当功能数据是图像是(由通道

号识别),其值为0x70,当功能数据是其它数据时,其值为0xf0。

4 加密解密层:

加密解密层用于对网络连接中所发送、接收的数据进行加密、解密。为保证数据和系统

的安全性,对网络数据进行加密传输是比较常用且必然的,RDP协议在此层对实际的功能数

据进行加密。

1) 结构信息:

内容单层及层上数据总长度加密标志未知标志数字签名字节数1-2228值从下字节开始计算0x08000x1000/0x0203顺序取得

2) 总长度说明:

若长度大于0x7f,则长度以两字节表示,并按位与0x8000。这是由于版本升级赞

成的格式不统一,长度不定,当前版本认为长度值不大于0x0fff(4095)因此只用长度值并按

位与0x8000实现版本兼容,在版本升级后会以0x8x表示长度值的字节数,其中8表示非1

字节,x表示具体的字节个数。

3) 加密标志说明:

RDP协议要求在正常的功能连接实现之前,首先licence认证,其标志为0x8xxx,

且其后数据不同于正常功能数据传输式的加密层格式,可以视licence认证为加密解密层的

建立连接过程。另外功能数据的加密、解密的密钥是在初始连接时获得的,而加密解密功能

的实现由加密、解密模块阐述。

4) 未知标志说明:

服务器端发送过来的未知数据有两种,目前不知其意,客户端在发送数据时将其

置为0x0000值。

5) 数字签名说明:

对所有的加密数据在此放置8字节数字签名。其值由RC4会话键值和功能数据经过SHA运算和MD5运算得到。

5 功能数据层:

功能数据是客户端与服务器进行交互的真正数据。他们都有各自固定格式,连接、控制方式,具体情况见各功能模块的说明。

根据当前我们所掌握的信息,RDP协议将图像信息、声音信息、设备信息、剪贴板内容都各自以单一的虚拟通道进行传送,而打印机映射,磁盘映射,端口映射都做为设备信息的内容进行处理。限于当前左上角工作和项目工作的限度,设备信息中只考虑了打印机映射的部分,对于打印机信息与其他的设备相关的信息没有进行有效隔离区分,而本协议说明中相关的连接信息、数据传送都只认为是打印机映射的内容。

四、各连接模块说明:

1 ISO连接模块:

在客户端与服务器的网络套接口建立之后,需要首先建立RDP协议底层连接,得到连接确认后才能正常通信。具体实现如下:

1) 连接过程说明:

初始连接时,在网络套接口TCP连接建立之后中,客户端首先进行连接请求,当收到连接确认后表示网络连接层连接建立,随后开始传送RDP数据。

2) 连接请求通信数据:

内容层内数据长度RDP包类型未知1未知2标志其它

字节数11221不定

值从下一字节开始计算0xd0或0xe00x0000另见0x00另见3) RDP包类型说明:

0xe0:客户端连接请求

0xd0:服务器确认连接

4) 未知数据2说明:

0x0000:客户端请求连接的值

0x1234:服务器确认请求的值

5) 其它数据说明:

win2003客户端在请求时附带了如下字符—“Cookie: mstshash=Administrator0x0d0x0e”,目前不知其意。其中Administrator为自动登录名,当其长度超过12字节时,只保留前12字节,其它字符都固定不变。

2 协议信息初始模块:

当基本的RDP连接建立后,需要进行客户端与服务器的系统环境、RDP连接环境的信息交流与连接确认。

2-1) 发送包结构:

内容字节数值

ISO数据层及以下XX XX

协议信息初始发送标志20x7f65

其后数据长度30x82 0xlength

第一部分未知数据704 00 04 00 01 01 ff

第二部分未知数据XX三组协议参数

第三部分未知数据XX四种连接参数

2-1-1) 第一部分未知数据结构:

内容字节数值

Calling domain20x0400

Called domain20x0400

未知数据20x0101

标志10xff

2-1-2) 第二部分未知数据结构:

内容字节数值

协议适合参数2+4+7*(2+参数值占字节数)标志,长度,8个参数值协议最小参数2+4+7*(2+参数值占字节数)标志,长度,8个参数值协议最大参数2+4+7*(2+参数值占字节数)标志,长度,8个参数值说明:3组参数标志都是0x30,8个参数值的标志都是0x20

含义适合值最小值最大值

虚拟通道数0x22=340x010xffff

用户数0x020x010xfc17=64535

Token值0x000x010xffff

优先数(priorities)0x010x010x01

遍及数(throughput)0x000x000x00

顶点数(height)0x010x010x01

网络逻辑数据包长度0xffff0x0420=10560xffff=65535

版本号0x020x020x02

2-1-3) 第三部分未知数据结构:

内容字节数值

本部分标志、数据长度40x04 0x82 0xlength1

未知数据1400 05 00 14 7c 00 01

余下的数据长度20x8000|length2

未知数据2800 08 00 10 00 01 c0 00

未知数据3444 75 63 61 –“Duca”

4组数据XX各功能模块连接信息

2-1-3-1:基本信息

内容字节数值(反字节存储)

标志20xc001

长度2这一组数据的长度

Licence版本21,4,5;lincence标志升级

未知数据120x0008

窗口宽度、高度4宽度,高度

未知数据240xca01,0xaa03

Keylayout40x00000409

客户端系统组件数4419,2195,2462

客户端机器名322字节存储1个字符

未知数据3120x04,0x00,0x0c各四个字节

未知数据464都是0

未知数据5801 ca 01 00 00 00 00 00

图形颜色位(最大值)224,16,15,8

未知数据6(疑最小位)207 00

未知数据7401 00 00 00

基本信息返回值多少且固定,认为在具体连接时有更多返回信息。加密信息需要取回加密级别与密钥;通道信息则返回基本图形信息的通道号和其他虚拟通道号,需要另行申请。

2-2-1-1) 基本信息

内容字节数值(字节反存)

标志20xc001

本组信息长度20x0008(固定)

未知数据120x0004

未知数据220x0008

2-2-1-2) 通道信息

内容字节数值(字节反存)

标志20xc003

本组信息长度2XX

需要单独开辟的通道数2若无需申请则不存在

通道号组通道数*22个字节存放一个通道号

空闲字节20x0000

2-2-1-3) 加密信息

内容字节数值

标志20xc002

本组信息长度2XX

加密位长度41->40位,2->128位

加密级别41->低,2->中,3->高

服务器随机数长度4目前都是32字节

RSA信息长度4从随机数结束开始

服务器端随机数32XX

RSA信息XX XX

密钥信息的类型41->RDP4或0x->

2-2-1-3-1) RDP4类型密钥

内容字节数值

未知数据1801 00 00 00 01 00 00 00

公钥标志20x0006

长度2length公钥信息

RSA1标志452 53 41 31 --“RSA1”

公钥模数+衬垫长度448 00 00 00-> =64+8

未知数据2800 02 00 00 3f 00 00 00

公钥指数(exponent)401 00 01 00

公钥模数值(modulu)64XX

公钥衬垫值(pad)800 00 00 00 00 00 00 00

公钥签名标志,长度40x0008 length(=0x48)

签名模数值64XX

签名衬垫值800 00 00 00 00 00 00 00

2-2-1-3-1-2) 公钥信息数字签名—X509类型密钥

内容字节数值

证书个数4不少于2个

无效证书XX若证书大于2个,都被忽略,无效

CA证书XX XX

服务器证书XX XX

Padding值16全是0

对于win2003操作系统,当授权组件被更改时,此处的密钥变为X509类型。对于客户端,只提取服务器证书部分的相关信息,以得到服务器随机数。由于对于密钥的处理是采用通用的加密算法与标准,因此在此不予深入的讨论。

3 通道申请模块

对于RDP连接,各种功能数据都是通过单独的虚拟通道传输的。初始连接后,在进一步的信息通信之前,需要开辟相应的通道。

1) 过程说明

客户端首先发送一个建立连接独立空间请求,再发送一个用户绑定请求,若服务器同意,将发送用户绑定确认,且含有需要申请的虚拟通道总数totalchannel。随后客户端申请虚拟通道。虚拟通道号从1001+2=1003开始到1001+totalchannel结束,每次申请都应返回一个申请结果。

2) 建立连接独立空间请求结构:

内容ISO数据层以下请求标示高度值间距

字节数XX122

值XX0x040x00010x0001

3) 用户绑定请求结构:

内容ISO数据层以下请求标示

字节数XX1

值XX0x28

4) 用户绑定确认结构:

内容ISO数据层以下请求标志虚拟通道总数

字节数XX22

值XX0x2e00totalchannel

5) 申请虚拟通道号结构

内容ISO数据层以下申请标志虚拟通道总数虚拟通道号

字节数XX122

值XX0x38totalchannel Num,

6) 通道申请确认结:

内容ISO数据层以下确认标志通道总数申请通道申请通道字节数XX2222

值XX0x3e00totall num num

4 系统初始连接模块:

当通道申请各部分通过后,开始系统登录的初始连接。从此数据包开始,所以虚拟通道层以上的网络数据都需要加密,详细的加密功能实现请参见加密模块。登录的网络信息结构如下:

内容字节数值(字节反存)

加密层及以下XX XX

空闲字节40x00000000

自动登录标志4正常:0x33,自动:0x28

域名长度2若空为0,有值则乘2

用户名长度2若空为0,有值则乘2

密码长度2若空为0,有值则乘2

登录程序长度2若空为0,有值则乘2

登录路径长度2若空为0,有值则乘2

域名值域名长度+22字节反存1字符,最后为2字节为0x0000用户名值用户名长度+22字节反存1字符,最后为2字节为0x0000密码字符值密码长度+22字节反存1字符,最后为2字节为0x0000登录程序名称登录程序长度+22字节反存1字符,最后为2字节为0x0000登录路径值登录路径长度+22字节反存1字符,最后为2字节为0x0000 5 图形连接模块:

在图形数据发送之前,服务器需要对此功能模块验证,验证内容是所有与图形相关的信息,包括鼠标设置、键盘输入、字体类型、画图命令格式、图形显示的各种类型。

根据已破解的信息显示,RDESKTOP原来并没有正确的赋值,因为它的返回值是没有固定的,对于服务器发送来的信息没有处理,而服务器在其关于图形方面的参数设置询问没有得到正确的回答时,则以固定的服务器端的参数进行设置。

5-1) 连接过程说明:服务器端首先发送关于图形方面的基本参数设置,客户端应该对这些设置进行反馈。此后rdesktop的处理是顺序发送同步信息,两个控制信息包,一个输入信息包,两个字体信息包;同时顺序接收一个同步信息包,两控制信息包,一个未知信息包;但redsktop并没有对接2收的信息包进行处理。

5-2)基本参数设2置信息包结构:

内容字节数值(字节反存)

加密层及以下XX XX

层后数据长度2XX

数据类型标志211 00,表示是图形信息连接确认

基本通道号2ea 03,固定

基本通道号2ea 03,固定(share)

未知数据1201 00

ASCII信息长度2XX

基本参数长度2XX

ASCII信息长度值+152 44 50 00,r->“RDP”,s->“MSTSC”

参数信息2r->0b 00,s->0d

空位230或00

详细各组参数组数内容XX

5-3) 详细参数信息组类别:

每个类型的数据前2字节为类型,然后是长度,数据。以接收到优先作例介绍。

类型值说明

01r通用类型(general)

02r位图类型(bitmap)

03r命令(order)

04位图缓存(bitmap cache)

05控制(control)

07活动(active)

08r指针(pointer)

09r共享(share)

0ar颜色缓存(color cache)

0c未知

0dr未知

0e未知

10未知

12r未知

14r未知

16r未知

40未知

00r未知

5-3-1) 通用类型(general->01)

内容字节数值(字节反存)

系统主类型201 00,OS major type 系统次类型203 00,OS minor type 协议版本号202 00,protocol version 空数据1200 00

压缩类型200 00不压缩

空数据221d 04

更新属性200 00

共享属性200 00

压缩级别200 00

空数据3201 01

5-3-2) 位图类型(bitmap->02)

内容字节数值(字节反存)

最佳颜色深度2协商值

1颜色深度201 00

2颜色深度201 00

3颜色深度201 00

桌面宽度2width

桌面高度2height

空位1200 00

允许调整大小201 00

位图压缩201 00

未知数据1200 00

未知数据2201 00

空位2200 00

5-3-3) 命令(order->03)

内容字节数值(字节反存) Terminal desc1160值

Terminal desc2410 42 0f 00

缓存X间隔201 00

缓存Y间隔214 00

未知数据1200 00

最大命令级别201 00

字体数目200 00

容量标志222 00

命令支持格式32另见

文本容量标志2a1 06

未知数据2600 00 40 42 0f 00桌面缓存大小440 42 0f 00

未知数据3401 00 00 00

未知数据4400 00 00 00

命令支持格式说明:共32个标志,只对已知标志进行说明。

字节位置,0-31值含义,1代表支持,0代表不支持

0Dest blt

1Pat blt

2Screen blt

3Required for memblt

8Line1

9Line2

10Rect

11Desktop save

13Memblt

14Triblt

22Polyline

27Text2

5-3-4) 位图缓存(bitmap cache->04)

内容字节数值(字节反存)未使用数据1240值Entries258 02

Max cell size200 01 Entries22c 01

Max cell size200 04 Entries206 01

Max cell size200 10

5-3-5) 控制(control->05)

内容字节数值(字节反存)

Control capability200 00

Remote detach200 00

Control interest202 00

Detach interest202 00

5-3-6) 活动(activer->07)

内容字节数值(字节反存)

Help key200 00

Help index key200 00

Extended help key200 00

Window active200 00

5-3-7) 指针(pointer->08)

内容字节数值(字节反存)

Color pointer201 00

Cache size219 00

未知数据1219 00

5-3-8) 共享(share->09)

内容字节数值(字节反存)

基本通道号2ea 03

未知数据127d e1

5-3-9) 颜色缓存(color cache->0a)

内容字节数值(字节反存)

缓存大小206 00

未知数据127d e1

5-3-10) 未知类型->d 收到:

内容字节数值(字节反存)

未知数据11235 00 00 00 a1 06 00 00 40 42 0f 00

未知数据21240 42 0f 00 44 e6 0a ba 93 53 19 ba

未知数据31208 60 03 e1 6a 05 1a ba 4c e6 0a ba

未知数据4124c a4 7d e1 08 a0 7d e1 01 00 00 00

未知数据51208 a4 7d e1 00 00 00 00 44 e6 0a ba

未知数据61254 f2 19 ba 08 a0 7d e1 38 e6 0a ba

未知数据71200 00 00 00 08 00 0a 00 01 00 19 00

5-3-11) 未知类型->12 收到:

内容字节数值(字节反存)

未知数据1201 00

未知数据2200 00

5-3-12) 未知类型->14 收到:

内容字节数值(字节反存)

未知数据1202 00

未知数据2200 00

5-3-13) 未知类型->16 收到:

内容字节数值(字节反存)

未知数据11201 00 00 00 6e 01 00 00 01 00 00 00

未知数据212d0 07 40 bf 01 b0 83 bf 00 00 00 00

未知数据312a4 e6 0a ba 5c db 4f 80 e6 01 00 00

6打印机映射连接模块:

RDP协议当前提供映射5个设备,在我们破解过程中并没有区分出他们的区别,在此视为单一处理。打印机的连接在系统登录前完成,以配置操作系统信息。

6-1) 连接过程说明

包序号接收发送字符含义

1R InDr设备初始连接通知,说明可以连接申请

2S CCDr客户端连接申请

3S CNDr客户端名称注册

4R SPDr服务器提供的设备接口说明

5R CCDr服务器设备申请确认

6S CPDr客户端设备提供的接口说明

7S DADr客户端打印机映射申请

8R drDr服务器打印机设备映射成功确认6-2) 设备初始连接通知:

内容字节数值(字节反存)

层内数据长度40x0000000c

标志403 00 00 00,表示控制信息ASCII信息4InDr

未知数据1201 00,可能是最少个数

未知数据2205 00,可能是最多个数

未知数据32ff ff

未知数据4ff ff

6-3) 客户端连接申请:

内容字节数值(字节反存)

层内数据长度40x0000000c

标志400 00 03 00,表示控制信息ASCII信息4CCDr

未知数据1200 01,申请最少个数

未知数据2200 05,申请最多个数

未知数据32ff ff

6-4) 客户端名称注册:

内容字节数值(字节反存)

层内数据长度4XX

标志400 00 03 00,表示控制信息ASCII信息4CNDr

未知数据1441 02或63 00

未知数据22bf 00 或72 00

未知数据3400 00 00 00

主机名长度4XX,字符2字节存储

主机名长度XX

6-5) 服务器提供的设备接口说明:

内容字节数值(字节反存)

层内数据长度4XX

标志403 00 00 00,表示控制信息ASCII信息4SPDr

设备个数405 00 00 00

设备1标识201 00

设备1信息长度228 00,从标识开始计算

设备1中未知数据4内容见下表

4组设备信息8每组只有标识号变化,1可能表示有效0x 00 08 00 01 00 00 00

设备1中未知数据:

01 00 00 0002 00 00 0000 00 00 0001 00 05 00ff ff 00 00

00 00 00 0003 00 00 0000 00 00 0000 00 00 00

6-6) 服务器设备申请确认:除标志反位存储外,其他都与6-2)中所说相同。

6-7) 客户端设备提供的接口说明:除标志反位存储、ASCII信息和设备1信息中第11字节值是5之外,其他都与6-2中所说相同。

6-8) 客户端打印机映射申请:

内容字节数值(字节反存)

层内数据长度4XX

标志403 00 00 00,表示控制信息

ASCII信息4DADr

设备个数401 00 00 00

设备1标识401 00

设备1句柄4

设备1 ASCII信息4

空位4

此后数据长度4

未知数据1长度4

未知数据10x0a

驱动打印机名长度8

空位4

驱动名称XX

打印机名称XX

6-9) 服务器打印机设备映射成功确认:

内容字节数值(字节反存)

层内数据长度4XX

标志403 00 00 00,表示控制信息

ASCII信息4drDr

设备句柄401 00 00 00

空位400 00 00 00

7 声音处理连接模块:

RDP协议需要单独的虚拟通道传递关于声音的数据。为了能够在本地播放声音,需要进行声音处理模块的连接,但只有要声音回放时才开始连接。连接的内容是:客户端对这些信息进行反馈,以在客户端与服务器之间确定相应的参数。

7-1) 连接过程说明:服务器首先发送一系列的关于声卡的设置参数,以及声音数据的网络格式信息,客户端对本地声卡进行测试并发回可支持的设置参数;服务器得到反馈后再发送测试数据,测试成功则反馈连接成功。

7-2) 声卡设置参数询问结构:

内容字节数值(字节反存)

层内数据长4XX

标志403 00 00 00,表示控制信息

声音处理标志107 表示声卡设置参数询问

未知数据1100

此后数据长度2XX

声音数据标志407 00 00 00,表示此后是声卡参数

声音音量4f0 fa 8b 00

声音平衡量4E8 20 f3 77

UDP端口25a ae

声卡参数组数2XX

未知数据21ff

状态值205 00

未知数据3176

XX组声卡参数XX*18XX

声卡参数结构:

内容字节数值(字节反存)

声道数21或2

频率4

nAvgBttesPerSec4

nBlockAlign2

wBitsPerSample2

cbSize2

7-3) 声卡设置参数反馈结构:

内容字节数值(字节反存)

层内数据长4XX

标志403 00 00 00,表示控制信息

声音处理标志107 表示声卡设置参数反馈

未知数据1100

此后数据长度2XX

声音数据标志403 00 00 00,表示此后是声卡参数反馈声音音量480 4d 80 4d

声音平衡量400 00 00 00

UDP端口204 0e

声卡参数级数2XX

未知数据2100

状态值202 00

未知数据3100

XX组声卡参数XX*18XX

7-2) 声卡测试结构:

内容字节数值(字节反存)

层内数据长4XX

标志403 00 00 00,表示控制信息

声音处理标志106 表示声卡设置参数测试

未知数据1123

此后数据长度2XX

声音数据标志1216 d4

声音数据标志2200 04

测试数据XX XX

7-2) 声卡测试反馈结构:

内容字节数值(字节反存)

层内数据长408 00 00 00

标志403 00 00 00

操作标志206 00 表示接收反馈

其后数据长度1204 00

声音数据标志1216 d4

声音数据标志2200 04

五、各功能模块说明:

任务标志说明:适用于所有非图形通道数据。

00 00 00 0001 00 00 0002 00 00 0003 00 00 0000 00 03 00

传输中传输开始传输结束传输控制传输反馈

1 licence身份谁模块:

在加密、解密验证通过以后,服务器发送licence信息进行系统的身份认证。身份证认证的加密、解密系统也是用RSA/RC4体系,但是与网络通信中的加密、解密系统分开的。licence 认证中的密钥是临时的、单独的。

1-1) 连接过程说明:服务器端首先发送demand包,内容是随机数和一些系统相关的字符信息;客户端需要回复requset包,内容是随机数、空闲值、主机名、用户名;服务器再发送authreq包,内容包括token值和signature值;客户端需要回复authresq包,内容包括token 值、hwid值和signature值。服务器通过后会发送result包,表明licence认证通过。

1-2) demand包:r

内容字节数值

加密层480 02 86 00

Licence标志101,表示demand,licence认证要求

版本1>02,>03

本层长度286 00

服务器随机数32XX

未知数据1402 00 05 00

公司信息长度42c 00 00 00

公司信息0x2c“Microsoft Corporation 0”,2字节表示1字符

未知2长度408 00 00 00

未知数据2841 00 30 00 32 00 00 00,“A02 0x0”

未知数据380d 00 04 00 01 00 00 00

未知数据485c f5 00 00 01 00 00 00

未知数据540e 00 0e 00

网址信息0x0e“0”,1字节表示1字符

1-3) request包:s

内容字节数值

加密层480 00 00 00

Licence标志113,表示request,licence认证要求回复版本1>02,>03

本层长度28a 00

未知数据1801 00 00 00 00 00 01 ff

客户端随机数32全是0值

(mod+pad)长度448 00 00 00

Modulus值64全是0值

Padding值8全是0值

用户标志20f 00

用户名长度2XX

用户名长度值1字节表示1字符,例“YYY”

主机标志210 00

主机名长度2XX

主机名长度值1字节表示1字符,例“YYY”

1-4) authreq包:r

内容字节数值

加密层480 02 26 00

Licence标志102,表示authreq,licence认证密钥版本1>02,>03

本层长度226 00

未知数据1646 53 f9 65 f1 7b

Token长度20a 00

Token值0x0a XX,10字节

Signature值0x10XX,16字节

1-5) authreq包:s

内容字节数值

加密层480 00 00 00

Licence标志115,表示authreq,licence认证密钥版本1>02,>03

本层长度23a 00

标志201 00

Token长度20a 00

Token值0x0a XX,10字节

标志201 00

Hwid长度214 00

Hwid值0x14XX,20字节

Signature值0x10XX,16字节

1-6) result包:r 不处理

内容字节数值

加密层480 02 10 00

Licence标志1ff,表示result,licence认证密钥

版本1>02,>03

本层长度210 00

未知数据1407 00 00 00

未知数据2402 00 00 00

未知数据3404 00 00 00

2 加密解密模块:

在初始模块中对网络通信连接中所设定的加密信息提交给服务器。而RDP协议实现的加密形式是RSA/RC4。

当取得初始的加密、解密密钥(在发送初始连接信息后得到的),在初始连接结束后,客户端需要发送系统登录的初始信息,用以验证客户端加密、解密的正确性。此后经过licence认证,通过认证后,所有的加密数据都经加密解密层处理。同时,密钥需要保存,因为加密数据包需要连续的正确加密或解密才能得到正确的数据。

3 图形处理模块

在图形处理中,客户端将所有的事件转换为固定格式的网络数据发送到服务器,服务器将处理的结果以图片形式发回服务器。在图形处理模块内部又分了较多的层次,叙述下面:

3-1) 第一级层次

内容字节数值

层内数据长度2XX

第一级类型标记217 00 代表具体数据,0000时跳过后4字节

基本通道号2ea 03,固定

基本通道号2ea 03,固定(share)

未知数据1201 00

网络包顺序号2XX

此后数据长度2XX

具体数据类型1见说明

数据压缩类型100 不压缩

数据压缩长度200

具体数据类型说明:

值含义说明

2图形更新

27鼠标指针操作

34响铃

38登录信息

47断开重连提示

3-2) 图形更新:前2字节是更新的类型

值含义说明

0 画图命令

1位图

2调色板

3同步,锁定

3-2-1) 画图命令:其后是若干组画图命令

内容字节数值

未知数据12XX

画图命令组数2XX

未知数据22XX

每组画图命令XX

说明:对于每一组命令,他们都取相应的系统状态,根据具体的情况进行处理。特别说明的是,颜色值是固定的3字节,根据深度值取相应的就可以。

3-2-2) 位图:前2字节是图片的数量。其后是图片数据,取出后画图片。

每一张图片的结构:

内容字节数值

图片水平左坐标2XX

图片垂直上坐标2XX

图片水平右坐标2XX

图片垂直下坐标2XX

图片水平点数2XX

图片垂直点数2XX

图片点深度值2XX

图片压缩标志200 表示不压缩

压缩数据长度2XX

压缩数据段内容段据2-1XX XX

压缩数据段内容:compress & 0x400 为真时size=压缩数据长度,其后只有数据

内容字节数值

未知数据12XX

压缩数据长度2XX

行长度2XX

final_size2XX

压缩数据内容XX XX

3-2-3) 调色板:用服务器传过来调色板代替系统的调色板。当256色时才有

内容字节数值

未知数据12XX

实验五 IEEE 802.3协议分析和以太网

郑州轻工业学院本科 实验报告 题目:IEEE 802.3协议分析和以太网学生姓名:王冲 系别:计算机与通信工程学院 专业:网络运维 班级:网络运维11-01 学号:541107110123 指导教师:熊坤 2014 年10 月28 日

实验五IEEE 802.3协议分析和以太网 一、实验目的 1、分析802.3协议 2、熟悉以太网帧的格式 二、实验环境 与因特网连接的计算机网络系统;主机操作系统为windows;Ethereal、IE等软件。 三、实验步骤 1.俘获并分析以太网帧 (1)清空浏览器缓存(在IE窗口中,选择“工具/Internet选项/删除文件”命令)。

(2)启动Ethereal,开始分组俘获。 (3)在浏览器的地址栏中输入: http://biz.doczj.com/doc/2718262044.html,/ethereal-labs/HTTP-ethereal-lab-file3.html,浏览器将显示冗长的美国权力法案。

(4)停止分组俘获。首先,找到你的主机向服务器http://biz.doczj.com/doc/2718262044.html,发送的HTTP GET报文的分组序号,以及服务器发送到你主机上的HTTP 响应报文的序号。其中,窗口大体如下。 选择“Analyze->Enabled Protocols”,取消对IP复选框的选择,单击OK。窗口如下

(5)选择包含HTTP GET 报文的以太网帧,在分组详细信息窗口中,展开EthernetII 信息部分。根据操作,回答1-5 题 (6)选择包含HTTP 响应报文第一个字节的以太网帧,根据操作,回答6-10 题2.ARP (1)利用MS-DOS命令:arp 或c:\windows\system32\arp查看主机上ARP缓存的内容。根据操作,回答11题。 (2)利用MS-DOS命令:arp -d * 清除主机上ARP缓存的内容。 (3)清除浏览器缓存。 (4)启动Ethereal,开始分组俘获。 (5)在浏览器的地址栏中输入: http://biz.doczj.com/doc/2718262044.html,/ethereal-labs/HTTP-ethereal-lab-file3.html,浏览器将显示冗长的美国权力法案。 (6)停止分组俘获。选择“Analyze->Enabled Protocols”,取消对IP复选框的选择,单击OK。窗口如下。根据操作,回答12-15题。 四、实验报告内容

以太网协议

以太网协议 历史上以太网帧格式有五种: 1 E thernet V1:这是最原始的一种格式,是由Xerox P ARC提出的3Mbps CSMA/CD以太网标准的封装格式,后来在 1980年由DEC,Intel和Xerox标准化形成E thernet V1标准; 2 E thernet II即DIX 2.0:Xerox与DEC、Intel在1982年制定的以太网标准帧格式。Cisco名称为:ARP A。 这是最常见的一种以太网帧格式,也是今天以太网的事实标准,由DE C,Intel和Xerox在1982年公布其标准,主要更改了E thernet V1的电气特性和物理接口,在帧格式上并无变化;E thernet V2出现后迅速取代E thernet V1成为以太网事实标准;E thernet V2帧头结构为6bytes的源地址+6bytes的目标地址+2Bytes的协议类型字段+数据。 常见协议类型如下: 0800 IP 0806 ARP 0835 RARP 8137 Novell IPX 809b Apple Talk 如果协议类型字段取值为0000-05dc(十进制的0-1500),则该帧就不是E thernet V2(ARP A)类型了,而是下面讲到的三种802.3帧类型之一;E thernet可以支持TCP/IP,Novell IP X/SP X,Apple Talk P hase I等协议;RFC 894定义了IP 报文在E thernet V2上的封装格式; 在每种格式的以太网帧的开始处都有64比特(8字节)的前导字符,如图所示。其中,前7个字节称为前同步码(P reamble),内容是16进制数0xAA,最后1字节为帧起始标志符0xAB,它标识着以太网帧的开始。前导字符的 作用是使接收节点进行同步并做好接收数据帧的准备。 ——P R:同步位,用于收发双方的时钟同步,同时也指明了传输的速率(10M和100M的时钟频率不一样,所以100M网卡可以兼容10M网卡),是56位的二进制数101010101010..... ——SD: 分隔位,表示下面跟着的是真正的数据,而不是同步时钟,为8位的10101011,跟同步位不同的是最后2位 是11而不是10. ——DA:目的地址,以太网的地址为48位(6个字节)二进制地址,表明该帧传输给哪个网卡.如果为FFFFFFFFFFFF, 则是广播地址,广播地址的数据可以被任何网卡接收到. ——SA:源地址,48位,表明该帧的数据是哪个网卡发的,即发送端的网卡地址,同样是6个字节. ----TYP E:类型字段,表明该帧的数据是什么类型的数据,不同的协议的类型字段不同。如:0800H 表示数据为IP包,0806H 表示数据为ARP包,814CH是SNMP包,8137H为IP X/SP X包,(小于0600H的值是用于IEEE802 的,表示数据包的长度。) ----DATA:数据段,该段数据不能超过1500字节。因为以太网规定整个传输包的最大长度不能超过1514字节。 (14字节为DA,SA,TYP E)

以太网MAC协议

以太网MAC协议 1位/字节顺序的表示方法 1.1位序 严格地讲,以太网对于字节中位的解释是完全不敏感的。也就是说,以太网并不需要将一个字节看成是一个具有8个比特的数字值。但是为了使位序更容易描述以及防止不兼容,以太网和多数数据通信系统一样,传输一个字节的顺序是从最低有效位(对应于20的数字位)到最高有效位(对应于27的数字位)。另外习惯上在书写二进制数字时,最低值位写在最左面,而最高值位写在最右面。这种写法被称为“小端”形式或正规形式。一个字节可以写成两个十六进制数字,第一个数字(最左边)是最高位数字,第二个(最右边)是最低位数字。 1.2字节顺序 如果所有有定义的数据值都是1字节长,则在介绍完位序后就可以停止了。但是很不幸事实并非如此,所以我们必须面对长于单个字节的域,这些域是以从左到右排列的,以连接符“-”分隔的字节串表示。每个字节包含两个十六进制数字。 多字节域的各个字节按第一个到最后一个(即从左到右)的顺序发送,而每个字节采用小端位序传送。例如,6字节域: 08-00-60-01-2C-4A 将按以下顺序(从左向右读)串行地发送: 0001 0000-0000 0000-0000 0110-1000 0000-0011 0100-0101 0010 2以太网地址 地址是一个指明特定站或一组站的标识。以太网地址是6字节(48比特)长。图1说明了以太网地址格式。 图1 以太网地址格式 在目的地址中,地址的第1位表明该帧将要发送给单个站点还是一组站点。在源地址中,第1位必须为0。 站地址要唯一确定是至关重要的,一个帧的目的地不能是模糊的。地址的唯

一性可以是: ●局限于本网络内。保证地址在某个特定LAN中是唯一的,但不能保证 在相互连接的LAN中是唯一的。当使用局部唯一地址时,要求网络管 理员对地址进行分配。 ●全局的。保证地址在所有的LAN中,在任何时间,以及对于所有的技 术都是唯一的,这是一个强大的机制,因为: (1)使网络管理员不必为地址分配而烦恼; (2)使得站点可以在LAN之间移动,而不必重新分配地址; (3)可以实现数据链路网桥/交换机。 全局唯一地址以块为单位进行分配,地址块由IEEE管理。一个组织从IEEE 获得唯一的地址块(称为OUI),并可用该地址块创建224个设备。那么保证该地址块中地址(最后3个字节)的唯一性就是制造商的责任。 地址中的第2位指示该地址是全局唯一还是局部唯一。除了个别情况,历史上以太网一直使用全局唯一地址。 3以太网数据帧格式 图2 基本的以太网帧格式及传输次序 图2显示了以太网MAC帧各个字段的大小和内容以及传输次序。 该格式中每个字段的字节次序是先传输的字节在左,后传输的字节在右。在每个字节中的位次序正好相反,低位在左,高位在右。字节次序和位的次序通常用于FCS之外的所有字段。FCS将作为一个特殊的32位字段(最高位在左),而不是4个单独的字节。 3.1前导码(Preamble)和帧起始定界符(SFD) 前导码包含8个字节。前7个字节(56位)的职位0x55,而最后一个字节为帧起始定界符,其值为0xD5。结果前导码将成为一个由62个1和0间隔(10101010---)的串行比特流,最后2位是连续的1,表示数据链路层帧的开始。其作用就是提醒接收系统有帧的到来,以及使到来的帧与输入定时进行同步。在DIX以太网中,前导码被认为是物理层封装的一部分,而不是数据链路层的封装。 3.2地址字段 每个MAC帧包含两个地址字段:目标地址(Destination Address)和源地址(Source Address)。目的地址标识了帧的目的地站点,源地址标识了发送帧的站。DA可以是单播地址(单个目的地)或组播地址(组目的地),SA通常是单播地

以太网采用的通信协议

竭诚为您提供优质文档/双击可除以太网采用的通信协议 篇一:以太网基础协议802.3介绍 802.3 802.3通常指以太网。一种网络协议。描述物理层和数据链路层的mac子层的实现方法,在多种物理媒体上以多种速率采用csma/cd访问方式,对于快速以太网该标准说明的实现方法有所扩展。 dixethernetV2标准与ieee的802.3标准只有很小的差别,因此可以将802.3局域网简称为“以太网”。 严格说来,“以太网”应当是指符合dixethernetV2标准的局域网。 早期的ieee802.3描述的物理媒体类型包括:10base2、10base5、10baseF、10baset和10broad36等;快速以太网的物理媒体类型包括:100baset、100baset4和100basex等。 为了使数据链路层能更好地适应多种局域网标准,802委员会就将局域网的数据链路层拆成两个子层: 逻辑链路控制llc(logicallinkcontrol)子层 媒体接入控制mac(mediumaccesscontrol)子层。

与接入到传输媒体有关的内容都放在mac子层,而llc 子层则与传输媒体无关,不管采用何种协议的局域网对llc 子层来说都是透明的。 由于tcp/ip体系经常使用的局域网是dixethernetV2而不是802.3标准中的几种局域网,因此现在802委员会制定的逻辑链路控制子层llc(即802.2标准)的作用已经不大了。 很多厂商生产的网卡上就仅装有mac协议而没有llc协议。 mac子层的数据封装所包括的主要内容有:数据封装分为发送数据封装和接收数据封装两部分,包括成帧、编制和差错检测等功能。 数据封装的过程:当llc子层请求发送数据帧时,发送数据封装部分开始按mac子层的帧格式组帧: (1)将一个前导码p和一个帧起始定界符sFd附加到帧头部分; (2)填上目的地址、源地址、计算出llc数据帧的字节数并填入长度字段len; (3)必要时将填充字符pad附加到llc数据帧后; (4)求出cRc校验码附加到帧校验码序列Fcs中; (5)将完成封装后的mac帧递交miac子层的发送介质访问管理部分以供发送;接收数据解封部分主要用于校验帧

以太网用什么协议-

竭诚为您提供优质文档/双击可除 以太网用什么协议? 篇一:以太网协议报文格式 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)

实验二、以太网帧格式与ARP协议分析

实验二、以太网帧格式与ARP协议分析 实验类型: 验证类实验实验课时: 2学时 实验时间和地点: 4月25日星期三、第一大节(8:00-10:00),计算机中心 学号:200911715 姓名:张亚飞 一、实验目的 验证以太网帧格式,理解ARP协议的工作原理。 二、实验准备 提前下载EtherPeek(http://biz.doczj.com/doc/2718262044.html,/soft/17558.html),学习EtherPeek的使用,见《EtherPeek使用说明(部分)》;会用“ipconfig –all”查看本机IP地址。 三、实验步骤 假设邻座同学的主机为A,IP地址为w.x.y.z,在Windows下运行EtherPeek,新建一个Filter,只捕获本机与w.x.y.z之间的IP分组。 1.以太网帧格式分析 开始捕获,然后在命令行执行ping w.x.y.z,再停止捕获;分析捕获的IP分组,记录以太网帧头各字段以及FCS字段的值和含义(如表1),并与802.3帧格式进行比较。 2.ARP协议分析 (1)进入DOS仿真窗口,执行“arp – a”查看本机的ARP缓存内容,若有w.x.y.z的记录,执行“arp –d w.x.y.z”删除该记录。注:执行“arp -help”可知arp的各选项用法。 (2)开始捕获,然后执行“ping w.x.y.z”,停止捕获,记录并分析ARP报文各字段的含义,如表2。 表2 ARP报文格式 表2 ARP报文格式

(3)执行“arp –d w.x.y.z”清除缓存的IP-MAC记录。本机和主机A停止任何数据通信,在主机A上访问本机外的任何主机,再执行“arp – a”查看本机ARP缓存,看是否新增了主机A的IP-MAC记录,解释一下。 答:删除过之后,被删除的记录不存在缓存中了。当主机A访问本机的时候,本机的ARP 缓存中重新出现A的记录。出现这种现象的原因在于本机ARP缓存中对应该主机A的记录一开始不存在,对方发送ping并显示可以连通后,本机就可以通过ARP解析出对方的MAC 地址。 四、实验体会 以太网帧格式,理解ARP协议的工作原理。ARP -a:查看本机ARP缓存,ARP -d:清空本地ARP缓存 五、思考问题 什么时候本地arp缓存中会增加主机A的记录? 一、本机用ping测试与主机A的网络是否连通并确认联通时,会增加主机A的记录; 二、主机A用ping测试与本机的网络是否连通并确认联通时,会增加主机A的记录。

以太网协议的规则

以太网协议 2007-08-25 16:45:54| 分类:默认分类|字号订阅 历史上以太网帧格式有五种: 1 Ethernet V1:这是最原始的一种格式,是由Xerox PARC提出的3Mbps CSMA/CD以太网标准的封装格式,后来在1980年由DEC,Intel和Xerox标准化形成Ethernet V1标准; 2 Ethernet II即DIX 2.0:Xerox与DEC、Intel在1982年制定的以太网标准帧格式。Cisco 名称为:ARPA。 这是最常见的一种以太网帧格式,也是今天以太网的事实标准,由DEC,Intel和Xerox 在1982年公布其标准,主要更改了Ethernet V1的电气特性和物理接口,在帧格式上并无变化;Ethernet V2出现后迅速取代Ethernet V1成为以太网事实标准;Ethernet V2帧头结构为6bytes的源地址+6bytes的目标地址+2Bytes的协议类型字段+数据。 常见协议类型如下: 0800 IP 0806 ARP 0835 RARP 8137 Novell IPX 809b Apple Talk 如果协议类型字段取值为0000-05dc(十进制的0-1500),则该帧就不是Ethernet V2(ARPA)类型了,而是下面讲到的三种802.3帧类型之一;Ethernet可以支持TCP/IP,Novell IPX/SPX, 在每种格式的以太网帧的开始处都有64比特(8字节)的前导字符,如图所示。其中,前7个字节称为前同步码(Preamble),内容是16进制数0xAA,最后1字节为帧起始标志符0xAB,它标识着以太网帧的开始。前导字符的作用是使接收节点进行同步并做好接收数据帧的准备。 ——PR:同步位,用于收发双方的时钟同步,同时也指明了传输的速率(10M和100M 的时钟频率不一样,所以100M网卡可以兼容10M网卡),是56位的二进制数101010101010..... ——SD: 分隔位,表示下面跟着的是真正的数据,而不是同步时钟,为8位的10101011,跟同步位不同的是最后2位是11而不是10.

以太网协议,802

竭诚为您提供优质文档/双击可除 以太网协议,802 篇一:以太网基础协议802.3介绍 802.3 802.3通常指以太网。一种网络协议。描述物理层和数据链路层的mac子层的实现方法,在多种物理媒体上以多种速率采用csma/cd访问方式,对于快速以太网该标准说明的实现方法有所扩展。 dixethernetV2标准与ieee的802.3标准只有很小的差别,因此可以将802.3局域网简称为“以太网”。 严格说来,“以太网”应当是指符合dixethernetV2标准的局域网。 早期的ieee802.3描述的物理媒体类型包括:10base2、10base5、10baseF、10baset和10broad36等;快速以太网的物理媒体类型包括:100baset、100baset4和100basex等。 为了使数据链路层能更好地适应多种局域网标准,802委员会就将局域网的数据链路层拆成两个子层: 逻辑链路控制llc(logicallinkcontrol)子层 媒体接入控制mac(mediumaccesscontrol)子层。

与接入到传输媒体有关的内容都放在mac子层,而llc 子层则与传输媒体无关,不管采用何种协议的局域网对llc 子层来说都是透明的。 由于tcp/ip体系经常使用的局域网是dixethernetV2而不是802.3标准中的几种局域网,因此现在802委员会制定的逻辑链路控制子层llc(即802.2标准)的作用已经不大了。 很多厂商生产的网卡上就仅装有mac协议而没有llc协议。 mac子层的数据封装所包括的主要内容有:数据封装分为发送数据封装和接收数据封装两部分,包括成帧、编制和差错检测等功能。 数据封装的过程:当llc子层请求发送数据帧时,发送数据封装部分开始按mac子层的帧格式组帧: (1)将一个前导码p和一个帧起始定界符sFd附加到帧头部分; (2)填上目的地址、源地址、计算出llc数据帧的字节数并填入长度字段len; (3)必要时将填充字符pad附加到llc数据帧后; (4)求出cRc校验码附加到帧校验码序列Fcs中; (5)将完成封装后的mac帧递交miac子层的发送介质访问管理部分以供发送;接收数据解封部分主要用于校验帧

以太网基础协议802.3介绍

802.3 802.3 通常指以太网。一种网络协议。描述物理层和数据链路层的MAC子层的实现方法,在多种物理媒体上以多种速率采用CSMA/CD访问方式,对于快速以太网该标准说明的实现方法有所扩展。 DIX Ethernet V2 标准与 IEEE 的 802.3 标准只有很小的差别,因此可以将 802.3局域网简称为“以太网”。 严格说来,“以太网”应当是指符合 DIX Ethernet V2 标准的局域网。 早期的IEEE 802.3描述的物理媒体类型包括:10Base2、10Base5、10BaseF、10BaseT和10Broad36等;快速以太网的物理媒体类型包括:100 BaseT、100Base T4和100BaseX等。 为了使数据链路层能更好地适应多种局域网标准,802 委员会就将局域网的数据链路层拆成两个子层: 逻辑链路控制 LLC (Logical Link Control)子层 媒体接入控制 MAC (Medium Access Control)子层。 与接入到传输媒体有关的内容都放在 MAC子层,而 LLC 子层则与传输媒体无关,不管采用何种协议的局域网对 LLC 子层来说都是透明的。 由于TCP/IP 体系经常使用的局域网是 DIX Ethernet V2 而不是 802.3 标准中的几种局域网,因此现在 802 委员会制定的逻辑链路控制子层 LLC(即 802.2 标准)的作用已经不大了。 很多厂商生产的网卡上就仅装有 MAC 协议而没有 LLC 协议。 MAC子层的数据封装所包括的主要内容有:数据封装分为发送数据封装和接收数据封装两部分,包括成帧、编制和差错检测等功能。 数据封装的过程:当LLC子层请求发送数据帧时,发送数据封装部分开始按MAC 子层的帧格式组帧: (1)将一个前导码P和一个帧起始定界符SFD附加到帧头部分; (2)填上目的地址、源地址、计算出LLC数据帧的字节数并填入长度字段LE N; (3)必要时将填充字符PAD附加到LLC数据帧后; (4)求出CRC校验码附加到帧校验码序列FCS中; (5)将完成封装后的MAC帧递交MIAC子层的发送介质访问管理部分以供发送;接收数据解封部分主要用于校验帧的目的地址字段,以确定本站是否应该接受该帧,如地址符合,则将其送到LLC子层,并进行差错校验。 IEEE802.3

以太网OAM协议解析及测试关注点

以太网OAM(802.3ah)协议分析及测试关注点 1 以太网OAM简介 (3) 2 以太网OAM在网络上的应用 (3) 3 OAMPDU报文解析及工作原理 (4) 3.1 报文解析 (4) 3.2 几种最常见的OAMPDU用法: (7) 3.2.1 Information OAMPDU (7) 3.2.2 Event Notification OAMPDU (7) 3.2.3 Loopback Control OAMPDU (8) 3.3 以太网OAM工作原理: (8) 3.3.1 建立以太网OAM连接: (8) 3.3.2 链路监控 (10) 3.3.3 远端故障检测 (11) 3.3.4 远端环回 (12) 4 Feature list (13)

4.1 主要功能 (13) 4.2 工作原理 (13) 4.3 Event Notification的处理 (14) 4.4 OAMPDU报文 (16) 4.5 Local Information TLVs (17) 4.6 Remote Information TLVs (18) 4.7 Link Event TLVs (18) 4.8 Variables Descriptors and Containers (19) 5 测试关注点: (20) 5.1 概述: (20) 5.2 具体测试点: (21)

1以太网OAM简介 以太网OAM(Operations, Administration and Maintenance,操作、管理和维护) 是一种监控网络问题的工具。它工作在数据链路层,利用设备之间定时交互 OAMPDU(OAM Protocol Data Units,OAM 协议数据单元)来报告网络的状态,使网络管理员能够更有效地管理网络。 2以太网OAM在网络上的应用 随着数据业务的广泛应用,以太网在通信网络中扮演着越来越重要的作用,但是以太网与传统的SDH相比,在网络故障告警、链路质量、维护手段等方面都略逊一筹。于是国际标准化组织IEEE,先后推出了802.3ah(2004)和802.1ag(2007)两个标准化协议来强化以太网在维护、告警方面的能力。 802.3ah的以太网OAM主要是链路方面的监测和维护,是一种偏物理层的OAM,它主要应用在网络的边缘设备上(接入层),且OAMPDU报文只能转发一跳,主要用来监测链路质量、收集链路告警等。而802.1ag的以太网OAM是偏网络和应用的OAM,主要用在汇聚层和核心层上,它的OAMPDU报文能够传输多跳。它不仅能够监测链路质量、收集告警,还能够实现电信级快速倒换以及traceroute、ping等功能。在TN705/725上的MPLS OAM就部分参考了

以太网协议报文格式

T C P/I P协议族

IP/TCP Telnet和R login、FTP以及SMTP IP/UDP DNS 、TFTP、BOOTP、SNMP ICMP是IP协议的附属协议、IGMP是Internet组管理协议 ARP(地址解析协议)和RARP(逆地址解析协议)是某些网络接口(如以太网和令牌环网)使用的特殊协议,用来转换I P层和网络接口层使用的地址。 1、以太帧类型 以太帧有很多种类型。不同类型的帧具有不同的格式和MTU值。但在同种物理媒体上都可同时存在。

?标签协议识别符(Tag Protocal Identifier, TPID): 一组16位元的域其数值被设定在0x8100以用来辨别某个IEEE 802.1Q的帧为已被标签的,而这个域所被标定位置与乙太形式/长度在未标签帧的域相同,这是为了用来区别未标签的帧。 ?优先权代码点(Priority Code Point, PCP): 以一组3位元的域当作IEEE 802.1p 优先权的参考,从0(最低)到7(最高),用来对资料流(音讯、影像、档案等等)作传输的优先级。 ?标准格式指示(Canonical Format Indicator, CFI): 1位元的域。若是这个域的值为1,则MAC地指则为非标准格式;若为0,则为标准格式;在乙太交换器中他通常默认为0。在乙太和令牌环中,CFI用来做为两者的相容。若帧在乙太端中接收资料则CFI的值须设为1,且这个端口不能与未标签的其他端口桥接。?虚拟局域网识别符(VLAN Identifier, VID): 12位元的域,用来具体指出帧是属于哪个特定VLAN。值为0时,表示帧不属于任何一个VLAN;此时,802.1Q标签代表优先权。16位元的值0x000和0xFFF为保留值,其他的值都可用来做为共4094个VLAN的识别符。在桥接器上,VLAN1在管理上做为保留值。这个12位元的域可分为两个6位元的域以延伸目的(Destination)与源(Source)之48位元地址,18位元的三重标记(Triple-Tagging)可和原本的48位元相加成为66位元的地址。 0、以太网的封装格式(RFC 894) IEEE 802.2/802.3(RFC 1042)

以太网帧类型速查(协议字段)

竭诚为您提供优质文档/双击可除以太网帧类型速查(协议字段) 篇一:以太网帧类型速查 以太网帧格式 目前,有四种不同格式的以太网帧在使用,它们分别是: ●ethernetii即dix2.0:xerox与dec、intel在1982年制定的以太网标准帧格式。cisco名称为: aRpa。 ●ethernet802.3raw:novell在1983年公布的专用以太网标准帧格式。cisco名称为:novell-ether。 ●ethernet802.3sap:ieee在1985年公布的 ethernet802.3的sap版本以太网帧格式。cisco名称为:sap。 ●ethernet802.3snap:ieee在1985年公布的 ethernet802.3的snap版本以太网帧格式。cisco 名称为:snap。 在每种格式的以太网帧的开始处都有64比特(8字节)的前导字符,如图3所示。其中,前7个字节称为前同步码(preamble),内容是16进制数0xaa,最后1字节为帧起始

标志符0xab,它标识着以太 网帧的开始。前导字符的作用是使接收节点进行同步并做好接收数据帧的准备。 图3以太网帧前导字符 除此之外,不同格式的以太网帧的各字段定义都不相同,彼此也不兼容。 3.1ethernetii帧格式 如图4所示,是ethernetii类型以太网帧格式。 图4ethernetii帧格式 ethernetii类型以太网帧的最小长度为64字节(6+6 +2+46+4),最大长度为1518字节(6+6+2+1500+4)。其中前12字节分别标识出发送数据帧的源节点mac地址和 接收数据帧的目标节点mac 地址。 接下来的2个字节标识出以太网帧所携带的上层数据类型,如16进制数0x0800代表ip协议数据, 16进制数0x809b代表appletalk协议数据,16进制数0x8138代表novell类型协议数据等。在不定长的数据字段 后是4个字节的帧校验序列(Framechecksequence,Fcs),采用32位cRc 循环冗余校验对从"目标mac地址"字段到"数据"字段的数据进行校验。

以太网协议封装格式

字号:大中小一、以太网链路层协议封装格式 以太网数据在网络介质上传输需要遵循一定的机制,其中CSMA/CD介质访问控制机制约定了以太网在传输数据时,两帧之间需要等待一个帧间隙时间(IFG或IPG),为以太网接口提供了帧接收之间的恢复时间,该恢复时间最小值为传输96bit所花费的时间,对于10M线路,该时间为9.6uS,100M线路为960nS,1G的线路为96nS。同时以太网数据帧在传输时还需要有7byte的前导字段和1byte的定界符。因此以太网数据在传输过程中是由以下部分组成的: 7byte(前导)+1byte(定界符)+以太网数据帧+12byte(IPG)。 在全双工工作模式下,如果CSMA/CD介质访问控制机制发现传输冲突时,则会放弃当前帧发送,改为发送一个48比特的噪声帧。 其中以太网数据帧限制为最小长度为64byte,最大长度为1518byte,其格式为:6byte(目的MAC地址)+6byte(源MAC地址)+2byte(类型字段)+数据字段+4byte(FCS校验字段)。其中帧类型字段标识其后的数据类型。 这里值得注意的是区分Ethernet II帧格式和802.3帧格式的不同,我们有时可能会混用了这两个术语。 Ethernet II帧是最常见的一种以太网帧格式,也是今天以太网的事实标准,由DEC,Intel和Xerox在1982年公布标准,Ethernet II可以支持TCP/IP,Novell IPX/SPX,Apple Talk Phase I等协议,其比较常见的类型字段为:0X0800(IP 帧),0X0806(ARP请求/应答帧),0X8035(PARP请求/应答帧),0X8137(Novell IPX),0X809b(Apple Talk)。RFC 894定义了IP报文在Ethernet II上的封装格式。

相关主题