Linux es conocido por sus excelentes capacidades de administración de red. ¿Por qué es Linux tan eficiente? Vamos a empezar con la gestión de los dispositivos de red. ¿Por qué debería administrarse Linux por separado para dispositivos de red? Esto es porque Los dispositivos de red están involucrados en muchos lugares en la pila de protocolos. Tan pequeño como la configuración de la dirección IP. Hasta la actualización de enrutamiento IP. La gestión eficiente de dispositivos de red es indispensable. ¡La gestión separada de los dispositivos de red puede aumentar la eficiencia! Cada dispositivo de red, en Linux, corresponderá a una estructura de datos, net_device. Hablando en Linux 2.6.21 de esta estructura, net_device define como sigue: struct net_device {//el nombre del dispositivo, tal como un común y " eth0 y " et char nombre [IFNAMSIZ]; //inicio de memoria compartida, dirección final sin firmar mem_end larga; /* mem compartido termina * /mem_start largo sin signo; /* mem compartido empezar * ///O dirección de E /base del dispositivo de red sin firmar base_addr larga; dirección /* dispositivo de E /S * ///se interrumpir número asignado unsigned int IRQ; /* número de dispositivo IRQ * ///if_port unsigned char que un puerto que se utiliza en el dispositivo multipuerto; /* seleccionable AUI, TP, .. * ///canales DMA asignado al dispositivo sin signo Char dma; /* canal DMA * ///estado del dispositivo estado largo sin signo; //un próximo net_devicestruct net_device * siguiente; //función de inicialización. //obtener el puntero de función de un estado de la interfaz; int (* init) (struct net_device * dev); struct net_device * next_sched;. /* índice de interfaz identificador de dispositivo único * ///dispositivo correspondiente al número de secuencia en el ifindex kernel int; int iflink net_device_stats struct * (* get_stats) (struct net_device * dev); struct iw_statistics * (* get_wireless_stats) (struct net_device * dev); struct iw_handler_def * wireless_handlers; struct ethtool_ops * ethtool_ops; //estado de transmisión. Compruebe si se bloquea la transmisión trans_start largo sin signo; /* Tiempo (en unidades de tiempo) de la última Tx * ///aprovechar al máximo el uso del tiempo largo sin signo last_rx; /* Hora de la última Banderas * ///de interfaz Rx banderas cortos sin signo; /* banderas de interfaz (al estilo de BSD) * /gflags cortos sin signo; priv_flags cortos sin signo; /* 'banderas' como pero invisible para el espacio de usuario * /unsigned short unused_alignment_fixer;. /* Porque necesitamos priv_flags, * y que queremos ser 32- . bits alineados * /MTU sin firmar; /* interfaz de valor MTU * tipo de corta /sin signo; /* tipo de interfaz de hardware * /unsigned short hard_header_len; longitud /* HDR de hardware * /void * priv; /* puntero a los datos * /struct privada net_device * maestro; /* HW bcast añadir * /unsigned char dev_addr [; .. /* Puntero al dispositivo de un grupo, * la cual este dispositivo es miembro del //* * * dirección de interfaz de información /difusión unsigned char [MAX_ADDR_LEN] dominar ,null,null,0],MAX_ADDR_LEN]; /* addr_len unsigned char * dirección de HW /; * /dirección hardware longitud * /struct dev_mc_list * mc_list; /* Las direcciones MAC de multidifusión * /int mc_count; /* Número de instalado mcasts * /int promiscuidad; int allmulti; int watchdog_timeo; struct timer_list watchdog_timer; /* Protocolo específico punteros * /
void * atalk_ptr; /* enlace AppleTalk * /void * ip_ptr; /* IPv4 datos específicos * /
void * dn_ptr; /* DECnet de datos * /void * ip6_ptr específicos; /* IPv6 datos específicos * /void * ec_ptr; /* Econet datos específicos * /void * ax25_ptr; /* AX.25 datos específicos * /struct list_head poll_list; /* Enlace para sondear la cuota lista * /int; int peso; struct qdisc * qdisc; struct qdisc * qdisc_sleeping; struct qdisc * qdisc_ingress; struct list_head qdisc_list; unsigned long tx_queue_len; /* Max fotogramas por cola de mascotas * //* camino de ingreso sincronizador * /spinlock_t ingress_lock; /* hard_start_xmit sincronizador * /xmit_lock spinlock_t; /* cpu id del procesador ingresó a hard_start_xmit o -1, si nadie entró allí * /int xmit_lock_owner;. /* dispositivo de bloqueo de cola * /spinlock_t queue_lock; /* número de referencias a este dispositivo * /refcnt atomic_t; /* retraso registro /anular el registro * /struct list_head todo_list; /* nombre del dispositivo Cadena de hash * /struct hlist_node name_hlist; /* cadena de hash de índice de dispositivo * /struct hlist_node index_hlist;
O a partir del proceso de compilación del enlace para generar vmlinux, se compone de un grupo de ar
La IP pública, la dirección pública, es asignada por InterNIC y consta de una ID de red basada en c
El shell de Linux tiene su propio conjunto de sentencias de control de flujo, incluidas sentencias
soltero, ingrese el modo de usuario único, luego cambie el modo de inicio a id: 3: initdefault: en /
Comprensión de los diversos parámetros de dirección involucrados en los núcleos uBoot y Linux
Vm.swappiness desactiva la mejora de rendimiento de la partición de intercambio
Linux genera una contraseña aleatoria /modificar contraseña
La configuración del lector de noticias en Linux
La transmisión de datos en la capa de enlace de la pila de protocolos Linux
Comando de operación zip de Linux
Cómo mostrar el cuadro de diálogo
Linux cómo ver el tamaño del sector
Cómo eliminar el sonido de alarma de Linux
Programación de socket en Linux
En el proceso de aprender el controlador de Linux, encontré una macro llamada contenedor
La comprensión profunda del archivo de arranque misterioso de Win XP NTLDR
Win10 encabeza el método de aplicación en el menú de inicio
Le enseñamos a entender el proyecto de arranque de Windows 7
¿Cuál es la tasa de uso de la CPU, la tasa de uso de la CPU es demasiado alta?
¿Qué pasa si el servicio de instalación de Windows se ha ido?
Cómo hacer una doble pérdida del punto de restauración del sistema
Win7 reemplaza a Windows XP se convertirá en la corriente principal del sistema operativo
La tienda de aplicaciones Win8.1 no puede abrir cómo hacerlo
¿Cómo utiliza Win8 la potente aplicación de fotos en la pantalla de inicio?
Cómo hacer que la luz del disco duro después de encender el sistema win8