01286854

6
Enhanced TCP Performance over Mobile IPv6: Innovative Fragmentation Avoidance and Adaptive Routing Techniques A.Dev Pramil, Stephane Antoine, A.H. Aghvami Centre for Telecommunications Research King’s College London, University of London Strand, London WC2R 2LS {dev.dhas, stephane.antoine, hamid.aghvami}@kcl.ac.uk Abstract Mobile Internet Protocol version 6 (MIPv6) is a proposal for handling routing of IPv6 packets to mobile nodes in a foreign network. There are two methods for routing of IPv6 packets from the Correspondent Node (CN) to the Mobile Node (MN): Triangular Routing (TR) and Route Optimisation (RO). With MIPv6 RO, the CN uses the Care of Address (CoA) as the destination address to transfer packets to the MN. Hence the MIPv6 module of the CN adds the Mobility Routing Header (MRH) to store the home address of the MN. This increases packet sizes and may result in fragmentation. Fragmentation degrades Transmission Control Protocol (TCP) performance over MIPv6. This paper discusses the cost of fragmentation and innovative fragmentation avoidance techniques. The cost of fragmentation is studied by carrying out experiments in a real IPv6 backbone (6Bone), where it is found that improved performance can be obtained by implementing innovative fragmentation avoidance techniques in the TCP/MIPv6 protocol stack of the Kame software. The efficiency of fragmentation avoidance techniques is also calculated. This paper also illustrates the impact of MIPv6 TR on the TCP performance. A performance comparison between TR and RO is discussed. Based on this performance comparison, a generic adaptive routing technique is proposed. 1. Introduction MIPv6 [1] has been proposed to solve the problem of mobility in the new Internet IPv6. In the future because of the exponential growth of mobile users and the Internet, users will move frequently between networks as they stay connected to the Internet and access its resources. The focus of this study is to evaluate by experiment, the effects of fragmentation as a result of the addition of the MRH by MIPv6 to provide RO. Improved performance can be obtained by implementing innovative fragmentation avoidance techniques in the TCP/MIPv6 protocol stack. The throughput and the efficiency of the fragmentation avoidance techniques are evaluated. This study also focuses on TCP [2] performance over MIPv6 with TR. A performance comparison between TR and RO is drawn. Based on this performance comparison, a generic adaptive routing technique to route IPv6 packets from the CN to the MN is proposed. For practical evaluation, a real experimental internetwork connecting IPv6 hosts and router over Ethernet to the 6Bone is configured. A file is transferred from the CN to the MIPv6 MN while the latter is changing its point of attachment to the Internet. The TCP throughput and the efficiency of the fragmentation avoidance techniques are evaluated. 2. Experimental configuration The experiment involves two kinds of networks: small sized King’s College internetwork and the wide area 6Bone. Figure 1. MIPv6 testbed configuration 2.1. King’s College internetwork The small internetwork is a set of dual stack IPv6/IPv4 hosts and routers running FreeBSD 4.4 with link layer connectivity provided by 10Mbit/sec Ethernet. 2.1.1. The Kame MIPv6 software. The experiments were conducted using the Kame [3] project implementation (kame- 2002128-freebsd44-snap) of MIPv6 source code. This implementation is fully compliant with the MIPv6 draft-15 [4]. 2.1.2. The application. A File Transfer Protocol (FTP) [5] server for IPv6 is enabled at the CN. 2.1.3. Mobility scenario. The MN moves by disconnection of it from one link and immediate reconnection of it to a new link. At the Ethernet layer, MN movement is almost instantaneous. The MN can move either from the home network to a foreign network (F1 or F2) or vice versa. It can 0-7803-8145-9/04/$17.00 ©2004 IEEE. 175

description

red3e

Transcript of 01286854

  • Enhanced TCP Performance over Mobile IPv6: Innovative Fragmentation Avoidance and Adaptive Routing Techniques

    A.Dev Pramil, Stephane Antoine, A.H. Aghvami

    Centre for Telecommunications Research Kings College London, University of London

    Strand, London WC2R 2LS {dev.dhas, stephane.antoine, hamid.aghvami}@kcl.ac.uk

    Abstract

    Mobile Internet Protocol version 6 (MIPv6) is a proposal for handling routing of IPv6 packets to mobile nodes in a foreign network. There are two methods for routing of IPv6 packets from the Correspondent Node (CN) to the Mobile Node (MN): Triangular Routing (TR) and Route Optimisation (RO). With MIPv6 RO, the CN uses the Care of Address (CoA) as the destination address to transfer packets to the MN. Hence the MIPv6 module of the CN adds the Mobility Routing Header (MRH) to store the home address of the MN. This increases packet sizes and may result in fragmentation. Fragmentation degrades Transmission Control Protocol (TCP) performance over MIPv6. This paper discusses the cost of fragmentation and innovative fragmentation avoidance techniques. The cost of fragmentation is studied by carrying out experiments in a real IPv6 backbone (6Bone), where it is found that improved performance can be obtained by implementing innovative fragmentation avoidance techniques in the TCP/MIPv6 protocol stack of the Kame software. The efficiency of fragmentation avoidance techniques is also calculated. This paper also illustrates the impact of MIPv6 TR on the TCP performance. A performance comparison between TR and RO is discussed. Based on this performance comparison, a generic adaptive routing technique is proposed. 1. Introduction

    MIPv6 [1] has been proposed to solve the problem of mobility in the new Internet IPv6. In the future because of the exponential growth of mobile users and the Internet, users will move frequently between networks as they stay connected to the Internet and access its resources. The focus of this study is to evaluate by experiment, the effects of fragmentation as a result of the addition of the MRH by MIPv6 to provide RO. Improved performance can be obtained by implementing innovative fragmentation avoidance techniques in the TCP/MIPv6 protocol stack. The throughput and the efficiency of the fragmentation avoidance techniques are evaluated. This study also focuses on TCP [2] performance over MIPv6 with TR. A performance comparison between TR and RO is drawn. Based on this performance comparison, a generic adaptive routing technique to route IPv6 packets from the CN to the MN is proposed. For practical evaluation, a real experimental internetwork connecting IPv6 hosts and router over Ethernet

    to the 6Bone is configured. A file is transferred from the CN to the MIPv6 MN while the latter is changing its point of attachment to the Internet. The TCP throughput and the efficiency of the fragmentation avoidance techniques are evaluated.

    2. Experimental configuration

    The experiment involves two kinds of networks: small sized Kings College internetwork and the wide area 6Bone.

    Figure 1. MIPv6 testbed configuration 2.1. Kings College internetwork

    The small internetwork is a set of dual stack IPv6/IPv4 hosts and routers running FreeBSD 4.4 with link layer connectivity provided by 10Mbit/sec Ethernet. 2.1.1. The Kame MIPv6 software. The experiments were conducted using the Kame [3] project implementation (kame-2002128-freebsd44-snap) of MIPv6 source code. This implementation is fully compliant with the MIPv6 draft-15 [4]. 2.1.2. The application. A File Transfer Protocol (FTP) [5] server for IPv6 is enabled at the CN. 2.1.3. Mobility scenario. The MN moves by disconnection of it from one link and immediate reconnection of it to a new link. At the Ethernet layer, MN movement is almost instantaneous. The MN can move either from the home network to a foreign network (F1 or F2) or vice versa. It can

    0-7803-8145-9/04/$17.00 2004 IEEE. 175

  • also move between foreign networks (F1, F2). In this experiment, the MN moves between the foreign networks. 2.2. Interconnection with the 6Bone

    The 6Bone is a testbed to test the transition and operational procedures from IPv4 to IPv6. The internetwork is connected to the 6Bone via portals. The CN is connected to the British Telecom (BT) in the U.K and the HA to the China Education and Research Network (CERNET) in China. The MN is connected through a router to a tunnel of INET (Thailand), NDSoftware (France) and BEST (Canada), one at a time. This was achieved by the configuration of static IPv4 tunnels to transport IPv6 packets from the internetwork to the 6Bone. A pair of IPv4 and IPv6 addresses identifies each tunnel end point. IPv4 over IPv6 tunneling is a technique that resulted from transition design efforts [6] by encapsulating IPv6 packets within an IPv4 header to carry them over IPv4 routing infrastructures. A transition mechanism is essential because most routers in the Internet are IPv4 routers only. The only way for the small internetwork to access the 6Bone is through the Kings College gateway, which is an IPv4 only router.

    Thus the small internetwork was fully configured with the 6Bone and wide area IPv6 packets could be routed between the CN and the MN.

    3. Experiment

    A file of 1Mbyte was transferred from the CN to the MN. During file transfer, the MN performed a handover between foreign networks (F1, F2) multiple times. Each sample corresponded to an average of five file transfers. The packets transferred were captured by ethereal [7] in the CN. The TCP throughput and the efficiency were calculated.

    4. Packet transmission from CN to MN

    Based on the configuration, the CN could be classified into two types: IPv6 CN and MIPv6 CN. The IPv6 protocol stack in the IPv6 CN did not support mobility but the MIPv6 CN supported efficient mobility management techniques. Hence the routing of packets between the CN and the MN depended on the configuration of the CN. 4.1. Packet transmission from IPv6 CN to MN

    The IPv6 CN supported only the Home Address Option (HAO) and not the Binding Update (BU) option. Hence the MN located in a foreign network sent a BU to register its primary CoA with its Home Agent (HA). The HA acknowledged this with a Binding Acknowledgement (BA). The packets sent by the CN were addressed to the home address. The HA intercepted any IPv6 packets addressed to the MNs home address and tunneled these using IPv6 encapsulation [8] to the CoA. Hence with IPv6 CN, TR was performed. With TR, if the MN is in Thailand, the average round trip time (RTT) was 1144.68ms. If the MN is in

    Canada and France, ping6 messages gave an average RTT of 794.72ms and 464.11ms respectively. 4.2. Packet transmission from MIPv6 CN to MN

    The first packet towards the MN connected to a foreign network is routed towards the HA and then retransmitted in a tunnel to the CoA. The receipt of the packet by the MN produced the transmission of a BU message to the CN, whose information is stored in the binding cache. If the CN had Binding Cache Entry (BCE) for the MN, it sent the packets directly to the CoA using one of the IPv6 extension headers called the MRH. Hence communication was established directly between the CN and the MN, avoiding the HA. Therefore with MIPv6 CN, RO was performed. When the packet reaches the MN, the node processes the MRH and determines that the packet must be routed towards the home address [9]. This process allows the upper layer protocols to see the home address as the destination address and therefore does not perceive the mobility. With RO, the average RTTs when the MN was in Thailand, Canada and France were 943.32ms, 431.59ms and 53.85ms respectively.

    Figure 2. Type 0 Mobility Routing Header 5. Performance metrics

    Two performance metrics were defined to evaluate the

    TCP performance over MIPv6. 5.1. Throughput

    )1(sec/KbytetimetransferFile

    sizeFileThroughput =

    5.2. Efficiency

    Efficiency () is calculated to compare the relative TCP performance over MIPv6 under the following configurations

    5.2.1. MIPv6 RO: with and without fragmentation

    (2)fragmentedpacketsandROwithThroughput

    avoidedionfragmentatandROwithThroughput1 =

    5.2.2. MIPv6 TR and MIPv6 RO with fragmentation

    )3(fragmentedpackets andROwithThroughput

    TRwith Throughput2 =

    Nxt Hdr Hdr Ext Len Rt. Type=0 Seg Left=1 Reserved Strict /Loose Bit map

    Home Address

    0-7803-8145-9/04/$17.00 2004 IEEE. 176

  • 5.2.3. MIPv6 RO without fragmentation and TR

    (4)TRwith Throughput

    avoidedionfragmentatandROwithThroughput3 =

    6. TCP Performance over MIPv6

    With RO, the decision to add the MRH to the outgoing packets is performed dynamically by the MIPv6 layer. This may result in the packet size exceeding the MTU and therefore may cause fragmentation.

    0

    5

    10

    15

    20

    1 2 3 4 5Number of handovers

    Thro

    ughp

    ut (K

    b/s)

    Tunnel(France)

    Tunnel(Canada)

    Tunnel(Thailand)

    Figure 3. TCP throughput with fragmentation Figure 3 shows that the TCP performance over MIPv6 depends on the mobility rate and RTT. 6.1. Adverse effects of mobility on TCP performance over MIPv6

    The adverse effects of mobility on TCP performance can be explained by two factors: handover latency and the lack of mobility considerations in TCP design. 6.1.1. Handover latency. The time that elapses during the handover mechanism is called the handover latency. Handover latency typically includes the time for movement detection, neighbor unreachability detection, selection of a new default router, selection of new CoA for the MN and sending of the BU messages. The handover latency will affect the performance of the active TCP connection. High mobility rate will increase the frequency of handovers thereby an increasing cumulative latency period. This degrades the throughput. 6.1.2. Lack of mobility considerations in TCP design. The TCP protocol and its congestion control algorithms have been designed for stationary hosts and wire-line links. TCP treats packet loss caused by mobility as packet loss resulting from congestion. Hence packets transmitted by the CN just before handover occurs are lost because the MN will no longer be on the old link to receive them. The effective data rate or bandwidth between different links changes dynamically introducing variable bit-error rate patterns resulting in packet loss. Since the congestion control algorithms of TCP work on the basis of packet loss, the TCP sender of the CN assumes that there is congestion and reduces the congestion window size. Hence an increased frequency of handovers and high mobility rate shrinks the congestion window both abruptly and rapidly thereby degrading the throughput.

    6.2. Dependence of TCP throughput on RTT

    The decrease in throughput with increased RTT can be explained by two factors: self-clocking nature of TCP protocol and the BU latency.

    6.2.1. Self-clocking nature of TCP. The rate at which TCP sends data depends on the arrival rate of the Acknowledgements (ACKs). When RTT is small, ACKs arrive quickly and data is sent at a higher rate. Hence throughput is high for small RTT and decreases for large RTT. 6.2.2. BU latency. The CN nearer to the MN receives and processes the BU more quickly thus reducing the BU latency. Therefore handover latency is reduced. Large handover latency may cause TCP to revert to slow start, which reduces the congestion window to one segment size therefore decreasing throughput. 6.3. The negative effects of fragmentation

    In this experiment, each original IPv6 packet is fragmented into two fragments of unequal sizes. The first and second fragment carries data of 1176 and 32 bytes respectively. The computational overhead of making the routing decisions, modifying the packet header and moving packets between appropriate incoming and outgoing queues increases. It is therefore more costly to send two smaller packets than one single packet.

    The fragmented packets may not follow the same path to the MN and hence may arrive at different times. This increases the reassembly time and delays TCP ACKs. Moreover, the probability of fragment loss increases. Even if a fragment does not arrive at the MIPv6 layer, the CN needs to send the complete original packet. This results in increased data retransmission.

    Efficient reassembly of the fragments is difficult. In this experiment, the second fragment is smaller compared with the first fragment. This results in a smaller transmission time for the second fragment. Thus because of the multiple paths in the 6Bone to the MN or the sophisticated queuing management techniques at the routers, the second fragment might reach the MN before the first fragment. There is also the possibility of a smaller fragment of one packet arriving concurrently with a large fragment of another packet. Reassembly is possible only if all the fragments of the original packet arrive at the MN. If the buffer fills or timeout occurs before all the fragments arrive, reassembly will not be performed and the received fragments will be discarded. These negative effects of fragmentation and reassembly in the real network [10] degrade the TCP performance over MIPv6. Hence fragmentation needs to be avoided in order to improve TCP performance over MIPv6. 7. Fragmentation avoidance techniques

    Fragmentation caused by the addition of MIPv6 extension

    headers can be avoided by two methods: TCP payload

    0-7803-8145-9/04/$17.00 2004 IEEE. 177

  • adjustment and adaptive MSS advertisement. 7.1. TCP payload adjustment

    In the original kame MIPv6 software, the addition of extension headers by MIPv6 is transparent to TCP. In this technique, an interlayer communication is designed and implemented to notify TCP about the addition of a MRH by MIPv6. Hence TCP reduce its payload and therefore fragmentation is avoided. The algorithm for this fragmentation avoidance technique is as follows. if (MIPv6 CN) { if (BCE for the MN exists) { create the MIPv6 MRH

    MIPv6 MRH length = value stored in the extension header length (Hdr Ext Len) field value of the MRH

    return (MIPv6 MRH length ) } } tcp_output(MIPv6 MRH length, MTU, data) { TCP payload=MTU (sizeof (IPv6 header) + sizeof(TCP

    header) + TCP options length + MIPv6 MRH length + other IPv6 extension header length)

    send (data, TCP payload) }

    In the FreeBSD 4.4 based kame snap, the routine ip6_output() in ip6_output.c decides and creates the MIPv6 MRH. The tcp_output() in tcp_output.c calculates the TCP payload length in a segment. The extension header length (Hdr Ext Len) field of the MRH (figure 2) stores the length of the MRH. In the original kame snap, ip6_optlen() in ip6_output.c did not calculate the length of MRH appended by MIPv6. Hence ip6_output() and ip6_optlen() routines are modified to calculate and inform the TCP about the length of the MIPv6 MRH. Therefore TCP payload is reduced by a value returned by the ip6_optlen() routine. This prevents the packet size exceeding the MTU, and avoids fragmentation. 7.1.1. Performance metrics for TCP payload adjustment 7.1.1.1. Throughput

    2

    7

    12

    17

    22

    1 2 3 4 5Number of handovers

    Thro

    ughp

    ut (K

    b/s)

    Tunnel(France)

    Tunnel(Canada)

    Tunnel(Thailand)

    Figure 4. TCP payload adjustment

    Figures 3 and 4 show that without fragmentation TCP

    performance over MIPv6 is significantly better, because of high resource and bandwidth utilisation. 7.1.1.2. Efficiency

    0.6

    1

    1.4

    1.8

    2.2

    1 2 3 4 5Number of handovers

    Effi

    cien

    cy Tunnel(Thailand)Tunnel(Canada)

    Tunnel(France)

    Figure 5. TCP payload adjustment

    The efficiency (1) is calculated using equation (2). Figure 5 shows that irrespective of the MNs location, the efficiency is greater than 1. This technique performs more efficiently with high mobility rate and large RTT. If the MN is in Thailand, the TCP payload adjustment technique improves the performance by a factor 1.872.

    In an unfragmented packet, the fragmentation header (8 bytes) is not present. Hence 1184 bytes of user data are sent in a packet with a gain of 8 bytes per packet. This is one of the reasons for the improved performance. 7.2. Adaptive MSS announcement

    In this technique, modifications are made to the three way handshake of the TCP connection. When the MNs TCP client performs an active open connection with the CN, it sends a BU along the SYN segment with a MSS (MSSMN). The response of the CN to the received SYN depends on its configuration.

    If the CN is an IPv6 CN, it does not recognise the BU option and therefore sends an ICMPv6 parameter problem message (type=4, code=2). In this case, a timeout occurs in the MNs TCP. On timeout, the MN sends a normal SYN with a MSS (MSSMN). In response to the second SYN, the CNs TCP server sends a SYN ACK segment with a MSS (MSSCN). The MN will send an ACK to complete the three way handshake. The functions tcp_mssopt() and tcp_mss() in tcp_input.c govern the MSS calculation. The tcp_mssopt() function calculates the MSS announced in both the cases.

    If the CN is a MIPv6 CN, it sends a SYN ACK with a MSS (MSSCN) to the CoA. If the MRH is present in the received SYN ACK, the MN calculates the minimum of the two announced MSSs (MSSmin). The MN then calculates a new MSS (MSSadv) by subtracting the MRH length from MSSmin. Instead of sending an ACK, the MN now sends a SYN ACK with the MSSadv to complete the three-way handshake. The modified tcp_mss() function of the CN considers MSSadv (instead of MSSMN) as the offer made by the MN and calculates segment size to send the data. The MSS set by the MN is the upper bound [11] for the CN. The MN adaptively announces MSSadv by considering the MSS announced by the CN and the MRH length. Hence fragmentation is avoided. If the MRH is not present, the MN

    0-7803-8145-9/04/$17.00 2004 IEEE. 178

  • will send an ACK to complete the normal three way handshake TCP connection. The algorithm for this fragmentation avoidance technique is shown in figure 6.

    M N C N

    M S S M N = M T U - ( I P v 6 + T C P ) H e a d e rS e n d ( S Y N ,M S S M N ,B U )

    S Y N , M S S M N ,B U

    I f ( IP v 6 C N )S e n d ( IC M P v 6 P a r a m e t e r p r o b le m m e s s a g e )

    IC M P v 6 ( T y p e = 4 , C o d e = 2 )

    O n t im e o u t : S e n d ( S Y N , M S S M N )S Y N ,M S S M N

    M S S C N = M T U - ( IP v 6 + T C P ) H e a d e rS e n d ( S Y N A C K , M S S C N )

    S Y N A C K , M S S C N

    I f ( M R H p r e s e n t in S Y N A C K ){ M S S m in = m in ( M S S M N ,M S S C N ) M S S a d v = ( M S S m in - M R H le n g t h ) S e n d ( S Y N A C K ,M S S a d v )}

    A C K

    S Y N A C K , M S S a d ve l s e S e n d ( A C K )

    Figure 6. Adaptive MSS announcement TCP connection

    Performance metrics are calculated to evaluate the performance of this technique. 7.2.1. Performance metrics for adaptive MSS announcement 7.2.1.1. Throughput

    2

    7

    12

    17

    22

    1 2 3 4 5Number of handovers

    Thro

    ughp

    ut (K

    b/s)

    Tunnel(France)

    Tunnel(Canada)

    Tunnel(Thailand)

    Figure 7. Adaptive MSS announcement

    Figures 4 and 7 show that both fragmentation avoidance

    techniques give similar performance. 7.2.1.2. Efficiency

    0.5

    1

    1.5

    2

    1 2 3 4 5Number of handovers

    Effi

    cien

    cy Tunnel(Thailand) Tunnel(Canada)

    Tunnel(France)

    Figure 8. Adaptive MSS announcement

    In this case, the efficiency is calculated using equation (2).

    If the MN is in Thailand, the throughput with adaptive MSS announcement is a factor 1.62 to 1.88 better than that with fragmentation. This technique performs more efficiently with high mobility rate and large RTT.

    8. TCP Performance over MIPv6 with TR

    2

    6

    10

    14

    1 2 3 4 5Number of handovers

    Thro

    ughp

    ut (K

    b/s)

    Tunnel(France)

    Tunnel(Canada)

    Tunnel(Thailand)

    Figure 9. MIPv6 triangular routing

    The absence of the MRH (24 bytes) in TR gives a gain of 24 bytes of user data in a packet. Hence 1208 bytes of user data are sent in a packet 9. Performance Comparison: RO and TR 9.1. TR and MIPv6 RO with fragmentation

    0.40.7

    11.31.6

    1 2 3 4 5Number of handovers

    Effic

    ienc

    yTunnel(Thailand)Tunnel(Canada)Tunnel(France)

    Figure 10. MIPv6 TR Vs MIPv6 RO with fragmentation

    The efficiency (2) is calculated using equation (3). The

    HA nearer to the MN receives and processes the BU faster than a CN which is relatively far away from the MN. In such a scenario, TR outperforms RO with fragmentation. Hence if the MN is in Thailand, the efficiency is greater than 1. 9.2. MIPv6 RO without fragmentation and TR

    1

    1.4

    1.8

    2.2

    1 2 3 4 5Number of handovers

    Effic

    ienc

    y

    Tunnel(Thailand)Tunnel(Canada)Tunnel(France)

    Figure 11. MIPv6 RO without fragmentation Vs TR

    The efficiency (3) is calculated using equation (4). Figure

    11 shows that efficiency is almost the same if the MN is in Canada or France. But if the MN is in Thailand, the efficiency decreases with increase in the mobility rate. Though the efficiency is greater than 1, it decreases from 1.828 for one handover to 1.228 for five handovers. Hence this experiment was extended to increased frequency of handovers to determine if the efficiency becomes less than 1. This is to find out if TR outperforms RO without fragmentation.

    0-7803-8145-9/04/$17.00 2004 IEEE. 179

  • 9.2.1. TCP performance over MIPv6 for a high mobility rate. In this experiment, the MN was connected to the tunnel in Thailand. While the file is being transferred, the MN is made to move with a high mobility rate by increasing the frequency of handovers. Throughput and efficiency are then calculated.

    0

    3

    6

    9

    12

    1 2 3 4 5 6 7 8 9 10

    Number of handovers

    Thro

    ughp

    ut (K

    b/s)

    Tunnel(Thailand)

    Figure 12. MIPv6 RO with TCP payload adjustment

    2

    3

    4

    5

    6

    1 2 3 4 5 6 7 8 9 10

    Number of handovers

    Thro

    ughp

    ut (K

    b/s)

    Tunnel(Thailand)

    Figure 13. MIPv6 triangular routing

    0.6

    1

    1.4

    1.8

    1 2 3 4 5 6 7 8 9 10Number of handovers

    Effi

    cien

    cy

    Tunnel(Thailand)

    Figure 14. MIPv6 RO Vs MIPv6 TR

    Figure 14 shows that efficiency gradually decreases but is

    greater than 1 for up to eight handovers. For nine and ten handovers, the efficiency is less than 1 (0.945 and 0.894 respectively). Hence for a high mobility rate, TR outperforms RO without fragmentation.

    Based on TCP performance over MIPv6 with RO and TR, a generic adaptive routing algorithm is proposed. 10. Adaptive routing technique

    In order to improve TCP performance over MIPv6, the CN should be adaptive enough to decide whether to route the packet to the CoA or the HA. After each handover, the CN should have the knowledge of the relative location of the MN with respect to the CN and the HA. The CN should also have knowledge of the mobility rate (from the number of handovers) of the MN. Based on these parameters, the CN should adaptively route the packets. The algorithm for this adaptive routing technique is as follows.

    if (CN) { if (RTT(MN-HA) < RTT (MN-CN)) { if (packet gets fragmented) route packets by triangular routing if (no fragmentation) { if( ishigh (mobility rate)) route packets by triangular routing else perform route optimisation } } perform route optimisation without fragmentation } 11. Conclusion

    This paper presented innovative fragmentation avoidance techniques to improve TCP performance over MIPv6. An experiment was conducted using an experimental testbed connected to the 6Bone. FTP was used to perform a one way bulk data transfer from a CN to a MN moving across foreign networks. Packets with and without fragmentation were captured and analysed. Without fragmentation, TCP performance over MIPv6 is significantly better. The efficiency of the fragmentation avoidance techniques was calculated. The fragmentation avoidance techniques perform more efficiently for high mobility rate and large RTT. This paper also focused on TCP performance over MIPv6 with TR. A performance comparison between MIPv6 TR and MIPv6 RO was drawn. Based on this performance comparison, a generic adaptive routing technique to route IPv6 packets from the CN to the MN was proposed. 12.References [1] David B. Johnson, Charles E. Perkins and Jari Arkko, Mobility support in IPv6, IETF draft, June 2002. [2] J. Postel, Transmission Control Protocol, RFC 793, September 1981. [3] http://www.kame.net [4] David B. Johnson and Charles Perkins, Mobility support in IPv6, IETF Draft 15, 2 July 2001. [5] J. Postel and J. Reynolds, The File Transfer Protocol, RFC 959, October 1985. [6] R. Gilligan and E. Nordmark, Transition Mechanisms for IPv6 Hosts and Networks, RFC 1933. [7] http://www.ethereal.com [8] A. Conta and S. Deering, Generic Packet Tunneling in IPv6 specification, IETF RFC 2473, December 1998. [9] Silvano Gai. Internetworking IPv6 with Cisco routers, McGraw Hill. [10] Christopher A. Kent and Jeffrey C. Mogul. Fragmentation Considered Harmful, ACM SIGCOMM-1 Computer Communication Review, December 1987. [11] W.R. Stevens, TCP/IP Illustrated, Volume I: The protocols, Addison Wesley, Massachusetts, 1994.

    0-7803-8145-9/04/$17.00 2004 IEEE. 180

    Index:

    CCC: 0-7803-5957-7/00/$10.00 2000 IEEE

    ccc: 0-7803-5957-7/00/$10.00 2000 IEEE

    cce: 0-7803-5957-7/00/$10.00 2000 IEEE

    index:

    INDEX:

    ind:

    footer1: 0-7803-8367-2/04/$20.00 2004 IEEE

    01: 3

    02: 4

    03: 5

    04: 6

    05: 7

    06: 8

    07: 9

    08: 10

    09: 11

    10: 47