10.07.2015 Views

Gestione dei Certificati X.509 Firma Digitale Firma ... - Clizio.com

Gestione dei Certificati X.509 Firma Digitale Firma ... - Clizio.com

Gestione dei Certificati X.509 Firma Digitale Firma ... - Clizio.com

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

S3Log<strong>Firma</strong> <strong>Digitale</strong> di StreamLe implementazioni del servizio ‘syslog’ disponibili sul mercato e integrabili con S3Log presentano leseguenti caratteristiche:• ricevono i dati dai sensori di rete mediante <strong>com</strong>unicazioni UDP (nel cui ambito i pacchetti possonoessere persi in particolari condizioni di carico della rete), o TCP (in cui i pacchetti sono raccolti conun maggior grado di affidabilità);• salvano i dati raccolti su file locali del sistema (ad esempio /var/log/messages);• possono passare in piping i dati (o sottoinsiemi di essi) a processi di plugin (quale ad esempioS3LogCollector) per successive elaborazioni.Il meccanismo di piping non è particolarmente robusto in nessuna delle piattaforme di interesse, inquanto non soggetto ad handshaking, e può causare in condizioni di carico elevato la perdita parzialedi dati scambiati sulla pipe.Per tale motivo S3LogCollector effettua la lettura dal pipe di input in modalità raw a blocchi, e con ilsupporto di un buffer di memoria circolare sufficientemente ampio, dando priorità alla lettura <strong>dei</strong> datidalla pipe al fine di eliminare (o almeno ridurre) la perdita di dati in condizioni di carico elevato.Per garantire un throughput adeguato, eliminando (o almento riducendo) la perdita di dati, il processoS3LogCollector è implementato <strong>com</strong>e una catena di tre thread in cascata, così configurata:1. main thread di cattura <strong>dei</strong> dati dalla pipe di input (stdin), che legge i dati dalla pipe e liinserisce su una coda di memoria sincronizzata;2. thread di ricezione (RX-thread), che acquisice i dati catturati dal main thread sulla coda dimemoria sincronizzata e li inserisce in un database embedded SQLite (passagio da una memoria abreve termine e volatile ad una memoria a lungo termine);3. thread di trasmissione (TX-thread), che acquisisce in modo sincronizzato blocchi di dati daldatabase embedded SQLite, li trasmette al processo S3LogLogger, e li cancella dal databaseembedded.La figura seguente illustra l’architettura interna del processo e <strong>dei</strong> relativi thread.main threadS3LogCollector pluginsyslog- pipe input- sync.enqueuesynchromemoryqueueMemoriaa brevetermineRX thread- sync.dequeue- sync.insert DBSQLiteDataBaseMemoriaa lungotermineTX thread- sync.select DB- network send- sync.delete DBArchitettura di S3LogCollector8

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!