pera per sonal a ssistance engin deveci computer engineering department bogazici university...

23
PERA PERsonal Assistance Engin Deveci Computer Engineering Department Bogazici University [email protected] Can Komar Computer Engineering Department Bogazici University [email protected]

Post on 20-Dec-2015

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

PERsonal Assistance

Engin DeveciComputer Engineering Department

Bogazici University

[email protected]

Can KomarComputer Engineering Department

Bogazici University

[email protected]

Page 3: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

OVERALL PICTURE

• Location Manager

• Session Manager

• PERsonal Assistance – PERA

• PERA web component – PERAw

Page 5: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

PERA

• Presence

• Location Based Services – LBS

• Voice

• Video

• Session Initiation and negotiation via SIP

• Instant Messaging - IM

Page 6: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

SIP API• Provides

– Abstraction of SIP Signalling– Easy to Use API– Efficient and Reliable– Compatible With SIP RFC 3261

• Features– Registration– Multiple Voice Call– Instant Messaging– Presence

Page 7: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

SIP API• Architecture

– Event Driven– Blocking / Non-Blocking use– Implementation in C/C++

• Example– SIPPlaceCall(sip_context ,

“Altug Simsek”,“altugsi”,“o2.com.tr”, “Engin Deveci”,“enginde”,“o2.com.tr”, local_sdp );

Page 8: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

SESSION MANAGER

• Registrar• Redirect• Proxy

Page 9: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

SESSION MANAGER• FEATURES

– Registration– Voice Call – Instant Messaging– Presence

• ARCHITECTURE– RFC 3261– C/C++

Page 10: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

Performance of SM

0102030405060708090

100

10 thread 5 thread 1 thread

Thread #

CP

S

10000calls

SM is on : 256MB Ram PIII 866 Win2K Prof SP2 100 Mbps LAN

Simulators are on: 256MB Ram PIII 800 Win2K Prof SP3 100 Mbps LAN

Page 11: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

Location Manager

• WLAN Tracker is a server-client system that is implemented in a combination of Java and C

• It is designed to track the users in different physical areas in a multithreaded manner and provide location based services (messages etc.) to them

Page 12: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

Location Manager• Implemented in software, no extra hardware is used• Components of the system

– Server: Collects and evaluates data– Client: Sniffs the wireless medium and informs the server– WAP: IEEE 802.11 compliant access points

• Basic Idea– Every point on a surface has a different combination of signal levels

received from different WAPs. Using this information a radio map of a surface can be prepared.

• Server is implemented in pure Java thus platform independent.• Client is implemented in C and Java due to driver dependency.

Page 13: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

Location Manager

• Off-Tracking: In this phase, the radio map is prepared. (Data Collection phase.)

• On-Tracking: In this phase, the clients transmit information to the server and the server tries to estimate their location and show on a map.

Page 14: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

Location Manager• Uses the data collected in the previous phase.• Tries to estimate the location according to the data sent by

the client. Data is sent via UDP datagrams.• Centralized server structure, the server displays all

available maps and manages them in separate threads.• The configuration and precollected radiomap data are read

from text files.• Clients are tracked according to IP address. If configured,

the clients that have static IP can be configured to have distinct labels.

Page 15: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

Location Manager

• ETA 1st, 2nd and 3rd floors

• 4 WAPs. At most 3 WAPs at a time.

• 30 equally separated measurement points per floor.

Page 16: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

Location Manager

• An average of ~3m error in estimation

• Multiple floor problem generally can be solved with signal power filter

• Effects of history filter and number of WAPs are being studied.

Page 17: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

Client and LM Communication

• Via XML

<SIGNAL>

<MAC>Mac Number</MAC>

<STRENGTH>Strength of Signal</STRENGTH>

</SIGNAL>

Page 18: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

Client and LM Communication

• Via SIP Presence Packets

• LM will SUBSCRIBE to the SM for each client it wanted to track.

• Each NOTIFY packet will contain an extended XML body including the MAC address of the WAP and signal strength.

Page 19: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

Client and SM Communication

• SIP based. • INVITE for session initiation (VOICE, VIDEO). RFC

3261

• SUBSCRIBE/NOTIFY for presence. IETF simple-presence draft.

• MESSAGE for instant messaging. IETF sip-message draft.

Page 20: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

Client to Client Communication

• RTP for voice and video

• G711 , G723 for voice

• H263, ... for video.

Page 21: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

Client Architecture

USER PROFILE

SIP CONTEXT

CALL CONTROL

TRANSACTION

GUI LOCATOR LM CONTEXTRTP CONTEXT

Page 22: PERA PER sonal A ssistance Engin Deveci Computer Engineering Department Bogazici University devecien@boun.edu.tr Can Komar Computer Engineering Department

PERA

SM Architecture

USER PROFILE

SIP CONTEXT

CALL CONTROL

TRANSACTION

GUICALL CONTROL

CALL CONTROL

TRANSACTIONTRANSACTION