新手入门:了解网络应用与网络协议2

新手入门:了解网络应用与网络协议2

Posted on 2007-04-26 10:53 szw104 阅读(2) 评论(0)   编辑  收藏 引用 网摘 所属分类: Web原理
应用层协议

  把网络应用和应用层协议区分开来相当重要。应用层协议仅仅是网络应用的一部分,让我们看几个例子。Web是一个允许用户从Web服务器按要求取得“文档”的网络应用,web应用由许多部件构成,包括—个文档格式的标准(即超文本标记语言HTML)、Web浏览器软件、Web服务器软件(例如Apache、IIS服务器)、一个应用层协议。Web的应用层协议是超文本传送协议(HTTP),它定义如何在浏览器和web服务器之间传递消息。因此HTTP仅仅是Web应用的一部分。另一个例于是电子邮件应用。电子邮件应用同样由许多部件构成,包括安置用户信箱的邮件服务器、让用户阅读和创建电子邮件消息的邮件阅读器、一个定义电子邮件消息结构的标推、一组定义如何在服务器之间以及服务器和阅读器之间传递电子邮件消息并解释其特定部分(例如信头)的应用层协议。电于邮件应用的首要应用层协议是简单邮件传输协议(SMTP)。因此SMTP也仅仅是电子邮件应用的一部分。

  我们已经指出,应用层协议定义运行在不同端系统上的应用程序进程如何彼此传递消息。具体地说,一个应用层协议定义:

  ●所传递消息的类型,例如请求消息和响应消息。

  ●各种消息类型的语法,也就是消息中的各个字段以及它们如何定界。

  ●各个字段的语义,也就是各个字段中的信息的含义。

  ●确定一个进程何时以及如何发出消息或响应所收到消息的规则。

  有些应用层协议是在RFC文档中详细说明的,也就是说它们处于可免费获取的公众域。例如,HTTP就可以作为RFC获取。浏览器软件开发者只要遵循该RFC中定义的规则,其浏览器就可以从同样遵循这些规则的任何web服务器取得Web页面。然而,其他许多应用层协议却是专属的,有意不放在公众域中。例如,许多现有的因特网电话产品使用专属的应用层协议。

  客户和服务器

  一个网络应用协议通常拥有客户端(client side)和服务器端(server side)这两个对等的“端”或实体,它们分别对应运行客户程序的客户进程(简称客户)和运行服务器程序的服务器进程(简称服务器),如图2所示。处于一个端系统中的客户端与处于另一个端系统中的服务器端彼此通信。例如,web浏览器实现的是HTTP客户端,web服务器实现的是HTTP服务器端。在电子邮件应用中,发送邮件消息的邮件服务器扮演SMIP的客户端角色,接收邮件消息的邮件服务器扮演SMTP的服务器端角色。


图2:客户/服务器交互

  对于许多应用来说,它们的客户端和服务器端可以同时实现在单台主机上。就以主机A和主机B之间的一个Telnet会话为例。如果这个Telnet会话是由主机A发起的(即主机A上有一个用户登录到了主机B),那么主机A运行的是该应用的客户端,主机B运行的是该应用的服务器端。相反,如果这个Telnet会话是由主机B发起的,那么主机B运行的是该应用的客户端。用于在两台主机之间传送文件的FTP提供了另外一个例子。两台主机之间一旦启动一个FTP会话,其中任何一台主机就可以在该会话结束之前向另一台主机传达文件。尽管如此,我们还是按照几乎所有网络应用的惯常情况,把发起会话的主机标为客户。另外,单台主机实际上可能同时作为某个给定应用的客户主机和服务器主机。例如,邮件服务器主机同时运行着SMlP客户端(用于发送邮件)和服务器端(用于接收邮件)。

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值