Commit Graph

5 Commits

Author SHA1 Message Date
Vadim Yanitskiy 0c15e0baac DbgMuxConnHandler: accumulate DataBlockCount
Looking at samples/k800_tems.pcapng.gz I noticed that the client
side (TEMS Investigation) is accumulating the FlowControl credits.
Below is an extract from it, showing the client sending three
data blocks in one go:

Record #0031 @ 1674591313.020628 Tx 42421000070e6f00940900022c0104690103a2bd
  DebugMux Tx frame (Ns=007, Nr=014, fcs=0xbda2) ConnData 00940900022c0104690103
  Container:
    ConnRef = 0x9400
    Data = hexundump("""
    0000   09 00 02 2C 01 04 69 01 03                        ...,..i..
    """)

Record #0032 @ 1674591313.020628 Tx 42421000080e6f00940900022c0105da0103db5b
  DebugMux Tx frame (Ns=008, Nr=014, fcs=0x5bdb) ConnData 00940900022c0105da0103
  Container:
    ConnRef = 0x9400
    Data = hexundump("""
    0000   09 00 02 2C 01 05 DA 01 03                        ...,.....
    """)

Record #0033 @ 1674591313.036228 Tx 42421000090e6f00940900022c01069300034c83
  DebugMux Tx frame (Ns=009, Nr=014, fcs=0x834c) ConnData 00940900022c0106930003
  Container:
    ConnRef = 0x9400
    Data = hexundump("""
    0000   09 00 02 2C 01 06 93 00 03                        ...,.....
    """)
2024-05-02 01:47:45 +02:00
Vadim Yanitskiy 3f1aa65e72 DbgMux{Frame,ConnHandler}: DataBlockLimit != DataBlockCount
DataBlockLimit seems to be the maximum ConnData block size, which
has nothing to do with the flow control.  At least because we
always get a non-zero value even for Rx-only DPs.
2024-05-02 01:42:03 +02:00
Vadim Yanitskiy 9a45680e18 Rework logging: use module-level loggers 2023-04-29 15:58:15 +07:00
Vadim Yanitskiy afed084c77 DbgMuxConnHandler: proper handling of the FlowControl message
A FlowControl message basically indicates how many data blocks the
remote side is able to receive from us.  Whenever the block limit is
reached, we should queue outgoing data blocks until the remote side
has given us a new quote by sending another FlowControl message.
2023-01-22 22:36:36 +06:00
Vadim Yanitskiy 23b560197f DbgMuxConnHandler: new abstract class for connection handlers 2023-01-22 22:34:42 +06:00