6 ms·
Hello, lead engineer here. Just to clarify, you don't need a plugin to enable Edgemesh as a user. Everything is 100% browser compliant. Your webmaster adds o
by technopriest 9y ago
Hello, lead engineer here. Just to clarify, you don't need a plugin to enable Edgemesh as a user. Everything is 100% browser compliant. Your webmaster adds our one line of code and our one javascript file you are done. Your users will never even see a pop up.
- tokenizerrr 9y agoBut will users their bandwidth get abused?
- xori 9y agoProbably. https://sig.edgeno.de/edgemesh.client.min.js https://sig.edgeno.de/edgemesh.client.min.js is being added to my uBlock list.
- chrissnell 9y agoGood call. I just submitted an issue to UBlock to get their JS client added to the block lists: https://github.com/uBlockOrigin/uAssets/issues/659 https://github.com/uBlockOrigin/uAssets/issues/659 Sorry Edgemesh team, but this kind of activity without user opt-in is not okay.
- jloveless 9y agoNo worries - that's exactly what uBlock is there for! :) We've struggled to find the best way to add opt out on the client side without effecting the actual page itself (e.g. pop-up etc) and would love to get some thoughts on this - please PM me if you have any. Alternatively we went with a more aggressive approach on network based detection (e.g. metered connections, replication across ASN vs intra-ASN etc).
- gcb0 9y agohow can you even know if a connection is metered from within a browser?! thats crazy talk rigth there. there are so many variations that all happen completely outside of the browser domain and/or the connection destination.
- technopriest 9y agovia the Network Information API. https://developer.mozilla.org/en-US/docs/Web/API/Network_Information_API https://developer.mozilla.org/en-US/docs/Web/API/Network_Inf... Connections start metered and are then upgraded when an unmetered connection is successfully detected.
- jloveless 9y agoAside from the connection API - What we do it we have a mapping of ASNs that are flagged as metered. When your client comes online we take the IP, map to the ASN and determine if it is able to upload (e.g. on cellular/metered etc). We buy this data today and you can always drop an email to meter_notice@edgemesh.com with your IP and we will add it in. We also prioritize upload partners for known ASNs (e.g. you're more likely to be chosen for upload if you are on Verizon Business than Verizon Fios than Telstra).
- gcb0 9y agothat's noble. really. but by far deterministic.
- technopriest 9y agoYes, I've seen the phrase "seeding to random peers" pop up a few times. Peer selection is actually extremely smart and is by no means "random".
- hwillis 9y agoA little notification does seem like the best idea to me. Obviously it would need to be zero-effort, way unobtrusive, and nice and reassuring. "Hey- on unmetered connections, this page may balance network load with your unused bandwidth. You shouldn't notice any difference in speed! [Learn More][Edgemesh CDN]" Maybe even the slightly more aggressive "Your unused bandwidth is helping to speed up other people's connections!" Pop a neat little box in the lower right hand corner on the first visit, and have it minimize/disappear after a couple seconds. I think it's a little skeevy to have it be completely silent. That doesn't mean it has to be super loud though.
- jloveless 9y agoWe've added this to 1.7.2 [1] That will roll into production tomorrow evening. Thanks for all the feedback HN community! [1] https://github.com/edgemesh/edgemesh/releases https://github.com/edgemesh/edgemesh/releases
- hwillis 9y agoMan, you guys are awesome and endlessly tolerant of the slightly fanatical hyperbole being directed at you.
- aaronsmulktis 9y agoAlthough i am not at all affiliated w Edgemesh as a company, I can tell you (first/second? hand) the personality and good-naturedness in this team is through the roof. Plus its just a killer product made by killer devs, pretty sure Spotify does P2P cache-sharing too btw.
- drdaeman 9y agoI think it should be a browser-level feature, just like allowing notifications or location access. Browsers should have an option to follow one of four behaviors: a) allow all P2P connections, b) always ask, c) allow a low-volume (say, <32kbps) P2P traffic, but throttle and ask if the rate tries to go beyond the safe threshold and d) deny all P2P connections. With b) or c) being a sane default, and a JS API to check permissions programmatically. While this doesn't solve the problem right now (and would probably take a long while to happen), as a long-term solution, I think that would be the best way for everyone, providers and consumers. I just think if you'll raise an issue with the mainstream vendors (Mozilla, Google, Opera, Vivaldi) you (as a company) this idea may have slightly better chances to be heard than just some random end-user suggestions. If this idea fits your vision, of course. --- As a short term, I guess maybe you can implement some proprietary API and suggest your users (webmasters) to show a confirmation panel that fits their site look-and-feel. With some readily-available sample implementation that they can just use if they don't want to spend time at all (besides adding a line of code).
- throwawaysml 9y agoI'm amazed browsers don't do this already. https://bugzilla.mozilla.org/show_bug.cgi?id=1395310 https://bugzilla.mozilla.org/show_bug.cgi?id=1395310
- jloveless 9y agoWe've documented it here [1] and also put an example footer implementation on our homepage[2] as well. Thanks for the feedback! [1] https://edgemesh.com/docs/getting-started/opt-out https://edgemesh.com/docs/getting-started/opt-out [2] https://edgemesh.com https://edgemesh.com
- jloveless 9y agoI like the idea of a browser level feature for opt in to WebRTC (on a per Origin basis) - and it was proposed circa 2011 web WebRTC was coming of age. It's probably worth revisiting that discussion. Also with regards to detecting metering client side you're 100% correct - you can't reliably do it in any way on the client side (although for mobile there are some APIs to detect cellular vs. wifi [1]). What we do it we have a mapping of ASNs that are flagged as metered. When your client comes online we take the IP, map to the ASN and determine if it is able to upload. We buy this data today and you can always drop an email to meter_notice@edgemesh.com with your IP and we will add it in. [1] https://developer.mozilla.org/en-US/docs/Web/API/Navigator/connection https://developer.mozilla.org/en-US/docs/Web/API/Navigator/c...
- chrissnell 9y agoIt's in the official uBlock filters list now. https://github.com/uBlockOrigin/uAssets/commit/7a32aa2efb03304d43b557f56c0fa6c9dd5a7bf9 https://github.com/uBlockOrigin/uAssets/commit/7a32aa2efb033...
- willitpamp573 9y agoObviously the plugin isn't the issue, the fact that my browser will now be uploading X MB/sec, which I have no control over, to random peers. This sucks, especially because I have capped monthly bandwidth from my penny-pinching ISP. Why should I host and seed your data for free?
- technopriest 9y agoWe detect if you are on a metered connection and we disable all seeding functionality to ensure you are not playing for the bandwidth we use. We also have an opt out mechanism, but that is up to the installing site to implement. The reason you would want to host data is that you get a faster internet experience. We fill your cache with assets that YOU are likely to request in the future. Performance is our driving metric.
- tokenizerrr 9y agoI have no interest in having my storage or bandwidth abused for anything that is not being shown on my screen right that very moment. And even then, uploading this content to other people is ludicrous. I will be sure to block your assets. Anyone know of a good way to detect sites that are rude enough to abuse my network connection for their own gain?
- jloveless 9y agoProbably the best way is to check the WebRTC stats [1] if using Chrome. We sit atop the WebRTC stack for p2p functionality. [1] https://testrtc.com/find-webrtc-active-connection/ https://testrtc.com/find-webrtc-active-connection/
- lioeters 9y agoBravo for your transparent and open approach to user feedback. The standard these days seems to have fallen low, with countless companies implementing sneaky ways to exploit users however they can, with sugar-coated, obfuscated language. It's refreshing to see such honest replies from this project, especially considering the question is about how to avoid participating unwittingly. I also would prefer not to share bandwidth in this way without knowing, but as you described in another comment, I see there are real positive benefits when used ethically.
- KGIII 9y agoLet me see if I'm understanding correctly. You're using visitor's upload bandwidth and you see not notifying them as a feature? I'm not sure I can see the justification for that.
- deleted 9y ago[deleted]