http://as.engineering/Specifications/LNS-SPEC-Protocol-2012-04-14.pdf
Location Name Service (LNS) DRAFT 2012-04-14 17:25:00
Table of Contents
A. LNS VOCABULARY
A. 1. LNS Mobile
A. 2. LNS Server
A. 3. LNS Device
A. 4. LNS Action
A. 5. LNS Agency
A. 6. LNS Ask
A. 7. LNS Bid
A. 8. LNS Match
B. LNS PROCESSES
B. 1. LNS Mobile
B. 2. LNS Server
B. 2. a. LNS Time Server <-> Mobile/Device
B. 2. b. LNS Connection Server <-> Mobile
B. 2. c. LNS Connection Server <-> Device
B. 2. d. LNS Input Handler Server Process
B. 2. e. LNS Output Handler Server Process
B. 2. f. LNS Input Server Process Logger
B. 2. g. LNS Output Server Process Logger
B. 3. LNS Device
B. 4. LNS Action
B. 5. LNS Agency
B. 6. LNS Ask
B. 7. LNS Bid
B. 8. LNS Match
C. LNS PROTOCOL
C. 1. LNS SESSION Mobile -> Server
C. 2. LNS DISCOVERY Server -> Mobile
C. 3. LNS NEGOTIATION Mobile -> Server
C. 4. LNS AVAILABILITY Server -> Mobile
C. 5. LNS RESERVATION Mobile -> Server
C. 6. LNS ACCEPTANCE Server -> Mobile
C. 7. LNS DELIVERY Server -> Device
C. 8. LNS RECEIPT Device -> Server
D. LNS DATA FORMAT
D. 1. LNS Data Format
D. 2. LNS Data Example
D. 3. LNS Data Import
D. 4. LNS Data Export
D. 5. LNS Data Expire
E. LNS APPLICATIONS
E. 1. LNS Mobile Session Initiation
E. 2. LNS Server Discovery
E. 3. LNS Mobile Negotiation
E. 4. LNS Server Availability
E. 5. LNS Mobile Reservation
E. 6. LNS Server Acceptance
E. 7. LNS Server Delivery
E. 8. LNS Device Receipt
A. LNS VOCABULARY
A. 1. LNS Mobile
A physical, portable computer such as a smart mobile phone that
can send a virtual or current physical Location (Latitude,
Longitude, Altitude) and Cardinal Direction via a defined
protocol over HTTP/1.1 in a TCP/IP-based network connection
to an LNS Server.
A. 2. LNS Server
A logical server computer such as a “1U rack” with CPU, RAM and
disk, virtual memory, a process that acts on input variables and
processes this information in virtual memory, and a process that
returns information to a Device when the input parameters
triggers an Action based on the logical rules programmed by an
Agency.
A. 3. LNS Device
A physical sensor output device such as a television screen,
audio speaker, or an input device such as a video or audio
recoder that receives information from a Server and that
executes an Action that is recognisable by the Mobile.
A. 4. LNS Action
An event that is triggered by pre-programmed rules that
is based on input sensor parameters from a Mobile sent
to a Server over TCP/IP network, processed by the
Server and sent to a Device over TCP/IP network to
execute something that is recognisable to the Mobile.
A. 5. LNS Agency
Auto-algorithm writer or programmers that is using the
System to write programs that uses the elements in the
System to trigger Action on a Device recognized by the
Mobile.
A. 6. LNS Ask
A provider of material, virtual or gratis products
available for sale in the moment when a Action was
triggered on a Device to a Mobile.
A. 7. LNS Bid
A bidder of an Action that triggers an Action on a Device.
A. 8. LNS Match
Occurs when an Agency has programmed a rule that
triggers an Action for a Seller by Bidder on a Device
recognizable to Mobile that agrees to buy from the
Seller.
B. LNS PROCESSES
B. 1. LNS Mobile
The primary input sensor moving in space, direction and time and
that provides sensor output parameters to the Server such as
Output Variables to Server.
: ipaddress
Example output values: (“129.1.178.188”)
: sessionid
Example output values: (“e1ec37ec-b326-464d-8993-cbc9bf657ce4”)
: GPS Latitude
Example output values: (“10.362”)
: GPS Longitude
Example output values: (“32.102”)
: GPS Altitude
Example output values: (“0”, “5m”, “10m”, “15m”, “500m”, “3000m”, “10000m”)
: Cardinal direction Example output values:
(“North”,”NorthEast”,”NorthWest”,”South”, “SouthEeast”,
“SouthWest”, “E”, “W”)
B. 2. LNS Server
The Server is the input request and response engine that processes input
sensor parameters from Mobile and outputs a response to the Device based
on logical Action event triggers programmed by the Agency, and sends the
Action event trigger to the Device.
B. 2. a. LNS Time Server <-> Mobile/Device
The System Time is UTC and Server request and Response is logged.
B. 2. b. LNS Connection Server <-> Mobile
Example:
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 lns-server:80 129.01-178-188.mobile:62 ESTABLISHED
B. 2. c. LNS Connection Server <-> Device
Example:
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 lns-server:80 211.90-149-168.device:62 ESTABLISHED
B. 2. d. LNS Input Handler Server Process
Example:
lnsd 2670 0.0 0.1 24616 5132 pts/1 Ss 23:31 0:00 lns-mobile-handler
B. 2. e. LNS Output Handler Server Process
Example:
lnsd 2671 0.0 0.1 24616 5132 pts/1 Ss 23:31 0:00 lns-device-handler
B. 2. f. LNS Output Handler Server Process
The Server Input Process logs incoming input sensor from a
Mobile parameters and the Actions.
The Server will use pre-computed approximation tables such as
the following.
Example:
Apr 13 22:40:55 lns-mobile-handle:In(“129.1.178.188,10.362,32.102,5,NW)
: physical distance between Mobile and Device
: cardinal direction (“North”,”South”,”East”,”West”)
between Mobile and Device
B. 2. g. LNS Output Handler Server Process
Apr 13 22:40:55 lns-device-handler
Apr 13 22:40:55 Action “CB_LCD_42_NW” “15s” “htc-NO.avi”
B. 3. LNS Device
The Device is the output sensor that provides an Action recognizable to
the Mobile based on input parameters processed by the Server by
pre-programmed logic based on
latitude, longitude, compass direction, distance between mobile and device
The Device is the output sensor in the system.
The Device can be an audio/video output device or input device
B. 4. LNS Action
The Action is measured in seconds and is the information provided on the
Device if the Mobile is near and the Mobile has approved that about the
Mobile
latitude, longitude, compass direction
B. 5. LNS Agency
The agency is the programmed system operators that returns output sensors
to the device based on input sensor parameters from the mobile
B. 6. LNS Ask
B. 7. LNS Bid
B. 8. LNS Match
C. PROTOCOL
- Virtual Location MAP COORDINATES
- Current Location GPS COORDINATES
C. 1: LOCATION NAME SERVICE SESSION Mobile -> Server
Mobile starts a LNS/1.0 protocol sesssion to the Server over HTTP/1.1
C. 1. 1. LNS/1.0 INITIAL SESSION
GET http://lns.geopher.com/initial?
sessionid=7432c77d-ba07-4e1c-85a4-9c8ae0e6bcf7&
lat=62.12345&
lng=15.12345 HTTP/1.1
GET Variables
sessionid 7432c77d-ba07-4e1c-85a4-9c8ae0e6bcf7
latitude 62.12345
longitude 15.12345
C. 1. 2. LNS/1.0 INITIAL SESSION
GET http://lns.geopher.com/initial?
sessionid=e52784e4-2b5b-4f2e-8b20-de21262eb21b&
lat=62&
lng=15 HTTP/1.1
GET Variables
sessionid e52784e4-2b5b-4f2e-8b20-de21262eb21b
latitude 62
longitude 15
C. 2: LOCATION NAME SERVICE DISCOVERY Server -> Mobile
GET http://lns.geopher.com/discovery?
GET Variables
LOCATION NAME DEVICE SERVICE RESOLUTION PRICE PERIOD DURATION
62.01,15.01 dno_hall_screen screen commercial 1080p
62.02,15.02 dno_hall_cinema cinema public 720p
62.03,15.03 kalles_phone phone private 720p 1 USD 201204 00:00:15
62.04,15.04 vg.no website commerce 1080p
62.05,15.05 army.mil screen military 1080p
62.06,15.06 whitehouse.gov screen goverment 1080p
62.07,15.07 platekompaniet audio streaming 320kbps 50NOK always 03:56:00
62.08,15.08 oslospektrum ticket event frontrow 99NOK 201204 03:00:00
C. 3: LOCATION NAME SERVICE NEGOTIATION Mobile -> Server
GET http://lns.geopher.com/negotiate?
sessionid=e52784e4-2b5b-4f2e-8b20-de21262eb21b&
lat=62.12345&
lng=15.12345
GET Variables
budget_from 10USD
budget_to 99USD
target private
GET http://lns.geopher.com/negotiate?
sessionid=e52784e4-2b5b-4f2e-8b20-de21262eb21b&
lat=62&
lng=15 HTTP/1.1
GET Variables
budget_from 10USD
budget_to 99USD
target private
C. 4: LOCATION NAME SERVICE AVAILABILITY Server -> Mobile
C. 4. 1. LNS/1.0 AVAILABLE
GET http://lns.geopher.com/available/?name=dno_hall_screen
GET Variables
C. 4. 2. LNS/1.0 AVAILABLE
62.0000,15.0000 dno_taket AVAILABLE TICKET SPACE
62.0011,15.0019 dno_rad_1_plass_9 AVAILABLE TICKET SEAT
62.0000,15.0000 dno_hall AVAILABLE TICKET EVENT
62.0010,15.0020 dno_reception AVAILABLE TICKET JOB
C. 5: LOCATION NAME SERVICE RESERVATION Mobile -> Server
GET http//lns.geopher.com/reserve
C. 6: LOCATION NAME SERVICE ACCEPTANCE Server -> Mobile
GET http://lns.geopher.com/accept
C. 7: LOCATION NAME SERVICE DELIVERY Server -> Device
GET http://lns.geopher.com/deliver
C. 8: LOCATION NAME SERVICE RECEIPT Device -> Server
GET http://lns.geopher.com/receipt
D. 1. LNS Data Format
LOCATION NAME DESC DEVICE SERVICE QUALITY DURATION BID ASK AVAIL
float,float string string string string string interval float float boolean
D. 2. LNS Data Example
Example Values (Not Exhaustive)
LOCATION NAME DESC DEVICE SERVICE QUALITY DURATION BID ASK AVAILIBILITY
lat,lng dno_hall Stage screen ? ? 00:00:15 $ $ True
lat,lng dno_film Cinema cinema ? ? 03:00:00 $ $ False
lat,lng kalles_p Phone phone ? ? 01:00:00 $ $ True
lat,lng www.vg.no VG nett advert ? ? 01:00:00 $ $ True
lat,lng army.mil Website video ?` ? 01:00:00 $ $ False
lat,lng filmweb Cinema video ? ? 00:01:23 $ $ True
lat,lng platekom Retail audio ? ? 03:56:00 $ $ True
lat,lng oslospekt Stage ticket ? ? 03:00:00 $ $ False
lat,lng dnbnor Estate dorm ? ? 03:00:00 $ $ False
D. 3. LNS Data Import
D. 4. LNS Data Export
D. 5. LNS Data Expire
E. APPLICATIONS
E. 1. LNS Mobile Session Initiation
E. 2. LNS Server Discovery
E. 3. LNS Mobile Negotiation
E. 4. LNS Server Availability
E. 5. LNS Mobile Reservation
E. 6. LNS Server Acceptance
E. 7. LNS Server Delivery
E. 8. LNS Device Receipt