Friday 12:10 p.m.–12:40 p.m.
Hyperactive: HTTP/2 and Python
- Audience level:
The internet has spoken, HTTP is to get its first serious update in 15 years. In this talk we'll discuss what HTTP/2 is, why it's happening, and how it's going to affect you and everyone you love. We'll briefly talk about how you can get started with HTTP/2, and some interesting projects associated with it, including Hyper, the first Python HTTP/2 library.
HTTP is the most successful application-layer network protocol of all time. The vast majority of network traffic today is either transmitted using HTTP or by protocols associated with it. It is ubiquitous: so much so that the 'world wide web', the network of systems that speak HTTP, is for many people totally synonymous with the Internet. In part because of its success, HTTP is also quite old. The current revision, HTTP/1.1, was originally standardised in 1999. This was an era in computing quite unlike the current one. For perspective, Napster was originally released in 1999, and Google was only one year old. The web was totally unlike what we have now: pages were small and carried relatively little non-textual data, computers were relatively weak, and the mobile data plan was unheard of. HTTP/1.1 was designed for a world that no longer exists. We need an update. #### HTTP/2: A New Era Into this void stepped the Internet Engineering Task Force. In 2012, the HTTPBis Working Group of the IETF, tasked with ensuring that HTTP continues to grow, began discussing a new version of the protocol. Now, three years later, HTTP/2 is the end result. It's a protocol with a unique position in the history of computer networks. Its goal: to bring the web into the 21st century, without breaking anything that already worked. These two competing goals make HTTP/2 an intriguing entry in the catalogue of network protocols. The final standard was delivered early in 2015, and with the delivery of this standard will come a flurry of activity as web developers and consumers get used to the new tool driving the web. Work will begin on subsidiary standards like WSGI and WebSockets, and developers will start finding new ways to push the web ever-faster. It's an exciting time. #### This Talk This talk will cover HTTP/2 at a high level. We'll talk about how we got here. We'll talk about the problems of HTTP/1.1, and how HTTP/2 aims to address them. We'll talk about the ways in which HTTP/2 is imperfect, and how those imperfections came to be. And finally, we'll talk about how you can get started using HTTP/2 with your Python code, giving you a head start on this exciting new protocol.