網路科學
IB 計算機科學課程中的選修課 C。
通常情況下,網際網路、因特網和全球資訊網 (也稱為網路) 常常被混淆。然而,它們實際上截然不同。
C.1.1 區分網際網路和全球資訊網 (網路)。
因特網簡單地指的是一組互聯的網路。網際網路指的是利用包括 IP 地址在內的標準化通訊協議的全球計算網路。換句話說,網際網路是一個覆蓋整個地球的廣域網[1]。全球資訊網 (網路)是由各種網路資源組成的資訊空間,可以透過網際網路訪問。換句話說,全球資訊網是在網際網路上執行的一項服務。
可以類比說網際網路是一家餐廳,而網路是它最受歡迎的一道菜。
C.1.2 描述網路如何不斷發展。
總的來說,網路的變化可以概括為從個人網站到部落格,或從釋出到參與的轉變。它從靜態頁面轉向了動態頁面。
有時被稱為 "Web 1.0",網路的早期階段,個人和靜態網頁託管在 ISP (網際網路服務提供商) 的網路伺服器上或免費的網路託管服務上。在 Perl、PHP 和 Python 等動態程式語言出現之前,一些設計元素包括:線上留言簿而不是評論區,以及 HTML 表單為 mailto 表單。
Web 1.0 與 Netscape 的商業模式相關聯 - 專注於軟體建立、更新和錯誤修復,並將這些軟體分發給終端使用者。
Web 2.0指的是一個強呼叫戶參與和貢獻的網路,例如社交媒體網站和部落格。它以 Ajax 和 JavaScript 等客戶端技術以及動態程式語言為特色。對使用者介面、應用程式軟體和檔案儲存的關注被稱為 "網路即平臺"。Web 2.0 的關鍵特徵包括
- Folksonomy - 對資訊的自由分類 (如標記)
- 使用者參與 - 網站使用者被鼓勵為網站增加價值/內容
- 大眾參與 - 普遍的網路訪問導致了使用者群關注度的差異化
- SaaS (軟體即服務)
與 Web 1.0 相比,Web 2.0 與 Google 相關聯,Google 的重點不是建立終端使用者軟體,而是提供基於現有資料的服務。
語義網路是透過全球資訊網聯盟 (W3C) 的標準擴充套件的,它促進了通用資料格式和交換協議的統一性。例如,資源描述框架 (RDF) 規範被推廣為一種通用方法,用於使用主語-謂語-賓語表示式 (例如,主語:"桌子",謂語:"長度為",賓語:"一米") 對網路資源進行概念建模。
C.1.9 解釋協議和標準在網路中的重要性。
協議是一組通訊規則,確保特定成功過程發生時能夠進行正確、相容的通訊,例如TCP/IP。協議確保網路的普遍性。另一方面,標準是一組技術規範,應遵循這些規範以實現功能,但不必為了獲得成功過程而必須遵循,例如HTML。如果沒有它們,就相當於在不知道外語的情況下用外語交流。
例如,如果沒有TCP,將沒有傳輸協議,資料包將會丟失。
例如,如果沒有HTML,將沒有用於顯示網頁的標準指令碼語言,不同的網路瀏覽器可能無法顯示所有頁面[2]
C.1.12 解釋瀏覽器的功能。
一種用於檢索、呈現和遍歷網路上資訊資源的軟體工具。
C.1.7 識別以下特徵:IP、TCP 和 FTP。
TCP 和 IP 共同組成一套協議,執行網路的基本功能。
IP 是一種網路協議,定義資料包的地址路由[1]。每臺計算機都擁有唯一的 IP 地址,IP 確保將所有資料傳送到目的地。
透過網際網路傳送的資訊會被分解成 "資料包",並透過不同的路由傳送到目的地。TCP 建立資料包,按正確順序將它們重新組合在一起,並檢查是否有資料包丟失。'
FTP 是一種協議,它提供透過網路共享或複製檔案的方法。它主要用於將檔案上傳到網站,某些下載網站也可能使用 FTP 伺服器。但是,HTTP 更常用於下載。使用 FTP 時,URL 將以 ftp: 形式顯示。
C.1.3 識別以下特點:HTTP、HTTPS 和 URL。
HTTP 是一套用於在 Web 伺服器和 Web 瀏覽器之間通訊的特定網際網路協議。HTTP 是一種基於文字的協議,因為每個新的使用者請求都需要建立一個新的連線,並且在沒有通訊網路知識的情況下進行通訊。
由於 HTTP 沒有提供太多安全保障,因此開發了 HTTPS 並使用傳輸層安全 (TLS) 或安全套接字層 (SSL) 向連線添加了加密。
指定網頁位置的標準方法。[1]
統一資源識別符號 (URI)
標識網站上特定網頁的一種方法。
C.1.4 識別以下特點:統一資源識別符號 (URI) 和 URL。
URL 具有 URI 中的典型特徵。
例如,URL htt, p://example.com/page/resource,具有地址, n 協議標識用於檢索 r http,資源名稱為 example.com 以及一個特定檔名。
C.1.5 描述 URL 的目的。
URI 是標識資源的字串。URL 是一種特定型別的 URI,它提供 Web 資源的地址以及檢索資源的方法。例如,http://example.com/index 標識http 用於檢索的協議,example.com 作為地址,以及特定檔案 /index。
C.1.6 描述域名伺服器的工作原理。
域名伺服器是一種特殊的伺服器,它將 Web 地址與 IP 地址相關聯,有點像目錄。它利用分層分散命名系統,按根 DNS 伺服器或頂級域名伺服器(如 .net 和 .com)進行排序,然後排序到每個頂級域名伺服器下的權威 DNS 伺服器(例如,.stanford 可能位於 .edu 下)。
C.1.3 識別以下特點:HTML、XML、XSLT、Javascript 和 CSS。
HTML 是用於製作網頁的標準標記語言。特點
- 允許嵌入影像/物件或指令碼
- HTML 預定義標籤結構化文件
- 標籤是標記的文字字串,元素是“完整”的標籤,具有開頭和結尾,屬性修改元素的值
- 通常與 CSS 配合使用以進行樣式設定
CSS 表描述瞭如何顯示 HTML 元素。它可以控制多個網頁的佈局。
XML 是一種標記規範語言,它定義了對編碼文件(用於儲存和傳輸資料)的規則,這些規則既可讀懂,也可由機器讀取。XML 作為一種元語言,使用文件型別定義 (DTD) 檔案支援建立自定義標籤(與 HTML 不同),這些檔案定義了標籤。XML 檔案是資料,而不是軟體。
XSLT 是一種將 XML 文件轉換為其他 XML 文件或其他格式(如 HTML)的語言。它根據現有文件的內容建立新文件。
JavaScript 是一種動態程式語言,廣泛用於建立 Web 資源。特點包括
- 客戶端
- 支援面向物件程式設計風格
- 不包括輸入/輸出
- 可用於嵌入影像或文件、建立動態表單、動畫、幻燈片以及表單驗證
- 也用於遊戲和應用程式
C.1.8 概述網頁的不同組成部分。
頭部 包含標題和元標籤,元資料。元資料描述文件本身或將其與相關資源(如指令碼和樣式表)相關聯。主體包含標題、段落和其他內容。
標題 在瀏覽器工具欄中定義標題。
元標籤 是描述頁面內容但不在頁面本身(僅在頁面程式碼中)顯示的文字片段。幫助搜尋引擎找到相關的網站。
C.1.10 描述不同型別的網頁。
個人頁面 是個人為個人內容而不是與組織有關聯而建立的頁面。通常包含有關個人愛好或觀點等主題的資訊,具有資訊性或娛樂性。
部落格 或 Weblog 是一種機制,允許在網站上釋出定期文章。
搜尋引擎頁面 或搜尋引擎結果頁面 (SERP) 顯示搜尋引擎從查詢中獲得的結果。
論壇 或線上討論板通常按主題組織,人們可以透過釋出訊息進行對話。通常具有不同的使用者組,這些使用者組定義了使用者的角色和許可權。
C.1.11 解釋靜態網頁和動態網頁的區別
靜態 網頁在每次載入頁面時都包含相同的內容,但動態 網頁的內容會根據使用者輸入而改變。靜態網站開發速度更快,開發、託管和維護成本更低,但缺乏動態網站的功能和易於更新的能力。動態網頁包括電子商務系統和討論板。
動態網頁可以使用 PHP、ASP.NET 框架或 Java Server Page (JSP) 指令碼來實現。JSP 指令碼是嵌入 HTML 程式碼中的一小段可執行程式碼。JSP 是伺服器端指令碼。另一方面,JavaScript 是客戶端指令碼。ASP.NET 框架可以使用單頁應用程式 (SPA) 或 MVC (模型-檢視-控制器) 模型來生成動態網頁或應用程式,它支援多種 .NET 語言,例如 Razor 語法 C#。PHP 是用於 Web 開發的伺服器端指令碼語言,可以嵌入 HTML 程式碼中,也可以與模板或框架一起使用。
C.1.13 評估在網頁中使用客戶端指令碼和伺服器端指令碼。
伺服器端指令碼在伺服器上執行,需要傳送請求並返回資料。對客戶端更安全。包括 PHP、JSP 和 ASP.NET。
客戶端指令碼在客戶端執行指令碼。可能對客戶端構成安全風險,但速度更快。包括 JavaScript 和 JSON。
C.1.14 描述如何將網頁連線到底層資料來源。
連線字串是指定資料來源及其連線方式的字串。通常用於資料庫連線。
C.1.15 描述通用閘道器介面 (CGI) 的功能。
CGI 是一種標準,用於使 Web 伺服器與安裝在伺服器上用於動態生成網頁的可執行程式互動。
C.2.2 區分表面網路和深層網路。
表面網路是指任何能夠被搜尋引擎找到和訪問的內容。深層網路包括無法被搜尋引擎找到的網頁,因為它們需要身份驗證才能訪問。通常只有知道連結或擁有適當的身份驗證才能訪問。暗網另一方面,通常只能透過 TOR 找到,因為訪問需要加密和匿名因素。
C.2.1 定義搜尋引擎術語。
網路搜尋引擎是一個網站,它透過關鍵詞搜尋和基於概念的搜尋等方法幫助你找到其他網站。透過跟蹤網站的不同連結進行搜尋。
C.2.3 概述搜尋引擎使用的搜尋演算法原理。
術語搜尋是指檢視已輸入的查詢,並在索引中搜索匹配項。搜尋時會考慮以下因素:檢查詞頻、區域索引(對標題和描述賦予不同的權重)、反饋的相關性、向量模型(檢視文件的餘弦相似度)。
PageRank是 Google 使用的一種演算法。連結分析演算法,它為超連結文字中的每個元素分配數值權重。PR(E)(E 的頁面排名)。指向頁面的超連結被視為對特定頁面的投票或支援。透過關聯性確定重要性。指向該頁面的路徑數量除以該頁面之前步驟中發出連結的數量,然後考慮之前頁面/步驟的 PR。總而言之,不同的 PageRank 將加起來為 1,這是一個機率分佈。
超連結誘導主題搜尋 (HITS) 演算法是一種連結分析程式,它也對網頁進行評級。中心和權威。一個好的中心指向許多頁面,一個好的權威是被許多中心連結到的頁面。每個頁面都分配了兩個分數:其權威性,它估計內容的價值,以及其中心價值,它估計其指向其他頁面的連結的價值。首先透過基於文字的演算法生成一個根集(最相關的頁面)。然後透過增加從根集連結到該頁面或從該頁面連結到該頁面的網頁來生成一個基礎集。基礎集和基礎集中所有的超連結形成了一個聚焦子圖,HITS 在其上執行。
C.2.4 描述網路爬蟲的功能。
網路爬蟲,也稱為網路蜘蛛,是網際網路機器人,它們透過遍歷不同的連結,系統地索引網站,同時收集有關網站的資訊。它還會複製網站以供索引。
機器人,也稱為網路機器人,是一種軟體應用程式,它在網際網路上執行自動任務或指令碼,並且可以以很高的速度執行這些任務。通常是重複性的任務。
可以透過 robots.txt 檔案中的機器人排除協議阻止網路爬蟲訪問頁面。
C.2.5 討論元標記中的資料與網路爬蟲如何訪問它的關係。
元標記用於關鍵詞索引、檢索(如果索引與搜尋查詢相關),有時也用於排名。例如,Google 不賦予元標記任何權重。學生應該意識到,這並不總是傳遞關係。
C.2.6 討論並行網路爬蟲的使用。
爬取是探索每個連結頁面並返回該頁面的副本的過程。[3] 使用多個網路爬蟲或同時執行多個程序以最大限度地提高下載速率。必須注意不要多次下載同一個網站。
C.2.7 概述網路索引在搜尋引擎中的目的。
索引是一個過程,其中每個頁面都會被分析其單詞,然後將頁面新增到網站索引中。[3] 索引可以快速搜尋並提供高度的相關性。[3]
C.2.9 描述搜尋引擎使用的不同指標。
- 連結域/中心的信譽度
- 連結頁面的受歡迎程度
- 源頁面和目標頁面之間內容的相關性
- 連結中使用的錨文字
- 源頁面上鍊接到同一頁面的連結數量
- 連結到目標頁面的域數量
- 源域和目標域之間的關係
- 連結到目標頁面的錨文字的變體
C.2.8 建議 Web 開發人員如何建立在搜尋引擎結果中排名更靠前的頁面。
- 允許搜尋引擎找到你的網站
- 擁有一個值得連結的網站
- 確定關鍵詞和元資料
- 確保搜尋引擎友好的架構
- 擁有高質量的內容
- 定期更新內容
C.2.11 討論白帽和黑帽搜尋引擎最佳化的使用。
黑帽使用激進的 SEO 策略,這些策略利用了搜尋引擎,而不是關注人類受眾 - 短期回報。包括使用
- 部落格垃圾郵件
- 連結農場
- 隱藏文字
- 關鍵詞堆砌
- 寄生蟲託管
- 隱蔽
白帽技術是“符合”指南的,被認為是合乎道德的 - 長期回報。
- 客座部落格
- 連結誘餌
- 高質量內容
- 網站最佳化
C.3.1 定義以下術語:移動計算、普適計算、點對點網路、網格計算。
移動計算是指在計算機可以預期在正常使用過程中被運輸(或以其他方式是移動的)情況下的人機互動。最流行的裝置包括智慧手機和平板電腦。
無處不在的計算是指將計算能力擴充套件到任何時間、任何地點的概念。它指的是計算的泛濫傳播(普適計算)。它以不同的形式出現,例如筆記型電腦、平板電腦。
點對點網路是指每個計算機或節點同時充當客戶端和伺服器的網路,允許網路中的所有使用者共同共享資源。可以實現對中心伺服器的自主性。點對點網路的一個例子是種子下載。
網格計算是指將多個位置的計算機資源集合在一起以實現共同目標。它與叢集計算的區別在於,網格計算將特定的角色分配給每個節點。網格可用於軟體庫。持久、基於標準的服務基礎設施。
C.3.2 比較以下主要特徵:
無處不在的計算正被移動計算所推動。這個概念正在傳播和體現。
點對點更側重於確保連線性和共享資源網路,而網格網路更側重於基礎設施。兩者都涉及虛擬社群內資源共享的組織。
無處不在的計算通常以多裝置互動為特徵(點對點和網格),但並不一定等同。
網格計算中的網格將資源(PC、工作站、伺服器、儲存元素)連線在一起,並提供訪問這些資源所需的機制。
C.3.3 區分互操作性和開放標準。
互操作性是指系統能夠與其他產品無限制地訪問或實現而協同工作的能力。
開放標準是指公開可用的標準,並具有與其相關的各種使用權。
C.3.4 描述分散式網路使用的硬體範圍。
- 點對點:沒有專門的機器提供服務或管理網路資源的架構。相反,所有職責均在所有機器(稱為對等節點)之間平均分配。對等節點可以同時充當客戶端和伺服器。
- 客戶端-伺服器:智慧客戶端聯絡伺服器獲取資料,然後將其格式化並顯示給使用者的架構。當客戶端的輸入表示永久性更改時,將其提交回伺服器。
- 三層:將客戶端智慧移動到中間層,以便可以使用無狀態客戶端的架構。這簡化了應用程式部署。大多數 Web 應用程式都是三層的。
C.3.5 解釋為什麼分散式系統可能成為 Web 更大程度去中心化的催化劑。
分散式系統是指將元件位於網路計算機上的軟體系統,這些元件透過傳遞訊息來通訊和協調其操作。這些元件相互互動以實現共同目標,因此這導致所有內容都位於其他計算機上,而不是讓一臺計算機成為“老闆”,因為它是一個領導者,因為所有計算機都處於同一級別。
C.3.6 區分無失真壓縮和有失真壓縮。
無失真壓縮在解壓縮時可以恢復原始資料的每個位元(GIF)。
有失真壓縮會消除冗餘或特定資訊。(JPEG)
C.3.7 評估解壓縮軟體在資訊傳輸中的使用。
- 它只能與無失真壓縮一起使用。
- 如果您沒有原始檔案,它會很有用。
- 它可能無法恢復每個位元,並且可能缺少一些細微的細節。
C.4.1 討論 Web 如何支援新的線上互動方式,例如社交網路。
Web 2.0 和動態網頁的增加,使得使用者貢獻大幅增加,社交網路、部落格和評論部分的廣泛使用也隨之而來。
C.4.2 描述雲計算與客戶端-伺服器架構的不同之處。
雲計算是指在網際網路上的遠端伺服器上託管資料,以儲存、管理和處理資料,而不是在本地伺服器或個人計算機上。與客戶端-伺服器架構相比,雲計算更廣泛地共享資源。客戶端-伺服器架構僅指客戶端和伺服器之間的通訊以及“責任”的分配。
公有云計算
- 任何人都可以訪問。
- 維護和更新由公司負責。
私有云計算
- 託管資料中心,資料受防火牆保護。
- 對於擁有昂貴資料中心的公司來說,這是一個不錯的選擇,因為他們可以使用現有的基礎設施。
- 但是,維護和更新由公司負責。
混合方法
同時使用公有云和私有云。
C.4.3 討論對指定組織使用雲計算的影響。
對組織使用雲計算的影響
- 成本更低
- 裝置和位置獨立性
- 維護更容易
- 效能易於監控
- 安全性值得關注
C.4.4 討論在 Web 上管理版權和智慧財產權等問題。
知識共享提供共享、改編甚至商業使用資訊的自由。具有不同的重新分發方式,有些允許使用,而無需署名,但可能不會表明它是其自身的智慧財產權。
C.4.5 描述隱私、身份驗證和授權之間的相互關係。
隱私:與訪問網站共享的資訊,如何使用這些資訊,與誰共享這些資訊,或者是否使用這些資訊來跟蹤使用者。 [4]
身份驗證:將資料樣本與系統資料庫中的所有參考模板進行比較的過程,以確定試圖訪問系統的使用者身份。 [5]
授權:將提供的憑據與本地作業系統或身份驗證伺服器中授權使用者的資訊資料庫中的憑據進行比較的過程。 [6]
這三個元件共同確保安全可靠的網際網路瀏覽。
C.4.6 描述網路架構、協議和標準在 Web 未來發展中的作用。
- 未來網路和無線自組織網路
- 車聯網中的未來網路
- 5G 和物聯網 (IoT)
- 物聯網中的未來網際網路應用
- 邁向智慧電網通訊未來的步驟
- 機器到機器 (M2M) 和未來網路中的路由
- 未來網路技術與大資料/霧計算的融合
- 未來網際網路和 5G 架構設計
- 5G 在 VANET(車載自組織網路)中的進步
- 移動邊緣計算
- 未來網路中的安全和隱私
- 未來網路的網路協議
- 未來網路中的資料轉發
- 未來網路的新應用
- 未來網路中的傳輸層改進
- 基於雲的物聯網架構和用例 [7]
物聯網是指嵌入電子裝置和其他必要技術的物理物件網路,使這些物件能夠收集和交換資料。 [8]
C.4.7 解釋為什麼 Web 可能正在創造不受監管的壟斷。
可能出現不受任何國家限制的新的跨國線上寡頭壟斷。
- 如果存在壟斷,創新可能會下降。因此,一個社交網路網站、搜尋引擎、瀏覽器可能會建立一個壟斷,從而限制創新,這存在風險。
- 蒂姆·伯納斯·李將今天的社交網路描述為集中的“孤島”,將所有使用者資料集中在一個地方。 [9]
- Web 瀏覽器(微軟)
- 雲計算領域由微軟主導。
- Facebook 正在主導社交網路。
- 網際網路服務提供商 (ISP) 可能會偏袒某些內容,而不是其他內容。
- 行動電話運營商阻止競爭對手網站。
- 內容審查。 [10]
一項原則性理念,即網際網路服務提供商 (ISP) 和政府應平等對待網際網路上的所有資料和資源,不因使用者、內容、平臺或其他特徵而歧視。
C.4.8 討論去中心化和民主化的 Web 的影響。
術語“去中心化網路”被用來指代一系列技術,這些技術取代或增強當前的通訊協議、網路和服務,並以一種能夠抵禦單一主體控制或審查的方式進行分佈。[11]
| 優勢 | 問題 |
|---|---|
|
|
- ↑ a b c Dale, Nell, and John Lewis. Computer Science Illuminated. 5th ed. N.p.: Jones & Bartlett Learning, 2012. Print.
- ↑ International Baccalaureate Diploma Programe. Markscheme May 2015 Computer science Standard level Paper 2. N.p.: International Baccalaureate, May 2015. Print.
- ↑ a b c International Baccalaureate Diploma Programe. Markscheme November 2015 Computer science Standard level Paper 2. N.p.: International Baccalaureate, May 2015. Print.
- ↑ Computer hope."What is privacy?" Computer Hope. Computer Hope, n.d. Web. 12 Apr. 2017. [1]
- ↑ Webopedia. "Identification." What is identification? Webopedia Definition. Quinstreet Enterprise, n.d. Web. 12 Apr. 2017. <http://www.webopedia.com/TERM/I/identification.html>.[2]
- ↑ Rouse, Margaret. "What is authentication? - Definition from WhatIs.com." SearchSecurity. TechTarget, Feb. 2015. Web. 12 Apr. 2017. <http://searchsecurity.techtarget.com/definition/authentication>.[3]
- ↑ Pecht, Michael. "Future Networks: Architectures, Protocols, and Applications." IEEE Access. IEEE, 31 Jan. 2017. Web. 19 Apr. 2017. <http://ieeeaccess.ieee.org/special-sections-closed/future-networks-architectures-protocols-applications/>.
- ↑ "Internet of Things Global Standards Initiative". ITU. Retrieved 7 May 2016.
- ↑ a b CS-IB. "C.4 The evolving web." Cs-ib.net. CS-IB, n.d. Web. 19 Apr. 2017. <http://www.cs-ib.net/sections/C-04-the-evolving-web.html>.
- ↑ Web_science_option_c.docx. Huston: Weebly, n.d. PDF.
- ↑ Griffey, Jason. "What Is the Decentralized Web? 24 Experts Break it Down." Syracuse University School of Information Studies. Syracuse University School of Information Studies, 22 July 2016. Web. 19 Apr. 2017. <https://ischoolonline.syr.edu/blog/what-is-the-decentralized-web/>.