万维网(WWW)简介

[计算机网络谢希仁]
1.万维网是日内瓦的欧洲原子核研究所委员会CERN的Tim Berners-Lee最初于1989年3月提出的,动机是为了使分布在好几个国家的物理学家们更方便的协同工作。万维网是一个大规模的、联机式的信息储藏所,英文简称Web。万维网是一个分布式超媒体系统,它是超文本系统的扩充,一个超文本由多个信息源链接成,而这些信息源的数目实际上是不受限制的,利用一个链接可使用户找到另一个文档,这些文档可以位于世界上任何一个接在因特网上的超文本系统中。超文本是万维网的基础。
2.超文本文档:仅包含文本信息
超媒体文档:除文本信息外,还包含其他信息,如图像、图形、声音、动画、视频图像等
3.非分布式超媒体:各种信息驻留在单个计算机磁盘中。各种文档都可从本地获得,这些文档之间的链接可进行一致性简称
分布式超媒体:大量信息分布于因特网上,每台计算机上的文档都独立进行管理,文档之间的链接经常会不一致。
4.万维网文档所驻留的计算机运行服务器程序,此计算机称为万维网服务器。万维网使用URL(Uniform Resource Locator)来标示万维网上的文档,每个文档具有唯一的URL。为了使万维网客户程序和万维网服务器程序之间的交互遵守严格的协议以实现各种超链的链接,需要HTTP(HyperText Transfer Protocol),该协议是应用层协议,使用TCP连接就行可靠传送。HTML(HyperText Markup Language)使得万维网页面设计者可以很方便地用一个超链从本页面的某处链接到因特网上任何一个万维网页面,并能够在自己的计算机屏幕上显示。为了在万维网上方便查找信息,可以使用各种搜索工具。
5.URL:定位因特网上任何可以被访问的对象,包括文件目录、文件、文档、图像、声音等,一般形式为:<URL的访问方式>://<主机>:<端口>/<路径>,<主机>是必须得,后面2项有时可省略
a.<URL访问方式>最常用的有三种:
a1.ftp:如ftp://rtfm.mit.edu,ftp默认端口是 21
a2.http:一般形式为:http://<主机>:<端口>/<路径>,http默认端口是80,通常可省略。如果再省略文件的<路径>,则URL即为因特网上的某个主页。如http://www.tsinghua.edu.cn/chn/yxsz/index.htm。HTTP规定在HTTP客户和HTTP服务器之间的每次交互都由一个ASCII码串构成的请求和一个类MIME的响应构成。
a3.news
6.万维网高速缓存:一种网络实体,又成为代理服务器,将最近的一些请求和响应暂存于本地磁盘中,当与暂存的请求相同时,万维网高速缓存将暂存的响应发送出去,不需要按URL再去因特网访问该资源。万维网高速缓存可在客户或服务器端工作,也可在中间系统上工作。
7.HTML:一种制作万维网页面的标准语言,消除了不同计算机之间信息交流的障碍。HTML文档可用任何文本编辑器创建的ASCII码文件。仅当HTML文档以.html(.htm)为后缀时,浏览器才对这样的HTML文档的各种标签进行解释。如果HTML文档改换以.txt为后缀,HTML解释程序就不对标签进行解释,而浏览器只能看见原来的文本文件。
8.HTML的格式和标签
HTML文档中的标签举例:
<HTML>  {HTML文档开始}    
<HEAD>  {首部开始}
 <TITLE>一个HTML的例子</TITLE>  {“一个HTML的例子”标题}
</HEAD> {首部结束}
<BODY>  {主体开始}
 <H1>HTML容易掌握</H1>  {“HTML容易掌握”是1级题头}
 <P>这是第一个段落,虽然很短, {<P>和</P>之间的文字是个段落}
 但它仍是一个段落</P>  {实际上,标签</P>可省略不用}
 <P>这事第二个段落</P>  {<P>和</P>之间的文字是个段落}
</BODY>   {主体结束}
</HTML>   {HTML文档结束}
(1).HTML定义了许多用于排版的命令,即“标签”
(2).HTML文档由2个元素组成:首部(hend)和主体(body)
(3).主体部分可由若干更小元素组成,如段落(paragraph),表格(table),列表(list)等
(4).HTMl用<标签>和</标签>来标识一个元素,标签名不区分大小写,通常为大写,若某一浏览器不支持某个标签,浏览器将忽略此标签,但标签之间文本仍会被显示出来,浏览器显示文本时,会在合适地方自动换行,与HTML文档的段落的换行没有关系。
(5).题头(heading)是在主体中的标题,共分6级,1级最高,级别越高题头所有字越大。<Hn>中n为题头级别
(6).标签名后面可加上属性,如ALIGN=CENTER。默认是ALIGEN=LEFT
(7).HTML中三个特殊字符:<(标签开始),>(标签结束),&(转义序列),文档需要这些字符时,可分别表示为:"&lt;","&gt;","&amp;"。转义序列中的字符区分大小写。
9.常用的HTML标签:
<HTML>...</HTML>:声明用HTML写成的万维网文档
<HEAD>...</HEAD>:定义页面首部
<TITLE>...</TITLE>:定义页面标题,此标题会在浏览器显示窗口中显示
<BODY>...</BODY>:定义页面主体
<Hn>...</Hn>:定义n级题头
<B>...</B>:设置为黑体
<I>...</I>:设置为斜体
<UL>...</UL>:设子...为无序列表,列表中每一个项目前面出现一个圆点
<OL>...</OL>:设置为...为编号列表
<MENU>...</MENU>:设置...为菜单
<LI>:开始一个列表项目,</LI>可不用
<BR>: 强制换行
<P>:一个段落开始,与上个段落空一行或缩进几个字符。</P>可不用
<HR>:强制换行,同时画出一条水平线
<PRE>...</PRE>:设置...为已排版的文本,浏览器显示时不再进行排版
<IMG SRC="...">:插入一张图像,其文件名为...,一个页面本身带有的图像称为内含图形,大多数浏览器支持GIF和JPEG文件
<A HREF="...">X</A>定义一个超链。超链的起点为 X,终点为"...",A表示懋(Anchor),REF表示reference。每个超链有一个起点和终点。如某页面文档某行中提到清华大学,需要超链以了解详细信息,如<A HREF="http://www.tsinghua.endu.cn">清华大学</A>,如果是一幅图片,则:<A HREF="http://www.tsinghua.endu.cn"><IMG SRC="tsinghua.gif"></A>
10.链接方式:
(1).远程链接:超链终点在其他网点上的页面
(2).本地链接:超链指向自己的计算机中的某个文件,在HREF=的后面不需要写很长的完整的URL。
(3).本地文件链接:链接终点时本地文件中指明的特定地方。这种链接终点称为命名锚(named anchor)。命名锚定义语法为:<A NAME="...">Y</A>,起着Y是被指明为该链接终点的一个或多个字符,而"..."写入给命名锚取的名字。如链接终点在abc前面,命名锚取为Destination,<A NAME="Destination">abc</A>,链接到一个命名锚的语法是<A HREF="#...">X</A>,其中#后面...即为命名锚的名字,X是链接起点,如<A HREF="#Destination">X</A>。命名锚也可插入到本地的其他HTML文件中(但在其他网点中的别人的文件中插入自己设置的命名锚是不允许的),这时应在链接定义的#号前加上该文件的名字。
11.浏览器结构:
  
                                                   ----------------------->HTML解释程序 
                                                                                      ......                       ------>驱动程序----->输出至显示器
                                                   ------------------------>(java Applet解释程序)
从鼠标和键盘输入-------------->  控  ------------------------>可选解释程序
                                              制
                                              程    ---------------------->缓存                
                                              序    ---------------------->HTTP客户          ------>网络接口 ------->与远地服务器通信
                                                                                    ......
                                                     ---------------------->可选客户
(1).一个浏览器有一组客户、一组解释程序、以及管理这些客户和解释程序的控制程序,控制程序是核心部件,解释鼠标点击和键盘的输入,调用有关的组件执行用户指定的操作。
(2).HTML解释程序必不可少,其他解释程序为可选,HTML解释程序的输入为HTML文档,将HTML规格转换为适合用户显示硬件的命令来处理版面的细节,解释程序对页面中所有的可选项(即所有超链的起点)都保存有其位置信息,当用户的鼠标点击某个选项时,浏览器工具当前郭彪位置和存储的位置信息来决定哪个选项被用户选中。
(3).浏览器中还设有一个缓存,将取回的每个页面副本放入本地磁盘的缓存中,网络连接较慢的用户,缓存显得较为重要,但缓存也带来较大问题,如占用磁盘空间,只有在用户再次查看缓存中页面时才有帮助,实际上,用户浏览时,有价值的都会保存,缓存中大部分是不再查看的,降低了浏览器的效率和磁盘利用率。
12.静态文档:文档创作完毕后就存放在万维网服务器中,用户浏览过程中内容不会改变,不够灵活,信息变化是需手动更改
动态文档:文档的内容是在浏览器访问万维网服务器时才由应用程序动态创建。当浏览器请求到达时,万维网服务器要运行另一个应用程序,并将控制转移到此应用程序,然后,该应用程序对浏览器发来的数据进行处理,输出HTTP格式的文档,万维网服务器将应用程序的输出作为对浏览器的响应,动态文档的开发不是直接编写文档本身,而是编写用于生成文档的应用程序。
动态文档和静态文档的区别主要在服务器端,主要是文档内容的生成方法不同,从浏览器角度看,这2种文档没有区别。动态文档和静态文档的内容都遵循HTML规定的格式。增加一种机制,称为CGI,CGI为一种标准,CGI(Common Gateway Interface)定义了动态文档的如何创建、输入数据如何提供给应用程序、输出结果应如何使用,在万维网服务器中新增加的应用程序叫CGI程序,也称为CGI脚本(script),也成为cgi-bin脚本,因为在许多万维网服务器上,为便于找到CGI程序,将CGI程序放在/cgi-bin目录下。脚本即为一个程序,被另一个程序(解释程序)而不是计算机的处理机来解释执行。
13.活动万维网文档:动态文档虽然可以获得一些简单的交互,但交互能力有限,动态文档一旦建立,所包含的信息内容也就固定下来而无法及时刷新屏幕。像动画之类的显示效果,动态文档无法提供。有2种技术可以实现浏览器屏幕显示的连续更新:
a.服务器推送(server push):所有工作交给服务器,不断运行与动态文档相关联的应用程序,及时更新信息,发生更新过的文档,但造成服务器开销,另外要求服务器为每一个浏览器可会维持一个不释放的TCP连接,造成网络传输时延增大。
b.活动文档(active document)技术:所有工作交给浏览器端,浏览器请求时,服务器返回一段程序副本,该副本在浏览器端运行,活动文档程序可与用户直接交互,可连续改变屏幕的显示。由于不需要服务器连续更新传送,带宽要求不高。从传送角度看,浏览器和服务器都把活动文档看成是静态文档,在服务器上的活动文档内容是不变的,这点和动态文档不同,浏览器可在本地缓存活动文档副本。java语言是一项用于创建和运行活动文档的技术。java  Applet来描述活动文档程序。java技术共有三个主要组成部分:b1.程序设计语言java;b2.运行环境:java虚拟机(JVM);b3.类库。java编译程序将源程序转换成java字节码,这事一种与机器无关的二进制代码。计算机程序调用解释程序读取字节码,解释执行。
14.搜索引擎工作原理:
(1)数据结构:要在万维网上进行搜索,就要将所有万维页面标题中的关键词做成索引。制作索引需要三种数据结构:a.很大的线性数组url_table,要使用虚存,将不太常用的项存于磁盘中,每个页面有一项,每项有2个指针,一个指向堆中的页面URL,一个指向堆中的页面标题。b.URL和标题长度为可变,可存放于堆中,页面和标题可不断追加到堆中。c.URL数量太大,将URL制作成散列表(hash table),长度为n,任何一个URL经过散列产生一个小于n的非负整数,散列值相同的URL(设为k)链接到以散列码为k为标示的链表中,将某个URL放入url_table同时也放入散列表。
(2)搜索页面:制作索引就要首先进行搜索,搜索引擎的核心是一个递归过程process_url。该过程将URL作为输入,先散列URL,如在散列表中,继续下一个URL,每个URL只处理一次。若不在url_table中,读取该页面,将该URL和页面标题复制到堆中,并将堆得指针存入url_table,也要进入散列表。接着过程process_url从该页面抽取所有的超链,对每个超链调用一次process_url,将超链的URL作为process_url的输入。
(3)用户检索:制作索引:将url_table中的项目进行处理,检查其标题,将所有不在“非用词表”(stop list,如前置词,连接词,冠词等)中的词挑选出来,每选择一个词,就在索引中写一行,包括这个词,对应的URL中的项目。整个url_table都扫描过,索引就制成了。可按此进行检索,索引放在磁盘上。
(4)用户使用浏览器进行检索,在表格中输入一个或多个关键词,点击提交按钮,形成一个POST请求,服务器收到请求,调用CGI程序,读取用户关键词,在索引中查找这些关键词,对每个关键词找出相应的一组URL,若用户使用了AND 或OR,则CGI程序可给出经过布尔运算的检索结果。CGI程序根据用户提出的关键词,检索出用户所需的所有标题及其URL,形成一个表格,作为对POST的响应,返回给浏览器。用户根据浏览器显示的页面,点击感兴趣的超链。
(5)有些文档没有有用的标题,只能从整个超文本中抽取关键词。
15.动态主机配置协议(DHCP,Dynamic Host Configuration Protocol)协议:DHCP使用客户服务方式,需要IP地址的主机在启动时向DHCP服务器广播发送发现报文(DHCPDISCOVER)(将目的IP地址设为全1,即255.255.255.255),发送广播报文因为现在还不知道DHCP服务器在什么地方,还要发现DHCP服务器的IP,客户主机还没自己的IP,将IP数据包源IP设为全0,本地网络上所有主机都能听到这个报文,但只有DHCP服务器才响应。DHCP服务器在数据库中查找该主机信息,若有,则返回相应信息,若没有,则从服务器IP地址池中取一个地址分配给该主机。DHCP服务器的回答报文为提供报文(DHCPOFFER)。通常,不愿意在每个网络上都设置一个DHCP服务器,而是使用DHCP中继代理(relay agent),它配置了DHCP服务器的IP地址信息,当DHCP中继代理收到主机A以广播形式发生的报发现报文后,就以单播向DHCP服务器转发此报文,等待回答后再发回主机A 。DHCP报文只是UDP用户数据报的数据,DHCP服务器分配给客户的IP地址是临时的,DHCP客户只能在一段有限时间内使用。DHCP客户使用的UDP端口是68,DHCP服务器使用的UDP端口是67。

16.DNS:因特网的域名系统DNS被设计成一个联机分布式数据库系统。某应用进程将待解析的域名放在DNS请求报文中,以UDP数据报方式发给本地域名服务器,域名服务器查找域名后,在返回报文中响应对应的IP地址,如果不能回答请求,该域名服务器作为DNS客户,向其它域名服务器发送查询请求,直到找到为止。
17.因特网域名结构:采用层次树状结构的命名方法,由若干分量构成:….三级域名.二级域名.顶级域名,级别越低越往左,域名系统不规定一个域名需要包含多少个下级域名,也不规定每一级域名代表什么意思,各级域名由其上一级域名管理机构管理,而最高的顶级域名由因特网相关机构管理
18.顶级域名(Top Level Domain):分为三大类
a.国家顶级域名nTLD(ccTLD(country-codeTLD)):如.cn表示中国,.us表示美国等
b.国际顶级域名iTLD:采用.int,国际性的组织可在.int下注册
c.通用顶级域名gTLD:最早的六个:.com表示企业,.net表示网络服务机构,.org表示非盈利性机构,.edu表示教育机构,.gov表示政府部门(美国专用),.mil表示军事部分(美国专用),后增加七个:.aero用于航空运输企业,.biz用于公司和企业,.coop用于合作团体,.info用于各种情况,.museum用于博物馆,.name用于个人,.pro用于会计、律师、医师等自由职业者。
19.在国家顶级域名下注册的二级域名由国家自行设定。在我国,二级域名分为:
a.类别域名(6个):.ac表示科研机构,.com表示工商、金融等企业,.edu表示教育机构,.gov表示政府部门,.net表示互联网络、接入网络的信息中心(NIC)和运行中心(NOC),.org表示非盈利性机构,
b.行政区域名(34个):适用于各省、自治区、直辖市。如,.bj表示北京市,.js表示江苏省。
20.在我国,在二级域名.edu下申请注册三级域名由中国教育和科研计算机网网络中心负责,二级域名.edu外的其他二级域名下申请注册三级域名的,应向中国互联网网络信息中心CNNIC申请。
21.因特网的名字空间是按照机构的组织来划分的,与物理的网络无关,因特网上的域名服务器也是按照域名的层次来安排的,有三种类型的域名服务器:
a.本地域名服务器(local name server)
b.根域名服务器(root name server):当本地域名服务器不能立即回答某个主机查询时,本地域名服务器就以DNS客户身份向某个根域名服务器查询。通常,根域名服务器用来管辖顶级域(如.com),根域名服务器并不直接对顶级域下面所属的所有的域名进行转换,但它一定能够找到下面的所有二级域名的域名服务器。
c.授权域名服务器(authoritative name server):每一个主机都必须在授权域名服务器处注册登记,通常,一个主机的授权域名服务器就是它的本地ISP的一个域名服务器

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值