Thanks for responding, Adi!
I don't want each packet to go it's own way from Twisted. They all go to the same place from each instance of the server/protocol. They go to my custom protocol listening on another local port.
It's just that I'm serving up several different ssl apps on the same nginx server, and nginx uses the hostname to route the packets. So in this case, traffic coming in on
http.example.com:443 might be routed to an https app listening on a socket, and traffic coming in to
myprotocol.example.com:443 should be routed to my own protocol listening on port 9999. So if nginx doesn't get the hostname, it doesn't know to route the packet to my custom protocol instead of the web server. Does that make sense?
It seems that the transport is resolving the hostname to an ip address and then sending the traffic to the generic ip which is not enough info for nginx to route the packet correctly.