Google Unveils Quic Network Protocol, Dart Developer Tool

By Todd R. Weiss |
Posted 2013-07-05

Google Unveils Quic Network Protocol, Dart Developer Tool

Google is experimenting with a new network protocol that could help speed up network connections in the future, while its new Dart Software Development Kit and Editor is available now in beta to help developers create their code more quickly.

Both the experimental QUIC network protocol and the Dart SDK and Editor were unveiled in recent posts on the Google Chromium Blog.

"QUIC (Quick UDP Internet Connections) is an early-stage network protocol we are experimenting with that runs a stream multiplexing protocol over a new flavor of Transport Layer Security (TLS) on top of UDP instead of TCP," wrote Google's Jim Roskind, in a June 27 post. "At Google, we're always working to make the Web faster.

The SPDY protocol, which is now the foundation of the upcoming HTTP 2.0 protocol, is a significant step forward. However, despite increasing bandwidth, round trip time (RTT)—which is ultimately bounded by the speed of light—is not decreasing, and will remain high on mobile networks for the foreseeable future. To continue improving network performance, we need to decrease the number of round trips, something that is difficult with protocols that currently rely on the Transmission Control Protocol (TCP).

That's where the QUIC protocol comes in, wrote Roskind. "QUIC combines a carefully selected collection of techniques to reduce the number of round trips we need as we surf the Internet."

Among the benefits of the experimental QUIC protocol, which is described more thoroughly in its design document, are high security, fast connectivity, packet pacing to reduce packet loss, packet error correction to reduce retransmission latency and User Datagram Protocol (UDP) transport to avoid TCP head-of-line blocking, wrote Roskind.

"We've been working on both a QUIC client implementation and prototype server implementation in the open-source Chromium repository for the past few months," he wrote. "Early tests of UDP connectivity have been promising, but we have learned from past experience that real-world network conditions often differ considerably. Our next step is to test the pros and cons of the QUIC design in the real world by experimenting with using QUIC for a small percentage of Chrome dev and canary channel traffic to some Google servers, just as we did with SPDY."

The experiment, if it produces clear performance improvements, could potentially help bring QUIC integration into network standards in the future, he wrote.

The new Dart SDK and Editor is in its first beta release, according to a June 19 post by Dan Rubel of the Dart Editor team. The release contains performance and productivity improvements aimed at helping developers automate their code creation, produce smaller JavaScript code and deploy Dart Web apps.

"The Editor's analysis engine, responsible for reporting warnings and errors, is completely rewritten, and is 20 percent faster at parsing and analyzing," wrote Rubel. "Now, there's no need to run all the unit tests just to discover a typo. The Dart Editor watches your back as you type."

The Dart Editor also includes other new features such as "Rename Library" refactoring, "Convert Method to Getter" and "Convert Getter to Method" refactorings, "Import Library" quick fixes and "Create Class" and "Create part" quick fixes, he wrote.

Google Unveils Quic Network Protocol, Dart Developer Tool

Code completion has also improved, and compiling Dart to JavaScript now results in smaller code, added Rubel in the post. Also improved are Dart VM performance as well as easier deployment of Dart Web apps.

The release notes for the new editor are now available, and the latest version of the Dart Editor can be downloaded at dartlang.org.

Development tools are always being created by Google. In June, Google unveiled a new Cloud Playground environment where developers can quickly try out ideas on a whim, without having to commit to setting up a local development environment that's safe for testing coding experiments outside the production infrastructure. The new Cloud Playground is presently limited to supporting Python 2.7 App Engine apps.

Earlier in June, Google opened its Google Maps Engine API to developers so they can build consumer and business applications that incorporate the features and flexibility of Google Maps. By using the Maps API, developers can now use Google's cloud infrastructure to add their data on top of a Google Map and share that custom mash-up with consumers, employees or other users. The maps can then be shared internally by companies or organizations or be published on the Web.

Google also recently created a new Mobile Backend Starter that lets developers focus on building and selling their apps by automating the back end of apps development. The Mobile Backend Starter works with Google App Engine. The Mobile Backend Starter was first announced at the Google I/O 2013 Developers Conference, where it was the topic of the "From Nothing to Nirvana in Minutes: Cloud Backend for Your Android Application" presentation.