了解 Web 及网络基础
Web 使用一种名为 HTTP(HyperText Transfer Protocol,超文本传输协议)的协议作为规范,完成从客户端到服务器端等一系列运作流程。而协议是指规则的约定。可以说,Web 是建立在 HTTP 协议上通信的。
现在已提出了 3 项 WWW 构建技术,分别是:把 SGML(StandardGeneralized Markup Language,标准通用标记语言)作为页面的文本标记语言的 HTML(HyperText Markup Language,超文本标记语言);作为文档传递协议的 HTTP ;指定文档所在地址的URL(UniformResource Locator,统一资源定位符)。
WWW 这一名称,是 Web 浏览器当年用来浏览超文本的客户端应用程序时的名称。现在则用来表示这一系列的集合,也可简称为 Web。
网络基础 TCP/IP
TCP/IP 协议族里重要的一点就是分层。TCP/IP 协议族按层次分别分为以下 4 层:应用层、传输层、网络层和数据链路层。
-
应用层决定了向用户提供应用服务时通信的活动。
TCP/IP 协议族内预存了各类通用的应用服务。如:FTP(文件传输协议)和 DNS(域名系统)。 -
传输层对上层应用层,提供处于网络连接中的两台计算机之间的数据传输。
在传输层有两个性质不同的协议:TCP(Transmission
ControlProtocol,传输控制协议)和 UDP(User Data Protocol,用户数据报协议)。 -
网络层用来处理在网络上流动的数据包。数据包是网络传输的最小数据单位。该层规定了通过怎样的路径(所谓的传输路线)到达对方计算机,并把数据包传送给对方。
与对方计算机之间通过多台计算机或网络设备进行传输时,网络层所起的作用就是在众多的选项内选择一条传输路线。 -
链路层(又名数据链路层,网络接口层) 用来处理连接网络的硬件部分。包括控制操作系统、硬件的设备驱动、NIC(Network
Interface
Card,网络适配器,即网卡),及光纤等物理可见部分(还包括连接器等一切传输媒介)。硬件上的范畴均在链路层的作用范围之内。
这种把数据信息包装起来的做法称为封装(encapsulate)
与 HTTP 关系密切的协议 : IP、TCP 和DNS
网络层IP 协议的作用是把各种数据包传送给对方。而要保证确实传送到对方那里,则需要满足各类条件。其中两个重要的条件是 IP 地址和 MAC地址(Media Access Control Address)。 使用 ARP 协议凭借 MAC 地址进行通信。
传输层TCP 协议为了更容易传送大数据才把数据分割,而且 TCP 协议能够确认数据最终是否送达到对方。
应用层DNS(Domain Name System)服务是和 HTTP 协议一样位于应用层的协议。它提供域名到 IP 地址之间的解析服务。
各种协议与 HTTP 协议的关系
URI 和 URL
URI (统一资源标识符)就是由某个协议方案表示的资源的定位标识符。协议方案是指访问资源所使用的协议类型名称。
URI 用字符串标识某一互联网资源,而 URL 表示资源的地点(互联网上所处的位置)。可见 URL 是 URI 的子集。URL(UniformResource Locator,统一资源定位符)
资源的定义是“可标识的任何东西”。
URI 格式,要使用涵盖全部必要信息的绝对 URI、绝对 URL 以及相对 URL。相对 URL,是指从浏览器中基本 URI 处指定的 URL,形如 /image/logo.gif。
绝对 URI 的格式
区别是:
- URI 的设计是为了识别任何抽象或物理资源,它不一定要提供如何访问资源的信息。
- URL 明确地指向一个网络上的资源,并提供足够的信息以便定位和访问它。
有一些用来制定 HTTP 协议技术标准的文档,它们被称为RFC(Request for Comments,征求修正意见书)。 通常,应用程序会遵照由 RFC 确定的标准实现。可以说,RFC 是互联网的设计文档,要是不按照 RFC 标准执行,就有可能导致无法通信的状况。