Host¶
- class Host(name, signal_time)¶
Representa una PC (Host).
- Parameters
name (str) – Nombre de la PC.
signal_time (int) – Tiempo mínimo que debe estar un bit en transmisión.
- data¶
Datos que debe enviar la PC.
- Type
List[int]
- property cable_head¶
Extremo del cable conectado a la PC
- Type
- check_subnet(subnet_ip)¶
Checks if the host belogns to a given subnet
- Parameters
subnet_ip (IP) – Subnet IP
- Returns
True if the host belongs to the subnet
- Return type
bool
- connect(cable_head, port_name)¶
Conecta un cable dado a un puerto determinado.
- Parameters
cable_head (DuplexCableHead) – Uno de los extremos del cable a conectar.
port_name (str) – Nombre del puerto en el que será conectado el cable.
- create_send_receiver()¶
Crea un
SendReceiver.- Returns
SendReceivercreado.- Return type
- disconnect(port_name)¶
Desconecta un puerto de un dispositivo.
- Parameters
port_name (str) – Nombre del puerto a desconectar.
- property is_active¶
Estado del dispositivo.
- Type
bool
- property is_connected¶
Estado de conección del host
- Type
bool
- receive()¶
Lee del cable al que está conectado.
Si la PC se encuentra enviando infromación entonces comprueba que no haya colisión.
En caso contrario almacena la lectura del cable en varios ocaciones entre un
SIGNAL_TIMEy el siguiente. Al concluir elSIGNAL_TIMEse guarda como lectura final la moda de los datos almacenados.
- received_bit(bit)¶
Se ejecuta cada vez que el host recibe un bit. Procesa la información en el buffer para indentificar frames cuyo destino sea el host en cuestión.
- Parameters
bit (int) – Bit recibido.
- save_log(path='')¶
Guarda los logs del dispositivo en una ruta dada.
- Parameters
path (str) – Ruta donde se guardarán los logs. (Por defecto en la raíz)
- send(data, package_size=None)¶
Agrega nuevos datos para ser enviados a la lista de datos.
- Parameters
data (List[List[int]]) – Datos a ser enviados.
- send_frame(mac, data)¶
Ordena a un host a enviar un frame determinado a una dirección mac determinada.
- Parameters
host_name (str) – Nombre del host que envía la información.
mac (List[int]) – Mac destino.
data (List[int]) – Frame a enviar.
- property str_mac¶
Dirección mac del host.
- Type
str
- update(time)¶
Función que se ejecuta en el ciclo de la simulación por cada dispositivo.
- Parameters
time (int) – Timepo de ejecución de la simulación.
- random() → x in the interval [0, 1).¶