public void ReportarMensaje(MensajeSwitchTableSOA mensaje)
        {

            if (this.InvokeRequired)
            {
                this.BeginInvoke(new SetLabelTextDelegate(ReportarMensaje),
                                                            new object[] { mensaje });

                return;
            }
            _mensajes.Add(mensaje);

            LlenarGrilla(_mensajes);

        }
        private void OnCambioDeTabla(object sender, TiempoEventArgs e)
        {
            SwitchTableSOA tablaSOA = new SwitchTableSOA();
            foreach (KeyValuePair<string, PuertoEthernetLogicoBase> par in _switch.SwitchTable.TablaDeFiltro)
            {
                AsociacionPuertoMACAddressSOA aso = new AsociacionPuertoMACAddressSOA();
                aso.Puerto = new PuertoBaseSOA(par.Value.Id, par.Value.Nombre,par.Value.Habilitado);
                aso.DescPuerto = par.Value.Nombre;
                aso.MacAddress = par.Key;
                tablaSOA.Asociaciones.Add(aso);
            }
            MensajeSwitchTableSOA mensajeTablaSwitch = new MensajeSwitchTableSOA(_switch.Id, e.HoraDeRecepcion);
            mensajeTablaSwitch.SwiTable = tablaSOA;
            foreach (IVisualizacion vist in Vistas)
            {
                vist.EnviarCambioDeTablaDeSwitch(mensajeTablaSwitch);

            }

        }
 internal void Inicializar(MensajeSwitchTableSOA mensa)
 {
     _asociacionesBS.DataSource = mensa.SwiTable.Asociaciones;
     _hora.Text = mensa.HoraRecepcion.ToString();
 }
       internal void EnviarCambioDeTablaDeSwitch(MensajeSwitchTableSOA mensajeTablaSwitch)
       {

           (_formsSniffers[mensajeTablaSwitch.Id] as FormaSnifferSwitch).ReportarMensaje(mensajeTablaSwitch);
       }