The asked explanation for what it all means.
Corrupt header: It didn't sent enough bytes in time. When enough bytes are in, it will still be seen as a real header. Should normally happen quite rarely. (as it means it didn't sent at least 5 bytes in one go, that's not a good connection)
invalid literal for int() with base 10: 'GET /': (is the start of a HTTP GET request from a browser.) Server kicks client for breaking protocol.
invalid literal for int() with base 10: 'HTTP/': is a HTTP response from a server. Breaking protocol, client restarts.
Full string is : HTTP/1.1 400 Bad Request, which is a correct response from http server from the junk that's sent at by the client, but it's not supposed to end at a http server.
In case it wasn't clear, it's using TCP, which is also used by HTTP. (that's why it can receive data from a browser and do a initial connect to websites.)