基本網路介紹
===
[TOC]
###### tags: `network` `winter_camp` `tutorial`
# Introduction
## Internet? Intranet?
---
### Internet vs Intranet
Internet 是 **開放的﹐不屬於任何人** ﹐只要能連接得到您就屬於其中一員﹐也就能獲得上面開放的資源﹔相對而言﹐Intranet 則是 **專屬的﹑非開放的**﹐它往往存在於於私有網路之上

(上圖為internet , 下圖為 intranet)
---
### Lan & Wan
一個網路可以由兩台電腦組成﹐也可以擁有在同一大樓裡面的上千台電腦和使用者。我們通常指這樣的網路為局域網 ==(LAN﹐ Local Area Network)== ﹐由LAN再延伸出去更大的範圍﹐比如整個城市甚至整個國家﹐這樣的網路我們稱為廣域網 ==(WAN﹐ Wide Area Network)==
---

# OSI 模型

---
## 第一層:物理層(physical layer)
網路裝置之間的位元資料傳輸,也就是在電線或其他物理線材上,傳遞0與1電子訊號,形成網路。
規格包含: 纜線的規格、==傳輸速度==,以及資料傳輸的電壓值
EX: 乙太網卡 、 wifi發射器
---
## 第二層:資料連結層(data link layer)
資料連結層將實體層的數位訊號封裝成一組符合邏輯傳輸資料
包含 ==MAC(Media Access Control,MAC)== 位址是一組序號,每個網路設備的MAC位址都是獨一無二的,可以讓網路設備在區域網路溝通時彼此識別
EX: switch
---
## 第三層:網路層(network layer)
讓資料能夠在網路間傳遞。這一層中最主要的通訊協定是網際網路協定(Internet Protocol,IP),資料在傳輸時,該協定將IP位址加入傳輸資料內,並把資料組成封包(Packet)。在網路上傳輸時,封包裡面的IP位址會告訴網路設備這筆資料的來源及目的地。
EX: router
---
## 第四層:傳輸層(Transport layer)
傳輸層主要負責電腦整體的資料傳輸及控制,是OSI模型中的關鍵角色,它可以將一個較大的資料切割成多個適合傳輸的資料,替模型頂端的第五、六、七等三個通訊層提供流量管制及錯誤控制。
---
## 第五層:會議層(session layer)
這個層級負責建立網路連線,等到資料傳輸結束時,再將連線中斷。
---
## 第六層:展示層(presentation layer)
應用層收到的資料後,透過展示層可轉換表達方式,例如將ASCII編碼轉成應用層可以使用的資料,或是處理圖片及其他多媒體檔案,如JPGE圖片檔或MIDI音效檔。
---
## 第七層:應用層(application layer)
應用層主要功能是處理應用程式,進而提供使用者網路應用服務。這一層的協定也很多。
EX: 線上遊戲,line,瀏覽器等
---
# TCP/IP
## Introduction
### 歷史

---

---
### TCP/IP 分層模型
#### 與OSI 模型的比較關係

#### 實作方式圖
應用程式利用套接字,可以設置對端的IP位址、埠號,並實現數據的發送與接收。

#### 舉例

---
### Address
#### MAC address
* 每張網卡獨一無二的位置資訊,由48bit 所表示
* 前24bits 為 製造商
* 後24bits 為 Serial number
* EX: 00:07:e9:10:e6:6b
#### IP address
* 32-bits Internet Address IPV4
* EX:140.113.0.1
#### port
* 16bits
* EX:SSH port 22, ROS port 11311

---
## IP
### Loopback Interface
使使用者可以在同一個host 內透過網路概念相互溝通
EX : ROS
---
### IP address

EX:
* NCTU
* Class B address: 140.113.0.0
* Network ID :140.113
* Number of hosts:256*256
---
### Subnetting and Netmask
* Problem of Class A or B
* Number of hosts is enormous
* Hard to maintain
* Solution -> subnetting
* Problem of Class C network
* routes huge
* Solution -> Classless Inter-Domain Routing
---
#### subnet
EX:
* Class B address : 140.113.0.0
* 256 個 Class C IP address
#### netmask
決定有多少 bits 的 network-ID 要拿來當作 network-ID
EX:
* 255.255.255.0
* 256 hosts available
二進位制:
dec : 255:255:255:0
bin : 11111111:11111111:11111111:00000000
* 255.255.255.248
* 8 hosts available
dec : 255:255:255:248
bin : 11111111:11111111:11111111:11111000
簡寫:
140.113.209.8/24
* 會需要使用
* 第一個ip 當作 network ID
* 最後一個ip 當作 boardcast
---
##### 簡單實做
指令:ipcalc 192.168.2.131/24

{"metaMigratedAt":"2023-06-15T18:28:09.782Z","metaMigratedFrom":"Content","title":"基本網路介紹","breaks":true,"contributors":"[{\"id\":\"47601b27-13e9-4cff-ab9f-353000759668\",\"add\":3554,\"del\":460}]"}