孫勤紅 沈鳳仙
摘要:計算思維是人類思維的重要組成部分,培養學生的計算思維能力是計算機教學的重要目標之一。本文結合周以真教授提出的計算思維,針對計算機網絡的教學實際,分析了網絡協議、IP地址和網絡數據處理等內容,提出了在計算機網絡知識中分層和分解,共享和沖突處理等計算機思維的使用。
關鍵詞:計算機網絡;計算思維;分層
中圖分類號:TP393-4 文獻標識碼:A 文章編號:1007-9416(2019)08-0215-02
美國卡耐基·梅隆大學周以真教授提出的計算思維,運用計算機科學的基礎概念進行問題求解、系統設計以及人類行為理解的系列思維活動,是與邏輯思維和實證思維并列的三種科學思維模式之一,占有非常重要的地位。周以真教授認為計算思維是一種能力,這種能力通過熟練地掌握計算機科學的基礎概念而得到提高。這些能力主要包括:約簡、嵌入、轉化、仿真、遞歸、并行、抽象、分解、建模、預防、保護、恢復、冗余、容錯、糾錯、啟發式推理、規劃、學習和調度等[1]。同時,ACM前主席Denning在《偉大的計算原理》概念分類提出了7個類別:計算、通信、協作、記憶、自動化、評估和設計[2]。在實際使用中,很多思維都在被廣泛應用。其中分層和分解是解決復雜問題時常用的思維。為了解決問題,兩種思維均會設立多個相互合作的模塊。在計算機網絡中,計算思維也被廣泛使用。
1 計算思維分層和分解在計算機網絡協議中的應用
分層和分解的思維在現實生活中廣泛使用,在一個學校校長、副校長、學院院長、教研室主任和教師等分層模式,使得管理井井有條。在計算機網絡中,分層和分解體系也同樣被用在很多的方面。如網絡的通信協議、IP地址等。
1.1 網絡通信協議
在計算機網絡中,網絡通信協常用的為TCP/IP協議。TCP/IP協議是目前世界上應用最為廣泛的協議,它是一組協議的代名詞,還包括許多協議,組成了TCP/IP協議簇。TCP/IP通信協議采用了4層的層級結構,每一層都有特定的作用,呼叫它的下一層所提供的網絡來完成自己的需求。
(1)應用層:應用層為最高層,是應用程序間溝通的層。將數據傳遞給傳輸層,傳輸層協議將數據排序成消息或字節流,以利于在網絡上傳輸。
(2)傳輸層:傳輸層的主要功能是在互聯網中源主機與目的主機的對等實體間建立用于會話的端-端連接。傳輸層的兩個重要的協議TCP和UDP,為應用層提供可靠、有序的數據傳送,并將其傳輸到下一層中。
(3)網絡層:主要處理來自傳輸層的分組發送請求、處理接收的數據報,還要處理互連的路由選擇、流控與擁塞問題。此層負責提供基本的數據封包傳送功能,讓每一個數據包都能夠到達目的主機,如IP協議。
(4)物理層:也是最底層,定義如何使用實際網絡(Ethernet、令牌網等),任何一種低層傳輸協議都可以與網絡層結構。允許主機接入網絡時使用多種協議。
具體看,網絡協議按層劃分,每一層都有特定的職責。每一層內部設計多種網絡協議共同履行該層的職責,如應用層有HTTP、Telnet、FTP等多種協議。下層屏蔽掉不同類別物理網絡的實現細節,從而為上一層提供統一的服務接口。這種分層思想,在現實生活中也經常被采用。
1.2 IP地址的兩級結構
IP地址由網絡號和主機號兩部分構成,這樣做可以簡化分組的轉換過程,采用了分步實現的思路。將IP地址劃分為網絡號和主機號兩個級別,便將分組轉發過程分解為兩個步驟。第一步,根據網絡號分組傳送到目的主機所在的網絡;第二步,到達目的網絡后再根據主機號將分組轉發給目的主機[3]。
1.3 路由選擇
在網絡傳輸過程中,路由的選擇是非常重要的,有相應的路由算法,路由器在進行轉發時,只需要關注網絡號,所以路由表的規模得以大大地縮小。這樣設計降低了路由器對存儲空間的需求,而且加快了分組的轉發速度。
轉發時,同樣采用了分布的方法。將從發送端到接收端的完整路徑劃分為若干段。路由器在收到分組后,根據分組中的目的地址將其轉發給予相鄰的某個路由器。路由器不用了解分組轉發的完整路徑,只需要關心分組的下一個目的地即可。
2 計算思維共享與沖突避免在計算機網絡中的應用
在計算機設計中,共享思維使用的非常多,如所有的計算共享一個CPU,共享打印機,三網合一等等。在計算機網絡中,共享也被廣泛使用。共享的目的是提高使用率,降低成本,提高性價比。但在共享的同時,會引起沖突的狀況,比如一個CPU正在處理一個進程時,突然出現了另外一個進程也需要處理,這就要發生沖突了。所以,在共享軟硬件資源的同時,要更好的避免沖突的發生,避免出現拒絕服務和錯亂的情況。
2.1 多路復用技術在網絡中的使用
在網絡傳輸數據的過程中,一根網線可以只給一個用戶提供數據的傳輸,也可以給一棟樓的用戶使用,如果是主干道,是給一個城市、一個省份提供數據的傳輸,這就是共享。如我們常說的帶寬,是在數據總流量中拿出一定的流量如(10M、100M)等供某個用戶或單位使用。
信道復用主要根據傳輸信號的不同分為頻分多路復用、時分多路復用、波分多路復用和碼分多路復用等。頻分多路復用是使用不同的頻帶,如廣播中常說的某某臺為多少MHZ,即這個頻率固定為這個臺使用,用于與其他臺區分和混淆。波分多路復用與頻分多路復用非常類似,不過傳送的信號為光信號。
時分多路復用是將時間劃分為一段段等長的時分復用幀,每個用戶占用固定的幀。每個用戶所占用的幀都是按照一定的周期重復出現的,所以不會發生沖突。在CPU的分配原理中,使用時依據時間片對需要提供服務的進程進行處理,這樣每個進程都能夠進行處理,這充分體現了共享。但由于進程的重要程度不同,所以處理的優先級別不同,在一定程度上能夠有效的避免沖突。
2.2 網絡數據傳輸過程中的沖突處理
在使用計算機時,會產生各種沖突,如計算機名稱重復產生沖突,MAC地址重復,IP地址重復等。以太網為例,常用的介質訪問控制方法為具有沖突檢測的載波監聽多路訪問。當兩個數據幀同時被發送到物理傳輸介質上,并完全或部分重疊時,就發生了沖突。當沖突發生時,物理網段上的數據都不再有效。因此,當以太網的規模增大時,就要采取措施來控制沖突的擴散。將采用網橋和交換機將網絡分段,將一個大的沖突域劃分為若干小沖突域。在進行傳送時,交換機將各個端口連接的網絡分割成各自獨立的沖突域,能夠同時提供多個獨立通信信道,比傳統的多端口集線器提供更好的帶寬。
同時在傳送時大多采用存儲轉發機制,交換機在轉發前必須接收整個數據幀,并進行錯誤校驗,如果沒有錯誤則將這一數據幀發往目的地,如果要傳送的數據太多,則排隊等候處理,有效的處理了數據傳輸中的沖突。
3 總結和展望
在生活中,通常會將一個大問題分解為許多小問題逐一解決和實現,如蓋一棟大樓先打地基、設計圖紙、施工、裝修等等一系列規劃和實現。為了節約資源,共享也隨處可見,但伴隨而來的是沖突,所以如何處理沖突也顯得格外重要,如圖書館的書籍屬于公共資源,但是同一本書又無法被兩個人借走[4]。再如購票系統,一樣要處理沖突。
計算機系統設計中廣泛使用計算思維,不斷在計算機網絡中使用,在計算機信息處理、算法設計、程序設計、數據庫管理等多方面都在使用。在本文闡述中僅對計算機網絡的部分知識結合計算思維進行分析,實際中涉及計算思維的更多方面,如簡約、并行、冗余和恢復等都有使用。
參考文獻
[1] 余大品.計算思維教學改革宣言[J].中國大學教學,2013(7):7-10+17.
[2] 教育部高等學校大學計算機課程教學指導委員會.大學生計算機基礎課程教學基本要求[M].北京:高等教育出版社,2016.
[3] 劉喜平.面向計算思維的大學計算機基礎[M].科學出版社,2018.
[4] 劉軍.面向計算思維的程序設計教學實踐[J].計算機教育,2015(14):116-118.
Discussion on the Application of Computational Thinking in Computer Network Knowledge
SUN Qin-hong,SHEN Feng-xian
(Sanjiang university,Department of Computer Science and Engineering,Nanjing? Jiangsu? 210000)
Abstract:Computational thinking is an important part of human thinking, and training students' computational thinking ability is one of the important goals of computer teaching. Based on the computational thinking proposed by professor Zhou Yiqun, this paper analyzes the contents of network protocol, IP address and network data processing based on the teaching practice of computer network, and proposes the use of computer thinking such as stratification and decomposition, sharing and conflict processing in computer network knowledge.
Key words:computer network; Computational thinking; layered