---
# System prepended metadata

title: Week 02 (2024/02/29)
tags: [ncnu, lsa]

---

###### tags: `lsa` `ncnu`
# Week 03 (2024/03/07)

- Book mode: https://hackmd.io/@ncnu-opensource/book

## OSI 模型vs. TCP/IP 模型
![](https://hackmd.io/_uploads/rJcq7G186.png)

![image](https://hackmd.io/_uploads/SkRQdevaT.png)

![image](https://hackmd.io/_uploads/HJluSyP6p.png)
# Network
> 內容尚不完整，請大家幫忙補充。[name=110213013]

## TCP/IP

### 上層內容依賴下層服務
![](https://upload.wikimedia.org/wikipedia/commons/thumb/3/3b/UDP_encapsulation.svg/1024px-UDP_encapsulation.svg.png)

![](https://i.imgur.com/8TNIxUy.png)

- 以傳輸控制協議（TCP）和網際網路協議（IP）命名
- 定義TCP中的較高級別操作，負責IP中的數據傳輸
- 1983年在ARPANET轉換為TCP/IP時被採用為互聯網標準
- 層次結構：
  - 應用層
  - 傳輸層
  - 網際網路層
  - 數據鏈接層

## OSI Model

- 全名：開放系統互連
- 由國際標準組織（ISO）提出
- 用於標準化全球互聯計算機框架的概念模型
- 層次結構：
  - 應用層
  - 表示層
  - 會話層
  - 傳輸層
  - 網絡層
  - 數據鏈接層
  - 物理層

## OSI Model vs TCP/IP Comparison

![](https://hackmd-prod-images.s3-ap-northeast-1.amazonaws.com/uploads/upload_8433f66bce1a61b23f5233881260506e.png?AWSAccessKeyId=AKIA3XSAAW6AWSKNINWO&Expires=1709811372&Signature=WE3chhmZ6rwjoA0FYa2xx8Va7IY%3D)


## Link Layer

- 定義如何傳輸幀（數據單元）
- 在網絡硬件設備（相同子網）之間建立通信
- 使用物理地址（MAC地址）來識別接收者
- 例子：
  - 以太網（802.3）：本地區域網通信協議，使用雙絞線纜，CSMA/CD
  - Wi-Fi（802.11）：本地區域網的無線通信標準，使用5GHz/2.4GHz無線電波，CSMA/CA

### 乙太網框架格式
![](https://i.imgur.com/XnOkqSY.png)

1. **前導碼：** 56位代碼，表示數據傳輸的開始。
2. **SFD（開始幀定界符）：** 將前導碼與內容分隔開來，表示傳輸的開始。
3. **目的/源地址：** 收件人和發件人的MAC地址（每個48位）。
4. **長度或類型：** 如果<= 1500，表示幀的長度；如果> 1500，表示協議的類型。
5. **數據：** 幀中實際傳輸的數據，大小在46和1500字節之間。
6. **幀檢查序列：** 用於錯誤檢測的固定長度檢查碼。

### MAC位址

- 全名：媒體訪問控制地址
- 網卡識別符
- 長度：6字節（48位），通常以十六進制表示
- 結構：
  - 單播（0）/多播（1）：由第一位確定
  - OUI（組織唯一標識符）：識別製造商，前24位
  - 全球唯一 vs. 本地管理：由OUI擁有者管理 vs. 網絡管理員，接下來的24位
  - 示例：廣播地址、單播、多播

### CSMA/CD（帶有碰撞檢測的載波感應多通道訪問）

- 載波感應：在發送幀之前，主機監聽媒體使用情況。
- 碰撞檢測：檢測碰撞；如果兩個主機同時傳輸，則幀會發生碰撞。
- 用於共享媒體環境（例如以太網）。
- 集線器（中繼器）：在物理層操作的網絡設備，檢測並放大信號。

### 集線器

- 共享媒體網絡設備
- 僅允許一次通信一台主機
- 在網絡中存在碰撞問題
- 用於封包捕獲很方便
- 在現代網絡中不太常見

### 交換器

- 在物理層和數據鏈接層操作
- 通過記住主機的MAC地址建立更靈活的通信
- 允許同時進行多個通信
- 減少了碰撞
- 在現代網絡中廣泛使用

### CSMA/CA（帶有碰撞避免的載波感應）
![](https://i.imgur.com/J8XAi1O.png)

- 用於Wi-Fi等無線通信
- 由於無線環境無法有效檢測碰撞，因此使用碰撞避免而不是檢測
- 在傳輸前經常監聽頻道
- 使用隨機退避時間，以減少碰撞機會

## Internet Layer

### IP Address

- 32位元（IPv4）
- 128位元（IPv6）
- 分類：
  - A、B、C、D、E（僅作為實驗）
- 私人IP地址範圍
- 保留IP地址範圍

### IPv4 vs IPv6

- IPv4：32位元，正在積極過渡到IPv6。
- IPv6：128位元，地址更多，滿足日益增長的連接設備需求。

### Subnetting

- 將大型IP地址範圍劃分為更小、更容易管理的子網
- 例子：將一個大型公司的IP地址範圍分為多個部門

### IPv4地址表示法

- 四組十進制數字，以點分十進制表示（例如，192.168.0.1）
- 每組8位
- 類型：A、B、C、D、E

### IPv6地址表示法

- 八組四個十六進制數字，以冒號分隔（例如，2001:0db8:85a3:0000:0000:8a2e:0370:7334）
- 每組16位
- 省略零和連續的冒號
- 單個雙冒號（::）表示一組連續的零
- 回環地址（::1）、未指定地址（::）、連結本地地址（fe80::/10）

### Subnet Mask

- 確定IP地址的網絡和主機部分
- 以與IP地址相同的格式編寫
- 例子：255.255.255.0

### Router

- 連接多個網絡
- 根據IP地址進行決策
- 在網絡之間路由數據

## Transport Layer

### UDP（用戶數據報協議）

- 無連接協議
- 速度更快，開銷更低
- 沒有錯誤檢測機制
- 適用於對延遲容忍度較低的應用
- 例子：DNS、流媒體媒體、在線遊戲

### TCP（傳輸控制協議）

- 連接導向協議
- 可靠並確保數據完整性
- 錯誤檢測和更正機制
- 適用於需要可靠和精確的數據交付的應用
- 例子：HTTP、電子郵件、文件傳輸

## Application Layer

### DNS（域名系統）

- 將域名翻譯為IP地址
- 分佈式層次數據庫
- 將可讀的名稱解析為IP地址
- 組件：解析器、根DNS服務器、頂級域DNS服務器、授權DNS服務器

### HTTP（超文本傳輸協議）

- 世界廣域網上數據通信的基礎
- 定義消息格式和傳輸方法
- 使用請求/響應模型
- 無狀態協議

### DHCP（動態主機配置協議）
![](https://upload.wikimedia.org/wikipedia/commons/thumb/e/e4/DHCP_session.svg/339px-DHCP_session.svg.png)

- 將IP地址動態分配給網絡中的設備
- 簡化網絡管理
- 為設備提供臨時IP地址
- 確保IP地址的有效使用
- 組件：DHCP服務器、DHCP客戶端
