Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Video traffic optimization in mobile wireless environments using adaptive applications Phd Forum UBICOMM 2008 David Esteban.

Similar presentations


Presentation on theme: "1 Video traffic optimization in mobile wireless environments using adaptive applications Phd Forum UBICOMM 2008 David Esteban."— Presentation transcript:

1 1 Video traffic optimization in mobile wireless environments using adaptive applications Phd Forum UBICOMM 2008 David Esteban

2 2 Multimedia traffic : always very concrete characteristics Streaming data Availability = Priority Video traffic in Wireless networks

3 3 Wireless and mobile nature : – Optimization = Adaptation – Upper layers MUST know the current status of the network. – Vertical communication between layers

4 4 Cross layering Wireless networking : –Multilayer problem –Layer dependency (either directly or not)‏

5 5 Cross-layer Techniques Cross layering Wireless networking : –Multilayer problem –Layer dependency (either directly or not)‏

6 6 Cross-layer Techniques Cross layering Wireless networking : –Multilayer problem –Layer dependency (either directly or not)‏ Define a general concept of communication between layers.

7 7 Cross-layer Techniques Cross layering Wireless networking : –Multilayer problem –Layer dependency (either directly or not)‏ Define a general concept of communication between layers. Concrete Algorithm ??

8 8 Scenario definition AP based video conference environment: –One of the most common applications. –Indispensable tool to different scenarios. –Several kinds mobile wireless users is continuously increasing.

9 9 Previous work USING INTERMEDIATE HARDWARE

10 10 Previous work COMPARISON TABLE Costs ??? Using Intermediate HW Extra Traffic Algorithm definition OptimizationMobility

11 11 Previous work CONDITIONS SET BY THE APPLICATION In this case, there is a software system which is checking the network status. The application will register status conditions on that system. when the system recognize a registered condition has been met, it will notify the application. The application will change its behavior consequently.

12 12 Previous work COMPARISON TABLE Costs ?? Conditions set by application Using Intermediate HW Extra Traffic Algorithm definition OptimizationMobility

13 13 Previous work USING SIGNALING PACKETS Some other previous research proposed the use of signaling packets as reporters of the QoS in the network and then send the information to the application. Weak points : - Inject more packets into the network could be harmful in critical situations - There is no cross-layer algorithm specified to send the information from the lower levels to the application

14 14 Previous work COMPARISON TABLE Costs Using Signaling Packets Conditions set by application Using Intermediate HW Extra Traffic Algorithm definition OptimizationMobility

15 15 Current work Many approaches but weak points. Proposed project : –Check the status of the network : As know the environment conditions is key point in this project. –Inform to the video application : Because the higher layers MUST know this information. –Adapt of behavior In order to optimize the traffic injected into the network depending of the environment. –Avoid weak points So, we will be able to improve the given solutions.

16 Current Work Linux operating system Gnome Desktop 2.20.1 in an Ubuntu distribution. Video App = Kopete v.0.12.7 (Using KDE 3.5.8)‏

17 17 First Step HOW THE NETWORK IS MONITORED? -No use Control packets -Local Updated information : -/proc/net/dev/ -/proc/net/wireless/ -/proc/net/udp/ -/proc/net/tcp/

18 18 First Step HOW THE NETWORK IS MONITORED? -No use Control packets -Local Updated information : -/proc/net/dev/ -/proc/net/wireless/ -/proc/net/udp/ -/proc/net/tcp/ Bytes, Packets, Errors

19 19 First Step HOW THE NETWORK IS MONITORED? -No use Control packets -Local Updated information : -/proc/net/dev/ -/proc/net/wireless/ -/proc/net/udp/ -/proc/net/tcp/ Bytes, Packets, Errors IP addresses and ports

20 20 First Step HOW THE NETWORK IS MONITORED? -No use Control packets -Local Updated information : -/proc/net/dev/ -/proc/net/wireless/ -/proc/net/udp/ -/proc/net/tcp/ Bytes, Packets, Errors IP addresses and ports Interface Status

21 21 First Step HOW THE NETWORK IS MONITORED? -No use Control packets -Local Updated information : -/proc/net/dev/ -/proc/net/wireless/ -/proc/net/udp/ -/proc/net/tcp/ Bytes, Packets, Errors IP addresses and ports Interface Status Wireless Link & Signal

22 22 First Step HOW THE NETWORK IS MONITORED? Obtain this information in an organized way: - C library “Liblink”. - Look at the mentioned sources. - Convert into independent variables. - Easy format to operate with.

23 23 First Step HOW THE NETWORK IS MONITORED? SYNTAX : linkd – t [miliseconds] [OPTIONS] OPTIONS : -vVerbose Mode -i ifaceSet the polling interface -s sock_idSet the socket ID -f output_file Set the log file LINKD This library is invoked by a command called “linkd”

24 24 First Step HOW THE NETWORK IS MONITORED? -Use command : -Invoke library will be summoned -Get the required information in -intervals equal to the specified polling time -from the chosen interface. -If verbose flag -Store information in log file or -Show it in the standard output.

25 Next step Deal with this “organized” raw information

26 Next step Deal with this “organized” raw information Make the application change its behaviour on the fly

27 Next step Deal with this “organized” raw information Make the application change its behaviour on the fly Optimization = Adaptation

28 28 Second Step HOW THE APPLICATION IS INFORMED ABOUT THE NETWORK STATUS? Information is gathered and organized into variables

29 29 Second Step HOW THE APPLICATION IS INFORMED ABOUT THE NETWORK STATUS? Information is gathered and organized into variables “Quality Status”

30 30 Second Step HOW THE APPLICATION IS INFORMED ABOUT THE NETWORK STATUS? Information is gathered and organized into variables “Quality Status” Which information ??

31 31 Second Step HOW THE APPLICATION IS INFORMED ABOUT THE NETWORK STATUS? Information is gathered and organized into variables Which information ?? Priority = wireless parameters. -/proc/net/wireless/ “Quality States”

32 32 Second Step HOW THE APPLICATION IS INFORMED ABOUT THE NETWORK STATUS? The information obtained from that source would be : -Quality-link : Link quality info ( how good the reception is) -Quality-level : Signal strength at receiver (dBm)‏ -Quality-noise: Silence level (no packet) at the receiver (dBm)‏ -Discarded-nwid : Number of discarded packets due to invalid network id. -Discarded-crypt : Number of packets unable to decrypt. -Discarded-frag : Number of fragmented packets So a combination of these parameters will be use to define the “quality state” that will be the reference for the application.

33 Formula details SNR (Signal-Noise relation): 10 * Log10 (Quality-level / Quality-noise) -Bad values : between 0 and 1 -Good values : higher than 5 Adjust parameter Use to give a significative value to the SNR Ad = 5 Error relation : Given a interval t of time : Eparam == 0; If (nwid(t))>(nwid(t-1)) Eparam == Eparam+5; If (crypt(t))>(crypt(t-1)) Eparam == Eparam+5; If (frag (t))>(frag(t-1)) Eparam == Eparam+5; PREVIOUS PARAMETERS

34 Formula details FORMULA DEFINITION Qlink + SNR – Ad – Eparam 10 Qstate = I.e. LinkLevelNoiseNwidCryptFragSNRState 97-28-860004.959(9.705)‏

35 Formula details FORMULA DEFINITION Qlink + SNR – Ad – Eparam 10 Qstate = I.e. LinkLevelNoiseNwidCryptFragSNRState 97-28-860004.959(9.705)‏ 47-70-8901001.083(3.808)‏

36 Quality States Applying the formula we will obtain a number from 0 to 9. The state only depends of the network conditions at that moment. “Quality States” That number is the number of the “quality state”. 0 means the lowest quality state. 9 represents that the environment is in its best condition

37 Layer Communication To inform the application about the “Quality status”. We will need specify a concrete Cross- layer algorithm So it will be a kind of intra-layer message passing system

38 Third Step Sent the state to the application Use primitives for inter-layer messaging Primitives = Small units of information Types of primitives. COMMUNICATION BETWEEN LAYERS Layer N Layer N - m Indication Response

39 Third Step Structure of a primitive : –Five fields : Protocol layer ID (which layer)‏ Protocol ID (which protocol entity)‏ Primitive class ID (which kind)‏ Parameters ( information sent )‏ Portability of the primitives : Any information exchange method between layers can be used with this primitives. COMMUNICATION BETWEEN LAYERS

40 40 Forth Step HOW THE APPLICATION WORKS? Web Cam Yahoo! Protocol

41 41 Forth Step HOW THE APPLICATION WORKS? Web Cam Yahoo! Protocol

42 42 Forth Step HOW THE APPLICATION WORKS? Web Cam Yahoo! Protocol Converts

43 43 Forth Step HOW THE APPLICATION WORKS? Web Cam Yahoo! Protocol Converts Send to destination

44 44 Forth Step HOW THE APPLICATION WILL RESPONSE?

45 45 Forth Step HOW THE APPLICATION WILL RESPONSE? Conversion

46 46 Forth Step HOW THE APPLICATION WILL RESPONSE? Conversion “Quality States”

47 47 Forth Step HOW THE APPLICATION WILL RESPONSE? Conversion “Quality States”

48 48 Forth Step Interaction between parts System Folders Quality States

49 49 Forth Step Interaction between parts Web Cam Original Frame Converted Frame Store & Send System Folders Quality States

50 50 Forth Step Interaction between parts Web Cam Original Frame Converted Frame Store & Send System Folders Once per “-t” Quality States

51 51 Forth Step Interaction between parts Web Cam Original Frame Converted Frame Store & Send System Folders Once per frame Once per “-t” Quality States

52 52 Forth Step Interaction between parts Web Cam Original Frame Converted Frame Store & Send System Folders Once per frame Once per “-t” Quality States

53 53 Evaluation

54 Preliminary Results To check if the adaptation works we made real experiments establishing a video conference between a desktop and a laptop and checked the availability of the communication in different states for both adaptive and non adaptive models.

55 Preliminary Results To check the system was working better thanks to the adaptation we made real experiments establishing a video conference between a desktop and a laptop and checked the percentage of packet loss in different states for both adaptive and non adaptive models.

56 Preliminary Results [ Simulation ]

57 Future work How to get better results in the optimization (maybe adding or changing some sources, changing the formula, etc.). Test the adaptation of the information sent from the multi-conference server to the mobile nodes Implement the cross-layer algorithm details for the intra-layers messaging system from Application layer to Link layer.


Download ppt "1 Video traffic optimization in mobile wireless environments using adaptive applications Phd Forum UBICOMM 2008 David Esteban."

Similar presentations


Ads by Google