導航:首頁 > 網路連接 > 計算機網路第17講李全龍

計算機網路第17講李全龍

發布時間:2023-02-14 10:35:08

計算機網路知識點

一、計算機網路概述

1.1 計算機網路的分類

按照網路的作用范圍:廣域網(WAN)、城域網(MAN)、區域網(LAN);

按照網路使用者:公用網路、專用網路。

1.2 計算機網路的層次結構

TCP/IP四層模型與OSI體系結構對比:

1.3 層次結構設計的基本原則

各層之間是相互獨立的;

每一層需要有足夠的靈活性;

各層之間完全解耦。

1.4 計算機網路的性能指標

速率:bps=bit/s 時延:發送時延、傳播時延、排隊時延、處理時延 往返時間RTT:數據報文在端到端通信中的來回一次的時間。

二、物理層

物理層的作用:連接不同的物理設備,傳輸比特流。該層為上層協議提供了一個傳輸數據的可靠的物理媒體。簡單的說,物理層確保原始的數據可在各種物理媒體上傳輸。

物理層設備:

中繼器【Repeater,也叫放大器】:同一區域網的再生信號;兩埠的網段必須同一協議;5-4-3規程:10BASE-5乙太網中,最多串聯4個中繼器,5段中只能有3個連接主機;

集線器:同一區域網的再生、放大信號(多埠的中繼器);半雙工,不能隔離沖突域也不能隔離廣播域。

信道的基本概念:信道是往一個方向傳輸信息的媒體,一條通信電路包含一個發送信道和一個接受信道。

單工通信信道:只能一個方向通信,沒有反方向反饋的信道;

半雙工通信信道:雙方都可以發送和接受信息,但不能同時發送也不能同時接收;

全雙工通信信道:雙方都可以同時發送和接收。

三、數據鏈路層

3.1 數據鏈路層概述

數據鏈路層在物理層提供的服務的基礎上向網路層提供服務,其最基本的服務是將源自網路層來的數據可靠地傳輸到相鄰節點的目標機網路層。數據鏈路層在不可靠的物理介質上提供可靠的傳輸。

該層的作用包括: 物理地址定址、數據的成幀、流量控制、數據的檢錯、重發 等。

有關數據鏈路層的重要知識點:

數據鏈路層為網路層提供可靠的數據傳輸;

基本數據單位為幀;

主要的協議:乙太網協議;

兩個重要設備名稱:網橋和交換機。

封裝成幀:「幀」是 數據鏈路層 數據的基本單位:

透明傳輸:「透明」是指即使控制字元在幀數據中,但是要當做不存在去處理。即在控制字元前加上轉義字元ESC。

3.2 數據鏈路層的差錯監測

差錯檢測:奇偶校驗碼、循環冗餘校驗碼CRC

奇偶校驗碼–局限性:當出錯兩位時,檢測不到錯誤。

循環冗餘檢驗碼:根據傳輸或保存的數據而產生固定位數校驗碼。

3.3 最大傳輸單元MTU

最大傳輸單元MTU(Maximum Transmission Unit),數據鏈路層的數據幀不是無限大的,數據幀長度受MTU限制.

路徑MTU:由鏈路中MTU的最小值決定。

3.4 乙太網協議詳解

MAC地址:每一個設備都擁有唯一的MAC地址,共48位,使用十六進製表示。

乙太網協議:是一種使用廣泛的區域網技術,是一種應用於數據鏈路層的協議,使用乙太網可以完成相鄰設備的數據幀傳輸:

區域網分類:

Ethernet乙太網IEEE802.3:

乙太網第一個廣泛部署的高速區域網

乙太網數據速率快

乙太網硬體價格便宜,網路造價成本低

乙太網幀結構:

類型:標識上層協議(2位元組)

目的地址和源地址:MAC地址(每個6位元組)

數據:封裝的上層協議的分組(46~1500位元組)

CRC:循環冗餘碼(4位元組)

乙太網最短幀:乙太網幀最短64位元組;乙太網幀除了數據部分18位元組;數據最短46位元組;

MAC地址(物理地址、區域網地址)

MAC地址長度為6位元組,48位;

MAC地址具有唯一性,每個網路適配器對應一個MAC地址;

通常採用十六進製表示法,每個位元組表示一個十六進制數,用 - 或 : 連接起來;

MAC廣播地址:FF-FF-FF-FF-FF-FF。

四、網路層

網路層的目的是實現兩個端系統之間的數據透明傳送,具體功能包括定址和路由選擇、連接的建立、保持和終止等。數據交換技術是報文交換(基本上被分組所替代):採用儲存轉發方式,數據交換單位是報文。

網路層中涉及眾多的協議,其中包括最重要的協議,也是TCP/IP的核心協議——IP協議。IP協議非常簡單,僅僅提供不可靠、無連接的傳送服務。IP協議的主要功能有:無連接數據報傳輸、數據報路由選擇和差錯控制。

與IP協議配套使用實現其功能的還有地址解析協議ARP、逆地址解析協議RARP、網際網路報文協議ICMP、網際網路組管理協議IGMP。具體的協議我們會在接下來的部分進行總結,有關網路層的重點為:

1、網路層負責對子網間的數據包進行路由選擇。此外,網路層還可以實現擁塞控制、網際互連等功能;

2、基本數據單位為IP數據報;

3、包含的主要協議:

IP協議(Internet Protocol,網際網路互聯協議);

ICMP協議(Internet Control Message Protocol,網際網路控制報文協議);

ARP協議(Address Resolution Protocol,地址解析協議);

RARP協議(Reverse Address Resolution Protocol,逆地址解析協議)。

4、重要的設備:路由器

路由器相關協議

4.1 IP協議詳解

IP網際協議是 Internet 網路層最核心的協議。虛擬互聯網路的產生:實際的計算機網路錯綜復雜;物理設備通過使用IP協議,屏蔽了物理網路之間的差異;當網路中主機使用IP協議連接時,無需關注網路細節,於是形成了虛擬網路。

IP協議使得復雜的實際網路變為一個虛擬互聯的網路;並且解決了在虛擬網路中數據報傳輸路徑的問題。

其中,版本指IP協議的版本,佔4位,如IPv4和IPv6;首部位長度表示IP首部長度,佔4位,最大數值位15;總長度表示IP數據報總長度,佔16位,最大數值位65535;TTL表示IP數據報文在網路中的壽命,佔8位;協議表明IP數據所攜帶的具體數據是什麼協議的,如TCP、UDP。

4.2 IP協議的轉發流程

4.3 IP地址的子網劃分

A類(8網路號+24主機號)、B類(16網路號+16主機號)、C類(24網路號+8主機號)可以用於標識網路中的主機或路由器,D類地址作為組廣播地址,E類是地址保留。

4.4 網路地址轉換NAT技術

用於多個主機通過一個公有IP訪問訪問互聯網的私有網路中,減緩了IP地址的消耗,但是增加了網路通信的復雜度。

NAT 工作原理:

從內網出去的IP數據報,將其IP地址替換為NAT伺服器擁有的合法的公共IP地址,並將替換關系記錄到NAT轉換表中;

從公共互聯網返回的IP數據報,依據其目的的IP地址檢索NAT轉換表,並利用檢索到的內部私有IP地址替換目的IP地址,然後將IP數據報轉發到內部網路。

4.5 ARP協議與RARP協議

地址解析協議 ARP(Address Resolution Protocol):為網卡(網路適配器)的IP地址到對應的硬體地址提供動態映射。可以把網路層32位地址轉化為數據鏈路層MAC48位地址。

ARP 是即插即用的,一個ARP表是自動建立的,不需要系統管理員來配置。

RARP(Reverse Address Resolution Protocol)協議指逆地址解析協議,可以把數據鏈路層MAC48位地址轉化為網路層32位地址。

4.6 ICMP協議詳解

網際控制報文協議(Internet Control Message Protocol),可以報告錯誤信息或者異常情況,ICMP報文封裝在IP數據報當中。

ICMP協議的應用:

Ping應用:網路故障的排查;

Traceroute應用:可以探測IP數據報在網路中走過的路徑。

4.7網路層的路由概述

關於路由演算法的要求:正確的完整的、在計算上應該盡可能是簡單的、可以適應網路中的變化、穩定的公平的。

自治系統AS: 指處於一個管理機構下的網路設備群,AS內部網路自治管理,對外提供一個或多個出入口,其中自治系統內部的路由協議為內部網關協議,如RIP、OSPF等;自治系統外部的路由協議為外部網關協議,如BGP。

靜態路由: 人工配置,難度和復雜度高;

動態路由:

鏈路狀態路由選擇演算法LS:向所有隔壁路由發送信息收斂快;全局式路由選擇演算法,每個路由器計算路由時,需構建整個網路拓撲圖;利用Dijkstra演算法求源端到目的端網路的最短路徑;Dijkstra(迪傑斯特拉)演算法

距離-向量路由選擇演算法DV:向所有隔壁路由發送信息收斂慢、會存在迴路;基礎是Bellman-Ford方程(簡稱B-F方程);

4.8 內部網關路由協議之RIP協議

路由信息協議 RIP(Routing Information Protocol)【應用層】,基於距離-向量的路由選擇演算法,較小的AS(自治系統),適合小型網路;RIP報文,封裝進UDP數據報。

RIP協議特性:

RIP在度量路徑時採用的是跳數(每個路由器維護自身到其他每個路由器的距離記錄);

RIP的費用定義在源路由器和目的子網之間;

RIP被限制的網路直徑不超過15跳;

和隔壁交換所有的信息,30主動一次(廣播)。

4.9 內部網關路由協議之OSPF協議

開放最短路徑優先協議 OSPF(Open Shortest Path First)【網路層】,基於鏈路狀態的路由選擇演算法(即Dijkstra演算法),較大規模的AS ,適合大型網路,直接封裝在IP數據報傳輸。

OSPF協議優點:

安全;

支持多條相同費用路徑;

支持區別化費用度量;

支持單播路由和多播路由;

分層路由。

RIP與OSPF的對比(路由演算法決定其性質):

4.10外部網關路由協議之BGP協議

BGP(Border Gateway Protocol)邊際網關協議【應用層】:是運行在AS之間的一種協議,尋找一條好路由:首次交換全部信息,以後只交換變化的部分,BGP封裝進TCP報文段.

五、傳輸層

第一個端到端,即主機到主機的層次。傳輸層負責將上層數據分段並提供端到端的、可靠的或不可靠的傳輸。此外,傳輸層還要處理端到端的差錯控制和流量控制問題。

傳輸層的任務是根據通信子網的特性,最佳的利用網路資源,為兩個端系統的會話層之間,提供建立、維護和取消傳輸連接的功能,負責端到端的可靠數據傳輸。在這一層,信息傳送的協議數據單元稱為段或報文。

網路層只是根據網路地址將源結點發出的數據包傳送到目的結點,而傳輸層則負責將數據可靠地傳送到相應的埠。

有關網路層的重點:

傳輸層負責將上層數據分段並提供端到端的、可靠的或不可靠的傳輸以及端到端的差錯控制和流量控制問題;

包含的主要協議:TCP協議(Transmission Control Protocol,傳輸控制協議)、UDP協議(User Datagram Protocol,用戶數據報協議);

重要設備:網關。

5.1 UDP協議詳解

UDP(User Datagram Protocol: 用戶數據報協議),是一個非常簡單的協議。

UDP協議的特點:

UDP是無連接協議;

UDP不能保證可靠的交付數據;

UDP是面向報文傳輸的;

UDP沒有擁塞控制;

UDP首部開銷很小。

UDP數據報結構:

首部:8B,四欄位/2B【源埠 | 目的埠 | UDP長度 | 校驗和】 數據欄位:應用數據

5.2 TCP協議詳解

TCP(Transmission Control Protocol: 傳輸控制協議),是計算機網路中非常復雜的一個協議。

TCP協議的功能:

對應用層報文進行分段和重組;

面向應用層實現復用與分解;

實現端到端的流量控制;

擁塞控制;

傳輸層定址;

對收到的報文進行差錯檢測(首部和數據部分都檢錯);

實現進程間的端到端可靠數據傳輸控制。

TCP協議的特點:

TCP是面向連接的協議;

TCP是面向位元組流的協議;

TCP的一個連接有兩端,即點對點通信;

TCP提供可靠的傳輸服務;

TCP協議提供全雙工通信(每條TCP連接只能一對一);

5.2.1 TCP報文段結構:

最大報文段長度:報文段中封裝的應用層數據的最大長度。

TCP首部:

序號欄位:TCP的序號是對每個應用層數據的每個位元組進行編號

確認序號欄位:期望從對方接收數據的位元組序號,即該序號對應的位元組尚未收到。用ack_seq標識;

TCP段的首部長度最短是20B ,最長為60位元組。但是長度必須為4B的整數倍

TCP標記的作用:

5.3 可靠傳輸的基本原理

基本原理:

不可靠傳輸信道在數據傳輸中可能發生的情況:比特差錯、亂序、重傳、丟失

基於不可靠信道實現可靠數據傳輸採取的措施:

差錯檢測:利用編碼實現數據包傳輸過程中的比特差錯檢測 確認:接收方向發送方反饋接收狀態 重傳:發送方重新發送接收方沒有正確接收的數據 序號:確保數據按序提交 計時器:解決數據丟失問題;

停止等待協議:是最簡單的可靠傳輸協議,但是該協議對信道的利用率不高。

連續ARQ(Automatic Repeat reQuest:自動重傳請求)協議:滑動窗口+累計確認,大幅提高了信道的利用率。

5.3.1TCP協議的可靠傳輸

基於連續ARQ協議,在某些情況下,重傳的效率並不高,會重復傳輸部分已經成功接收的位元組。

5.3.2 TCP協議的流量控制

流量控制:讓發送方發送速率不要太快,TCP協議使用滑動窗口實現流量控制。

5.4 TCP協議的擁塞控制

擁塞控制與流量控制的區別:流量控制考慮點對點的通信量的控制,而擁塞控制考慮整個網路,是全局性的考慮。擁塞控制的方法:慢啟動演算法+擁塞避免演算法。

慢開始和擁塞避免:

【慢開始】擁塞窗口從1指數增長;

到達閾值時進入【擁塞避免】,變成+1增長;

【超時】,閾值變為當前cwnd的一半(不能<2);

再從【慢開始】,擁塞窗口從1指數增長。

快重傳和快恢復:

發送方連續收到3個冗餘ACK,執行【快重傳】,不必等計時器超時;

執行【快恢復】,閾值變為當前cwnd的一半(不能<2),並從此新的ssthresh點進入【擁塞避免】。

5.5 TCP連接的三次握手(重要)

TCP三次握手使用指令:

面試常客:為什麼需要三次握手?

第一次握手:客戶發送請求,此時伺服器知道客戶能發;

第二次握手:伺服器發送確認,此時客戶知道伺服器能發能收;

第三次握手:客戶發送確認,此時伺服器知道客戶能收。

建立連接(三次握手):

第一次: 客戶向伺服器發送連接請求段,建立連接請求控制段(SYN=1),表示傳輸的報文段的第一個數據位元組的序列號是x,此序列號代表整個報文段的序號(seq=x);客戶端進入 SYN_SEND (同步發送狀態);

第二次: 伺服器發回確認報文段,同意建立新連接的確認段(SYN=1),確認序號欄位有效(ACK=1),伺服器告訴客戶端報文段序號是y(seq=y),表示伺服器已經收到客戶端序號為x的報文段,准備接受客戶端序列號為x+1的報文段(ack_seq=x+1);伺服器由LISTEN進入SYN_RCVD (同步收到狀態);

第三次: 客戶對伺服器的同一連接進行確認.確認序號欄位有效(ACK=1),客戶此次的報文段的序列號是x+1(seq=x+1),客戶期望接受伺服器序列號為y+1的報文段(ack_seq=y+1);當客戶發送ack時,客戶端進入ESTABLISHED 狀態;當服務收到客戶發送的ack後,也進入ESTABLISHED狀態;第三次握手可攜帶數據;

5.6 TCP連接的四次揮手(重要)

釋放連接(四次揮手)

第一次: 客戶向伺服器發送釋放連接報文段,發送端數據發送完畢,請求釋放連接(FIN=1),傳輸的第一個數據位元組的序號是x(seq=x);客戶端狀態由ESTABLISHED進入FIN_WAIT_1(終止等待1狀態);

第二次: 伺服器向客戶發送確認段,確認字型大小段有效(ACK=1),伺服器傳輸的數據序號是y(seq=y),伺服器期望接收客戶數據序號為x+1(ack_seq=x+1);伺服器狀態由ESTABLISHED進入CLOSE_WAIT(關閉等待);客戶端收到ACK段後,由FIN_WAIT_1進入FIN_WAIT_2;

第三次: 伺服器向客戶發送釋放連接報文段,請求釋放連接(FIN=1),確認字型大小段有效(ACK=1),表示伺服器期望接收客戶數據序號為x+1(ack_seq=x+1);表示自己傳輸的第一個位元組序號是y+1(seq=y+1);伺服器狀態由CLOSE_WAIT 進入 LAST_ACK (最後確認狀態);

第四次: 客戶向伺服器發送確認段,確認字型大小段有效(ACK=1),表示客戶傳輸的數據序號是x+1(seq=x+1),表示客戶期望接收伺服器數據序號為y+1+1(ack_seq=y+1+1);客戶端狀態由FIN_WAIT_2進入TIME_WAIT,等待2MSL時間,進入CLOSED狀態;伺服器在收到最後一次ACK後,由LAST_ACK進入CLOSED;

為什麼需要等待2MSL?

最後一個報文沒有確認;

確保發送方的ACK可以到達接收方;

2MSL時間內沒有收到,則接收方會重發;

確保當前連接的所有報文都已經過期。

六、應用層

為操作系統或網路應用程序提供訪問網路服務的介面。應用層重點:

數據傳輸基本單位為報文;

包含的主要協議:FTP(文件傳送協議)、Telnet(遠程登錄協議)、DNS(域名解析協議)、SMTP(郵件傳送協議),POP3協議(郵局協議),HTTP協議(Hyper Text Transfer Protocol)。

6.1 DNS詳解

DNS(Domain Name System:域名系統)【C/S,UDP,埠53】:解決IP地址復雜難以記憶的問題,存儲並完成自己所管轄范圍內主機的 域名 到 IP 地址的映射。

域名解析的順序:

【1】瀏覽器緩存,

【2】找本機的hosts文件,

【3】路由緩存,

【4】找DNS伺服器(本地域名、頂級域名、根域名)->迭代解析、遞歸查詢。

IP—>DNS服務—>便於記憶的域名

域名由點、字母和數字組成,分為頂級域(com,cn,net,gov,org)、二級域(,taobao,qq,alibaba)、三級域(www)(12-2-0852)

6.2 DHCP協議詳解

DHCP(Dynamic Configuration Protocol:動態主機設置協議):是一個區域網協議,是應用UDP協議的應用層協議。作用:為臨時接入區域網的用戶自動分配IP地址。

6.3 HTTP協議詳解

文件傳輸協議(FTP):控制連接(埠21):傳輸控制信息(連接、傳輸請求),以7位ASCII碼的格式。整個會話期間一直打開。

HTTP(HyperText Transfer Protocol:超文本傳輸協議)【TCP,埠80】:是可靠的數據傳輸協議,瀏覽器向伺服器發收報文前,先建立TCP連接,HTTP使用TCP連接方式(HTTP自身無連接)。

HTTP請求報文方式:

GET:請求指定的頁面信息,並返回實體主體;

POST:向指定資源提交數據進行處理請求;

DELETE:請求伺服器刪除指定的頁面;

HEAD:請求讀取URL標識的信息的首部,只返回報文頭;

OPETION:請求一些選項的信息;

PUT:在指明的URL下存儲一個文檔。

6.3.1 HTTP工作的結構

6.3.2 HTTPS協議詳解

HTTPS(Secure)是安全的HTTP協議,埠號443。基於HTTP協議,通過SSL或TLS提供加密處理數據、驗證對方身份以及數據完整性保護

原文地址:https://blog.csdn.net/Royalic/article/details/119985591

⑵ 關於計算機網路方面的書籍

1. 計算機網路常識書籍
計算機網路常識書籍 1.計算機網路入門需要看那些書籍
1)編碼:隱匿在計算機軟硬體背後的語言,此書從信息的編碼,數字的不同進製表示,到計算機採用的二進制機器級表示開始,到用電路構建一個簡單的加法器,觸發器,計數器,存儲器,甚至一個具有控制器,運算器,存儲器的簡易CPU,娓娓道來,真是醍醐灌頂。最後還談到了圖形界面的原理。此書作者更是被傳為聖經的《Windows程序設計》的作者Charles Petzold。讀完此書可對計算機硬體的原理與設計有一全面深入之認識,猶如身處群山之巔,一覽無余。

2)深入理解計算機系統 上一本《編碼》通俗易懂,即使沒有計算機相關知識也能懂,但缺乏一些計算機機制的介紹。此書是國外著名的介紹計算機系統方面的書,從程序員的角度帶你暢游計算機系統架構。涉及程序的機器級表示(機器碼,匯編),處理器體系結構,存儲器結構,系統IO,網路編程,並發編程,以及程序性能的優化。讀完此書可對計算機系統,程序設計有一深層次了解。

3)就C語言而言,K&R的 C程序設計語言 的無疑是最好的參考書,不過對初學者來說還是有一定難度,輔以諸如 C和指針 ,C陷阱與缺陷 會有更好的效果。當然多寫程序才是王道,多寫才能發現問題,加深認識。

4)Debug Hacks 此書介紹GDB調試工具及調試技巧,本人現在主要就是使用gcc gdb啦。此書助你更好的找出臭蟲。

6)數據結構與演算法分析 介紹演算法和數據結構的書籍很多,但本人就是用這本書學習的,所以推薦。此書的前3章和第7章就介紹了題主要求的一些數據結構和演算法,後面幾張介紹樹,排序,圖論演算法,及一些高級數據結構。讀完此書將助你設計更優美的程序。
2.計算機網路經典書籍
《tcpip詳解》分三卷,國外經典計算機教材,有中文譯版,不過不適合你的。

《計算機網路》也分很多種,如果你要考網工的話或者你想學習網路推薦你看以下的書籍:

網路工程教程(第二版) 雷震甲 主遍 清華大學出版 (這本太深了,不過內容全)網工指定教材

網路工程必讀系列 王達 這套書我看了兩遍,實在不錯。。。

計算機網路第五版 謝希仁 主遍 謝希仁同時還出了很多書都關於TCP/IP的書籍,具體書名我忘記,我覺得他講解得思路清晰,易理解,適合基礎差的。

計算機網路第四版,這是國外經典計算機網路經典教程,作者都是英文名字(具體我忘記了) ,我以前我學時很喜歡看這本。
3.計算機網路方面有哪些書籍值得推薦
計算機網路第五版,謝希仁的,個人感覺是國內最好的初級書籍。

如果想對網路有個清晰、全面的認識,可以閱讀下面三本書籍: 第一本就是潘愛民翻譯的Andrew S.Tanenbaum的《計算機網路》,此書講明白了網路之道,即計算機網路通信的主要原理; 第二本是W.Richard Stevens的《TCP/IP詳解卷一:協議》,此書講明白了網路之術,即TCP/IP協議簇的工作過程; 第三本是Douglas E.er的《計算機網路與網際網路》,此書嘗試在更廣泛意義上解答「計算機網路和網際網路是如何工作的」這一基本問題,解釋了協議是如何使用硬體和應用是如何使用協議來滿足用戶的需求。
4.有關計算機編程,網路基礎知識的書籍
建議你從C語言開始學,學好了它以後學其他語言會很容易上手

推薦你先看譚浩強的《C語言程序設計》先,這是一部非常好的C語言書籍,慢慢來學習程序設計是一個非常漫長的過程,不要著急,一本書多看兩遍三遍,學會交叉學習法,在學習C的過程中,可以看看數據結構,編譯原理,操作系統等書籍,對編成都是很有幫助的。最開始學習的時候,先不要編一些比較大的程序,多編一些小程序,比如數組運算,字元組合等等,指針是C語言的精華,是比較復雜的部分。如果指針這部分都可以熟練的應用,那麼C語言里你還有什麼不明白的嗎,我相信你,你一定能學習好C語言的。

可以按照C——C++——JAVA的順序學習,C++的學習是很有難度的,類,標准庫,多態,繼承等等比較抽象難道懂的概念,雖然他秉承了C語言的風格,但是有很多很多是C語言不具備的,要多看書,上機實踐也是必不可少的。《C++編程思想》,《C++標准庫》,這些書都非常好,內容也很全面,常式書籍也是必不可少的,多看源代碼對編程是很有幫助的,也會少走很多彎路。總之,C++的學習是一個比較漫長的過程,大概需要兩年的時間,這只是底限,如果想學通,學精,還需要更多的時間。

我向你推薦一些C++經典書籍:

c++程序設計教程

c++編程思想

c++大學教程

c++程序設計語言

數據結構演算法與應用c++語言描述

c++標准模板庫------自修教程與參考手冊

泛型編程與STL

深度探索c++對象模型

設計模式---可復用面向對象軟體的基礎

重構---改善既有代碼的設計

Essential c++

Effective c++

More Effctive c++

C++ primer

前五本應該屬於入門書籍,後面的屬於學習難度比較大的,想提高C++的編程能力,看看這些書籍有好處。建議你把編程思想這本書多看看。多做練習題,對提高編程水平的幫助是很大的。

其實語言是相通的,一門語言學會了,學習其他語言就比較容易了。

業界有這樣一種說法,因為JAVA這門語言包含了C++的一些特性,掌握了C++,就等於掌握了JAVA的80%,

在掌握了C++之後(我說的掌握指的是,可以熟練用C++編程序了,並沒有要求你完全掌握C++的所有部分,沒有人能達到這一點,因為C++太龐大了,如果能堅持不懈的學習C++兩年到三年的時間了,你就可以學習其他的語言了)可以試著學習一些其他的語言,如JAVA,VC++等等比較復雜的語言.

這時候可以說你已經對程序設計語言有個大體的認識了,可以明確自己學習的方向,根據自己的學習情況而定,是學習一些自己比較感興趣的語言啊(從興趣出發),還是為了找工作啊,開始進行更深入的學習.比如學習windows下的框架編程和編程等等比較復雜的語言.

如果是為了找工作的話你一定學好C,C++,JAVA三門語言.

在我國目前的軟體開發行業中,C,C++,JAVA的需求量是非常大的.

好了,說了這么多,可以參考一下,為自己做個學習計劃,要對自己有信心,最後祝你在學習編程的道路上走的更好更遠,祝你學有所成!!
5.計算機網路技術的推薦書籍
如果想對網路有個清晰、全面的認識,可以閱讀三本書籍:

第一本就是潘愛民翻譯的Andrew S.Tanenbaum的《計算機網路》,此書講明白了網路之道,即計算機網路通信的主要原理;

第二本是W.Richard Stevens的《TCP/IP詳解卷一:協議》,此書講明白了網路之術,即TCP/IP協議簇的工作過程;

第三本是Douglas E.er的《計算機網路與網際網路》,此書嘗試在更廣泛意義上解答「計算機網路和網際網路是如何工作的」這一基本問題,解釋了協議是如何使用硬體和應用是如何使用協議來滿足用戶的需求。
6.推薦計算機基礎知識學習的書籍
1、《計算機基礎(第二版)》——姜岩、王秀玲

本書介紹了信息與計算機的基礎知識、Windows XP操作系統的基本操作和基本使用知識、Word

2003文字處理軟體的基本知識、Excel 2003電子表格處理軟體的基本知識和PowerPoint 2003文檔

演示軟體等知識做了簡單的介紹。

2、《計算機應用基礎》 ——劉錫軒、丁恆、侯曉音

本書是為非計算機專業類學生提供計算機一般應用所必需的基礎知識、能力和素質的課程。本書滿

足普通高等院校培養「應用型人才」的教學宗旨,內容豐富,與時俱進,實用性強。

3、《計算機應用基礎》——楊飛宇,孫海波

本書主要介紹了計算機組裝與維護、計算機網路技術、電子文檔製作、電子報表製作和演示文稿制

作。

4、《計算機應用基礎》——張 明、王 翠、張和偉

本書採用任務驅動的方式進行編寫,內容強調操作性和實用性。全書涵蓋計算機基礎知識、

Windows XP操作系統、Word 2003文字處理軟體、Excel 2003電子表格處理軟體和PowerPoint

2003演示文稿製作軟體等內容。

5、《深入理解計算機系統》————布賴恩特

本書主要介紹了計算機系統的基本概念,包括最底層的內存中的數據表示、流水線指令的構成、虛

擬存儲器、編譯系統、動態載入庫,以及用戶應用等。書中提供了大量實際操作,可以幫助讀者更

好地理解程序執行的方式,改進程序的執行效率。

6、《計算機應用基礎》——武馬群

本書主要介紹了計算機基礎知識、操作系統Windows XP、網際網路(Inter)應用、文字處理軟體

Word 2003應用、電子表格處理軟體Excel 2003應用、多媒體軟體應用、演示文稿軟PowerPoint

2003應用等內容。

⑶ 計算機網路——概要

從廣義上講,目前普遍使用的傳輸技術有兩種,分別是廣播式鏈路和點到點鏈路。

點到點鏈路——點到點鏈路將一對單獨的機器連接起來。在一個由點到點鏈路組成的網路中,為了從源端到達接收方,短消息必須首先訪問一個或多個中間機器,這種短消息在某些情況下稱為數據包或包。點-點傳輸只能有一個發送方和一個接收方,有時候也稱為單播。

廣播式鏈路——在一個廣播網路上,通信信道被網路上的所有機器所共享;任何一台機器發出的數據包能被所有其他任何機器收到。每個數據包的地址欄位指定了預期的接收方。當一個機器收到數據包時,它要檢查地址欄位。如果包的目的地就是接收機器,則該機器要處理此數據包;如果包的目的地址是某台其他機器,則該機器就忽略此數據包。

為了降低網路設計的復雜性,絕大多數網路都組織成一個層次棧或分級棧,每一層都建立在其下一層的基礎之上。層的個數、每一層的名字、每一層的內容以及每一層的功能各個網路不盡相同。每一層的目的是向上一層提供特定的服務,而把如何實現這些服務的細節對上一層加以屏蔽。從某種意義上講,每一層都是一種虛擬機,它向上一層提供特定的服務。

一台機器的第n層與另一台機器的第n層進行對話,該對話中使用的規則和約定統稱為第n層協議。所謂協議,就是指通信雙方就如何進行通信的一種約定。下圖是一個5層網路。不同機器上構成相應層次的實體稱為對等體。這些對等體可能是軟體過程、硬體設備。

實際上,數據並不是從一台機器的第n層直接傳遞到另一台機器的第n層。相反,每一層都將數據和控制信息傳遞給它的下一層,這樣一直傳遞到最低層。第1層下面是物理介質,通過它進行實際的通信。在上圖中,虛線表示虛擬通信,實現表示物理通信。在每一對相鄰層次之間的是介面,介面定義了下層向上層提供哪些原語操作和服務。

下層可以向上層提供兩種不同類型的服務:面向連接的服務和無連接的服務。

面向連接的服務——面向連接的服務是按照電話系統建模的。為了使用面向連接的網路服務,服務用戶首先必須建立一個連接,然後使用該連接傳輸數據,最後釋放該連接。這種連接最本質的方面在於它像一個管道:發送方把對象(數據位)壓入管道的一端,接收方在管道的另一端將它們取出來。在大多數情況下,數據位保持原來的順序,所以數據位都會按照發送的數據到達。

無連接服務——無連接服務是按照郵政系統建模的。每個報文(信件)都攜帶了完整的目標地址,每個報文都有系統中的中間節點路由,而且路由獨立於後續報文。如果中間節點只能在收到報文的全部內容之後再將該報文發送給下一個節點,這種處理方式為存儲-轉發交換。有別與此的另一種方式是在報文還沒有被全部接收完畢之前就向下一個節點傳輸,這種處理方式稱為直通式交換。通常來說,當兩個報文被發往同一個目的地時,首先被發送的報文會到達。然而,先發送的報文可能被延遲,因而後發送的的報文比它先到達,這種情況也是有可能發生的。

一個服務由一組原語正式說明,用戶進程通過這些原語(操作)來訪問該服務。原語告訴服務要執行某個動作,或者將對等實體所執行的動作報告給用戶。可用的原語取決於底層所提供的服務。面向連接的原語與無連接服務的原語是不同的。原語示例如下:為簡單面向連接服務提供的6個服務原語。

這些原語在客戶機-伺服器環境下可用來實現「請求-應答」互動式應用。

服務和協議是兩個截然不同的概念。服務是指某一層向它上一層提供的一組原語(操作)。服務定義了該層准備代表其用戶執行哪些操作,但是它並不涉及如何實現這些操作。服務與兩層之間的介面有關,低層是服務提供者,而上層是服務用戶。

協議是一組規則,規定了同一層上對等實體之間所交換的數據包或者報文的格式和含義。對等實體利用協議來實現它們的服務定義,它們可以自由的改變協議,只要不改變呈現給它們用戶的服務即可。按照這種方式,服務和協議是完全相分離的。

服務涉及層與層之間的介面,協議涉及不同機器上兩個對等實體之間發送的數據包。

該協議基於國際標准化組織(ISO,International Standards Organization)的提案。這個模型稱為ISO的開放系統互連(OSI,Open Systems Interconnection)參考模型,因為它涉及如何連接開放的系統——即那些為了與其他系統通信而開放的系統。

OSI模型有7層,適用於這7層的基本原則如下:
(1)應該在需要一個不同抽象體的地方創建一層。
(2)每一層應該執行一個明確定義的功能。
(3)每一層功能的選擇應該向定義國際標准化協議的目標看齊。
(4)層與層邊界的選擇應該使跨越介面的信息流最小。
(5)層數應該足夠多,保證不同的功能不會被混雜在同一層中,但同時層數又不能太多,以免體系結構變得過於龐大。

OSI參考模型本身並不是一個網路體系結構,因為它並沒有定義每一層的服務和所用的協議。它只是指明了每一層應該做些什麼事。
物理層——關注在一條通信信道上傳輸原始比特。
數據鏈路層——主要任務是將一個原始的傳輸設施轉變成一條沒有漏檢傳輸錯誤的線路。
網路層——主要功能是控制子網的運行。
傳輸層——接收來自上一層的數據,在必要的時候把這些數據分割成較小的單元,然後把這些數據單元傳遞給網路層,並且確定這些數據單元正確地到達另一端。傳輸層是真正的端到端的層,它自始至終將數據從源端攜帶到接收方。
會話層——允許不同機器上的用戶建立會話。會話通常提供各種服務,包括對話控制、令牌管理(禁止雙方同時執行同一個關鍵操作),以及同步功能。
表示層——表示層以下的各層主要關注的是如何傳遞數據位,而表示層關注的是所傳遞信息的語法和語義。不同的計算機可能有不同的內部數據表示法,為了讓這些計算機能夠進行通信,它們所交換的數據結構必須以一種抽象的方式來定義,同時還應該定義一種「線上」使用的標准編碼方法。表示層管理這些抽象的數據結構,並允許定義和交換更高層的數據結構。
應用層——包含了用戶通常需要的各種各樣的協議。一個得到廣泛使用的應用協議是超文本傳輸協議(HTTP),它是萬維網的基礎。

鏈路層——模型中的最低層。該層描述了鏈路必須完成什麼功能才能滿足無連接的互聯網路層的需求。
互聯網層——是將整個網路體系結構貫穿在一起的關鍵層。它大致對應於OSI的網路層,該層的任務是允許主機將數據包注入到任何網路,並且讓這些數據包獨立的到達接收方(接收方可能在不同的網路上)。互聯網層定義了官方的數據包協議和格式,該協議稱為網際網路協議(IP),與之相伴的還有一個輔助協議,稱為網際網路控制報文協議(ICMP)。
傳輸層——它的設計目標是允許源主機和目標主機上的對等實體進行對話,猶如OSI的傳輸層一樣。這里定義了兩個端到端的傳輸協議。第一個是傳輸控制協議(TCP),它是一個可靠的、面向連接的協議,允許從一台機器發出的位元組流正確無誤地交付到互聯網上的另一台機器。傳輸層的第二個協議是用戶數據報協議(UDP),它是一個不可靠的、無連接的協議,適用於那些不想要TCP的有序性或流量控制功能,而寧可自己提供這些功能的應用程序。UDP被廣泛應用於那些一次性的基於客戶機-伺服器類型的「請求-應答」查詢應用,以及那些及時交付比精確交付更加重要的應用,比如傳輸語音或者視頻。
應用層——在傳輸層之上是應用層,它包含了所有的高層協議

⑷ 《計算機網路(第5版)》pdf下載在線閱讀全文,求百度網盤雲資源

《計算機網路(第5版)》(Andrew S. Tanenbaum)電子書網盤下載免費在線閱讀

鏈接:

提取碼: a47w

書名:計算機網路(第5版)

作者:Andrew S. Tanenbaum

譯者:嚴偉

豆瓣評分:9.0

出版社:清華大學出版社

出版年份:2012-3-1

頁數:739

內容簡介:

本書是國內外使用最廣泛、最權威的計算機網路經典教材。全書按照網路協議模型自下而上(物理層、數據鏈路層、介質訪問控制層、網路層、傳輸層和應用層)有系統地介紹了計算機網路的基本原理,並結合Internet給出了大量的協議實例。在講述網路各層次內容的同時,還與時俱進地引入了最新的網路技術,包括無線網路、3G蜂窩網路、RFID與感測器網路、內容分發與P2P網路、流媒體傳輸與IP語音,以及延遲容忍網路等。另外,本書針對當前網路應用中日益突出的安全問題,用了一整章的篇幅對計算機網路的安全性進行了深入討論,而且把相關內容與最新網路技術結合起來闡述。

本書的適用對象非常廣泛。由於本書的重點立足於計算機網路的基本原理,同時兼顧了Internet體系結構與TCP/IP協議等內容,因此對於學習計算機網路課程的本科生和研究生,本書都是絕佳的教材或教學參考書。本書每章後面給出了大量練習題,有助於教師根據教學目的酌情安排課後練習。此外,本書對於從事網路相關技術研究和網路應用開發的廣大科研工作者也具有重要的參考價值。

作者簡介:

Andrew S.Tanenbaum獲得過美國麻省理工學院的理學學士學位和加利福尼亞大學伯克利分校的哲學博士學位,目前是荷蘭阿姆斯特丹Vrije大學的計算機科學系的教授,並領導著一個計算機系統的研究小組。同時,他還是一家計算與圖象處理學院的院長,這是由幾家大學合作成立的研究生院。盡管社會工作很多,但他並沒有中斷學術研究。多年來,他在編譯技術、操作系統、網路及局域分布式系統方面進行了大量的研究工作。目前的主要研究方向是設計規模達數百萬用戶的廣域分布式系統。在進行這些研究項目的基礎上,他在各種學術雜志及會議上發表了70多篇論文。他同時還是5本計算機專著的作者。

Tanenbaum教授還開發了大量的軟體。他是Amsterdan編譯器的原理設計師,這是一個被廣泛使用的;用來編寫可移植編譯器的工具箱。他領導編寫的MINIX,是一個用於操作系統教學的類UNIX(的小型操作系統。他和他的博士研究生及其他編程人員一道設計的Amoeba分布式操作系統,是一個高性能的微內核分布式操作系統。目前,可在網際網路上免費得到MLNIX及Amoeba,用於教學和研究。

他的一些博士研究生,在獲得學位後繼續進行研究,並取得了更大的成就,贏得了社會的贊譽,對此他深感自豪。人們稱他為桃李滿天下的教育家。

⑸ 求助成人自考計算機應用視頻教學課程下載

信息系統基礎、軟體工程基礎、工作流.wmv,免費下載

鏈接:https://pan..com/s/1cJ93EvpiEJi9IrD3uEc2BQ

提取碼:5l9s

軟體工程是利用工程化的原理和方法指導計算機軟體系統開發、測試和維護的學科,具有知識面廣、實踐性強、不斷發展等特點。本書系統介紹軟體工程的基本概念、原理、方法與技術,全書共11章,可分為四部分:*部分為第1章,簡要介紹軟體工程的發展與過程模型;第二部分包括第2~6章,以瀑布模型為基礎,以結構化方法為主線,介紹軟體工程各階段的任務、過程、方法、工具與測試技術;第三部分包括第7~10章,以瀑布模型為基礎,以面向對象方法為主線,介紹統一建模語言UML、面向對象分析與過程、面向對象設計與建模、軟體測試、軟體維護等;第四部分為第11章,介紹軟體項目管理與CMM。

閱讀全文

與計算機網路第17講李全龍相關的資料

熱點內容
貓路由怎麼連接網路 瀏覽:599
怎麼同一網路手機不同ip 瀏覽:29
社保查詢總是網路異常稍後再試 瀏覽:970
聯通公用網路密碼 瀏覽:361
如何通過網路加盟傳統老中醫 瀏覽:151
生產5g網路配件是什麼 瀏覽:33
電腦怎樣設置無線網路共用網 瀏覽:251
win8如何設置無線網路計費 瀏覽:872
5g網路運營商選哪個 瀏覽:570
網路激活賬號密碼錯誤怎麼解決 瀏覽:971
光纖多少損耗影響網路 瀏覽:194
網路上有哪些新事物 瀏覽:961
扛精網路用語什麼意思 瀏覽:412
別人連接家裡的網路密碼怎麼改 瀏覽:826
計算機網路中端到端時間延遲 瀏覽:927
k12教育網路直播平台有哪些 瀏覽:105
中央網路安全和信息化小組成立 瀏覽:976
網路安全重於泰山的國旗下演講 瀏覽:867
iphone手機信號網路不好 瀏覽:124
共享網路怎麼連接oppo 瀏覽:503

友情鏈接