Pages: 1 2 [3] 4 5 ... 10   Go Down
Author Topic: Articolo su Ethernet shield client  (Read 6669 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
God Member
*****
Karma: 5
Posts: 873
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Nel caso del W5100 non esiste nessun bug che obbliga a resettarlo, basta prendere una serie di provvedimenti, molto semplici, a livello del software di controllo per ovviare ai problemi, ovvero basterebbe integrare nelle librerie della ETH i vari workaround per ovviare completamente ai problemi di apparente blocco senza dover resettare nulla.

Non esite il baco hardware, pero' esiste il workaround: mega rotfl
Logged

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9185
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Non esite il baco hardware, pero' esiste il workaround: mega rotfl

Non ho detto questo, ho detto che non c'è un bug hardware che obbliga al reset, è un pochino diverso dal dire che non ci sono bug hardware in assoluto.
Logged

Milan, Italy
Offline Offline
Sr. Member
****
Karma: 0
Posts: 329
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

In giro ci sono diverse librerie per webserver, penso che qualcuna non sia fatta proprio benissimo per cui ogni tanto si blocca.
La mia applicazione che va da otto mesi è un server telnet, scritto tutto da me.
Purtroppo per scrivere una libreria o sketch decente che usi i socket bisogna anche prevedere errori di protocollo, e non fare mai funzioni che si bloccano all'infinito in attesa di dati dal client, che magari ha avuto un problema o non è più connesso a causa di un interruzione nella rete, e non risponderà mai più.
All'arducamp Banzi ci ha spiegato che hanno dovuto aggirare molti bug hardware e software della wiznet, ma li hanno risolti anche nelle librerie ufficiali che implementano le comunicazioni ip nell'ide.
Io per le provare il webserver ho usato la libreria WebserverSD (per scaricare il codice bisogna avere un utenza google) e funziona bene.
Per adesso la mia esperienza con la shield ufficiale e il wiznet è positiva.
Quando scrivete del codice per server socket su arduino, soprattutto webserver dovete sempre tener presente che la wiznet implementa tramite hardware quattro socket, tutte le implementazioni webserver che ho visto in giro non sono multitasking, per cui gestiscono un solo client alla volta, scendendo ad un socket.
Penso che il webserver arduino possa gestire correttamente l'accesso simultaneo di tre o quattro browser, tutto dipende da quante risorse (immagini, librerie javascript, menate varie) sono presenti nella pagina e devono essere serviti insieme alla stessa dall'arduino.
Non è assolutamente possibile esporre l'arduino direttamente su internet, le risorse non bastano, forse si può fare con un reverse proxy.
« Last Edit: March 02, 2012, 05:28:35 am by bigjohnson » Logged


Bergamo
Offline Offline
God Member
*****
Karma: 1
Posts: 663
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Non è assolutamente possibile esporre l'arduino direttamente su internet, le risorse non bastano

cosa cambia concettualmente esporlo su internet o in LAN?
Logged

lucadentella.it

Offline Offline
God Member
*****
Karma: 5
Posts: 873
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Non è assolutamente possibile esporre l'arduino direttamente su internet, le risorse non bastano, forse si può fare con un reverse proxy.

Per questo motivo avevo consigliato di integrare arduino con la fonera, anche perche' sono due oggetti che consumano poca energie e uno compensa le lacune dell'altro.

Esperienza positiva wiz5100 ? urca, ma non la usi assieme alla SD, o si ?
Logged

Milan, Italy
Offline Offline
Sr. Member
****
Karma: 0
Posts: 329
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
cosa cambia concettualmente esporlo su internet o in LAN?
Che nella lan dovresti avere il controllo dei client che la utilizzano, ovviamente si parla di lan domestica, non di quella della fiera dell'automobile...
Se la esponi su internet ti possono arrivare da 1 a 1.000.000 di client simultanei, e magari anche di più, e il povero arduino non ha le risorse per gestirne più di uno.
Le prove per controllare arduino con il webserver interno le ho fatte pensando a piccole utenze, tipo alzo e abbasso il telo del proiettore, magari accendo qualche luce, più che altro per divertimento e per capire come usare json e javascript per fare pagine dinamiche che cambino insieme ai pin di arduino e che li possano controllare.
Se si vuole fare della domotica decente arduino può essere configurato come server ma deve rispondere ad un solo client che gira su un pc e che coordina tutte le utenze e serve le pagine web di controllo.
Con questa configurazione a stella si possono gestire anche centinaia di arduini e anche molti utenti simultanei.

Quote
Esperienza positiva wiz5100 ? urca, ma non la usi assieme alla SD, o si?
Si l'ho usata anche col la sd con la libreria WebserverSD, ho fatto delle prove e va, comunque non l'ho messa in produzione l'ho solo provata per qualche ora.
« Last Edit: March 02, 2012, 05:50:11 am by bigjohnson » Logged


Offline Offline
God Member
*****
Karma: 5
Posts: 873
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Non è assolutamente possibile esporre l'arduino direttamente su internet, le risorse non bastano

cosa cambia concettualmente esporlo su internet o in LAN?

Molto piu' sul semplice, dal punto di vista della sicurezza mi verrebbe una risposta tipo "cambiano un bel po' di cose". Ssh non la posso avere dentro arduino, ma dentro la fonera ci sta da dio.
Logged

Offline Offline
God Member
*****
Karma: 5
Posts: 873
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Se si vuole fare della domotica decente

Se posso fare un po' di pubblicita' a Vaseo, su questo forum ha raccontato della sua particolare implementazione di rete domotica con arduino. E' stra interessante il suo lavoro.
Logged

Bergamo
Offline Offline
God Member
*****
Karma: 1
Posts: 663
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
cosa cambia concettualmente esporlo su internet o in LAN?
Se la esponi su internet ti possono arrivare da 1 a 1.000.000 di client simultanei, e magari anche di più, e il povero arduino non ha le risorse per gestirne più di uno.

ok quindi non è il fatto di esporlo su internet il problema ma il fatto che non gestisce più connessioni simultanee.
Logged

lucadentella.it

Bergamo
Offline Offline
God Member
*****
Karma: 1
Posts: 663
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Molto piu' sul semplice, dal punto di vista della sicurezza mi verrebbe una risposta tipo "cambiano un bel po' di cose". Ssh non la posso avere dentro arduino, ma dentro la fonera ci sta da dio.

ma sicurezza di Arduino? Non capisco bene... io tranquillamente espongo arduino su Internet nattando la porta su cui è in ascolto e non vedo possibilità che mi "violino" la schedina smiley-wink
Logged

lucadentella.it

Milan, Italy
Offline Offline
Sr. Member
****
Karma: 0
Posts: 329
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Ssh non la posso avere dentro arduino, ma dentro la fonera ci sta da dio.
Io purtroppo la fonerà non ce l'ho e mi sono arrangiato con pc e linux su CF.

Quote
ma sicurezza di Arduino? Non capisco bene... io tranquillamente espongo arduino su Internet nattando la porta su cui è in ascolto e non vedo possibilità che mi "violino" la schedina
Da quel punto di vista arduino è sicurissimo, al massimo si blocca, dipende da cosa si vuole fare, se lo natti su una porta non standard e lo sai solo tu è abbastanza sicuro, al massimo non risponde se ha troppe richieste, ma quando il picco termina ritorna reperibile.
Se lo usi invece per un servizio condiviso pubblicato su internet che attira molti utenti, non ha abbastanza risorse per gestirli tutti, se poi leggi i dati dalla sd, che non è proprio un fulmine come velocità, sicuramente ci saranno dei problemi.
« Last Edit: March 02, 2012, 06:14:35 am by bigjohnson » Logged


Offline Offline
God Member
*****
Karma: 5
Posts: 873
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Una porta che sai solo tu ? Basta una analisi statistica speculativa per scovarla, e a quel punto per difenderti per bene fai IP masquerading giusto per rimescolare meglio le carte, tanto linux e i bsd ormai te lo fanno gratis e oserei dire che le distro, anche quelli suoi router, lo propongono di default. Lucadentella credo infatti che intendesse NAT dinamico, mentre io penso sempre allo statico quando penso alla parola NAT.

IP masquerading ? Si, su questo direi che concordo: e' relativamente abbastanza sicuro anche secondo livelli di media paranoia.

Approved  smiley-mr-green
« Last Edit: March 02, 2012, 06:37:24 am by legacy » Logged

Offline Offline
God Member
*****
Karma: 5
Posts: 873
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Se lo usi invece per un servizio condiviso pubblicato su internet che attira molti utenti, non ha abbastanza risorse per gestirli tutti

ti posso fare un attacco D.o.S. ?
(ti saturo le risorse e tu cadi annullando i servizi che offri)


Ricordati di non darmi mai il tuo IP pubblico  smiley-mr-green
Logged

Milan, Italy
Offline Offline
Sr. Member
****
Karma: 0
Posts: 329
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
ti posso fare un attacco D.o.S.?
Se cento utenti tentano di accedere simultaneamente al tuo sito e si verifica un D.o.S non è propriamente un attacco, è che hai un sistema inadeguato all'utenza.
arduino è un microprocessore ad 8 bit, le shield ethernet (sia wiz con stack ip hardware che microchip senza) è un prodotto eccezionale per imparare e anche realizzare sistemi embedded a basso costo, ma per farci un webserver pubblico no.

Quote
Basta una analisi statistica speculativa per scovarla
Il più sgrauso dei firewall attualmente in giro se ne accorge subito, anche se la fai casuale, e se ben configurato ti blocca l'ip in un attimo.

OT:
Mi hanno appena informato che è arrivato il modulo poe, c'è qualcuno che ha già fatto esperimenti?
Io ho messo le mani su cinque alimentatori poe della HP, sono rebrand cinese, penso ex telefoni voip a 48v.
Mi sa che sono un po ignorantelli, nel senso che non sono in grado di negoziare la potenza tramite il protocollo poe, ho controllato il jack ed escono 48 / 49 volt.
Esploderà tutto?
« Last Edit: March 02, 2012, 08:32:31 am by bigjohnson » Logged


Cagliari, Italy
Offline Offline
Tesla Member
***
Karma: 103
Posts: 6588
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Esploderà tutto?
Attenderemo notizie dal TG delle 20.  smiley-eek
Logged

Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

Pages: 1 2 [3] 4 5 ... 10   Go Up
Jump to: