La risposta di Olin colpisce praticamente tutti i motivi per cui ho usato un web server incorporato. Lavoro nello sviluppo di controlli industriali e quasi tutti i prodotti che produciamo hanno un web server incorporato.
La maggior parte dei clienti avrà già tutte le proprie apparecchiature sulla propria rete per vari motivi. Pertanto è altamente auspicabile poterlo configurare e / o controllare tramite un browser Web anziché installare decine di programmi personalizzati.
Anche se usano un protocollo industriale come PROFINET , il livello fisico è uguale al resto della loro Ethernet e quindi hanno bisogno di un solo software (un supervisore PROFINET IO) per controllare dozzine di macchine. Nella mia esperienza, questa configurazione è abbastanza standard in molti settori.
Per quanto riguarda le risorse (potenza di elaborazione, RAM, ROM), una volta ridotto all'essenziale, è necessario un hardware incredibilmente minimale per servire con successo una pagina web. webACE Penso che detenga il record per il più piccolo web server. È un peccato non poter più visitare la pagina che ha ospitato.
Il software
Alcune statistiche di codice per il software originale. Inizialmente avevo dimenticato di includere "eeprom" di 64 byte su chip nei totali, che ha portato alla cifra di 1010 byte quotata su TBTF.
Startup 36 bytes
Serial 179
SLIP 91
IP 144
ICMP 47
TCP 188
Checksum 132
Application 257
Total 1074 bytes
Comprising:
454 instructions
912 instruction bytes
162 data bytes
2.01 bytes/instruction average
Per quanto riguarda le altre competenze necessarie, non è davvero necessaria una profonda conoscenza della rete. Non ho mai scritto uno stack per nessun protocollo perché ci sono molte librerie disponibili per essere collegate e utilizzate per ogni architettura immaginabile. Conoscere alcuni HTML di base non elaborati è utile per progettare e scrivere la pagina attuale.
A parte il fatto che essere in grado di leggere e comprendere un registro di Wireshark o Fiddler (analizzatori di rete) sarà probabilmente l'abilità più utile in quanto aiuterà notevolmente nel debug di eventuali problemi. Una piccola lettura sulla struttura del pacchetto di qualunque protocollo tu stia utilizzando (TCP, IP, HTTP, UDP, PROFINET, ecc.) Ti dirà dove cercare nel pacchetto tutte le informazioni di cui hai bisogno. Puoi persino accendere uno di quegli analizzatori in questo momento e guardare il traffico che va e viene sul tuo computer per averne un'idea.