计算机网络(三):应用层之客户-服务器模式及万维网
一、客户-服务器模式
- 应用程序接口
客户-服务器模式下,客户进程和服务进程的通信是通过应用程序接口来进行的。常见的应用程序接口有:套接字接口、传输层接口以及STREAM。
套接字接口的位置示意图如下。
- 套接字
套接字是一种抽象,是提供应用程序创建和使用的数据结构。就应用层而言,客户进程和服务进程间的通信是两个套接字间的通信。客户认为套接字是接收请求和发送响应的实体;服务器认为套接字是发出请求并且需要获得响应的实体。
对等通信中套接字的使用。
- 套接字地址
客户和服务器的交互是双向通信。在双向通信中,需要一对通信地址:本地地址(发送端)和远程地址(接收端)。
因特网上一台计算机由IP地址唯一确定,一个应用程序由一个端口号唯一确定,因此套接字地址应该是一个IP地址和一个端口号的组合,如图所示。
二、万维网(WWW或Web)
- 万维网
Web的流行和成长与:分布式的和链接的这两个术语有关。分布式允许Web增长。链接使得一个网页与另一个存储在世界某个地方的主机上的网页相互引用。 - 结构
如今WWW是一个分布式客户-服务器服务。使用浏览器的用户可以访问一个正在服务器上运行的服务,然而服务是分布在很多称为站点的地点上。每个站点有一个或多个文档(网页),每个网页可以包含一些到其他网页的链接,那些被链接的网页可以在同一站点也可以在其他站点。
- 网络客户(浏览器)
很多供应商提供可以解释和显示网页的商业浏览器,其都具有几乎相同的结构。通常包含三部分:控制程序、客户协议和解释程序。
- 网络服务器
网页是存储在服务器上的。每当请求到达时,相应的文档就被发送到客户。为了提高效率,服务器通常将被请求的文件存储在内存缓存中。 - 超文本传输协议(HTTP)
参照笔记:计算机网络(四):应用层之HTTP协议
参考资料:《计算机网络教程:自顶向下方法》