我正在编写文件传输服务器,我将使用TLS来保护传输。如果我的服务器有一个主机名并使用https,那么我可以使用主机名验证,但如果我没有主机名并使用套接字直接连接ip地址怎么办?
答案 0 :(得分:0)
我没有说过你计划使用哪些框架进一步详细说明它将如何运作,但是以一种简短的谈话方式:
1)RFC 2616描述了http协议是如何工作的,这是巨大的,但是作为其中的一部分,应该在头部分设置源ip,可以使一些反转dns得到主机名,如果没有设置
在钩子下,http由非持久性tcp套接字连接传递,该连接在客户端和服务器之间传输数据帧
2)TCP套接字,现在有一些后台,当你从客户端到服务器打开一个tcp套接字会话时,你只会得到使用的源/目的地址和tcp端口,是的,这是运行中的TCP / IP协议,因此,从这一点开始,您将需要实现一种应用程序协议,因为套接字位于TCP/IP model上的传输层和https:technet.microsoft.com/en-gb/library/cc958821.aspx
PS:抱歉链接断了,但是堆栈溢出不允许我发布2个以上的链接,但是我建议你阅读有关SIO / OSI协议模型的内容,以便了解魔术的更多内容。让互联网正常工作,但你有了意识形态所以,我建议你在nginx服务器上使用http及其漂亮的TLS内容,以后将更容易管理
但是如果你只是想知道这些东西是如何运作的,那么就去创建你自己的应用层,比如http,带有标题部分,数据部分,文件传输控制,按块发送等......