2015-10-21 55 views
0

我试图了解服务器,但有些东西我只是不明白,它是: 如果您的服务器上有TCP,那么您为什么需要Apache HTTPD?为什么我需要Apache HTTPD?

我对这个还很新,但我知道TCP基本上是服务器和路由器用来处理使用http,ftp和ssh等不同协议的请求。

因此,如果TCP已经处理http,那么我需要Apache HTTPD呢?

我试着找到一个答案,但我所告诉的是,我需要Apache HTTPD,否则我只是不能连接到服务器使用http?

+0

TCP是第3层,HTTP是第4层。请参阅:https://technet.microsoft.com/en-us/library/cc786900(v=ws.10).aspx –

+0

TCP只是一个“传输”协议。还有UDP。 TCP和UDP只是来回传输数据。他们不知道他们正在运送什么。其他的东西也使用TCP,比如FTP。这取决于应用程序(在这种情况下是Apache)来处理* actual *数据。 –

回答

2

你在说什么,TCP和Apache,在传输模型的两个不同层上进行操作。此物品具有非常长,深入的它击穿:Wikipedia - Internet protocol suite

TL; DR - TCP是Apache使用与计算机制作它的请求进行通信的传输协议。将TCP视为Apache所说的语言。

的相关部分到您的问题是抽象层:

  • 中的应用层是在其内的应用程序创建的用户数据,并将该数据传送到另一个或其他应用程序相同的宿主范围。应用程序或进程利用底层较低层提供的服务,特别是传输层,为其他进程提供可靠或不可靠的管道。通信伙伴的特点是应用程序架构,如客户端 - 服务器模型和对等网络。这是SMTP,FTP,SSH,HTTP等所有高层协议都可以运行的层。流程通过基本上代表服务的端口来解决。
  • 传输层在相同或不同主机上以及由路由器分隔的本地网络或远程网络上执行主机到主机的通信。它为应用程序的通信需求提供了一个通道。 UDP是基本的传输层协议,提供了不可靠的数据报服务。传输控制协议提供流量控制,连接建立和数据的可靠传输。

这里有一个图形表示:

在这个图形,Apache是​​一个应用程序,而TCP是运输。