[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[HLL] NEW Frames

Status: RO
Content-Length: 2314
Lines: 59



this is a fresh "quick and dirty" layout for serial frames.
Think it's not to complex and quite straightforward.
Do you like it ?

* We want to operate with a 14400 Baud Modem.
  This should give us 1800 Byte/Sec maximum transfer-rate.

* Transmission-rate for frames must be 20mSec (or less),
  because we should not have to combine several gsm-data-blocks
  into one serial-frame (timing issues).

* Combining both statements above, frame-len must be 36 Bytes max.

* To avoid problems with baud-rate-variation, we transmit only 35
  Bytes/Frame. So we can live with up to -3% baudrate-variation.

* To be able to sync on each frame-start, we start transmitting
  each frame with a fixed byte value. What about 0x42 ?
  This leaves us 34 bytes in the frame for further usage...
  (Operating crypto on 17 blocks of 2 bytes each).
  It's easy to detect the 0x42 in the encrypted data-stream,
  as it repeats every 35 bytes while everything else is random.
  (This assumption makes it impossible to use double-xor...)

* In the remaining 34 bytes we use 32.5 Bytes for gsm-voice-data.
  Usually gsm uses 33 bytes, but we do not transmit the version-info.
  This is a fixed value in each frame of 4-bit-len (typ set to "E"),
  so there are 32.5 bytes = 260 bits to send for every 20mSec gsm-block.
  There might be other uses (depending on "mode") for this field as well.

* Now we have 1.5 Bytes left.
  Lets use the 1 Bytes as aux-channel, used either as control-channel
  (so send commands to the other side) or to transport user-data.
  This gives us 400 Baud (50 Byte/Sec) on this aux-channel (with voice=on).
  There might be other uses (depending on "mode") for this field as well.

* The 4 remaining bits encode the "device operation mode".
  These modes are rather "high level modes". For every mode if is
  defined how (and for what purpose) the gsm-data-zone and the
  aux-byte are used.


Version: 2.6.3i
Charset: latin1