• No results found

VoIP and video in heterogeneous access networks

N/A
N/A
Protected

Academic year: 2022

Share "VoIP and video in heterogeneous access networks"

Copied!
39
0
0

Loading.... (view fulltext now)

Full text

(1)

B A C H E L O R ' S T H E S I S

VoIP and Video in

Heterogeneous Access Networks

Daniel Granlund

Luleå University of Technology BSc Programmes in Engineering

Computer Engineering Skellefteå Campus

2006:035 HIP - ISSN: 1404-5494 - ISRN: LTU-HIP-EX--06/035--SE

(2)

VoIP and video in heterogeneous access networks

-Using VoIP and video applications in an heterogeneous network environment with policy based handover between different access technologies.

Daniel Granlund

LULEÅTEKNISKAUNIVERSITET

DIVISION OF MOBILE NETWORKING ANDCOMPUTING

SE-931 87 SKELLEFTEÅ

SWEDEN

22 May 2006

dangra-3@student.ltu.se

Bachelor Thesis in Computing Science 10p Supervisor at TietoEnator: Mattias Boman Supervisor at LTU: Christer Åhlund Supervisor at LTU: Robert Brännström

(3)

Abstract

The rapid development of wireless technologies has made it possible to use VoIP and other delay and jitter sensitive applications.

The different technologies that are available have many dissimilar characteristics, including maximum capacity, maximum range, noise sensitivity, costs and QoS.

If multiple access technologies are available, there are several parameters to consider when choosing which one to use.

A VoIP application requires low bandwidth and high stability while a FTP file tranfer are less sensitive to jitter and delay.

This thesis investigates how VoIP and video conversation applications scale while roaming seamlessly between different wireless technologies using a prototype called SEMO.

SEMO evaluates networks in an efficient way based on capacity and load to base a decision for handover between technologies.

Metrics based on deviation and delay is a good way to measure the network performance.

However some changes to the formula are proposed by this thesis including a function for filtering spikes in the delay.

One single spike in a otherwise stable delay value has caused the deviation variance value to rise very much and thereby cause a unmotivated handover.

Keywords: Seamless mobility, Vertical handover, Heterogeneous networks, Policy-based handovers, Multihomed Mobile IP, Flow mobility.

(4)

Acknowledgements

I would like to thank my supervisors, Dr. Christer Åhlund, Robert Brännström at LTU and Mattias Boman at Tieto Enator for their suggestive ideas and experiences that has meant a lot to me during my work. I would also like to thank Fredrik Holmqvist for borrowing me his UPS and thereby making my test platform mobile.

(5)

Table of contents

ABSTRACT ... 2

ACKNOWLEDGEMENTS... 3

TABLE OF CONTENTS... 4

LIST OF FIGURES ... 5

ABBREVIATIONS... 6

INTRODUCTION ... 7

1.1 AIMS ... 8

1.2 METHODOLOGY... 8

2 BACKGROUND ... 9

2.1 HETEROGENEOUS NETWORKS ... 9

2.2 WIRELESS TECHNOLOGIES ... 9

2.2.1 WLAN 802.11 ... 9

2.2.2 UMTS / 3G ... 10

2.2.3 WIMAX 802.16 ... 10

2.3 PROTOCOLS ... 12

2.3.1 MOBILEIP (MIP) ... 12

2.3.2 SKYPE... 12

2.4 SEMO... 14

3 TESTS AND MEASUREMENTS... 15

3.1 PREPARATIONS... 15

3.2 DETERMINING TEST APPLICATIONS... 15

3.3 INTEGRATINGIPERF WITHSEMO... 15

3.4 DETERMINING TEST TOPOLOGY... 16

3.5.1 RUNNING TESTS... 17

3.5.2 RESULTS, MAXIMUM CAPACITY TEST ON DIFFERENT TECHNOLOGIES... 18

3.5.2 RESULTS, JITTER ON EVERY TECHNOLOGY INDEPENDENTLY... 19

3.5.3 RESULTS, PACKET LOSS ON EVERY TECHNOLOGY INDEPENDENTLY... 20

3.5.4 RESULTS, RUNNING WITHSEMO AT6 KB/S(VOICE) ... 21

3.5.5 RESULTS, RUNNING WITHSEMO AT20 KB/S(VIDEO) ... 24

4 CONCLUSIONS ... 26

4.1 VOIP SOFTWARE... 26

4.2 MAXIMUM CAPACITY MEASUREMENT... 26

4.3 JITTER AND PACKET LOSS MEASUREMENT... 27

4.4 TESTING WITHSEMO... 27

4.5 PROBLEMS ENCOUNTERED... 28

4.6 MODIFYING THERNL ALGORITHM... 30

5 FUTURE WORK & CONSIDERATIONS ... 36

5.1 FLOW MOBILITY... 36

5.2 IMPLEMENTATION SUGGESTION... 36

5.3 SECURITY... 37

REFERENCES ... 38

(6)

List of figures

FIGURE1 MODULATION AND CODINGSCHEME FORWIMAX FROM ARTICLE, SEE REF3 ... 11

FIGURE2, SKYPE PROTOCOL ARCHITECTURE, FROM REF. 5 ... 13

FIGURE3 THERNL FORMULA... 14

FIGURE4 TEST TOPOLOGY... 16

FIGURE5 WIRELESS COVERAGE... 17

FIGURE6 MAXIMUM PERFORMANCE GRAPH... 18

FIGURE7 JITTER ON ALL INTERFACES... 19

FIGURE8 PACKET LOSS ON ALL INTERFACES... 20

FIGURE9 POLICYVALUE, 6KB/S... 21

FIGURE10 ROUND-TRIP TIME MEASURED WITH REGISTRATION MESSAGES6KB/S LOAD... 22

FIGURE11 JITTER6KB/S... 23

FIGURE12 PACKET LOSS6KB/S... 23

FIGURE13 POLICYVALUE20KB/S... 24

FIGURE14 ROUND-TRIP TIME MEASURED WITH REGISTRATION MESSAGES20KB/S LOAD... 24

FIGURE15 JITTER20KB/S... 25

FIGURE16 PACKET LOSS20KB/S... 25

FIGURE17 JITTER ANDRTT INVOIP... 26

FIGURE18 PROBLEM GRAPHRTT ... 28

FIGURE19 PROBLEM GRAPH POLICYVALUE... 28

FIGURE20 JITTERFORMULA... 30

FIGURE21 WEIGHTFORMULA... 30

FIGURE22 FLOWCHART, NEWRNL ALGORITHM... 31

FIGURE23 RNL VS. RNL2... 34

FIGURE24 MEASUREMENT USING OLDRNL ... 35

FIGURE25 MEASUREMENT USING NEWRNL ... 35

(7)

Abbreviations

3G Third Generation

AES Advanced Encryption Standard

AP Access Point

ARP Address Resolution Protocol

BPSK Binary Phase Shift Keying

BS Base Station

CN Correspondent Node

CoA Care-of Address

FA Foreign Agent

FDD Frequency Division Duplex

FTP File Transfer Protocol

GPRS General Packet Radio Service

GUI Graphical User interface

HA Home Agent

IEEE Institute of Electrical and Electronics Engineers

IP Internet Protocol

MAC Media Access Control

MAN Metropolitan Area Network

MN Mobile Node

NAT Network Address Translation

OFDM Orthogonal Frequecy Division Multiplexing

PCMCIA

Personal Computer Memory Card International Association

PDA Personal Digital Assistant

QAM Quadrature Amplitude Modulation

QoS Quality of Service

QPSK Quarternary Phase Shift Keying

RNL Relative Network Load

RTP Real-time Transfer Protocol

RTT Round Trip Time

RVM Running Variance Metric

SEMO Seamless Mobility Prototype

SN Super Node

SNR Signal to Noise Ratio

STUN Simple Traversal of UDP over NAT

TCP Transmission Control Protocol

TDD Time Division Duplex

UDP User Datagram Protocol

UMTS Universal Mobile Telecommunications System

WLAN Wireless Local Area Network

VoIP Voice over IP

(8)

Introduction

The fast growing high bandwidth network infrastructure and development of wireless network technologies that supports high bandwidth and good quality of service makes it possible to efficiently use VoIP and video applications for mobile IP telephony and video.

Seamless mobility makes it possible for the user to roam freely in and out if different wired and wireless technologies using vertical handovers without even noticing it.

If you are using a technology with large cell size e.g. UMTS that has relatively poor network performance and enter an area with WLAN (802.11) coverage it should be possible to

handover the data stream to the WLAN interface and use its superior properties eg. lower costs and better signal quality.

Seamless handovers based on policies that are used to evaluate different interfaces based on monetary expense, battery consumption, link capacity and QoS is a good approach for deciding the best possible technology.

The purpose of this thesis is to test and evaluate the performance and policies used in and existing prototype developed by a former student at Umeå Universitet for handling seamless handovers in IP networks [1].

The prototype will be evaluated with the main emphasis on VoIP and video call performance.

WiMax (802.16) will be introduced as a new technology in the prototype as well.

(9)

1.1 Aims

The aim with this bachelor thesis is to evaluate the possibility to use Multihomed MIP with seamless handovers to provide a mobile VoIP solution that can roam between several different access technologies.

The main focus is on when to make a handover from one technology to another based on the available bandwidth and most important the link quality and stability.

The thesis will also look into flow mobility, to make it possible for a user to redirect a certain data stream for instance from a desktop computer to a mobile node based on port numbers.

1.2 Methodology

To fulfil this aims a lot of measurements was conducted in different scenarios and with different simulated loads. The results of the measurements was then analyzed and interpreted to see whether the prototype can provide a good enough platform for a VoIP conversation or if the parameters that the prototype bases it decisions on has to be modified.

(10)

2 Background

This chapter provides a more detailed description of terms, technologies and protocols used and mentioned throughout this thesis.

It will describe the meaning of heterogeneous networks and look into the wireless technologies used in the measurements.

A brief description of the prototype SEMO will be included but for more detailed info on SEMO, see G.Nyberg, Seamless Mobility [1]

The Skype and MIP protocol will also be covered.

2.1 Heterogeneous networks

A heterogeneous network is a network that consists of dissimilar elements that all have the same basic purpose, for example a computer network that has computers that are running different operating systems is classified as a heterogeneous network.

In this thesis the term heterogeneous network only implies a wireless computer network that consists of different layer 2 technologies.

2.2 Wireless technologies

2.2.1 WLAN 802.11

802.11b is a wireless network that operates at the license free 2,4 GHz frequency band.

It is a commonly used technology both in homes, companies and public places to provide short range communication, often within buildings.

Its maximum range is about 300 metres when there is a open line of sight between the antennas.

802.11b which is the public standard supports up to 11 Mbit/s half duplex but there are proprietary technologies that support speeds of up to 108 Mbit/s.

WLAN (Wave-LAN) can be used in both “Infrastructure mode” and “Ad-hoc mode”.

Infrastructure mode means that wireless nodes communicates to a central access point which in turn forwards the traffic to its destination.

In ad-hoc mode the wireless nodes communicates directly to each other, and can even relay traffic.

For example, node A, B and C, A & B and B & C are within each others radio coverage but A & C are not, then if A wants to communicate with C its possible for B to relay the traffic from node A to node C.

The 802.11 interface is often a PCI card, USB plug or PCMCIA card, many new laptops have WLAN interface built in.

(11)

2.2.2 UMTS / 3G

UMTS stands for Universal Mobile Telecommunications System, commonly called 3G (third generation) and is actually a high-speed mobile phone both packet- and circuit switched technology that uses WCDMA (Wideband Code Division Multiple Access).

UMTS uses a much broader frequency spectrum than previous cell phone technologies and by applying a unique code to each data stream it enables multiplexing and the ability for many nodes to transmit on the same frequency.

Maximum theoretical data transfer speed is about 380 Kbit/s but practically it’s up to about 250 Kbit/s downstream and 64 Kbit/s upstream depending on network load.

The interface is either a PCMCIA card or a 3G mobile phone connected through cable, IrDA or Bluetooth.

Under good conditions a UMTS base station has a cell size of about 7 – 10 km.

In Sweden the UMTS network is relatively widely deployed.

2.2.3 WiMAX 802.16

WiMax is a wireless MAN (Metropolitan Area Network) which is specified by the 802.16 standard[2].

It is a point-to-multipoint technology that utilizes high bandwidth. It also has comprehensive QoS functionality to allow both continuous and bursty traffic to be able to traverse the network.

The system is built up as an infrastructure where several subscriber stations communicate with one central base station.

WiMax is unique from other wireless technologies because it uses a very broad frequency spectrum.

It often uses some license free frequency between 450 MHz and 11 GHz.

It also allows both time division duplex (TDD) and frequency division duplex (FDD).

Another big advantage is its much improved NLOS (Non Line Of Sight) capabilites which makes it much more suitable for MAN operation.

Three different air interfaces are specified for WiMax by IEEE 802.16a/d [3]:

• Wireless MAN-SCa: A single carrier modulated air interface

• Wireless MAN-OFDM: A 256-carrier orthogonal-frequency division multiplexing (OFDM) scheme. Multiple access of different subscriber stations is time-division multiple access (TDMA)-based.

• Wireless MAN-OFDMA: A 2048 carrier OFDM scheme. Multiple access is provided by assigning a subset of the carriers to an individual receiver.

Orthogonal-frequency division multiplexing means that every carrier is coded with a orthogonal code.

Orthogonal in this case means that it can not be expressed as a linear combination of any other.

(12)

WiMax defines seven different modulation and coding rates to provide different levels if performance.

Prioritizing high throughput often means trade-offs in stability and robustness so which modulation and coding that is appropriate depends on the demands.

The different available types of modulation are binary phase shift keying (BPSK), quaternary PSK (QPSK), 16-quadrature amplitude modulation (QAM) and 64-QAM[3].

Figure 1 Modulation and codingscheme for WiMax from article, see ref 3

The MAC layer in WiMax is also very advanced, instead of allocating a fixed bandwidth to every subscriber it dynamically allocates bandwidth as needed, and also has support for QoS .

(13)

2.3 Protocols

2.3.1 Mobile IP (MIP)

Mobile IP is a protocol that allows users to maintain connections while moving between different networks and changing IP addresses.

In a very simplified version, this is how it works.

When a mobile node (MN) leaves the network with which it is associated (Home Network) and attaches to another it registers with a home agent (HA) which is connected to the home network.

The home agent then assumes the role and IP address of the mobile node by using ARP functions and tunnels the packets to the mobile nodes new address (Care of Address).

When describing MIP functionality, the node the MN communicates with is referred to as the Correspondent Node (CN).

If the MN itself visiting a new network receives an IP address, registers and sets up a tunnel to the HA, the ip address is said to be co-located.

If not, there is need for a Foreign Agent (FA). A FA is a computer or a router on the visited network which manages the tunnel to the home agent and forwards the packets to the MN.

It might seem inconvenient to have all the traffic go through the home agent at all times instead of communicating with CN directly. This is called route optimization and is supported in IPv6. However, in IPv4 problems arise due to ingress filtering.

Ingress filtering is a function that is implemented in routers to prevent it from forwarding packets which has a source address that differs from the subnet address of the source subnet [4].

2.3.2 Skype

Skype is a peer-to-peer VoIP client developed by KaZaa in 2003[5].

Skypes biggest advantages compared to other VoIP software is its sound quality and its ability to work despite NAT and firewalls.

Skype has support for several types of communication including voice, video and instant messaging.

All data is encrypted with AES to ensure security to the user.

The Skype protocol uses an architecture which is inherited from the well known KaZaa protocol.

It consists of two types of nodes, ordinary nodes and super nodes (SN) [5].

The ordinary node must connect to a super node and then login to the central login server which manages authentication.

Any computer with sufficient capacity and bandwidth is feasible to be selected as super node.

(14)

Figure 2, Skype protocol architecture, from ref. 5

The traversal of NAT and firewalls is an important feature in Skype, it uses a protocol similar to STUN (Simple Traversal of UDP over NATs) [6] to determine which type of firewall is used.

Like RTP/RTCP [7] Skypes proprietary transfer protocol uses a UDP data stream for data and a TCP session for signalling.

By doing so, it can adapt to changes in the network.

(15)

2.4 SEMO

SEMO is a prototype for providing seamless MIP on a network layer lever[1].

It is written in Java / C and consists of both Client- and Home agent software.

The system platform is Linux. SEMO uses the Linux routing process along with policy routing and OpenVpn [8] tunnels to provide the MIP functionality.

Registration messages are periodically sent to register at the home agent and also to measure network performance by counting RTT and Jitter.

This thesis will focus on SEMOs performance, and mainly on the policy value used for making the handover decision.

The policy value is basically the sum of three factors; performance, cost and power consumption.

The value to measure performance is called RNL (Relative Network Load) which in SEMO is calculated with the following formula:

V averageRTT RNL

h V x h

h x V

h x x h x h

n n

n

n n

n

+

=

− × +

×

=

− × +

×

=

1 2

1

) 1 1 (

1 1

Figure 3 The RNL Formula

V expresses RVM (Running Variance Metric) [9] which is the calculated variance in RTT Both values are running mean values, which means that they contains a certain amount of the new value and a certain amount of the old value.

The variable h in the formula determines how much the new value should contribute to the total mean value.

(16)

3 Tests and measurements

3.1 Preparations

The work began by setting up and getting the prototype to work.

At an early stage I ran in to problems with the home agent software e.g.

that the path to the different scripts and C processes are started in runtime were not explicitly coded into the java class so they were not found and that every process that was started opens a input- output- and error data stream that was left open and caused the java program to crash after approximately ten minutes.

After I had explicitly set the path to the processes and added a function that waits for the proxy ARP and gratuitous ARP processes to complete and closes the input- , output- and error streams it worked fine.

Another problem that I encountered was that the prototype was implemented and tested with a 3G mobile phone that was connected through a serial cable while the one that I had was connected with USB, but after changing the dial script to use the USB port instead of the serial port it worked.

3.2 Determining test applications

The preferred VoIP application / protocol throughout this thesis is Skype which is the leading freeware VoIP application.

In voice communication Skype uses an average bandwidth of 6 Kbits/sec and with both webcam video and voice it takes up to 20 Kbits/sec.

By using Skype in a live communication and using its technical data debug function it was quite clear that the most important parameter that affects the sound quality is jitter which is the difference in round-trip time e.g. the regularity in reception of data packets.

The idea is to use a traffic generator to generate constant network traffic that is similar to the traffic created by Skype and measure the throughput and quality of the transfer.

The traffic generator that I decided to use is a freeware generator called IPerf, developed by the University of Illinois [10].

In Iperf it’s possible send UDP packets with a fixed bandwidth and log actual bandwidth, jitter and packet loss with a configurable interval.

3.3 Integrating Iperf with SEMO

To be able to analyze whether or not SEMO uses the correct parameters in its policy decision it’s necessary to monitor the bandwidth and jitter from IPerf along with the values that SEMO uses to make its calculations.

The problem was solved by creating a class ( IPerfThread.class ) that runs in a separate thread and starts IPerf, takes the output from IPerf and logs it in a output file along with average RTT and jitter from IPerf.

SEMOs GUI was extended with a button that brings up a input box where the user can input the output filename and press OK to start the IPerf thread.

(17)

3.4 Determining test topology

It is reason to believe that the measurements will yield the best results if as few as possible sources of error and disruption that are external to the prototype is present.

Therefore the measurements will be carried out in an environment where the three

technologies are directly connected to the internet via high speed copper interface, and also the HA and the CN e.g. the computer that runs Iperf on the opposite side is connected to wired 100Mbps infrastructure.

The prototype could be run in a totally failsafe environment where all the nodes are connected to a local LAN.

The reason that we choose not to do that was mainly because we don’t have access to any UMTS equipment, and also that the internet produces natural irregularities that the user is likely to encounter when using the prototype for VoIP, Therefore it produces a more fare result.

Figure 4 Test topology

(18)

3.5.1 Running tests

The testing began by measuring the total bandwidth that every technology could supply while the mobile node is moving away from the access point.

The physical setup consisted of two 802.11b access points that are placed approx 60 m from each other along a corridor, a WiMax antenna that has coverage over the whole corridor and naturally the city UMTS network.

802.11b WLAN

802.16 WiMax UMTS

Movement

Figure 5 Wireless coverage

The speed of movement is approximately 1 m/s (slow walking speed).

The 802.11 network interface is configured for infrastructure mode, UMTS phone is

configured for a network named “Sweden 3G” (Telia + Comviq) and the WiMax base station is configured with the following parameters:

Base station type: Alvarion Breeze Max 3500

Bandwidth 3,5 Mhz

Downlink freq 3550 Mhz

Tx power 28 dBm

Modulation BPSK ½

Forwarding rules:

Data service profile Internet Access L2 VoIP service profile no

Service type L2

Unicast fwd. no

Multicast fwd. no

QoS profile BE750:

QoS type BE

CT medium

MIR 750 kbps

(19)

3.5.2 Results, maximum capacity test on different technologies

Wireless bandwidth

0,00 500,00 1000,00 1500,00 2000,00 2500,00 3000,00 3500,00 4000,00 4500,00 5000,00

0 10 20 30 40 50 60

Time(s)

KB/s

WLAN UMTS WiMax

Figure 6 Maximum performance graph

At time 0 the mobile node was located at the WLAN access point and the seconds corresponds to the distance in meters from that point.

The bandwidth is measured on downstream TCP data e.g. the data is transmitted by the correspondent and received by the mobile node.

The data presented in the graph is based on values collected once every second and is for every technology the mean value between three consecutive identical measurements with 60 second duration to give a better and more accurate result.

(20)

3.5.2 Results, jitter on every technology independently

As mentioned before that the main thing that affects VoIP conversations is jitter.

The measurements are carried out the in the same scenario as the previous test for every technology independently, but instead of using TCP, UDP packets of 40 bytes i sent at a rate of 6 Kbits/sec (Skype voice call).

Jitter @ 6 Kbits/s

0 2 4 6 8 10 12 14 16 18 20

0 5 10 15 20 25 30 35 40

Time (s)

Jitter (ms)

802.11 WiMax UMTS

Figure 7 Jitter on all interfaces

(21)

3.5.3 Results, packet loss on every technology independently

0 5 10 15 20 25 30 35

Dropped packets

1

Packet loss @ 6 Kbit/s

802.11 UMTS WiMax

Figure 8 Packet loss on all interfaces

These measurements are carried out much in the same way as the previous maximum capacity measurement with downstream UDP data and mean value of three identical measurements.

(22)

3.5.4 Results, running with SEMO at 6 Kb/s (voice)

The following graphs show the performance of the seamless network that is provided by SEMO. Note that the following measurements where not conducted using the same starting point as the previous, therefore the mobility isn’t the same but this has no effect on the handover analysis.

Policyvalue

0 1 2 3 4 5 6 7 8

0 10 20 30 40 50 60 70 80 90 100 110 120

Time(s)

PV

WLAN UMTS WiMAX Bandwidth

WiMAX WLAN UMTS

Figure 9 Policyvalue, 6Kb/s

(23)

The RTT in fig.10 is measured for every interface using registration messages in SEMO while jitter and packet loss shown in fig. 11 and 12 are values from IPerf that shows the

performance of the actual traffic.

These graphs show data from one unique measurement because it is almost impossible to run several tests and get a handover at the exact same time.

Round-trip-time

0 500 1000 1500 2000 2500 3000 3500 4000

0 10 20 30 40 50 60 70 80 90 100 110 120

Time(s)

RTT (ms)

WLAN UMTS WiMAX

WiMAX WLAN UMTS

Figure 10 Round-trip time measured with registration messages 6Kb/s load

(24)

Jitter

0 5 10 15 20 25 30

0 10 20 30 40 50 60 70 80 90 100 110 120

Time(s)

Jitter (ms)

WiMAX WLAN UMTS

Figure 11 Jitter 6Kb/s

Packetloss

0 5 10 15 20 25 30 35 40

0 10 20 30 40 50 60 70 80 90 100 110 120

Tim e(s)

Dropped packets

WiMAX WLAN UMTS

Figure 12 Packet loss 6Kb/s

(25)

3.5.5 Results, running with SEMO at 20 Kb/s (video)

Policyvalue

0 1 2 3 4 5 6 7 8 9 10

0 10 20 30 40 50 60

Tim e(s)

PV

0 5 10 15 20 25 30

WLAN UMTS WiMAX Bandw idth

Figure 13 Policyvalue 20Kb/s

Round-trip-time

0 1000 2000 3000 4000 5000 6000 7000

0 10 20 30 40 50 60

Time(s)

RTT (ms)

WLAN UMTS WiMAX

Figure 14 Round-trip time measured with registration messages 20Kb/s load

(26)

Just like the 6Kb/s measurements policy values and RTT (fig. 13 and 14) are values from SEMO while jitter and packet loss (fig. 15 and 16) are values from IPerf showing the actual throughput jitter and packet loss.

Jitter

0 2 4 6 8 10 12 14

0 10 20 30 40 50 60

Tim e(s)

Jitter (ms)

Figure 15 Jitter 20Kb/s

Packetloss

0 10 20 30 40 50 60 70 80

0 10 20 30 40 50 60

Tim e(s)

Dropped packets

Figure 16 Packet loss 20Kb/s

(27)

4 Conclusions

4.1 VoIP software

Why the jitter affects the sound quality so much is explained by the figure below.

Pac ket 1 Pac ket 2 Pac ket 3 Pac ket 4 Pac ket 1 Pac ket 2 Pac ket 3 Pac ket 4 Pac ket 1 Pac ket 2 Pac ket 3 Pac ket 4 Pac ket 1 Pac ket 2 Pac ket 3 Pac ket 4

Time Pac ket

sent Ideal reception Rec eption, high RTT Rec eption, high jitter

Figure 17 Jitter and RTT in VoIP

Imagine that the user says a short word, like “Hi” the word is composed into four packets which is sent out.

In the ideal high bandwidth scenario the receiver picks them up immediately and they are played in the same speed as they where sampled. If the network has a lot of delays, (i.e. high RTT) the packets will be received later, but still in the same pace so what will happen is that the “Hi” will be delayed a bit at the receiver but it will be as sent.

If the network has irregular RTT, (high jitter) the first packet will be delayed while the other comes in directly after, then it will be a long delay until the next; there will be a notch in the sound.

Several techniques exist to eliminate this problem, for example play out buffers and compression algorithms but they aren’t always enough.

4.2 Maximum capacity measurement

A quick look at figure 7 shows that it is quite obvious that the WLAN outperforms the other technologies by far but has very limited coverage, the UMTS and WiMax is performing at a much lower level (based on the settings), but is quite consistent throughout the corridor.

It is worth to mention that with other settings on the WiMax base station it was possible to reach almost 13 Mbit/s, but for this test it was set to the lowest modulation to increase the stability.

(28)

Since the bandwidth has little effect on VoIP conversations its not so relevant in this thesis but it can be interesting to see the difference in bandwidth between the different technologies.

4.3 Jitter and packet loss measurement

From the graph in (figure 7) it’s possible to tell that there the jitter differ quite a lot, especially between UMTS and the other two.

From a VoIP perspective the WLAN is better up to about 5 seconds, then a handover to WiMax is motivated, UMTS should never be chosen because it performs so much worse from a jitter point of view.

A quick look at the previous graph compared to this shows that WLAN drops much more in bandwidth that in jitter performance when the distance to the accesspoint increases.

As the distance increases, the signal strength drops and the SNR increases, the 802.11

protocol automatically changes the modulation to provide a reasonable stability and useability on the expense of lower maximum bandwidth.

At most times the UMTS network seems to be the most unstable, as long as any of the other technologies have a connection at all they are almost always better.

4.4 Testing with SEMO

A look at the policy value graph (figure 9) shows how the policy value changes while moving down the corridor. The other graphs show that the jitter and packet loss is lowest when

WiMax is chosen, the handover to WLAN is most likely motivated by the higher available bandwidth and thereby lower RTT.

Somewhere around 40 independent tests have been done and the overall opinion is that SEMO works quite fine and is suitable for VoIP communication.

The reason why the video graph looks different from a handover perspective is that I had to redirect the WiMax antenna, but for a handover analysis it really doesn’t matter.

When comparing in general SEMOs performance with 6 and 20 Kbit/s transfers there are no big differences, technologies that has alot of jitter and packet drops are often rated worse when running at 20 Kbit because the registration messages are more likely to be disturbed by the higher traffic.

And thereby the technology will be chosen under a shorter period of time, which is quite right. The idea of using RTT along with RVM for evaluating the link capacity seems to be very effective for this purpose; however there are some imperfections that will be discussed in the next subchapter.

Theoretically there should not be any packet loss at all during a handover and I think that most of the dips in bandwidth around the point of handover is caused by rapid decreases in performance on the used network that later causes the handover to occur.

(29)

4.5 Problems encountered

As previously stated somewhere around forty different measurements has been made and on thing that has been observed is that the delay of one single registration message can cause the RVM value to rise very much, especially if the network has been very stable for a long time.

These graphs present a scenario when this happens.

Round-trip-time

0 1000 2000 3000 4000 5000 6000 7000

0 10 20 30 40 50 60 70 80 90 100 110 120

Time(s)

RTT (ms)

WLAN UMTS WiMAX

Figure 18 Problem graph RTT

Policyvalue

0 2 4 6 8 10 12 14

0 10 20 30 40 50 60 70 80 90 100 110 120

Time(s)

PV

WLAN UMTS WiMAX

Figure 19 Problem graph policyvalue

(30)

At approximately the time 68 s one single delayed registration causes a handover to UMTS from the otherwise very stable WiMax.

Because the rise in RVM is so big, it contributes very much to the history in the mean value so it takes about 5 seconds for it to recover. Even though, the roundtrip time on the WiMax network has gone back to a steady low value.

This action can be referred to as an unjustified handover because SEMO doesn’t provide the optimal network performance at that time.

In SEMO a function was added to reset all history and set the RVM = 0 if the jitter is less that 2 ms.

This causes the RVM to fluctuate very much in some cases where the jitter is very irregular and thereby also the RNL.

The next subchapter will discuss a possible solution to these problems.

(31)

4.6 Modifying the RNL algorithm

Because the jitter in this case is, in some meaning the absolute value of the derivative of the RTT e.g.

T Jitter RTT

=∆

Figure 20 Jitter Formula

In the above formula T represents the time.

Lets say that the RTT has the following values for five consecutive seconds;

10, 20, 100, 30, 20 then the jitter would be 10, 80, 70, 10.

Two executive high jitter values in this case indicate a single peak in RTT.

It is possible to directly filter these values, but if it happens to often it’s likely due to

collisions / load in the wireless network and should therefore be included in the calculation.

To eliminate this risk a variable that counts and acts as a simple timer is implemented to allow this type of filtering to occur only once every 4 seconds.

In SEMO the value of h ( see the formula, figure 3 ) is defined to 5 but to have this value more dynamic should be a good way to control how much impact the most recent jitter value will have in the calculated RVM and in the history.

A weight variable is introduced, which is:

Weight h1

=

Figure 21 Weight Formula

Instead of resetting the RVM if Jitter is < 2 it should be better to see if both the new and the previous jitter value is less than 2, then set the weight to 0,9 to allow the new jitter to have a very large significance in the new calculation and therefore allow it to improve fast.

Next step is to filter the peaks in RTT, this is done by comparing the jitter value to the calculated running mean value, x.

If the jitter is considered to have changed a lot (i.e. more than 150), the timer is set to 4 seconds and the jitter value is set to x + 0,01* the most recent jitter value (to let a very large increase contribute) and the weight is set to 0,2.

If the next value is also more than 150 above the mean and the timer is > 2, the peak is considered a fact and the same action is taken, except for the timer, which is decreased.

Otherwise it was no temporary peak and the jitter value is calculated as the average value between the new and the previous and the weight is set to 0,4 to let the incorrectly filtered value be included in the calculation instead of being forgotten.

If none of the above conditions are met the weight is set to 0,2 as in the original version, and as long as the counter is > 0 it is decreased.

The next page shows a flowchart of the new algorithm.

(32)

If Jitter < 2 Start calculation

Input value:

Jitter & RTT

Timeout = Timeout -1 Weight = 0,9

Jitter – AvgJitter >150

Timeout == 0

Timeout > 2

Timeout > 2

Timeout > 0 Weight = 0.2 Weight = 0.4

Timeout = 4

Jitter = AvgJitter+0,01*Jitter

AvgJitter = Weight * Jitter + (1-Weight * AvgJitter) RVM = Weight * (Jitter – AvgJitter)² + (1-Weight) * RVM

RNL = RTT + RVM

Return RNL Yes

No

Yes Yes

Yes

Yes

Yes No

No No

No

No

Figure 22 Flowchart, new RNL algorithm

(33)

The new RNL class java code:

import java.lang.Math;

/**

* Classname: RNL

* Purpose: Calculates the Relative Network Load (RNL) value * Modified by DanGra 2006-05-31

*/

public class RNL{

private double averageRTT;

private double averageRVM;

private double meanVariation;

private double valueRNL;

private double weight;

private int timeout;

public RNL() {

init();

}

public void init() {

averageRVM = 0.0;

valueRNL = 100000;

}

void setAverageRTT(double v) {

averageRTT = v;

}

void setAverageTmpRVM(double v) {

meanVariation = v;

}

public void calcAverageRTT(int rtt) {

averageRTT = 0.2 * rtt + 0.8 * averageRTT;

}

public void calcRVM(int dT) {

weight = 0;

if(dT < 2)

averageRVM = 0;

else if((dT-meanVariation)>50) {

if(timeout==0) timeout = 4;

if(timeout > 2)

dT =(int)(meanVariation + 0.01 * dT);

weight = 0.2;

}

else if(timeout > 2) weight = 0.4;

(34)

else

weight = 0.2;

if(timeout > 0) timeout--;

meanVariation = weight * dT + (1-weight) * meanVariation;

averageRVM = weight * Math.pow((dT-meanVariation),2) + (1.0-weight)

* averageRVM;

valueRNL = averageRTT + averageRVM;

}

public double getRNL() {

return Math.rint(valueRNL*1000.0)/1000.0;

}

public double getAverageRVM() {

return Math.rint(averageRVM*1000.0)/1000.0;

}

public double getAverageRTT() {

return Math.rint(averageRTT*1000.0)/1000.0;

} }

(35)

The following figure shows a graph where RNL is calculated based on the values taken from the measurement with an unmotivated handover (figures 18 and 19).

The time in this graph 0 – 30s corresponds to the time 60 – 90s in graphs 18 and 19.

A portion of 30 seconds is taken to “zoom in” on the faulty handover.

The two vertical lines show the time under which UMTS is marked as the active interface.

It’s easy to see that around time = 7 the peak in RTT is noted, the old RNL value (solid line) for the WiMax increases enormously in relation to the UMTS RNL.

The new RNL value calculated by the modified algorithm is here referred to as RNL2.

Note that RNL 2 is shown on the secondary axle with lower values, but that makes no difference because the RNL of the interfaces are only put in relation to the others.

The WiMax RNL2 however doesn’t intersect the RNL2 of the UMTS and therefore in this case the unmotivated handover is avoided.

It also shows that after this disruption, instead of bouncing up and down like the old RNL (due to the zeroing of the history) it has a smooth descent.

RNL vs. RNL2

0 1000 2000 3000 4000 5000 6000 7000 8000

0 5 10 15 20 25 30

Time(s)

RNL

0 50 100 150 200 250 300 350 400

RNL2

UMTS RNL WiMAX RNL UMTS RNL2 WiMAX RNL2

Figure 23 RNL vs. RNL2

(36)

Does this work in practice? The graph in figure 24 shows a measurement done using the old RNL algorithm and figure 25 shows the same measurement with the new RNL.

Policyvalue

0 1 2 3 4 5 6 7 8

0 10 20 30 40 50 60 70 80 90 100 110 120

Time(s)

PV

WLAN UMTS WiMAX Bandwidth

Figure 24 Measurement using old RNL

Policyvalue

0 2 4 6 8 10 12 14

0 10 20 30 40 50 60 70 80 90 100 110 120

Time(s)

PV

0 5 10 15 20 25 30 35

WLAN UMTS WiMAX Bandwidth Jitter

Figure 25 Measurement using new RNL

The differences in time the between handovers is most likely caused by different walking speed and possible circumstances that causes wireless disturbances. But they clearly show a practical example where an unmotivated handover is eliminated.

(37)

5 Future work & considerations

5.1 Flow mobility

Flow mobility and port-based routing can be used to send traffic different ways depending on protocol e.g. for FTP transfers high bandwidth is of primary concern while for VoIP

applications network stability is more important.

It can also be used with mobile IP to redirect dataflow from one mobile node to another with the same home address.

Let’s say that a user is in a VoIP conversation on a desktop computer and he has to leave the computer, then instead of breaking the call and reinitiating it on his PDA / Laptop it would be convenient if he could just simply redirect the specific data stream to his mobile unit.

To accomplish this MIP is a good platform because it tunnels data from the home agent to the mobile nodes CoA, therefore it’s possible to maintain the same TCP/IP parameters e.g. IP address available to the VoIP application.

The redirection is done both at the home agent and the mobile node.

The desktop computer could have registered to the HA with a specific home address, if the mobile node also registers with the same address and tells the home agent to redirect only traffic destined for a specific port to the tunnel to the MN flow mobility will be accomplished.

All other traffic would still go to the desktop workstation.

A routing table entry will also have to be made at the mobile node to send all data that is destined for the CN (the VoIP peer) address / port through the selected tunnel.

5.2 Implementation suggestion

Port based routing in the linux kernel routing process can be accomplished using the ip route, iptables and ip rule commands.

The idea is to look at incoming packets, if they match in destination address and port they are tagged. That specific tag is then associated with a custom made routing table which specifies where to send the packet.

The command syntax are as follows:

“set mark to route packet to selected ip rule...”

#iptables -A PREROUTING -t mangle -p [proto] -d [HoA] --dport [port] -j MARK— set-mark “mark”

“create rule to forward marked packet to the “table”...”

#ip rule fwmark “mark” table “table” pref “pref#”

For example if we want to redirect all UDP traffic coming in on port 678 to a tunnel called tun1 and the home address is 130.240.136.249 the commands would look something like...

#ip route add 130.240.136.249/32 dev tun1 table myTable

#iptables –A PREROUTING –t mangle –p udp –d 130.240.136.249 –dport 678 –j MARK –set-mark myMark

#ip rule fwmark myMark table myTable

(38)

Because Skype doesn’t work when a call hasn’t been initiated this has only been tested using Iperf to send a UDP DataStream and Ethereal [11] on two laptops connected to the home agent to see that the stream can be redirected from one laptop to the other.

One possible solution is to have the possibility to request the redirection from the MN using a simple GUI where the user can type in which protocol it wants to receive and then the

redirection is automatically set up.

Perhaps it would be appropriate that there is question at the desktop to confirm the redirection for security reasons.

The request to the HA can be sent in a registration message if assigning a specific data field for it.

The information that the home agent needs to successfully redirect the traffic is the protocol, the destination address, the destination port number and the name of the tunnel interface.

5.3 Security

Information security is a possible issue, especially when using an unprotected WLAN.

The current version of SEMO uses an OpenVpn tunnel that makes it possible to encrypt the traffic using a shared key system.

I should also be possible to implement some sort of authentication when connecting to the HA from a foreign network.

(39)

References

[1] Nyberg, Seamless Mobility "SEMO: A Policy-Based Prototype for Handovers in Heterogeneous Networks

January 25, 2006

[2] Eklund, Marks, Stanwood IEEE standard 802.16: A Technical Overview of the Wireless MAN Air interface for Broadband Wireless Access

IEEE Communications Magazine June 2002

[3] Ghosh, Wolter, Andrews, Chen Broadband Wireless Access with WiMax/802.16: Current Performance Benchmarks

IEEE Communications Magazine February 2005

[4] Cisco Mobile IP

http://www.cisco.com/en/US/products/ps6590/products_white_paper09186a0080 0a4444.shtml

[5] Salman A. Baset and Henning Schulzrinne "An Analysis of the Skype Peer-to- Peer Internet Telephony Protocol"

http://www1.cs.columbia.edu/~library/TR-repository/reports/reports-2004/cucs- 039-04.pdf

September 15, 2004

[6] http://en.wikipedia.org/wiki/STUN 2006-06-13

[7] http://en.wikipedia.org/wiki/Real-time_Transport_Protocol 2006-06-13 [8] http://openvpn.net, 2006-06-13

[9] Åhlund, Brännström, Zaslavsky Running Variance Metric for evaluating performance of Wireless IP Networks in the MobileCity Testbed

http://www.tt.luth.se/staff/robert/pub/tridentcom05.pdf February 2005

[10] http://dast.nlanr.net/Projects/Iperf/ ,2006-06-13 [11] http://www.ethereal.com, 2006-06-13

References

Related documents

7 These detectors allow a more advanced approach for sequential dual color detection, involving two different intersubband transitions, which dominate the response at dif-

Koncentration Byk022 i provet (mg/g) Tid innan analys (timmar) Area 1,70 0,5 163399 1,57 6 148741 1,52 50 148672 Standardaddition: Resultatet för

Furthermore, health economic evaluations in dentistry would also benefit from estimating QALY weights for various dental health states, preferably ones that are related to

Sammanfattningsvis är det inte är förrän hållbarhet blir en grundsten i organisationen och värdebaserade system balanseras upp av gränssättande system – vilket i

1) Hellre ett betalt jobb än inte: En del människor anser att betydelsen av professionell innebär ett betalande arbete, inte som en obetald amatör som t.ex. Socialt arbete är

situation utgöra en risk för den dementa genom att den möjligtvis inte ges den goda vård och omsorg på det sättet som handläggaren tror. Det framkommer att det aldrig går att

Stable partition means that an invitation by l b is guaranteed to reach every other correct nodes in the partition within one decision period (dcP eriod). Then, within another

The three companies used risk analysis in order for them to improve the security, both for the company itself and for its employees.. All three companies used their own model, but