1. Il danno
La marcatura è stata introdotta per adattarsi all'host mittente, perché permette al testo di un messaggio di iniziare su un confine di parola; tuttavia non si adatta all'host ricevente con una lunghezza di parola diversa. Inoltre, introduce nel messaggio bit inutili. Illustriamolo con l'esempio del nostro Sigma 7, una macchina a 32 bit.
1.1 Inefficienza nel calcolo
Supponiamo di ricevere un messaggio da una macchina a 18 bit (figura 1.1) codificato in caratteri ASCII a 8 bit che diventeranno alla fine lo standard sulla rete. Per tradurre questo messaggio nel nostro codice interno EBCDIC, per esempio.
0 17 0 31
-------------------------- ------------------------------
| leader | | leader |
-------------------------- ------------------------------
| | 0 0 0 1| | 0 0 0 1 | |
-------------------------- ----------- |
| | | |
| | | |
| | | |
| message | | message |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
Figura 1.1
dobbiamo prima spostare l'intero messaggio. Dobbiamo individuare il primo 1 che segue il preambolo e da questo determinare che dobbiamo spostare il messaggio di 4 bit a sinistra. Ciò richiede circa 12 microsecondi per doppia parola, ossia 1,5 ms per un messaggio regolare completo. Non è molto, ma rappresenta comunque circa un terzo del tempo necessario per tradurre il messaggio in codice interno.
1.2 Inefficienza nella trasmissione
Più importante è l'inefficienza derivante dall'aggiunta di bit non necessari al messaggio, soprattutto se risulta che vengono usati messaggi di un solo carattere. La figura 1.2 mostra l'esempio di un testo di 1 carattere inviato dal Sigma 7, che comporta la trasmissione di 112 bit per trasportare 8 bit di informazione, con un conseguente fattore di efficienza di 0.07. La soppressione della marcatura
-----------------------------------
Sigma 7 | leader |
-----------------------------------
Message |00000000000000000000000000000001 |
-----------------------------------
| text | 000000000000000000000000 |
-----------------------------------
16 bits of padding | 1000000000000000 |
added by sending IMP --------------------
Figura 1.2
porterebbe questa efficienza a 0.10. Per un testo di 32 bit (lunghezza di alcuni comandi di controllo), aumenterebbe l'efficienza da 0.28 a 0.4. Per messaggi di un solo pacchetto, l'efficienza aumenterebbe comunque del 3%.