KT GiGAWire Multi-VBD Support
We, at iOrchard, are developing the cloud-based VBCE management system. While developing, there are some problems with the data files in VBCE report directory as below.
Problem 1. No support for multi-VBD data
The current directory heirarchy only supports one VBD data since portGhn_<mac> file is in the top directory.
if <mac> in VBD1 is the same as <mac> in VBD2, VBD1 and VBD2 will overwrite to the same file - very dangerous.
Problem 2. No way to know Domain Master(DM)-EndPoint(EP) pairs
With data files in measures directory, there is no way to know which DM port links to which EP port.
I know I can find out the pairs if I connect to the console but I want to know the pairs using only data files. I want to show each link in management system.
So I’m asking for your help to change directory heirarchy in data directory as follows.
Desired Directory Heirarchy for Cloud VBCE
report_engine is the top directory to store VBD, VBCE data files.
Here is the current heirarchy.
report_engine/
vbDriverStatus_<driver_id> (f)
vbEngineStatus_<driver_id> (f)
vbDriverVersion_<driver_id> (f)
vbEngineVersion (f)
portGhn_<mac> (f)
measures/ (d)
<YYYY_MM_DD_Time_HH_mm_ss>/ (d)
Measures_Device_MAC_<mac>.csv (f)
And this is the new heirarchy I suggest.
report_engine/
vbDriverStatus_<driver_id> (f)
vbEngineStatus_<driver_id> (f)
vbDriverVersion_<driver_id> (f)
vbEngineVersion (f)
<driver_id>/ (d)
portGhn_<mac> (f)
measures/ (d)
<YYYY_MM_DD_Time_HH_mm_ss>/ (d)
Measures_Device_MAC_<mac>.csv (f)
- (f): file
- (d): directory
With this heirarchy, we can distinguish every VBD data and there is no overwriting files since VBD <driver_id> directory is under the top directory and every data will be written under <driver_id>.
You guys can suggest the better heirarchy as you know better than me.
How to know DM-EP pairs
For the 2nd problem, you can put a pair information in measures data file.
Here is the current measure data file.
Measures_Device_MAC_00_13_9D_10_00_01.csv
MAC Measurer: 00 13 9D 10 00 01
First Carriers: 73
Spacing: 1
Flags: 0
MIMO Ind: 0
CFR 70 30 5D 20 BA 9D; MIMO Ind 0
CFR 70 30 5D 1F BC 28; MIMO Ind 0
bgn rx1 49;cfr own rx1 48;cfr xtalk rx1 80;
Just put EP info there like this.
EndPoint: 70 30 5D 1F BC 28
Then, we can parse that data and we know DM-EP relationship.
Again, I think you have the better idea on this, too. Let me know your thoughts and share the idea.
Problem 3. vb_engine.ini is not structured to support multi-VBD
This is the current vb_engine.ini structure.
--- begin vb_engine.ini snip ----
<DriversList>
<Driver>
<IP>125.158.129.18</IP>
<Port>40011</Port>
</Driver>
</DriversList>
<UserProfiles>
<UserProfile>
<MAC>AA:BB:CC:DD:EE:FF</MAC>
<SLAName>SLAHighPrio</SLAName>
<Weight>1</Weight>
</UserProfile>
</UserProfiles>
--- end vb_engine.ini snip ---
The problem is there is no way to support multi-VBD with this xml structure. UserProfiles should be inside of Driver xml node to support multi-VBD.
My suggestion is like below.
--- begin suggested vb_engine.ini snip ----
<DriversList>
<Driver>
<IP>125.158.129.18</IP>
<Port>40011</Port>
<UserProfiles>
<UserProfile>
<MAC>AA:BB:CC:DD:EE:FF</MAC>
<SLAName>SLAHighPrio</SLAName>
<Weight>1</Weight>
</UserProfile>
</UserProfiles>
</Driver>
</DriversList>
--- end suggested vb_engine.ini snip ---
In this way, each Driver can has UserProfiles in multi-VBD environment.
Thanks,
Heechul Kim @iOrchard.