Peer 5 content delivery network and how it uses WebRTC and FOSS

Video in TIB AV-Portal: Peer 5 content delivery network and how it uses WebRTC and FOSS

Formal Metadata

Peer 5 content delivery network and how it uses WebRTC and FOSS
Alternative Title
Open Media - Peer 5
Title of Series
CC Attribution 2.0 Belgium:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Release Date
Production Year

Content Metadata

Subject Area
Building Context awareness Distribution (mathematics) Multiplication sign Real-time operating system Client (computing) Mereology Web 2.0 Word Radio-frequency identification Codec Source code Software developer Moment (mathematics) Electronic mailing list Type theory Arithmetic mean Internetworking Telecommunication Order (biology) Point (geometry) Content delivery network Implementation Server (computing) Service (economics) Open source Divisor Connectivity (graph theory) Web browser Product (business) Telecommunication Term (mathematics) Googol Touch typing Audiovisualisierung Utility software Communications protocol Content delivery network Computer architecture Server (computing) Projective plane Core dump Stack (abstract data type) Limit (category theory) Web browser Particle system Word Hypermedia Software Logic Videoconferencing Family
Server (computing) Building Computer file Firewall (computing) Multiplication sign Vermaschtes Netz Web browser Content (media) Neuroinformatik Population density Internetworking Multimedia Lie group Content delivery network Game theory Form (programming) Polygon mesh Simultaneous localization and mapping Computer file Projective plane Shared memory Metadata Computer network Cartesian coordinate system Connected space Peer-to-peer Type theory Software Telecommunication Network topology Multimedia Videoconferencing Online chat
Multiplication sign Source code Mereology Area Front and back ends Web 2.0 Different (Kate Ryan album) Encryption Videoconferencing Multimedia Information security Error message Building Constructor (object-oriented programming) Infinity Instance (computer science) Connected space Arithmetic mean Googol Process (computing) Buffer solution Quicksort Bounded variation Reverse engineering Content delivery network Server (computing) Implementation Game controller Service (economics) Open source Link (knot theory) Computer file Connectivity (graph theory) Control flow Web browser Host Identity Protocol Architecture Mixture model Internetworking String (computer science) Content delivery network Standard deviation Multiplication Matching (graph theory) Scaling (geometry) Server (computing) Projective plane Content (media) Computer network Limit (category theory) Scalability Frame problem Peer-to-peer Hypermedia Software Personal digital assistant Videoconferencing
Stapeldatei Server (computing) Game controller Multiplication Software developer Source code Content (media) Data storage device Analytic set Client (computing) Cartesian coordinate system Connected space Medical imaging Mechanism design Process (computing) Logic Videoconferencing Multimedia Endliche Modelltheorie Musical ensemble Quicksort Videoconferencing Content delivery network
Axiom of choice Complex (psychology) Group action State of matter INTEGRAL View (database) Multiplication sign Source code Mereology Perspective (visual) Likelihood function Area Web 2.0 Mathematics Mechanism design Bit rate Very-high-bit-rate digital subscriber line Different (Kate Ryan album) Videoconferencing Cuboid Multimedia Endliche Modelltheorie Extension (kinesiology) Scripting language Algorithm Channel capacity Flash memory Instance (computer science) Flow separation Open set Connected space Arithmetic mean Process (computing) Buffer solution Right angle Summierbarkeit Resultant Annihilator (ring theory) Content delivery network Slide rule Server (computing) Open source Link (knot theory) Adaptive behavior Web browser 2 (number) Inclusion map Cache (computing) Bridging (networking) Term (mathematics) Program slicing Authorization Computer-assisted translation Traffic reporting Content delivery network Module (mathematics) Domain name Server (computing) Projective plane Content (media) Interactive television Client (computing) Peer-to-peer Word Software Personal digital assistant Function (mathematics) Marginal distribution Extension (kinesiology)
so thanks everybody for coming and my name is otherwise some from Figure 5 and 1 the article co-founders of the refinement to 5 is that new type of content delivery network that is based on users and and also is web-based so the touch of JavaScript and will work to see stuff and was familiar with where would to see this everybody OK so we can see that bath pretty fast an that so where were the sea is an API definition it's not this early college or implementation and Google and far and was aligned and is the beginning of time and was it's formally it's an API and for real-time communications an and now is already making into the modern rock modern browsers and we have a crew Firefox and Opera and likely a II is also home and getting there was sick and surprisingly they need some really nice work and they are working together with all with the rest of the browser vendors and the so it looks optimistic at the moment as a word to say it is an interesting open source project because the 1st calls it is open source under the BSD license and and browser vendors In all work on it together and the unit and isn't implemented in the in the brother and we also AP I'm not sure if there are any other project that and it costs that much and because Google spent almost 200 million dollars on companies that they acquired neck in 2010 and in order to and get high-quality collects and which they just open source everything it was in order products and I LBC and I and also when the pH and the which is in it it is part of women an from quite recently Siskel opened 8 2 6 4 which is now also mandatory in there work to said and from that terms of think it's an interesting open source project but what we're not going to talk about this context we're going to talk about that channels API which is that the little brother off the main API the mean EPI talks about audio visual and capability is like a building data hang out application and so we can talk one-to-one and using the A. all during the the other part of the API and is called that Dutch again that API and and simply lets you let you transfer any arbitrary data between 2 endpoints to peer-to-peer and it's a full network stack so and every browser up until recently had a factor that is based on the the big the and now we have a really reached that that is based on you to think very exciting and its utility of the transport layer and then I stand in turn and to to do the natural so and and on top of uh we have s a t and and DT list for for the secure layer and on top of everything the dimensional and particle itself and as end users as the developers we use vaginal an API directly above the a lot of stuff lying under a lot of stuff going on under the hood and that were what to see is doing and I'm not going to go to the point that and I wanna say why we think it's huge because so we have another full stack that lets us do wonderful things an and especially if can fix this in the web the was supposed to be very centralized from the beginning everybody wanted to be the central no component would be 2 crucial to important an but unfortunately an things are to centralized today and everything is the dependent on web servers and then even if you want to build a simple check obligations and the just communicate between 1 and point to another and points when it's evident that and we WebSockets or it should be and that's kind of a limitation that we have today and some and and it's called it called after developers to build a lot of logic into into the service I and it's not really necessary and it's actually harming the performance and the architecture as the whole a word to say will hopefully so lists and make that would fully distributed and was the more functionality going into the end points into the client side we have and how the toward so you know
what would you say about go quickly and on this 1 so it's not as easy as a client-server communication where you just open a connection to a server and to known computers and the Internet cannot just communicates with us 3rd party to discover to to have him was the discovery and opening up their firewalls and then that's and it's just quickly and were to secessionist and began with the signaling from there and initiator to the server in a signaling channel to them many people use WebSockets and on Jess here very easy to implement and once the matter that that is transferred between 2 endpoints and they actually and want to stop there and the direct show between them being in the air to the natural so which is done in ice In either using turn servers and which are basically a really anaphora using standard and that's what we're trying to achieve most of the time and the style opens up their firewalls and the 2 browsers can communicate to their ICT what can
we do it's an so this is the trivial and the use-cases send files sentiment at the find gainful other things in text and the but we're talking about today and and from media the probably in the mission of course which is on that the network with more than 1 more than 2 and and nodes and we like to think about 3 types of mesh networks the full mesh where everybody are connected to everybody and overly tree and the and the partial metaphor the non-aggression of war and in practice people use the right form and so on the and this is for this of arrived it can be against an and if he has about huge slam or begins Mozilla's builds an immediate new companies are are we on building really interesting applications they like talk walks for and density is interesting lies peer-to-peer solution and quality of solutions FI sharing we have a project named share 1st and also builds With this mission of ports and other than but
usually it's not enough and usually once to complement this metaphor and it was a server an were not against the although we said we live in a village should be more decentralized doesn't mean that servers on our books a little this link and then the 2 to cloud is really work together well and think about it did appear normal in service for the beginning and before the company gets popular and the and for sourcing the content and on either end servers or hard to scale and are there are expensive and that they have errors they can break and it's it's harder to replace them with something else with more servers and so the mixture between these 2 and and I bring you something else the fable is an infinite scale it is more resilient will problems it is faster and low-latency now as a user of who the the end of this network I can go the content from close the resources and the the that the latency and compare to the server is lower and it's super cost effective to build something that is based on on the component asks the users and it compared to for a more more resources on the server side and so how can we build a where were to see senone and those Louis uh that the the 2 meanings here and what was he did see the also a seen the support well see that's not what we're trying to do trying to build a layer on top of the servers that caches content in this metaphor and can build their and high-throughput the living the them and that that's open at the 5 and and it needs to be easy to use and so if I'm already using a CDN or I'm already using and and a few other centers begins to the easy to add another layer of course cash and it needs to be agnostic to all sorts of web servers and and in all sorts of which include the implementation of tricky parts also to work in different use cases and tends to be secured so no malicious peers can get in the middle and send me some continent only get obviously needs to be fast and scalable so in it would be helpful to users and the open source here helps a lot because of some of the problems sold and where other people from a for instance security known it if you build something in Dallas and you run under and many many layers of of In of sulfur that's and limits you in a way that which is sometimes more difficult but in a way it makes sense because it makes it easier to secure indispensable variations on William googling was a spend a lot of time to make sure everything is encrypted and works very very secure and so we we don't need to re implemented in reinvent the wheel as opposed to previous uh peer-to-peer solutions and 4 in the market that had to implement everything all the encryption layers all the other layers and this week and we can't break too much we can do too what harm and so we use a lot of open source projects and but I'll go over is that the architecture of of our solution so the and at the origin it's the media server can be any age the servers and the senior and whatever that's the existing and the compliments the and we add and the the complementary peer-to-peer compliments so yeah and on the back end of and in red it's our tracker and it's a signaling there's it's not reversal Air it's also and simply CD and that serve our of so you can actually do what we're doing have some so when the appear 5 Jess's lowland from from our CNN through the browser it connects to the back using WebSockets and then it will get matches to other peers that can contribute to the content delivery and from there the fear can connect to multiple their peers and it'll be gaining an a connection session with other peers using the standard where were to see process which include signaling and not and whatever is necessary for the 2 peers to communicate was there connected and they can exchange made up there and that are independently and which is very efficient at very low latency and it works well and the server and and and the check is not there and worried about that and some I was trying to show on let's see what happens the the thank you the the some of the Internet and the and and I think I mean this that this string something small way which and in fact housekeeping the the fullness of you know and
so and know way this frame was picked screenshot the had a but it was 1 just ran in its this represents the actual and chunks that I received does appear thank actually comes from construct the buffer and on the fly from the various sources the and it's not real-time streaming it's a buffer that is constructed from and with so the streaming in construction where chunks are assumed on the need for multiple at sources and if 1 source suddenly disappears it's OK will get the chunk from a different source and that's continue the and the the the this is our problem today and maybe someone else has the same problem and most of and the video provisions our working in a way that's and that the native player the media time whatever and is connected to meta-server in a way that we can break the connection and I video have the tagged with text and before will mean that means that the detainees just fetch contents from that resource and nobody can touch it nobody can intercept it and it means that just 1 server and will be a responsible for the delivery of this and of this file and we don't want and once and full control I want in multiple sources we want to have preservation and other features and will make the Livermore more efficient as so far we
believe that the warrants to shift from a native playback native delivery and to something that is more jobs of of application based delivery where we have more control as developers and luckily it's it's already happening with media source API in batch so the model for native HDP agent such as content from the media server is is changed is changing from an and from from that to something that is based on the video player that has some javascript logic that that fetches content through it at the child through its image request and then push it it's today and to the player it's much better and because it lets us also build
and more mechanisms in the font size build more distributed smart applications an we can build their their analytics in the client side we can prioritize between the bigger chunks can control the band with we can have multiple slots multiple connections and connections even to a single server or it can use several at the same time and because the smart prefetching all sorts of an interesting just AppLogic very easily and instead of just such a content using the XHR we can use lower to a kind of you can do an off-site storage in the you can use this size and some and
in the end result is that it's a more disciplined approach to cheese we think it's it's this smarter and there are a few enablers to make this happen mitosis extensions all asleep and Dashwood yet that yes and I was happy to hear the guys from for all the players that they are actually implementing it and it's very important for them and therefore work some G but also helps a lot because it can take and for resident before it on the fly changes and to something that source extension can actually play and if you wanna use flesh if you wanna use H a less and you have 2 choices either with flesh and then you need something like flatulence and players like flapper or did you just authority and bridges between flashing GEL scripts and we can make the the request from the jobs that bring it back to flesh and article to remain the degrade great open source project cold and in its view the modules that it changes and before progressive on the fly in the server side to reach a LAS and then if you and mix it with the flesh such a less or something like MSE with and then you can a goal to an ingest based delivery model and in situ HLS is an interesting project and Rajasthan is no focusing on that and actually let you can do this without flesh so you you get HOS chunks inclusion into uh intimacy and who decided to go with an API that is very similar to XHR achieved is compatible with XHR so we can Baker or API into that yes and other technologies that orange and just based so it's just the same API can take it out of the film and to something look 1 will from this model to something that is delivery based and and then that which we can begin and and the delivery even in complex media and use cases and that's it if thank you and so are there any questions of of something here I think we are very and then you get a the list of and you tend to be and that's what we want and the like the and the and and you yeah and so we mean and why we what what are we trying to how can have been existing senior yeah so soon the yes I think I think
this slide probably is that the most of the Sudan's already but they don't have infinite their capacity and especially not in places where they are not don't have box so even acolyte the best in the world the failed several times in large slices is and so on and places where an initial our land America where the doesn't have that many capacity and also can be expensive so some people to they're not using they want to use the CDN because the expensive and they can use something like that the you know the you and so we the likelihood of the data and more all that we want know that for people in need of some these and you know the yeah so that's 1 of the challenges when when you build this kind of solution because it will work dependence on the sessions the web session so if you close the term uh you you're not sharing anymore and that's why we designed an algorithm to be very sensitive to that uh ports and from the beginning you becoming the effective and and what we're trying also to do is 1 you navigate from pages within the same domain or and from different domains will try to share as much as possible and the same time we try to to give the resources and user safe enough trying to use and 1 so it's a difficult challenge but in many countries uh values of symmetric now that as we increase recently you have was so in the people of that we and the time that you can use their connections yes and no the thing so when we limit the amount of men was that the that we take and we tried to not use or a fossil of their capabilities in an mobile networks so as we do and GIP detection and if it's a mobile at high speed we're disabling doubtful of links but some them the those of you that we use in and of you of so the question was how how do we decide if it's a few serving the content the server or both of them so usually it's most of them as it depends on the use case if it's a if it's video for instance usually it starts with a server because the latency in the beginning of the session is better to the server before we read the all the signaling and connecting to other users and so usually the 1st chance fetched from server and then you tried to and and fill the buffer of the plane as fast but this possible using both of them once we reach the state fair margin we can use peer-to-peer and only it's not other use cases where you do all the time both of them because we want to achieve hot in the highest report it is the sum of the emergency scenario where the use of the of the of the actions the right so you have trouble that 1 which was the action of the play is just as the rates of the time and the rest of the year all values this to interaction between 4 and what's over here the and the into consuming their perspective so the question is basically how do we and integrate Tuesday adaptive bitrate algorithms we we haven't done it yet so it's something we're about to do now them but our goal is to because we as and throughput to the end user are always to achieve higher bitrates using the peer-to-peer and so on so imagine that you have there and the cat connection to the CDN and you cannot get more than 1 minute per 2nd and doesn't mean that we is peers you cannot get too too many seconds and that's what we're trying to achieve now and and for the higher the traits the and could I thought was on the top of of work and you of you that the I do not think it is the is and and the the yeah so the browser is I'm not asking leaders and is that the uh that API words in a way that it's so transparent now until later on the reasons but and so it's basically up to the common provided to decide how he how how to communicate with the user models and it can be an opt-in mechanism on a few through becoming part of faith and benefit from it as well and it's up to the publisher to and the B