Saturday, 23 August 2014

OSI/ISO network management model- FCAPS

We know about OSI seven layer model and  TCP/IP layers, but only few knows about another model which is known as OSI/ISO network management model or the FCAPS model.

FCAPS stands for fault, configuration, accounting, performance and security. These are the five management areas and were initially defined as ISO standard which later got changed into ITU-T standard known as TMN recommendation on Management Functions (M.3400) and can be found at

http://www.itu.int/rec/T-REC-M.3400-200002-I/en

Brief explanation on these functions :

Fault management— Detect, isolate, notify, and correct faults encountered in the network.

 Configuration management— Configure aspects of network devices, such as configuration file management, inventory management, and software management.

 Accounting management— Collect usage information of network resources.

  Performance management— Monitor and measure various aspects of performance so that overall performance can be maintained at a defined level.

    Security management— Secure access to network devices, network resources, and services to authorized individuals.



Ref : Wiki, etutorials.org

Sunday, 20 July 2014

How to enable DHCP RELAY option 82 on Cisco DHCP Server ?


Option 82 is defined in RFC : 3046 (https://tools.ietf.org/rfc/rfc3046.txt) . It is DHCP Relay Agent Information Option, which includes sub-options "Agent Circuit ID Sub-option" and "Agent Remote ID Sub-option" .

How DHCP Relay works


DHCP Server -----DHCP Relay -------DHCP Client

1) DHCP Client send DHCPOFFER as broadcast packet to DHCP Relay.

2) DHCP Relay knows DHCP Server Ip address, it increments HOP=1, and add DHCP Relay agent address ( its own LAN side IP) and send Unicast packet to DHCP Server

3) DHCP Server understands that its a packet from Relay , sends DHCPOFFER back to Relay agent as unicast packet.

4) DHCP OFFER is forwarded to DHCP Client by Relay.

5) DHCPREQUEST from Client and DHCP-ACK from Server follows the same path as above.

6) DHCP Client is not aware of any DHCP-RELAY in between and the relay acts as if it is DHCP Server.

7) DHCP-Relay is in routing mode , so the interfaces ip address are different.


Option 82

Option 82 is required if there are multiple DHCP Relay in between and each relay is to be assigned from a different pool of IP address. The IP address will be assigned based on Agent id and Circuit id which is to be defined properly in Server.

How to enable option 82 in Cisco DHCP Server

192.168.7.1 192.168.7.2 10.0.0.1
Cisco DHCP Server -----Fedora 11 Linux DHCP Relay -----Windows XP DHCP Client

In this setup we will see how we can enable option 82 in both Linux DHCP Relay agent and CISCO DHCP Server.

Linux DHCP Relay Configuration

1) Download and install latest dhcrelay rpm, I have used isc-dhcrelay-4.2.2rc1

2) Start dhcrelay be giving below command

dhcrelay -a -d -i eth1 -i eth2 192.168.7.1

The -a option enable option 82 in Linux DHCPRelay, open Wireshark and note down the value of Option 82.

Cisco DHCP Server Configuration for option 82

configure t
ip dhcp use class

ip dhcp class relay1
  relay agent information
     relay-information hex 01060240234*

ip dhcp pool pool1
  network 10.0.0.0 255.0.0.0
  default-gateway 10.0.0.1
  class relay1

     address range 10.0.0.10 10.0.0.20

ip route 10.0.0.0 255.0.0.0 192.168.7.2


The hex "01060240234*" information is the Value seen in option 82 of Client DHCPDISCOVER , bootp options. if you have multiple dhcp-relay in network you can add the  class, pool and static route to reach the specific relay and the DHCP server will assign the IP address range as per the RELAY agent configured range.

DHCP Client

ipconfig /release

ipconfig /renew

Client should get IP address 10.0.0.10


In Windows 2012 Server the option 82 can be matched against the option 82 value or with sub-options 
Agent id or Remote Circuit id.

Keep Learning , Keep Sharing!

Tuesday, 1 July 2014

Which parameter defines wireless client max idle timeout ?

Question : Once the wireless client is connected (authenticated and associated) to Access Point, if no data is passed between Client and AP, after how much time the connection will break or which parameter defines it?

Answer : This parameter is known as BSS Max Idle Period and is defined in 802.11 standard, 802.11-2012.pdf as:

The BSS Max Idle Period element contains the time period a non-AP STA can refrain from transmitting frames to the AP before the AP disassociates the STA due to inactivity.


The Max Idle Period field indicates the time period during which a STA can refrain from transmitting frames to its associated AP without being disassociated. The Max Idle Period field is a 16-bit unsigned integer. The time period is specified in units of 1000 TUs. The value of 0 is reserved. A non-AP STA is considered inactive if the AP has not received a data frame or management frame of a frame exchange sequence initiated by the STA for a time period equal to or greater than the time specified by the Max Idle Period field value.

The Idle Options field indicates the options associated with the BSS Idle capability.


The Protected Keep-Alive Required bit set to 1 indicates that the STA sends an RSN protected frame to the AP to reset the Idle Timer at the AP for the STA, as defined in 10.23.12. If the Protected Keep-Alive  Required bit is 0, the STA sends either an unprotected or a protected frame to the AP to reset the Idle Timer  at the AP.


The BSS Max Idle Period element is included in Association Response frames and  Re-association Response frames.


For hostapd we can define it using parameter  ap_max_inactivity=300


# Station inactivity limit

#
# If a station does not send anything in ap_max_inactivity seconds, an
# empty data frame is sent to it in order to verify whether it is
# still in range. If this frame is not ACKed, the station will be
# disassociated and then deauthenticated. This feature is used to
# clear station table of old entries when the STAs move out of the
# range.
#
# The station can associate again with the AP if it is still in range;
# this inactivity poll is just used as a nicer way of verifying
# inactivity; i.e., client will not report broken connection because
# disassociation frame is not sent immediately without first polling
# the STA with a data frame.
# default: 300 (i.e., 5 minutes)
#ap_max_inactivity=300


In Cisco Wireless LAN controller , this field is "User idle Timeout"

The User Idle Timeout: When a user is idle without any communication with the LAP for the amount of time set as User Idle Timeout, the client is de-authenticated by the WLC. The client has to reauthenticate and  reassociate to the WLC. It is used in situations where a client can drop out from its associated LAP without notifying the LAP. This can occur if the battery goes dead on the client or the client associates move away.

Monday, 23 June 2014

Short Introduction of IETF/IEEE/ITU/FCC/Wi-fi

IETF :

The IETF's official products are documents, published free of charge as RFCs. "RFC" stands for Request for Comments, and this name (used since 1969, before the IETF existed) expresses something important: the Internet is a constantly changing technical system, and any document that we write today may need to be updated tomorrow.

One way to look at the IETF is as the group of people who work together to improve the technology of the Internet on a daily basis. As well as producing RFCs, the IETF is a forum where network operators, hardware and software implementers, and researchers talk to each other to ensure that future protocols, standards and products will be even better. This is not the only technical forum for the Internet, of course. But it is the forum where the basic technical standards for Internet protocols are set and maintained.

The IETF does not standardize transmission hardware (we leave that to organizations like the IEEE and the ITU) and does not standardize specialized application layer protocols. For example, we leave HTML and XML standards to the World-Wide Web Consortium. But the IETF does standardize all the protocol layers in between, from IP itself up to general applications like email and HTTP.

http://www.ietf.org/newcomers.html

List of RFC created by IETF:

http://www.rfc-editor.org/rfc-index2.html

ITU (International Telecommunication Union)

The ITU comprises three sectors, each managing a different aspect of the matters handled by the Union, as well as ITU Telecom. The sectors were created during the  restructuring of ITU at its 1992 Plenipotentiary Conference. Radiocommunication (ITU-R) managing the international radio-frequency spectrum and satellite orbit resources is at the heart of the work of the ITU Radiocommunication Sector (ITU-R).

Standardization (ITU-T)
Standardization was the original purpose of ITU when it was founded. This sector remains responsible global telecommunications standards, except for radio.Prior to 1992 it was known as the International Telephone and Telegraph Consultative Committee or CCITT (from its French name "Comité consultatif international téléphonique et télégraphique").

Development (ITU-D)
Established to help spread equitable, sustainable and affordable access to information and communication technologies (ICT).

ITU TELECOM

ITU Telecom organizes major events for the world's ICT community.

Search  List of ITU-T standards:

http://www.itu.int/ITU-T/recommendations/index.aspx

H.323

http://www.itu.int/ITU-T/recommendations/rec.aspx?rec=H.323


IEEE


IEEE's Constitution defines the purposes of the organization as "scientific and educational, directed toward the advancement of the theory and practice of Electrical, Electronics, Communications and Computer Engineering, as well as Computer Science, the allied branches of engineering and the related arts and sciences."

 In pursuing these goals, the IEEE serves as a major publisher of scientific journals and organizer of conferences, workshops, and symposia (many of which have associated published proceedings).

It is also a leading standards development organization for the development of industrial standards (having developed over 900 active industry technical standards) in a broad range of disciplines, including electric power and energy, biomedical technology and healthcare, information technology, information assurance, telecommunications, consumer electronics, transportation, aerospace, and nanotechnology.

IEEE develops and participates in educational activities such as accreditation of electrical engineering programs in institutes of higher learning.

All 802 standard are IEEE stadard and you can download it free through IEEE get program:

http://standards.ieee.org/about/get/802/802.11.html

FCC:

The Federal Communications Commission regulates interstate and international communications by radio, television, wire, satellite and cable in all 50 states,the District of Columbia and U.S. territories.

The FCC's rules and regulations are in Title 47 of the Code of Federal Regulations (CFR), which are published and maintained by the Government Printing Office. Title 47 Rules & Regulations are also available on the web in a searchable format. Part 15 of it defines rules and regulation for "RADIO FREQUENCY DEVICES". It covers regulations related to frequency, BW, max power of the intentional radiator, Max EIRP and type of devices (indoor and outdoor).

Rules and regulation can be found at:

http://www.ecfr.gov/cgi-bin/text-idx?

SID=5b4b39ebc249c57af9bcefbd1ca86fba&tpl=/ecfrbrowse/Title47/47cfr15_main_02.tpl



Wi-fi Alliance :

http://www.wi-fi.org/who-we-are

Wi-Fi Alliance Mission:

    Provide a highly-effective collaboration forum
    Grow the Wi-Fi industry
    Lead industry growth with new technology specifications and programs
    Support industry-agreed standards
    Deliver great product connectivity through testing and certification

About Wi-Fi Alliance®

Wi-Fi Alliance is a global non-profit industry association – our members are the worldwide network of companies that brings you Wi-Fi®. The members of our collaboration forum come from across the Wi-Fi ecosystem and share a vision of seamless connectivity. Since 2000, the Wi-Fi CERTIFIED™ seal of approval designates products with proven interoperability, industry-standard security
protections, and the latest technology. Wi-Fi Alliance has certified more than 18,000 products, delivering the best user experience and encouraging the expanded use of Wi-Fi products and services in new and established markets. Today, billions of Wi-Fi products carry a significant portion of the world’s data traffic in an ever-expanding variety of applications.


List of wifi certified products:

http://www.wi-fi.org/certified-products-results?category=3&ga_category=Access

+Point+for+Home+or+Small+Office+%28Wireless+Router%29

Reference: Respective official sites

Tuesday, 15 April 2014

How to untar/extract a tar.bz2/tar/tar.gz file

To untar/extract a file with different type of extensions , we need to use slightly different options:

1) .tar.bz2
 
            tar -jxvf xyz.tar.bz2
 
2) .tar
 
           tar -xf xyz.tar
 
3) .tar.gz
 
           tar -xzvf archive.tar.gz
 
4) .tar.bz
 
            tar -xzvf archive.tar.bz

 

Thursday, 10 April 2014

CALM, DSRC (Dedicated short-range communications) Standards-short Info

CALM: CALM stands for Communication Access for Land Mobile

CALM enables the following communication modes:

  • Vehicle-to-Infrastructure (V2I)
  • Vehicle-to-Vehicle (V2V)
  • Infrastructure-to-Infrastructure (I2I)

Methods of transmission used by CALM can be any one of these :      

·         Infrared

·         GSM

·         DSRC 5.8-5.9 GHz (legacy systems)

·         IEEE 802.11 standard

·         Bluetooth

·         RFID

DSRC:  Dedicated short-range communications

DSRC :One-way or two-way short-range to medium-range wireless communication channels specifically designed for automotive use, it consists of a collection of standards for all OSI layers and still some are in review phase


    EN 12253:2004 :Physical layer using microwave at 5.8 GHz
    EN 12795:2002 :DSRC Data link layer: Medium Access and Logical Link Control
    EN 12834:2002 :Application layer
    EN 13372:2004 :DSRC profiles for RTTT applications
    EN ISO 14906:2004:Application interface


Background:
In October 1999: FCC: allocated 75 MHz of spectrum in the 5.9 GHz band to be used by intelligent transportation systems (ITS).
In August 2008: ETSI allocated 30 MHz of spectrum in the 5.9 GHz band for ITS.

V2I (Vehicle-to-Infrastructure)

·         Two intersection RSE messages enable a suite of intersection-related safety applications.

·         SPaT message - Signal Phase and Timing

·         MAP message – Intersection geometry

·         Other RSEs can send Traveler Information message on curve speed, height restriction, icy roads, etc.

·         IP data exchange with servers in the Internet – RSE acts as forwarder

V2V(Vehicle-to-Vehicle)

·         Each vehicle broadcasts its core state information in a “Basic Safety Message” (BSM) nominally 10 times/sec.

·         BSM is sent in 360o pattern using IEEE 802.11p technology.

·         Upon receipt of BSM, vehicle safety host builds model of each neighbor’s trajectory, assesses threat to host vehicle, warns driver (or takes control) if threat becomes acute.



Ref:      

http://en.wikipedia.org/wiki/Dedicated_short-range_communications

http://en.wikipedia.org/wiki/Communications,_Air-interface,_Long_and_Medium_range

DSRC ppt from https://mentor.ieee.org

Saturday, 8 February 2014

Powerful Ping command (Linux and Windows Ping)

Ping command is the first step or basic command in networking. It has many options which many people are not aware.

Also the ping command options differ in Linux and Windows.

To ping host 10.0.0.1 , 100 packets with packet size 1100 bytes ,DF bit set, TTL value 32, TOS value as 252, timeout to wait for each reply= 2 sec

we have to use the commands as :


=============================================================================
Windows : ping 10.0.0.1 -n count -l size -f -i TTL -v TOS -w timeout-in-msec

Linux : ping 10.0.0.1 -c count -s size -m dont -t ttl -Q tos -W timeout-in-sec

==============================================================================
Windows : ping 10.0.0.1 -n 100 -l 1100 -f -i 32 -v 252 -w 2000

Linux : ping 10.0.0.1 -c 100 -s 1100 -m dont -t 32 -Q 252 -W 2
=============================================================================






Other options in Windows:


   -t             Ping the specified host until stopped.
                  To see statistics and continue - type Control-Break;
                  To stop - type Control-C.

   -a             Resolve addresses to hostnames.
   -r count       Record route for count hops (IPv4-only).
   -s count       Timestamp for count hops (IPv4-only).
   -j host-list   Loose source route along host-list (IPv4-only).
   -k host-list   Strict source route along host-list (IPv4-only).
   -R             Use routing header to test reverse route also (IPv6-only).
   -S srcaddr     Source address to use.
   -4             Force using IPv4.
   -6             Force using IPv6.


Other options in Linux:

-a
    Audible ping.
-A
    Adaptive ping.
-b
    Allow pinging a broadcast address.
-B
    Do not allow ping to change source address of probes.
-d
    Set the SO_DEBUG option on the socket being used.

-F flow label
    Allocate and set 20 bit flow label on echo request packets.
-f
    Flood ping. For every ECHO_REQUEST sent a period ''.'' is printed, while for ever ECHO_REPLY received a backspace is printed.

-I interface address
    Set source address to specified interface address.

-l preload
    If preload is specified, ping sends that many packets not waiting for reply.
-L
    Suppress loopback of multicast packets. This flag only applies if the ping destination is a multicast address.
-n
    Numeric output only. No attempt will be made to lookup symbolic names for host addresses.

-p pattern
    You may specify up to 16 ''pad'' bytes to fill out the packet you send.
-q
    Quiet output. only summary lines at startup time and when finished.
-R
    Record route.
-r
    Bypass the normal routing tables and send directly to a host on an attached interface.

-S sndbuf
    Set socket sndbuf. If not specified, it is selected to buffer not more than one packet.

-T timestamp option
    Set special IP timestamp options.

-M hint
    Select Path MTU Discovery strategy. hint may be either do (prohibit fragmentation, even local one), want (do PMTU discovery, fragment locally when packet size is large), or dont (do not set DF flag).
-U
    Print full user-to-user latency (the old behaviour).
-v
    Verbose output.
-V
    Show version and exit.

-w deadline
    Specify a timeout, in seconds, before ping exits regardless of how many packets have been sent or received.

Wednesday, 8 January 2014

Driving in India , Hyderabad

My experience with car driving and lessons :

1) Main Aim of Driving: Reaching destinations safe and sound and in the process not getting hurt or hurting other people.

and its "NOT"

 Showing driving skill to unknown people
 Making world record for fastest driving
 

2) Don't Panic, if car stops in between.

3) Put hand brake, if it stopped in between and you or on uneven roads. The car should not go back.

4) Maintain safe distance with other vehicles including deadly combination of "L" vehicles and women drivers.

5) Night time, if car stops, put off the light and again start. Don't try switching on vehicle while its lights are on.

6) Try to drive in your lane , and check mirror , if changing lane.

7) Do not try to cross road in front of bus, they will not stop for you.

8) Parking time , be more careful not to hit other parked vehicles.

9) IF you can not see some (behind) vehicle means they are trying to overtake you, reduce your speed and let them go.

10) Motorcyclists and auto-wallas are like unwanted blessings, from where they will come its difficult to know so keep your ears and eyes open all the time.

11) Consider people crossing the road as people walking in the garden, either honk them to listen to you and allow you to cross, or reduce speed to let them cross.

12) Try not to use mobile, loud speaker music while driving, you will miss few living people, who are trying to get your attention in either provoking you to drive
fast or trying to overtake you.

13) Let other people go if they are impatient and honking continuously, you have more important work in your life than getting mad at these people.

14) If people indicator are still on while they are driving in straight road, judge on case to case basis, they forgot to switch it off or they actually want to get to the side.

15) Its a skill , master it, keep practicing.

16) Keep learning, Keep driving and never forget the "AIM" of driving.



Monday, 30 December 2013

Embedded Linux Basic tutorials

Recently i came across this series on "Getting Started with Embedded Linux" by Michael Eager.

Below are some of the points covered and its really nice tutorial to get started. The content is mostly from the original author and i have just added few points to make it more simpler for myself.


Part 1-> Learning linux for embedded systems

Install Linux

a) Use a separate Linux PC

b) Make your desktop dual boot, with Windows and Linux

c) Use VMware to install virtual machine environment in your existing Windows desktop.

The author recommends the third approach, but if you have resources use first approach. It is always better to include one Linux PC in your existing setups.

Point to be noted :-)

I certainly do not recommend reading Linux source to try to learn how to program Linux. That's like trying to learn to drive by studying how a car's transmission works.


Part 2 : Getting Started with Embedded Linux



a) Open terminal window -> try these commands-> ls,cp, cd, pwd, cat, less, file, man , info, apropos , man apropos, find

b) Learn vi editor basic commands:
  vi filename, :i, :q, Esc y -> select 1 line, p-> paste 1 line, d->delete one line

You can learn more commands using below link:

http://www.cs.colostate.edu/helpdocs/vi.html

c) Hierarchical file system->
  •   root->/ -> starting point
  •   /proc ->process directory
  •  /boot -> contains boot program
  •  /bin and /sbin -> programs run by administrators
  •  /dev -> devices both real and virtual
  •   /etc -> system configuration file
  •   /home -> user files
  •   /sys -> system information
  •   /lib -> libraries
  •   /usr -> programs which can be run by users
  •   /tmp -> temporary files
  •   /var -> system logs
Additionally you can see following directories/files as well:
  •  /opt -> Other software and add-on packages that are not part of the default installation
  •  /srv -> site specific data
  • /mnt ->  Mount your filesystems
d) Process structure
  • Try ps various options -> list all processess-> ps alx, ps l, ps -l, ps alx | less
  • init -> Process ID 1 -> created by Linux kernel when system starts

Part 3 : Getting started with Embedded Linux


1) Understand
  • GCC : GNU compiler collection, Binutils: GNU Binary utils, make
  • IDE: Integrated developement environment like Eclipse
  • Text editors: vi, emacs,gedit, kwrite
2) Write first program,

[root@localhost]#vi hello.c

#include <stdio.h>

int main ()

{ printf("Hello World\n");
return 0;

}

3) Now compile the program

[root@localhost]#gcc -o hello -g -O1 hello.c

gcc : compiler used

-o filename : output file or executable file name

-g level : generate the debugging information ( capital alphabet O (optimized) level in digits 1)
            can be -O0 (for easy debugging alphabet O with digit 0)


4) If no error, run the program

[root@localhost]# ./hello
Hello World

5) If error , try to install the proper packages with

 yum install (for Fedora)


6) GDB: GNU debugger

[root@localhost ~]# gdb hello

GNU gdb (GDB) Fedora (6.8.50.20090302-21.fc11)
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i586-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
(gdb)
(gdb)
(gdb) break main
Breakpoint 1 at 0x80483bd: file hello.c, line 5.
(gdb) run
Starting program: /root/hello

Breakpoint 1, main () at hello.c:5
5       { printf ("Hello World\n");
Missing separate debuginfos, use: debuginfo-install glibc-2.10.2-1.i686
(gdb) cont
Continuing.
Hello World

Program exited normally.
(gdb) quit
[root@localhost ~]#

7) The compiler name and debugger name can be different, like
arm-none-eabi-gcc which generates the code for ARM using the EABI (Embedded application binary interface)


Part 4 :  Getting started with Embedded Linux


1) Recommended books/resources :
  • Advanced Programming in the UNIX Environment by W. Richard Stevens
  • The Linux Programming Interface by Michael Kerrisk.
  • http://stackoverflow.com/
  • http://www.fsf.org/
  • http://gnu.mirrors.pair.com/gnu/
  •  http://sourceforge.net/
  •  http://freecode.com/
  •  https://github.com/

2) Utilities : make, automake, autoconf, libtool, diffutils, wget
 
  •  make : checks which files need to be compiled ( Makefile) and manages order
  •  automake: generate Makefiles, identifying dependencies and invoking libtool (to create shared libraries
  • autoconf: libraries or programs to be compiled for different targets and OS
  • diffutils: package of several programs related to finding differences between files (diff, diff3, cmp, sdiff)
  • wget : utility for download of files from internet

3) Process

a) Download source files


[root@localhost ~]# wget ftp://ftp.gnu.org/gnu/diffutils/diffutils-3.3.tar.xz


b) Untar

[root@localhost ~]# tar xfv diffutils-3.3.tar.xz
[root@localhost ~]# cd diffutils-3.3


c) Read README file in the directory

d) Build the package

 [root@localhost ~]# ./configure
 [root@localhost ~]# make
 [root@localhost ~]# make install

 
Install to specific directory

 [root@localhost ~]#./configure --prefix=~/mydiff


Part 5 : Getting started with Embedded Linux


For part 5 I recommend you to read the original content

http://www.embedded.com/electronics-blogs/open-mike/4425954/Getting-started-with-Embedded-Linux--Part-Five

Ref :

http://www.linuxtopia.org/online_books/linux_beginner_books/linux_filesystem/opt.html

Ref : http://www.embedded.com/electronics-blogs/4420670/Open-Mike

About the author of these articles:


Michael Eager


Michael Eager is principal consultant at Eager Consulting in Palo Alto, Calif.  He has over four decades experience developing compilers, debuggers, and simulators for a wide range of processor architectures used in embedded systems. His current and former clients include major semiconductor companies and systems developers. Michael has been a member of the ISO C++ Standard Committee and ABI Committees for several processor architectures. He is chair of the Debugging Standards Committee for DWARF, a widely used debug data format. He is active in the open-source and Linux communities.


Thursday, 19 December 2013

What is WAVE, 802.11p ?

WAVE-IEEE-802.11p

1) Wireless access in vehicular environments (WAVE)

2) Added support in 802.11 for Intelligent Transportation Systems (ITS) applications.

3) Applicable ITS band 5.9 GHz (5.85-5.925 GHz).

4) IEEE 1609 is a higher layer standard based on the IEEE 802.11p.

5) There is no association and authentication procedure before exchange of data.

6) Use of wildcard BSSID ( a value of all 1s) in the header of all frames they exchange, and may start communication as soon as they arrive on same communication channel.

7) Addition of new management frame for timing advertisement, which allows IEEE 802.11p enabled stations to synchronize themselves with a common time reference. The only time reference defined in the IEEE 802.11p amendment is UTC or Coordinated Universal Time.

8) Channel rejection requirements can be implemented  (for both adjacent and nonadjacent channels) to avoid out-of-channel interferences. They only apply to OFDM transmissions in the 5GHz band used by the IEEE 802.11a physical layer.

9) Frequecy band : 5.9GHz band (5.850-5.925 GHz) with 5MHz, 10MHz and 20MHz channel spacings, countries: United States , Europe



Ref: Wiki, 802.11p standard
http://www.etsi.org/deliver/etsi_es/202600_202699/202663/01.01.00_50/es_202663v010100m.pdf


How to change the default MTU size in Windows 7 ?

Steps to follow to change mtu size in Windows 7:

1) Go to Start-> type cmd-> right click on cmd.exe-> select->Run as administrator

2) Using this command prompt give below command to know the existing MTU of interfaces

C:\>netsh interface ipv4 show subinterfaces

MTU  MediaSenseState   Bytes In  Bytes Out  Interface
------  ---------------  ---------  ---------  -------------
4294967295                1          0    1486381  Loopback Pseudo-Interface 1
  1300                1   16167334    2330876  Wireless Network Connection
  1300                5          0          0  Local Area Connection



3) To change give below commands

C:\> netsh interface ipv4 set subinterface "Local Area Connection" mtu=1500 store=persistent
ok

4) View the changed MTU

C:\>netsh interface ipv4 show subinterfaces

MTU  MediaSenseState   Bytes In  Bytes Out  Interface
------  ---------------  ---------  ---------  -------------
4294967295                1          0    1486381  Loopback Pseudo-Interface 1
  1300                1   16167334    2330876  Wireless Network Connection
  1500                5          0          0  Local Area Connection

Saturday, 7 December 2013

RFC 5625 : DNS Proxy Implementation Guidelines

 DNS Proxy RFC http://tools.ietf.org/html/rfc5625

Should

1) The role of the proxy should therefore be no more and no less than to
     receive DNS requests from clients on the LAN side, forward those
     verbatim to one of the known upstream recursive resolvers on the WAN
     side, and ensure that the whole response is returned verbatim to the
     original client.

2)  It is RECOMMENDED that proxies should be as transparent as possible,
   such that any "hop-by-hop" mechanisms or newly introduced protocol
   extensions operate as if the proxy were not there.

3)  Except when required to enforce an active security or network policy
   (such as maintaining a pre-authentication "walled garden"), end-users
   SHOULD be able to send their DNS queries to specified upstream
   resolvers, thereby bypassing the proxy altogether.  In this case, the
   gateway SHOULD NOT modify the DNS request or response packets in any
   way.

4) DNS proxies should not arbitrarily reject or otherwise drop requests
     or responses based on perceived non-compliance with standards.

5) Since UDP packets larger than 512 octets are now expected in normal
   operation, proxies SHOULD NOT truncate UDP packets that exceed that
   size.

6) Whenever a proxy receives a request over TCP, the proxy
   SHOULD forward the query over TCP and SHOULD NOT attempt the        same query over UDP first.

7) Proxies SHOULD be capable of forwarding UDP packets up to a payload
   size of at least 4096 octets.

8)  As per Section 3, end-users SHOULD be able to send their DNS queries
   directly to specified upstream resolvers, ideally without hard-coding
   those settings in their stub resolver.

9)  It is therefore RECOMMENDED that gateways SHOULD support device-
   administrator configuration of values for the "Domain Name Server"
   DHCP option

10)  It is strongly RECOMMENDED that DNS proxies follow the relevant
   recommendations in [RFC5452], particularly those in Section 9.2
   relating to randomisation of Query IDs and source ports.  This also
   applies to source port selection within any NAT function.

11) If a DNS proxy is running on a broadband gateway with NAT that is
   compliant with [RFC4787], then it SHOULD also follow the
   recommendations in Section 10 of [RFC5452] concerning how long DNS
   state is kept.

12) The DNS proxy in a gateway SHOULD NOT, by default, be accessible from the WAN interfaces of the device.

Must:

1)  Proxies MUST ignore any unknown DNS flags and proxy
   packets as usual.

2)  Proxies MUST forward packets regardless of the presence or absence of compressed labels therein. (
   Compression of labels as per Section 4.1.4 of [RFC1035]

3) [RFC3597] requires that resolvers MUST handle Resource Records (RRs)
   of unknown type transparently.

 4)  All requests and responses MUST be proxied regardless of the values
   of the QTYPE and QCLASS fields.

5)  All responses MUST be proxied regardless of the values of the TYPE and CLASS fields of any Resource Record therein.

6)  If a proxy must unilaterally truncate a response, then the proxy MUST
   set the TC bit.  Similarly, proxies MUST NOT remove the TC bit from
   responses.

7) DNS proxies MUST therefore be prepared to receive and forward queries
   over TCP.

8) As per Section 4.1, proxies MUST NOT refuse to proxy such packets which contain an OPT RR

9)   DNS proxies MUST implement Section 4.7 of [RFC2845] and either
   forward packets unchanged (as recommended above) or fully implement
   TSIG.

10)    As per Section 4.3, DNS proxies MUST be capable of proxying packets
   containing TKEY [RFC2930] Resource Records.

11)  Since no standard exists for a "local" scoped domain name suffix, it is RECOMMENDED that the default value for this option SHOULD be empty, and that this option MUST NOT be sent to clients when no value is configured.


Key words for use in RFCs to Indicate Requirement Levels

 http://tools.ietf.org/html/rfc2119 :
       

1. MUST
 This word, or the terms "REQUIRED" or "SHALL", mean that the
   definition is an absolute requirement of the specification.


2. SHOULD
 This word, or the adjective "RECOMMENDED", mean that there
   may exist valid reasons in particular circumstances to ignore a
   particular item, but the full implications must be understood and
   carefully weighed before choosing a different course.

Sunday, 1 December 2013

How to write professional mails, some sample professional mails.

I think i have covered it in one of my posts, but this is really important. Yesterday again i got one mail, which has its own mistakes.I am not claiming to be proficient in English or done any majors, but these are very basic and you should try to follow.

1) Read at-least 3 times your mail before sending it. Sometimes we think we have written properly, but if you read it again , you will realize how it is actually.

2) Dont write stories. Be precise and to the point. Write in points if you have multiple things to say.

3) Start first letter in "capital" and follow grammar rules.

4) Salutation: How to  address other person ? Generally private companies do not follow "Sir" policy but its better to confirm in your company. In India some people are used to be called as Sir and Madam, and if you don't use it, they may feel bad. But generally below can be used
  Hi, Hello, Dear ABC,  Dear Mr XYZ

5) Dont use 'Thanks and Regards' instead

Thank you
Regards

or just "Regards"

6)  "can you share" instead use "could you share"

7) "Please find the attached file' instead use 'The file has been attached for your reference' or "Please see attachment"

8) "As per your mail' instead use 'According to your mail'

9)'Please revert back' instead use 'Please revert'.

10) Dont use all capital letters it is considered as arrogant.

11) Avoid using exclamation marks, sometimes it may be considered as if you are making fun of them.

12) Avoid short forms or expand it at-least once.

13) Use spell check option, it is there in almost all email clients.


Wednesday, 27 November 2013

What you reply when you receive wrong email !

I have been receiving emails not intended to me for quite sometime. I am looking for some 2 words like "Wrong number" , which everyone knows and tell once they receive calls which is not for them

I have tried replying to them with :

"Wrong ID "

"Wrong Email"

"Wrong Person"

"Ask Correct ID"

"Type Properly"

"Not ME"

"Ignored by ME"

"Deleted"

 Can you suggest which one looks more kind of "OK" ?


Keep Learning , Keep Sharing!

New Technical Terms !

Below is the list of few new upcoming new terms which i am hearing now a days.

IoT : Internet of Things

IoE : Internet of Everything

M2M communications : Machine to machine (M2M) refers to technologies that allow both wireless and wired systems to communicate with other devices of the same type.

BYOD    :   Bring your own device
BYOT    :   Bring your own technology
BYOP    :   Bring your own phone
BYOPC  :   Bring your own PC

It refers to the policy of permitting employees to bring personally owned mobile devices (laptops, tablets, and smart phones) to their workplace, and to use those devices to access privileged company information and applications.

Similar terms, which i can think of :-)

BYOTab   :    Bring your own Tab,
BYOLT     :    Bring your own Laptop,
BYODC    :    Bring your own Data CARD
BYOC      :    Bring your own Charger

Post in comments what else you can "Bring your own" in an office ?


Keep thinking , Keep Learning!

Monday, 4 November 2013

About DHCPv6 !

1)   DHCPv6 makes use of the following multicast addresses:

     a)  All_DHCP_Relay_Agents_and_Servers (FF02::1:2) A link-scoped multicast address used by a client to communicate with neighboring relay agents and servers.
                

      b) All_DHCP_Servers (FF05::1:3) A site-scoped multicast address used by a relay agent to communicate with servers


2) Clients listen for DHCP messages on UDP port 546.  Servers and relay
   agents listen for DHCP messages on UDP port 547.

3) DHCP Message Types


      SOLICIT (1)        A client sends a Solicit message to locate
                         servers.

      ADVERTISE (2)      A server sends an Advertise message to indicate
                         that it is available for DHCP service, in
                         response to a Solicit message received from a
                         client.

      REQUEST (3)        A client sends a Request message to request
                         configuration parameters, including IP
                         addresses, from a specific server.

      CONFIRM (4)        A client sends a Confirm message to any
                         available server to determine whether the
                         addresses it was assigned are still appropriate
                         to the link to which the client is connected.


     RENEW (5)          A client sends a Renew message to the server
                         that originally provided the client's addresses
                         and configuration parameters to extend the
                         lifetimes on the addresses assigned to the
                         client and to update other configuration
                         parameters.

      REBIND (6)         A client sends a Rebind message to any
                         available server to extend the lifetimes on the
                         addresses assigned to the client and to update
                         other configuration parameters; this message is
                         sent after a client receives no response to a
                         Renew message.

      REPLY (7)          A server sends a Reply message containing
                         assigned addresses and configuration parameters
                         in response to a Solicit, Request, Renew,
                         Rebind message received from a client.  A
                         server sends a Reply message containing
                         configuration parameters in response to an
                         Information-request message.  A server sends a
                         Reply message in response to a Confirm message
                         confirming or denying that the addresses
                         assigned to the client are appropriate to the
                         link to which the client is connected.  A
                         server sends a Reply message to acknowledge
                         receipt of a Release or Decline message.

      RELEASE (8)        A client sends a Release message to the server
                         that assigned addresses to the client to
                         indicate that the client will no longer use one
                         or more of the assigned addresses.

      DECLINE (9)        A client sends a Decline message to a server to
                         indicate that the client has determined that
                         one or more addresses assigned by the server
                         are already in use on the link to which the
                         client is connected.

      RECONFIGURE (10)   A server sends a Reconfigure message to a
                         client to inform the client that the server has
                         new or updated configuration parameters, and
                         that the client is to initiate a Renew/Reply
                         or Information-request/Reply transaction with
                         the server in order to receive the updated
                         information.


      INFORMATION-REQUEST (11) A client sends an Information-request
                         message to a server to request configuration
                         parameters without the assignment of any IP
                         addresses to the client.

      RELAY-FORW (12)    A relay agent sends a Relay-forward message
                         to relay messages to servers, either directly
                         or through another relay agent.  The received
                         message, either a client message or a
                         Relay-forward message from another relay
                         agent, is encapsulated in an option in the
                         Relay-forward message.

      RELAY-REPL (13)    A server sends a Relay-reply message to a relay
                         agent containing a message that the relay
                         agent delivers to a client.  The Relay-reply
                         message may be relayed by other relay agents
                         for delivery to the destination relay agent.

                         The server encapsulates the client message as
                         an option in the Relay-reply message, which the
                         relay agent extracts and relays to the client.

Wednesday, 28 August 2013

How to change Lease time in tftpd32 DHCP server!

The tftpd32  is one easy to use open source DHCP server. It can be used for testing many functionalities of DHCP client.
 
The parameter i was looking for, was, Lease time, through GUI we do not have option to change it. 
 
Using tftpd32.ini file we can change this paramter.
 
Steps to download and change the lease time on Windows XP platform as Host machine.
 
1) Download Tftpd32-4.00-setup.exe from http://tftpd32.jounin.net/tftpd32_download.html
 
2) Install the file on Windows XP.
 
3) Go to "C:\Program Files\Tftpd32" and start tftpd32.exe
 
4) Configure DHCP related parameter by going to its setting Like ( ip ppol, size of pool, default router and mask) , remove persistant leases ( uncheck)
 
5) Click Ok and close it
 
6) Open tftpd32.ini file in "C:\Program Files\Tftpd32" , the file will be like given below
 
 
 
[DHCP]
Lease_NumLeases=0
IP_Pool=17344704
PoolSize=0
BootFile=
DNS=17344704
Mask=16580607
Gateway=34121920
DomainName=
Lease (minutes)=2880
AddOptionNumber1=0
AddOptionValue1=
AddOptionNumber2=0
AddOptionValue2=
AddOptionNumber3=0
AddOptionValue3=
AddOptionNumber4=0
AddOptionValue4=
AddOptionNumber5=0
AddOptionValue5=
AddOptionNumber6=0
AddOptionValue6=
AddOptionNumber7=0
AddOptionValue7=
AddOptionNumber8=0
AddOptionValue8=
AddOptionNumber9=0
AddOptionValue9=
AddOptionNumber10=0
AddOptionValue10=
[TFTPD32]
BaseDirectory=.
TftpPort=69
Hide=0
WinSize=0
Negociate=1
PXECompatibility=0
DirText=0
ShowProgressBar=1
Timeout=3
MaxRetransmit=6
SecurityLevel=1
UnixStrings=1
Beep=0
VirtualRoot=0
MD5=0
LocalIP=
Services=15
TftpLogFile=
SaveSyslogFile=
PipeSyslogMsg=0
LowestUDPPort=0
HighestUDPPort=0
MulticastPort=0
MulticastAddress=
PersistantLeases=0
DHCP Ping=1
DHCP LocalIP=
Max Simultaneous Transfers=100
UseEventLog=0
Console Password=tftpd32
Support for port Option=0
Keep transfer Gui=5
Ignore ack for last TFTP packet=0
Enable IPv6=0
 
7) Change "Lease (minutes)=2880" paramter to suit your requirements.
 
 
Keep Learning , Keep sharing !
 

 

Friday, 23 August 2013

Short tutorial on Busybox!

BusyBox:

1) It is a collection of common used Linux binaries.

2) Latest version is 29 June 2013 -- BusyBox 1.21.1 (stable) as of today (Aug 23, 2013).

4) It supports almost 292 various commands.

5) Use "yum install busybox" to install  it .



[root@localhost ~]# busybox --help
BusyBox v1.13.2 (2009-02-09 07:22:45 EST) multi-call binary
Copyright (C) 1998-2008 Erik Andersen, Rob Landley, Denys Vlasenko
and others. Licensed under GPLv2.
See source distribution for full notice.

Usage: busybox [function] [arguments]...
   or: function [arguments]...

        BusyBox is a multi-call binary that combines many common Unix
        utilities into a single executable.  Most people will create a
        link to busybox for each function they wish to use and BusyBox
        will act like whatever it was invoked as!

Currently defined functions:
        [, [[, addgroup, adduser, adjtimex, ar, arp, arping, ash,
        awk, basename, blkid, brctl, bunzip2, bzcat, bzip2, cal,
        cat, catv, chat, chattr, chgrp, chmod, chown, chpasswd,
        chpst, chroot, chrt, chvt, cksum, clear, cmp, comm, cp,
        cpio, crond, crontab, cryptpw, cttyhack, cut, date, dc,
        dd, deallocvt, delgroup, deluser, depmod, devmem, df, dhcprelay,
        diff, dirname, dmesg, dnsd, dos2unix, du, dumpkmap, dumpleases,
        echo, ed, egrep, eject, env, envdir, envuidgid, ether-wake,
        expand, expr, fakeidentd, false, fbset, fbsplash, fdformat,
        fdisk, fgrep, find, findfs, fold, free, freeramdisk, fsck,
        fsck.minix, ftpget, ftpput, fuser, getopt, getty, grep,
        gunzip, gzip, halt, hd, hdparm, head, hexdump, hostid, hostname,
        httpd, hush, hwclock, id, ifconfig, ifdown, ifenslave, ifup,
        inetd, init, insmod, install, ip, ipaddr, ipcalc, ipcrm,
        ipcs, iplink, iproute, iprule, iptunnel, kbd_mode, kill,
        killall, killall5, klogd, last, length, less, linux32, linux64,
        linuxrc, ln, loadfont, loadkmap, logger, login, logname,
        logread, losetup, lpd, lpq, lpr, ls, lsattr, lsmod, lzmacat,
        makedevs, makemime, man, md5sum, mdev, mesg, microcom, mkdir,
        mkfifo, mkfs.minix, mknod, mkswap, mktemp, modprobe, more,
        mount, mountpoint, msh, mt, mv, nameif, nc, netstat, nice,
        nmeter, nohup, nslookup, od, openvt, passwd, patch, pgrep,
        pidof, ping, ping6, pipe_progress, pivot_root, pkill, popmaildir,
        poweroff, printenv, printf, ps, pscan, pwd, raidautorun,
        rdate, rdev, readahead, readlink, readprofile, realpath,
        reboot, reformime, renice, reset, resize, rm, rmdir, rmmod,
        route, rtcwake, run-parts, runlevel, runsv, runsvdir, rx,
        script, sed, sendmail, seq, setarch, setconsole, setfont,
        setkeycodes, setlogcons, setsid, setuidgid, sh, sha1sum,
        showkey, slattach, sleep, softlimit, sort, split, start-stop-daemon,
        stat, strings, stty, su, sulogin, sum, sv, svlogd, swapoff,
        swapon, switch_root, sync, sysctl, syslogd, tac, tail, tar,
        tcpsvd, tee, telnet, telnetd, test, tftp, tftpd, time, top,
        touch, tr, traceroute, true, tty, ttysize, udhcpc, udhcpd,
        udpsvd, umount, uname, uncompress, unexpand, uniq, unix2dos,
        unlzma, unzip, uptime, usleep, uudecode, uuencode, vconfig,
        vi, vlock, watch, watchdog, wc, wget, which, who, whoami,
        xargs, yes, zcat, zcip

[root@localhost ~]#