A. 傳輸層有哪些協議
傳輸層協議:
1、傳輸控制協議TCP
2、用戶數據報協議UDP
TCP協議:面向連接的可靠傳輸協議。利用TCP進行通信時,首先要通過三步握手,以建立通信雙方的連接。TCP提供了數據的確認和數據重傳的機制,保證發送的數據一定能到達通信的對方。
UDP協議:是無連接的,不可靠的傳輸協議。採用UDP進行通信時不用建立連接,可以直接向一個IP地址發送數據,但是不能保證對方是否能收到。
(1)運輸層的網路協議有哪些擴展閱讀:
OSI模型(OSI model),一種概念模型,由國際標准化組織提出,一個試圖使各種計算機在世界范圍內互連為網路的標准框架。定義於ISO/IEC 7498-1。
OSI將計算機網路體系結構(architecture)劃分為以下七層:
1、物理層: 將數據轉換為可通過物理介質傳送的電子信號相當於郵局中的搬運工人。
2、數據鏈路層: 決定訪問網路介質的方式。
3、網路層: 使用權數據路由經過大型網路 相當於郵局中的排序工人。
4、傳輸層: 提供終端到終端的可靠連接 相當於公司中跑郵局的送信職員。
5、會話層: 允許用戶使用簡單易記的名稱建立連接 相當於公司中收寄信、寫信封與拆信封的秘書。
6、表示層: 協商數據交換格式 相當公司中簡報老闆、替老闆寫信的助理。
7、應用層: 用戶的應用程序和網路之間的介面老闆。
B. 傳輸層協議有哪些
TCP和UDP。
傳輸層主要是負責應用程序之間的數據傳輸,傳輸層主要的協議有TCP和UDPUDP無連接、不可靠、面向數據報的傳輸,TCP是有連接的可靠的面向位元組流的傳輸。
傳輸層(英語:Transport Layer)在計算機網路中是互聯網協議包與開放系統互連(OSI)網路堆棧中協議的分層結構中的方法的一個概念劃分。
UPD協議的格式
16位的源埠/16位的目的埠:描述數據從哪個進程發送到哪個進程 – 負責實現應用程序間的數據傳輸。
16位的數據報長度:包含UDP報文頭部在內的整體報文長度,16位存儲的最大數字為65535。
16位的校驗和:二進制反碼求和演算法,用於校驗接收到的數據和發送的數據是否一致發送方在發送數據之前,校驗和為0,從完整報文的第0個位元組開始,每個位元組進行取反相加,超過16位的部分取出來,再次與低16位進行相加,最後得到一個校驗和填充到協議欄位中接收方接收到數據之後,從完整報文的第0個位元組開始,每個位元組進行取反相加,最終的結果如果為0,則表示數據一致,否則則表示數據不一致。
C. 傳輸層有哪些協議
你好,簡述: 傳輸層安全協議詳解 傳輸層安全協議的目的是為了保護傳輸層的安全,並在傳輸層上提供實現保密、認證和完整性的方法。
1.SSL(安全套接字層協議) SSL(Secure Socket Layer)是由Netscape設計的一種開放協議;它指定了一種在應用程序協議(例如http、telnet、NNTP、FTP)和TCP/IP之間 提供數據安全性分層的機制。它為TCP/IP連接提供數據加密、伺服器認證、消息完整性以及可選的客戶機認證。 SSL的主要目的是在兩個通信應用程序之間提供私密信和可靠性。這個過程通過3個元素來完成:
l 握手協議。這個協議負責協商被用於客戶機和伺服器之間會話的加密參數。當一個SSL客戶機和伺服器第一次開始通信時,它們在一個協議版本上達成一致,選擇加密演算法,選擇相互認證,並使用公鑰技術來生成共享密鑰。
l 記錄協議。這個協議用於交換應用層數據。應用程序消息被分割成可管理的數據塊,還可以壓縮,並應用一個MAC(消息認證代碼);然後結果被加密並傳輸。接受方接受數據並對它解密,校驗MAC,解壓縮並重新組合它,並把結果提交給應用程序協議。
l 警告協議。這個協議用於指示在什麼時候發生了錯誤或兩個主機之間的會話在什麼時候終止。
下面我們來看一個使用WEB客戶機和伺服器的範例。WEB客戶機通過連接到一個支持SSL的伺服器,啟動一次SSL會話。支持SSL的典型 WEB伺服器在一個與標准HTTP請求(默認為埠80)不同的埠(默認為443)上接受SSL連接請求。當客戶機連接到這個埠上時,它將啟動一次建 立SSL會話的握手。當握手完成之後,通信內容被加密,並且執行消息完整性檢查,知道SSL會話過期。SSL創建一個會話,在此期間,握手必須只發生過一 次。
SSL握手過程步驟:
步驟1:SSL客戶機連接到SSL伺服器,並要求伺服器驗證它自身的身份。
步驟2:伺服器通過發送它的數字證書證明其身份。這個交換還可以包括整個證書鏈,直到某個根證書權威機構(CA)。通過檢查有效日期並確認證書包含有可信任CA的數字簽名,來驗證證書。
步驟3:然後,伺服器發出一個請求,對客戶端的證書進行驗證。但是,因為缺乏公鑰體系結構,當今的大多數伺服器不進行客戶端認證。
步驟4:協商用於加密的消息加密演算法和用於完整性檢查的哈希函數。通常由客戶機提供它支持的所有演算法列表,然後由伺服器選擇最強健的加密演算法。
步驟5:客戶機和伺服器通過下列步驟生成會話密鑰: a. 客戶機生成一個隨機數,並使用伺服器的公鑰(從伺服器的證書中獲得)對它加密,發送到伺服器上。 b. 伺服器用更加隨機的數據(從客戶機的密鑰可用時則使用客戶機密鑰;否則以明文方式發送數據)響應。 c. 使用哈希函數,從隨機數據生成密鑰。
SSL協議的優點是它提供了連接安全,具有3個基本屬性: l 連接是私有的。在初始握手定義了一個密鑰之後,將使用加密演算法。對於數據加密使用了對稱加密(例如DES和RC4)。 l 可以使用非對稱加密或公鑰加密(例如RSA和DSS)來驗證對等實體的身份。 l 連接時可靠的。消息傳輸使用一個密鑰的MAC,包括了消息完整性檢查。其中使用了安全哈希函數(例如SHA和MD5)來進行MAC計算。
對於SSL的接受程度僅僅限於HTTP內。它在其他協議中已被表明可以使用,但還沒有被廣泛應用。
注意: IETF正在定義一種新的協議,叫做「傳輸層安全」(Transport Layer Security,TLS)。它建立在Netscape所提出的SSL3.0協議規范基礎上;對於用於傳輸層安全性的標准協議,整個行業好像都正在朝著 TLS的方向發展。但是,在TLS和SSL3.0之間存在著顯著的差別(主要是它們所支持的加密演算法不同),這樣,TLS1.0和SSL3.0不能互操 作。
2.SSH(安全外殼協議) SSH是一種在不安全網路上用於安全遠程登錄和其他安全網路服務的協議。它提供了對安全遠程登錄、安全文件傳輸 和安全TCP/IP和X-Window系統通信量進行轉發的支持。它可以自動加密、認證並壓縮所傳輸的數據。正在進行的定義SSH協議的工作確保SSH協 議可以提供強健的安全性,防止密碼分析和協議攻擊,可以在沒有全球密鑰管理或證書基礎設施的情況下工作的非常好,並且在可用時可以使用自己已有的證書基礎 設施(例如DNSSEC和X.509)。
SSH協議由3個主要組件組成: l 傳輸層協議,它提供伺服器認證、保密性和完整性,並具有完美的轉發保密性。有時,它還可能提供壓縮功能。 l 用戶認證協議,它負責從伺服器對客戶機的身份認證。 l 連接協議,它把加密通道多路復用組成幾個邏輯通道。
SSH傳輸層是一種安全的低層傳輸協議。它提供了強健的加密、加密主機認證和完整性保護。SSH中的認證是基於主機的;這種協議不執行用戶認證。可以在SSH的上層為用戶認證設計一種高級協議。
這種協議被設計成相當簡單而靈活,以允許參數協商並最小化來回傳輸的次數。密鑰交互方法、公鑰演算法、對稱加密演算法、消息認證演算法以及哈希演算法等都需要協商。
數據完整性是通過在每個包中包括一個消息認證代碼(MAC)來保護的,這個MAC是根據一個共享密鑰、包序列號和包的內容計算得到的。
在UNIX、Windows和Macintosh系統上都可以找到SSH實現。它是一種廣為接受的協議,使用眾所周知的建立良好的加密、完整性和公鑰演算法。
3.SOCKS協議
「套接字安全性」(socket security,SOCKS)是一種基於傳輸層的網路代理協議。它設計用於在TCP和UDP領域為客戶機/伺服器應用程序提供一個框架,以方便而安全的使用網路防火牆的服務。
SOCKS最初是由David和Michelle Koblas開發的;其代碼在Internet上可以免費得到。自那之後經歷了幾次主要的修改,但該軟體仍然可以免費得到。SOCKS版本4為基於TCP 的客戶機/伺服器應用程序(包括telnet、FTP,以及流行的信息發現協議如http、Wais和Gopher)提供了不安全的防火牆傳輸。 SOCKS版本5在RFC1928中定義,它擴展了SOCKS版本
4,包括了UDP;擴展了其框架,包括了對通用健壯的認證方案的提供;並擴展了定址方案,包括了域名和IPV6地址。
當前存在一種提議,就是創建一種機制,通過防火牆來管理IP多點傳送的入口和出口。這是通過對已有的SOCKS版本5協議定義擴展來完成的,它提供 單點傳送TCP和UDP流量的用戶級認證防火牆傳輸提供了一個框架。但是,因為SOCKS版本5中當前的UDP支持存在著可升級性問題以及其他缺陷(必須 解決之後才能實現多點傳送),這些擴展分兩部分定義。 l 基本級別UDP擴展。 l 多點傳送UDP擴展。
SOCKS是通過在應用程序中用特殊版本替代標准網路系統調用來工作的(這是為什麼SOCKS有時候也叫做應用程序級代理的原因)。這些新的系 統調用在已知埠上(通常為1080/TCP)打開到一個SOCKS代理伺服器(由用戶在應用程序中配置,或在系統配置文件中指定)的連接。如果連接請求 成功,則客戶機進入一個使用認證方法的協商,用選定的方法認證,然後發送一個中繼請求。SOCKS伺服器評價該請求,並建立適當的連接或拒絕它。當建立了 與SOCKS伺服器的連接之後,客戶機應用程序把用戶想要連接的機器名和埠號發送給伺服器。由SOCKS伺服器實際連接遠程主機,然後透明地在客戶機和 遠程主機之間來回移動數據。用戶甚至都不知道SOCKS伺服器位於該循環中。
使用SOCKS的困難在於,人們必須用SOCKS版本替代網路系統調用(這個過程通常稱為對應用程序SOCKS化---SOCKS- ification或SOCKS-ifying)。幸運的是,大多數常用的網路應用程序(例如telnet、FTP、finger和whois)都已經被 SOCKS化,並且許多廠商現把SOCKS支持包括在商業應用程序中。
D. 簡述運輸層的網路協議有哪些特點是什麼適合什麼狀況下使用
主要包括TCP和UDP協議
TCP(Transmission Control Protocol,傳輸控制協議)是基於連接的協議,也就是說,在正式收發數據前,必須和對方建立可靠的連接。一個TCP連接必須要經過三次「對話」才能建立起來,其中的過程非常復雜,我們這里只做簡單、形象的介紹,你只要做到能夠理解這個過程即可。我們來看看這三次對話的簡單過程:主機A向主機B發出連接請求數據包:「我想給你發數據,可以嗎?」,這是第一次對話;主機B向主機A發送同意連接和要求同步(同步就是兩台主機一個在發送,一個在接收,協調工作)的數據包:「可以,你什麼時候發?」,這是第二次對話;主機A再發出一個數據包確認主機B的要求同步:「我現在就發,你接著吧!」,這是第三次對話。三次「對話」的目的是使數據包的發送和接收同步,經過三次「對話」之後,主機A才向主機B正式發送數據。
UDP(User Data Protocol,用戶數據報協議)是與TCP相對應的協議。它是面向非連接的協議,它不與對方建立連接,而是直接就把數據包發送過去,沒有接收數據包的就會丟棄掉。