OSI model: 7 layers

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

引用: https://tournasdimitrios1.wordpress.com/2011/01/19/the-basics-of-network-packets/

TCP/IP各階層資料名稱

應用程式的資料會在每個階層進行特殊處理並加上表頭(或表尾),可能是出於避免混淆或是其他原因,每個階層的資料名稱都是不一樣的。

  • 應用層:訊息(Message)
  • 傳輸層:區段(Segment)或資料包(Datagram)
    使用TCP 協議時稱為區段
    使用UDP 協議時稱為資料包
  • 網路層:封包(Packet)
  • 網路存取層:訊框(Frame)
    引用:https://ithelp.ithome.com.tw/m/articles/10321958

Application layer

應用層協定例子

應用層主要功能是處理應用程式,進而提供使用者網路應用服務。這一層的協定也很多。使用者常見的通訊協定,有DHCP(Dynamic Host Configuration Protocol)、FTP(File Transfer Protocol)、HTTP(HyperText Transfer Protocol)及POP3(Post Office Protocol-Version 3)等,依據不同的網路服務方式,這些協定能定義各自的功能及使用規範等細部規則。

應用層是最接近web app的,此層的協定包含常見

  • Http - 提供向瀏覽器發出request & transfer
  • SMTP - 提供transferemail訊息
  • FTP - 提供檔案的傳輸協定
  • DNS - 提供轉換網址到network address

屬於第七層的應用軟體,像是網路瀏覽器(IE、Firefox)、電子郵件、線上遊戲、即時通訊(MSN Messenger、ICQ)等。上述軟體均透過單一或多種通訊協定,提供各類網路應用服務,像是網路瀏覽器藉由HTTP的溝通,即可呈現圖文並茂的網頁。

Presentation layer

Session layer

Transport layer

確保端到端的通信,提供可靠的數據傳輸。

  • 協定:
  1. TCP: 提供一連串偵錯、重送、資料順序、流量控管等實作,提供連線的可靠性。
  2. UDP: 專注於資料的傳遞,幾乎不管資料是否正確送達,需要應用層自行處理。
  • 基本功能: 分割與重組數據 -> 按連線埠號定址 -> 連線管理 -> 差錯控制和流量控制,糾錯的功能 ->

  • 服務類型: 傳輸層提供的服務可分為傳輸連線服務和數據傳輸服務

  1. 傳輸連線服務:通常,對會話層要求的每個傳輸連線,傳輸層都要在網路層上建立相應的連線。
  2. 數據傳輸服務:強調提供面向連線的可靠服務,並提供流量控制、差錯控制和序列控制,以實現兩個終端系統間傳輸的報文無差錯、無丟失、無重複、無亂序。

Network layer

網路層(Network Layer) 是OSI模型中的第三層,提供路由尋址的功能,使兩終端系統能夠互連且決定最佳路徑,並具有一定的擁塞控制和流量控制的能力。相當於傳送郵件時需要位址一般重要。由於TCP/IP協定體系中的網路層功能由IP協定規定和實現,故又稱IP層。

定址

對網路層而言使用IP位址來唯一標識網際網路上的各個定址,網路層依靠IP位址進行相互通訊(類似於MAC位址),詳細的編址方案參見IPv4和IPv6。

路由(routing)

在同一個網路中的內部通訊並不需要網路層裝置,僅僅靠資料連結層就可以完成相互通訊,對於不同的網路之間相互通訊則必須藉助路由器等三層裝置。

具有網路層功能的裝置

  • 路由器(Router)

路由器是將運算裝置(例如電腦)及網路連線至其他網路的聯網裝置。路由器有三個主要功能,分別是:
1.確定路徑:路由器可以決定從來源到目的地所採用的路徑,這個作業稱為路由。
2.資料轉傳:路由器會將資料轉傳至所選路徑的下一個裝置,重複這個過程,最終資料可以抵達目的地。運算裝置和路由器可能位於相同的網路或不同的網路。
3.負載平衡:路由器有時會用多個不同路徑,傳送相同資料封包副本。其目的是為了減少因資料遺失而造成錯誤、並建立備援及管理流量。
比較技術性的解釋是路由器是種電信網路裝置,提供路由與轉送兩種重要機制,可以決定封包由來源端到目的端所經過的路徑(host到host之間的傳輸路徑),這個過程稱為路由;將路由器輸入端的封包移送至適當的路由器輸出端(在路由器內部進行),這稱為轉送。路由工作在OSI模型的第三層——即網路層,例如網際網路協定(IP)。
IP路由器之中最常見的類型是家用和小型辦公路由器,它只在家庭電腦和網際網路之間轉發IP封包,例如,使用者的cable路由器或DSL路由器,這些路由器通過網際網路服務提供商(ISP)連接到網際網路。而像是企業級路由器等更複雜的路由器,則會將大型企業或ISP的網路與強大的核心路由器連接起來,沿著網際網路主幹網的光纖線路高速轉發數據。

網路層協定

  • IP (V4、V6)

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

Private IP 網段:

  • 10.0.0.0/8
  • 172.16.0.0/12
  • 192.168.0.0/16

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

引用 https://community.fs.com/hk/article/ipv4-vs-ipv6-whats-the-difference.html

  • IPX
  • X.25
  • RARP
  • ICMP(V4、V6)
  • IGMP
  • IPsec
  • RIP
  • OSPF

封包

封包(英語:Data packet),又稱數據包,是在封包交換網路中傳輸的格式化數據單位。
一個封包(packet)分成兩個部份,包括控制資訊,也就是表頭資料(header),和資料本身,也就是負載(payload)。
我們可以將一個封包比作為一封信,表頭資料相當於信封,而封包的資料部分則相當於信的內容。和信不同的是,有時候一個大封包可以分成多個小封包。

子網路遮罩

IP 位址可以分為二個部份,一個是由 IANA 或 TWNIC 或 ISP 所分派的固定部份,稱之為 Network ID,以及可以自行運用的部份,稱之為 Host ID。例如,以 140.115.x.x 為例,140.115 就是 Network ID。然而,為了讓電腦可以判斷出 IP 位址的 Network ID 及 Host ID,必須靠子網路遮罩 (Subnet Mask) 的幫忙。

因為每個網路都可以再切割為更小的子網路,例如,中央大學的網路是 140.115.x.x,而中央企管可以使用 140.115.75.x 這個子網路。以整個中央大學而言,它的 Network ID 是 140.115,而中央企管的 Network ID 是 140.115.75。因為中大的前二個位元組是 Network ID,所以子網路遮罩的前二個位元組要設成 255,而最後二個位元組為 Host ID,則子網路遮罩設為 0。因此,IP 位址為 140.115.x.x 的子網路遮罩為 255.255.0.0,而 140.115.75.x 的子網路遮罩為 255.255.255.0。

簡而言之,子網路遮罩就是將所有和 Network ID 同一個欄位的位元都設成 1,所有和 Host ID 同欄位的位元都設成 0。

二進位的子網路遮罩 子網路遮罩
11111111 00000000 00000000 00000000 255.0.0.0
11111111 11111111 00000000 00000000 255.255.0.0
11111111 11111111 11111111 00000000 255.255.255.0

當我們在表示一個子網路時,我們可以使用 140.115.0.0/255.255.0.0 來表示。然而,我們也常看到另一種表示方式:140.115.0.0/16。16 的意思是子網路遮罩中,高位元的部份有 16 個 1。以上表中各個子網路遮罩為例,我們可以表示為:

二進位的子網路遮罩 子網路遮罩
11111111 00000000 00000000 00000000 /8
11111111 11111111 00000000 00000000 /16
11111111 11111111 11111111 00000000 /24

那麼電腦又是如何從一個 IP 及子網路遮罩判斷出 Network ID 的呢?電腦會將 IP 和 Netmask 做 AND 運算,運算結果就是 Network ID,如下表中所示:

IP (140.115.75.5) 10001100 01110011 01001011 00000101
Netmask (255.255.255.0) 11111111 11111111 00000000 00000000
Network ID (140.115.0.0) 10001100 01110011 00000000 00000000

Image Not Showing Possible Reasons
  • The image was uploaded to a note which you don't have access to
  • The note which the image was originally uploaded to has been deleted
Learn More →

MAC ( Media Access Control) 媒體存取控制層:
為資料鏈結層與實體層互相介接的部分,主要提供傳輸媒介存取方式的控制,
使得LLC層的存取方式不受傳輸媒介影響,
因此上層(網路層 )的通訊協定和實體層的傳輸媒介是互相獨立的。

L L C (Logical Link Control) 邏輯連接控制層:
網路層和資料鏈結層的整合介面,將網路層送來的封包依照不同的MAC層轉換成相對應的資料框型態後再送至實體層。若實體層收到MAC層送來的資料封包,
亦會根據封包訊息判斷所屬之通訊協定,再傳送至網路層進行處理。

Physical layer (物理層)

  • 功能:在物理媒介上傳輸原始位元,處理電壓、電流、光信號等。
  1. 乙太網線(Ethernet Cable):
    傳輸的是電流信號。
    使用銅線(通常是銅導體)作為物理傳輸介質。
    主要應用在局域網(LAN)中,如家庭、辦公室等。

  2. 光纖(Fiber Optic):
    傳輸的是光信號。
    使用光纖(通常是玻璃或塑料纖維)作為物理傳輸介質。
    光纖的主要特點是高帶寬、低損耗、抗電磁干擾,適用於長距離通信。
    應用於長距離通信網絡、數據中心互連、高速寬帶接入等。

  3. 無線電波(Wireless Radio Waves):

傳輸的是無線電波信號。
使用空氣中的電磁波作為傳輸介質,不需要物理電纜連接。
主要應用在無線通信,包括無線局域網(WLAN)、行動通信(如4G、5G)、藍牙、Wi-Fi等。

額外探討

netstat指令說明

@StanShih

$ netstat -an

使用中連線

  協定   本機位址               外部位址               狀態
  TCP    0.0.0.0:445            0.0.0.0:0              LISTENING
  TCP    127.0.0.1:31072        127.0.0.1:37411        ESTABLISHED
  TCP    172.20.10.4:39231      20.189.173.6:443       TIME_WAIT
  TCP    172.20.10.4:39236      192.168.2.152:445      SYN_SENT
  TCP    [::]:445               [::]:0                 LISTENING
  UDP    0.0.0.0:64551          *:*                    
  UDP    172.19.96.1:138        *:*                    
TCP狀態 說明
LISTENING 該連接埠處於正在傾聽的狀態,提供服務
ESTABLISHED 已建立好連線,正在彼此傳送資料
CLOSE_WAIT 對方主動關閉連線或網路異常發生中斷,此時須執行close
TIME_WAIT 執行close斷開連線後,則會進入此狀態
SYN_SENT 正在請求連線

TCP狀態機

image

引用https://www.cs.uni.edu/~diesburg/courses/cs3470_fa19/projects/p4-tcp.html

TCP/IP VS OSI Model

image

Transmit vs Receive

image

引用https://insights.profitap.com/osi-7-layers-explained-the-easy-way

three-way-handshake 三向交握

確保連線可以正常建立

image

Whois

查詢公眾IP

https://www.whois365.com/tw/