Archive

Author Archive

Vim info.

May 7, 2013 Leave a comment

Copying lines between two marks:
'a"ry'b

yanks the text between and including markers a and b into register r.

Categories: Vim

An awesome tutorial on SSH Tunnelling…

November 28, 2012 Leave a comment
Categories: Networking, Programming

What is a Java annotation?

October 15, 2012 Leave a comment

Ahhh… always had this question.
Consider the class below:

In this class, @ManagedBean and @SessionScope are annotations.

An annotation is nothing but a markup. That’s all….

But aren’t annotations interfaces? That’s what Google says.

So yes they are interfaces… Sun merely picked an interface cause developers at that time were aware of interfaces. Note that some annotations take affect at compile time and some at runtime (dictated by the retention policy of that annotation). So this is what happens when an annotation is encountered….

  1. An annotation is always processed by the respective container… this container could be a Spring container (if it is a Spring annotation), JSF container (if it is a JSF annotation), Hibernate container (if it is a Hibernate annotation) and so on. And Java itself if it is a Java annotation.
  2. The container has something called as an annotation processor. This processor scans the code before it runs. So it is the annotation processor does the actions associated with the annotation. The annotation processor has all the intelligence. So if you have two annotations on a class and the annotation processor expects one to be before the other, you will get an error (not sure if it is runtime or compilation time.)
Categories: Java

An awesome ANT tutotial…

October 8, 2012 Leave a comment
Categories: Java, Programming

Java Generics.

March 12, 2012 Leave a comment
Categories: Java, Programming

Various Networking Rates

January 16, 2012 Leave a comment

From http://www.zytrax.com/tech/data_rates.htm

Telecom and Network Speeds

 

We see network speed terms (e.g. T1, DS0, OC-192) all over the place and we always get confused (with our modest brain sizes) over what they all mean. So we set out to try and pull all the pieces into one place and this is what we came up with:

Some Background

 

First some basic stuff. You will see references to 64K (bits) ‘channels’ all over the place. This is the basic digital voice signal – called Digital Signal 0 or the infamous DS0 for short. The digital voice signal is encoded using PCM (Pulse Code Modulation) and TDM (Time Division Multiplexing). All other classic copper signal hierarchies, known as PDH – the Plesiochronous Digital Hierarchy, such as T3, are defined as multiples of DS0. Why 64K. Well… to digitize narrowband speech (voice) you take a 4KHz spectrum (actually 3.1K – see notes below). Normal sampling techniques only give reasonable resolution if sampled at twice the frequency (which gives 2 x 4K(ish) = 8K samples per second). Each sample is 8 bits which gives 8K x 8 = 64K bits per second.

Notes:

  1. K in this context is 1,000 not 1,024.
  2. Narrowband speech is from 0.3 to 3.4KHz. Wideband speech (a.k.a. ‘hi-fi speech’) covers 0.15 to 6.8KHz.

Contents

Tx North American Signal Hierarchy e.g. T1, T3 etc.
Ex European Signal Hierarchy e.g. E1, E3 etc.
Summary Summary of North American (T-x), Euro (E-x) and Japanese signal hierarchy.
OCx Optical Carrier Hierarchy for SONET and SDH e.g. OC-1, OC-192 etc. Includes STS-x and STM-x definitions.
Containers & Tributaries The terms used to map T-1, E-3 onto optical (SDH/SONET) carriers.
Errors Bit Error Rates or Ratio (BER) definition.

North American Digital Signal Hierarchy

 

The North American signal hierarchy was created by the old US ‘Bell system’ (AT&T) in the early 1960’s and was the world’s first digital voice system. It is based on multiples of the DS0 signal with a little bit of overhead to show its age. The fiendishly cunning Europeans who waited longer to define a digital hierarchy were able to live without the small overhead largely due to improved electronics.

The signal hierarchy defines the levels of multiplexing, that is, the first level of the hierarchy multiplexes (combines) a number of DS0s into a single digital signal (with a DSx designator) which is then placed on a carrier (with a T-x designator). The DSx defines an abstract signal or speed and the T-x defines a physical ‘pipe’ or format. The DSx and T-x series specs and most other telecom related specifications are standardized by the ANSI accredited Committee T1 (T1E1), now part of Alliance for Telecommunications Industry solutions – ATIS, which in turn represents, via the US State Department, the US at ITU standard sessions.

Remember: a DS0 is 64K or 64,000 bits per second.

Hierarchy Speed Digital
Signal
Carrier DS0’s Notes
First Level 1.544 Mbit/s DS1 T-1 24 In ISDN PRI = 23B (user) + 1D (signaling) channels
Intermediate
Level
3.152 Mbit/s DS1C 48
Second Level 6.312 Mbit/s DS2 T-2 96 4 x DS1
Third Level 44.736 Mbit/s DS3 T-3 672 28 x DS1
Intermediate Level 139.264 Mbit/s DS4NA ? 2016 3 x DS3 Highest designed in ANSI T1.107
Fourth Level 274.176 Mbit/s DS4 T-4 4032 Replaced with OCx
Fifth Level 400.352 Mbit/s DS5 T-5 5760 Replaced with OCx

Notes:

BITDROPPING
Now if you have not been sleeping you will have figured out that for a T1 if you multiply 24 x DS0 (64,000) you do NOT get 1.544 Mbit/s instead you get 24 * 64,000 = 1.536 Mbit/s. The extra bits are lost between ‘frames’ where a frame consists of one 8 bit sample for each of the 24 channels (remember the DS0 basics). So every 192 bits (24 x 8 = 192) we add a ‘frame separator’ bit to give 193 bits per frame. The final arithmetic is 193 bits x 8K samples = 1.544 Mbit/s. Easy really.

If you do the same arithmetic for DS1C, T2 etc. the above will not give the right answer. In short, above T1 things get really nasty with M-Frames and M-subframes. It’s mind numbing stuff and if you really need this information get hold of ANSI T1.107-2002 and lots of coffee or other mind-altering substances.

European Digital Signal Hierarchy

 

The fiendish Europeans left the US to blaze the digital voice trail, so when they came standardize things they could forget all this ‘frame separator’ stuff. Euro Telecom standards are defined by CEPT (a Euro Telecom ‘club’). Here in all its glory is the super simple European hierarchy. Again all based on our good friend, the ever popular, 64,000 bit DS0.

Notes:
While the table above shows the European carriers as E-1, E-3 etc. in similar format to the American T-1 etc. this terminology is of relatively recent vintage. The original carrier names were CEPT-1, CEPT-3 etc.

Summary Table

 

The following table summarizes a number of digital signal hierarchies currently in operation. We have used the terms J-1 etc. to define the Japanese signal designations for convenience without actually knowing if they are used in practice. Maybe you know…

Speed DS0’s North
America
Europe Japan
64 Kbps 1
1.544 Mbit/s 24 T-1 J-1
2.048 Mbit/s 32 E-1
6.312 Mbit/s 96 T-2 J-2
7.786 Mbit/s 120 J-2 (alt)
8.448 Mbit/s 128 E-2
32.064 Mbit/s 480 J-3
34.368 Mbit/s 512 E-3
44.736 Mbit/s 672 T-3
97.728 Mbit/s 1440 J-4
139.264 Mbit/s 2016 DS4NA
139.264 Mbit/s 2048 E4
274.176 Mbit/s 4032 T-4
400.352 Mbit/s 5760 T-5
565.148 Mbit/s 8192 E-5 J-5

Notes:
The rates above T-3, E-3 etc are normally now optical (see below) and ANSI T1.107-2002 makes no reference to anything above DS4NA. Errata: We previously, and incorrectly, defined E-4 in this table to be 139.268 whereas in the European Hierarchy it was always correctly defined to be 139.264. While the two signal rates (E-4 and DS4NA) are the same the DS0 capacity is different. Apologies.

Optical Carriers

 

Optical transmission systems are known as SONET (Synchronous Optical NETwork) in North America and SDH (Synchronous Digital Hierarchy) in the Rest of the World. Optical Carriers are typically known by their OC-x number where x is a multiple of the OC-1 rate of 51.84 Mbps (shades of DS0 but a tad faster). While there is a common world-wide standard for optical systems there are differences but they are accommodated within the standard. North America uses an STS-x (Synchronous Transport Signal) format for frames (packets) and Europe an STM-x (Synchronous Transport Module) format because …. well its obvious really, one is from Europe and the other from North America and even if they were both exactly the same, which they are not, the terms would in any case be different. One day if we ever understand the differences we will add some more information.

Optical Signal Hierarchy

Hierarchy Data Rate SONET SDH OCx
Level Zero 155.52 STS-3 STM-1 OC-3
Level One 622.08 STS-12 STM-4 OC-12
Level Two 2488.32 Mbit/s STS-48 STM-16 OC-48
Level Three 9953.28 Mbit/s STS-192 STM-64 OC-192

Optical Carrier Rates

Optical Carrier Data Rate Payload-SONET (SPE) User Data Rate SONET SDH
OC-1 51.84 Mbit/s 50.112 Mbit/s 49.536 STS-1
OC-3 155.52 Mbit/s 150.336 Mbit/s 148.608 STS-3 STM-1
OC-9 466.56 Mbit/s 451.044 Mbit/s 445.824 STS-9 STM-3
OC-12 622.08 Mbit/s 601.344 Mbit/s 594.824 STS-12 STM-4
OC-18 933.12 Mbit/s 902.088 Mbit/s 891.648 STS-18 STM-6
OC-24 1244.16 Mbit/s 1202.784 Mbit/s 1188.864 STS-24 STM-8
OC-36 1866.24 Mbit/s 1804.176 Mbit/s 1783.296 STS-36 STM-12
OC-48 2488.32 Mbit/s 2.4 Gbps 2377.728 STS-48 STM-16
OC-192 9953.28 Mbit/s 9.6 Gbps 9510.912 STS-192 STM-64
OC-768 40Gbit/s STS-768 STM-256
OC-3072 160Gbit/s STS-3072 STM-1024

Notes:

  1. SPE (Synchronous Payload Envelope) = AU (Administrative Unit)

Tributaries and Virtual Containers

Just when we thought it was getting simple – they go and make it more complicated. SDH/SONET defines a way or packaging capacity into Virtual Containers (VCs) which may be Higher Order Virtual Container (HVC) or Lower Order Virtual Containers (LVC). The term Tributary Unit (TU – used outside of North America) or Virtual Tributary (VT – North America) describes a method of mapping PDH (Plesiochronous Digital Hierarchy, for example, T1) carriers onto SDH/SONET.

SONET SDH
Name Speed Name Speed
VT-1.5 1.728Mbit/s VC-11 1.728Mbit/s
VT-2 2.304Mbit/s VC-12 2.304Mbit/s
VT-3 3.456Mbit/s
VT-6 6.912Mbit/s VC-2 6.912Mbit/s
STS-1 50.112Mbit/s VC-3 48.960Mbit/s
STS-3 150.336Mbit/s VC-4 150.336Mbit/s

Error Rates

 

The term BER (Bit Error Rate or Ratio both terms are widely used) defines the number of bit errors that can occur during transmission. It is expressed as a negative power, so that 10-10 indicates that there could be one bit error in 10,000,000,000 bits of transmission – which is a lot of bits in anyone’s language. Typical error rates for copper and optical transmissions are in the range 10-10 to 10-14 whereas for wireless networks BER lies in the range 10-3 to 10-6.

Categories: Networking

Bit rate vs Baud Rate

January 16, 2012 Leave a comment

From http://www.tech-faq.com/difference-between-bit-rate-and-baud-rate.html

The difference between Bit and Baud rate is complicated and intertwining. Both are dependent and inter-related. But the simplest explanation is that a Bit Rate is how many data bits are transmitted per second. A baud Rate is the number of times per second a signal in a communications channel changes.

Bit rates measure the number of data bits (that is 0′s and 1′s) transmitted in one second in a communication channel. A figure of 2400 bits per second means 2400 zeros or ones can be transmitted in one second, hence the abbreviation “bps.” Individual characters (for example letters or numbers) that are also referred to as bytes are composed of several bits.

A baud rate is the number of times a signal in a communications channel changes state or varies. For example, a 2400 baud rate means that the channel can change states up to 2400 times per second. The term “change state” means that it can change from 0 to 1 or from 1 to 0 up to X (in this case, 2400) times per second. It also refers to the actual state of the connection, such as voltage, frequency, or phase level).

The main difference between the two is that one change of state can transmit one bit, or slightly more or less than one bit, that depends on the modulation technique used. So the bit rate (bps) and baud rate (baud per second) have this connection:

bps = baud per second x the number of bit per baud

The modulation technique determines the number of bit per baud. Here are two examples:

When FSK (Frequency Shift Keying, a transmission technique) is used, each baud transmits one bit. Only one change in state is required to send a bit. Thus, the modem’s bps rate is equal to the baud rate. When a baud rate of 2400 is used, a modulation technique called phase modulation that transmits four bits per baud is used. So:

2400 baud x 4 bits per baud = 9600 bps

Such modems are capable of 9600 bps operation.

Categories: Networking

Encoding vs Modulation

January 16, 2012 Leave a comment

From http://forums.whirlpool.net.au/archive/397238

Modulation is the varying of a signal characteristic to convey data or information; usually the phase, amplitude or frequency are varied. The term modulation is applied to both analogue signals (AM radio, old-fashioned TV) and also to digital data.

When used to convey digital data, the way the modulation is applied is represented by a schema (or code, or map, or alphabet). FSK, PSK, ASK are all encoding techniques used by the modulating device to put the data onto the signal, where it is carried to the other end and demodulated… A value from a specific list or alphabet of possible values in the schema causes a specific modulation; and when demodulated the same value is received at the other end.

data -> encoded -> modulated signal -> decoded -> data. The signal varies with the type of modulation being used, the way the signal varies is the information.

Encoding has nothing to do with adding redundant information to data to increase the reliability of detection, as far as I am aware. Specific data encoding techniques can certainly add additional information to the signal to provide error detection and even error correction.

Categories: Networking

FTP vs SFTP vs FSP/S vs SCP

December 21, 2011 Leave a comment

http://geekswithblogs.net/bvamsi/archive/2006/03/23/73147.aspx

The above link has the post below….

SFTP:

“sftp is an interactive file transfer program, similar to ftp, which performs all operations over an encrypted ssh transport”.

SFTP is part of the OpenSSH standard. Along with SSH you have capabilities to use commands such as SCP, SFTP, etc. So….SFTP is very secure because each packet is encrypted and compressed while sending is taking place. It utilizes public key authentication and compression. The Abbreviation SFTP nowadays invariably means Secure File Transfer Protocol, however there is another protocol with the same abbreviation (Simple File Transfer Protocol). So lets not get confused.

Differences between FTP, SFTP and FTPS:

Why not just use FTP? Why should I use Secure FTP instead of FTP? Why is SFTP better than FTP?
FTP Vs SFTP Vs FTPS Vs SCP:

FTP (File Transfer Protocol) does not take any precautions to protect information transmitted during a session. This includes your username, password, and any files transmitted.

SFTP (Secure File Transfer Protocol) is a secure replacement for FTP (File Transfer Protocol) based on the Secure Shell protocol. Unlike FTP, SFTP encrypts both commands and data providing effective protection against common network security risks. SSH Client and Server provide both command-line SFTP tools and a graphical user interface for Windows users. SFTP encrypts the session, preventing the casual detection of your username, password or anything you’ve transmitted.

The major reason for implementing SFTP versus FTP is security. FTP is not even remotely secure. During an FTP session, your username and password are transmitted in clear text. If someone is eavesdropping, it is not difficult for them to log your FTP username and password.

In FTP all data is passed back and forth between the client and server without the use of encryption. This makes it possible for an eavesdropper to listen in and retrieve your confidential information including login details. With SFTP all the data is encrypted before it is sent across the network.

SFTP is not the same as FTP/S; the latter implements the original FTP protocol through a separately-created secure tunnel.

FTPS (FTP-SSL) is a real ftp that uses TSL/SSL to encrypt the control session and if required the data session. With FTPS the control session is always encrypted, but the data session might not be. Why is this? Because with the control session encrypted the authentication is protected and you always want this (normal ftp uses clear text). If you are NOT pre-encrypting the file, you want the data session encrypted so that the file is encrypted while the data is in flight. However, if you are pre-encrypting the file then you do not need to have the data connection encrypted as you do not need to add the overhead of encrypting the data connection, since the file is already encrypted. Understand that SFTP is SSH file transfer and FTPS is FTP with SSL, FTPS is a file transport layer on top of SSL or TLS. The FTPS adds SSL-enabled FTP send and receive capabilities, uses the FTP protocol to transfer files to and from SSL-enabled FTP servers.

SCP (Secure Copy) is a non-interactive command-line tool for securely transmitting files from a machine to another. It is a secure replacement for RCP and provides a similar command-line syntax. SCP is strongly based on SFTP but is often a more suitable choice when setting up unattended file transfers using scripts.

Categories: Uncategorized

Core Java Understanding.

November 7, 2011 Leave a comment

There are three main things in Java.

  1. The JVM: This is the Java Virtual Machine. Now the deal is that this is an abstract concept.
  2. The JRE: This is the actual implementation of the JVM. You thus have a JRE for Windows, Linux, Mac etc.
  3. The JDK: This is the JRE + other stuff needed to program in Java. For instance, there is the Java Complier, the Debugger, the Profiler etc.
Categories: Java, Programming