首页 > 代码库 > 第二章 应用层

第二章 应用层

2.1 应用层协议原理

  2.1.1 网络应用程序体系结构

    1.应用程序体系结构(application architecture)由应用程序研发者设计,规定了如何在各种端系统上组织该应用程序。如C/S   P2P  B/S等

    2.客户-服务器体系结构(client-server architecture):分为客户服务器端两套程序

    3.P2P体系结构(P2P architecture):对等通信

  2.1.2 进程通信

    在两个不同端系统上的进程,通过跨越计算机网络交换报文而相互通信。

    1.客户和服务器进程

    2.进程与计算机网络之间的接口

      套接字是同一台主机内应用程序之间的接口。由于该套接字是建立网络应用程序的可编程接口,因此套接字也称为应用程序和网络之间的应用程序编程接口。

    3.进程寻址:通过主机、端口号完成

  2.1.3 可供应用程序使用的运输服务

    1.可靠数据传输

    2.吞吐量

    3.定时

    4.安全性

  2.1.4 因特网提供的运输服务

    1.TCP服务:提供两种服务:面向连接的服务、可靠数据传送服务。还具有拥塞控制机制,这种服务不一定能为通信进程带来好处,但能为因特网带来整体好处。(->SSL)

    2.UDP服务:提供一种不可靠数据传送服务,报文可能是乱序。没有包括拥塞控制机制,UDP的发送端可以用它选定的任何速率向其下层注入数据。

    3.因特网运输协议所不提供的服务:今天的因特网通常能够为时间敏感应用提供满意的服务,但它不能提供任何定时或宽带保证。

  2.1.5 应用层协议:定义了运行在不同端系统上的应用程序进程如何相互传递报文

2.2 Web和HTTP

   2.2.1 HTTP概况

    1.Web的应用层协议是超文本传输协议(HyperText Transfer Protocol, HTTP),它是web的核心。HTTP由两个程序实现,一个客户程序,一个服务器程序。客户程序和

      服务器程序运行在不同的端系统中,通过交换HTTP报文进行回话。HTTP定义了这些报文的结构以及客户和服务器进行报文交换的方式。

    2.HTTP定义了web客户向web服务器请求web页面的方式,以及服务器向客户传送web页面的方式。

    3.HTTP使用TCP作为支撑运输协议,HTTP客户端首先发起TCP连接,该浏览器通过服务器进程就可以通过套接字接口访问TCP。

    4.HTTP是一个无状态协议,不会存储客户的状态信息

  2.2.2 非持续连接和持续连接

    1.采用非持续连接的HTTP

      RTT:Round-Trip Time 往返时间

第二章 应用层