网页访问的协议分析
在协议模型中,应用层是用户与计算机进行实际通信的地方,只有当马上就要访问网络时,才会实际上用到这一层。例如,我们可以从系统中卸载掉任何联网组件,如、网卡()等,仍可以使用来浏览本地的文档。可如果我们试图浏览必须使用的文档,或者用下载一个文件,事情就没那么容易了。此时,将尝试访问应用层来响应这一类请求。因此,应用层也可被看作是实际应用程序和下一层(模型中为表示层,模型中为传输层)之间的接口,它通过某种方式把应用程序的有关信息送到协议栈的下面各层。
应用层协议则是实现用户和系统之间接口的工具,用户可通过这些协议方便地访问网络资源,实现信息共享,则是其中一种。
(超文本传输协议)是客户端浏览器或其他程序与服务器之间的应用层通信协议。在上的服务器上存放的都是超文本信息,客户机需要通过协议传输所要访问的超文本信息。包含命令和传输信息,不仅可用于访问,也可以用于其他因特网内联网应用系统之间的通信,从而实现各类应用资源超媒体访问的集成。
是基于请求响应方式的。它的运作方式很简单:一个客户机与服务器建立连接后,发送一个请求给服务器,服务器接到请求后,给予相应的响应报文。其中,“客户”与“服务器”是一个相对的概念,只存在于一个特定的连接期间,即在某个连接中的客户在另一个连接中可能作为服务器。因此,当网络中的任一台拥有可被访问的页面的计算机被其它计算机访问时,它便是服务器,而当它访问其它浏览非本地的文档时,它便是客户端。因此,我们可以在局域网中搭建简单的环境来观察分析访问的工作流程。
最简单的情况可能是在用户和服务器之间通过一个单独的连接来完成,如图:
图
根据图连接好以及配好相应后,测试网络互通。而后,在上建立服务器。首先在控制面板\添加删除程序\添加删除组件中查看信息服务()是否装上,若没有则安装,若安装好,则可以进入管理工具\服务管理器,在默认站点下建立自己的站点及目录。而后,在浏览器地址栏中键入:便可浏览位于端默认站点目录下网页。
在此过程中,我们通过所抓的数据包如下:
、数据链路层:
( , )表示第个帧,传输个字节,捕获个字节,包中的
:
:
:
也指明该帧是第帧,传输字节,捕获字节。
[ : ]可看出所封装的层结构:应用层用的是协议,传输层用的是协议,网络层用的是协议。
[ : ]
[ : ] 从这里我们可以知道,对应的端口号为。
在和中,都采用了端口号来识别应用程序。其中,低于的端口号被称为众所周知的端口号,它们由所定义,大于等于的端口号被上层用来建立与其他主机的会话,并且在数据段中被用来作为源方和目的方的地址,具体将在下面传输层中分析。
、以太网帧:
从以太网帧中,我们可以看到,目的的地址为:: : : : : ,源地址为:: : : : : 。
: 表示是单播帧。
:()表示帧中封装了分组,若为表示帧中封装了分组,这两种帧的分组会被取出,并交付给相应的子程序。
、包:
, : (), : () 可了解目地和源,此包是端向发送的请求报文,所以,目地是,源是。
: 表示版本。的版本号为。
: 首部长为字节。它是以为单位进行计数的,该字段是可变的,当没有选项时,首部长为,对应该字段值为;当有选项时,该字段最大值为,对应的首部长度。
: ( : ; : ) 表示服务类型。不同的应用有不同的服务质量要求,该字段则