<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Decode360's Blog

    業精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
      397 隨筆 :: 33 文章 :: 29 評論 :: 0 Trackbacks
    TCP和UDP的區別
    ?
    ??? 發現對TCP和UDP的認識很是不專業,所以專門上網看看,發現分不清楚的人還真挺多,所以搞點詳細資料看看。以下詳細內容:
    ?
    ??? 從專業的角度說,TCP的可靠保證,是它的三次握手機制,這一機制保證校驗了數據,保證了他的可靠性。而UDP就沒有了,所以不可靠。不過UDP的速度是TCP比不了的,而且UDP的反應速度更快,QQ就是用UDP協議傳輸的,HTTP是用TCP協議傳輸的,不用我說什么,自己體驗一下就能發現區別了。再有就是UDP和TCP的目的端口不一樣(這句話好象是多余的),而且兩個協議不在同一層,TCP在三層,UDP不是在四層就是七層。
    ?
    ?
    TCP/IP協議介紹
    ?
    TCP/IP的通訊協議
    ?
    ??? 這部分簡要介紹一下TCP/IP的內部結構,為討論與互聯網有關的安全問題打下基礎。TCP/IP協議組之所以流行,部分原因是因為它可以用在各種各樣的信道和底層協議(例如T1和X.25、以太網以及RS-232串行接口)之上。確切地說,TCP/IP協議是一組包括TCP協議和IP協議,UDP(User Datagram Protocol)協議、ICMP(Internet Control Message Protocol)協議和其他一些協議的協議組。
    ?
    TCP/IP整體構架概述
    ?
    ??? TCP/IP協議并不完全符合OSI的七層參考模型。傳統的開放式系統互連參考模型,是一種通信協議的7層抽象的參考模型,其中每一層執行某一特定任務。該模型的目的是使各種硬件在相同的層次上相互通信。這7層是:物理層、數據鏈路層、網路層、傳輸層、話路層、表示層和應用層。而TCP/IP通訊協議采用了4層的層級結構,每一層都呼叫它的下一層所提供的網絡來完成自己的需求。這4層分別為:
    ??? 應用層:應用程序間溝通的層,如簡單電子郵件傳輸(SMTP)、文件傳輸協議(FTP)、網絡遠程訪問協議(Telnet)等。
    ??? 傳輸層:在此層中,它提供了節點間的數據傳送服務,如傳輸控制協議(TCP)、用戶數據報協議(UDP)等,TCP和UDP給數據包加入傳輸數據并把它傳輸到下一層中,這一層負責傳送數據,并且確定數據已被送達并接收。
    ??? 互連網絡層:負責提供基本的數據封包傳送功能,讓每一塊數據包都能夠到達目的主機(但不檢查是否被正確接收),如網際協議(IP)
    ??? 網絡接口層:對實際的網絡媒體的管理,定義如何使用實際網絡(如Ethernet、Serial Line等)來傳送數據。
    ?
    TCP/IP中的協議
    ?
    ??? 以下簡單介紹TCP/IP中的協議都具備什么樣的功能,都是如何工作的:
    ?
    1.IP
    ?
    ??? 網際協議IP是TCP/IP的心臟,也是網絡層中最重要的協議。
    ??? IP層接收由更低層(網絡接口層例如以太網設備驅動程序)發來的數據包,并把該數據包發送到更高層---TCP或UDP層;相反,IP層也把從TCP或UDP層接收來的數據包傳送到更低層。IP數據包是不可靠的,因為IP并沒有做任何事情來確認數據包是按順序發送的或者沒有被破壞。IP數據包中含有發送它的主機的地址(源地址)和接收它的主機的地址(目的地址)。
    ??? 高層的TCP和UDP服務在接收數據包時,通常假設包中的源地址是有效的。也可以這樣說,IP地址形成了許多服務的認證基礎,這些服務相信數據包是從一個有效的主機發送來的。IP確認包含一個選項,叫作IP source routing,可以用來指定一條源地址和目的地址之間的直接路徑。對于一些TCP和UDP的服務來說,使用了該選項的IP包好象是從路徑上的最后一個系統傳遞過來的,而不是來自于它的真實地點。這個選項是為了測試而存在的,說明了它可以被用來欺騙系統來進行平常是被禁止的連接。那么,許多依靠IP源地址做確認的服務將產生問題并且會被非法入侵。
    ?
    2.TCP
    ?
    ??? 如果IP數據包中有已經封好的TCP數據包,那么IP將把它們向‘上’傳送到TCP層。TCP將包排序并進行錯誤檢查,同時實現虛電路間的連接。TCP數據包中包括序號和確認,所以未按照順序收到的包可以被排序,而損壞的包可以被重傳。
    ??? TCP將它的信息送到更高層的應用程序,例如Telnet的服務程序和客戶程序。應用程序輪流將信息送回TCP層,TCP層便將它們向下傳送到IP層,設備驅動程序和物理介質,最后到接收方。
    ??? 面向連接的服務(例如Telnet、FTP、rlogin、X Windows和SMTP)需要高度的可靠性,所以它們使用了TCP。DNS在某些情況下使用TCP(發送和接收域名數據庫),但使用UDP傳送有關單個主機的信息。
    ?
    3.UDP
    ?
    ??? UDP與TCP位于同一層,但對于數據包的順序錯誤或重發。因此,UDP不被應用于那些使用虛電路的面向連接的服務,UDP主要用于那些面向查詢---應答的服務,例如NFS。相對于FTP或Telnet,這些服務需要交換的信息量較小。使用UDP的服務包括NTP(網落時間協議)和DNS(DNS也使用TCP)。
    ??? 欺騙UDP包比欺騙TCP包更容易,因為UDP沒有建立初始化連接(也可以稱為握手,因為在兩個系統間沒有虛電路),也就是說,與UDP相關的服務面臨著更大的危險。
    ?
    4.ICMP
    ?
    ??? ICMP與IP位于同一層,它被用來傳送IP的的控制信息。它主要是用來提供有關通向目的地址的路徑信息。ICMP的‘Redirect’信息通知主機通向其他系統的更準確的路徑,而‘Unreachable’信息則指出路徑有問題。另外,如果路徑不可用了,ICMP可以使TCP連接‘體面地’終止。PING是最常用的基于ICMP的服務。
    ?
    5. TCP和UDP的端口結構?
    ?
    ??? TCP和UDP服務通常有一個客戶/服務器的關系,例如,一個Telnet服務進程開始在系統上處于空閑狀態,等待著連接。用戶使用Telnet客戶程序與服務進程建立一個連接。客戶程序向服務進程寫入信息,服務進程讀出信息并發出響應,客戶程序讀出響應并向用戶報告。因而,這個連接是雙工的,可以用來進行讀寫。
    ??? 兩個系統間的多重Telnet連接是如何相互確認并協調一致呢?TCP或UDP連接唯一地使用每個信息中的如下四項進行確認:
    ??? 1.源IP地址 發送包的IP地址。
    ??? 2.目的IP地址 接收包的IP地址。
    ??? 3.源端口 源系統上的連接的端口。
    ??? 4.目的端口 目的系統上的連接的端口。
    ?
    ??? 端口是一個軟件結構,被客戶程序或服務進程用來發送和接收信息。一個端口對應一個16比特的數。服務進程通常使用一個固定的端口,例如,SMTP使用25、Xwindows使用6000。這些端口號是廣為人知的,因為在建立與特定的主機或服務的連接時,需要這些地址和目的地址進行通訊。
    ?
    ?
    ?
    posted on 2009-04-27 22:16 decode360 閱讀(276) 評論(0)  編輯  收藏 所屬分類: 01.IT_Base
    主站蜘蛛池模板: 一个人看的www免费视频在线观看| 野花视频在线官网免费1| 国产精品视频白浆免费视频| 国产亚洲精久久久久久无码77777 国产亚洲精品成人AA片新蒲金 | 亚洲欧美一区二区三区日产| 野花高清在线电影观看免费视频| 亚洲欧洲校园自拍都市| 国产成人精品免费视频大| 亚洲最新中文字幕| 久久电影网午夜鲁丝片免费| 亚洲偷自拍另类图片二区| 全免费a级毛片免费看不卡| 含羞草国产亚洲精品岁国产精品| 免费a级黄色毛片| 久久精品无码专区免费| 亚洲国产精品第一区二区| 小草在线看片免费人成视久网| 亚洲视频一区二区在线观看| 在线观看无码AV网站永久免费| 亚洲精华国产精华精华液好用| 免费va在线观看| 国产精品免费大片| 亚洲av永久无码精品三区在线4| 在线播放免费人成视频在线观看 | 亚洲乱码无码永久不卡在线| 水蜜桃视频在线观看免费播放高清 | 91青青国产在线观看免费| 亚洲AV成人噜噜无码网站| 四虎永久免费网站免费观看| 一级毛片在线免费视频| 亚洲AV日韩AV永久无码免下载 | 羞羞漫画页面免费入口欢迎你| 国内精品久久久久久久亚洲| 777成影片免费观看| 久久精品国产亚洲av天美18| 国产亚洲精品自在线观看| 久久午夜夜伦鲁鲁片免费无码影视 | 亚洲AV无码不卡在线播放| 日韩一区二区a片免费观看| 四虎影视久久久免费| 亚洲综合网美国十次|