280 likes | 416 Views
課程參與度之評估方式. 上課時必須專心聽講,跟上進度,參與討論 扣 分項目 玩線上遊戲一次扣 1 分 玩手機一次扣 1 分 睡覺一次扣 1 分 聊天一次扣 1 分 無法回答老師提出的問題一次扣 1 分 加分項目 主動回答老師的問題一次加 2 分 找出老師程式中的錯誤一次加 1 分 修正老師程式中的錯誤一次加 4 分. 網路程式設計 CH03 網路基礎. 鄧姚文. 大綱. TCP/IP 協定 常用協定. 3-1 TCP/IP 協定. Transmission Control Protocol/Internet Protocol 目前網際網路的基礎通訊協定
E N D
課程參與度之評估方式 • 上課時必須專心聽講,跟上進度,參與討論 • 扣分項目 • 玩線上遊戲一次扣1分 • 玩手機一次扣1分 • 睡覺一次扣1分 • 聊天一次扣1分 • 無法回答老師提出的問題一次扣1分 • 加分項目 • 主動回答老師的問題一次加2分 • 找出老師程式中的錯誤一次加1分 • 修正老師程式中的錯誤一次加4分
網路程式設計CH03網路基礎 鄧姚文
大綱 TCP/IP協定 常用協定
3-1TCP/IP協定 Transmission Control Protocol/Internet Protocol 目前網際網路的基礎通訊協定 底層的是IP協定,屬於網路層 上層的TCP協定,為傳輸層 相加成為一個完善的網路通訊協定
3-1TCP/IP協定 • TCP/IP內容分為四個層級,由下而上分別為網路存取層、網際網路層、傳送層與應用層 • 網路存取層 • 定義了最底層網路如何傳送IP封包 • 由網路設備廠商所實作 • 網際網路層 • 為底層傳送的資料加裝IP的標頭資料 • 依據封包內的目的地判斷是否需要往路由器傳送
3-1TCP/IP協定 • 傳送層 • 主要功能是確認資料已被接收方接收 • 制定機制以確認並檢查資料傳送的正確性 • 為封包加上標頭,標頭內記載著一些有關該封包應由那個程式處理 • 應用層 • 提供應用程式服務一個連接介面協定 • 從下層的傳送層轉換後給予應用程式 • FTP、TELNET與HTTP等常用的協定
3-1TCP/IP協定 • IP協定 • 主要目的是讓主機與主機之間能夠傳送資料 • 定義主機應該有一個「位址(Address)」 • 制定了IP位址的定址方法與IP封包的規範 • 在資料傳送前,不需要先與對方主機建立專用的通路 • 屬於非可靠性傳輸 • 無錯誤偵測的功能,且封包到達的順序不一定與發送時相同
3-1TCP/IP協定 • IP協定 • IP定址 • 定址方式,以便識別電腦和網路 • ipv4使用32個位元(bit) • 一個位址資訊包括了網路(network)ID和主機ID
3-1TCP/IP協定 • IP協定 • IP定址 • 主機的IP位址包括4個位元組(byte)分成2個部份 • 網路位址(1至3個位元組) • 節點或工作站位址(1至3個位元組) • 網路類別 • Class A位址 • Class B位址 • Class C位址 • Class D位址 • Class E位址
3-1TCP/IP協定 • IP協定 • 網路類別 • Class A位址 • 第一個位元組的範圍是0至127,最多可以有16,777,216個主機 • Class B位址 • 第一個位元組的範圍是128至191,每個Class B網域最多可以有65,534個主機 • Class C位址 • 第一個位元組的範圍是192至223,每個Class C 網路最多可以有255個主機節點 • Class D位址 • 第一個位元組的範圍是224至239,Class D位址是給多重廣播封包用的 • Class E位址 • 第一個位元組的範圍是240至255,保留用作實驗用途,通常是給廣播用的
3-1TCP/IP協定 • ARP協定 • ARP(Address Resolution Protocol)是以乙太網為基礎而設計出來的位址解析協定 • 以查詢的方式得到IP位址與硬體位址(MAC Address)的對應
3-1TCP/IP協定 • UDP協定 • 定義於RFC 768號標準 • 非連線式的資料傳送方式,傳送資料前不預先建立固定的線路 • 不保證資料正確送達 • 不保證資料傳送的順序性 • 傳送效率高 • 不建連線 • 不控制流量 • 不確認送達 • 不重送遺失的封包
3-1TCP/IP協定 • TCP協定 • 定義於RFC 793標準中 • 以連線為導向的通訊協定 • 先建立一條穩定的連線通道 • 特色 • 確保資料傳遞的可靠度 • 適合傳遞大量資料 • 確保資料傳送的順序性
3-1TCP/IP協定 • TCP協定 • 建立之間的連線通道-「三向交握」 • client送出TCP的SYN封包至server • server回應SYN/ACK封包至client • client送出ACK封包至server • server確認所有封包都無誤建立雙向傳輸通道
3-2 常用協定 • TELNET協定 • 遠端登入 • 一個TELNET用戶端(client)應用程式與實作TELNET伺服器(server)的服務軟體
3-2 常用協定 • TELNET協定 • TELNET用戶端 • TELNET client是一個應用程式,利用它連線至TELNET伺服器上的埠號(port),預設使用21埠。 • 遠端登入TELNET伺服器必需先擁有該伺服器的一組使用者帳號與密碼,連線後進行帳號與密碼的驗證,驗證成功後會由伺服器傳來「命令提示字元」
3-2 常用協定 • TELNET協定 • TELNET協定標準 • RFC-854定義了TELNET的運作標準 • TELNET使用連線導向的TCP • 以全雙工方式進行互動傳輸 • 兩方以虛擬網路終端機NVT(Network Virtual Terminal)為溝通的橋樑 • NVT為異質的client與server兩方一個中介標準
3-2 常用協定 • TELNET協定 • TELNET指令規範:TELNET傳送的內容分為二類 • 資料 • 一般的字元或文字資料 • 要求登入訊息 • 使用者按下的按鍵字元 • 欲執行的指令 • 命令 • 傳送協定內規範的命令前必需先傳送一個特殊值255,稱為IAC(Interpret As Command)
3-2 常用協定 • FTP協定 • RFC959 • 制定了「命令」與「回應」的規格 • 使用2個TCP連接 • port 21將FTP指令從用戶端傳送到伺服器 • port 20進行檔案傳輸工作
3-2 常用協定 • FTP協定 • 連線步驟 • 連接FTP伺服器 • 登入 • 伺服器要求密碼 • 存取伺服器上的檔案資源
3-2 常用協定 • DNS • 專門回答名稱與IP對應查詢結果的軟體或主機稱為名稱伺服器DNS(domain name server) • 一套讓使用者容易記憶或辨識的方法與轉換系統 • 將一個容易辨識的網域名稱對應到一個主機IP位址
3-2 常用協定 • DNS網域名稱架構 • 整個網域名稱架構是以最頂端的「根網域(root)」為中心,往下發展的樹狀結構
3-2 常用協定 • DNS網域名稱架構 • 每個網域名稱的最上層都是根網域,名稱的最後都會有個「.」,就由DNS 伺服器在處理時自動加上,並未強制規定一定要有「.」
3-2 常用協定 • DNS查詢模式 • 每個網域(例如:ibm.com、yahoo.com 等)都由自己負責的主機管理 • 定義一部負責的DNS 伺服器 • 「遞迴查詢(Recursive)」 • 它將會自行去詢問其他負責的DNS伺服器,伺服器應回應查詢的結果或回應查詢不到的錯誤訊息 • 「交談式查詢(Iterative)」 • 當被查詢端DNS主機沒有完整的答案時,可以回應一個「參考對象(referral)」,查詢端可利用這個參考對象資訊再去查詢另一台DNS主機
3-2 常用協定 • DNS協定 • DNS訊息傳輸使用了UDP與TCP兩種協定 • 多數的查詢都採UDP協定方式 • 一些資料量較大而且需要確保資料傳輸的工作,則是採用TCP協定來傳輸資料 • RFC-1035號標準文件
3-2 常用協定 • HTTP(HyperText Transfer Protocol) • 網頁服務都要遵循HTTP • 由網際網路協會與Internet工作小組所制定的通訊協定 • 基於TCP的的通訊協定 • 負責產生要求(request)的客戶端(client) • 接收要求而產生回應(response)的伺服器端(server)
3-2 常用協定 • HTTP • RFC-2616 • 廣泛使用HTTP 1.1版 • HTTP使用TCP • HTTP/1.1協定定義了八種方法(methods) • OPTIONS、HEAD、GET、POST、PUT、DELETE、TRACE、CONNECT
常用通訊協定 • SMTP 遞送電子郵件 • Simple Mail Transfer Protocol • RFC 821 • Port Number: 25 • 指令 • HELO 或 EHLO • MAIL FROM • RCPT TO • DATA