Está en la página 1de 5

(IJCNS) International Journal of Computer and Network Security, 1

Vol. 2, No. 1, January 2010

Performance of TCP/IP over wireless Networks


using unaware Approach
Kanwalvir Singh Dhindsa1 , Parminder Singh ² and Dr. Himanshu Aggarwal ³
1
Department of Computer Science and Information Technology,
B.B.S.B.Engg.College,Fatehgarh Sahib,147407,Punjab,India
kdhindsa@ gmail.com
2
Department of Information Technology,
CEC,Landran,140307,Punjab,India
Singh.parminder06@gmail.com
3
Department of Computer Engg.,
Punjabi University,Patiala,147001,Punjab,India
himagrawal@rediffmail.com

Abstract: This paper focuses on the existing vulnerability of the receiver, link sender keeps track of the all
speed mismatch and sluggish performance of TCP/IP when used unacknowledged packets by maintaining a buffer known as
with wireless medium. This paper highlights the unaware transmission buffer. Re-Transmission list is also attached
approach with the implementation of Transport Unaware Link with the buffer to keep the list of packets to be retransmitted.
Improvement Protocol (TULIP) as the probable solution to the
degraded performance of TCP/IP with Wireless Medium as
1.1 TULIP Operations
Channel of Communication. TULIP protocol portrays the
problems associated with TCP/IP when used with the wireless 1. Sender sends a packet to the receiver.
media. TULIP protocol is useful in the detection and
retransmission of lost packets so as to enable reliable 2. Sender then waits for the acknowledgment of the packet.
communication between client and server. This protocol is state- 3. Sender maintains a transmission buffer for fast delivery of
full as it keeps track of the packets and corresponding fragments packets and retransmission list to ensure reliability of
of packets so as to ensure that only after the complete
communication
acknowledgment of all fragments packet is forwarded. TULIP
makes use of buffered system to increase the performance of
4. Whenever acknowledgment is not received by the sender,
transmission and omit all the associated problems related to it retransmits the same packet again.
transmission by supporting queue based retransmission 5. Before sending the new packet, sender firstly verifies the
mechanism. TULIP makes utilizes multiple buffers to ensure contents of the retransmission list, so in this way higher
timely delivery of packets and it also aids in error correction priority is always given to the lost packets.
before the actual transmission of the packets. The various
functional and operational aspects of TULIP and comparative
1.2 Importance of TULIP Protocol
account of its performance measured in terms of various
parameters.
Keywords: TULIP, Source Based Algorithm, Receiver Based The following importance of TULIP protocol is:
Algorithm, MAC.
1. It is robust as it avoids bit error rates:
1. Introduction
2. It retransmits only dropped packets whenever are
TULIP (Transport Unaware Link Improvement protocol) is required.
a link layer protocol designed for inter-operatability with
base station oriented wireless networks [4]. This protocol 3. It doesn’t estimate round trip time to calculate
utilizes the bandwidth of the half duplex channel for its propagation delay instead of using own tulip timer.
performance. Two services are offered by the TULIP via
reliable service and Unreliable service. Reliable service of 4. It just checks data parts, and doesn’t access header
TULIP ensures the timely delivery of the packets without part of a packet.
redundancy of the packet basically it is meant for the TCP
packets. Unreliable services do not perform any re- 5. It implements encryption.
transmission and therefore, it is meant for the UDP packets,
link layer and TCP acknowledgments. 6. It works with IPV4 & IPV6
The main impetus of the TULIP in case of reliable service
is to minimize the loss of packets and timely delivery of the 7. It is used on multihop structure.
packets. It makes use of Sliding window protocol in
selective repeat type Configuration for local recovery of the
lost packets. Whenever the packet is sent by the sender to
2 (IJCNS) International Journal of Computer and Network Security,
Vol. 2, No. 1, January 2010

2. Experiment Setup
The fig. 4, shows the different steps that help to run the
In this paper, the following scenario is used to implement TULIP protocol. There are two different algorithms which
the TULIP protocol. In this paper, there is one sender and are executed in different machines.
one receiver that communicate with each other in both wired
and wireless networks. The communication functioning of
TULIP is shown in the following fig.1.
The Protocol is implemented in Java as well as in C++ and
testified on two machines, and thereafter its performance is
estimated. After this, it is implemented in C++ and otcl and
is run on NS2, and calculated its performance. It performs
different operations as shown in the fig. 2.

Figure1. TULIP scenario

In the beginning, it is implemented in java using the steps


mentioned in fig no.3. TULIP implementation is divided Figure4. Steps to execute TULIP
into two phases. Phase 1 deal with the sender side of the
implementation. Sender is implemented with the help of
javax.swing and java.net packages available in jdk 1.4. 2.1 Source Based Algorithm
These packages help in developing socket based Graphical In practical consideration [4], it is assumed that size of a
User interface which is used for transmitting data to the window is 42K, which is available as a communication
receiving end. channel. This algorithm sporadically checks the status of
MAC layer before transmission of data. The value
associated with term macState signifies whether channel is
available for transmission or not. Boolean value 1 represents
that channel is already holding a packet and transmission is
not permitted over the channel and value 0 signifies that
channel is available for communication proceedings.

Definition of Terms
ACK= received pkt is an ACK
WAIT=RTS received by MAC Layer
TRANS=MAC has acquired channel and pkt is to be
transmited
macState=1 if MAC layer has a Packet, 0 otherwise
S= {S Nmin,----,S Nmax}
Figure2. TULIP operations W=Window Size
Figure5. Source Algorithm [4]
Phase 2 of the implementation deals with the receiver side
of the application. Here, the receiver is implemented using This Source Algorithm is implemented in java and shown
socket programming concepts of java and instantiated as:
receiver can receive the data from the sender. For ease of public class a
functioning, receiver is implemented on local host { //////////////declarations
configurations. String ack="ack";
String wait="wait";
String trans="trans";
//////////////////procedure when sender receives a signal or a
pkt
void rec_from_mac(String ins)
{ timer obj=new timer();
obj.stop();
System.out.println("recmac");
if(ins.equals("wait"))
{ System.out.println("wait");
obj.stop();
Figure3. TULIP Implementation
(IJCNS) International Journal of Computer and Network Security, 3
Vol. 2, No. 1, January 2010

2.2 Receive Based Algorithm module assists in implementing the server instance using
The receiver Algorithm receives the packets from the sender java based TCP/IP network packages and classes shown in
side. The receiver algorithm shows in figure 6. fig. 8.

Initialization
CumACK = -1
BitVector = {0,…..,0}
[this procedure is called when a pkt is received]
Procedure prcess_incoming_pkt (incoming_pkt.sn)
begin
if incoming_pkt.sn E {CumACK+1,…..,CumACK + W}
if incoming+pkt.sn = (CumACK +1) mod 2W
release to network layer
release any other in sequence packets Figure8. Receiver End (Running receiver class)
for each packet released
Figure6. Receiver Algorithm [4]
The following figure 9 represents the server instance
The implementation of receiver Algorithm is given below: working as receiver for the packets generated by the user
public static void main(String x[]) using graphical user interface
{ try
{
byte b[] = new byte[1024];
ds=new DatagramSocket(4444);
ps = new DatagramPacket(b,1024);
while(true)
{ d=new Date();
ds.receive(ps);
String s = new String(b,0,ps.getLength());
System.out.println(s);

3. Results
TULIP protocol run on the machine having platform Java .It
produce the following result as shown in the fig. 7, 8 and 9. Figure9. Receiver End (Packets Received)
This algorithm provides an interface to user to create packet The fig. 10 shows the packet delay graph and then the code
with ample amount of data before its actual transmission is executed in the java. This code is more effective than
over the network shown in figure 6. Once the packet is TCP. The losses are minimum as shown the graph.
created we can submit the packet for further Normally, packet loss is occurred when buffer resources
communication. Submit button preprocesses the information have been exhausted but using TULIP we maintain the
before submission and delivery to another node on the Buffer.
network.

Figure7. Source End (Interface)


Figure10. Packet Delay Graph
Before implementing the protocol, we need to create a server
instance which will act as receiver for the packet. This
4 (IJCNS) International Journal of Computer and Network Security,
Vol. 2, No. 1, January 2010
The Goodput means the number of bits per unit of time forwarded graph is shown using Trace graph. Table 1 shows the result
by the network from a source address to a destination but it is of receiving packets.
lower when TCP is Slow. In the present work, we avoid congestion Table 1: TULIP Delay Variance
control using TULIP algorithms to maintain Goodput. It is fig.11 Parameter Value (Seconds)
shows the Goodput of TULIP protocol.
Minimal Delay (CN,ON,PID) 0.0321829 (4,3,1)
Maximal Delay (CN,ON,PID) 2.232183 (3,4,0)
Average Delay (CN,ON,PID) 0.0446600789

In this paper, the delay is calculated when the sender sends


the packet to the receiver. The figure 14 shows the result of
sequence no. of received packets in wireless media. We can
see there are three retransmissions around time 7, 8 and 9.
At each of these three points we can also see that only one
segment is retransmitted, because only one dot below the
upward slope.

Figure11. TULIP Goodput


The TULIP protocol is implemented using C++ and
simulation is done by NS2 Simulator. The following
performance parameters are calculated for checking the
performance of TULIP protocol over Wireless Networks.

Figure14. Sequence no. of Received Packets

The simulated results are show in the following figure 15.


The Delay variance of all dropped packets is calculated and
their values are in table 2.

Figure12. Delay Variance of Sent packets

Figure15. TULIP dropped Packets

Figure13. Delay Variance of Received packets


The following table 2 and 3 shows the Statistics from above
results are:
The above fig. 12 and 13, shows the Delay Variance (Jitter).
The implementation is done using NS2 simulator and the
(IJCNS) International Journal of Computer and Network Security, 5
Vol. 2, No. 1, January 2010

Table 2: Simulation Statistics Networks”, ACM/IEEE Transaction on Networking,


November 1995, pp.756-769.
Factor Value
[6] C. Partridge and T.J. Shepard, “TCP/IP Performance
Simulation length in seconds 9.998972 over Satellite Links,” IEEE Network Magazine,
Number of nodes 5 September/October 1997, pp. 44–49.
Number of sending nodes 2 [7] K. Fall and S. Floyd. “Simulation-based comparisons of
Tahoe,Reno, and SACK TCP”, In Computer
Number of Receiving nodes 2
Communication Review, volume 26 ,No. 3, July, 1996
Number of generated packets 1485 ,pp.5 – 21.
Number of sending packets 1482 [8] sheng-tzong cheng,yeh-hsi cheng and yuh-rong leu,
Number of dropped packets 91 WTCP: an Efficient Transmission Control Protocol for
Number of Forwarded Bytes 1593280 Wired/Wireless Internetworking, Natl. Sci. Counc.
Number of received bytes 889720 ROC(A),Vol.24, No.3, 2000, pp.176-185.
[9] I. Rhee, N. Balaguru, and G. Rouskas “MTCP: Scalable
Number of dropped bytes 92640
TCP-like Congestion Control for ReliableMulticast”,
IEEE INFOCOM, March 1999, pp.1265–73.
[10] K.H.Walse and D.R.Dhotre,”Wireless Network:
Table 3: CURRENT NODE STATISTICS Performance Analysis of TCP”, Information Technology
Journal, Vol.6, No.3, 2007, pp.363-369.
Factor Value
Number of Forwarded Packets 1399
Authors Profile
Number of Received Packets 1568
Number of dropped Packets 91 Kanwalvir Singh Dhindsa is currently an
Assistant Professor at CSE & IT
Number of Forwarded Bytes 716960
department of B.B.S.B.Engg.College,
Number of dropped bytes 92640 Fatehgarh Sahib (Punjab), India. He is
M.Tech. from Punjabi University, Patiala
(Punjab) in 2003 and currently pursuing
4. Conclusion PhD degree in Computer Engineering from
the same university. His research interests
This paper emphasizes the problems associated with the
are Information Systems, Relational Database Systems and
performance of TCP/IP over Wireless media. To provide an Modelling Languages. Member of IEI, ISTE & ACEEE.
optimal solution, protocol namely TULIP (Transport
Unaware Link Internet protocol) is used. TULIP is an
optimal solution to the degrading performance of TCP/IP. It
Parminder Singh is B.Tech in Information
makes use of various buffers to ensure quick and timely
Technology (2006) from Punjab Technical
delivery of packets instead of wasting time on interpreting University, India. He is doing M.Tech in
TCP header. This protocol is mainly concerned with computer science and Engineering from
performance based delivery of the data. This problem also Punjab Technical University, India. His
solves the related problem of scalability and compatibility research interests are TCP/IP, Wireless,
associated with TCP/IP and provides an optimal solution Networks issues,etc. He is member of CSI.
with ADHOC and Multi-HOP Network configuration by
eliminating the need of TCP header Authentication at each
HOP. Dr. Himanshu Aggarwal is currently an Reader at department of
Computer Engg. of Punjabi University,Patiala(Punjab),India. He
received his PhD degree in Computer Engineering from Punjabi
References University in 2007. His research interests are Information Systems,
[1]W.Richard Stevens, TCP/IP Illustrated,Volume 1: The Parallel Computing and Software Engineering. He has contributed
Protocols , India: Pearson Education, 2005. 14 papers in reputed journals and 35 papers in national and
international conferences. He is also on the editorial and reviewer
[2] G. Xylomenos and G.C Polyzos, “TCP and UDP
board of some international journals.
performance over a wireless LAN”, IEEE INFOCOM
’99, March 1999, pp. 439-446.
[3] A.Bakre and B.R.Badrinath,” Implementation and
performance evaluation of Indirect-TCP”, IEEE
Transaction on Computers, Vol. 46, no. 3, March 1997,
pp.260-278.
[4] Christina Parsa and J. J. Garcia-Luna-Aceves, “
Improving TCP Performance over Wireless Networks at
the Link Layer”, Mobile Networks and Applications,
2000, pp.57-71.
[5] H. Balakrishnan, S. Seshan, E. Amir and R. H. Katz,
“Improving TCP/IP Performance over Wireless