道格·劳埃德:如果你 一直在看这些视频 在此我们推荐的顺序, 我们即将经历 文化转变位。 因为现在,我们要开始 谈到互联网和网络 技术。 所以到现在为止,我们已经 真的做了很多C的 而当我们已经 运行我们的程序, 我们一直在运行当中 在命令行。 这是相当多的用户如何有 与程序被交互 我们写的。 他们捡东西提示,东西 发生在终端窗口中, 然后,它的完成。 有时候,你可能有持续性 数据仍然之后。 但是,这几乎是它。 这是在命令行。 这是用户可以交互的唯一途径。 从现在开始, 我们将启动 过渡,使得用户 可以和我们的网站互动。 因此,我们要编写 网站,这是没有用C写的, 但被写入各种其他的 编程语言,包括PHP, 而这有点帮助的语言, HTML,CSS等。 因此,我们要开始 谈论这些事情。 在我们进入网络 编程本身, 我想这可能是一个好 主意,退一步和谈话 有关如何计算机和 人类互动在网上。 所以,这段视频确实是一个引子, 一个基本的指导,到互联网。 现在,这里需要说明的是 CS50是不是网络类。 因此,我们将要谈论什么 这里是相当高的水平。 我们不打算 进入任何低级别 如何所有这些东西的工作原理的细节。 如果你有兴趣 在那,我强烈 建议采取类 在计算机网络。 我们甚至可以说 善意的谎言或两个刚 用于制造的目的 一般理解清楚。 因此,随着中说,让我们来谈谈 我们如何与互联网互动。 因此,我们在这里。 下面是我们的。 我们非常期待 获得在互联网上,这 大家都知道,是座充满猫。 现在,我们只是连接到 互联网也是这样吗? 好吧,也许不是。 直观地说,你知道 即,比方说, 当你改变你的无线网络 联网的计算机上, 你没有看到一个叫互联网 除非这只是恰巧 是你的本地Wi-Fi的名称。 对? 这通常是一些像家一样。 或者,如果你在工作,它可能 是你公司的名称。 有不只是一个 选项​​,称为网络。 所以,某事或一些 存在于事物之间的时 我们要连接到互联网。 什么是一些这些东西? 好了,我们要谈论。 我们也将谈论 一些重要的事情 我们需要以能够 连接到互联网。 和第一这些 事情是一个IP地址。 所以,你可能已经听说过 之前的术语IP地址。 这是什么意思? 好了,一个IP地址是 基本上唯一的标识符 您的计算机在网络上的。 就像每一个家庭或 办公室有一个唯一的地址 哪一个可以发送邮件。 同样,每一台电脑,如果它 要接收数据或发送数据, 需要有唯一的地址。 因此,当信息 发送或接收, 它被发送或接收 到正确的位置。 这种寻址方案,因为我 所述,被称为IP寻址。 IP是代表互联网协议, 我们将念叨不久。 现在,这是什么IP地址是什么样子? 那么,该方案基本上是, 它第一次实现时, 给每一个计算机 一个唯一的32位地址。 这是一个很大的位。 这的4间十亿地址。 一般,而不是使用 十六进制表示法,它 我们的背景下以前使用 在C指针谈地址, 我们通常代表IP 在多一点点地址 一个人的友好 这样,代表他们 作为四组8比特的 表示为十进制数。 因为人类不经常说话 十六进制,除非你是编程。 但是,人们谁使用互联网 不一定程序员。 因此使它容易 并为他们访问 要能谈论他们的 IP地址是在情况下,他们可能 需要调用某人 解决的东西, 这是更好地使其在更 常见的传统的十进制数 格式。 所以,一个IP地址只是看起来 非常喜欢这一点,w.x.y.z, 其中,这些信件中的每一个 代表一个非负值 在0至255的范围内。 回想一下,一个8位的数 可容纳256个不同的值。 所以这就是为什么我们的范围是0到255。 我们有四组8 位总计32位。 所以,一个IP地址可能 是这个样子。 这是形式的通用 默认IP地址,123.45.67.89。 所有的人都在0到范围 255,所以这是一个有效的IP地址。 在这里,在哈佛大学,所有的 我们的IP地址开始与140.247。 这是现在的样子,知识产权 在这个地理区域地址 已分配。 因此,这可能是一个IP地址 可能存在的你们是哈佛。 因此,正如我说的,如果每个IP地址 为32位,我们有大约4十亿 给了,一点点 超过4十亿。 但是,我们可以种看问题,对不对? 什么是世界人口的权利吗? 嗯,这是什么地方 7十亿人北上。 而在西方世界 至少,大多数人 有一个以上的装置 可互联网连接。 我有一个就在这里。 而且,我还有一个在我的口袋里。 我有一回在我的办公室。 所以这三种。 而这还不算上 那些我在家里也一样。 所以,这是怎样的一个问题,对不对? 我们必须至少提前7十亿人 仅4十亿地址。 而每台设备应该 被唯一地识别。 我们已经开发了一些解决方法 来处理这个问题, 所谓私人 IP地址,我们不 要进入这个视频。 但基本上,它允许进一步 网络,互联网,来样假冒 指出,你有一个独特的一点点 由具有私有地址的地址 然后漏斗他们通过 唯一的一个地址,该 是由许多不同的计算机共享。 但是,这真的不是一个长期的修复。 即使是固定不 永远持续下去。 因此,我们需要有一个不同的 处理这个问题的方法。 因此,正如我所说,我们有大约4十亿。 但是,这不会 足够好,对不对? 等等的方式,它具有 已经决定在那里,我们是 去处理,这是 使较长的IP地址。 而不是32位地址,我们 将有128位地址。 因此,而不是四十亿 地址,我们将 有这种庞大的地址数量, 这340十亿十亿十亿 十亿,所以很多的IP地址。 而这个新的方案称为IPv6 通常是它是如何转介。 旧的计划是IPv4的。 这是一个位的问题 这个问题已经 知道了很长一段时间。 你会看到这个有很多的 计算机和计算的上下文。 我们是好于预期的问题。 但是我们不擅长与他们打交道 即使我们知道他们。 因此,IPv6的已经存在了一段时间。 而且,只有在近一 多年来有我们实际上 开始逐步在这些IPv6地址 淘汰的IPv4地址。 但有些地方确实有他们。 他们看起来很相似 到正规的IP地址。 但他们很多时间。 因此,而不是现在有四个 簇的8个字节为你的地址, 我们现在有8簇的16个字节。 和8倍16是128。 而我们这些代表在少 传统的十六进制形式。 因为具有16位数字表示 而不是被一个范围为0到255, 我们希望有一个范围为0到65,535。 所以有一堆 这些粘在一起 将是非常困难的读取。 因此,我们通常用十六进制 只是出于方便。 所以,一个典型的IPv6地址 可能是这个样子。 这当然不是长了不少 IPv4地址,我们以前见过。 但是,这将是一个有效的IPv6地址。 这一次也是关于IPv6地址。 这一次恰好属于谷歌。 并注意有一个 一串零那里。 有时,这些地址 能得到这么久。 而且,由于我们仍然 在IPv6的很早, 有时也可以是大口吃 在那里零点,我们不需要。 如果你正在读这篇出声, 这是2001.4860.4860.0.0.0.0.8844。 这是怎样的一个很大的,对不对? 所以,如果你看到一堆 零,你有时可能会 看到一个IPv6地址这样, 他们忽略了零 并使用双冒号来代替。 这是确定的,但。 因为我们知道,有 应该是八个不同的块中。 因此暗示,我们看到四个。 因此,我们知道,必须有四套 像这样的零,即补入。 所以有的时候,你可能会看到 不具有IPv6地址 8分离块像我们在这里做。 您可能会看到它看起来像这样。 而这只是意味着 一切你看不到 之间,其中的双冒号 在刚刚零点分开。 那么好吧。 我们知道一点点 有关IP地址了。 但是,我们如何让他们? 我们不能只挑我们想要的人。 如果我们这样做,我们可能最终战斗 有人为相同的IP地址。 或者有人可能有 先前选择了它。 如果我们试图把它,我们将 碰上一个有点问题。 因此,我们不能只挑 我们需要的IP地址。 这样我们就得到一个方式 IP地址是某处 我们的计算机和之间 互联网,那大互联网在那里, 有一种叫做DHCP服务器, 动态主机配置协议 服务器。 这是文字的大口。 但实际上它是所有这 你分配一个IP地址。 你的DHCP服务器的列表 解决了它能够有效地分配。 它给你一个。 这几乎是所有有给它。 现在DHCP之前,这个任务 的分配地址 下降到系统管理员。 因此,一个实际的人将有 手动指定计算机 和地址,当你 连接到网络。 因此,DHCP只是有点自动完成此 给予你的IP地址的过程。 但是,这是你如何得到它。 这只是一个程序运行 地方你们之间 和具有一排的互联网 IP地址,它就会发出。 而当你连接到 网络,它给你一个。 因此,让我们重新审视这个图。 某处你和之间 互联网,有一个DHCP服务器。 好。 所以这是很好的。 现在,让我们来谈谈DNS。 因此,我们已经说过,虽然 这些IP地址。 而我们知道,如果我们 去唯一地识别 互联网上的设备,它 必须有一个唯一的地址。 我们可以去参观一下 地址,如果我们想的话。 但你可能从未类型 在类似192.168.1.0 到浏览器,对吧? 您没有键入数字 您的浏览器。 通常你键入人类可读的名字 如google.com或cs50.harvard.edu, 对? 那些没有IP地址,虽然。 所以存在这种服务 称为域名 系统,DNS,转换IP 地址为人类可理解的话 或短语是更令人难忘的是 比记住一组四个数字 或者,不久,一组八个 十六进制数字。 这将是真正艰难的,对不对? 想想前 手机天。 你有你记住你 朋友的电话号码。 它可能已经变得艰难 过一小会儿。 同样,如果希望 参观了一堆网站, 你可能不希望 记住一串数字。 你宁愿记住一堆话。 所以这个映射,这个翻译中, 两组数字,以人类可读的名字 那种使DNS的 黄页幅材。 你可以考虑一下 它仿佛它只是 一个巨大的名单,从0.0.0.0所有正在运行 到255.255.255.255的方式,也 将最高possible--那 品种齐全,从0至全4的255秒 十亿十岁上下的IPv4地址。 我上弥补了那些 的顶部和底部。 但是,一个在中间有 实际上是一个IP地址。 因此,如果我们走访了74.125.202.138, 显然这转换到该网站 在那里,io--到底是什么呢? 好吧,不是每一个映射的名字是 实际上清楚它是什么,对不对? 所以有时候有人 谁拥有一个IP地址 可能会说出自己的主机东西 他们实际上是不。 例如,如果你的IP地址 去那里,其实只是google.com。 但谷歌有很多 的不同的服务器。 他们不能叫他们都google.com。 因此,他们有自己的 用于转换内部系统 google.com到任何服务器实际 被连接到该IP地址。 然后还有另一个 系统之间存在 把这种官样文章 这里到google.com。 但是,我们不会进入的。 与此类似 IPv6s,我们也要去 有一个黄页 那将是大了很多。 同样,在 中间那里 - 那是 很难找到一个IPv6 地址是合法的。 但是我找到一个对谷歌。 但它是谷歌的爱尔兰网站。 但是,如果你去了IPv6地址, 如果您的浏览器是支持IPv6, 这将带给你 谷歌的爱尔兰主页。 所以你去。 但是,这并不完全正确,对吗? 这个系统看起来繁琐,对不对? 如果有一个巨大的4名单 十亿事情要回去看看, 这是相当大的。 有没有黄页 世界,对不对? 如果你仍然得到黄 网页传递给你 - 我有我的一天, 我只是回收了。 但是,如果你得到的黄 交付给你的网页, 你没有得到一本书,这是每一个 存在在行星电话号码, 对? 你得到的名单 本地电话号码, 那些你最有可能打电话。 而这其实什么是DNS。 如果你仔细想想,DNS是 真正的本地黄页。 而大型的DNS服务器 像google.coms,他们 实际上只是更多 像库 所有的地方黄色的副本 页或所有的本地DNS记录。 所以,真的没有一个存储库 互联网的DNS全的, 就像有没有人 黄页世界。 有这些地方小 存在在那里的规模DNSS。 而且有服务 它们聚集在一起。 但是,他们依靠这些 较小的DNS系统 更新自己的信息,以便 它们具有最准确的信息。 如此反复,这样的比喻 大聚集 DNS系统是像 有一份库 每黄页世界。 他们不自己 更新这些书。 他们依赖于书本进来, 这样他们可以更新该信息 如果他们需要它。 因此DNS系统是不是一个巨大的块。 它的整个分散 很多很多的服务器。 所以,现在我们知道的地方 我们和互联网之间 存在一个DNS服务器 以及DHCP服务器。 现在,接入点, 我们什么接入点? 嗯,你的接入点可能 很熟悉的实际 连接到互联网。 这就是你所选择的网络, 在家庭或工作网络 或者你有什么。 而我概括了 的接入点的概念 这里对本视频。 但实际上有 很多事情, 可以卷成接入点。 有路由器的概念,这 是那种我们使用的总称。 但也有交换机 与事居然叫 相分离的接入点 这个一般的访问概念 点。 但基本上什么 发生与IPv4的,我 说我们有这个概念 私有地址,对吧? 而不是每台机器 具有唯一的IP地址,这 我们已经用完了,因为 我们超过40十亿设备 尝试连接到 互联网,我们做什么 是不是分配 IP地址的路由器。 该路由器或接入点 只需在您的家,例如。 而路由器的工作,以 排序作为交通警察, 谁的连接,允许大家 该路由器到使用相同的IP 解决脱身。 那有意义吗? 所以每个人都在你的家 有一个专用IP地址。 他们不能连接到 互联网,还是互联网,而 不能和他们说话,通过 私有地址。 他们只能和他们说话 通过在路由器的地址。 而且它的路由器 工作采取信息 你要发送的路由器 并引导到正确的位置 并且信息是未来 入路由器的路由器 将其发送给您。 因此,路由器是真的 设备这里 - 特别是路由器 在您的家中,最常见的种类 的使用情况下,对于大多数people-- 具有该公共IP地址。 这是该设备的 连接到互联网。 你连接到路由器 有信息流 通过它代表你。 正如我所说的,现代家居网, 路由器和交换机和接入点 种都捆绑 成单个装置。 有时,一个调制解调器 捆绑在那里。 这通常只是称为路由器。 但它确实所有的 这些东西放在一起。 大型企业的网络或 所谓广域网,广域网, 其实让这些设备分开。 他们有一个开关。 他们有路由器。 它们具有多个接入点。 例如,在一 大学你会看到的东西 看起来像所谓的路由器 安装都是围绕校园。 这些都是流动的所有接入点 入路由器,交换机,等等, 将信息传递沿线。 由于这些网络都是如此 大,单一接入点 不能掩盖它的大面积推广。 等等这些大型网络, 业务网络,等等, 这些拆分成独立的 设备,因此网络和规模 和壮大如果需要的话。 如此反复,冥冥中我们之间并 互联网,我们有一个接​​入点。 而这正是我们连接。 而且经过那里,我们 可以获取到互联网。 正如我所说的 开始本视频, 这不是一门关于联网。 因此,这不是整个故事。 那种我已经掩盖了它。 也许我已经离开你 哪怕是一点点迷茫 至于什么其中的一些东西是。 但是,这是确定的。 我们不需要整个故事。 这是足以让我们知道移动 前锋基本上只是一点点 有关如何上网工程。 因此,我们所知道的是,我们有这些 专用网络在我们家。 我们连接到路由器。 而该路由器连接 到互联网在逃。 但是,什么是互联网的大? 我一直这样说,但它是什么? 好吧,这真的只是这些 在我家单独的网络, 并在你的房子,并在隔 房子,连接在一起的。 这是一个相互联系的 网络,跨网。 因此,而不是思维 关于互联网 因为这个巨大的云,这空灵 存在在那里的东西, 它实际上只是一个连接 在所有这些网络。 所以在这里我们去。 我们有我们的本地网络。 而且我们不是唯一的人 或许我们的本地网络上 尝试使用互联网。 有可能是几个 我们试图进去。 而且我们不是唯一的网络 存在于这个世界,对不对? 还有其他网络,也即 试图连接到互联网。 但互联网是不是, 再次,一个独立的实体。 这只是一组规则,允许 这些网络中,这些小的网络, 蓝色,紫色, 而红网络 这里,以相互通信。 因此,有没有事 他们都连接。 他们都只是连接 给对方,对吧? 所以某处这些 网络中存在的服务 我们真正想要的。 所以,也许在蓝网 正是谷歌生活。 并在紫网络 正是Facebook的生活。 而在红网络,好吧,也许 这就是所有这些猫。 因此,如果我们想获得 关于猫的信息, 我们只是遍历这个链网络 得到我们想要的信息。 在这里,我代表 网络作为一切 能够互相沟通。 我们只能聊到网络上。 但网络不能顶嘴我们。 但事实并非如此要么,对不对? 这是所有双行道。 信息可以流经 网络来回。 它是如何做到这一点? 那么,互联网的真正 协议的系统。 而且我们要 开始谈论什么 这些协议是在未来的视频。 但同样,在互联网 是不是一个独立的东西。 这是一组规则,定义 网络通信方式, 这些小型网络,这些 我们已经习惯了本地网络, 人们在我们家的人 在我们学校,人我们的工作, 所有的共享网络。 而如何将这些网络互联 并互相交谈, 这实际上是什么 互联网的全部。 因此,让我们在未来的 视频,谈一些 的组成该协议 互联网有希望 给你多一点的 全面的了解。 我是道格·劳埃德。 这是CS50。