計算機網路體系結構

2021-08-31 03:46:51 字數 3349 閱讀 1336

透明地傳輸位元流

型別字段:用來標誌上一層使用的什麼協議,當型別欄位為0x0800表示上層使用的是ip資料報

最後乙個欄位是4位元組的幀檢驗序列fcs.

出現下列情況之一即視為無效的mac幀

①幀的長度不是整數個位元組

②收到的幀檢驗序列fcs有差錯

③mac幀資料字段的長度不在46~1500位元組之間.考慮到mac首部和尾部長度共有18個位元組,可以得出有效的mac幀長度為64~1518位元組之間

注意①對於檢查出無效的mac幀直接丟棄.乙太網不負責重傳丟棄的幀

②ip資料報最大不超過1500,否則要進行分片,由於ip首部一般為20個位元組,所以ip的資料部分達到1480位元組就要進行分片

ip資料報的格式

版本通訊雙方使用的ip協議版本必須一致.

抓包工具:   version :4  表示ipv4    version :6表示ipv6

首部長度

最常用的首部長度就是20個位元組

抓包工具:   header length:20bytes

區分服務

只有使用區分服務時,這個欄位才起作用,在一般情況下不使用這個字段

抓包工具:   differentiated services field:0x00

總長度指首部和資料部分的長度和,單位為位元組.總長度欄位為16位,因此資料報的最大長度為2^16-1=65535位元組

抓包工具:   total length:1430

標識相同的標識字段值使分片後的各資料報片能正確地重組為原來的資料報

抓包工具:   identification:0x848f(33935)  <-同乙個資料報的多個分片中是一樣的

標誌佔3位,目前只有兩位有意義;

最低位記為mf(more fragment).mf=1表示後面還有分片,mf=0表示這是若干資料報片中的最後乙個

中間那一位記為df(don』t fragment),意思是不能分片,只有當df=0是才允許分片

抓包工具:   flags:0x04(don』t fragment)

片位移生存時間

ttl(time to live)表明資料報在網路中的壽命.路由器在**資料報之前就把ttl減1.若ttl值減小到0,就丟棄這個資料報不再**.因此ttl的單位是跳數.ttl的意義是指資料報在網際網路中至少可以經過多少個路由器

如果我們ping的目標機是linux,則ttl大概為64;如果是windows,則ttl大概為128,如果是unix,則ttl大概為255,通過這種方式可以判斷對方計算機是什麼系統的,但是不一定對

協議協議字段指出此資料報攜帶的資料使用的是哪種協議

常用命令

檢視會話:netstat -n

檢視建立會話的程序:netstat -nb

檢視伺服器監聽的埠:netstat -a

測試能否訪問遠端的埠:telnet  ip位址  埠號

運輸層有兩種不同的通訊協議,面向連線的tcp協議和無連線的udp協議

udp概述

乙個資料報就能完成資料通訊,不需要建立連線,不保證可靠交付也沒有擁塞控制,而且udp的首部開銷小,只有8個位元組,比tcp的20個位元組要短,但在某些情況下udp卻是一種最有效的工作方式.比如qq聊天訊息使用的就是udp

tcp概述

需要將傳輸的資料分段,需要通訊雙方建立連線,提供可靠交付,具有擁塞控制和流量控制

比如使用qq傳送較大的檔案使用的是tcp

應用層協議=運輸層協議+埠號

應用層協議 運輸層協議 埠號

smtp(簡單郵件傳送協議) tcp 25

telnet(遠端終端協議) tcp 23

http(超文字傳送協議) tcp 80

ftp(檔案傳送協議) tcp 21

udp的首部格式

長度:udp資料報的總長度,其最小值為8(僅有首部)

檢驗和:檢測udp資料報在傳輸過程中是否有錯,有錯就丟棄

tcp的首部格式

序號序號字段值是指本報文段傳送的資料的第乙個位元組的序號

確認號期望收到對方下乙個報文段的第乙個資料位元組的序號

例如:b正確收到了a傳送過來的乙個報文段,其序號字段值為501,而資料長度為200位元組,這表明b正確收到了a傳送的到序號700為止的資料.因此,b期望收到a的下乙個資料序號701,於是b在傳送給a的確認報文段中把確認號置為701

確認ack

ack=1時確認號字段才有效.當ack=0時,則無效.tcp規定:在建立連線後所有傳送的報文段都必須把ack置為1

同步syn

當syn=1而ack=0時,表明這是乙個連線請求報文段.對方若同意建立連線,則在響應的報文段使syn=1和ack=1

終止fin

用來釋放乙個連線.

視窗指的是傳送本報文段的一方的接收視窗.視窗指告訴對方:從本報文段首部中的確認號算起,接收方目前允許對方傳送的資料量.視窗值經常在動態變化著.視窗值作為讓傳送方設定其傳送視窗的依據

tcp如何實現可靠傳輸的

在網路上傳輸資料,有的資料比較大,需要分成很多小的資料報,如果網路不穩定,就有可能造成丟包現象,這時就需要用到tcp的可靠傳輸機制

可以使用停止等待協議來實現tcp的可靠傳輸.停止等待協議是指,傳送方先傳送乙個分組給接收方,發完就暫停傳送,接收方接收到了分組就向傳送方傳送確認.傳送方就收到接收方傳送的確認後,再傳送另外乙個分組.傳送方只要超過一段時間仍然沒有收到確認,就認為剛才傳送的分組丟失了,因而重傳前面傳送過的分組,這就是所說的超時重傳.停止等待協議是比較簡單的,但是通道利用率比較低.為了提高傳輸效率,可以採用流水線傳輸的方式.流水線傳輸就是傳送方可以連續傳送多個分組,不必沒發完乙個分組就停頓下來等待對方確認.其實滑動視窗協議就是基於流水線傳輸的方式

滑動視窗協議就是說,傳送方每收到乙個確認,就把傳送視窗向前滑動乙個分組的位置.接收方採用累積確認的方式.也就是說,接收方不必對收到的分組逐個傳送確認,而是在收到幾個分組後,對按序到達的最後乙個分組傳送確認,這就表示,到這個分組為止的所有分組都已經正確收到了

tcp是如何實現流量控制的

客戶端訪問伺服器,如果傳送方傳送得快,接收方接收得慢,就有可能造成很多包的丟失.所謂流量控制就是讓傳送方的傳送速率不要太快,要讓接收方來得及接收

設a向b傳送資料,在連線建立時b告訴a:我的接收視窗rwnd=400,因此,傳送方的傳送視窗不能超過接收方給出的接受視窗的數值

tcp是如何實現擁塞控制的

慢開始和擁塞避免演算法結合使用

快重傳和快恢復演算法結合使用

計算機網路體系結構

iso組織定義了網路互連的七層框架 osi open system internetwork 及開放系統互連。osi是乙個概念性的參考模型,實際上,我們目前使用的是tcp ip模型。下面分別來講一下這些層中的具體內容 2 資料鏈路層 在通訊的實體間建立資料鏈路連線,傳輸以幀為單位的資料報,並採用差錯...

計算機網路體系結構

有哪幾種?osi分層 7層 物理層 資料鏈路層 網路層 傳輸層 會話層 表示層 應用層。tcp ip分層 4層 網路介面層 網際層 運輸層 應用層。五層協議 5層 物理層 資料鏈路層 網路層 運輸層 應用層。每層有哪些協議?物理層 rj45 clock ieee802.3 中繼器,集線器 資料鏈路 ...

計算機網路體系結構

1 osi參考模型 osi參考模型是一種理論模型,該模型定義網路通訊的層次結構 各層次之間的相互關係與各層提供的服務。2 osi參考模型的分層原則 2.1 網路中各節點都具有相同的層次。2.2 不同節點的相同層次具有相同的功能。2.3 同一節點內相鄰層之間通過介面通訊。2.4 每層可以使用下層提供的...