Redes.PuntoAPunto
Class NivelPuntoAPunto

java.lang.Object
  extended byRedes.Nivel
      extended byRedes.PuntoAPunto.NivelPuntoAPunto

public class NivelPuntoAPunto
extends Nivel

Nivel de enlace de las redes PuntoAPunto


Field Summary
(package private)  DireccionPuntoAPunto direccion
          Direccion de las tramas que atenderemos, el resto las ignoraremos
(package private)  Red red
          Red a la que enviaremos los datos y de la que recibiremos
 
Fields inherited from class Redes.Nivel
colaEntrada, colaSalida, equipo, parametros
 
Constructor Summary
NivelPuntoAPunto(Equipo equipo, Red red, DireccionPuntoAPunto direccion)
          Constructor
 
Method Summary
 boolean ComprobarEntrada(Dato dato)
          Comprueba que el dato de entrada sea correcto
 boolean ComprobarSalida(Dato dato)
          Comprueba que el dato de salida sea correcto
private  boolean EsParaMi(DireccionPuntoAPunto destino)
          Comprueba si la trama va dirigia a este nivel o no
 java.lang.String ID()
          Devuelve el identificador del nivel
 int Pendientes()
          Devuelve el numero de tramas pendientes de ser procesadas
 void Procesar(int instante)
          Procesa los paquetes programados para un instante
private  void ProcesarEntrada(int instante)
          Envia las tramas de entrada que toquen, al nivel superior (p. ej: nivelIPv4)
private  void ProcesarSalida(int instante)
          Envia las tramas de salida que toquen, a la red
 
Methods inherited from class Redes.Nivel
getID, getNivelInferior, getNivelSuperior, getRetardo, ProgramarEntrada, ProgramarSalida, setNivelInferior, setNivelSuperior, SimularError, SimularError
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

red

Red red
Red a la que enviaremos los datos y de la que recibiremos


direccion

DireccionPuntoAPunto direccion
Direccion de las tramas que atenderemos, el resto las ignoraremos

Constructor Detail

NivelPuntoAPunto

public NivelPuntoAPunto(Equipo equipo,
                        Red red,
                        DireccionPuntoAPunto direccion)
Constructor

Parameters:
equipo - Equipo propietario de la interfaz que posee este nivel
red - Red que hay por debajo del nivel
direccion - Direccion asociada a este nivel
Throws:
java.lang.IllegalArgumentException - si alguno de los parametros no es valido
Method Detail

Procesar

public void Procesar(int instante)
Procesa los paquetes programados para un instante

Specified by:
Procesar in class Nivel
Parameters:
instante - Instante de tiempo

Pendientes

public int Pendientes()
Devuelve el numero de tramas pendientes de ser procesadas

Specified by:
Pendientes in class Nivel
Returns:
Numero de tramas pendientes de ser procesadas

ProcesarSalida

private void ProcesarSalida(int instante)
Envia las tramas de salida que toquen, a la red

Parameters:
instante - Instante de tiempo

ProcesarEntrada

private void ProcesarEntrada(int instante)
Envia las tramas de entrada que toquen, al nivel superior (p. ej: nivelIPv4)

Parameters:
instante - Instante de tiempo

EsParaMi

private boolean EsParaMi(DireccionPuntoAPunto destino)
Comprueba si la trama va dirigia a este nivel o no

Parameters:
destino - Direccion de destino de la trama
Returns:
Cierto si la trama va dirigida a este nivel

ID

public java.lang.String ID()
Devuelve el identificador del nivel

Specified by:
ID in class Nivel
Returns:
Identificador del nivel

ComprobarEntrada

public boolean ComprobarEntrada(Dato dato)
Comprueba que el dato de entrada sea correcto

Specified by:
ComprobarEntrada in class Nivel
Parameters:
dato - Dato a comprobar
Returns:
Cierto si el dato es correcto, falso en otro caso

ComprobarSalida

public boolean ComprobarSalida(Dato dato)
Comprueba que el dato de salida sea correcto

Specified by:
ComprobarSalida in class Nivel
Parameters:
dato - Dato a comprobar
Returns:
Cierto, si el dato es correcto, falso, en otro caso