소스 검색

Added Channel Assignment (TLV 56).

AdrianSimionov 11 년 전
부모
커밋
aad1e73219
4개의 변경된 파일54개의 추가작업 그리고 1개의 파일을 삭제
  1. 21 0
      examples/docsis3.0_ChannelAssignment.cfg
  2. 27 0
      examples/docsis3.0_ChannelAssignment.txt
  3. 1 1
      src/docsis_common.h
  4. 5 0
      src/docsis_symtable.h

+ 21 - 0
examples/docsis3.0_ChannelAssignment.cfg

@@ -0,0 +1,21 @@
+Main { /* this is a comment */
+NetworkAccess 1;
+/* this is a comment */
+UsServiceFlow {
+  UsServiceFlowRef 1;
+  QosParamSetType 7;
+}
+/* this is a comment */
+DsServiceFlow {
+  DsServiceFlowRef 2;
+  QosParamSetType 7;
+}
+ChannelAssignmentConfig { /* this is a comment */
+  CaTransmit 1;
+  CaTransmit 10;
+  CaReceive 410000000;
+  CaReceive 418000000;
+  CaReceive 426000000;
+  CaReceive 434000000;
+}
+}

+ 27 - 0
examples/docsis3.0_ChannelAssignment.txt

@@ -0,0 +1,27 @@
+Main 
+{
+	NetworkAccess 1;
+	UsServiceFlow
+	{
+		UsServiceFlowRef 1;
+		QosParamSetType 7;
+	}
+	DsServiceFlow
+	{
+		DsServiceFlowRef 2;
+		QosParamSetType 7;
+	}
+	ChannelAssignmentConfig
+	{
+		CaTransmit 1;
+		CaTransmit 10;
+		CaReceive 410000000;
+		CaReceive 418000000;
+		CaReceive 426000000;
+		CaReceive 434000000;
+	}
+	/* CmMic 95760f70759e16e320ad0a9162c05eef; */
+	/* CmtsMic 7b44894ccec0ef4dbd6a539f5c90666a; */
+	/*EndOfDataMkr*/
+	/* Pad */
+}

+ 1 - 1
src/docsis_common.h

@@ -31,7 +31,7 @@
 
 
 #ifndef NUM_IDENTIFIERS
-#define NUM_IDENTIFIERS 187
+#define NUM_IDENTIFIERS 190
 #endif /*  NUM_IDENTIFIERS, needed in docsis_symtable.h  */
 
 #define MAXINT 2000000000

+ 5 - 0
src/docsis_symtable.h

@@ -275,6 +275,11 @@ symbol_type symtable[NUM_IDENTIFIERS] =  {
 { 183,  "ConnectionRequestPassword",  6,    177,  (encode_string),   (decode_string),     0,  0    },
 { 184,  "ACSOverride",                7,    177,  (encode_uchar),    (decode_uchar),      0,  1    },
 
+/* Channel Assignment Configuration Settings per Docsis3.1 CM-SP-MULPIv3.1-I01-131029 Annex C C.1.2.15 */
+{ 185,  "ChannelAssignmentConfig",    56,   0,    (encode_nothing),  (decode_aggregate),  0,         0          },
+{ 186,  "CaTransmit",                 1,    185,  (encode_uchar),    (decode_uchar),      0,         255        },
+{ 187,  "CaReceive",                  2,    185,  (encode_uint),     (decode_uint),       88000000,  860000000  },
+
 /* Generic TLV ... we only use the limits, code and length don't matter ...*/
 { 998, "GenericTLV",           		0, 0,     (encode_nothing),   (decode_special),  0,        0        },
 { 999, "/*EndOfDataMkr*/",     		255, 0,   (encode_nothing),   (decode_special),  0,        0          }