Kitz ADSL Broadband Information
adsl spacer  
Support this site
Home Broadband ISPs Tech Routers Wiki Forum
   Compare ISP   Rate your ISP
   Glossary   Glossary
Please login or register.

Login with username, password and session length
Advanced search  


Author Topic: DSL parameters in G.992.3 etc  (Read 1582 times)


  • Senior Kitizen
  • ******
  • Posts: 10068
  • Retd s/w dev; A&A; 3x7km lines; Firebrick; IPv6
DSL parameters in G.992.3 etc
« on: October 05, 2021, 09:58:28 AM »

Referring to the G.992.3 standard (and other DSL protocol specs), what determines the values of the DSL B and M framing parameters? - see table 7-6 in G.992.3.

I see that B (assuming for simplicity only one bearer) 0 ≤ B ≤ 254. So quite short, not long enough to take 1500 bytes. And then you must have some RS CRC bytes following that frame payload.

The value of L does not control the value of B - is that correct? Because when for example youíre transmitting data, passing it down to the lower layer, the lower layer can keep coming back multiple times sucking more bits from the upper layer until B+R (simplified) bytes have been sent. B clearly controls how often CRCs are appended into the data stream, so smaller B, more RS overhead and better error protection. You donít want very large values of B because the link is vulnerable to corruption at all points in the longer run of data and the probability of a corrupt frame is higher.

My own framing parameters for modem #1:

      Down      Up
         ADSL2 framing
         Bearer 0
B:      18      78
M:      8      1
T:      5      1
R:      16      16
S:      1.7708      3.8579
L:      759      197
D:      1      8

So looking at the downstream, first column, every payload is M * ( B  + 1) = 8 * ( 16 + 1  ) = 136 bytes and the CRC appended to that is R = 16 bytes, and for upstream: 79 bytes of payload and 16 bytes of CRC.  Much more RS error correction capability for the upstream, possibly because of the fact that itís running at a higher SNRM and possibly also due to the fact that thereís no upstream PhyR (ie ADSL2 L2ReTX), so it really needs more error correction capability.

But why isnít M = 1 always? Why do we need it, as it seems that only the value of M * ( B  + 1) matters?
« Last Edit: October 05, 2021, 11:11:10 AM by Weaver »