NG9-1-1%20FAA

Download Report

Transcript NG9-1-1%20FAA

Next Generation 9-1-1 (NG9-1-1)
Jong Yul Kim, Wonsang Song,
and Henning Schulzrinne
Internet Real-Time Lab,
Columbia University
What is Next Generation 9-1-1?
NG9-1-1 is*:
– An interoperable networks and systems for voice,
data, and radio among emergency response
agencies
– A set of coordinated applications on an IP
internetwork that serves multiple governmental
functions and seamlessly interfaces voice and
electronic data. (NENA/IETF model)
– A system of systems.
*9-1-1 Magazine, Jan/Feb 2007 issue
Why Next Generation 9-1-1?
Because current 9-1-1 system cannot deal with:*
– New devices and data sources
• Internet phones, instant messengers, sensors
• Multimedia-capable (voice, text, images, video)
– Mobility
• VoIP calls can be made from anywhere on earth
• Nomadic vs. Mobile
*9-1-1 Magazine, Jan/Feb 2007 issue
What is our goal?
• Develop a prototype that enables:
–
–
–
–
End-to-end IP calls
Multimedia
Caller location determination
Correct routing
• Develop Proof-of-Concept
– Deploy system across different PSAPs
– Test what makes sense, what doesn’t
– Come up with transition scenarios
Who is involved? (POC)
Prototype looks like this.
Location
GPS
Routing
LIS
Location
Info
DHCP Server
Location
key
Location
Info
LoST Cluster
Location
PSAP
Info
sip:psap@domain2
w/location
911
112
PSAP
sip:psap@domain2
with location
SIP UA
PSAP SIP Proxy
urn:service:sos
w/out location
Local SIP Proxy
Conference
Server
civil location
geo location
sip:psap@domain2
with location
sip:rep@domain2
with location
PSTN
911
POTS/Wireless
Network
IP Gateway
psapd
3PCC Controller
GeoLynx /
Google Maps
That’s all.
Thank you for listening.
Locating Caller using LLDP-MED
LLDP-MED stands for: *
* From Wikipedia
Link Layer Discovery Protocol
“a vendor-neutral Layer 2 protocol that allows a network device
to advertise its identity and capabilities on the local network.”
Media Endpoint Discovery
“an enhancement to the LLDP that allows discovery of other
things including location “
“I am LLDP-MED Capable.
I can process location information.”
CALLER
EQUIPMENT
LLDP-MED
SWITCH
“Your location is:
500 W 120TH st. New York NY 10027”
DHCP for Location
•
•
•
Mainly for stationary users
We modified ISC’s dhcpd to generate location information
Use MAC address to get location information
DHCPINFORM
[MAC=00:11:20:9d:a0:03]
request
or
response
DHCPACK
[option=0:US:1:NY:2:NEW YORK:
3:NEW YORK:6:AMSTERDAM:19:1214]
DHCP Server
CDP for Location
•
•
•
•
Mainly for stationary and nomadic users
Cisco Discovery Protocol (Layer2)
Cisco switches broadcast switch/port ID periodically.
A Switch covers a floor, a port leads to a jack in a room
-> room-level accuracy
Switch 2
Path of CDP
advertisement
Segment from
switch 2/port 5
Physical
location
Invoke
cdpCap
cdpCap listens to
advertisements
Switch/port
LIS
SIP UA
Send switch/port
information
SkyHook for Location
•
•
•
•
Mainly for nomadic, mobile users
Wireless device receives signals from Wi-Fi sites in range
Skyhook compares signals to its database of geographically known
locations
Location data is used to direct safety services
Taken from http://www.skyhookwireless.com
Routing Using LoST
• LoST stands for
Location-to-Service Translation
• Work in progress at IETF ECRIT WG
Caller’s location
+
Service identifier
(urn:service:sos)
Service provider
(PSAP URL)
+
Emergency Dial String
SIPc, a multi-function SIP UA
GPS
LIS
Location
Info
DHCP Server
Location
key
Location
Info
LoST Cluster
Location
PSAP
Info
sip:psap@domain2
w/location
911
112
PSAP
sip:psap@domain2
with location
SIP UA
PSAP SIP Proxy
urn:service:sos
w/out location
Local SIP Proxy
civil location
geo location
sip:psap@domain2
with location
sip:rep@domain2
with location
911
POTS/Wireless
Network
IP Gateway
psapd
3PCC Controller
GeoLynx /
Google Maps
• Function (caller side)
– Identifies and initiates emergency call
– Determines location from various sources
• Function (calltaker side)
– Interfaces with location mapping software
– Shows calltaker status, responder list, incident type
• Implementation
– Tcl/Tk based User Interface and SIP stack
– External programs for audio, video, application sharing, stun, etc.
Location Information Sources
GPS
LIS
Location
Info
DHCP Server
Location
key
Location
Info
LoST Cluster
Location
PSAP
Info
PSAP
SIP UA
PSAP SIP Proxy
urn:service:sos
w/out location
LIS
sip:psap@domain2
with location
sip:psap@domain2
w/location
911
112
Local SIP Proxy
civil location
geo location
DHCP Server
GPS
sip:psap@domain2
with location
sip:rep@domain2
with location
911
POTS/Wireless
Network
IP Gateway
psapd
3PCC Controller
GeoLynx /
Google Maps
CDP
Skyhook
• Function
– Provides location information to SIPc
• Implementation
– GPS : USB device and NMEA 0183 parser
– Location Information Server built using Apache, MySQL, and PHP
LoST Cluster
GPS
LIS
Location
Info
DHCP Server
Location
key
Location
Info
LoST Cluster
Location
PSAP
Info
PSAP
sip:psap@domain2
with location
sip:psap@domain2
w/location
911
112
SIP UA
PSAP SIP Proxy
urn:service:sos
w/out location
Local SIP Proxy
civil location
geo location
sip:psap@domain2
with location
sip:rep@domain2
with location
911
POTS/Wireless
Network
IP Gateway
psapd
3PCC Controller
GeoLynx /
Google Maps
• Function
– Translates (Location, Service) to a PSAP URL and emergency dial
string
– Verifies civic address
• Implementation
– PostgreSQL with PostGIS extension as a Database
• US county boundary polygons to simulate geo PSAP boundary
• Sample MSAG data for civic PSAP boundary
– Tomcat + Axis for Web Service
sipd, a SIP proxy and registrar
GPS
LIS
Location
Info
DHCP Server
Location
key
Location
Info
LoST Cluster
Location
PSAP
Info
PSAP
sip:psap@domain2
with location
sip:psap@domain2
w/location
911
112
SIP UA
PSAP SIP Proxy
urn:service:sos
w/out location
Local SIP Proxy
civil location
geo location
sip:psap@domain2
with location
sip:rep@domain2
with location
911
POTS/Wireless
Network
IP Gateway
psapd
3PCC Controller
GeoLynx /
Google Maps
• Function
– Routes call to destination
– Resolves SIP URL to a reachable address
– Invokes sip-cgi for in-network special services
• Implementation
– CINEMA (Columbia InterNet Extensible Multimedia Architecture)
– sip-cgi is perl-based
psapd, a back-to-back SIP UA
GPS
LIS
Location
Info
DHCP Server
Location
key
Location
Info
LoST Cluster
Location
PSAP
Info
PSAP
sip:psap@domain2
with location
sip:psap@domain2
w/location
911
112
SIP UA
PSAP SIP Proxy
urn:service:sos
w/out location
Local SIP Proxy
civil location
geo location
sip:psap@domain2
with location
sip:rep@domain2
with location
911
POTS/Wireless
Network
IP Gateway
psapd
3PCC Controller
GeoLynx /
Google Maps
• Function
– Facilitates multi-party conference setup
– Distributes incoming call to call takers
– Logs call details
• Implementation
– CINEMA C++ library (libsipapi)
– Call distribution logic is written in Tcl
psapd handles an incoming call
caller
conf.
server
psapd
call taker
(1) INVITE psap
(loc, SDP1)
Make Conference
Select Available
Calltaker
(2) INVITE calltaker
(loc, no SDP)
Call-info: <sos call’s confuri>; purpose=incident
• All signals go through psapd
180 Ringing
180 Ringing
• psapd controls conference
instances through MSCML
(3) 200 OK
(SDP2)
(4) INVITE calltaker conf.
(no loc, SDP2)
(5) 200 OK
(SDP2')
• Media is directed to
conference server
(6) ACK
(7) ACK
(SDP2')
(8) media
(9) INVITE caller conf.
(no loc, SDP1)
(10) 200 OK
(SDP1')
(11) 200 OK
(SDP1')
(12) ACK
(13) ACK
(14) media
(15) sos call established
Conference Server
GPS
LIS
Location
Info
DHCP Server
Location
key
Location
Info
LoST Cluster
Location
PSAP
Info
PSAP
sip:psap@domain2
with location
sip:psap@domain2
w/location
911
112
SIP UA
PSAP SIP Proxy
urn:service:sos
w/out location
Local SIP Proxy
Conference
Server
civil location
geo location
sip:psap@domain2
with location
sip:rep@domain2
with location
911
POTS/Wireless
Network
IP Gateway
psapd
3PCC Controller
GeoLynx /
Google Maps
• Function
–
–
–
–
Mixes and records audio
Distributes video
Call Queuing
Interactive Voice Response
• Implementation
– sipconf from CINEMA
– Snowshore IP Media Server from Cantata Technology
Location Mapping Software
GPS
LIS
Location
Info
DHCP Server
Location
key
Location
Info
LoST Cluster
Location
PSAP
Info
PSAP
sip:psap@domain2
with location
sip:psap@domain2
w/location
911
112
SIP UA
PSAP SIP Proxy
urn:service:sos
w/out location
Local SIP Proxy
Conference
Server
civil location
geo location
sip:psap@domain2
with location
sip:rep@domain2
with location
911
POTS/Wireless
Network
IP Gateway
psapd
3PCC Controller
GeoLynx /
Google Maps
• Function
– Plots caller’s location and other information on a local map
– Shows nearby responders on map
• Implementation
– Geolynx Mapping System from GeoComm
– Google Maps
Emergency Call Flow
(2)
Location +
Service
Identifier
(1) Location
LoST Cluster
(3)
PSAP URL +
emergency
dial-string
INVITE call taker
From: caller
(7) <Location>
(6)
(4)
SOS caller
(5)
dial emergency dialstring
or
INVITE PSAP URL
To: urn:service:sos
SIP proxy
INVITE PSAP URL
To: urn:service:sos
<Location>
<Location>
push emergency
button
call taker
Media Stream
Media Stream