应用层协议和涉及的网络应用

应用层协议

        我们刚刚讨论了通过把报文发送进套接字使网络进程间实现相互通信。但是如何构造这些报文?在这些报文中的各个字段的含义是什么?进程何时发送这些报文?这些问题将我们带进应用层协议的范围。应用层协议(application-layer protocol)定义了运行在不同端系统上的应用程序进程如何相互传递报文。特别是应用层协议定义了:

  1. 交换的报文类型,例如请求报文和响应报文。
  2. 各种报文类型的语法,如报文中的各个字段及这些字段是如何描述的
  3. 字段的语义,即这些字段中包含的信息的含义。
  4. 一个进程何时以及如何发送报文,对报文进行响应的规则。

        有些应用层协议是由RFC文档定义的,因此它们位于公共域中。例如,Web的应用层协议HTTP(超文本传输协议)就作为一个RFC可供使用。如果浏览器开发者遵从HTTP RFC规则,所开发出的浏览器就能访问任何遵从该文档标准的Web服务器并获取相应Web页面。还有很多别的应用层协议是专用的,有意不为公共域使用。例如,Skype 使用了专用的应用层协议。

        区分网络应用和应用层协议是很重要的。应用层协议只是网络应用的一部分(尽管从我们的角度看,它是应用非常重要的一部分)。我们来看一些例子。Web是一种客户、服务器应用,它允许客户按照需求从Web服务器获得文档。该Web应用有很多组成部分包括文档格式的标准(即HTML)、Web浏览器(如Firefox和 Google)Web服务器(如Apache、Microsoft 服务器程序),以及一个应用层协议。Web的应用层协议是HTTP,它定义了在浏览器和Web服务器之间传输的报文格式和序列。因此,HTTP只是Web应用的一个部分(尽管是重要部分)。举另外一个例子,因特网电子邮件应用也有很多组成部分,包括能容纳用户邮箱的邮件服务器、允许用户读取和生成邮件的邮件客户程序(如Microsoft Outlook)、定义电子邮件报文结构的标准、定义报文如何在服务器之间以及如何在服务器与邮件客户程序之间传递的应用层协议、定义如何对报文首部的内容进行解释的应用层协议。用于电子邮件的主要应用层协议就是SMTP(简单邮件传输协议)。因此,电子邮件的首要应用层协议SMTP也只是电子邮件应用的一个部分(尽管是重要部分)。

涉及的网络应用

        我们详细讨论5种重要的应用:Web、文件传输、电子邮件、目录服务和P2P。我们首先讨论Web应用,不仅因为它是极为流行的应用,而且因为它的应用层协议HTTP相对比较简单并且易于理解。讨论完Web,我们简要地讨论FTP,因为它与HTTP形成了很好的对照。我们接下来讨论电子邮件应用,这是因特网上最早的招人喜爱的应用程序。说电子邮件比Web更复杂,是因为它使用了多个而不是一个应用层协议。在电子邮件之后,我们讨论DNS它为因特网提供目录服务。大多数用户不直接与DNS打交道,而是通过其他的应用(包括Web、文件传输和电子邮件)间接使用它。DNS很好地说明了一种核心的网络功能(网络名字到网络地址的转换)是怎样在因特网的应用层实现的。几种P2P应用,重点关注文件共享应用、分布式查找服务。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值