+ All Categories
Home > Documents > Video Splitting techniques for Inverse Multiplexing over GPRS channels Roll No: 2006-03-0031 M....

Video Splitting techniques for Inverse Multiplexing over GPRS channels Roll No: 2006-03-0031 M....

Date post: 19-Dec-2015
Category:
View: 222 times
Download: 0 times
Share this document with a friend
Popular Tags:
39
Video Splitting techniques for Inverse Multiplexing over GPRS channels Roll No: 2006-03- 0031 M. Mudassar Nazar
Transcript

Video Splitting techniques for Inverse Multiplexing over GPRS channels

Roll No: 2006-03-0031

M. Mudassar Nazar

2

Roadmap

Introduction Video Splitting Techniques Work accomplished Challenges Faced Future work References Questions

3

IntroductionMajor Hurdle—Multimedia Apps.

Scarcity of Bandwidth– Major hurdle in deployment of multimedia

applications

Situation in our country– In our country, dialup is a major method to access

the internet– DSL is limited to specific areas– In rural area’s even dial up access is limited

4

Introduction— cont. Telecom Revolution

5

Introduction— cont. Problem Formulation

What can we do?

Idea is simple?

6

Introduction— cont.Problem Formulation

What can we do?

Idea is simple?

Aggregate Bandwidth– also known as Inverse

Multiplexing

7

Introduction– cont.Motivation

Telemedicine

Video lecturing Video on demand

8

Introduction– cont. Inverse Multiplexing

A

N network channels

M data packets

M data packets

BS

Input i.e. video

9

Introduction– cont. Inverse Multiplexing

A

N network channels

M data packets

M data packets

BS

Input i.e. video

- Link Layer ML PPP[1]- Transport Layer[2]

10

Introduction– cont. Scheduling—is at core

A

N network channels

M data packets

M data packets

B

Scheduling

11

Introduction– cont. Scheduling—is at core

A

N network channels

M data packets

M data packets

B

Scheduling

bbbb

12

Introduction– cont. Scheduling—is at core

A

N network channels

M data packets

M data packets

B

Scheduling

b1b2b3b4

13

Introduction– cont. Inverse Multiplexing

A

N network channels

M data packets

M data packets

BS

Input i.e. video

Scheduler

14

Introduction– cont. Inverse Multiplexing

A

N network channels

M data packets

M data packets

BS

Input i.e. video

SchedulerSplitting

15

Video Splitting Techniques

MobiStream [4] explains four major video splitting categories:

– Partitioning of video frames into slices– Multiple Description Coding– Slice Structured Coding– Inter-frame/ intra-frame slice interleaving

16

Video Splitting TechniquesBlock Interleaving

Different Block interleaving techniques are proposed in [5] :

– Triangular– Quadrant– Coefficient

17

Video Splitting TechniquesTriangular Interleaving

In this, a DCT block is divided into two groups. Lower triangular region and the upper triangular region.

Then these groups from different blocks are interleaved in such a way that if a lower portion of the triangle is lost, then there is high probability that higher portion is not lost and vice versa.

DC coefficients are grouped in a separate block and can be transmitted on a reliable channel.

18

Video Splitting TechniquesQuadrant Interleaving

In this, a DCT block 8x8 is divided into four groups instead of two namely, L, HD, VD, and HI.

A macro block of 16x16 is made from above blocks and number in a clock wise manner from 0 to 3.

Select Li (i= 0,1,2,3) and HDi+1, HIi+2 and UDi+3

from others to form new interleaved 8x8 blocks within the16x16 block.

19

Video Splitting TechniquesCoefficient Interleaving

This scheme treats each DCT coefficient as a group Main idea is to shuffle the coefficients. Lets say if we have 63 groups in a block. Then we

take first group from block 1, second from block 2 to interleave.

This scheme works on the coefficient level. Although this produces high degree of interleaving but this also compromises on compression efficiency.

20

Work Accomplished

Experiments to check the behavior of real GPRS channels (Warid)

Built an application layer that can:– Identify new GPRS devices and make connection with them

using Bluetooth– Maintains a list of available GPRS devices for scheduling

purpose.– Provide an interface to outer world to schedule packets.

Note: RR Scheduling being used in the layer.

21

Work AccomplishedExperiments

Different experiments for GPRS have been performed in order measure:

RTT– Using ping

Jitter

ji = │ti-ti-1- α│Where

ji is the jitter for ith observation

ti is the receiver time stamp for ith packet

22

Work AccomplishedExperiments

ti-1 is the receiver time stamp for (i-1)th packet and α is the time spacing for generation of two

consecutive packets at sender.

and bandwidth estimation– Using pathload (a bandwidth measurement

tool)[3]

23

Work AccomplishedExperiments—RTT Variation

Figure 1

0

500

1000

1500

2000

2500

1 75 149 223 297 371 445 519 593 667 741 815 889 963

Time

RT

T(m

s)

24

Work AccomplishedExperiments—Jitter (α=1s)

Figure 2

0

500

1000

1500

2000

0 200 400 600 800 1000

Time

Jit

ter(

ms)

25

Work AccomplishedExperiments—Jitter (α=2s)

Figure 3

0

200

400

600

800

1000

1200

1400

1600

0 200 400 600 800 1000 1200

Time

Jit

ter(

ms)

26

Work AccomplishedExperiments—statistics

Experiments Mean Dev. Max. Min. Loss

RTT 588 353 2367 204 5%

Jitter(1s) 333 289 1830 0 2.6%

Jitter(2s) 149 208 1390 0 2.2%

27

Work AccomplishedExperiments—Bandwidth

Using pathload[3], we have measured the available bandwidth around 5 times. It was ranging from 2kbps to 4kbps depending on the time it was measured.– Horde [2] measurement shows: that it was around

19kbps during day and 25kbps at night—validate it (a real point to be noted)

28

Work AccomplishedExperiments—concluding remarks

High variability is giving us a clue that whatever is the architecture of inverse multiplexer, we need a sophisticated scheduling scheme for the best performance. And we need video splitting technique that is resilient to losses.

Different levels of jitter is experienced for different values of α.

The bandwidth estimation gap between our and Horde is pointing us towards:

– Either our measurement methodology has problems or– We need to work on the feasibility of Inverse Multiplexing in

Pakistan.

29

Work AccomplishedScheduling layer

This layer provides:– Provide an interface to outer world in order to

schedule packets– Identify new GPRS devices and make connection

with them using Bluetooth– Maintains a list of available GPRS devices for

scheduling purpose.

30

Work AccomplishedScheduling layer—Main Components

Device Discoverer Channel Manager Scheduler

Shell Scripts– Used by the main components

31

Work AccomplishedScheduling layer—Device Discoverer

Its responsibilities are

– To search new devices after periodic intervals– To make connection with them – To create a new routing table and rule for this

particular interface– And adding them to devices list

32

Work AccomplishedScheduling layer—Channel Manager

Its responsibility is synchronize the device list to actual available channels

It handles:– Removal of devices from the device list that

disappeared– Addition of some missing Blue channels

33

Work AccomplishedScheduling layer—Scheduler

Its responsibility is to queue the data transfer requests from

above layer and schedule them to the available blue

channels in a round robin fashion.

34

Work AccomplishedScheduling layer—Scripts

These scripts are used by other components to perform various tasks:– makeConnection.sh

To make connection with the device just discovered. This is used by the Device Discoverer

This scripts also releases the unused rfcomm devices

– getLastInterfaceDetails.sh To get the IP and other parameters of the current device

we have made connection with. This is also used by the Device Discoverer

35

Work AccomplishedScheduling layer—Scripts cont.

– getPPPInterfaces.sh This is used by the Channel Manager in order get all

available blue channels at this particular time.

– init_alternate_route.sh This is also used by both, the Device Discoverer and

Channel Manager, to create a separate routing table and rule for a blue channel.

– init_route.sh This is called at start of the program in order to initialize

routing table for Ethernet interface (if any)

36

Challenges Faced

Following are some the challenges faced during the implementation of above layer:

How to make a GPRS connection using API. API selection, understanding it and using it for our purpose.

– I have used avetana Bluetooth stack and pppd to make a connection over rfcomm.

How to use multiple default routes. As we have different links to internet.

– This is accomplished using ip utility in Linux. The idea is simple that we create a separate routing table for each interface and then make a rule to use that table if data originates from that particular interface.

37

Future Work

Following areas can be explored: Experimenting with different video splitting

techniques described above using the simple scheduling layer implemented above.

Defining a better scheduling scheme that maximizes the performance of the inverse multiplexer. This include the rate control on different links to reduce packet loss

38

References

[1] Alex C. Snoeren, “Adaptive Inverse Multiplexing for wide-area wireless networks”, Proceedings of IEEE GlobeCom’99

[2] Qureshi A. and Guttag J., “Horde: Separating Network Striping Policy from Mechanism”, ACM MOBISYS’05

[3] Manish Jain, Constantinos Dovrolis, “Pathload: A Measurement Tool for End-to-End Available Bandwidth”, in Proceedings of 3rd Passive and Active Measurements Workshop, Fort Collins, March 2002.

[4] Rajiv Chakravorty, Suman Banerjee, Samrat Ganguly, “MobiStream: Error-Resilient Video Streaming in Wireless WANs using Virtual Channels”, Proceedings of IEEE Infocom 2006

39

Question—if you still have any


Recommended