Been around for a while (since 2013 in Chrome)
Way to directly connect browsers (clients) to each other
SIP—earlier model of doing this—shoved into HTTP and JSON
Inside of WebRTC it's all these weird formats from the 90s
Asymmetric communication: Simple case
Browser 1 will make an offer
Browser 2 gets the offer and writes an answer, sends that back
They use the information in the offer and answer to connect
Candidate IP addresses
IP addresses browser thinks it will be reachable at, gotten by checking interfaces, will include local addresses (candidates)
try each and find ones that work (are reachable)
Signaling server
How are the offer and answer transmitted?
Use a shared server that both can reach to transmit offer and answers
Usually done with websockets but not required
Only used in establishing the direct connection
Unreachable network case (NATs)
If both are on separate private networks, no candidates are reachable
Use NAT reversal technique called STUN (part of ICE protocols)
STUN server (separate from signaling server)
Browser reaches to endpoint and asks for its (publically routable) IP address and figure out how it's NATted (what port is it "actually" on)
A bunch of public ones exist run by large scale third parties (Google, for instance, or anyone running VOIP)
Uses that as part of its candidates
No need for both clients to use the same STUN server (or even for both to use a STUN server, if one side is routable)
TURN servers
Some NAT configurations might not allow an alternative machine to ingress on the the NATted port number (i.e. the source must match the destination the connection was initiated to)
You can ask for a relay to resolve this (TURN server)
It will return a port number an an address that works as a proxy to connect to you
Google stats: ~8% of connections are strictly NATted and require TURN
Geographically distributed to reduce latency
Multi-peer connections?
Up to 4 or 5 connections, often just do many-to-many connections (each client connected to each client)
This stops scaling fast (factorial number of total connections!)
SFUSTU server acts as a mixer and can take uploads and stream them back now
Adds a bit of latency but is usually good enough
“Selective Forwarding Unit”
Could a client act as the "server"?
Seems reasonable, may be a connectivity issue
Daisy chain model, where each peer passes it along to the next?
Clearly a more latency driven-model
Can we determine available bandwidth?
WebRTC tooling might not enable it but Skype once worked this way
Got Skype kicked off CERN networks
If it decides to make you a supernode, RIP internet connection, no choice
Hence Skype is no longer working this way


It is artists-as much as museums or the market-who, in their very efforts to
escape the institution of art, have driven its expansion. With each attempt
to evade the limits of institutional determination, to embrace an outside, to
redefine art or reintegrate it into everyday life, to reach "everyday" people
and work in the "real" world, we expand our frame and bring more of the
world into it. But we never escape it.
Of course, that frame has also been transformed in the process. The
question is how? Discussions of that transformation have tended to revolve
around oppositions like inside and outside, public and private, elitism and
populism. But when these arguments are used to assign political value
to substantive conditions, they often fail to account for the underlying
distributions of power that are reproduced even as conditions change,
and they thus end up serving to legitimate that reproduction. To give the
most obvious example, the enormous expansion of museum audiences,
celebrated under the banner of populism, has proceeded hand in hand
with the continuous rise of entrance fees, excluding more and more lowerincome
visitors, and the creation of new forms of elite participation with
increasingly differentiated hierarchies of membership, viewings, and galas,
the exclusivity of which is broadly advertised in fashion magazines and
society pages. Far from becoming less elitist, ever-more-popular museums
have become vehicles for the mass-marketing of elite tastes and practices
that, while perhaps less rarified in terms of the aesthetic competencies
they demand, are ever more rarified economically as prices rise. All of
which also increases the demand for the products and services of art