qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

70

Click here to load reader

Upload: mshari-alabdulkarim

Post on 16-Apr-2017

2.117 views

Category:

Technology


4 download

TRANSCRIPT

Page 1: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

1

Computer and Information SciencesComputer Engineering Department

By Eng. Mshari Alabdulkarim

QoS Provisioning for Scalable Video Streaming Over Ad-Hoc Networks Using Cross-Layer Design

Page 2: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

2

Multi-hop Wireless Networks. Quality of Service (QoS). Cross-layer Design. Scalable Video Coding. Simulation Environment. Proposed Solution. Results and Findings. Future Works. Publications from this Thesis.

Outline

Page 3: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

3

Multi-hop Wireless Networks

Page 4: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

4

Multi-hop Wireless Networks (MHWNs): It is defined as a collection of nodes that communicate with each other wirelessly by using radio signals with a shared common channel.

Host Switching Unit

Hop

Path, chain or route

Multi-hop Wireless Networks

Source Destination

Page 5: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

5

There are several names for MHWNs; it could be called packet radio network, Ad-Hoc network or mobile network.

The nodes here could be named stations or radio transmitters and receivers.

MHWNs

Ad-Hoc Networks Mesh Networks

Wireless Sensor

Networks

Multi-hop Wireless Networks

Page 6: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

6

Ad-Hoc Networks: Nodes in the network are mobile in general.

The wireless hosts in such networks, communicate with each other without the existing of a fixed infrastructure and without a central control.

A mobile ad-hoc network can be connected to other fixed networks or to the Internet.

Most of the Ad-Hoc networks use the allocated frequencies for the Industrial, Scientific and Medical (ISM) band.

Multi-hop Wireless Networks

Page 7: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

7

Ad-hoc networks have several advantages over the traditional networks, like:

Ad-hoc networks can have more flexibility.

It is better in mobility.

It can be turn up and turn down in a very short time.

It can be more economical.

It considered a robust network because of its non-hierarchical

distributed control and management mechanisms.

Multi-hop Wireless Networks

Page 8: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

8

The main challenges face the Ad-Hoc networks are the following:

Energy conservation: Nodes in Ad-Hoc networks are equipped with limited batteries.

Unstructured and/or time-varying network topology: Because of the nodes mobility, that makes the network topology usually unstructured and makes the optimizing process a difficult task.

Scalability & heterogeneity: In some cases, there will be a huge number of nodes.

Multi-hop Wireless Networks

Page 9: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

9

Low-quality communications: In general, the wireless channel is weak, unreliable, unprotected from outside interferences, and the quality of the network can be affected by the environmental factors.

Resource-constrained computation: The resources in Ad-Hoc networks “such as network bandwidth” are available in limited amounts.

Ease of snooping on wireless transmissions (security hazard).

Multi-hop Wireless Networks

Page 10: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

10

In addition to that, Ad-Hoc networks inherit some of the issues which are faced by the traditional wireless networks, like:

There are no known boundaries for the maximum range that nodes will be able to receive network frames.

The wireless channel has time-varying and asymmetric propagation properties.

Hidden-node and exposed-node problems may occur.

Multi-hop Wireless Networks

Sender 1 Sender 2Receiver

COLLISION

Receiver Transmitter Exposed Node

BlockedBy The

Transmitter

Page 11: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

11

Applications of Ad-Hoc Networks :

Multi-hop Wireless Networks

Source

Sink

Page 12: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

12

Multi-hop Wireless Networks

ZigBee Standard

Page 13: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

13

ZigBee is a new standard for the ad-hoc networks based on the IEEE 802.15.4 standard.

The ZigBee standard is a specification for Low Rate Wireless Personal Area Networks (LR-WPANs) that are formed and maintained under the ZigBee working alliance.

Multi-hop Wireless Networks

Page 14: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

14

Multi-hop Wireless Networks

Application Layer

Network Layer

MAC Sub-Layer

Physical Layer

Defined in the ZigBee Specification

Defined in the IEEE 802.15.4 Standard

Three physical layers:• 2.4 GHz • 915 MHz• 868 MHz

Based on DSSS

Based on CSMA/CA

Slotted(beacon enabled mode)

Un-Slotted(beaconless mode)

Data rate for each channel is 250 kbps

Page 15: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

15

Multi-hop Wireless Networks

Routing Protocol

Page 16: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

16

Ad-Hoc On-Demand Distance Vector Routing (AODV):

The AODV routing protocol is based on the Destination Sequenced Distance Vector (DSDV) algorithm.

It can minimize the number of required broadcasts by creating routes in on-demand basis.

It is considered as a pure on-demand route acquisition system.

Multi-hop Wireless Networks

Page 17: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

17

Multi-hop Wireless Networks

RREQ

RREQ

RREQ

RREQ

RREQ

RREQ

RREQ

RREQ

RREQ

RREQ

RREQ

RREQ

RREQ

RREQ

RREQ

RREQ

RREQ

RREQ

RREQ

RREQ

Source

Destination

Route Discovery Process in AODV:

* Route Request (RREQ)

Last Sequence Number for the

Destination

Broadcast ID

Node’s IP Address

The intermediate nodes reply to the RREQ only if they have a route to the destination with a sequence number equal or greater than the one included in the RREQ.

Page 18: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

18

Multi-hop Wireless Networks

Source

Destination

Route Discovery Process in AODV:

* Route Replay (RREP)

RREP RREPRREP RREP RREP

RREP

Page 19: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

19

Multi-hop Wireless Networks

The source node needs to reinitiate the route discovery protocol every time it moves.

If any node in the route moves away, its upstream neighbor propagates a link failure notification message (RREP with ∞ metric).

Nodes in AODV use hello messages to inform about their neighbors in the network, and for maintaining the connectivity of nodes.

RREQ

RREP∞HELLO

Page 20: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

20

Quality of Service

Page 21: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

21

In general, QoS is defined as a measure of how well the network performs its tasks and satisfies the users’ requirements.

QoS represents the set of parameters which should be implemented in the network infrastructure to meet the service performance requirements.

Performance Parameters

Throughput Jitter Packet Loss Availability

Transmission Propagation Queuing Processing

Quality of Service

Delaybps

Link

Failure

Transmission

Errors

NetworkCongestion

%

Page 22: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

22

The QoS requirements can be differ based on the provided service.

There are another important problems in Ad-Hoc network when providing QoS such as routing, maintenance and variable resource problems .

Transferring a file Multimedia Streaming

Quality of Service

Page 23: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

23

The QoS in multi-hop network can be classified based on the QoS approaches or based on the layer at which nodes operate in the network protocol stack.

QoS Approaches

Coupled Decoupled

QoS Approaches

Independent Dependent

Quality of Service

Page 24: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

24

Cross-layer Design

Page 25: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

25

In the early stage of the multi-hop wireless networks, the network protocol design was based on the layered architecture.

The main feature of this approach was the simplicity of the protocol design.

However, this approach was not ideal for the multi-hop wireless networks, because of its inflexibility which result in poor performance.

Cross-layer Design

Application

Presentation

Session

Transport

Network

Data Link

Physical

OSI Model

Page 26: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

26

In the layered architectures, the networking task will be divided and distributed among layers, and each layer will be assigned to provide certain services.

The communication between nonadjacent layers is forbidden, while the adjacent layers can only communicate procedure calls and responses.

Protocols in the layered architecture are designed by respecting the rules of the reference architecture.

Cross-layer Design

Layer 1

Layer 2

Layer 3

Layer 1

Layer 2

Layer 3

Task 1

Task 2

Task 3

Page 27: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

27

The cross-layer design can be defined as a protocol design by the violation of the reference layered communication architecture with respect to a certain layered architecture.

The violation of a layered architecture can be done in many different ways.

After the violation of the layered architecture, the layers will be no longer separated.

Cross-layer Design

Page 28: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

28

Interface for explicit

notification from a

lower layer to higher

layer

Upward information flow

Downward information flow

Interfaceto set alowerlayer

parameter

Back-and-forth information flow

Creation of New Interfaces

Cross-layer Design

Categories of cross-layer designs:

1

Notifications

Hints

Page 29: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

29

Merging of adjacent layers

Coupling without new interfaces

Verticalcalibration

Designed layer

Fixed layerSuper layer

Cross-layer Design

Categories of cross-layer designs:

2 3 4

Page 30: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

30

Based on the number of layers involved in optimizations (single, multiple or full), the cross-layer design can be categorized to three types:

• Layer trigger scheme.

• Joint optimization scheme.

• Full cross-layer design.

Cross-layer Design

Page 31: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

Space and Time

Flow Distribution

Traffic Volume

Network Status

Power Control Modulation / RateAdaptation

Physical Layer

Scheduling Channel Assignment

MAC Layer

Admission Control Routing

Network Layer

Rate Control Congestion Control

Transport Layer

QoS Support With Cross-layer Design:

IdeasNetwork Topology

Cross-layer Design

31

Page 32: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

32

Scalable Video Coding

Page 33: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

33

The video stream consists of multiple frames that are displayed in a certain frame rate.

The size of the frames is specified by the format of the frame.

Scalable Video Coding

𝒇𝒓𝒂𝒎𝒆𝒑𝒆𝒓𝒊𝒐𝒅=𝟏

𝒇𝒓𝒂𝒎𝒆𝒓𝒂𝒕𝒆

pixels

Format Video Resolution (in pixels)Size Used in This Thesis 96 × 80

Quarter CIF (QCIF) 176 × 144Common Intermediate Format (CIF) 352 × 288

UTwo chrominance components, hue

YLuminance Component

VIntensity

Page 34: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

34

The constraints on the multimedia applications can be different from one device to another.

This issue, is one of the reasons which makes the video compression plays a major role in video transmission nowadays.

The main goal of the video compression algorithms is to achieve an optimal compression while maintaining a low level of distortion from the compression process.

Scalable Video Coding

Page 35: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

35

Video compression or what is known as video coding is the process of compacting a digital video signal into a fewer number of bits.

The reduction of the video size by the compression process is achieved by removing redundancy (unnecessary components for reproduction process).

Compression Process

Compressor (Encoder)

De-compressor (Decoder)

Scalable Video Coding

Page 36: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

36

videoInput

CoefficientsResidualFrames

Motion Vectors EncodedOutput

Video Coding

Scalable Video Coding

TemporalModel

StoredFrames

SpatialModel

EntropyEncoder

Page 37: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

37

Scalability means it is possible to remove some parts of the stream while maintaining a result that forms another valid bit stream for some target decoder, and represents the original content with a reconstruction quality that is less than the original bit stream.

Scalable Video Coding

It allows recipients, and other network elements, to adjust the video stream according to their capabilities.

It can help in protecting the more important parts of the bit stream from being dropped or lost in case of congestion.

Page 38: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

38

Scalable Video Coding

ScalabilityModes

Temporal Spatial Quality / SNR

Page 39: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

39

Quality scalability:

The quality scalability a.k.a. "SNR scalability" is similar to the spatial scalability but without changing of resolution between layers.

Scalable Video Coding

QualityScalability

Coarse Grain Scalability

Medium Grain Scalability

Fine Grain Scalability

Page 40: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

40

Scalable Video Coding (SVC) is an encoding technique that allows adapting to the variable network conditions.

It has been standardized by the Joint Video Team (JVT) of the ISO/IEC Moving Pictures Experts Group (MPEG) and the ITU-T Video Coding Experts Group (VCEG) as an extension for the H.264/AVC standard.

Scalable Video Coding

Page 41: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

41

Simulation Environment

Page 42: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

42

Simulation Environment

Tools Used in This Thesis:

Network Simulator 2: It is an open source object oriented discrete-event simulator. It is written in C++, and it uses Object Tool Command Language (OTcl) as a command and configuration interface.

NetworkScenario

Page 43: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

43

Simulation Environment

Joint Scalable Video Model (JSVM): It is an open source project written in C++ and used as the reference software for the Scalable Video Coding (SVC) project.

Scalable Video-streaming Evaluation Framework (SVEF): It is a mixed online/offline open-source framework used to evaluate the performance of H.264/SVC video streaming. SVEF is written in C and Python and released under the GNU General Public License.

Page 44: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

44

Simulation Environment

myEvalSVC & myEvalSVC_Sink: They are a customized agents used to evaluate H.264/SVC transmission over NS2 simulator.

Cygwin: It is software provides Linux look and feel environment for Microsoft Windows.

Visual C++ 2008 Express Edition: Microsoft Visual C++ is an Integrated Development Environment (IDE) product from Microsoft for the C, C++, and C++/CLI programming languages.

Page 45: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

45

Simulation Environment

Simulation Parameters:

Parameter Used Value

Network Dimensions 2000 m × 2000 mSimulation Duration 100 sNumber of Nodes 3, 20Number of Sources 1, 2Traffic Type Scalable Video (SVC)

YUV Video Sequence FOREMANNumber of Frames 150

Frame Rate 15 fpsResolution (in pixels) 96 × 80

YUV Video Sequence BUSNumber of Frames 150

Frame Rate 15 fpsResolution (in pixels) 96 × 80

Max Fragmented Size 80 Bytes

MAX

Queue Size 50, 100Routing Protocol AODVChannel Type Wireless Channel

Wireless

Radio Propagation Model Two Ray Ground Network Interface Type IEEE 802.15.4

MAC Type IEEE 802.15.4

Interface Queue Type Drop Tail - Priority QueueAntenna Model Omni AntennaAntenna Location (X_, Y_, Z_) (0, 0, 0.5)

X

Y

Z

Transmit Antenna Gain (Gt) 1.0 dBi

Receive Antenna Gain (Gr) 1.0 dBi

Operating Frequency 2.4 GHzData Rate 250 KbpsSystem Loss Factor 1.0 Transmitted Signal Power (Pt_) 0.001 w Carrier Sensing Threshold (CS)

Receiver Threshold (RX)

Page 46: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

46

JSVM Encoder(H264AVCEncoderLibTestStatic)

• YUV Video• Main Configuration File• Layer Configuration File

Encoding Processencoding.txt

OriginalBitstream.264

Video

ReconFilerec.yuv

Reconstructed file

JSVM BitStreamExtractor(BitStreamExtractorStatic)

JSVM Decoder(H264AVCDecoderLibTestStatic)

NALU Trace Fileoriginaltrace.txt

Reconstructed Video

SequenceBitstream.yuv

Decoding Process

decoding.txt

Preparing Input Trace1

Simulation Environment

#============================== GENERAL =======================================OutputFile Bitstream.264 # Bitstream file (Specifies the filename # for the bit-stream to be encoded)FrameRate 15.0 # Maximum frame rate [Hz]#MaxDelay 1200.0 # Maximum structural delay [ms]FramesToBeEncoded 150 # Number of frames (at input frame rate) # (Specifies the number of frames of the # input sequence to be encoded). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

#====================== INPUT / OUTPUT =========================================SourceWidth 96 # Input frame widthSourceHeight 80 # Input frame heightFrameRateIn 15 # Input frame rate [Hz]FrameRateOut 15 # Output frame rate [Hz]InputFile FOREMAN_96x80_15.yuv # Input file#ReconFile rec_layer.yuv # Reconstructed file#SymbolMode 0 # 0=CAVLC, 1=CABAC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SAMPLE FOR “MAIN CONFIGURATION FILE”

SAMPLE FOR “LAYER CONFIGURATION FILE”

JSVM 9.19.14 EncoderInfo: MaxDeltaQP was set to 0 for layer with MGSVectorModeprofile & level info:=====================DQ= 0: Main @ Level 1DQ= 1: Scalable High Intra @ Level 1DQ= 2: Scalable High Intra @ Level 1DQ= 3: Scalable High Intra @ Level 1AU 0: I T0 L0 Q0 QP 32 Y 33.6156 U 39.4929 V 39.9656 6032 bit 0: I T0 L0 Q1 QP 32 240 bit 0: I T0 L0 Q2 QP 32 200 bit 0: I T0 L0 Q3 QP 32 Y 33.6427 U 39.4929 V 40.0422 176 bit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SAMPLE FOR “encoding.txt”

JSVM 9.19.14 Decoder---------- new ACCESS UNIT ---------- NON-VCL: SEI NAL UNIT [message(s): 24] NON-VCL: SEQUENCE PARAMETER SET (ID=0) NON-VCL: SUBSET SEQUENCE PARAMETER SET (ID=0) NON-VCL: PICTURE PARAMETER SET (ID=0) NON-VCL: PICTURE PARAMETER SET (ID=1) NON-VCL: SEI NAL UNIT [message(s): 10] Frame 0 ( LId 0, TL 0, QL 0, AVC-I, BId-1, AP 0, QP 32 ) Frame 0 ( LId 0, TL 0, QL 1, SVC-I, BId 0, AP 0, QP 32 ) Frame 0 ( LId 0, TL 0, QL 2, SVC-I, BId 1, AP 0, QP 32 ) Frame 0 ( LId 0, TL 0, QL 3, SVC-I, BId 2, AP 0, QP 32 ). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SAMPLE FOR “decoding.txt”

Start-Pos. Length LId TId QId Packet-Type Discardable Truncatable========== ====== === === === ============ =========== ===========0x00000000 57 0 0 0 StreamHeader No No0x00000039 12 0 0 0 ParameterSet No No0x00000045 8 0 0 0 ParameterSet No No 0x0000004d 18 0 0 0 SliceData No No. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SAMPLE FOR “originaltrace.txt”

Page 47: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

47

NALU Trace FileOriginaltrace.txt

Preparing Input Trace2

Decoding Processdecoding.txt

F-N Stamp(f-nstamp)

sendingtrace.txt

NS2_Trace.awk

NS2_Trace.txt

Simulation Environment

0x00000000 57 0 0 0 StreamHeader No No -1 00x00000039 12 0 0 0 ParameterSet No No -1 00x00000045 8 0 0 0 ParameterSet No No -1 00x0000004d 18 0 0 0 SliceData No No 0 00x0000005f 745 0 0 0 SliceData No No 0 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SAMPLE FOR “sendingtrace.txt”

0.000000 787 0 0 0 00.033333 240 0 0 0 20.066667 275 0 0 0 30.100000 244 0 0 0 40.133333 262 0 0 0 50.166667 283 0 0 0 60.200000 303 0 0 0 7. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SAMPLE FOR “NS2_Trace.txt”

TimeFrame

Size LId TId QIdFrame

Number

FrameNumber

SendingTime

Page 48: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

48

Simulation Flow

Transport

Application

Network

Logical Link Control

Interface Queue

Medium Access Control

Network Interface

Physical

NS2_Trace.txt

myEvalSVC

UDP

AODV

PriQueue / MyPriQueue

IEEE 802.15.4

IEEE 802.15.4

Transport

Application

Network

Logical Link Control

Interface Queue

Medium Access Control

Network Interface

Physical

VideoTrace

myEvalSVC_Sink

UDP

AODV

PriQueue / MyPriQueue

IEEE 802.15.4

IEEE 802.15.4

Simulated NetworkSource

NodeSink

Node

Simulation Environment

NS2

Page 49: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

49

Reconstructing Video1

NS2_Trace.txt

NS2 SimulatorLRWPAN.tcl

Output Video TraceVideoTrace videoTrace.datSimulation Trace

LRWPAN.tr

Prepare_ReceivedTrace_Step1.awk

SVEF FormatNS2_VideoTrace sendingtrace.txt

Prepare_ReceivedTrace_Step2.exe

Simulation Environment

40.558194 787 0 0 0 040.575762 240 0 0 0 240.597426 275 0 0 0 340.620082 244 0 0 0 440.655271 262 0 0 0 540.687997 283 0 0 0 6. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SAMPLE FOR “NS2_VideoTrace”

ReceiveTime

FrameSize LId TId QId

FrameNumber

40.097163 0 100 0 0 0 0 40.000000 40.104203 0 100 0 0 0 2 40.000000 40.109964 0 100 0 0 0 1 40.000000 40.139287 0 100 0 0 0 6 40.000000 40.145175 0 74 0 0 1 10 40.033333 40.151256 0 100 0 0 0 3 40.000000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SAMPLE FOR “VideoTrace”

ReceiveTime

SendingTime

FrameNumber

PacketSize LId TId QId

PacketID

Page 50: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

50

Reconstructing Video2

Prepare_ReceivedTrace_Step2.exe

received.txt sendingtrace.txt

SVEF nalufilter

filteredtrace.txtOriginal

Bitstream.264Video

JSVM BitStreamExtractor(BitStreamExtractorStatic)

Simulation Environment

0x0000004d 18 0 0 0 SliceData No No 0 405580x0000005f 745 0 0 0 SliceData No No 0 405580x00000348 18 0 0 0 SliceData No No 2 405750x0000035a 198 0 0 0 SliceData No No 2 405750x00000420 18 0 0 0 SliceData No No 3 405970x00000432 233 0 0 0 SliceData No No 3 40597. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SAMPLE FOR “received.txt”

Start-Pos. Length LId TId QId Packet-Type Discardable Truncatable========== ====== === === === ============ =========== ===========0x00000000 57 0 0 0 StreamHeader No No -1 00x00000039 12 0 0 0 ParameterSet No No -1 00x00000045 8 0 0 0 ParameterSet No No -1 00x0000004d 18 0 0 0 SliceData No No 0 405580x0000005f 745 0 0 0 SliceData No No 0 405580x00000348 18 0 0 0 SliceData No No 2 405750x0000035a 198 0 0 0 SliceData No No 2 40575. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SAMPLE FOR “filteredtrace.txt”StartPosition

FrameSize LId TIdQId

FrameNumber

Packet-Type DiscardableTruncatable

SendingTime

Page 51: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

51

Reconstructing Video3

JSVM BitStreamExtractor(BitStreamExtractorStatic)

Bitstream-filter.264

JSVM Decoder(H264AVCDecoderLibTestStatic)

Bitstream-filter.yuvfilteredtrace.txt

SVEF framefilter

Bitstream-conceal.yuv

Simulation Environment

Page 52: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

52

Proposed Solution

Page 53: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

53

1) Reducing the total number of the dropped base frames.

2) Reducing the total number of useless enhancement frames.

3) Giving the base frame a high priority when network is congested.

4) Reducing the average delay as much as possible.

5) Maintaining an acceptable jitter value.

6) Balancing between the simplicity of the design and the performance.

7) Maintain the layering principle as much as possible.

Proposed Solution

GoalsSimplicity

Efficiency

Creative

Page 54: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

54

Transport

Application

Network

Logical Link Control

Interface Queue

Medium Access Control

Network Interface

Physical

Qid Value

NB

Proposed Cross Layer Design Framework:

Queue Length

Proposed Solution

Page 55: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

55

Proposed Solution

Page 56: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

56

Results and Findings

Page 57: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

57

Results and Findings

In Simulation Scenarios, the following points have been considered:

Evaluating the proposed design on stressed networks.

Study the effect of queue size on the proposed solution.

Evaluate the proposed design with different movement scenarios.

Evaluate the proposed design with different number of nodes.

Evaluate the proposed design with different number of senders.

Page 58: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

58

Results and Findings

Acronyms and Notations:

PriQueue: represent the results for the original system.

MyPriQueue: represent the results when the proposed design is applied.

Qid0: Base frames.

Qid1: First enhancement frames.

Qid2: Second enhancement frames.

Qid3: Third enhancement frames.

UQid: Useless enhancement frames.

Page 59: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

59

Results and Findings

Scenario Number 1

Qid0 Qid1 Qid2 Qid3 UQid0

20

40

60

80

100

120

140

Source #1

Fram

e

Qid0 Qid1 Qid2 Qid3 UQid0

50

100

150

200

250

Source #2

Fram

e

Source #1 Source #20

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

Average Delay

Seco

nd

Source #1 Source #20

0.005

0.01

0.015

0.02

0.025

0.03

0.035

0.04

Average Jitter

Seco

nd

Queue Size: 50

Page 60: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

60

Results and Findings

Scenario Number 2

Qid0 Qid1 Qid2 Qid3 UQid0

50

100

150

200

250

300

350

400

450

Source #1

Fram

e

Avg. Delay0.46

0.48

0.5

0.52

0.54

0.56

0.58

0.6Se

cond

Avg. Jitter0

0.02

0.04

0.06

0.08

0.1

0.12Se

cond

Queue Size: 50

Page 61: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

61

Results and Findings

Scenario Number 3

Qid0 Qid1 Qid2 Qid3 UQid0

20406080

100120140160180200

Source #1

Fram

eQid0 Qid1 Qid2 Qid3 UQid

0

20

40

60

80

100

120

140

160

Source #2

Fram

e

Source #1 Source #20

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

Average Delay

Seco

nd

Source #1 Source #20

0.01

0.02

0.03

0.04

0.05

0.06

Average Jitter

Seco

nd

Queue Size: 50

Page 62: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

62

Results and Findings

Scenario Number 4

Qid0 Qid1 Qid2 Qid3 UQid0

20

40

60

80

100

120

140

Source #1

Fram

e

Qid0 Qid1 Qid2 Qid3 UQid0

20406080

100120140160180200

Source #2

Fram

e

Source #1 Source #20

0.1

0.2

0.3

0.4

0.5

0.6

0.7

Average Delay

Seco

nd

Source #1 Source #20

0.01

0.02

0.03

0.04

0.05

0.06

0.07

0.08

Average Jitter

Seco

nd

Queue Size: 100

Page 63: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

63

Results and Findings

Scenario Number 5

Qid0 Qid1 Qid2 Qid3 UQid0

50

100

150

200

250

Source #1

Fram

e

Avg. Delay0.88

0.9

0.92

0.94

0.96

0.98

1

1.02Se

cond

Avg. Jitter0

0.05

0.1

0.15

0.2

0.25

0.3Se

cond

Queue Size: 100

Page 64: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

64

Results and Findings

Scenario Number 6

Qid0 Qid1 Qid2 Qid3 UQid0

20

40

60

80

100

120

140

160

Source #1

Fram

e

Qid0 Qid1 Qid2 Qid3 UQid0

50

100

150

200

250

300

350

Source #2

Fram

e

Source #1 Source #20

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

Average Delay

Seco

nd

Source #1 Source #20

0.005

0.01

0.015

0.02

0.025

0.03

Average Jitter

Seco

nd

Queue Size: 50

Page 65: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

65

Results and Findings

Scenario Number of Nodes

Number of Senders

Queue Size(Packet)

Movement Pattern

Number of Base frame Saved

Average Delay Reduced (Sec)

1 3 2 50 Fixed 28 0.382357

2 20 1 50 Fixed 57 0.066058

3 20 2 50 Fixed 39 1.22527

4 3 2 100 Fixed 38 0.386398

5 20 1 100 Fixed 75 0.074999

6 20 2 50 Mobile 32 0.421745

Notes and discussion

Effects of Number of NodesEffects of Queue SizeEffects of Number of SendersEffects of Movement Scenarios

Page 66: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

66

Future Work

Page 67: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

67

Future Work

Some of the interesting open issues and future work for this thesis:

Deploying the proposed framework in a real environment.

Consider the noise in the design and in the evaluation process.

Prevent the useless frames from being sent.

Find a way to reduce the effect of the proposed design on the average jitter.

Increase the number of simultaneous senders while maintaining good video quality.

Page 68: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

68

Publications from this Thesis

Page 69: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

69

Publications from this Thesis

Conference:International Conference on Wireless

Communications, Networking and Mobile Computing

Paper Title:QoS Provisioning for H.264/SVC Streams over Ad-Hoc

ZigBee Networks using Cross-Layer Design

Founded by:King Abdulaziz City for Science and Technology under

grant number ARB-29-54

Page 70: Qo s provisioning for scalable video streaming over ad hoc networks using cross-layer design

70