Hi
What is the necessary configuration for the CMTS Casa Systems C100G to allow the use of cable modems with an operating frequency range of 5 - 42MHz and other cable modems with an operating frequency range of 5 - 85MHz on the same interface upstream port?
What is the necessary configuration in the CMTS to not assign frequencies higher than 42 MHz
to cable modems that have an operating frequency range of 5 - 42MHz
Our upstream port allow the use of 8 frequencies
Please help
regards
Add cable diplexer upstream-upper-band-edge 2
for most modem files you'll need to add extended diplex as well.
Diplexer band edge
Diplexer Upstream Upper Band Edge:Upstream Frequency Range up to 85 MHz
or on a Netgear modem for example, SNMP MIB Object(docsDevNmAccessInterfaces.1):1.3.6.1.2.1.69.1.2.1.6.1, Octet String, 0x4000
Hi
What is the necessary configuration in the CMTS to not assign frequencies higher than 42 MHz
to cable modems that have an operating frequency range of 5 - 42MHz
My intention is to have a mixture of cable modems 5 - 42Mhz and 5 - 85Mhz in the same port of upstream.
If I assign the following frequencies to the 8 channels of the interface, these 8 channels are configured
in the same interface docsis-mac and service group
for this example the first 4 channels are frequencies higher than 42 MHz, the rest are lower
interface upstream 12/0.0
frequency 80000000
channel-width 3200000
interface upstream 12/0.1
frequency 76000000
channel-width 3200000
interface upstream 12/0.2
frequency 72000000
channel-width 3200000
interface upstream 12/0.3
frequency 68000000
channel-width 3200000
interface upstream 12/0.4
frequency 40000000
channel-width 3200000
interface upstream 12/0.5
frequency 36000000
channel-width 3200000
interface upstream 12/0.6
frequency 32000000
channel-width 3200000
interface upstream 12/0.7
frequency 28000000
channel-width 3200000
which configuration to add in the cmts so that it works to mix in the same port the cable modems 5 - 42Mhz and 5 - 85Mhz
service group 1
qam 0/0/0
qam 0/0/1
qam 0/0/2
qam 0/0/3
qam 0/0/4
qam 0/0/5
qam 0/0/6
qam 0/0/7
qam 0/0/8
qam 0/0/9
qam 0/0/10
qam 0/0/11
qam 0/0/12
qam 0/0/13
qam 0/0/14
qam 0/0/15
qam 0/0/16
qam 0/0/17
qam 0/0/18
qam 0/0/19
qam 0/0/20
qam 0/0/21
qam 0/0/22
qam 0/0/23
qam 0/0/24
qam 0/0/25
qam 0/0/26
qam 0/0/27
qam 0/0/28
qam 0/0/29
qam 0/0/30
qam 0/0/31
upstream 9/0.0
upstream 9/0.1
upstream 9/0.2
upstream 9/0.3
upstream 9/0.4
upstream 9/0.5
upstream 9/0.6
upstream 9/0.7
interface docsis-mac 1
no shutdown
no dhcp-authorization
initial-tech unicast-ranging
no early-authentication-encryption
upstream extended-frequency-range
no multicast-dsid-forward
no tftp-proxy
ip bundle 1
upstream 1 interface upstream 9/0.0/0
upstream 2 interface upstream 9/0.1/0
upstream 3 interface upstream 9/0.2/0
upstream 4 interface upstream 9/0.3/0
upstream 5 interface upstream 9/0.4/0
upstream 6 interface upstream 9/0.5/0
upstream 7 interface upstream 9/0.6/0
upstream 8 interface upstream 9/0.7/0
downstream 1 interface qam 0/0/0
downstream 2 interface qam 0/0/1
downstream 3 interface qam 0/0/2
downstream 4 interface qam 0/0/3
downstream 5 interface qam 0/0/4
downstream 6 interface qam 0/0/5
downstream 7 interface qam 0/0/6
downstream 8 interface qam 0/0/7
downstream 9 interface qam 0/0/8
downstream 10 interface qam 0/0/9
downstream 11 interface qam 0/0/10
downstream 12 interface qam 0/0/11
downstream 13 interface qam 0/0/12
downstream 14 interface qam 0/0/13
downstream 15 interface qam 0/0/14
downstream 16 interface qam 0/0/15
downstream 17 interface qam 0/0/16
downstream 18 interface qam 0/0/17
downstream 19 interface qam 0/0/18
downstream 20 interface qam 0/0/19
downstream 21 interface qam 0/0/20
downstream 22 interface qam 0/0/21
downstream 23 interface qam 0/0/22
downstream 24 interface qam 0/0/23
downstream 25 interface qam 0/0/24
downstream 26 interface qam 0/0/25
downstream 27 interface qam 0/0/26
downstream 28 interface qam 0/0/27
downstream 29 interface qam 0/0/28
downstream 30 interface qam 0/0/29
downstream 31 interface qam 0/0/30
downstream 32 interface qam 0/0/31
cable cm-status report event-list 1,2,3,4,5,6,7,8,9,10,11,16,17,18,20,21,22,23,24,25,26,27
cable diplexer upstream-upper-band-edge 2
question:
With this configuration you can use cable modems 5 - 42Mhz and
5 - 85Mhz simultaneously through the same upstream port
For the example, what frequencies did you configure in the 8 channels of port 9/0 ?
in my case, 5-42Mhz is 3.0 and 42-85Mhz is ofdma
interface upstream 10/6.0
description "DW"
spectrum-rule 1
frequency 36800000
channel-width 6400000
power-adjustment continue 6
map-advance dynamic 400
ingress-cancellation 100
partial-service fec-threshold 2
small-signal-compensation
pre-equalization extended-taps
logical-channel 0 description "DW_36"
logical-channel 0 profile 3 secondary-profile 50,51
logical-channel 0 minislot 4
logical-channel 0 data-backoff 3 6
logical-channel 0 ranging-backoff 3 6
logical-channel 0 pre-equalization auto-reset
logical-channel 0 post-equalization
no logical-channel 0 shutdown
logical-channel 1 profile 3
logical-channel 1 minislot 2
logical-channel 1 shutdown
no shutdown
interface upstream 10/6.1
description "DW"
spectrum-rule 1
frequency 30300000
channel-width 6400000
power-adjustment continue 6
map-advance dynamic 400
ingress-cancellation 100
partial-service fec-threshold 2
small-signal-compensation
pre-equalization extended-taps
logical-channel 0 description "DW_30"
logical-channel 0 profile 3 secondary-profile 50,51
logical-channel 0 minislot 4
logical-channel 0 data-backoff 3 6
logical-channel 0 ranging-backoff 3 6
logical-channel 0 pre-equalization auto-reset
logical-channel 0 post-equalization
no logical-channel 0 shutdown
logical-channel 1 profile 3
logical-channel 1 minislot 1
logical-channel 1 shutdown
no shutdown
interface upstream 10/6.2
description "DW"
spectrum-rule 1
frequency 23800000
channel-width 6400000
power-adjustment continue 6
map-advance dynamic 400
ingress-cancellation 100
partial-service fec-threshold 2
small-signal-compensation
pre-equalization extended-taps
logical-channel 0 description "DW_23"
logical-channel 0 profile 3 secondary-profile 50,51
logical-channel 0 minislot 4
logical-channel 0 data-backoff 3 6
logical-channel 0 ranging-backoff 3 6
logical-channel 0 pre-equalization auto-reset
logical-channel 0 post-equalization
no logical-channel 0 shutdown
logical-channel 1 profile 3
logical-channel 1 minislot 1
logical-channel 1 shutdown
no shutdown
interface upstream 10/6.3
description "DW"
spectrum-rule 1
frequency 18900000
channel-width 3200000
power-adjustment continue 6
map-advance dynamic 400
ingress-cancellation 100
partial-service fec-threshold 2
small-signal-compensation
pre-equalization extended-taps
logical-channel 0 description "DW_18"
logical-channel 0 profile 3 secondary-profile 50,51
logical-channel 0 minislot 4
logical-channel 0 data-backoff 3 6
logical-channel 0 ranging-backoff 3 6
logical-channel 0 pre-equalization auto-reset
logical-channel 0 post-equalization
no logical-channel 0 shutdown
logical-channel 1 profile 3
logical-channel 1 minislot 2
logical-channel 1 shutdown
no shutdown
I want to know if I can mix different cable modem models through the same Upstream port, where some support 5 - 42Mhz and other models support 5 - 85Mhz
With the examples you show I don't understand
you can run both on the same upstream. in my case 3.0 5-42 and 3.1 42-85Mhz.
remember, not all modems support to 85Mhz and will need to be told told as mentioned earlier
Cant help you with Casa, but on Cisco CMTS we have :
Upstream channels > 42MHz :
"cable upstream x attribute-mask F"
Upstream bonding groups with channels > 42MHz :
"attributes 8000000F"
Then for CM config files for modems which can only do 42MHz :
VendorSpecific
{
VendorIdentifier 0xffffff;
CMAttributeMasks
{
CMUpstreamForbiddenAttributeMask 0x0000000f;
}
}
This tells 42MHz modems not to use any US channels or bonding groups that are > 42MHz.
Works well.
Hi
Summarizing the comments to mix in the same Upstream port the cable modems that support 5-42MHz and 5 - 85MHz, I understand the following:
In the CMTS add this Line in the configuration of interface docsis-mac
cable diplexer upstream-upper-band-edge 2
In the configuration files for most modems add these lines
Diplexer band edge
Diplexer Upstream Upper Band Edge:Upstream Frequency Range up to 85 MHz
To indicate to cable modems that only support 5-42MHz NOT to connect through higher frequencies configured in the same port, I must use
attribute-mask
In the casa systems CMTS this is the command to configure attribute-mask:
(config)# interface upstream 13/0.0
(config-if-ups 13/1.0)# logical-channel 0 prov-attr-mask 0x0
For example:
configuration of interface upstream 13/0
-- First 4 frequencies greater than 42Mhz
interface upstream 13/0.0
frequency 80000000
channel-width 3200000
logical-channel 0 prov-attr-mask 0x0
interface upstream 13/0.1
frequency 76000000
channel-width 3200000
logical-channel 0 prov-attr-mask 0x0
interface upstream 13/0.2
frequency 72000000
channel-width 3200000
logical-channel 0 prov-attr-mask 0x0
interface upstream 13/0.3
frequency 68000000
channel-width 3200000
logical-channel 0 prov-attr-mask 0x0
-- Last 4 frequencies less than 42MHz and adding prov-attr-mask 0x0000000F
interface upstream 13/0.4
frequency 40000000
channel-width 3200000
logical-channel 0 prov-attr-mask 0x0000000F
interface upstream 13/0.5
frequency 36000000
channel-width 3200000
logical-channel 0 prov-attr-mask 0x0000000F
interface upstream 13/0.6
frequency 32000000
channel-width 3200000
logical-channel 0 prov-attr-mask 0x0000000F
interface upstream 13/0.7
frequency 28000000
channel-width 3200000
logical-channel 0 prov-attr-mask 0x0000000F
************************************************************
Then for CM config files for modems which can only do 42MHz :
VendorSpecific
{
VendorIdentifier 0xffffff;
CMAttributeMasks
{
CMUpstreamForbiddenAttributeMask 0x0000000F;
}
}
With this, it tells modems that support frequencies < 42Mhz to only use these channels.
next is the configuration of service group nodo01 and interface docsis-mac 1, where I add all the channels of port 13/0
***********************************************************
service group nodo01
qam 0/0/0
qam 0/0/1
qam 0/0/2
qam 0/0/3
qam 0/0/4
qam 0/0/5
qam 0/0/6
qam 0/0/7
qam 0/0/8
qam 0/0/9
qam 0/0/10
qam 0/0/11
qam 0/0/12
upstream 13/0.0
upstream 13/0.1
upstream 13/0.2
upstream 13/0.3
upstream 13/0.4
upstream 13/0.5
upstream 13/0.6
upstream 13/0.7
*********************************************************
interface docsis-mac 1
no shutdown
no dhcp-authorization
no early-authentication-encryption
no multicast-dsid-forward
no tftp-proxy
no cable privacy valid-period-check
ip bundle 1
upstream 1 interface upstream 13/0.0/0
upstream 2 interface upstream 13/0.1/0
upstream 3 interface upstream 13/0.2/0
upstream 4 interface upstream 13/0.3/0
upstream 5 interface upstream 13/0.4/0
upstream 6 interface upstream 13/0.5/0
upstream 7 interface upstream 13/0.6/0
upstream 8 interface upstream 13/0.7/0
downstream 1 interface qam 0/0/0
downstream 2 interface qam 0/0/1
downstream 3 interface qam 0/0/2
downstream 4 interface qam 0/0/3
downstream 5 interface qam 0/0/4
downstream 6 interface qam 0/0/5
downstream 7 interface qam 0/0/6
downstream 8 interface qam 0/0/7
downstream 9 interface qam 0/0/8
downstream 10 interface qam 0/0/9
downstream 11 interface qam 0/0/10
downstream 12 interface qam 0/0/11
downstream 13 interface qam 0/0/12
cable diplexer upstream-upper-band-edge 2
Please help me if these steps work or if you have a better and different way of doing it.
I am attentive to read your comments
There is another way to do it all at the CMTS without the use of attribute masks: using loadbalancing
I could not find the exact config where I got this working but this is the gist.
This uses TLV 5.20 to determine whether a modem supports extended upstream spectrum so you still need to set the diplexer setting on the docsis-mac, and whatever firmware or modem proprietary settings needed to turn it on.
! turn on load balancing
load-balance enable
! create two tags
! extendedUpstream for modems that support > 42 Mhz
cable tag extendedUpstream
priority 1
tlv ext-upstream-freq-range 1
! normal for modems who can only do < 42 Mhz
cable tag normal
priority 2
tlv ext-upstream-freq-range 0
! normal basic and execution rules replace with your settings
load-balance basic-rule 1
enable
load-balance execution-rule 1
method modem
method utilization dynamic
! add cable tag normal disable to policy 1 this will include all of the channels
load-balance policy 1
cable tag normal disable
rule execution 1
rule basic 1
! add cable tag extendedUpstream disable to policy 2 this will only include the 0-42 channels
load-balance policy 2
cable tag extendedUpstream disable
rule execution 1
rule basic 1
! assign policy 1 (modems that support < 42 Mhz on) to the general group (i.e. the default)
load-balance general-group default-settings
policy-id 1
initial-tech period-ranging
enable
! you will need to create a restricted-group and restricted-cm for every docsis-mac you have on your chassis
! create a restricted group and apply policy id 2 to it
load-balance restricted-group 1
policy-id 2
enable
! adjust for your combination of DS/US
docsis-mac 1
! add 32 DS
qam 0/0/0 32
! add only the 0-42 mhz channels
upstream 13/15.0 3
! add ofdm and ofdma as needed
! create a restricted cm group that matches on when a modem does not support higher than 42 Mhz and put it in the restricted group
! and assign it to restricted group we assigned later
load-balance restricted-cm 1
cable tag normal
restricted-load-balance-group 1
Hi, thank you very much for your valuable help.
I understand this is the complete configuration that I must add to make it work
Please review for any additional comments.
******************************************
** turn on load balancing
load-balance enable
*******************************************
** create two tags
** extendedUpstream for modems that support > 42 Mhz
cable tag extendedUpstream
priority 1
tlv ext-upstream-freq-range 1
** normal for modems who can only do < 42 Mhz
cable tag normal
priority 2
tlv ext-upstream-freq-range 0
*******************************************
**normal basic and execution rules
load-balance permit dbc-chg-prim-ds
load-balance basic-rule 1
enable
load-balance execution-rule 1
method modem
method utilization dynamic
threshold load 2 enforce 10 minimum 2 dynamic minimum 15
interval 30
suspicious-channel retry interval 300
*******************************************
**Policy 1 and 2
load-balance policy 1
cable tag normal disable
rule execution 1
rule basic 1
load-balance policy 2
cable tag extendedUpstream disable
rule execution 1
rule basic 1
*******************************************
** assign policy 1 (modems that support < 42 Mhz on) to the general group (i.e. the default)
load-balance general-group default-settings
policy-id 1
initial-tech period-ranging
enable
*******************************************
** restricted-group and restricted-cm
load-balance restricted-group 1
docsis-mac 1
policy-id 2
enable
load-balance restricted-cm 1
docsis-mac 1
cable tag normal
restricted-load-balance-group 1
*************************************************
** frequency assignment to the 8 channels of interface upstream 13/0 (Please confirm if this is the settings correct and recommended to do it)
** frequency > 42Mhz
interface upstream 13/0.0
frequency 80000000
channel-width 6400000
interface upstream 13/0.1
frequency 73000000
channel-width 6400000
interface upstream 13/0.2
frequency 66000000
channel-width 6400000
interface upstream 13/0.3
frequency 59000000
channel-width 6400000
** frequency < 42Mhz
interface upstream 13/0.4
frequency 40000000
channel-width 3200000
interface upstream 13/0.5
frequency 36000000
channel-width 3200000
interface upstream 13/0.6
frequency 32000000
channel-width 3200000
interface upstream 13/0.7
frequency 28000000
channel-width 3200000
***************************************
** configuration of docsis-mac 1 and service group nodo01
interface docsis-mac 1
no shutdown
no dhcp-authorization
no early-authentication-encryption
no multicast-dsid-forward
no tftp-proxy
no cable privacy valid-period-check
ip bundle 1
upstream 1 interface upstream 13/0.0/0
upstream 2 interface upstream 13/0.1/0
upstream 3 interface upstream 13/0.2/0
upstream 4 interface upstream 13/0.3/0
upstream 5 interface upstream 13/0.4/0
upstream 6 interface upstream 13/0.5/0
upstream 7 interface upstream 13/0.6/0
upstream 8 interface upstream 13/0.7/0
downstream 1 interface qam 0/0/0
downstream 2 interface qam 0/0/1
downstream 3 interface qam 0/0/2
downstream 4 interface qam 0/0/3
downstream 5 interface qam 0/0/4
downstream 6 interface qam 0/0/5
downstream 7 interface qam 0/0/6
downstream 8 interface qam 0/0/7
downstream 9 interface qam 0/0/8
downstream 10 interface qam 0/0/9
downstream 11 interface qam 0/0/10
downstream 12 interface qam 0/0/11
downstream 13 interface qam 0/0/12
cable diplexer upstream-upper-band-edge 2
service group nodo01
qam 0/0/0
qam 0/0/1
qam 0/0/2
qam 0/0/3
qam 0/0/4
qam 0/0/5
qam 0/0/6
qam 0/0/7
qam 0/0/8
qam 0/0/9
qam 0/0/10
qam 0/0/11
qam 0/0/12
upstream 13/0.0
upstream 13/0.1
upstream 13/0.2
upstream 13/0.3
upstream 13/0.4
upstream 13/0.5
upstream 13/0.6
upstream 13/0.7
Please confirm that with this settings it should work fine
This section is missing quite a bit:
*******************************************
** restricted-group and restricted-cm
load-balance restricted-group 1
docsis-mac 1
policy-id 2
enable
load-balance restricted-cm 1
docsis-mac 1
cable tag normal
restricted-load-balance-group 1
*************************************************
it should be:
*******************************************
** restricted-group and restricted-cm
load-balance restricted-group 1
docsis-mac 1
policy-id 2
qam 0/0/0
qam 0/0/1
qam 0/0/2
qam 0/0/3
qam 0/0/4
qam 0/0/5
qam 0/0/6
qam 0/0/7
qam 0/0/8
qam 0/0/9
qam 0/0/10
qam 0/0/11
qam 0/0/12
upstream 13/0.4
upstream 13/0.5
upstream 13/0.6
upstream 13/0.7
enable
load-balance restricted-cm 1
docsis-mac 1
cable tag normal
restricted-load-balance-group 1
*************************************************
You have to explicitly create the restricted group the CM will belong to, and you have to create it for every Docsis-mac.
It is probably a good practice to use the same index for both as the docsis-mac to make things simpler.
Hi kwesibrunee
Any comment of the following configuration:
Configure a “cable tag” for modems that do not support “extended upstream frequency range”:
cable tag normal
priority 2
tlv ext-upstream-freq-range 0
Then use this in a restricted load balance group. The restricted load balance group will only include upstream channels that have frequencies below 42 MHz. The other modems will not be restricted since they support upstream frequencies below and above 42 MHz so they will be able to use all the upstream channels:
load-balance permit dbc-chg-prim-ds
load-balance basic-rule 1
enable
load-balance execution-rule 1
method modem
method utilization dynamic
threshold load 2 enforce 10 minimum 2 dynamic minimum 15
interval 30
suspicious-channel retry interval 300
load-balance policy 1
rule execution 1
rule basic 1
load-balance general-group default-settings
policy-id 1
initial-tech period-ranging
enable
load-balance restricted-group 1
docsis-mac 1
policy-id 1
initial-tech direct
enable
qam 0/0/0
qam 0/0/1
qam 0/0/2
qam 0/0/3
qam 0/0/4
qam 0/0/5
qam 0/0/6
qam 0/0/7
qam 0/0/8
qam 0/0/9
qam 0/0/10
qam 0/0/11
qam 0/0/12
upstream 13/0.4/0
upstream 13/0.5/0
upstream 13/0.6/0
upstream 13/0.7/0
load-balance restricted-cm 1
cable tag normal
restricted-load-balance-group 1
That looks good. Even simpler than mine.
Hi kwesibrunee
for example if I have interface docsis-mac 2
interface docsis-mac 2
no shutdown
no dhcp-authorization
no early-authentication-encryption
no multicast-dsid-forward
no tftp-proxy
no cable privacy valid-period-check
ip bundle 1
upstream 1 interface upstream 13/1.0/0
upstream 2 interface upstream 13/1.1/0
upstream 3 interface upstream 13/1.2/0
upstream 4 interface upstream 13/1.3/0
upstream 5 interface upstream 13/1.4/0
upstream 6 interface upstream 13/1.5/0
upstream 7 interface upstream 13/1.6/0
upstream 8 interface upstream 13/1.7/0
downstream 1 interface qam 0/1/0
downstream 2 interface qam 0/1/1
downstream 3 interface qam 0/1/2
downstream 4 interface qam 0/1/3
downstream 5 interface qam 0/1/4
downstream 6 interface qam 0/1/5
downstream 7 interface qam 0/1/6
downstream 8 interface qam 0/1/7
downstream 9 interface qam 0/1/8
downstream 10 interface qam 0/1/9
downstream 11 interface qam 0/1/10
downstream 12 interface qam 0/1/11
downstream 13 interface qam 0/1/12
upstream extended-frequency-range
cable diplexer upstream-upper-band-edge 2
I need add only this settings:
load-balance restricted-group 2
docsis-mac 2
policy-id 1
initial-tech direct
enable
qam 0/1/0
qam 0/1/1
qam 0/1/2
qam 0/1/3
qam 0/1/4
qam 0/1/5
qam 0/1/6
qam 0/1/7
qam 0/1/8
qam 0/1/9
qam 0/1/10
qam 0/1/11
qam 0/1/12
upstream 13/1.4/0
upstream 13/1.5/0
upstream 13/1.6/0
upstream 13/1.7/0
load-balance restricted-cm 2
cable tag normal
restricted-load-balance-group 2
I need to create restricted-group and restricted-cm for each interface docsis-mac, please confirm if this is correct
yes you do.
Hi
I am testing with the modem brand: Ubee, Model: EVW3226, initially I connect the Modem directly to the Upstream port of the CMTS where I configure a channel with frequencie of 80Mhz,
the modem takes the status of Online, With this I verify that it supports 5 - 85Mhz.
I am testing the load-balance to be able to mix the 5-42Mhz and 5-85Mhz modems through the same port but the modem only uses frequencies lower than 42Mhz
the modem should use all 4 channels, I am testing with 4 channels, with 2 frequencies > 42 Mhz and 2 frequencies < 42 Mhz
CASA-C100G#show docsis upstream channel utilization | include 13/0
13/0.0 (80000000 Hz) 15.4 0 0 0 test-85Mhz
13/0.1 (73000000 Hz) 15.4 0 0 0 test-85Mhz
13/0.2 (33700000 Hz) 15.4 0 1 0 test-85Mhz
13/0.3 (30500000 Hz) 15.4 0 0 1 test-85Mhz
CASA-C100G#show cable modem summary total | include 13/0
Upstream Total Active Registered Secondary Offline Bonding Non_Bonding Channel
Interface Modems Modems Modems Modems Modems Modems Modems Description
13/0.0/0 0 0 0 0 0 0 0 test-85Mhz
13/0.1/0 0 0 0 0 0 0 0 test-85Mhz
13/0.2/0 1 1 1 0 0 1 0 test-85Mhz
13/0.3/0 0 0 0 1 0 0 0 test-85Mhz
(attached screenshot)
the following is the configuration that I am using, recommended by kwesibrunee
CASA-C100G#show load-balance running-config
!
!
! load balance commands
!
load-balance enable
load-balance permit dbc-chg-prim-ds
cable tag extendedUpstream
priority 1
tlv ext-upstream-freq-range 1
cable tag normal
priority 2
tlv ext-upstream-freq-range 0
load-balance basic-rule 1
enable
load-balance execution-rule 1
method modem
method utilization dynamic
threshold load 2 enforce 10 minimum 2 dynamic minimum 15
interval 30
suspicious-channel retry interval 300
load-balance policy 1
cable tag normal disable
rule execution 1
rule basic 1
load-balance policy 2
cable tag extendedUpstream disable
rule execution 1
rule basic 1
load-balance general-group default-settings
policy-id 1
initial-tech period-ranging
enable
load-balance restricted-group 1
docsis-mac 1
policy-id 2
enable
qam 0/0/0
qam 0/0/1
qam 0/0/2
qam 0/0/3
qam 0/0/4
qam 0/0/5
qam 0/0/6
qam 0/0/7
qam 0/0/8
qam 0/0/9
qam 0/0/10
qam 0/0/11
qam 0/0/12
qam 0/0/13
qam 0/0/14
qam 0/0/15
qam 0/0/16
qam 0/0/17
qam 0/0/18
qam 0/0/19
qam 0/0/20
qam 0/0/21
qam 0/0/22
upstream 13/0.2/0
upstream 13/0.3/0
load-balance restricted-cm 1
cable tag normal
restricted-load-balance-group 1
Please help me what I need to add in the cmts or docsis file for it to work
From your description, it sounds like this modem does not support TLV 21 and TLV 5.20, even though it supports up to 85 MHz
TLV 21 is the TLV that CMTS uses to tell the modem what diplexers the CMTS supports, if the modem supports it, it responds with TLV 5.20 which says what it supports. The config I gave you uses TLV 5.20 to mark modems that are ok to move to > 42 MHz.
Your modem supports 85 MHz but if it does not communicate it with CMTS this method won't help. You may see if Ubee has a software fix to add this functionality
list output of
show version
show interface docsis-mac [mac] | in diplexer
for relevant docsis mac
and
show cable modem | in Diplexer
If for some reason this modem does not support TLV 55, you will have to use the Attribute Mask method with 1 attribute mask for channels > 42 MHz
then on your >42 MHz channels you put the mask.
In your modem configs any modem that is not 85 Mhz capable you add the >42 Mhz attribute mask as forbidden to upstream.
Hi
To use the Attribute Mask Method I need know the correct VendorIdentifier of the cable modem
How can capture VendorIdentifier of the cable modem to assign the correct mask according to whether the modem is 5 - 42Mhz or 5 - 85Mhz
This is an example:
VendorSpecific
{
VendorIdentifier 0xffffff;
CMAttributeMasks
{
CMUpstreamForbiddenAttributeMask 0x0000000f;
}
}
Please help me to use this method in the best way
> To use the Attribute Mask Method I need know the correct VendorIdentifier of the cable modem
No, this is not a vendor specific command.
Its a generic command and you must use VendorIdentifier 0xffffff;
Hi
In my network I have different models of Cable Modem:
Cisco DPC3825 (5-42MHz)
Motorola SBG6580 (5-42MHz)
ARRIS SBG6782-HH (5-42MHz)
I am testing now with a modem Brand: Ubee, Model: EVW3226 (5 - 85 Mhz).
I use the same docsis file for a Modem group that has the same assigned bandwidth, how to differentiate in that same docsis file and assign a mask to those that support 5 - 42Mhz and a different mask to those of 5 - 85Mhz, the same file will be shared for modem (5 - 42Mhz) and (5 - 85Mhz).
how can this be done?
You would need to have at least 2 separate files, one for 0-42 MHz and one for 0-85 MHz
In your dhcp server you would need to assign the modem the right file based on its model.
if you use dhcpd this can be done like so:
# Map option 43 values for Docsis modems
option space vendorOptions;
option vendorOptions.deviceType code 2 = string;
option vendorOptions.serialNumber code 4 = string;
option vendorOptions.hardwareVersion code 5 = string;
option vendorOptions.softwareVersion code 6 = string;
option vendorOptions.bootRomVersion code 7 = string;
option vendorOptions.oui code 8 = string;
option vendorOptions.modelNumber code 9 = string;
option vendorOptions.docsisVendor code 10 = string;
option vendorOptions-pkt code 43 = encapsulate vendorOptions;
then in your subnet declaration add the following items replace EVW3226 with the modelName that the modem actually sends you can add
log (info, options vendorOptions.modelName);
to see the model name that is coming in, in DHCPs log, or use something like wireshark to see the incoming packet.
if (options vendorOptions.modelName = "EVW3226") {
filename = "somespeed5_85.bin";
option bootfile-name = "somespeed5_85.bin";
} else {
filename = "somespeed.bin";
option bootfile-name = "somespeed.bin";
}
my dhcpd.conf would have the following configuration, adding the recommended to the configuration that I have applied:
ddns-update-style none;
authoritative;
# option definitions common to all supported networks...
log-facility local0;
option space docsis-mta;
option docsis-mta.dhcp-server-1 code 1 = ip-address;
option docsis-mta.dhcp-server-2 code 2 = ip-address;
option docsis-mta.provision-server code 3 = { integer 8, string };
option docsis-mta.as-req-as-rep-1 code 4 = { integer 32, integer 32, integer 32 };
option docsis-mta.as-req-as-rep-2 code 5 = { integer 32, integer 32, integer 32 };
option docsis-mta.krb-realm-name code 6 = string;
option docsis-mta.tgs-util code 7 = integer 8;
option docsis-mta.timer code 8 = integer 8;
option docsis-mta.ticket-ctrl-mask code 9 = integer 16;
option docsis-mta-pkt code 122 = encapsulate docsis-mta;
option docsis-mta.dhcp-server-1 169.158.285.7;
option docsis-mta.provision-server 0 "\003ert\003com\002co\000";
option docsis-mta.krb-realm-name "\005BASIC\0011\000";
################################################################
## add these lines
# Map option 43 values for Docsis modems
option space vendorOptions;
option vendorOptions.deviceType code 2 = string;
option vendorOptions.serialNumber code 4 = string;
option vendorOptions.hardwareVersion code 5 = string;
option vendorOptions.softwareVersion code 6 = string;
option vendorOptions.bootRomVersion code 7 = string;
option vendorOptions.oui code 8 = string;
option vendorOptions.modelNumber code 9 = string;
option vendorOptions.docsisVendor code 10 = string;
option vendorOptions-pkt code 43 = encapsulate vendorOptions;
################################################################
# Cable Modem Class
class "CM" {
# only match if first 6 chars of option 61 are docsis
match if (substring(option vendor-class-identifier,0,6) = "docsis");
spawn with hardware;
}
# Match MTAs that Identify themselves as pktc
class "MTA" {
match if (substring(option vendor-class-identifier,0,5) = "pktc1");
spawn with hardware;
}
# Match Clients as determined by option 61
class "CPE" {
match if ((substring(option vendor-class-identifier,0,6) != "docsis") and (substring(option vendor-class-identifier,0,4) != "pktc"));
spawn with hardware;
}
shared-network CMTS1 {
next-server 169.158.285.7;
subnet 10.8.0.0 netmask 255.255.0.0 {
option domain-name-servers 169.158.285.7, 8.8.8.8, 4.2.2.2;
option routers 10.8.0.1;
pool {
range 10.8.0.2 10.8.200.254;
deny members of "MTA";
deny members of "CPE";
allow members of "CM";
option time-offset -18000;
option host-name = host-decl-name;
option domain-name "codinet.net.co";
option domain-name-servers 169.158.285.7, 8.8.8.8, 4.2.2.2;
default-lease-time 604800;
max-lease-time 604800;
option log-servers 169.158.285.7;
option time-servers 169.158.285.7;
next-server 169.158.285.7;
option docsis-mta.dhcp-server-1 169.158.285.7;
}
}
# CPE pool CMTS1
subnet 10.9.0.0 netmask 255.255.0.0 {
option domain-name-servers 169.158.285.7, 8.8.8.8, 4.2.2.2;
option routers 10.9.0.1;
next-server 169.158.285.7;
pool {
range 10.9.0.25 10.9.200.254;
deny members of "MTA";
deny members of "CM";
allow members of "CPE";
option domain-name-servers 169.158.285.7, 8.8.8.8, 4.2.2.2;
max-lease-time 604800;
min-lease-time 302400;
default-lease-time 604800;
next-server 169.158.285.7;
}
}
}
filename "sinservicio.cfg";
########### old configuration that I replace with the following where I use conditionals #################
group
{
next-server 169.158.285.7;
filename "25mb_down_3mb_up_4pc.cfg";
option bootfile-name "25mb_down_3mb_up_4pc.cfg";
host 10193_username_1 { hardware ethernet 1c:1b:68:9c:a3:0b; }
host 10098_username_2 { hardware ethernet 78:96:84:bf:a9:30; }
}
############################################################################
########### New configuration to assign the docsis file with the conditionals#############
group
{
next-server 169.158.285.7;
if (options vendorOptions.modelName = "EVW3226")
{
filename = "25mb_down_3mb_up_4pc_85Mhz.cfg";
option bootfile-name = "25mb_down_3mb_up_4pc_85Mhz.cfg";
}
else
{
filename = "25mb_down_3mb_up_4pc.cfg";
option bootfile-name = "25mb_down_3mb_up_4pc.cfg";
}
host 10193_username_1 { hardware ethernet 1c:1b:68:9c:a3:0b; }
host 10098_username_2 { hardware ethernet 78:96:84:bf:a9:30; }
}
# Local
subnet 169.158.285.0 netmask 255.255.255.128 {
}
########################################################
Please help me if this dhcpd.conf configuration works
Two things:
1. probably due to brevity, there is no match for class MTA, both subnets have MTA set to Deny not sure if this is by design, i.e. you have no voice service, since the EVW3226 is an eMTA modem....
2. There is no guarantee that Ubee has populated the modelName field with the exact string EVW3226 (note capitalization is important) I have seen vendors add all kinds of information in there like HW versions, build dates etc, as well as Weird capitalization i.e. eVW3226 you will need to check.
add the following to your Modem subnet
log (info, options vendorOptions.modelName);
this will output the modelName string to the dhcp log and you can verify that is the correct string for that modem.
alternatively you could do a packet capture with tcpdump and analyze it with wireshark and look at the DHCPDISCOVER and see what the modelName field is.
I use snmpwalk with oid: 1.3.6.1.2.1.1.1.0 to check modem model information
snmpwalk -v 2c -c public 10.8.128.63 1.3.6.1.2.1.1.1.0
iso.3.6.1.2.1.1.1.0 = STRING: "Ubee PacketCable 1.5 W-EMTA << HW_REV: 1.23; VENDOR: Ubee; BOOTR: PSPU-Boot(BBU) 1.0.19.28; SW_REV: 2.10; MODEL: EVW3226 >>"
With this information that results from snmpwalk I confirm that the modelName is EVW3226
Please confirm if it is valid to know the modelName With snmpwalk to use in dhcpd.conf
There is no definitive link between the two, though they usually match.
just add the log line and you will know for sure.
I don't have one of those modems.
Hi
I test adding the lines in my dhcpd.conf
log (info, options vendorOptions.modelName);
if (options vendorOptions.modelName = "EVW3226") {
filename = "somespeed5_85.bin";
option bootfile-name = "somespeed5_85.bin";
} else {
filename = "somespeed.bin";
option bootfile-name = "somespeed.bin";
}
have these errors in the log:
Mar 27 08:53:50 dhcp dhcpd: Configuration file errors encountered -- exiting
Mar 27 08:53:50 dhcp dhcpd: Internet Systems Consortium DHCP Server 4.2.4
Mar 27 08:53:50 dhcp dhcpd: Copyright 2004-2012 Internet Systems Consortium.
Mar 27 08:53:50 dhcp dhcpd: All rights reserved.
Mar 27 08:53:50 dhcp dhcpd: For info, please visit https://www.isc.org/software/dhcp/
Mar 27 08:53:50 dhcp dhcpd: /etc/dhcp/dhcpd.conf line 243: right parenthesis expected.
Mar 27 08:53:50 dhcp dhcpd: log (info, options vendorOptions.
Mar 27 08:53:50 dhcp dhcpd: ^
Mar 27 08:53:50 dhcp dhcpd: /etc/dhcp/dhcpd.conf line 245: expecting right paren.
Mar 27 08:53:50 dhcp dhcpd: if (options vendorOptions.
Mar 27 08:53:50 dhcp dhcpd: ^
Mar 27 08:53:50 dhcp dhcpd: /etc/dhcp/dhcpd.conf line 245: expecting a declaration
Mar 27 08:53:50 dhcp dhcpd: if (options vendorOptions.
Mar 27 08:53:50 dhcp dhcpd: ^
Mar 27 08:53:50 dhcp dhcpd: /etc/dhcp/dhcpd.conf line 248: expecting a declaration
Mar 27 08:53:50 dhcp dhcpd: } else
Mar 27 08:53:50 dhcp dhcpd: ^
Mar 27 08:53:50 dhcp dhcpd: Configuration file errors encountered -- exiting
Please help me to correct the errors in Configuration file
attached dhcpd.conf file that I am using
thanks for your help
try replacing your log line
log (info, options vendorOptions.modelName);
with these two...
set model = option vendorOptions.modelNumber;
log (info, model);
The Log line may need to go in a subnet declaration (that's where I have mine)
Hi
adding the following lines with the modification, I have no errors when I restart the DHCP
in the conditional replace vendorOptions.modelName with vendorOptions.modelNumber
set model = option vendorOptions.modelNumber;
log (info, model);
if (option vendorOptions.modelNumber = "EVW3226") {
filename = "somespeed5_85.bin";
option bootfile-name = "somespeed5_85.bin";
} else {
filename = "somespeed.bin";
option bootfile-name = "somespeed.bin";
}
How do I know the vendorOptions.modelNumber of the cable modem ?
you need to tail the dhcp logs...
typically
tail -f /var/log/dhcpd.log
Mar 31 00:19:06 midmodem dhcpd: DHCPREQUEST for 10.101.175.123 from 2c:99:24:8d:ce:c3 via 10.1.0.1
Mar 31 00:19:06 midmodem dhcpd: DHCPACK on 10.101.175.123 to 2c:99:24:8d:ce:c3 via 10.1.0.1
Mar 31 00:19:06 midmodem dhcpd: C7000v2
That last line will be what your looking for, where it has the model string, in this case it would be C7000v2