SlideShare una empresa de Scribd logo
1 de 18
Descargar para leer sin conexión
P2P for Mobile Devices
Immanuel Noel | Platform Evangelist, Adobe   blog.inoel.in
What ?

P2P – File sharing?
Distributed application architecture
Live, Real Time connectivity for devices
Flash Platform support
Why ?
•   Scalability
•   Network Efficiency
•   Secure
•   Cloud Sourcing Information
•   Better User Experience
•   Take advantage of P2P capabilities of AIR for
    Mobile
Where ?

Everything   from    application-level video
multicasting to swarming file delivery and
multiuser games without a server !

Corporate enterprise, social   media,   and
entertainment applications
Demos
Link on the last slide
The Entities

Peer
RTMFP
Group – Super Set of neighbors
Neighbors – Directly connected peers
How ?


                       Group




RTMFP Capable Server
Infrastructure

• FMS Server rtmfp://<SERVER>

• Cirrus service (non-commercial),
  rtmfp://p2p.rtmfp.net/ + DEVELOPER+KEY


• Isolated LAN rtmfp://
Why connect to a external server?
•   Facilitate connectivity
•   Directory of connected devices
•   Authenticity
•   Manage topology
•   Self managed P2P groups – No Manual Peer ID
    Exchange
Real Time Media Flow Protocol
•   Protocol
•   Enables Live, Real time connectivity
•   Not File Sharing, Best for streaming
•   Unlike RTMP, based on the UDP protocol
•   Rapid Connection Restore
•   IP Mobility
•   128-bit AES encryption
Routing

               Multicast
               Many to Many


          Directed Routing
               One to Many


         Object Replication
Best effort techniques to transfer large data
Group Specifier
• Define a P2P group
• Specify capabilities
   –   Multicast
   –   ipMulticastMemberUpdatesEnabled
   –   MulticastEnabled
   –   RoutingEnabled
   –   PostingEnabled
   –   ObjectReplicationEnabled, and more !

   (Group Name + Group Capabilities) = Group Identifier
Events
                      NetConnection.Connect.Success

                         NetGroup.Connect.Success

                         NetGroup.Neighbor.Connect




netGroup.sendToNeighbor(data)                   NetGroup.SendTo.Notify
                                                 (event.info.message)
NetStream - Audio and Video
Sender
var camera:Camera = Camera.getCamera();
var mic:Microphone = Microphone.getMicrophone();
_outgoingStream.attachAudio(mic);
_outgoingStream.attachCamera(camera);
_outgoingStream.publish( "P2PVideo" );


Listener
NetGroup.MulticastStream.PublishNotify


Receiver
_incomingStream.play("P2PVideo");
Where Next

                   Cirrus
http://labs.adobe.com/technologies/cirrus/

              Sample Code
           http://inoel.in/p2p
Where Right Now


       Ekalavya
http://bit.ly/ekalavya
Thank You

   inoel@adobe.com
Twitter: @immanuelnoel
  http://blog.inoel.in

Más contenido relacionado

La actualidad más candente

(MED305) Achieving Consistently High Throughput for Very Large Data Transfers...
(MED305) Achieving Consistently High Throughput for Very Large Data Transfers...(MED305) Achieving Consistently High Throughput for Very Large Data Transfers...
(MED305) Achieving Consistently High Throughput for Very Large Data Transfers...
Amazon Web Services
 
Deployment on Heroku
Deployment on HerokuDeployment on Heroku
Deployment on Heroku
Stoyan Zhekov
 

La actualidad más candente (20)

Cloud Services Powered by IBM SoftLayer and NetflixOSS
Cloud Services Powered by IBM SoftLayer and NetflixOSSCloud Services Powered by IBM SoftLayer and NetflixOSS
Cloud Services Powered by IBM SoftLayer and NetflixOSS
 
Whats all the FaaS About
Whats all the FaaS AboutWhats all the FaaS About
Whats all the FaaS About
 
VPC and Datacenter Connectivity Options
VPC and Datacenter Connectivity OptionsVPC and Datacenter Connectivity Options
VPC and Datacenter Connectivity Options
 
Netflix Playback Data Systems Team and Job Overview
Netflix Playback Data Systems Team and Job OverviewNetflix Playback Data Systems Team and Job Overview
Netflix Playback Data Systems Team and Job Overview
 
ProductX2014 Tom thirer. mellanox
ProductX2014 Tom thirer. mellanoxProductX2014 Tom thirer. mellanox
ProductX2014 Tom thirer. mellanox
 
(MED305) Achieving Consistently High Throughput for Very Large Data Transfers...
(MED305) Achieving Consistently High Throughput for Very Large Data Transfers...(MED305) Achieving Consistently High Throughput for Very Large Data Transfers...
(MED305) Achieving Consistently High Throughput for Very Large Data Transfers...
 
Ansible & Cumulus Networks - Simplify Network Automation
Ansible & Cumulus Networks - Simplify Network AutomationAnsible & Cumulus Networks - Simplify Network Automation
Ansible & Cumulus Networks - Simplify Network Automation
 
ENT101 Embracing the Cloud - AWS re: Invent 2012
ENT101 Embracing the Cloud - AWS re: Invent 2012ENT101 Embracing the Cloud - AWS re: Invent 2012
ENT101 Embracing the Cloud - AWS re: Invent 2012
 
Deployment on Heroku
Deployment on HerokuDeployment on Heroku
Deployment on Heroku
 
Docker Meetup Tokyo #23 - Zenko Open Source Multi-Cloud Data Controller - Lau...
Docker Meetup Tokyo #23 - Zenko Open Source Multi-Cloud Data Controller - Lau...Docker Meetup Tokyo #23 - Zenko Open Source Multi-Cloud Data Controller - Lau...
Docker Meetup Tokyo #23 - Zenko Open Source Multi-Cloud Data Controller - Lau...
 
RMG202 Rainmakers: How Netflix Operates Clouds for Maximum Freedom and Agilit...
RMG202 Rainmakers: How Netflix Operates Clouds for Maximum Freedom and Agilit...RMG202 Rainmakers: How Netflix Operates Clouds for Maximum Freedom and Agilit...
RMG202 Rainmakers: How Netflix Operates Clouds for Maximum Freedom and Agilit...
 
ServerTemplate™ Deep Dive: Configuration for Multi-Cloud Environments
ServerTemplate™ Deep Dive: Configuration for Multi-Cloud EnvironmentsServerTemplate™ Deep Dive: Configuration for Multi-Cloud Environments
ServerTemplate™ Deep Dive: Configuration for Multi-Cloud Environments
 
Ha of load balancer
Ha of load balancerHa of load balancer
Ha of load balancer
 
State of Puppet - Puppet Camp Silicon Valley 2014
State of Puppet - Puppet Camp Silicon Valley 2014State of Puppet - Puppet Camp Silicon Valley 2014
State of Puppet - Puppet Camp Silicon Valley 2014
 
Does Hybrid Cloud Work? 5 Success Stories with VMware Hybrid Clouds
Does Hybrid Cloud Work? 5 Success Stories with VMware Hybrid CloudsDoes Hybrid Cloud Work? 5 Success Stories with VMware Hybrid Clouds
Does Hybrid Cloud Work? 5 Success Stories with VMware Hybrid Clouds
 
Observability on Kubernetes - High Availability on Prometheus
Observability on Kubernetes - High Availability on PrometheusObservability on Kubernetes - High Availability on Prometheus
Observability on Kubernetes - High Availability on Prometheus
 
Kubernetes Operations (KOPS)
Kubernetes Operations (KOPS)Kubernetes Operations (KOPS)
Kubernetes Operations (KOPS)
 
The NBN Puppet Journey
The NBN Puppet JourneyThe NBN Puppet Journey
The NBN Puppet Journey
 
Why Data, Code and Mobile converge in the Open Cloud
Why Data, Code and Mobile converge in the Open CloudWhy Data, Code and Mobile converge in the Open Cloud
Why Data, Code and Mobile converge in the Open Cloud
 
Kubernetes and AWS Lambda can 
play nicely together
Kubernetes and AWS Lambda can 
play nicely togetherKubernetes and AWS Lambda can 
play nicely together
Kubernetes and AWS Lambda can 
play nicely together
 

Similar a P2P for mobile devices

Video Streaming
Video StreamingVideo Streaming
Video Streaming
Videoguy
 
Delivering on the promise of the cloud for digital media, aspera on demand
Delivering on the promise of the cloud for digital media, aspera on demandDelivering on the promise of the cloud for digital media, aspera on demand
Delivering on the promise of the cloud for digital media, aspera on demand
Amazon Web Services
 
AMF Flash and .NET
AMF Flash and .NETAMF Flash and .NET
AMF Flash and .NET
Yaniv Uriel
 
Mike Taulty DevDays 2010 Silverlight 4 - What's New Part 2
Mike Taulty DevDays 2010 Silverlight 4 - What's New Part 2Mike Taulty DevDays 2010 Silverlight 4 - What's New Part 2
Mike Taulty DevDays 2010 Silverlight 4 - What's New Part 2
ukdpe
 

Similar a P2P for mobile devices (20)

Video Streaming
Video StreamingVideo Streaming
Video Streaming
 
WebRTC
WebRTCWebRTC
WebRTC
 
Osiot13 IoT buildout
Osiot13 IoT buildoutOsiot13 IoT buildout
Osiot13 IoT buildout
 
Network Situational Awareness with d00gle
Network Situational Awareness with d00gleNetwork Situational Awareness with d00gle
Network Situational Awareness with d00gle
 
Delivering on the promise of the cloud for digital media, aspera on demand
Delivering on the promise of the cloud for digital media, aspera on demandDelivering on the promise of the cloud for digital media, aspera on demand
Delivering on the promise of the cloud for digital media, aspera on demand
 
Adding Real-time Features to PHP Applications
Adding Real-time Features to PHP ApplicationsAdding Real-time Features to PHP Applications
Adding Real-time Features to PHP Applications
 
Peer-to-peer Internet telephony
Peer-to-peer Internet telephonyPeer-to-peer Internet telephony
Peer-to-peer Internet telephony
 
Global Data Stream Network for Internet of Things
Global Data Stream Network for Internet of ThingsGlobal Data Stream Network for Internet of Things
Global Data Stream Network for Internet of Things
 
AWS re:Invent 2016: Accelerating the Transition to Broadcast and OTT Infrastr...
AWS re:Invent 2016: Accelerating the Transition to Broadcast and OTT Infrastr...AWS re:Invent 2016: Accelerating the Transition to Broadcast and OTT Infrastr...
AWS re:Invent 2016: Accelerating the Transition to Broadcast and OTT Infrastr...
 
Devfest uk & ireland using apache nifi with apache pulsar for fast data on-r...
Devfest uk & ireland  using apache nifi with apache pulsar for fast data on-r...Devfest uk & ireland  using apache nifi with apache pulsar for fast data on-r...
Devfest uk & ireland using apache nifi with apache pulsar for fast data on-r...
 
IBM Aspera overview
IBM Aspera overview IBM Aspera overview
IBM Aspera overview
 
The Purpose of Cloud-technology for Video Production
The Purpose of Cloud-technology for Video ProductionThe Purpose of Cloud-technology for Video Production
The Purpose of Cloud-technology for Video Production
 
AMF Flash and .NET
AMF Flash and .NETAMF Flash and .NET
AMF Flash and .NET
 
Exploring the Final Frontier of Data Center Orchestration: Network Elements -...
Exploring the Final Frontier of Data Center Orchestration: Network Elements -...Exploring the Final Frontier of Data Center Orchestration: Network Elements -...
Exploring the Final Frontier of Data Center Orchestration: Network Elements -...
 
Application Delivery Platform Towards Edge Computing - Bukhary Ikhwan
Application Delivery Platform Towards Edge Computing - Bukhary IkhwanApplication Delivery Platform Towards Edge Computing - Bukhary Ikhwan
Application Delivery Platform Towards Edge Computing - Bukhary Ikhwan
 
Puppet Camp Boston 2014: Keynote
Puppet Camp Boston 2014: Keynote Puppet Camp Boston 2014: Keynote
Puppet Camp Boston 2014: Keynote
 
Music city data Hail Hydrate! from stream to lake
Music city data Hail Hydrate! from stream to lakeMusic city data Hail Hydrate! from stream to lake
Music city data Hail Hydrate! from stream to lake
 
Helen Tabunshchyk "Handling large amounts of traffic on the Edge"
Helen Tabunshchyk "Handling large amounts of traffic on the Edge"Helen Tabunshchyk "Handling large amounts of traffic on the Edge"
Helen Tabunshchyk "Handling large amounts of traffic on the Edge"
 
Docker:- Application Delivery Platform Towards Edge Computing
Docker:- Application Delivery Platform Towards Edge ComputingDocker:- Application Delivery Platform Towards Edge Computing
Docker:- Application Delivery Platform Towards Edge Computing
 
Mike Taulty DevDays 2010 Silverlight 4 - What's New Part 2
Mike Taulty DevDays 2010 Silverlight 4 - What's New Part 2Mike Taulty DevDays 2010 Silverlight 4 - What's New Part 2
Mike Taulty DevDays 2010 Silverlight 4 - What's New Part 2
 

Último

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Último (20)

EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 

P2P for mobile devices

  • 1. P2P for Mobile Devices Immanuel Noel | Platform Evangelist, Adobe blog.inoel.in
  • 2.
  • 3. What ? P2P – File sharing? Distributed application architecture Live, Real Time connectivity for devices Flash Platform support
  • 4. Why ? • Scalability • Network Efficiency • Secure • Cloud Sourcing Information • Better User Experience • Take advantage of P2P capabilities of AIR for Mobile
  • 5. Where ? Everything from application-level video multicasting to swarming file delivery and multiuser games without a server ! Corporate enterprise, social media, and entertainment applications
  • 6. Demos Link on the last slide
  • 7. The Entities Peer RTMFP Group – Super Set of neighbors Neighbors – Directly connected peers
  • 8. How ? Group RTMFP Capable Server
  • 9. Infrastructure • FMS Server rtmfp://<SERVER> • Cirrus service (non-commercial), rtmfp://p2p.rtmfp.net/ + DEVELOPER+KEY • Isolated LAN rtmfp://
  • 10. Why connect to a external server? • Facilitate connectivity • Directory of connected devices • Authenticity • Manage topology • Self managed P2P groups – No Manual Peer ID Exchange
  • 11. Real Time Media Flow Protocol • Protocol • Enables Live, Real time connectivity • Not File Sharing, Best for streaming • Unlike RTMP, based on the UDP protocol • Rapid Connection Restore • IP Mobility • 128-bit AES encryption
  • 12. Routing Multicast Many to Many Directed Routing One to Many Object Replication Best effort techniques to transfer large data
  • 13. Group Specifier • Define a P2P group • Specify capabilities – Multicast – ipMulticastMemberUpdatesEnabled – MulticastEnabled – RoutingEnabled – PostingEnabled – ObjectReplicationEnabled, and more ! (Group Name + Group Capabilities) = Group Identifier
  • 14. Events NetConnection.Connect.Success NetGroup.Connect.Success NetGroup.Neighbor.Connect netGroup.sendToNeighbor(data) NetGroup.SendTo.Notify (event.info.message)
  • 15. NetStream - Audio and Video Sender var camera:Camera = Camera.getCamera(); var mic:Microphone = Microphone.getMicrophone(); _outgoingStream.attachAudio(mic); _outgoingStream.attachCamera(camera); _outgoingStream.publish( "P2PVideo" ); Listener NetGroup.MulticastStream.PublishNotify Receiver _incomingStream.play("P2PVideo");
  • 16. Where Next Cirrus http://labs.adobe.com/technologies/cirrus/ Sample Code http://inoel.in/p2p
  • 17. Where Right Now Ekalavya http://bit.ly/ekalavya
  • 18. Thank You inoel@adobe.com Twitter: @immanuelnoel http://blog.inoel.in