WIZnet2012

W7100A单片机的MACRAW模式及简单的ARP应用

0
阅读(1396)

这篇文档将会介绍如何使用W7100A中实现MACRAWMACRAW是一个低于IP层的以太网MAC通信,它能够灵活使用目的主机的上层协议。W7100A是全硬件的TCP/IP协议栈芯片,它不仅包括OSI的4层,还包括4层之外的应用层。因此,W7100A能够简单且稳定地应用于嵌入式互联网中。

 

在第一章简单介绍下MACRAW模式,第二章介绍MACRAW SOCKET,第三章则是ARP(地址解析协议)。希望对大家有所帮助。

 

 

1. 简介

MACRAW是一个低于IP层的以太网MAC通信,它能够灵活使用目的主机的上层协议。图1显示了通过协议栈的数据封装形式。W7100A是全硬件的TCP/IP协议栈芯片,它不仅包括OSI4层,还包括4层之外的应用层。因此,W7100A能够简单且稳定地应用于嵌入式互联网中。如果在链路层需要进行数据处理,可以使用MACRAW模式下的软件TCP/IP协议来完成。

MACRAW模式支持链路层的地址解析协议(ARP)。在W7100A中,ARP请求和回复都已经通过硬件逻辑进行了处理。尽管如此,它仍然可以在MACRAW模式下打开SOCKET0 (0 socket)(MACRAW模式下只能使用SOCKET0)。利用该SOCKET0,用户便能够处理软件TCP/IP协议栈指定的协议,例如ARP等。本文主要介绍W7100A单片机的MACRAW模式以及简单的

ARP应用。

 

<图1>通过协议栈的数据封装形式

 

2. MACRAW SOCKET

MACRAW模式下的通信只支持SOCKET0,但是此时SOCKET1~7也能同时工作于硬件

TCP/IP协议栈下。SOCKET0作为NIC(网络接口控制器)使用,这样便可实现软件TCP/IP协议栈。这就是W7100A单片机的混合TCP/IP协议栈:支持硬件TCP/IP和软件TCP/IP协议栈。对于普通的数据传输,软件TCP/IP能够通过MACRAW模式进行处理。MACRAW模式下的SOCKET0能够处理除了SOCKET1~7需要使用的协议之外的其它所有协议。由于MACRAW是处理纯以太网数据包的通信方法,这就要求工程师具备软件TCP/IP协议栈的知识背景。

2显示了MACRAW的数据格式。MACRAW数据由两个字节的PACKET-INF0以及数据包组成。PACKET-INFO包含数据包的字节大小,而数据包又包括6字节的目的MAC地址、6字节的源MAC地址、2字节的类型(Type)以及46~1500字节的有效载荷(payload)。其中有效载荷

(payload)具有和ARP或者IP相似的互联网协议。具体的详细信息,请参考官网。

 

<图2>MACRAW据格式

 

MACRAW SOCKETARP(地址解析协议)后续部分请参考官方博客http://blog.iwiznet.cn/?p=1244

更多有关W7100A的文章请点击:

如何用W7100A实现DNS客户端(一)

如何使用W7100A实现Telnet服务器(一)

如何用W7100A实现DDNS客户端(一)

如何用W7100A实现HTTP客户端(一)

想了解更多,请登录我们的网站:http://www.iwiznet.cn/

官方博客:blog.iwiznet.cn
公共邮箱:wiznetbj@wiznettechnology.com