一种以太网mac帧结构演示系统和方法

文档序号:7916564阅读:199来源:国知局
专利名称:一种以太网mac帧结构演示系统和方法
技术领域
本发明涉及以太网通信,更确切地说,涉及一种太网MAC帧结构中可干预 字段的演示系统与方法。
背景技术
以太网(Ethernet)以其高度灵活、相对简单、易于实现的特点,成为当 今最重要的一种局域网建网技术,目前全球企事业用户的90%以上都采用以太网 接入。不但如此,随着网络控制的不断发展,传统的基于RS485, CAN等总线的 各种集散控制系统,由于其固有的缺陷,正在被基于TCP/IP协议族的工业以太 网所取代。最初的以太网是使用带碰撞检测的载波侦听多路访问(CSMA/CD )技 术的总线型网络,根据IEEE802. 3标准,以太网的MAC层主要执行两项任务(1 )、 数据成帧和解帧,包括寻址和错误检测;(2)、媒体访问管理,包括媒体分配 (避免碰撞)和竟争裁决(碰撞处理)。无论何种应用,其基本数据传输都是 基于MAC帧。以太网MAC (媒体访问控制)帧是以太网在MAC层的基本传输单位, 是以太网才支术的核心体现,因此有必要对以太网的MAC帧有清晰准确的认识,对 于相关专业的学生或从业人员学习和了解以太网技术来说更是如此。但是,实 际组网运行中,以太网MAC帧的封装由以太网控制器自动完成,对用户完全透明, 这就使其工作过程不可见。因此,需要通过实验的手段对以太网MAC帧进行检测 和显示,关于此项技术,目前现有技术中尚无文献介绍也并未见产品面世。发明内容因此,本发明的目的即是为了解决目前没有检验MAC帧的以太网教学实 验系统、不便于对以太网机理、实质深入学习的问题,提供一种以太网MAC帧 结构演示系统和方法,以对以太网通信过程中的MAC帧的实际内容进行显示, 使可以对以太网通信有更直观和确切的了解。为此,本发明提供了一种以太网MAC帧结构演示系统,包括发送节点与接收节点,所述发送节点和接收节点之间通过以太网通信,其中,所述发送节点包括微处理器、通信单元、以太网接口单元、键盘和液晶显示单元,其用于 完成以太网MAC帧的构造和发送;所述接收节点包括微处理器、通信单元、 以太网接口单元、检测单元、键盘和液晶显示单元,其用于检测并显示MAC帧。本发明还提供了一种以太网MAC帧结构演示方法,其用于上述以太网MAC 帧结构演示系统,所述方法包括如下步骤SOI,启动4全测系统并初始化;502, 并配置发送节点的通信参数;503, 配置接收节点的通信参数;504, 发送节点构造预备帧;505, 发送节点启动发送预备帧; S06,接收节点接收并显示预备帧; S07,发送节点发送MAC帧;S08,接收节点检测并显示接收到的MAC帧; S09,结束。使用本发明的以太网MAC帧结构演示系统和方法,其有益效果在于,通过 本发明的检测和显示方法,可以对实际传输的MAC帧结构各个组成部分进行直深入的了解。其中,是通过首先发送预备帧再发送正式MAC帧,使得对MAC帧进行检测 时可以预知所需电平采样次数,无需再进行帧结束判别。并且,通过令用户可 以自行设定可干预字段的值,比直接的从以太网截取MAC帧数据显示的方式能 提供给用户更多的自主性和灵活度,有利于获得更深入的体会和认识以及进行 各种实验。


图l是本发明一种以太网MAC帧结构演示系统的结构示意图;图2是本发明以太网MAC帧结构演示方法的流程示意图;图3是本发明以太网MAC帧结构演示方法中发送节点的结构示意图;图4是本发明以太网MAC帧结构演示方法中接收节点的结构示意图;图5是以太网MAC帧的一实施例的帧才各式示意图;图6是本发明以太网MAC帧结构演示方法中MAC帧检测的流程示意图。
具体实施方式
用于实现本发明方法的一种以太网MAC帧帧结构演示系统如图1所示,该 系统由发送节点1、接收节点2构成,发送节点1和接收节点2之间通过以太网 通信,例如,为便于实验系统组网和演示,在本实施例中,发送节点1和接收 节点2直接通过线缆连接,线缆可使用双绞线,其它种类的线缆只要能满足相 应数据传输要求亦可选用,例如同轴电缆、光纤等,但并不局限于上述种类。 当然,本发明的系统亦可令发送节点1和接收节点2通过交换机通信。图3是本发明以太网MAC帧帧结构演示系统和方法中发送节点1的结构示 意图。从图中可见,发送节点1由微处理器102 (例如,可用三星公司的嵌入式 微处理器S3C44B0X实现)、通信单元104、以太网接口单元101、键盘105和 液晶显示单元103组成,其用于完成以太网MAC帧的构造和发送。其中,所述 键盘105、液晶显示单元103和通信单元104分别连接到微处理器102,键盘105 用于进行数据和命令输入,液晶显示单元103则根据节点1的工作过程显示相 应信息,孩i处理器102通过通信单元104和与通信单元104相连接的以太网接 口单元101将欲发送的数据封装成帧并发送到以太网。同时,为了使演示过程 更加清晰,根据本发明的一个优选实施例,在发送节点1还设有一个与微处理 器102连接的启动发送按键106,用以启动MAC帧的发送,该按键106的功能 亦可通过软件菜单由键盘105输入实现。其具体过程将在后文结合图2详述。图4是本发明以太网MAC帧帧结构演示系统和方法中接收节点的结构示意 图。从图中可见,接收节点2包括微处理器202 (例如,可用三星公司的嵌入 式微处理器S3C44B0X实现)、通信单元204、以太网接口单元201、检测单元 207、 4建盘205和液晶显示单元203组成,其负责4企测并显示MAC帧。其中, 液晶显示单元203、键盘205和检测单元204分别连接到微处理器202,通信单 元204通过以太网接口单元201获取来自以太网的MAC帧,并将其内容送至微 处理器202,通过液晶显示单元203进行显示。其具体过程将在后文结合图2详 述。其中, 一种典型的以太网MAC帧结构如图5所示,每一MAC帧包括8字 节的前导码,6字节的目的地址,6字节的源地址,2字节的"类型"用于表示 MAC帧的数据字段的协议类型,以及可变长度的数据部分,最后是4字节的FCS(Frame Check Sequence,帧差错检验序列)。本发明中,将目的地址字段、源 地址字段、类型字段和数据字段这四个用户可进行设置和修改的字段定义为"可 干预字段",并在演示过程中,使用户可以自行设定所述"可干预字段,,的值。 图2是本发明以太网MAC帧帧结构演示方法的流程示意图。如图2所示, 本发明实验系统的以太网MAC帧的帧结构演示方法包括如下步骤SOI,启动检测系统并初始化;S02,并配置发送节点的通信参数;S03,配置接收节点的通信参数;S04,发送节点构造预备帧;S05,发送节点启动发送预备帧;S06,接收节点接收并显示预备帧;S07,发送节点发送MAC帧;S08,接收节点检测并显示接收到的MAC帧;S09,结束。下面结合具体实施方式
对本发明的以太网MAC帧结构演示方法进行详细说明。在步骤SOl,启动检测系统并初始化;启动整个系统,并自动初始化发送和 接收节点各个装置。步骤S02中,发送节点1通信单元104包括一以太网控制器,在本实施例 中,用以太网控制器RTL8019AS实现,其晶振设为2MHz,从而令发送节点1 和接收节点2之间的通信速率为1Mbps。而发送节点1微处理器102用三星的 S3C44B0X实现,此处,将其工作频率设置为20MHz。发送节点1的通信参数 配置还包括对发送节点1的以太网物理地址、IP地址进行配置,这一步由系 统自动完成。其中,发送节点1的物理地址为通信单元104中以太网控制器 RTL8019AS的物理地址,而IP地址根据所在局域网的IP地址进行配置,例如 192.168.1.10。之后,发送节点1的液晶显示单元103显示相应的提示信息,例 如显示节点1初始化完毕;节点1的物理地址是XX.XX.XX.XX.XX.XX; IP 地址是XX.XX.XX.XX;准备构造MAC帧;其中,"XX……XX"表示实际的通 信参数中的地址。步骤S03配置接收节点2通信参数的过程与步骤S02类似,在本实施例中, 接收节点2的微处理器202亦用三星的S3C44B0X实现,此处,将其工作频率200810129946.2说明书第5/9页设置为20MHz。接收节点2的通信参数配置还包括对接收节点2的以太网物 理地址、IP地址进行配置,这一步同样由系统自动完成。其中,接收节点2的 物理地为通信单元204中以太网控制器RTL8019AS的物理地址,以太网控制器 的晶振也设为2MHz。接收节点2的IP地址亦才艮据所在局域网的IP地址进行配 置,显然接收节点2与发送节点1应在同一局域网内,且需满足一定条件。例 如,显然,接收节点2的IP地址不能和发送节点1重复。并且,在本实施例中, 接收节点2和发送节点1之间直接通过线缆连接,接收节点2的IP地址应和发 送节点1在同一网段,例如节点2的IP地址可设为192.168.1.20。之后,接收 节点2的液晶显示单元203显示相应的提示信息,例如显示接收节点2初始 化完毕;4妻收节点2的物理地址是XX.XX.XX.XX.XX.XX; IP地址是 XX.XX.XX.XX;.准备接收MAC帧;其中,"XX……XX"表示接收节点2实际 的通信参数中的地址。步骤S04,发送节点1构造预备帧,其中,所述预备帧是指发送节点1第一 次发送的MAC帧,为了演示需要,此步骤可在用户参与下进行,以使用户在 MAC帧的构造中有更多的主动性。例如,用户参与的构造过程可在发送节点1 的液晶显示单元103提示下按如下过程进行首先,发送节点1的液晶显示单 元103提示"准备构造以太网MAC帧",并给出一选择菜单,该菜单包括一 "确 定"按钮,当用户点击"确定"后,MAC帧构造开始。在液晶显示单元103提 示下,用户通过键盘设置MAC帧的目的地址字段、源地址字段、类型字段和数 据字段。其中,为保证正确发送,目的地址应为接收节点2的以太网物理地址; 源地址应为发送节点1的以太网物理地址;类型字段表示数据字段中协议报文 的类型,例如可选择为0x0800、 0x0806或0x8035,分别表示数据字革史中承载的 为IP协议l艮文、ARP协议报文或RARP协议才艮文;由于本系统只是为了演示 MAC帧的结构,为简单起见,用户对数据字段进行填充时只输入一个字节的有 效数据;前导码和FCS (Frame Check S叫uence,帧差镅"险验序列)字段用户无 法干预,由通信单元中的以太网控制器RTL8019AS自动添加。构造完成后,液 晶显示单元103显示提示信息,例如"MAC帧构造完毕",步骤S05发送节点1启动发送,首先是液晶显示单元103显示一选择菜单, 该菜单包括一供用户启动发送的"确定"按钮,点击"确定,,后,启动发送, 或者通过启动图3中的启动发送按键106启动发送,通信单元的以太网控制器 RTL8019AS自动检测步骤S04中用户构造的MAC帧,检测包括首先自动检测所构造MAC帧的目的地址字段、源地址字段和类型字段是否满足规范,如果不 满足则提示用户"MAC帧构造错误,请重新构造",如果满足则继续检测数据 字段的长度是否满足规定的最小字节数,即46字节,如不满足则在有效数据之 后填充0使数据字段长度达到46字节,如果大于规定的最大字节数,即1500 字节则对其进行分片传输。然后以太网控制器RTL8019AS自动对该帧添加前导 码字段和FCS字段,从而构造成完整的MAC帧通过以太网接口单元发送至以 太网上,并通过液晶显示单元103显示发送成功。其中,所述规定的最小、最 大字节数为根据IEEE802.3标准,为进行冲突检测和避免碰撞等目的由现有技 术的一般规则确定,在此不加赘述。步骤S06,接收节点接收并显示预备帧;此处,接收节点2的检测单元不对 该帧进行检测,而由以太网控制器进行接收,并通过接收节点,2的微处理器202 读取该帧中的可干预字段,从而用于确定以后发送节点1第二次发送MAC帧时 接收节点2的检测单元的釆样次数。步骤S06接收节点2的通信单元检测到预 备帧后,进行如下操作首先执行步骤S601,接收节点的通信单元接收预备帧; 之后在步骤S602,接收节点2通信单元中的以太网控制器RTL8019AS自动对接 收到的预备帧进行MAC地址比较和FCS (帧校验序列)中的CRC (循环冗余 校验码)比较;步骤S603如果比较结果出现错误则通过接收节点2的液晶显示 单元实现"MAC帧接收错误",并要求发送节点1重新发送,回到步骤5;步骤 S604,如果结果正确则接收节点的微处理器读取接收单元太网控制器接收緩冲 区中的数据并据以计算捕捉MAC帧所需的电平釆样次数N;这一步要对预备帧 进行处理,包括自动去掉预备帧中的前导码和FCS字段,同时添加l字节的帧 接收状态信息、1字节的下一帧页地址指针和2字节的表示可干预字段字节数的 接收帧帧长度三个字段,并将添加的三个字段与预备帧中的可干预字段一起存 储到初始化时分配的RTL8019AS的接收緩冲区。然后接收节点2的通信单元产 生一个中断信号,通知微处理器从接收单元中读取预备帧中的数据。微处理器 收到此中断信号后在微处理器的外部扩展存储部分分配一临时存储区,并通过 通信单元中以太网控制器RTL8019AS的远程DMA ( direct memory access,直接 存储器存取)将通信单元接收緩冲区中的预备帧数据读入该临时存储区中。然 后,接收节点2的微处理器202根据从通信单元204读入的接收帧帧长度字段, 计算并存储附图5所示的以太网总线上的完整MAC帧的位数,从而用以计算后 续步骤中需用到的每帧对应的检测单元的总采样次数N: N=(接收帧帧长度+12) xi6次。最后是步骤S605,通过接收节点的液晶显示单元对微处理器读 出的数据进行显示。即接收节点2的液晶显示单元203对预备帧中可干预字段 的值进行显示并提醒用户记录该值,以便和下一步骤中检测单元将检测到的值 进行对比。例如,接收节点2的液晶显示单元203显示"预备帧接收完毕,请 记录;目的地址为XX.XX.XX.XX;源地址为XX.XX.XX.XX;类型为XX;有 效数据为XX"。此处, 一种较佳的实施方式是,接下来由液晶显示单元203显示一提示菜 单,该菜单包括一 "确定"按钮,当用户点击"确定,,后,接收节点2进入帧 检测状态。当然也可以不经提示和确认令接收节点2直接进入帧检测状态。之 后,液晶显示单元203显示"准备检测MAC帧",同时系统通过软件控制进行 如下操作首先,通过修改接收节点2微处理器202的PLLCON寄存器值使其 工作频率改为64MHz;然后,系统开中断使检测单元能够被触发。步骤S07,发送节点发送MAC帧的步骤与发送预备帧的步骤S05类似,接 收节点2确定进入MAC帧检测状态之后,发送节点1启动发送MAC帧。此处, 由于步骤S07要在步骤S05、 S06完成后进行,而若由于用户构造的MAC帧格 式错误或网络传输故障等原因导致预备帧的接收和显示失败时,需用户重新构 造或发送预备帧,因此,较佳的实施方式是,由实验参与者手动启动发送节点 MAC帧的发送,例如,可通过用户再次按下发送节点1的"启动发送"按键106 启动发送。或者是,在步骤6开始,即由系统通过发送节点1的液晶显示单元 103显示一 MAC帧发送提示菜单,其上包括一控制MAC帧发送的"确定"按 钮,该菜单一直驻留在屏幕上,直至所述MAC帧发送"确定"按钮被点击。启 动发送MAC帧之后的操作与步骤S05中相同,从而构造与预备帧相同的以太网 MAC帧通过发送节点1的以太网接口单元发送至以太网上,并通过显示单元显 示发送成功。步骤S08,接收节点检测并显示接收到的MAC帧,接收节点2在总线电平 出现第一个下降沿(帧起始)时开始检测总线电平,即通过检测单元对总线电 平进行采样,捕捉MAC帧,每采样一次电平计数器1、 2加1,并将计数器2 的值与步骤S06中计算得到的总采样次数N值进行比较。如果相同则跳出采样 子程序停止检测;然后将检测到电平信号进行解码处理,以附图5所示的MAC 帧的格式通过液晶显示单元203显示, 一次MAC帧结构的演示结束。如果不同 且小于N值则将计数器1的值与指定值进行比较,如果不同则继续进行检测;如果相同则跳出中断子程序并开中断以清除定时器累积误差;然后继续对定时 器设定一定时时间Ts,如Ts = 500ns,并判断在定时器溢出前是否有下降沿产生; 若有则读取该电平信号并保存到S3C44B0X的内部临时存储区,然后等待直至 定时器溢出时产生一个中断信号再次进入中断子程序;如果在Ts时间内没有下 降沿产生则在定时器溢出时产生一个中断信号再次进入中断子程序。其中,对检测到的电平信号进行解码处理的该解码过程参照现有以太网传 输技术进行。其中, 一种对总线电平进行采样的检测方法如图6所示。P00开始,首先是 步骤P02进行初始化,将各个计数器和定时器清零;然后判断是否检测到总线 电平下降沿(P04);未检测到则循环检测, 一旦纟全测到下降沿,即启动定时时 间T1(P06),例如,Tl可取210到250 ns;之后进入中断子程序(P08 ),关中 断(PIO),并等待直至定时时间Tl结束(Pll ),再启动定时器定时时间T2(P12), T2 = 500ns;之后读取总线电平的高低状态,即与之相连的I/O管脚状态,并将 读取的对应值写入微处理器202内部RAM中(P14),完成一次采样;然后对计 数器1、计数器2均加1 (P16);之后每T2时间对电平进行一次釆样,具体实 施是,判断定时器是否到时(P18);否则继续等待,到时即读取总线电平的高 低状态,即与之相连的1/0管脚状态,并将读取的对应值写入微处理器202内部 RAM中(P20),完成一次采样;然后对计数器1、计数器2均加1 ( P22 );然 后判断计数器2是否达到N ( P24 ),即是否达到检测完整MAC帧所需的采样次 数,若达到N则结束采样(P50);若未达到,则继续判断计数器1是否达到指 定数值Q ( P26 ),例如Q = 160,未达到Q则回到步骤P18,继续再次采样总线 电平,达到则跳出中断子程序(P28);再启动定时器定时时间T2 (P30),之后 开中断(P32);将计数器1清零(P34);重新对是否检测到总线电平下降沿进 行判断(P36);是则转到步骤P06;未检测到则判断定时器是否到时(P38); 直至定时时间T2结束,进行步骤P40,读取总线电平的高低状态,即与之相连 的I/O管脚状态,并将读取的对应值写入微处理器202内部RAM中;然后计数 器2加1(P42);之后判断计数器2是否达到N(P44),未达到则转到步骤P36; 达到则转到步骤P50,结束。这里设置计数器1的目的是为了消除定时器的累积 误差,而计数器1的清零阈值Q则可根据系统的硬件情况相应选取。 一次演示 之后,系统还可进一步进行由用户参与的比较过程,在液晶显示单元203显示 一提示菜单,该提示菜单包括一 "确定,,按钮和一 "接收错误"按钮,由用户可将接收节点2液晶显示单元203显示的可干预字段与在步骤S06中记录的可 干预字段进行比较,并根据如果正确则点击该"确定"按钮,发送一表示检测 单元检测到正确的MAC帧的反馈信息给演示系统,演示结束;如果用户接收错 误则点击"接收错误",发送一检测到错误MAC帧的信息给演示系统,此时系 统返回步骤S07,由发送节点1重新进行MAC帧的发送。以上具体实施方式
仅为本发明的较佳实施例,其对本发明而言是说明性的, 而非限制性的。本领域的技术人员在不超出本发明精神和范围的情况下,对之 进行变换、修改甚至等效,这些变动均会落入本发明的权利要求保护范围。
权利要求
1、一种以太网MAC帧结构演示方法,其用于一种以太网帧结构演示系统,该系统包括通过以太网通信的发送节点与接收节点,所述发送节点和接收节点分别包括微处理器、含有以太网控制器的通信单元、以太网接口单元、键盘和液晶显示单元,接收节点还包括一检测单元;所述方法包括如下步骤S01,启动检测系统并初始化;S02,并配置发送节点的通信参数;S03,配置接收节点的通信参数;S04,发送节点构造预备帧;S05,发送节点启动发送预备帧;S06,接收节点接收并显示预备帧;S07,发送节点发送MAC帧;S08,接收节点检测并显示接收到的MAC帧;S09,结束。
2、 根据权利要求1所述的以太网MAC帧结构演示方法,其特征在于,所 述步骤S02、 S03中,发送节点和接收节点的通信参数配置分别包括对其进行以 太网物理地址和IP地址进行配置,并将二者的通信单元中以太网控制器的晶振 设为2MHz 。
3、 根据权利要求1所述的以太网MAC帧结构演示方法,其特征在于,所 述步骤S04中,发送节点构造预备帧包括用户通过键盘设置MAC帧的可干预字 段,所述可干预字段包括目的地址字段、源地址字段、类型字段和数据字段。
4、 根据权利要求1所述的以太网MAC帧结构演示方法,其特征在于,所 述步骤S06中接收节点接收并显示接收到的预备帧包括s601, 接收节点的通信单元接收预备帧;s602, 接收节点的通信单元对接收到的预备帧的MAC地址和循环冗余校验 码进行校验;S603,若S02中校验结果为有误则反馈一信息以令发送节点1重新发送预 备帧,同时回到步骤5;S604,若S02中校验结果为无误则接收节点的微处理器读取接收单元太网控制器接收緩沖区中的数据并据以计算捕捉该MAC帧所需的电平采样次数N; S605,通过接收节点的液晶显示单元对微处理器读出的数据进行显示。
5、 根据权利要求4所述的以太网MAC帧结构演示方法,其特征在于,所 述步骤S08接收节点检测并显示接收到的MAC帧包括5801, 开始捕捉MAC帧;5802, 对MAC帧的电平信号进行采样;S803,对采样到的电平信号进行解码恢复MAC帧数据; S804,对MAC帧进行显示。
6、 根据权利要求5所述的以太网MAC帧的检测和显示方法,其特征在于, 所述步骤S801,开始捕捉MAC帧包括当检测到总线电平出现第一个下降沿 时,微处理器产生一个中断信号进入中断子程序开始检测总线电平。
7、 才艮据权利要求5所述的以太网MAC帧的^r测和显示方法,其特征在于, 所述步骤S802中,对MAC帧的电平信号进行采样是根据所述步骤S604中确定 的采样次数N进行,且在采样过程中每隔一特定时间对定时器进行操作以消除 其累积误差。
全文摘要
以太网MAC帧结构演示系统,包括发送节点与接收节点,所述发送节点和接收节点之间通过以太网通信,发送节点和接收节点分别包括微处理器、通信单元、以太网接口单元、键盘和液晶显示单元,所述接收节点还包括一检测单元。一种用于上述系统的MAC帧演示方法,包括如下步骤启动检测系统并初始化;配置发送和接收节点的通信参数;发送节点构造预备帧;发送节点启动发送预备帧;接收节点接收并显示预备帧;发送节点发送MAC帧;接收节点检测并显示接收到的MAC帧。通过本发明的系统和方法,可以对实际传输的MAC帧结构中用户可干预字段进行直接的设定和观察,使用户可以对以太网的传输机制和数据格式有更直观、深入的了解。
文档编号H04L1/16GK101325472SQ20081012994
公开日2008年12月17日 申请日期2008年7月24日 优先权日2008年7月24日
发明者佟为明, 勇 刘, 李凤阁, 林景波, 晶 赵, 蕾 高 申请人:哈尔滨工业大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1