道格·勞埃德:如果你 一直在看這些視頻 在此我們推薦的順序, 我們即將經歷 文化轉變位。 因為現在,我們要開始 談到互聯網和網絡 技術。 所以到現在為止,我們已經 真的做了很多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。