1.静态Web界面
任何通信或事务的主角是Web浏览器(客户机)和Web服务器(服务器)。浏览器与服务器之间用超文本传输协议(Hyper Text Transfer Protocol,HTTP)进行通信,采用请求/响应形式,即浏览器发出HTTP请求,服务器发出HTTP响应,然后浏览器与服务器之间的通信结束,这类Web页面称为静态Web页面。应用程序开发员/设计员生成Web页面,用超文本置标语言(Hyper Text Mark Up Language,HTML)编写,存放在Web服务器中。用户请求页面时,Web服务器返回这个页面,而不进行任何处理,只是在硬盘上找到这个页面,加上HTTP头,并返回HTTP相应。
2.动态Web页面
静态Web页面不一定总是有用的,它只适合不经常改变的内容。如,组织主页中的公司信息、国家主页等。但是对于经常改变的信息,静态Web页面就不适用了,如股票信息、天气情况等。动态Web页面提供了解决这类问题的办法。动态Web页面是动态的,其内容可以根据几个参数不断改变。动态Web不仅使用HTML,还要使用服务器方编程。
用户请求动态Web页面时,Web服务器不能像静态Web页面一样直接返回HTML页面,而要调用硬盘中的一个程序,程序可能访问数据库,进行事务处理,等等。无论如何,程序会输出HTML,Web服务器将其用于构造HTTP响应。Web服务器将构造的HTTP响应返回Web浏览器,如下图所示:
动态Web页面与静态Web页面的主要差别在于涉及服务器方应用程序,但是,静态和动态Web页面都用HTTP协议向Web浏览器返回HTML内容。
3.活动Web页面页面
随机Java编程语言的出现,活动Web页面(active Web page)变得非常普及。活动Web页面的思想实际上很简单,客户机发出活动Web页面的HTTP请求时,Web服务器返回的HTTP响应包含和平常一样的HTML页面。此外,HTML页面中还有一个小程序,在客户计算机上的Web浏览器中执行,如下图所示:
通常,和HTML页面一起发给Web浏览器的小程序为Java小程序,是用Java编程语言写成客户端程序,因此Web浏览器中要有Java解释器,解释小程序代码和客户端执行。
4.协议与TCP/IP
由于Internet是由不同的硬件与软件特性的计算机和网络构成的,因此要有一个通用“翻译”,帮助所有这些计算机之间相互通信。这就是数据通信中协议软件的作用。,包括Internet通信中。协议软件定义抽象的通信层次模型,独立于计算机和网络的物理特性。只要所有参与的计算机和网络遵循协议软件指定的标准,就可以相互通信,而不必担心计算机和网络固有的差别。
传输控制协议/网际协议(Transmission Control Protocol/Internet Protocol,TCP/IP)软件是个转换器,使Internet上可以进行这种工作。TCP/IP是许多协议的组合,使Internet上的计算机之间可以相互通信。TCP/IP协议组包括五层,如下表所示:
层号 | 层名 |
---|---|
5(最高层) | 应用层(Application) |
4 | 传输层(Transport) |
3 | 网际层(Internet) |
2 | 数据链层(Data link) |
1(最低层) | 物理层(Physical) |
每一层进行特定的预定任务。例如,所有应用程序(如HTTP、电子邮件、文件传输,等等)都属于应用层。因此Web浏览器用HTTP协议与Web服务器通信时,应用层起作用。客户端计算机的应用层与同一计算机的传输层交互,传输层又与网际层交互,网际层与数据链路层交互,最后数据链路层与物理层交互。这时位通过传输媒介以电压、电流脉冲形式传输到另一端。在服务器方,物理层收到电压或电流脉冲形式的位之后,进行相反的过程(从物理层到应用层),如下图所示,这里假设X是浏览器,Y是Web服务器。
注意中间节点(浏览器与服务器之间的计算机)不进行应用层和传输层交互,因为它们只是把信息从源X转发到目的地Y。
5.分层组织
源节点运行的应用层软件生成数据,要传输到目标节点上运行的应用层软件, 在源节点上将其交给传输层。TCP层将数据分解为小分组,增加一个头。从此以后,每个剩余TCP/IP层对分组加一个头,将其从传输层移到数据链路层。到达物理层时,数据通过同轴电缆之类通信媒介以电脉冲形式传输。
这样应用层(第五层)把整个数据交给传输层,称为L5 data。传输层收到数据并处理数据后,在原数据中增加一个头,并将其发送给下一层(即网际层)。因此,从传输层到网际层发送的数据为L5 data+H4,其中H4是第四层(传输层)增加的头。现在,在网际层中,L5 data+H4是输入数据,称为L4 data。网际层将数据发送到下一层(数据链路层)时,在原数据(L4 data)中加上自己的头H3,得到L4 data+H3,等等。最后原数据(L5)和所有头一起在物理媒介上传输,下图显示了使用TCP/IP层的数据交换过程: