Top Banner
Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME COMMUNICATION
26

Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Dec 18, 2015

Download

Documents

Calvin Boone
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: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Sarantorn BisalbutraNomadicLab, Ericsson Research

Supervisor: Prof. Jörg OttInstructors: Petri Jokela

Jimmy Kjällman

PUBLISH/SUBSCRIBE GATEWAY FOR

REAL-TIME COMMUNICATION

Page 2: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Outline

•Background• PURSUIT Publish/Subscribe Internet Technology

•Design - Pub/sub Gateway and SIP Registrar• SIP Voice Call•Multimedia Streaming over Multicast

• Implementation•Evaluation•Conclusion

Page 3: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Background

Page 4: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

• EU FP7 Project for the future Internet based on publish/subscribe paradigm• Motivation• Internet users tend to be aware of data content more than where it

comes from

• Information-Centric Network instead of Host-Centric Network

• Network Architecture

PURSUIT Publish/Subscribe Internet Technology (1)

Publisher

Publisher

Subscriber

Subscriber

Subscriber

FW

FW

FW

FW

FW

FW

RV TM

Page 5: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

PURSUIT Publish/Subscribe Internet Technology (2)

• The communication happens based on the Information Structure• = Scope: Defines a set of information

• = Information Item: Represents data • P = Publisher: Where the data is stored• S = Subscriber: Where the data is needed

• Example:

SocialNetworks

AliceP-A / S-C

FacebookS-E

BobP-B

CarolP-C

DaveP-D

Root

Alice

Bob

Dave

Eve

FW

FW

FW

FW

FW

FW

RVTM

1. Publish(Alice)

2. Subscribe(Alice)

3. Matching

4. Path Computation

5. START_PUBLISH

6.Forwarding

Carol

5. Topology Manager signals Alice to start the publication.

1. Alice Publishes her Facebook profile. 2. Carol subscribes Alice’s Facebook profile.3. Rendezvous system matches publication and subscription.4. Topology Manager computes an optimal path from Alice to Carol.

6. Alice’s node forwards her Facebook data to Carol.7. If Eve wants to see the Facebook of Alice, Bob and Carol, she can subscribe the Facebook scope.

7.Forwarding

LinkedIn

Page 6: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Pub/sub Gateway

Page 7: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

• Migration phase from IP to Publish/Subscribe network

• Installed at the network edge, between IP and Publish/subscribe network

• Convert IP based end-to-end traffic to publish/subscribe based and vice versa

• Supports• Session Initiation Protocol (SIP) : initializes the session, establishes RTP connection,

maintains the connectivity, and terminate the session

• Multimedia streaming over multicast: multicast initiation, group joining and leaving

Pub/sub Gateway

Alice

Bob

Carol

Dave

Eve

FW

FW

FW

FW

FW

FW

RV TMIP

IP

IP

IP

IP

GW

GW

GW

GW

Page 8: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Design-SIP Voice Call

Page 9: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Call Initiation (1)

FW FW

RV TM

GW1

DaveAlice SIP Registr

ar

RegisterPREG / SREG

GW1PGW1 / SREG

GW2PGW2 / SREG

AlicePGW1

REQPGW1 / SREG

RESPREG / SGW1

INTPREG / SGW1

DavePGW2

REQPGW2 / SREG

RESPREG / SGW2

INTPREG /SGW2

CallPREG

12345PGW1

SignalPGW1 / SGW1, GW2

MediaPGW1

RTPPGW1 / SGW1, GW2

RTCPPGW1 / SGW1, GW2

AlicePGW1

DavePGW2

AlicePGW1

AlicePGW1

DavePGW2

DavePGW2

1. INVITETo: DaveFrom: AliceCall-ID: 12345

3. Pub(INVITE)4. Pub(INVITE)

6. INVITETo: DaveFrom: AliceCall-ID: 12345

3.4.

2. Pub/Sub items

5. Pub/Sub items

Domain = “pubsubgateway.net”

GW2

IP IP

Page 10: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Call Initiation (2)

FW FW

RV TM

GW2GW1

DaveAlice SIP Registr

ar

RegisterPREG / SREG

GW1PGW1 / SREG

GW2PGW2 / SREG

AlicePGW1

REQPGW1 / SREG

RESPREG / SGW1

INTPREG / SGW1

DavePGW2

REQPGW2 / SREG

RESPREG / SGW2

INTPGW2 /SGW2

CallPREG

12345PGW1

SignalPGW1 / SGW1, GW2

MediaPGW1

RTPPGW1 / SGW1, GW2

RTCPPGW1 / SGW1, GW2

AlicePGW1

DavePGW2

AlicePGW1

AlicePGW1

DavePGW2

DavePGW2

8. Pub(100 Trying)

7. 100 Trying9. 100 Trying

11. Pub(180 Ringing)

10. 180 Ringing12. 180 Ringing

13. 200 OK

14. Pub( 200 OK )

15. 200 OKIP IP

Page 11: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

DaveAlice

Call Signalling & MediaCallPREG

12345PGW1

SignalPGW1 / SGW1, GW2

MediaPGW1

RTPPGW1 / SGW1, GW2

RTCPPGW1 / SGW1, GW2

AlicePGW1

DavePGW2

AlicePGW1

AlicePGW1

DavePGW2

DavePGW2

GW1 GW2IP IP

Page 12: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

1. BYE

2. Pub( BYE )

3. BYE

Call Termination

FW FW

RV TM

GW2GW1

DaveAlice SIP Registr

ar

RegisterPREG / SREG

GW1PGW1 / SREG

GW2PGW2 / SREG

AlicePGW1

REQPGW1 / SREG

RESPREG / SGW1

INTPREG / SGW1

DavePGW2

REQPGW2 / SREG

RESPREG / SGW2

INTPGW2 /SGW2

CallPREG

12345PGW1

SignalPGW1 / SGW1, GW2

MediaPGW1

RTPPGW1 / SGW1, GW2

RTCPPGW1 / SGW1, GW2

AlicePGW1

DavePGW2

AlicePGW1

AlicePGW1

DavePGW2

DavePGW2

4. 200 OK

6. unPub/unSub items

5. Pub( 200 OK )

8. unPub/unSub items

7. 200 OKIP IP

Page 13: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Design-Multimedia Streaming over Multicast

Page 14: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Group Establishment

FW FW

RV TMGW2

GW1

GW3

FW

Multicast

MediaSAP

SGW1-3

GW1PGW1

GW2PGW2

GW3PGW3 Nemo

PGW1

RTPPGW1

RTCPPGW1

1. SAPName: NemoMulticast addr: 224.1.1.1:5004

2. Pub/Sub items

4. SAPName: NemoMulticast addr: 224.1.1.1:5004

4. SAPName: NemoMulticast addr: 224.1.1.1:5004

3. Pub(SAP)

RTP

RTCPAlice

IP Dave

IP

Eve

IP

Page 15: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Eve

IP

Dave

IP

RTPPGW1

/SGW2,GW3

Group Joining

FW FW

RV TMGW2

GW1

AliceGW3

FW

Multicast

MediaSAP

SGW1-3

GW1PGW1

GW2PGW2

GW3PGW3 Nemo

PGW1

RTCPPGW1

/SGW2,GW3

RTP 2. Sub (RTP,RTCP)

1. IGMP Join224.1.1.1: 5004

3. Pub(RTP) and

Pub (RTCP)

RTCP

RTP

RTCP

5. IGMP Join224.1.1.1: 5004

RTP

RTCP

4.

6. Sub (RTP,RTCP)

7. 7.

IP

Page 16: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Dave

IP

Eve

IP

RTPPGW1

/SGW2,GW3

Group Leaving

FW FW

RV TMGW2

GW1

AliceGW3

FW

Multicast

MediaSAP

SGW1-3

GW1PGW1

GW2PGW2

GW3PGW3 Nemo

PGW1

RTCPPGW1

/SGW2,GW3

RTP 5. unSub (RTP,RTCP)

4. IGMP Leave224.1.1.1: 5004

RTCP

RTP

RTCP

1. IGMP Leave224.1.1.1: 5004RTP

RTCP2. unSub (RTP,RTCP)

6. Stop Pub (RTP,RTCP)

IP

3.

Page 17: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Implementation

Page 18: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Gateway-SIP Module

• dns: Responds to DNS query with gateway IP address• sip_signaling: Receives SIP signals from IP and forward to register_signal and call_signal threads• register_signal: Handles user registration, cooperates with SIP

registrar• call_signal: Handles Call signaling, session establishment,

maintaining and termination • call_manager: stores/deletes active call states and start/stop

call_media thread• call_media: Handles media session (RTP and RTCP) of each call• Receives packets from IP -> Publishes to pub/sub• Receives packets from pub/sub -> send out to IP • pubsub_handler: interface between our program and the Blackadder

library executes the pub/sub commands and lists all executed publications and subscriptions

pubsub_gateway: sip

dns

pubsub_handler

sip_signallingregister_sign

alcall_sign

al

…call_media…

call_manager

socket libblackadder

• socket: Interface to IP network

• libblackadder: Interface to pub/sub network

• : Thread

• : Module

Page 19: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Gateway-Multicast Modulepubsub_gateway: multicast

pubsub_handlerigmp

sap

…media_streamer…

group_manager

socket libblackadder

• sap: receives SAP announcement from both IP Network then publish to other pub/sub entities and vice versa• igmp: receives joining and leaving membership report from IP client, then send an update to the group manager• group_manager: accepts the commandsfrom sap, media_streamer,and igmp threads to create multicast state, delete multicast state, and to start/stop the media_streamer respectively • media_streamer: Handles media session (RTP and RTCP) of each

multicast group• Receives packets from IP -> Publishes to pub/sub• Receives packets from pub/sub -> send out to IP • pubsub_handler: interface between our program and the

Blackadder library executes the pub/sub commands and lists all executed publications and subscriptions

Page 20: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Pub/sub SIP Registrar• register: stores/deletes user’s information in the Location

service• redirect: redirect an INVITE request from call originator to the

recipient• Location service: database storing user’s information the

format is shown:

• pubsub_handler: interface between our program and the Blackadder library executes the pub/sub commands and lists all executed publications and subscriptions

pubsub_registrar

Location service

pubsub_handler

register redirect

libblackadder

Username (ip:port) Gateway SID CSeq

Page 21: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Evaluation

Page 22: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Evaluation (1)• Functional Testing: 41 VMs in total (14 pub/sub, 27 IP clients)

• SIP Voice Call and media streaming from every IP client to all others

• Test with up to 15 sessions at the same time.

• Flexibility and Adaptability Testing

Page 23: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Evaluation (2)

• Traffic Analysis• SIP Voice Call•Media session creates the highest amount of traffic density

•Multimedia Streaming over Multicast• Confirms that media content is multicast in pub/sub network

• Call Setup Duration• 6/10 times of the test show that pub/sub provide faster call setup.• Even though it needs some time to set up the information tree, before an actual transfer occurs.

Page 24: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Conclusion

Page 25: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Conclusions

• A novel design for publish/subscribe gateway and SIP registrar to enable IP-based real-time communication over the publish/subscribe paradigm. • The gateway enables a co-existence between the IP and publish/subscribe network• Confirms that the idea to deploy gateway during an IP

to pub/sub migration is reasonable and applicable. • SIP and multimedia streaming are possible to work under an Information-Centric context

• Future work• Support for other protocols. Ex: HTTP, IMAP, SMTP

Page 26: Sarantorn Bisalbutra NomadicLab, Ericsson Research Supervisor: Prof. Jörg Ott Instructors: Petri Jokela Jimmy Kjällman PUBLISH/SUBSCRIBE GATEWAY FOR REAL-TIME.

Thank youQ&A?