Inter – frame SpacesInter − frame spaces (IFS) are waiting periods between transmission of frames operating in the medium access control (MAC) sublayer where carrier-sense multiple access with collision avoidance (CSMA/CA) is used. These are techniques used to prevent collisions as defined in IEEE 802.11-based WLAN standard (Wi-Fi).IFS is the time period between completion of the transmission of the last frame and starting transmission of the next frame apart from the variable back-off period.The diagram below shows the different types of inter − frame spacing starting from the shortest duration (highest priority) to the longest duration (lowest priority). Among these, ... Read More
Transmit opportunity (TXOP) is a MAC layer feature used in IEEE 802.11-based wireless local area network (WLAN). TXOP defines the time duration for which a station can send frames after it has gained contention for the transmission medium. By providing this contention-free time period, TXOP aims to increase the throughput of high priority data, such as voice and video.TXOP is available in Quality of Service as part of Enhanced Distributed Channel Access (EDCA).Working PrincipleTXOP operates in the following sequence of steps −When a station in the WLAN has frames to send, it waits till it’s Network Allocation Vector (NAV) decrements ... Read More
Extended inter-frame spacing (EIFS), is a waiting period used in MAC layer of IEEE 802.11-based wireless local area network standard (WLAN standard). It is an additional waiting period used in addition to the mandatory DISF technique in case of corrupted frames.DISF (Distributed coordination function inter-frame spacing) is inserted before sending frames to avoid collisions in areas where carrier-sense multiple access with collision avoidance (CSMA/CA) is used. EISF is used for erroneous frames.Functioning of EIFSIn normal delivery of frames, DISF waiting period is good enough. However, when a previously received frame is corrupted, the DISF waiting period proves to be insufficient. ... Read More
Carrier Sense Multiple Access with Collision Avoidance (CSMA/CA) is a network protocol for carrier transmission that operates in the Medium Access Control (MAC) layer. CSMA/CA prevents collisions prior to their occurrence and is ideally used in wireless communications.Rate anomaly occurs when the performance of a high speed station is impaired due to a low speed station, thus reducing the average throughput of the entire wireless network.ExplanationThe CSMA/CA allows each station to send a single frame at a time. Before sending a frame, the station waits for a certain inter-frame spacing (IFS). Following the IFS, it sends the request to send ... Read More
Arbitration inter-frame spacing (AIFS), is an optional technique used to prevent collisions in IEEE 802.11e based WLAN standard (Wi-Fi), in the medium access control (MAC) layer. It determines the time interval that a station should wait before it sends its request frame, by prioritizing the stations based upon the Access Category, i.e. the type of data to be transmitted.Functioning of AIFSIn a wireless communication, it is very difficult to resolve collisions. So, collision avoidance schemes are used when multiple stations want to access the channels. Inter-frame spacing are inserted before transmissions for avoiding collisions. Unlike other inter-frame spaces, AISF assigns ... Read More
The lambda expressions have a very simple, precise syntax and provide flexibility to specify the datatypes for the function parameters. Its return type is a parameter -> expression body to understand the syntax, we can divide it into three parts.Parameters : These are function method parameters and match with the signature of a function defined in the functional interface. Defining the data-type of parameters is optional but the number of parameters can match with the defined signatures in the interface.Expression Body : This is either a single statement or collection of statements that represent the function definition. Defining the data-type for return ... Read More
HTTP protocol is a stateless protocol. But for a commercial website it is required to maintain session information among different pages. For example one user registration ends after transactions which spans through many pages. But how to maintain user's session information across all the web pages?In many situations, using cookies is the most efficient method of remembering and tracking preferences, purchases, commissions, and other information required for better visitor experience or site statistics.How It WorksYour server sends some data to the visitor's browser in the form of a cookie. The browser may accept the cookie. If it does, it is ... Read More
A more reliable method of passing information to a CGI program is the POST method. This packages the information in exactly the same way as GET methods, but instead of sending it as a text string after a ? in the URL, it sends it as a separate message as a part of HTTP header. Web server provides this message to the CGI script in the form of the standard input.Below is the Perl script called hello_post.cgi, to handle input given by the web browser. This script will handle GET as well as POST method.#!/usr/bin/perl local ($buffer, @pairs, $pair, $name, $value, %FORM); # ... Read More
Here is a simple URL which will pass two values to hello_get.cgi program using GET method.http://www.tutorialspoint.com/cgi-bin/hello_get.cgi?first_name=ZARA&last_name=ALIBelow is hello_get.cgi script to handle input given by web browser.#!/usr/bin/perl local ($buffer, @pairs, $pair, $name, $value, %FORM); # Read in text $ENV{'REQUEST_METHOD'} =~ tr/a-z/A-Z/; if ($ENV{'REQUEST_METHOD'} eq "GET") { $buffer = $ENV{'QUERY_STRING'}; } # Split information into name/value pairs @pairs = split(/&/, $buffer); foreach $pair (@pairs) { ($name, $value) = split(/=/, $pair); $value =~ tr/+/ /; $value =~ s/%(..)/pack("C", hex($1))/eg; $FORM{$name} = $value; } $first_name = $FORM{first_name}; $last_name = $FORM{last_name}; print "Content-type:text/html\r\r"; print ""; print ""; print "Hello - Second CGI ... Read More
Sometime it is desired that you want to give option where a user will click a link and it will pop up a "File Download" dialogue box to the user instead of displaying actual content. This is very easy and will be achieved through HTTP header using Perl Script.This HTTP header will be different from the header mentioned in previous section. For example, if you want to make a FileName file downloadable from a given link then it's syntax will be as follows −#!/usr/bin/perl # HTTP Header print "Content-Type:application/octet-stream; name = \"FileName\"\r"; print "Content-Disposition: attachment; filename = \"FileName\"\r"; # Actual ... Read More
Data Structure
Networking
RDBMS
Operating System
Java
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP