News for hackers. Stuff that matters.
Re:How Google Wants to Rewire the Internet by komali2 on Monday July 17, 2017 @06:38PM (#14792837)
I really wanted to understand this article. I tried wikipediaing and googling some of the things I didn't really get (Jupiter is a thing... ok and Andromeda.. riiiight). Then I got to the chart "Conceptually, here is how Espresso plugs into the Google networking stack:", which was totally unparseable by me. All the green things look the same, but one of them is the thing this article is about (Espresso, right?), and Google somehow is represented by a vague dark-grey blob... I just don't get it.

Can anybody help? Am I simply not technically competent enough to consume this article yet?

Re:How Google Wants to Rewire the Internet by mandarg on Monday July 17, 2017 @11:40PM (#14794129)
Here's my attempt at an explanation, after reading the article.

Most companies' networks have edge routers (which sit at the points where they connect to other networks) and core routers (which manage the flow of traffic inside the network. All these routers basically use a standard protocol called BGP (Border Gateway Protocol) which is defined by RFC 4271.

However, BGP was still designed from the view of individual machines making routing decisions and announcing routes to each other that collectively make up the whole Internet. This helps the Internet as a whole be quite resilient – if one network goes down, there are still ways to route traffic through to other networks. Also, since the protocol is standard, you can swap out one vendor's gear for another at will (in theory anyway) as long as you know how to configure it correctly.

But this leads to some inefficiency – for instance, it is very hard to say that a path with fewer hops will lead to lower latency. What Google seems to have done is to make their edge routers into one single "intelligent" network, where the edge routers don't make routing decisions on their own, but feed their data into a central server. This central server can then say stuff like "My peering router in NYC seems to be under heavy load, let me redirect some of my traffic to NYC destinations through the NJ datacenter instead", or something to that effect; while still doing the correct BGP announcements from the point of view of Level3 or whoever is peering.

In short, they built their internal network from the ground up since they are so big they can afford to build custom routing gear instead of using the standard off-the-shelf, standardized setup that a small or medium-sized company uses. The network consisting of their custom edge routers (all the green blobs) together is called Espresso and represented by a light grey circle.

Re:How Google Wants to Rewire the Internet by Animats on Tuesday July 18, 2017 @03:49AM (#14794944)
"Central server" for routing. Uh oh.

AT&T used to try to avoid centralization, but ended up with routing controlled from Bedminster, NJ.[1] An interesting comment from AT&T's NOC tour guide is that load doesn't vary much any more. AT&T used to have holiday calling surges and such, but now, in an always-on world, overall load is relatively steady.

[1] http://fortune.com/att-global-network-operations-center/

Re:How Google Wants to Rewire the Internet by runeks on Tuesday July 18, 2017 @04:14AM (#14795041)
You can easily employ redundancy for core services. Core functionality doesn't need to be synonymous with central point of failure. For example, you have three healthy copies of the core service running at all times, combined with failover. All software systems have a core function that must work or else the system fails, but that doesn't mean all software systems are centralized in any useful sense of the word.
Re:How Google Wants to Rewire the Internet by arpa on Tuesday July 18, 2017 @10:52AM (#14796950)
The problem i would see with centralization of routing is not reliability, but rather susceptibility to censorship; as the old saying goes "The Net interprets censorship as damage and routes around it" - while one could argue that root dns servers are central-ish, they are hosted all over the world, so a single actor can hardly impose worldwide censorship. It is a known fact that malicious actors can manipulate BGP (see Hacking Team), but it is still better than putting all of our collective eggs in Google's basket...

Distributed things though, mesh networks, IPFS - that's what's giving me hope.

Re:How Google Wants to Rewire the Internet by mandarg on Tuesday July 18, 2017 @08:35AM (#14796013)
It's interesting to know that a traditional ISP like AT&T is heading the same way.

I think Google gets more freedom to try out some of these techniques because people still fundamentally think of them as a website (apart from Google Fiber, they don't serve end-users directly); whereas AT&T, being an ISP, is treated more like a water / power service, in that people expect them to be working by default, and going down is absolutely unacceptable.

Re:How Google Wants to Rewire the Internet by Animats on Tuesday July 18, 2017 @01:36PM (#14798463)
AT&T, pre-Internet, had 10 major regions in the US, and switches had a fixed list of primary, secondary, and tertiary routes. The first "centralization" was simply that the priorities in the routing tables were changed every few minutes based on load. But if the central routing planner went down or was unreachable, everything still worked, just not as optimally.

What you don't want is software-defined networking where every new flow goes to Master Control for validation and routing. Some SDN systems do that, and they have a central point of failure and censorship.

Re:How Google Wants to Rewire the Internet by hueving on Tuesday July 18, 2017 @04:11AM (#14795025)
Google produces notoriously opaque and high-level articles with regard to its networking systems. You are not meant to get much meaning out of them. Instead you should stand back in awe at the amazing things they are doing.

Nearly every Google paper about Google networks in SIGCOMM is utter trash that would have been rejected in an instant due to lack of novel details if it had come from anyone else. They just brag about scale, utilization, and resiliency without actually giving anything back to the academic community.

Note: This does not apply to all Google papers (e.g. spanner and other DB ones are pretty good). Their networking publications seem to be crippled by either IP concerns or poor academic writers.

Re:How Google Wants to Rewire the Internet by bogomipz on Monday July 17, 2017 @11:48PM (#14794148)
It's a pretty terribly written article and that info graphic is also not very helpful. This article is like two people discussing "inside baseball."

The essence of the article is the evolution of Google's SDN(software defined networking) architecture. They have added SDN to their edge whereas previously SDN existed mostly in their Core it sounds like. The Edge SDN architecture being "Espresso" and the Core SDN architecture being "Jupiter."

There is also some fishing about what exactly is Google's network hardware that runs all this.

The following article is far more brief but far more informative in my opinion:

https://www.sdxcentral.com/articles/news/google-brings-sdn-p...

This is a white paper about Jupiter mentioned in the article and infographic:

https://static.googleusercontent.com/media/research.google.c...

And there's some good resources here for just learning about SDN here:

https://www.opennetworking.org/sdn-resources/sdn-definition

Re:How Google Wants to Rewire the Internet by trafficlight on Monday July 17, 2017 @06:43PM (#14792872)
I really hate the naming trend over the past 10-15 years of using common words for projects.

I can't really search for Espresso, or Jupiter, or Andromeda without additional qualifiers that I may not know yet.

Re:How Google Wants to Rewire the Internet by komali2 on Monday July 17, 2017 @06:54PM (#14792954)
Heh, that for me culminated when windows released a ubuntu subsystem.

The names in order of popularity when it was originally announced (now they push for WSL)

1. Bash for Ubuntu on Windows

2. Windows Bash Shell

3. Windows Subsystem for Linux (WSL)

Trying googling WSL - it's world surf league. Windows Bash Shell is impossible, so is Bash for Ubuntu on Windows. It's getting better as more and more articles are being written, but god almighty. I wouldn't be surprised if google is lending a helping hand with searches for WSL stuff.

Re:How Google Wants to Rewire the Internet by milcron on Monday July 17, 2017 @08:25PM (#14793416)
And the 3rd name is backwards. It ought to be called 'Linux Subsystem for Windows'.
Re:How Google Wants to Rewire the Internet by wolfgang42 on Monday July 17, 2017 @09:46PM (#14793769)
As mentioned by others, the emphasis in the name is on the fact that it's a Windows Subsystem. The historical precedent for this name is "Windows Services for UNIX", which similarly provided a Unix environment on Windows NT.
Re:How Google Wants to Rewire the Internet by SpaceManNabs on Monday July 17, 2017 @08:52PM (#14793575)
THAT IS IT! I was wondering why the name always felt funky. Although the name they have now is technically correct if you ignore standard noun to adjective conventions.
Re:How Google Wants to Rewire the Internet by cat199 on Tuesday July 18, 2017 @10:16AM (#14796652)
I believe this, like many things in the windows ecosystem, is deliberately confusing/takes advantage of linguistic ambiguity to create confusion in the observer and create a sort of implied sense or feeling of microsoft superiority...

E.g. having windows 1st sort of inflates the 'primacy' of windows with respect to linux; it is linux that is being made compatible with windows rather than the other way around.

Best things that come to mind are things from the windows UI - like the network privacy zones, having the 'basic' and 'advanced' control panel, etc.. Some things say 'windows is updating your computer' rather than 'your computer is updating windows' or some such... To me they have this sort of psychological undertone of 'always remember how microsoft is helping you make this confusing thing much easier.. you couldn't do it without us'

Re:How Google Wants to Rewire the Internet by pavement on Monday July 17, 2017 @08:59PM (#14793608)
...or it's missing an apostrophe.

  a. Windows' Subsystem for Linux

  b. Window's Subsystem for Linux
Each option has its own sort of context.
Re:How Google Wants to Rewire the Internet by bdowling on Monday July 17, 2017 @10:14PM (#14793863)
If you're making it a possessive using an apostrophe, then it should be "Windows's Subsystem for Linux" because Windows is singular in that context.
Re:How Google Wants to Rewire the Internet by IncRnd on Monday July 17, 2017 @10:52PM (#14793966)
That's not the entire story, unfortunately. There are other rules. For example, Windows might be considered a family name, as there are several Windows Operating Systems. Also, this is a technical name, and technical writing often follows different rules, specifically in cases such as this.

For the possessive form of Windows I would look at the Microsoft Manual of Style, which for me is the fourth edition.

Page 184: Possessive Nouns

--------------

Do not use the possessive form of Microsoft. Do not use the possessive form of other company names unless you have no other choice. And do not use the possessive form of a product, service, or feature name. You can use these names as adjectives, or you can use an of construction instead.

Microsoft style:

  the Windows interface

  Microsoft products, services, and technologies

  Word templates
--------------
Re:How Google Wants to Rewire the Internet by pavement on Tuesday July 18, 2017 @09:01AM (#14796165)
The correct form of possessive context for words ending in "s," is with a dangling, trailing apostrophe, and omission of the extra "s."
Re:How Google Wants to Rewire the Internet by dragonwriter on Tuesday July 18, 2017 @09:11AM (#14796229)
> The correct form of possessive context for words ending in "s," is with a dangling, trailing apostrophe, and omission of the extra "s."

That is correct (or, at least, nearly universally agreed to) for possessives of plural nouns ending in “s”, style guides are mixed when it comes to other nouns ending in “s”, though the most common rule seems to be to use “’s”; while “windows” is plural, “Windows” as the name of the operating system is a proper noun that is not treated as plural.

Re:How Google Wants to Rewire the Internet by sbuttgereit on Monday July 17, 2017 @09:23PM (#14793699)
I disagree. Microsoft is correct; mostly if not entirely.

Q: It's a subsystem? What kind of subsystem?

A: It's a Windows subsystem?

Q: A subsystem for what?

A: It's the Windows subsystem for Linux.

As another commentator mentioned, there's probably a missing possessive ("'s"), but even if we take the proper name to be more of an adjective modifying/qualifying "subsystem", it's a Windows subsystem, it's purpose is running Linux... the Windows Subsystem for Linux.

Re:How Google Wants to Rewire the Internet by spacehunt on Monday July 17, 2017 @10:45PM (#14793951)
But we don't have the Windows Subsystem for Win32, the Windows Manager for I/O, etc., so while the naming is technically correct, it is inconsistent.
Re:How Google Wants to Rewire the Internet by dboreham on Tuesday July 18, 2017 @01:16AM (#14794369)
Sure there's a subsystem for win32.
Re:How Google Wants to Rewire the Internet by Dylan16807 on Tuesday July 18, 2017 @09:15AM (#14796254)
"Windows Subsystem ___ Linux" could be fine, but "for" is not the correct word to put in that blank.
Re:How Google Wants to Rewire the Internet by diegoperini on Tuesday July 18, 2017 @10:32AM (#14796788)
Why not "Linux Accompanied Windows"? Or "Still Windows but also some Linux"?
Re:How Google Wants to Rewire the Internet by Decade on Tuesday July 18, 2017 @11:44AM (#14797427)
But Linux is the one part that is not present. It’s GNU software running in a Windows subsystem. GNU/Windows?
Re:How Google Wants to Rewire the Internet by milcron on Tuesday July 18, 2017 @08:01PM (#14801068)
Not true in this instance. They implemented the Linux ABI, which means software can run on the linux subsystem without recompilation.

Cygwin allows running GNU software on Windows, but it doesn't implement the Linux ABI. Therefore Cygwin requires software recompilation.

The big advantage of WSL is that you can run native linux binaries.

Re:How Google Wants to Rewire the Internet by Decade on Saturday July 22, 2017 @09:14PM (#14830396)
#sigh# Clearly the joke was not funny if it had to be explained.

For decades, Richard Stallman has been calling it GNU/Linux, because the OS “aside from the kernel” was GNU, and Linux is the kernel. https://www.gnu.org/gnu/linux-and-gnu.en.html

Now, we have a Microsoft system that runs the Linux binaries, which are GNU according to Stallman, but not running them on the Linux kernel. You’re naming the entire system after the one component that is missing. By the same logic that normal Linux should be GNU/Linux, Linux containers on Windows should be GNU/Windows.

Re:How Google Wants to Rewire the Internet by Dylan16807 on Tuesday July 18, 2017 @06:27PM (#14800541)
The whole point is having the Linux ABI. There are half a dozen ways to run GNU on Windows.
Re:How Google Wants to Rewire the Internet by Swizec on Monday July 17, 2017 @07:04PM (#14793028)
It's a filter bubble issue. When I first started Ruby, it had been popular for 10+ years already. Many articles.

Despite that, it was still impossible to search for. Look for Ruby, get gemstones. Look for gem, get even more gemstones. Eventually Google figured it out and now it's almost impossible to search for gemstones. If I search for gem almost all search results are about Ruby things. Same when searching for Ruby.

Even "rails" now returns almost only Ruby on Rails stuff.

Re:How Google Wants to Rewire the Internet by komali2 on Monday July 17, 2017 @07:07PM (#14793047)
Have you tried searching when logged out of google? I'd imagine a rail worker searching lots of train stuff would generally get the right results when they searched on their account.

But yea, worth bearing in mind when naming stuff.

Re:How Google Wants to Rewire the Internet by true_religion on Tuesday July 18, 2017 @09:19AM (#14796280)
Perhaps, but under incognito I still get Ruby on rails if I search for "rails". I do get train info if I search for "rail".
Re:How Google Wants to Rewire the Internet by flavor8 on Tuesday July 18, 2017 @07:27AM (#14795703)
Try the same searches from an incognito window. It could just be that Google learned what Ruby you are searching for.
Re:How Google Wants to Rewire the Internet by vidarh on Tuesday July 18, 2017 @10:16AM (#14796658)
I just did:

1. Download Ruby

2. Ruby entry on wikipedia (about the gemstone)

All the rest on the first page are about the programming language in some way or the other (Rails, various books, various tutorial resources, Stackoverflow, trending on Github)

Re:How Google Wants to Rewire the Internet by userbinator on Monday July 17, 2017 @09:30PM (#14793719)
Indeed, it would've been far better if they called it WinBuntu Bash or some other similarly distinctive name.

...then again, WINE isn't exactly unique either.

Re:How Google Wants to Rewire the Internet by skrebbel on Tuesday July 18, 2017 @03:43AM (#14794917)
The internal name is lxss. I'm sad they didnt make that the default because it's very googlable.

That said WSL tends to work if you pair it with whatever your issue is.

IMO the most ridiculous name in this whole story is their github repo, Microsoft/BashOnWindows. I mean, bash has worked fine on Windows for decades, and it doesn't require an entire subsystem at all :-) WSL isn't half bad compared to that.

Re:How Google Wants to Rewire the Internet by AznHisoka on Monday July 17, 2017 @10:05PM (#14793836)
Also when did EmcaScript conveniently became ES?

when i see someone mention ES6, I think its elasticserch but its not

Re:How Google Wants to Rewire the Internet by adrianratnapala on Tuesday July 18, 2017 @08:18AM (#14795884)
To me it seems a return to the an older tradition, of names being names rather than descriptions (which inevitably fail to describe).

Using common words for names is also ancient and inevitable. In the modern age there is a practical argument against it -- as made up nonsense is more googlable. But people making up names don't really care about that in any visceral way.

Re:How Google Wants to Rewire the Internet by captainlego on Tuesday July 18, 2017 @09:36AM (#14796372)
While your original point is valid, I did get decent results with "Google Espresso", "Google Jupiter Network", and "Google Andromeda Network". Though, in today's world, your Google results may look vastly different from mine.
Re:How Google Wants to Rewire the Internet by TeMPOraL on Tuesday July 18, 2017 @06:08AM (#14795423)
I hate it too.

Especially if they take something with a somewhat awesome name. It waters the meaning down. My go-to example is Terraform, a glorified configuration manager that has absolutely nothing to do with the process of terraforming.

Re:How Google Wants to Rewire the Internet by windowsworkstoo on Monday July 17, 2017 @06:43PM (#14792877)
I cant really help because Im not great at explaining things, but for some fundamentals, you need to understand BGP and label switching (MPLS).

The cleverness here is that they effectively turned their routers in label switchers, with the label traffic is sent to determined by backend infra, not the router itself. They still have to run this over BGP of course, as thats how the internet works but it is an interesting approach for optimizing return traffic routes.

Edit: espresso is the name of the stack they use to make the label switch decision, its not a protocol or industry standard

Re:How Google Wants to Rewire the Internet by valas on Tuesday July 18, 2017 @10:12PM (#14801649)
Disclaimer: I worked on this technology.

I agree, article could be improved.

In a nutshell, Espresso system allows (logically) centralized, fine-grained control of how bits leave Google's network. Specifically, each server has a tailored (for that server) routing table that allows the server to select a specific port on a specific peering router for a given packet to exit to. The routing tables are updated very often and fast (e.g. to remove references to links that went down).

This makes it very easy to move bits around. You want to shift 42.2% of link X traffic to link Y? Just update some routing tables in end hosts. It also allows for different applications to the same destination to use different exit links (e.g. low latency - exit somewhere close, high bandwidth - exit where we have bandwidth). Bonus benefit: router can be simpler, it doesn't need to do any routing anymore, it just needs to follow instructions on each packet on which port to forward the packet to.

Does it make it more clear? Ask me anything.

Re:How Google Wants to Rewire the Internet by 3131s on Monday July 17, 2017 @11:22PM (#14794068)
I understand as much as is to be expected after looking at someone else's (Google's) huge software stack in an area that is not my specialization (networking). My only tip is to not actually worry about grasping everything at first and just start to build up lists of facts and associations (e.g. "Espresso is a networking stack to do routing over the public Internet", "Espresso pulls the routing intelligence outside of individual routers into a server pool"). With time and after studying more of the conceptual background, everything starts to make sense typically.

There are definitely some Googlisms or something being thrown around though. Can anyone tell me what a "hypercaler" is?

Re:How Google Wants to Rewire the Internet by rbobby on Tuesday July 18, 2017 @12:29AM (#14794266)
> "hypercaler"

Probably a typo for https://www.hyperscalers.com/

Re:How Google Wants to Rewire the Internet by erentz on Monday July 17, 2017 @11:25PM (#14794074)
It's extremely high level and vague presumably by intention. If you don't have a grounding in networking, BGP, traffic engineering (MPLS, SR, related concepts), you won't be able to make out much about it. If you do, you'll just infer that they're doing a form of "egress peer engineering". On top of that it sounds like they're potentially using whitebox switches at the edge and terminating BGP peering sessions on servers which are programming the forwarding state on these white boxes.
Re:How Google Wants to Rewire the Internet by FrozenVoid on Tuesday July 18, 2017 @12:26AM (#14794253)
I have little to nothing expirience in BGP and routing. It seems they cloudified the routing layer by making their machines part of some 'abstract router cloud' that can be reconfigured at will(centrally).