Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FAQ proposals (WIP) #4

Open
emigenix opened this issue Jun 15, 2017 · 0 comments
Open

FAQ proposals (WIP) #4

emigenix opened this issue Jun 15, 2017 · 0 comments

Comments

@emigenix
Copy link
Contributor

This thread is for proposing new FAQ's.

Please focus on specific questions pertaining to development.
(Avoid general general about what it does and what's LTE etc.)

As this issue progress, they will be added to our Wiki.


Q: What detection methods do you plan to use?

A: The detection methods will essentially be the same as previous project,
but with the greatest difference that they will actually work and be much
easier to implement and understand. The reason for this is that each
detection test (DT-n) will be made as a separate "module" and thus
free-standing. That way it is very easy to implement and test and will
not affect other modules. In addition, it allows us to work in parallel
on several tests and can implement pretty much any method we want. We
are open also for new ideas, not already covered. To be able to make
this happen we have changed the DB structure. Here you can find:

Detection Tests
DB Structure

Q: How are the detections performed?

A: The collector services continuously populate the DB with network measurements.
These measurements are then queried directly by SQL statements inside each test
module, called DT-1, DT-2 to DT-n. Where n is the number of each test.
The results of each query is then used in the analyzer loop and given a detection
score. When the sum of all scores reach a threshold a detection flag raised. That
is, one of the colored antenna symbols are shown as an alert.

Q: How can I help implement a new detection?

A: You first check that the detection doesn't already exist in our
Detection Table list.
If it does exists, you check it's status and related issues and join
the discussion from there, if you have something important to add.
If it does not exists, you first create a new issue
labeled Detection: <what it does>. Here you try to describe in as much
detail you can, how the test works and how it helps detect fake base
stations. You can be as technical as you like, but try to be pedagogic
to allow other programmer understand how it work. Then, unless the test
is of trivial nature (which is very unlikely) we want you to accompany
the issue OP with a picture of a flow-chart describing the test you
propose. Once, we are all confident it will work..

You clone the repo, and under the /detect/ directory, you copy the file
called DT-n_template.java to DT-n.java. Then you go to the analyzer and
add your new test to the test loop, labeled ADD NEW Detection Tests HERE.
Of course you need to check and make sure the n you choose doesn't already
exist in our Detection Table. Once you feel this is working, you make
sure you have thoroughly documented the detection, and preferably accompanied
it with a flow chart picture. Once you got this, you make a PR with your new
code and wait for our wetting and test team to accept or reject the new test.


Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant