第七章 通信层

第15章 网络

15.1 连网

  • 计算机网络(computer network):为了通信和共享资源恶而连接在一起的一组计算机设备。
  • 无线连接(wireless):没有物理电线的网络连接。
  • 节点(主机)(node(host)):网络中任何可寻址的设备。
  • 数据传输率(带宽)(data transfer rate(bandwich)):数据从网络中的一个地点传输到另一个地点的速率。
  • 协议(protocol):定义如何在网络上格式化和处理数据的一组规则。
  • 客户/服务器模型(client/sever model):客户发出对服务器的请求,服务器作出响应的分布式方法。
  • 文件服务器(file server):专用于为网络用户存储和管理文件的计算机。
  • Web服务器(Web server):专用于响应网页请求的计算机。

15.1.1 网络的类型

  • 局域网(Local-Area Network,LAN):连接较小地理范围内的少量计算机的网络。
  • 环形拓扑(ring topology):所有节点连接成封闭环的LAN配置。
  • 星形拓扑(star topology):由中心节点控制所有消息传输的LAN配置。
  • 总线拓扑(bus topology):所有节点共享一条通信线的LAN配置。
  • 以太网(Ethermnet): 基于总线拓扑的局域网业界标准。
  • 广域网(Wide-Area Network, WAN): 连接两个或多个局域网的网络。
  • 网关(gateway):处理它的LAN和其他网络之间通信的节点。
  • Internet:遍布地球的广域网。
  • 城域网(Metropolitan- Area Network, MAN):为大城市开发的网络基础设施。

15.1.2 Internet连接

  • Internet骨干网(Internet backbone):承载Internet通信的一组高速网络。
  • Internet服务提供商(Internet Service Provider, ISP): 提供Internet访问的公司。
  • 电话调制调节器(phone modem):把计算机数据转换成模拟音频信号,然后再把模拟音频信号转换回计算机数据的设备。
  • 数字用户线路(Digital Subscriber Line,DSL):用常规电话线传输数字信号的Internet连接方式。
  • 线缆调制调解器(cable modem):使用家庭的有线电视网络进行计算机网络通信的设备。
  • 宽带(broadband):提供的数据传输率大于128Kbps的网络技术。
  • 下载(download):在家用计算机上接收Internet上的信息。
  • 上载(upload):从家用计算机给Internet上的目标机器发送数据。

15.1.3 包交换

  • (packet):在网络上传输的数据单位。
  • 包交换(packet switching):把包单独发送到目的地然后再组装起来的网络通信技术。
  • 路由器(router): 指导包在网络上向最终目的地传输的网络设备。
  • 中继器(repeater): 在较长的通信线路上加强和传播信号的网络设备。

15.2 开放式系统与协议

15.2.1 开放式系统

  • 专有系统(proprietary system):使用特定销售商的私有技术的系统。
  • 互通性(interoperability):多台机器上的来自多个销售商的软件和硬件互相通信的能力。
  • 开放式系统(Open system):以网络体系结构的通用模型为基础并且伴有一组协议的系统。
  • 开放系统互连参考模型( Open Systems Interconnection ( OSI) reference model) :为了便于建立通信标准而对网络交互进行的7层逻辑划分。

15.2.2 网络协议

协议栈(protocol stack):彼此依托的协议分层。

15.2.3 TCP/IP

  • 传输控制协议(Tarasmsisin Contol Poo TCP): 把消息分割成包,在目的地把包重新组装成消息,并负责处理错误的网络协议。
  • 网际协议( Iternet Protocol, IP): 网络协议,处理包通过互相连接的网络传递到最终目的地的路由选择。
  • TCP/IP:一-组支持低层网络通信的协议和程序。
  • 用户数据报协议(UserDatagramProtocol,UDP):牺牲一定可靠性实现较高传输速率的网络协议,是TCP的替代者。
  • ping:用于测试一台特定的网络 计算机是 否是活动的以及是否可到达的程序。
  • 跟踪路由程序(raceroute):用于展示包在到达目的节点的过程中经过的路线的程序。

15.2.4 高层协议

  其他协议都是在TCP/IP协议组建立的基础之上构建的。

  • 简单邮件传输协议(SMTP)用 于指定电子邮件的传输方式的协议。
  • 文件传输协议(FTP)一允许一台计算机上的用户把文件传到另一台机器或从另一台机器传回文件的协议。
  • telnet 用于从远程计算机登录 一个计算机系统的协议。如果你在一台 特定的计算机上拥有允许telnet连接的账户,那么就可以运行采用telnet协议的程序,连接并登录到这台机器,就像你坐在这台机器面前一样。
  • 超文本传输协议(HTTP)一定义www文档交换的协议,www文档通常是用超文本标记语言(HTML)写成的。

  这些协议都是构建在TCP之上的。还有些高层协议构建在UDP之上,主要是为了利用它提供的速度。不过, 由于UDP的可靠性不如TCP,所以UDP没有TCP那么流行。有些高层协议具有特定的端口号。端口是对应于特定高层协议的数字标号。服务器和路由器利用端口号控制和处理网络通信。图15-7列出了常用的协议和它们的端口。有些协议(如HTTP)具有默认的端口,但也可以使用其他端口。
端口(port):特定高层协议对应的数字标号。

15.2.3 MIME

MIME 类型(MIME type):定义电子邮件附件或网站文件的格式的标准。

15.2.6 防火墙

  • 防火墙(Firewall):一台网关机器,它的软件通过过滤网络通信来保护网络。
  • 访问控制策略(access control policy):一个组织建立的一组规则,规定了接受和拒绝什么类型的网络通信。

15.3 网络地址

  • 主机名(hostname):由点号分隔的单词组构成的名字,唯一标识了Internet上的机器,每个主机名对应一个特定IP地址。
  • IP地址(IP address):由点号分隔的四个数值构成的地址,唯一表示了Internet上的机器。
  • 域名(domain name):主机名中说明特定的组织或分部的部分。
  • 顶级域名(Top-Level Domain,TLD):域名中的最后一部分,声明了组织的类型或所属国家。
  • ICANN:批准顶级域名的国际组织。
  • 域名抢注(domain squatting):购买域名,目的仅仅是为了高价卖给真正想使用它的人或组织。
  • 域名系统(domain name system):管理主机名解析的分布式系统。
  • 域名服务器(domain name server):把主机名翻译成IP地址的计算机。

15.4 云计算

云计算(Cloud computing):提供存储空间和互联网上其他资源的服务。 目前有几种不同类型的云服务:
- 公有云:允许任何订阅用户访问; - 私有云:专门为一个特定的组或组织建立,并限制在该组织团体内访问; - 社区云:在拥有相似需求的多个组织之间进行云共享; - 混合云:上述云服务类型的一些组合。

第16章 万维网

16.1 Web简介

  • 万维网(WorldWideWeb,Web):信息和用于访问信息的网络软件的基础设施。
  • Web页(Webpage):包含或引用各种类型的数据的文档。
  • 链接(link):两个Web页之间的连接。
  • Web站点(Website):- 一组相关的 Web页,通常由同一个人或公司设计和控制。

16.1.1 搜索引擎

  大多数搜索引擎是用用户输人的关键字与作为站点索引的一组关键字进行比较。有些搜索引擎几乎把每个Web页上的每个单词都作为索引存人数据库,只是除去a、an和the这样的常用单词。有些搜索引擎则只用Web页的部分内容作为索引,如文档的标题和题名等。有些索引技术区分大小写,有些则不。
  关键字搜索非常具有挑战性,因为自然语言(如英语)本身具有二义性(第13章也讨论过这个问题)。例如,术语hard cider (烈性苹果酒)、hard brick (坚硬的砖)、hard exam (很难的测验)和hard drive (磨损的道路)中的hard意思都不同。如果提供了足够多的关键字,搜索引擎就能够正确地区分匹配站点的优先次序。但在没有上下文的情况下,基本的关键字匹配是很有限的。
  有些搜索引擎执行基于概念的搜索,即尝试判断所执行的搜索的上下文。如果它们运行得很好,返回的候选页会包含你要搜索的主题的相关内容,无论这个页面中的单词是否与查询中的关键字完全匹配。
  执行基于概念的搜索的技术有几种。它们通常以复杂的语言理论为基础。基本前提是分类,即对比相近的单词。例如,在医学范畴内,心脏这个词可能与动脉、胆固醇和血这些词相近。
  基于概念的搜索比关键字搜索复杂得多,基于概念的搜索技术很不完善,不过一旦有 所改进,这种技术的潜力不可限量。

16.1.2 即时消息 ####

  即时消息( Instant Messaging, IM)应用程序是最受欢迎的Web程序。顾名思义,使用这些程序,你可以实时地给朋友或工作伙伴发送消息。如果发送者和接收者同时运行了即时消息应用程序,那么消息一到达就会立刻弹出来,这样两个人就能够进行在线“交谈”。现“在领先的IM应用程序是America Online (AOL)Instant Messenger (AIM)。
  今天的IM应用程序非常复杂,允许用户定制联系人列表,设置默认的答复,除了文本外,还可以发送标准的图形或订制的图形。IM模式已经成了许多Web用户的标准通信方法。
  大多数IM应用程序采用专有的协议,规定通过网络发送消息的格式和结构。AIM的协议也是专有的,但并不限于AOL用户才能使用,这也是AIM如此受欢迎的原因。
  即时消息虽然方便,但却不安全。通过各种IM协议发送的消息并没有加密,可能会被网络通信途中的中间点截获。未加密的电子邮件也同样不安全。

16.1.3 博客

16.1.4 cookie

cookie是另一种基于 Web的技术,对于用户而言,它增强了Web的实用性。cookie是Web服务器存储在你的计算机硬盘上的一个小文本文件。 站点可能会在用户的机器上存储一个cookie,以捕捉之前这台机器和站点之间发生的交互。

16.2 HTML

  • 超文本标记语言(HyperText Markup Language,HTML):用于创建Web页的语言。
  • 标记语言( markup language):使用标记来注释文档中的信息的语言。
  • 标记(tag):标记语言中用于说明如何显示信息的语法元素。

16.2.1 基本的HTML格式

  段落标记(<P>···</P>0说明了应该将其中的文本作为单独的段落处理。在大多数浏览器中,结束标记

不是必需的,不过为了清楚起见,我们使用它。浏览器通常会用新的一行开始新段落, 而且段落前后还有空行,以便与其前后的段落分隔开。
  居中标记(<CENTER>....</CENTER>)说明其中的信息应该在浏览器窗口中居中显示。元素B、1和∪分别说明了封装的文本应该用粗体、斜体显示或加下划线。这些元素可以嵌套,从而同时生成多种效果,不过并非所有标记都是如此。也就是说,并非所有标记都能嵌套。
  标记<HR>将在页面中插人一条水平线,通常用于把Web页分割成几个部分。
  我们通常需要显示项目列表。UL元素表示无序列表,LI元素表示一个列表项。在Student Dynamics这个示例中,标记<UL>...</UL>封装了三个列表项。大多数浏览器都采用项目符号显示无序列表。如果使用有序列表元素(OL),那么列表项将被顺序编号。无序列表和有序列表都可以嵌套,从而创建列表分层。无序嵌套列表的每一层使用的项目符号都不同。有序嵌套列表的每一层都会重新开始编号。
  定义文档标题的元素有几种。在HTML中,有6种预定的标题元素,即H1、H2、H3、H4、H5和H6。例如,封装在标记<H3>···</H3>中的文本将被当作3级标题,用比4级标题大、比2级标题小的字号显示。标题标记并非一定要用于设置标题文本, 任何想改变字体大小的地方都可以使用它们。

16.2.2 图像与链接

  许多标记都具有属性,说明了有关信息的额外细节或如何显示封装的信息。
属性(attribute):标记中用于提供有关元素的额外信息的部分。

16.2.3 HTML5

HTML5:精简标记系统和支持动态内容的最新HTML标准。

16.3 交互式网页

Java小程序(Java applet):为嵌入HTML文档而设计的程序,能够通过Web传输,在浏览器中执行。
JSP小脚本(JSP scriptlet):嵌在HTML文档中用于给Web页提供动态内容的代码片段。

16.4 XML

  • 可扩展标记语言(eXtensible Markup Language,XML):允许用户描述文档内容的语言。
  • 元语言(metalanguage):用于定义其他语言的语言。
  • 文档类型定义(Document Type Definition,DTD):XML文档结构的规约。
  • 可扩展样式表语言(eXtensible Stylesheet Language,XSL):定义XML文档到其他输出格式之间转换的语言。

16.5 社交网络

社交网络(social network):允许拥有共同兴趣的人们进行交流互动的在线服务。

问题

  • 不同Internet连接方式的原理不太清楚。
  • HTML、XML、XSL之间的关系

Copyright © 2024 罗雪峰
Powered by .NET 8.0 on Kubernetes