計算機網絡基礎知識總結(重要)

 1,OSI,TCP/IP,五層協議的體系結構,以及各層協議

 

OSI分層      (7層):物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層、應用層。
TCP/IP分層(4層):網絡接口層、              網際層、運輸層、                            應用層。
五層協議     (5層):物理層、數據鏈路層、網絡層、運輸層、                            應用層。

 

每一層的協議以下
物理層:RJ4五、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

 

每一層的做用以下

物理層:經過媒介傳輸比特,肯定機械及電氣規範(比特Bit)html

數據鏈路層:將比特組裝成幀和點到點的傳遞(幀Frame)瀏覽器

網絡層:負責數據包從源到宿的傳遞和網際互連(包PackeT)服務器

傳輸層:提供端到端的可靠報文傳遞和錯誤恢復(段Segment)網絡

會話層:創建、管理和終止會話(會話協議數據單元SPDU)分佈式

表示層:對數據進行翻譯、加密和壓縮(表示協議數據單元PPDU)學習

應用層:容許訪問OSI環境的手段(應用協議數據單元APDU)加密

 

2,IP地址分類

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

  每一個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開頭) 1126 / 8 0255 0255 1254 / 24 國家級

B(以10開頭) 128191 0255 / 16 0255 1254 / 16 跨過組織

C(以110開頭)192223 0255 0255 / 24 1254 / 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。

四次揮手:

第一次揮手:主動關閉方發送一個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, 在瀏覽器中輸入www.baidu.com後執行的所有過程 

一、客戶端瀏覽器經過DNS解析到www.baidu.com的IP地址220.181.27.48,經過這個IP地址找到客戶端到服務器的路徑。客戶端瀏覽器發起一個HTTP會話到220.161.27.48,而後經過TCP進行封裝數據包,輸入到網絡層。

  二、在客戶端的傳輸層(添加TCP頭),把HTTP會話請求分紅報文段,添加源和目的端口,如服務器使用80端口監聽客戶端的請求,客戶端由系統隨機選擇一個端口如5000,與服務器進行交換,服務器把相應的請求返回給客戶端的5000端口。而後使用IP層的IP地址查找目的端。

  三、客戶端的網絡層(添加IP頭)不用關係應用層或者傳輸層的東西,主要作的是經過查找路由表肯定如何到達服務器,期間可能通過多個路由器,這些都是由路由器來完成的工做,我不做過多的描述,無非就是經過查找路由表決定經過那個路徑到達服務器。

  四、客戶端的鏈路層(添加MAC頭),包經過鏈路層發送到路由器,經過鄰居協議查找給定IP地址的MAC地址,而後發送ARP請求查找目的地址,若是獲得迴應後就可使用ARP的請求應答交換的IP數據包如今就能夠傳輸了,而後發送IP數據包到達服務器的地址。

 7,TCP和UDP的區別

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

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

傳輸層和網絡層的區別:

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

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

  1. 無鏈接
  2. 不可靠(不能保證都送達)
  3. 面向報文(UDP數據傳輸單位是報文,不會對數據進行拆分和拼接操做,只是給上層傳來的數據加個UDP頭或者給下層來的數據去掉UDP頭)
  4. 沒有擁塞控制,始終以恆定速率發送數據
  5. 支持一對1、一對多、多對多、多對一
  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)

8, 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服務。

 9,DNS域名系統,簡單描述其工做原理。

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

10,面向鏈接和非面向鏈接的服務的特色是什麼?

  面向鏈接的服務,通訊雙方在進行通訊以前,要先在雙方創建起一個完整的能夠彼此溝通的通道,在通訊過程當中,整個鏈接的狀況一直能夠被實時地監控和管理。

       非面向鏈接的服務,不須要預先創建一個聯絡兩個通訊節點的鏈接,須要通訊的時候,發送節點就能夠往網絡上發送信息,讓信息自主地在網絡上去傳,通常在傳輸的過程當中再也不加以監控。

11,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)採用兩次握手不行,緣由就是上面說的實效的鏈接請求的特殊狀況。

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

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。 網關也常常指把一種協議轉成另外一種協議的設備,好比語音網關。

http://www.cnblogs.com/zyf-zhaoyafei/p/4716297.html

相關文章
相關標籤/搜索