Il Transport Protocol Experts Group (TPEG) nacque come gruppo di esperti accomunati dallo scopo di fornire informazioni di traffico e per il viaggio molto più accurate e precise di quanto fosse stato fatto in precedenza. Nel tempo l’acronimo TPEG è diventato sinonimo della suite di protocolli che il gruppo ha creato e sta ancora perfezionando e mantenendo. I protocolli TPEG possono essere trasportati da diversi mezzi di comunicazione come la radio digitale o la telefonia mobile. Tra le informazioni che possono essere trasmesse con il TPEG possiamo trovare condizioni stradali, meteo, prezzi dei carburanti, prezzi e disponibilità di parcheggi, orari e ritardi dei trasporti pubblici.
Nota: da qui in Avanti il termine “TPEG” si riferirà esclusivamente alla suite di protocolli.
Storia Il Transport Protocol Expert Group nacque nel 1997 all’interno dell'Unione europea di radiodiffusione. Il lavoro continuò sotto gli auspici di questa organizzazione fino al 2007 quando il gruppo si fuse con un gruppo che sviluppava il Traffic Message Channel (TMC), ospitato all’interno di ERTICO – ITS EUROPE, e con il progetto Mobile.Infohttp://www.mobile-info.org . dove le prime versioni dei protocolli TPEG furono testate in condizioni reali con vari sistemi di navigazione da produttori auto e loro fornitori. Oggi il lavoro viene sviluppato e manutenuto dall’organizzazione Traveller Information Services Association (TISA)http://www.tisa.org., che anche cura gli standard Traffic Message Channel (TMC).
All’inizio l’idea principale su cui progettare il TPEG era di sviluppare applicazioni che avrebbero potuto estendere i servizi informativi di traffico ben oltre le tecnologie allora disponibili, in primis RDS-TMC ed alcuni protocolli proprietari. Inoltre la suite TPEG avrebbe dovuto includere servizi informativi multimodali per facilitare il viaggiatore nell’uso di modi diversi di trasporto, ad esempio auto e servizi pubblici.
Il primo protocollo sviluppato fu il Road Traffic Message (RTM) a cui si aggiunse presto il Public Transport Information (PTI). Entrambe condividevano un modo nativo del TPEG per la localizzazione geografica.
L’applicazione RTM era stata progettata con l’idea di andar bene per innumerevoli situazioni diverse ovvero secondo il paradigma “one size fits all”. Questa prima generazione di applicazioni TPEG (TPEG generazione 1 o TPEG1) forniva sempre un protocollo binario e solo in alcuni casi un protocollo XML separato. Le prime implementazioni mostrarono subito che la struttura RTM era troppo complessa per diventare una evoluzione efficiente e quindi rimpiazzare il precedente protocollo TMC. Di conseguenza fu deciso di fare una revisione completa sia dello stile del modello informativo che dell’approccio progettuale muovendo il TPEG verso applicazioni più separate e più definite, tramite l’utilizzo di specifici casi d'uso, e, allo stesso tempo, usando un approccio top-down nella modellazione dei dati. Questa seconda generazione di applicazioni TPEG (TPEG generazione 2 o TPEG2) è stata quindi specificata con un modello UML dal quale sono derivati sia la codifica binaria che quella XML. La specifica di una applicazione TPEG2 include le codifiche sia binaria che XML come parte integrante della specifica stessa.
La prima applicazione TPEG2 fu il TEC che rappresentò una svolta in quanto sia i fornitori di servizi che i produttori di dispositivi utente (come possono essere ad esempio i navigatori auto) accettarono il TPEG2 come IL successore del Traffic Message Channel, come conseguenza diretta, i servizi iniziarono ad apparire in vari paesi.
Vale infine ricordare che sia TPEG1 che TPEG2 sono standardizzati dall'Organizzazione internazionale per la normazione come ISO/TS 18234 (TPEG1) e ISO/TS 21219 (TPEG2). La serie TPEG1 è considerata legacy e si tende a non incoraggiare lo sviluppo di servizi TPEG1.
Tecnologia Il TPEG definisce specifiche al fine di fornire informazioni molto accurate sia relative al traffico che al viaggiatore in senso più generale. Il TPEG permette la trasmissione di pacchetti dati tramite vari mezzi di comunicazione, tra cui le trasmissioni broadcast digitali o i protocolli internet. Di fatto, oggi questo è usato principalmente per informare i viaggiatori sulle condizioni di traffico, ferroviarie ecc. Informazioni come condizioni del traffico, meteo, prezzi carburanti, parcheggi, orari reali del trasporto pubblico, possono essere trasmesse con il TPEG.
TPEG è un protocollo strutturato in contenitori ognuno dei quali contiene uno specifico contenuto per ciascun servizio. Ogni applicazione è definita in una specifica tecnica separata. Il TPEG è progettato per essere moderno e flessibile pronto per essere adattato secondo nuovi trend, necessità e condizioni.
La selezione delle corrette applicazioni e profili tecnici permette di fornire al viaggiatore informazioni accurate ed in tempo reale al fine di una maggiore sicurezza e comodità di viaggio. Grazie a questi requisiti il TPEG è ben accettato sia dagli enti regolatori che da enti pubblici.
Prodotti basati su TPEG sono da tempo disponibili, da parte di molti produttori diversi, in molti paesi Europei, negli Stati Uniti ed in Asia. In paragrafi successive viene riportata la lista dei servizi.
La filosofia progettuale Il TPEG è sviluppato secondo un metodo top-down ed è basato sulla modellazione degli use cases definita in Unified Modeling Language. Dal modello Unified Modeling Language sono derivate due versioni: codifica XML – questo formato è sia human readable che machine readable e può facilmente essere usato dai sistemi di navigazione con un Parsing della struttura stessa. È inoltre compatibile all'indietro in quanto si possono aggiungere nuovi Tag (metadato) alle applicazioni. Questi nuovi Tag (metadato) possono essere saltati, ovvero non analizzati e non usati, da sistemi che implementano versioni più vecchie. Allo stesso tempo generazioni più recenti possono usare nuove feature messe a disposizione con i nuovi Tag (metadato). codifica binaria – Questo formato non è human readable ma ha il vantaggio di essere molto più compatto della rappresentazione XML. Questa codifica è quindi molto più efficiente e viene normalmente usata ad esempio dove c’è minore banda trasmissiva oppure dove una codifica compatta è essenziale.
Principi base I seguenti principi sono stati assunti come essenziali nello sviluppo dei protocolli TPEG, struttura e semantica del TPEG (riferimento ISO/TS 18234-2 seguito da TS 21219-5): TPEG è principalmente unidirezionale (con l’eccezione di quando trasportato da Internet Protocol) TPEG binario è byte-oriented dove un Byte rappresenta 8 Bit TPEG fornisce una struttura di protocollo che impiega un framing asincrono TPEG include una correzione di errore Cyclic redundancy check applicabile a diversi livelli TPEG assume che i livelli sottostanti possano avere la correzione di errore TPEG assume di usare un canale dati trasparente messo a disposizione dal protocollo sottostante TPEG assume che i sistemi sottostanti abbiano un certo livello di affidabilità TPEG ha una struttura gerarchica dei data frame TPEG trasporta il nome del fornitore di servizi, il nome del servizio e informazioni di rete TPEG permette l’uso di meccanismi di criptatura nel caso siano richiesti
Caratteristiche addizionali La filosofia progettuale del TPEG opera una netta distinzione tra i due segmenti principali di Content e Delivery. Le informazioni della localizzazione e del contenuto applicativo sono chiaramente e nettamente distinte. TPEG permette di avere servizi in cui non sia necessaria la sincronizzazione del database delle localizzazioni tra il fornitore di servizi ed il cliente degli stessi. TPEG estende le applicazioni verso servizi multimodali TPEG permette l’offerta di contenuti molto ricchi pur avendo una indipendenza dalla lingua TPEG permette di realizzare dei filtri molto sofisticati ed avanzati nei dispositivi utente TPEG supporta sia “thick” che “thin” devices Non è necessario precaricare il database delle localizzazioni nei dispositivi utente Il contenuto dei messaggi è scalabile I meccanismi di adattamento al protocollo di trasporto molto semplici
Applicazioni TPEG2 Il TPEG è un sistema modulare attualmente specificato nel modo seguente