Piggybacking
# Piggybacking

In elettronica, informatica e telecomunicazioni, il termine inglese piggybacking viene utilizzato per riferirsi a tecniche di ottimizzazione basate sul concetto generale di inserire o incapsulare un determinato messaggio all'interno di un altro messaggio, al fine di ridurre il numero di messaggi complessivi da inviare per ottenere un certo scopo. La metafora implicita nel termine può essere resa in italiano con l'espressione "a cavalcioni" (il messaggio viene trasportato "a cavalcioni" da un altro anziché essere inviato in modo indipendente).

## Esempio

Molti protocolli di comunicazione richiedono che la ricezione di un determinato messaggio sia confermata dal destinatario attraverso l'invio di un messaggio di ACK (acknowledgement, "conferma") al mittente. Questo ACK può essere inviato immediatamente al momento della ricezione; tuttavia, se il protocollo prevede successivi scambi di messaggi fra mittente e destinatario, il destinatario può rimandare l'invio dell'ACK e includerlo nel successivo messaggio inviato al mittente. In questo caso si può dire che il messaggio inviato "piggybacks" (porta con sé) l'ACK relativo all'ultima ricezione avvenuta.

Questa procedura è molto adatta per reti LAN ma risulta poco efficiente in reti molto grandi, come l'inter-rete globale perché causa un Round Trip Time elevato: per questo motivo TCP, nel controllo del flusso adotta per sender interattivi l'algoritmo di Nagle e per receiver interattivi l'algoritmo di Clark, specialmente quando la velocità di uno dei due nodi è nettamente superiore al nodo che sta dall'altra parte della comunicazione.

