Thursday, September 14, 2017

What is machine learning?


Machine learning is automated extraction of knowledge from Data. It is the way to automate your existing workflows with old mathematics theorem. At the end Machine Leaning is nothing but a programmatic way to solve any kind of problem.

The problem can be of predicting house prices, recognizing people from their photos, checking which interfaces of router will go down, predicting that the router link will be chocked, finding sales number basis on the investment etc.

As per Andrew NG from Coursera “The complexity in traditional computer programming is in the code (programs that people write). In machine learning, learning algorithms are in principle simple and the complexity (structure) is in the data. Is there a way that we can automatically learn that structure? That is what is at the heart of machine learning.

Types of Machine Learning
Supervised learning is also known as predictive modeling, is process of making predictions using data. It can apply what has been learned in the past to new data using labeled examples to predict the future events. The learning algorithm can also compare its output with the correct, intended output and find errors in order to modify the model accordingly. You make predictions of new data for which you don’t know the true outcomes. E.g. If dataset is email messages and by using predictive learning we will find out whether the particular email is spam or not.

Unsupervised learning is process of extracting structure from data or learning how to best represent the data. Unsupervised machine learning algorithms are used when the information used to train is neither classified nor labeled. Unsupervised learning studies how systems can infer a function to describe a hidden structure from unlabeled data. The system doesn’t figure out the right output, but it explores the data and can draw inferences from datasets to describe hidden structures from unlabeled data.


Click Here To Read Rest Of The Post...

Saturday, March 25, 2017

Different ways to mitigate DDOS Attack


DDoS is aka Distributed Denial of Service. It is type of attack where multiple Trojan infected systems are used to target a single system causing a Denial of Service (DoS) attack. Victims of a DDoS attack consist of both the end targeted system and all systems maliciously used and controlled by the hacker in the distributed attack.

How to mitigate DDOS attack?
There are couple of options available which are used to mitigate the DDOS attack like as below mentioned:-
1. Source Rate Limiting and Filtering
2. Limiting the total number of connections
3. Syn Proxy
4. RTBH

Options from 1 to 3 are used to reduce the impact and RTBH is used to completely drop the traffic for the targeted destination address. This can be achieved either at Customer Premises or at Service Provider Edge location by forwarding all the traffic for desired destination towards the null route. The main disadvantage of RTBH is that the entire traffic has to be dropped. What does it mean that if the server is hosting port 80 and port 53 application and DDOS attack is only for port 53 in that case the entire port 80 and 53 traffic has to be dropped. This may impact the services of port 80 also even though the traffic is not destined for port 80. But this will help service providers or customers to get rid from DDOS attack or to mitigate it.

In the next post, I will be sharing more details on BGP Flow Specs to control the DDOS attacks in more dynamic way. This is what could be the next or new approach after RTBH.

Click Here To Read Rest Of The Post...

Monday, October 17, 2016

Validating IP Address By Using Python (Conditional Statement)


Splitting IP Address string variable post defines the normal way how to deal with the variables and splitting them into different items. The same splitting can be used by using conditional statement if-else with while loop. This provides more simplicity for network engineers to shorten the python code.

Syntax of If-Else Statement:
if expression:
  statement(s)
elif:
  statement(s)
else
  statement(s)

If expression is FALSE, in that case complier will move to the ELIF part. If ELIF becomes false also, the compiler will execute else block. The elif statement allows you to check multiple expressions for TRUE and execute a block of code as soon as one of the conditions evaluates to TRUE.

while True:
  ip_address = raw_input("Enter IP Address")
  ip_address_check = ip_address.split('.')

  if (len(ip_address_check) == 4) and (1 <= int(ip_address_check[0]) <= 223) and (int(ip_address_check[0]) != 127) and (int(ip_address_check[0]) != 169 or int(ip_address_check[1]) != 254) and (0 <= int(ip_address_check[1]) <= 255 and 0 <= int(ip_address_check[2]) <= 255 and 0 <= int(ip_address_check[3]) <= 255):
  break

  else:
  print "\nThe IP address is INVALID! Please retry!\n"
  continue

print "Shivlu Jain It's Good to go with the given IP Address"

For more info on programming skill read Do I need to be programmer before learning Automation, SDN and NFV technologies?

Click Here To Read Rest Of The Post...