前后端职业路线发展规划及相关基础知识

 

(原文引用:https://developer.mozilla.org/zh-CN/docs/Learn/Common_questions/How_does_the_Internet_work)

一、互联 是如何工作的

1.基本概念

        互联 是 络的支柱,以这种技术为基础使 络成为可能。作为基础,互联 是把电脑互相连接起来的一个巨大 络。

        互联 的历史有些模糊不清,它始于1960年美国军方资助的研究项目。1980年在许多公共大学和公司的支持下,它演变为一种公共基础设施。随着时间的变化,各种各样的技术支持着互联 的发展,但是它的工作方式却没有改变多少:互联 确保所有的电脑之间的连接,无论发生什么他们依旧保持连接。

2.深入探索

        当两台电脑需要通信时,你必须要通过某种方式例如有线( 线)、无线(wifi、蓝牙)等方式进行连接。

        但通常一个 络不仅限于两台电脑。你可以尽你所想地连接电脑,但是情况立刻变得复杂了。如果你尝试连接,比如说十台电脑,每台电脑有九个插头,总共需要45条 线。

        为了简化线路连接的硬件问题,想要接入互联 上的每台电脑都需要连接到一个路由器(router)的特殊小型电脑上。路由器会在信 传输过程中进行甄别筛选,确保从一台电脑上发出的一条信息可以到达正确的电脑。而引入路由器之后线路将会大大简化,每台电脑只需要一个插口一种连接方式,而其他响应则统一归到了路由器上。

3. 络结构

        引入路由器的概念之后,已经简化了地区内的连接机制,但是真正要连接上数以亿计的电脑凭借一两台路由器肯定是不够的,而在前文中也曾提到,路由器的本质也是一种微型电脑,只是功能集中体现在了信 处理传输上,所以我们便可以想到,将多个路由器之前相互连接。

        发展到上面这种形式已经就非常接近我们平常所提到的互联 了,但是数量如此庞大的设备集群,通过在你的房子和世界其它地方之间架设电缆将这些不同的 络连接起来是不可能的,但是每家每户都有电线与电话等基础设施,所以我们所需要的连接媒介已经有了,但是电话与 络终究存在基础的差异,为了调和这种差异我们需要用到一种设备—调制解调器(modem),调制器可以把 络信息变成电话设施可以处理的信息,反之亦然。

        这样,我们的电脑就已经可以通过电话基础设施相互连接了,下一步就是将我们电脑的信息分享发送到任何我们想要到达的地方。为此,我们需要把我们的 络连接到互联 服务提供商(ISP)。ISP是一家可以管理一些特殊路由器的公司,这些路由器连接其他ISP的路由器,而你通过路由器发出的消息能够被ISP捕获并且发送到相应的 络,至此互联 就彻底形成了。

4.精准连接

        在庞大的互联 体系中,如果你想精准的给某一台电脑发送信息,你必须通过某种媒介指明它是哪台电脑,而这个媒介对于每一台连接到 络中的电脑都应该是唯一的,这个媒介就是”IP地址”(IP代表 络协议)。这个地址由四部分被点分隔的数字序列组成,比如:192.168.2.10。

        而这样的IP虽然简短,但是对于人类而言很难记忆,所以为了简单化处理,我们给IP地址取了一个容易理解记忆的别名:域名。例如:google.com代表了IP地址172.217.7.14。

5.互联 (Internet)和 络(web)

        从上文中,我们已经提出了通常使用域名去寻找一个IP地址访问一个 站。但这并不意味着互联 (Internet)与 络(Web)是一样的。正如概念中提到,互联 只是一种基础的技术,它的存在帮助我们吧成千上万的电脑连接了起来。在这些电脑当中,有一部分电脑(我们称之为 络服务器Webservers)可以发送一些浏览器可以理解的信息。互联 是基础设施, 络是建立在之上的服务。还有其他的一些服务同样运行在互联 上,例如邮箱等。

二.万维 是如何工作的

1.万维 基础概念

        WWW (World Wide Web,万维 )是存储在Internet计算机中、数量巨大的文档的集合。这些文档称为页面,它是一种超文本(Hypertext)信息,可以用于描述超媒体。文本、图形、视频、音频等多媒体,称为超媒体(Hypermedia)。Web上的信息是由彼此关联的文档组成的,而使其连接在一起的是超链接(Hyperlink) 。

        超文本(Hypertext)是由一个叫做 页浏览器(Web browser)的程序显示。 页浏览器从 页服务器取回称为“文档”或“ 页”的信息并显示。通常是显示在计算机显示器。人可以跟随 页上的超链接(Hyperlink),再取回文件,甚至也可以送出数据给服务器。顺着超链接走的行为又叫浏览 页。相关的数据通常排成一群 页,又叫 站

        注意:互联 是线路、协议以及通过TCP/IP协议实现数据电子传输的硬件和软件的集合体。而万维 (www)、文本传输(FTP)等只是通过互联 提供的服务。

2.客户端和服务器

        连接到互联 的计算机通常分为客户端和服务器。

        客户端是典型的Web用户入 设备(比如,你连接了Wi-Fi的电脑,或接入移动 络的手机)和设备上可联 的软件(通常使用像 Firefox 和 Chrome的浏览器)

  • 服务器是存储 页,站点和应用的计算机。当一个客户端设备想要获取一个 页时,一份 页的拷贝将从服务器上下载到客户端机器上来在用户浏览器上显示。

3.浏览器运行机制

        1.浏览器在域名系统(DNS)服务器上找出存放 页的服务器的实际地址。

        2.浏览器发送HTTP请求信息到服务器来拷贝一份 页到客户端,这条消息,包括其他所有在客户端和服务器之间的传递数据都是通过互联 使用TCP/IP协议传输的。

        3.服务器同意客户端请求后,返回一个code 200,意味着你可以查看这个 页,然后开始将 页的文件以数据包的形式传输到浏览器。

        4.浏览器将接收到的数据包聚集成完整的 页然后将 页呈现给你。

4.DNS解析

        DNS:域名系统服务器— 站通讯录,当你在浏览器内输入一个 址是,浏览器获取 页之前会先查看域名系统。浏览器需要找到存放你想要的 页的服务器,才能发送HTTP请求到争取的地方。

        上文中提到真正的 址并非你所输入到的搜索框中的东西一样便于记忆,而是一串串IP地址例如:63.245.217.105。

        IP地址代表了一个互联 上独特的位置,但是并不好记忆,所以发明了DNS域名系统。

5.通讯协议

        在前文中提到过了很多协议,我们需要了解什么是通讯协议。

        首先通讯指的是什么们考虑到一个基本的通讯场景所需要的东西。

        a.通讯是双方的。(可能是软件间、设备间、人员间)

        b.通讯的方式。

        语义(数据格式和编码)

        语义(控制信息和数据处理)

        计时(速度匹配和排序)

        当两个人见面时,他们使用通信协议进行互动:例如,在日本,一个人将对身体做出特定的手势。弓是一种这样的手势,它是用于交互的语法。在日本习俗中,鞠躬的手势(除其他外)与问候某人的语义相关。最后,当一个人向另一个人鞠躬时,已经在特定的时间在两者之间建立了一系列事件。

        通讯协议

在线通信协议包含相同的元素。语法将是字符序列,例如我们用于编写协议的关键字。语义是与这些关键字中的每一个相关联的含义,最后,计时是两个或多个实体交换这些关键字的顺序。

6.HTTP协议

        HTTP是位于通讯协议之上的应用程序协议。

        HTTP是Hypertext Transfer Protocol的缩写,即超文本传输协议。此协议提供了访问超文本信息的功能,是www浏览器和www服务器之间的应用层通信协议。HTTP协议是用于分布式协作超文本信息系统的、通用的、面向对象的协议。通过扩展命令,它可用于类似的任务,如域名服务或分布式面向对象系统。www使用HTTP协议传输各种超文本数据与页面。

        HTTP本身在其他协议之上运行。当连接到 站时,用户代理正在使用TCP/IP协议套件。

HTTP协议的会话过程包括了4个步骤。

        1) 建立连接:客户端浏览器向服务端发出建立连接的请求,服务端给出响应。

        2) 发送请求:客户端按照协议要求通过链接想服务端发送自己的请求。

        3) 给出应答:服务端按照客户端的要求给出应答,把结果(HTML文件)返回客户端。

        4) 关闭连接:客户端接到应答后关闭连接。

7.TCP/IP协议

        TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/ 际协议) 是指能够在多个不同 络间实现信息传输的协议簇。TCP/IP协议不仅仅指的是TCP和IP两个协议,而是指的一个由FTP、SMTP、TCP、UDP、IP等协议构成的协议簇, 只是因为在TCP/IP协议中TCP协议和IP协议最具代表性,所以被称为TCP/IP协议。

        TCP/IP模型设计于1970年,有4个不同的层:

        a.链接 描述对物理介质的访问(例如,使用 卡)

        b.因特 描述了数据的信封和路由-它是如何打包的(IP)

        c.传输 描述了从起点到最终目的地(TCP,UDP)的数据传输方式

        d.应用程序 描述了一传输消息(HTTP)的含义与格式

TCP/IP协议的特点:

        1)协议标准是完全开放的,可供用户免费使用,并且独立于特定的计算机硬件与操作系统。

        2)独立于 络硬件系统,可以运行在广域 中,只是相对更适合于互联 。

        3) 络地址统一分配, 络中的每一台设备和终端都具有一个唯一的地址。

        4)高层协议标准化,可以提供各种类型的 络服务。

8. 站托管

        一个 络服务器是一台托管一个或多个 站的计算机。“托管”的意思是所有 页和它们的支持文件都存放在那台 络服务器中。 络服务器会根据每一位用户的请求,将任意 页从托管的 站中发送资源包到任意用户的浏览器客户端中。

三、 站的三大技术

1.HTML

        1)基本概念:HTML的全称为超文本标记语言( Hyper Text Markup Language),是一种标记语言。它包括一系列标签.通过这些标签可以将 络上的文档格式统一,使分散的Internet资源连接为一个逻辑整体。

        2)使用途径:HTML是构成 站页面元素的基础,使用HTML集成 站中 页所需的资源和

2.CSS

3.JavaScript

四、版本控制系统

1、基本概念

        版本控制是指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理,是软件配置管理的核心思想之一。版本控制最主要的功能就是追踪文件的变更。它将什么时候、什么人更改了文件的什么内容等信息忠实地了记录下来。每一次文件的改变,文件的版本 都将增加。

2、仓库托管服务

1)GitHub

2)GitLab

3)Bitbucket

五、Web安全知识

1、HTTPS

        HTTPS (全称:Hyper Text Transfer Protocol over SecureSocket Layer),是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性 。HTTPS 在HTTP 的基础下加入SSL,HTTPS 的安全基础是 SSL,因此加密的详细内容就需要 SSL。 HTTPS 存在不同于 HTTP 的默认端口及一个加密/身份验证层(在 HTTP与 TCP 之间)。这个系统提供了身份验证与加密通讯方法。

        HTTPS 协议是由 HTTP 加上 TLS/SSL 协议构建的可进行加密传输、身份认证的 络协议,主要通过数字证书、加密算法、非对称密钥等技术完成互联 数据传输加密,实现互联 传输安全保护。

2、内容安全策略(CSP)

1)基本概念

        CSP指的是内容安全策略,为了缓解很大一部分潜在的跨站脚本问题,浏览器的扩展程序系统引入了内容安全策略(CSP)的一般概念。这将引入一些相当严格的策略,会使扩展程序在默认情况下更加安全,开发者可以创建并强制应用一些规则,管理 站允许加载的内容。简单来说,就是我们能够规定,我们的 站只接受我们指定的请求资源。

2)使用目的

        防XSS等攻击的利器。CSP 的实质就是白名单制度,开发者明确告诉客户端,哪些外部资源可以加载和执行,等同于提供白名单。它的实现和执行全部由浏览器完成,开发者只需提供配置。CSP 大大增强了 页的安全性。攻击者即使发现了漏洞,也没法注入脚本,除非还控制了一台列入了白名单的可信主机。

3)CSP分类

 1)

        配置好并启用后,不符合 CSP 的外部资源就会被阻止加载。

 2)

        表示不执行限制选项,只是记录违反限制的行为。它必须与选项配合使用。

3、跨域资源共享(CORS)

4、OWASP安全风险

文章知识点与官方知识档案匹配,可进一步学习相关知识 络技能树跨区域 络的通信学习 络层的作用22399 人正在系统学习中

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年10月2日
下一篇 2022年10月2日

相关推荐