Linux基礎之計算機網絡

計算機網絡

連接分散計算機設備以實現信息傳遞的系統計算機網絡,是指將地理位置不同的具有獨立功能的多臺計算機及其外部設備,通過通信線路連接起來,在網絡操作系統網絡管理軟件網絡通信協議的管理和協調下,實現資源共享和信息傳遞的計算機系統。 

定義分類

按廣義

計算機網絡也稱計算機通信網。關於計算機網絡的最簡單定義是:一些相互連接的、以共享資源爲目的的、自治的計算機的集合。若按此定義,則早期的面向終端的網絡都不能算是計算機網絡,而只能稱爲聯機系統(因爲那時的許多終端不能算是自治的計算機)。但隨着硬件價格的下降,許多終端都具有一定的智能,因而“終端”和“自治的計算機”逐漸失去了嚴格的界限。若用微型計算機作爲終端使用,按上述定義,則早期的那種面向終端的網絡也可稱爲計算機網絡。另外,從邏輯功能上看,計算機網絡是以傳輸信息爲基礎目的,用通信線路將多個計算機連接起來的計算機系統的集合,一個計算機網絡組成包括傳輸介質通信設備。從用戶角度看,計算機網絡是這樣定義的:存在着一個能爲用戶自動管理的網絡操作系統。由它調用完成用戶所調用的資源,而整個網絡像一個大的計算機系統一樣,對用戶是透明的。一個比較通用的定義是:利用通信線路將地理上分散的、具有獨立功能的計算機系統和通信設備按不同的形式連接起來,以功能完善的網絡軟件及協議實現資源共享和信息傳遞的系統。從整體上來說計算機網絡就是把分佈在不同地理區域的計算機與專門的外部設備用通信線路互聯成一個規模大、功能強的系統,從而使衆多的計算機可以方便地互相傳遞信息,共享硬件、軟件、數據信息等資源。簡單來說,計算機網絡就是由通信線路互相連接的許多自主工作的計算機構成的集合體。最簡單的計算機網絡就只有兩臺計算機和連接它們的一條鏈路,即兩個節點和一條鏈路。 

按連接

計算機網絡就是通過線路互連起來的、自治的計算機集合,確切的說就是將分佈在不同地理位置上的具有獨立工作能力的計算機、終端及其附屬設備用通信設備和通信線路連接起來,並配置網絡軟件,以實現計算機資源共享的系統。 [2] 

按需求

計算機網絡就是由大量獨立的、但相互連接起來的計算機來共同完成計算機任務。這些系統稱爲計算機網絡(computer networks)。

網絡類型分類

雖然網絡類型的劃分標準各種各樣,但是從地理範圍劃分是一種大家都認可的通用網絡劃分標準。按這種標準可以把各種網絡類型劃分爲局域網、城域網、廣域網和互聯網四種。局域網一般來說只能是一個較小區域內,城域網是不同地區的網絡互聯,不過在此要說明的一點就是這裏的網絡劃分並沒有嚴格意義上地理範圍的區分,只能是一個定性的概念。下面簡要介紹這幾種計算機網絡。

局域網

局域網(Local Area Network;LAN) 通常我們常見的“LAN”就是指局域網,這是我們最常見、應用最廣的一種網絡。局域網隨着整個計算機網絡技術的發展和提高得到充分的應用和普及,幾乎每個單位都有自己的局域網,有的甚至家庭中都有自己的小型局域網。

城域網

城域網(Metropolitan Area Network;MAN) 這種網絡一般來說是在一個城市,但不在同一地理小區範圍內的計算機互聯。這種網絡的連接距離可以在10 ̄100公里,它採用的是IEEE802.6標準。MAN與LAN相比擴展的距離更長,連接的計算機數量更多,在地理範圍上可以說是LAN網絡的延伸。

廣域網

廣域網(Wide Area Network,WAN) 這種網絡也稱爲遠程網,所覆蓋的範圍比城域網(MAN)更廣,它一般是在不同城市之間的LAN或者MAN網絡互聯,地理範圍可從幾百公里到幾千公里。因爲距離較遠,信息衰減比較嚴重,所以這種網絡一般是要租用專線,通過IMP(接口信息處理)協議和線路連接起來,構成網狀結構,解決循徑問題。這種城域網因爲所連接的用戶多,總出口帶寬有限,所以用戶的終端連接速率一般較低,通常爲9.6Kbps-45Mbps 如:郵電部的CHINANET,CHINAPAC,和CHINADDN網。

無線網

隨着筆記本電腦(notebook computer)和個人數字助理無線網( Personal Digital Assistant,PDA)等便攜式計算機的日益普及和發展,人們經常要在路途中接聽電話、發送傳真和電子郵件閱讀網上信息以及登錄到遠程機器等。然而在汽車或飛機上是不可能通過有線介質與單位的網絡相連接的,這時候可能會對無線網感興趣了。雖然無線網與移動通信經常是聯繫在一起的,但這兩個概念並不完全相同。例如當便攜式計算機通過PCMCIA卡接入電話插口,它就變成有線網的一部分。另一方面,有些通過無線網連接起來的計算機的位置可能又是固定不變的,如在不便於通過有線電纜連接的大樓之間就可以通過無線網將兩棟大樓內的計算機連接在一起。

網絡協議

網絡協議爲計算機網絡中進行數據交換而建立的規則、標準或約定的集合。

例如,網絡中一個微機用戶和一個大型主機的操作員進行通信,由於這兩個數據終端所用字符集不同,因此操作員所輸入的命令彼此不認識。爲了能進行通信,規定每個終端都要將各自字符集中的字符先變換爲標準字符集的字符後,才進入網絡傳送,到達目的終端之後,再變換爲該終端字符集的字符。當然,對於不相容終端,除了需變換字符集字符外還需轉換其他特性,如顯示格式、行長、行數、屏幕滾動方式等也需作相應的變換。

網絡OSI七層協議

OSI是一個開放性的通信系統互連參考模型,它是一個定義得非常好的協議規範。OSI模型有7層結構,每層都可以有幾個子層。 OSI的7層從上到下分別是 7 應用層 6 表示層 5 會話層 4 傳輸層 3 網絡層 2 數據鏈路層 1 物理層 ;其中高層(即7、6、5、4層)定義了應用程序的功能,下面3層(即3、2、1層)主要面向通過網絡的端到端,點到點的數據流

TCP/IP協議

TCP/IP(Transmission Control Protocol/Internet Protocol,傳輸控制協議/網際協議)體系結構是指能夠在多個不同網絡間實現的協議簇。該協議簇是在美國國防高級研究計劃局(Defense Advanced Research Projects Agency,DARPA)所資助的實驗性ARPARNET 分組交換網絡、無線電分組網絡和衛星分組網絡上研究開發成功的。網絡部分癱瘓時仍保持較強的工作能力和靈活性。這種應用環境導致了一系列協議的出現,從而使不同類型的終端和網絡間能夠進行有效通信。實際上,Internet已經成爲全球計算機互聯的主要體系結構,而TCP/IP協議是 Internet 的代名詞,是將異種網絡、不同設備互聯起來,進行正常數據通信的格式和大家遵守的約定。

TCP/IP 協議包括兩部分:傳輸控制協議和網際協議。TCP/IP 的通信任務組織成 5個相對獨立的層次:應用層、傳輸層、互聯網層(對應OSI的網絡層)、網絡接口層和物理層,其中網絡接口層和物理層常稱爲物理網層。

五層因特網協議棧

因特網協議棧共有五層:應用層傳輸層網絡層鏈路層物理層。不同於OSI七層模型這也是實際使用中使用的分層方式。

1、OSI、TCP/IP、五層協議的體系結構

OSI分層      (7層):物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層、應用層。

TCP/IP分層(4層):網絡接口層、              網際層、運輸層、                            應用層。

五層協議     (5層):物理層、數據鏈路層、網絡層、運輸層、                            應用層。

每一層的協議如下

物理層:RJ45、CLOCK、IEEE802.3    (中繼器,集線器,網關)

數據鏈路:PPP、FR、HDLC、VLAN、MAC  (網橋,交換機)

網絡層:IP、ICMP、ARP、RARP、OSPF、IPX、RIP、IGRP、 (路由器)

傳輸層:TCP、UDP、SPX

會話層:NFS、SQL、NETBIOS、RPC

表示層:JPEG、MPEG、ASII

應用層:FTP、DNS、Telnet、SMTP、HTTP、WWW、NFS

OSI分層 (7層)每層的作用如下

2,IP地址分類

  IP地址是32位的二進制數值,用於在TCP/IP通訊協議中標記每臺計算機的地址。通常我們使用點式十進制來表示,如192.168.0.5等等。

  每個IP地址又可分爲兩部分。即網絡號部分和主機號部分:網絡號表示其所屬的網絡段編號,主機號則表示該網段中該主機的地址編號。按照網絡規模的大小,IP地址可以分爲A、B、C、D、E五類。

A類地址:以0開頭,      第一個字節範圍:0~127(1.0.0.0 - 126.255.255.255);

B類地址:以10開頭,    第一個字節範圍:128~191(128.0.0.0 - 191.255.255.255);

C類地址:以110開頭,  第一個字節範圍:192~223(192.0.0.0 - 223.255.255.255);

類別 網絡號 /佔位數 主機號 /佔位數 用途

A(以0開頭) 1~126 / 8 0~255 0~255 1~254 / 24 國家級

B(以10開頭) 128~191 0~255 / 16 0~255 1~254 / 16 跨國組織

C(以110開頭)192~223 0~255 0~255 / 24 1~254 / 8 企業組織

注意:

1)以下是留用的內部私有地址,Internet上沒使用的地址

A類 10.0.0.0--10.255.255.255

B類 172.16.0.0--172.31.255.255

C類 192.168.0.0--192.168.255.255

2)IP地址與子網掩碼相與得到網絡號

3)主機號,全爲0的是網絡號(例如:192.168.2.0),主機號全爲1的爲廣播地址(192.168.2.255)

 

3,ARP是地址解析協議

地址解析協議,即ARP(Address Resolution Protocol),是根據IP地址獲取物理地址的一個TCP/IP協議。

1:首先,每個主機都會在自己的ARP緩衝區中建立一個ARP列表,以表示IP地址和MAC地址之間的對應關係。

2:當源主機要發送數據時,首先檢查ARP列表中是否有對應IP地址的目的主機的MAC地址,如果有,則直接發送數據,如果沒有,就向本網段的所有主機發送ARP數據包,該數據包包括的內容有:源主機 IP地址,源主機MAC地址,目的主機的IP 地址

3:當本網絡的所有主機收到該ARP數據包時,首先檢查數據包中的IP地址是否是自己的IP地址,如果不是,則忽略該數據包,如果是,則首先從數據包中取出源主機的IP和MAC地址寫入到ARP列表中,如果已經存在,則覆蓋,然後將自己的MAC地址寫入ARP響應包中,告訴源主機自己是它想要找的MAC地址。

4:源主機收到ARP響應包後。將目的主機的IP和MAC地址寫入ARP列表,並利用此信息發送數據。如果源主機一直沒有收到ARP響應數據包,表示ARP查詢失敗。

注意:廣播(255.255.255.255)發送ARP請求,單播發送ARP響應。

 

4,簡單介紹幾種協議

ICMP協議: 因特網控制報文協議。它是TCP/IP協議族的一個子協議,用於在IP主機、路由器之間傳遞控制消息

TFTP協議: 是TCP/IP協議族中的一個用來在客戶機與服務器之間進行簡單文件傳輸的協議,提供不復雜、開銷不大的文件傳輸服務。

HTTP協議: 超文本傳輸協議,是一個屬於應用層的面向對象的協議,由於其簡捷、快速的方式,適用於分佈式超媒體信息系統

NAT協議:網絡地址轉換屬接入廣域網(WAN)技術,是一種將私有(保留)地址轉化爲合法IP地址的轉換技術

DHCP協議:動態主機配置協議,是一種讓系統得以連接到網絡上,並獲取所需要的配置參數手段,使用UDP協議工作。具體用途:給內部網絡或網絡服務供應商自動分配IP地址,給用戶或者內部網絡管理員作爲對所有計算機作中央管理的手段。

 

 5,TCP三次握手四次揮手

三次握手:

第一次握手:客戶端發送syn包(seq=x)到服務器,並進入SYN_SEND(發送)狀態,等待服務器確認;

第二次握手:服務器收到syn包,必須確認客戶的SYN(ack=x+1),同時自己也發送一個SYN包(seq=y),即SYN+ACK包,此時服務器進入SYN_RECV(接收)狀態;

第三次握手:客戶端收到服務器的SYN+ACK包,向服務器發送確認包ACK(ack=y+1),此包發送完畢,客戶端和服務器進入ESTABLISHED(已建立)狀態,完成三次握手。

說明:
1)SYN和ACK是標誌位(0/1)(ACK=1表明ack有效),seq是序列號,ack是確認號。2)給對方的確認方式就是把對方傳來的seq+1並賦給ack。

TCP報文格式:

四次揮手:

第一次揮手:主動關閉方發送一個FIN,用來關閉主動方到被動關閉方的數據傳送,也就是主動關閉方告訴被動關閉方:我已經不會再給你發數據了(當然,在fin包之前發送出去的數據,如果沒有收到對應的ack確認報文,主動關閉方依然會重發這些數據),但是,此時主動關閉方還可 以接受數據。

第二次揮手:被動關閉方收到FIN包後,發送一個ACK給對方,確認序號爲收到序號+1。

第三次揮手:被動關閉方發送一個FIN,用來關閉被動關閉方到主動關閉方的數據傳送,也就是告訴主動關閉方,我的數據也發送完了,不會再給你發數據了。

第四次揮手:主動關閉方收到FIN後,發送一個ACK給被動關閉方,確認序號爲收到序號+1,至此,完成四次揮手。

說明:

1)SYN攻擊 用衆多僞造ip地址向服務器發送SYN=1(請求連接),讓服務器處於SYN-RCVD狀態,但都無法第三次握手(因爲僞造ip不存在)

2)4次揮手中的FIN就相當於三次握手中的SYN。

3)序號seq,確認序號ack,確認標誌位ACK作用還是一樣的,就是確認作用(把seq加上1賦給ack,並把ACK置1)

4)爲什麼一個3次1個4次不一樣?

因爲兩端的數據並不是同時發送完,所以兩端誰發送完數據都需要自己告訴對方一次,並且對方確認一次。

 

6,TCP和UDP的區別

這是傳輸層的兩個協議,先說一下傳輸層的兩大功能:

  1. 複用:在發送端,多個應用進程公用一個傳輸層;
  2. 分用:在接收端,傳輸層會根據端口號將數據分給不同的應用進程。 

傳輸層和網絡層的區別:

  1. 網絡層爲不同的主機提供通信服務,傳輸層爲不同應用進程提供通信服務。
  2. 網絡層只對報文頭部進行差錯檢測,而傳輸層對整個報文進行差錯檢測。

UDP(User Data Protocol)用戶數據報協議

  1. 無連接
  2. 不可靠(不能保證都送達)
  3. 面向報文(UDP數據傳輸單位是報文,不會對數據進行拆分和拼接操作,只是給上層傳來的數據加個UDP頭或者給下層來的數據去掉UDP頭)
  4. 沒有擁塞控制,始終以恆定速率發送數據
  5. 支持一對一、一對多、多對多、多對一
  6. 首部開銷小,只有8字節

TCP(Transmission Control Protocol)傳輸控制協議

  1. 有連接
  2. 可靠的
  3. 面向字節流
  4. 全雙工通信,TCP兩端既可以作爲發送端也可以作爲接收端
  5. 連接的兩端只能是兩個端點,即一對一,不能一對多
  6. 至少20個字節,比UDP大的多

什麼是TCP連接

TCP連接是一種抽象的概念,表示一條可以通信的鏈路。
每個TCP連接有且僅有兩個端點,表示通信的雙方,且雙方在任意時刻都可以作爲發送者和接受者。

什麼是套接字

一條TCP連接的兩端就是兩個套接字。
套接字 = IP地址 :端口號
因此,TCP連接 = (套接字1,套接字2)= (IP1:端口號1,IP2:端口號2)

7, TCP對應的協議和UDP對應的協議

TCP對應的協議:

(1) FTP:定義了文件傳輸協議,使用21端口。

(2) Telnet:一種用於遠程登陸的端口,使用23端口,用戶可以以自己的身份遠程連接到計算機上,可提供基於DOS模式下的通信服務。

(3) SMTP:郵件傳送協議,用於發送郵件。服務器開放的是25號端口。

(4) POP3:它是和SMTP對應,POP3用於接收郵件。POP3協議所用的是110端口。

(5)HTTP:是從Web服務器傳輸超文本到本地瀏覽器的傳送協議。

UDP對應的協議:

(1) DNS:用於域名解析服務,將域名地址轉換爲IP地址。DNS用的是53號端口。

(2) SNMP:簡單網絡管理協議,使用161號端口,是用來管理網絡設備的。由於網絡設備很多,無連接的服務就體現出其優勢。

(3) TFTP(Trival File Transfer Protocal),簡單文件傳輸協議,該協議在熟知端口69上使用UDP服務。

8,DNS域名系統

  當DNS客戶機需要在程序中使用名稱時,它會查詢DNS服務器來解析該名稱。客戶機發送的每條查詢信息包括三條信息:包括:指定的DNS域名,指定的查詢類型,DNS域名的指定類別。基於UDP服務,端口53. 該應用一般不直接爲用戶使用,而是爲其他應用服務,如HTTP,SMTP等在其中需要完成主機名到IP地址的轉換。

9,面向連接和非面向連接的服務的特點是什麼?

  面向連接的服務,通信雙方在進行通信之前,要先在雙方建立起一個完整的可以彼此溝通的通道,在通信過程中,整個連接的情況一直可以被實時地監控和管理。

       非面向連接的服務,不需要預先建立一個聯絡兩個通信節點的連接,需要通信的時候,發送節點就可以往網絡上發送信息,讓信息自主地在網絡上去傳,一般在傳輸的過程中不再加以監控。

10,TCP的三次握手過程?爲什麼會採用三次握手,若採用二次握手可以嗎?

答:建立連接的過程是利用客戶服務器模式,假設主機A爲客戶端,主機B爲服務器端。

(1)TCP的三次握手過程:主機A向B發送連接請求;主機B對收到的主機A的報文段進行確認;主機A再次對主機B的確認進行確認。

(2)採用三次握手是爲了防止失效的連接請求報文段突然又傳送到主機B,因而產生錯誤。失效的連接請求報文段是指:主機A發出的連接請求沒有收到主機B的確認,於是經過一段時間後,主機A又重新向主機B發送連接請求,且建立成功,順序完成數據傳輸。考慮這樣一種特殊情況,主機A第一次發送的連接請求並沒有丟失,而是因爲網絡節點導致延遲達到主機B,主機B以爲是主機A又發起的新連接,於是主機B同意連接,並向主機A發回確認,但是此時主機A根本不會理會,主機B就一直在等待主機A發送數據,導致主機B的資源浪費。(這就是缺少第三次握手(A再給B確認))

(3)採用兩次握手不行,原因就是上面說的實效的連接請求的特殊情況。

11,瞭解交換機、路由器、網關的概念,並知道各自的用途

1)交換機

在計算機網絡系統中,交換機是針對共享工作模式的弱點而推出的。交換機擁有一條高帶寬的背部總線和內部交換矩陣。交換機的所有的端口都掛接在這條背 部總線上,當控制電路收到數據包以後,處理端口會查找內存中的地址對照表以確定目的MAC(網卡的硬件地址)的NIC(網卡)掛接在哪個端口上,通過內部 交換矩陣迅速將數據包傳送到目的端口。目的MAC若不存在,交換機才廣播到所有的端口,接收端口迴應後交換機會“學習”新的地址,並把它添加入內部地址表 中。

交換機工作於OSI參考模型的第二層,即數據鏈路層。交換機內部的CPU會在每個端口成功連接時,通過ARP協議學習它的MAC地址,保存成一張 ARP表。在今後的通訊中,發往該MAC地址的數據包將僅送往其對應的端口,而不是所有的端口。因此,交換機可用於劃分數據鏈路層廣播,即衝突域;但它不 能劃分網絡層廣播,即廣播域。

交換機被廣泛應用於二層網絡交換,俗稱“二層交換機”。

交換機的種類有:二層交換機、三層交換機、四層交換機、七層交換機分別工作在OSI七層模型中的第二層、第三層、第四層盒第七層,並因此而得名。

2)路由器

路由器Router)是一種計算機網絡設備,提供了路由與轉送兩種重要機制,可以決定數據包從來源端到目的端所經過 的路由路徑(host到host之間的傳輸路徑),這個過程稱爲路由;將路由器輸入端的數據包移送至適當的路由器輸出端(在路由器內部進行),這稱爲轉 送。路由工作在OSI模型的第三層——即網絡層,例如網際協議。

路由器的一個作用是連通不同的網絡,另一個作用是選擇信息傳送的線路。 路由器與交換器的差別,路由器是屬於OSI第三層的產品,交換器是OSI第二層的產品(這裏特指二層交換機)。

3)網關

網關(Gateway),網關顧名思義就是連接兩個網絡的設備,區別於路由器(由於歷史的原因,許多有關TCP/IP 的文獻曾經把網絡層使用的路由器(Router)稱爲網關,在今天很多局域網採用都是路由來接入網絡,因此現在通常指的網關就是路由器的IP),經常在家 庭中或者小型企業網絡中使用,用於連接局域網和Internet。 網關也經常指把一種協議轉成另一種協議的設備,比如語音網關。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章