Referencia del Archivo ethernet.h

Definicion de la capa Ethernet.
. Más...

Gráfico de los archivos que directa o indirectamente incluyen a este archivo:


Definiciones

#define ETH_TYPE_ARP_V   0x0806
#define ETH_TYPE_ARP_H_V   0x08
#define ETH_TYPE_ARP_L_V   0x06
#define ETH_TYPE_IP_V   0x0800
#define ETH_TYPE_IP_H_V   0x08
#define ETH_TYPE_IP_L_V   0x00
#define ETH_HEADER_LEN   14
#define ETH_DST_MAC_P   0
#define ETH_SRC_MAC_P   6
#define ETH_TYPE_H_P   12
#define ETH_TYPE_L_P   13

Funciones

WORD software_checksum (BYTE *rxtx_buffer, WORD len, DWORD sum)
 Implementa el calculo de checksum
En realidad no es estrictamente necesario que se encuentre aqui y no en un archivo auxiliar.
void eth_generate_header (BYTE *rxtx_buffer, WORD_BYTES type, BYTE *dest_mac)
 Genera el encabezado ethernet
Rellena MAC de destino y origen y campo Length/Type.

Descripción detallada

Definicion de la capa Ethernet.
.

No encapsula al ENC ya que para enviar/recibir cualquier paquete sobre ethernet, se tiene que hacer referencia directa a ENC28J60_send_packet
TODO: agregar funcion eth_send_packet


Documentación de las definiciones

#define ETH_DST_MAC_P   0

#define ETH_HEADER_LEN   14

#define ETH_SRC_MAC_P   6

#define ETH_TYPE_ARP_H_V   0x08

#define ETH_TYPE_ARP_L_V   0x06

#define ETH_TYPE_ARP_V   0x0806

#define ETH_TYPE_H_P   12

#define ETH_TYPE_IP_H_V   0x08

#define ETH_TYPE_IP_L_V   0x00

#define ETH_TYPE_IP_V   0x0800

#define ETH_TYPE_L_P   13


Documentación de las funciones

void eth_generate_header ( BYTE rxtx_buffer,
WORD_BYTES  type,
BYTE dest_mac 
)

Genera el encabezado ethernet
Rellena MAC de destino y origen y campo Length/Type.

Parámetros:
rxtx_buffer el buffer donde esta el paquete al que se le colocara el header.
type tipo de paquete Ethernet
dest_mac MAC de destino

WORD software_checksum ( BYTE rxtx_buffer,
WORD  len,
DWORD  sum 
)

Implementa el calculo de checksum
En realidad no es estrictamente necesario que se encuentre aqui y no en un archivo auxiliar.

Se calcula como el complemento a 1 de la suma de los complementos a 1 de todas las palabras de 16 bits de la cabecera.

Parámetros:
rxtx_buffer el buffer donde esta el paquete a realizar checksum.
len largo de campos a tener en cuenta
sum posicion donde comienzan datos a tener en cuenta


Generado el Wed Jul 2 09:20:50 2008 para TCP/IP por  doxygen 1.5.6