Top Banner
Sebastian Damm E: [email protected] T: @_SebastianDamm NGN: Interconnecting with DTAG using Open Source
40

NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Apr 10, 2018

Download

Documents

buidieu
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Sebastian DammE: [email protected]: @_SebastianDamm

NGN: Interconnecting with DTAG using Open Source

Page 2: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

• Düsseldorf based VoIP provider (since 2004)

• Active in Germany and UK

• Full MVNO in the Telefónica network

• Private and Business customers

• VoIP and Mobile products

• Some 100k active customers

• Almost 100 million minutes each month

Who we are, what we do

Page 3: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Setup Overview

Page 4: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Detailed Setup

Page 5: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Detailed Setup

Page 6: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Detailed Setup

Page 7: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Detailed Setup

Page 8: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Call Flow

Page 9: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Call Flow

Page 10: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Call Flow

Page 11: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Call Flow

Page 12: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Call Flow

Page 13: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Call Flow

Page 14: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

What else?

Page 15: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

What else?

You’re testing SIP devices.

Page 16: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

What else?

You’re testing SIP devices.Go through billing hell.

Page 17: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

What else?

You’re testing SIP devices.Go through billing hell.Expect some signalling

specialties.

Page 18: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Signalling

Understand interesting Request-URIs

Page 19: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Signalling

Understand interesting Request-URIs

INVITE sip:+4921163553355;npdi;[email protected];transport=udp;user=phone SIP/2.0

Page 20: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Call Redirection

Diversion, right?

Signalling

Page 21: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Call Redirection

Diversion, right?

Signalling

Page 22: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Signalling

History-Info RfC 4244

Page 23: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Signalling

History-Info RfC 4244

History-Info: <sip:[email protected];user=phone>;index=1, <sip:[email protected];cause=408>;index=1.1,

Page 24: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Signalling

History-Info RfC 4244

History-Info: <sip:[email protected];user=phone>;index=1, <sip:[email protected];cause=408>;index=1.1, <sip:[email protected];cause=302>;index=1.1.1

Page 25: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Signalling

P-Germany-Tariff Header

Calls to Service numbers from outside Germany Defining Tariff class for premium rate numbers

Page 26: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Signalling

Emergency Calls

Page 27: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Signalling

Emergency Calls

ISUP: CalledPartyNumber=‘4930CC1'

SIP: INVITE sip:49301;[email protected];user=phoneUser-To-User:002D89300412F947FFFF476C6164626163686572205374722E

Page 28: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

• Lab test: 2 weeks (quickest test ever)

• Live Test (IOPNW): ~8 months

• Quick adaptions thanks to Open Source Software

We did it!

Page 29: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

NGN in the wild

Page 30: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

NGN in the wild

404 = 404

Page 31: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

NGN in the wild

404 = 404

Page 32: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

NGN in the wild

404 = 404

404 = offline 404 = number unknown

Page 33: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

NGN in the wild

Codecs are fun!

Page 34: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

NGN in the wild

Codecs are fun!

Page 35: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Oh, and one more thing.

Page 36: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

What about Fax?

Is it dead yet?

Page 37: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

What about Fax?

Is it dead yet?

Hopefully, soon.(Only G.711 support, no T.38 at all.)

Page 38: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

• NGN Interconnect Specs:http://www.aknn.de/fileadmin/uploads/oeffentlich/Spec_UAKS_NGN_Ic_Interface_V1_0_0.pdf

• Emergency Call Specs: http://www.bundesnetzagentur.de/DE/Sachgebiete/Telekommunikation/Unternehmen_Institutionen/Anbieterpflichten/Notruf/TechnischeRichtlinie/technischerichtlinie.html

• Redirection Information Diversion: https://tools.ietf.org/html/rfc5806 History-Info: https://tools.ietf.org/html/rfc4244 Mapping: https://tools.ietf.org/html/rfc6044

Resources

Page 39: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

Want to chat?

Stop by:lunch.sipgate.de

Page 40: NGN: Interconnecting with DTAG using Open Source · NGN: Interconnecting with DTAG using Open Source ... Call Flow. Call Flow. Call Flow. Call Flow. ... ISUP: CalledPartyNumber=‘4930CC1'

That’s it

Questions?