• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            深入淺出講解TCP/UDP協議(轉)

            Posted on 2008-09-29 12:20 T.S Liu 閱讀(356) 評論(0)  編輯 收藏 引用
            http://networking.ctocio.com.cn/tips/333/6145333.shtml
            圖1就是瑞星個人版防火墻軟件設置規則的界面。細心的讀者會發現,圖1中的“協議”欄中有“TCP”、“UDP”等名詞,它們是什么意思呢?現在我們就來講講什么是TCP和UDP。

            我們學習過什么是“數據包”。理解數據包,對于網絡管理的網絡安全具有至關重要的意義。比如,防火墻的作用本質就是檢測網絡中的數據包,判斷其是否違反了預先設置的規則,如果違反就加以阻止。圖1就是瑞星個人版防火墻軟件設置規則的界面。細心的讀者會發現,圖1中的“協議”欄中有“TCP”、“UDP”等名詞,它們是什么意思呢?現在我們就來講講什么是TCP和UDP。

            面向連接的TCP

            “面向連接”就是在正式通信前必須要與對方建立起連接。比如你給別人打電話,必須等線路接通了、對方拿起話筒才能相互通話。

             

            圖1

            TCP(Transmission Control Protocol,傳輸控制協議)是基于連接的協議,也就是說,在正式收發數據前,必須和對方建立可靠的連接。一個TCP連接必須要經過三次“對話”才能建立起來,其中的過程非常復雜,我們這里只做簡單、形象的介紹,你只要做到能夠理解這個過程即可。我們來看看這三次對話的簡單過程:主機A向主機B發出連接請求數據包:“我想給你發數據,可以嗎?”,這是第一次對話;主機B向主機A發送同意連接和要求同步(同步就是兩臺主機一個在發送,一個在接收,協調工作)的數據包:“可以,你什么時候發?”,這是第二次對話;主機A再發出一個數據包確認主機B的要求同步:“我現在就發,你接著吧!”,這是第三次對話。三次“對話”的目的是使數據包的發送和接收同步,經過三次“對話”之后,主機A才向主機B正式發送數據。

            TCP協議能為應用程序提供可靠的通信連接,使一臺計算機發出的字節流無差錯地發往網絡上的其他計算機,對可靠性要求高的數據通信系統往往使用TCP協議傳輸數據。

             

            圖2

            我們來做一個實驗,用計算機A(安裝Windows 2000 Server操作系統)從“網上鄰居”上的一臺計算機B拷貝大小為8,644,608字節的文件,通過狀態欄右下角網卡的發送和接收指標就會發現:雖然是數據流是由計算機B流向計算機A,但是計算機A仍發送了3,456個數據包,如圖2所示。這些數據包是怎樣產生的呢?因為文件傳輸時使用了TCP/IP協議,更確切地說是使用了面向連接的TCP協議,計算機A接收數據包的時候,要向計算機B回發數據包,所以也產生了一些通信量。

             

            圖3

            如果事先用網絡監視器監視網絡流量,就會發現由此產生的數據流量是9,478,819字節,比文件大小多出10.96%(如圖3所示),原因不僅在于數據包和幀本身占用了一些空間,而且也在于TCP協議面向連接的特性導致了一些額外的通信量的產生。

            面向非連接的UDP協議

            “面向非連接”就是在正式通信前不必與對方先建立連接,不管對方狀態就直接發送。這與現在風行的手機短信非常相似:你在發短信的時候,只需要輸入對方手機號就OK了。

            UDP(User Data Protocol,用戶數據報協議)是與TCP相對應的協議。它是面向非連接的協議,它不與對方建立連接,而是直接就把數據包發送過去!

             

            圖4

            UDP適用于一次只傳送少量數據、對可靠性要求不高的應用環境。比如,我們經常使用“ping”命令來測試兩臺主機之間TCP/IP通信是否正常,其實“ping”命令的原理就是向對方主機發送UDP數據包,然后對方主機確認收到數據包,如果數據包是否到達的消息及時反饋回來,那么網絡就是通的。例如,在默認狀態下,一次“ping”操作發送4個數據包(如圖2所示)。大家可以看到,發送的數據包數量是4包,收到的也是4包(因為對方主機收到后會發回一個確認收到的數據包)。這充分說明了UDP協議是面向非連接的協議,沒有建立連接的過程。正因為UDP協議沒有連接的過程,所以它的通信效果高;但也正因為如此,它的可靠性不如TCP協議高。QQ就使用UDP發消息,因此有時會出現收不到消息的情況。

            附表:tcp協議和udp協議的差別

             

            TCP協議和UDP協議各有所長、各有所短,適用于不同要求的通信環境。TCP協議和UDP協議之間的差別如附表所示。

            精品无码久久久久久国产| 伊人久久成人成综合网222| 亚洲综合伊人久久大杳蕉| 午夜天堂精品久久久久| 久久精品国产亚洲网站| 久久精品国产一区二区三区| 午夜精品久久久久成人| 久久久久久久人妻无码中文字幕爆| 伊人久久大香线蕉精品| 久久婷婷色综合一区二区| 国产激情久久久久影院老熟女免费| 一本久久免费视频| 久久精品一区二区| 一本色道久久综合亚洲精品| 久久精品国产精品亜洲毛片| 少妇高潮惨叫久久久久久 | 欧美午夜A∨大片久久| 无码人妻久久一区二区三区| 久久久久噜噜噜亚洲熟女综合 | 国产精品久久毛片完整版| 日韩欧美亚洲国产精品字幕久久久| 久久久久亚洲Av无码专| 久久综合亚洲鲁鲁五月天| 91精品无码久久久久久五月天| 少妇久久久久久被弄高潮| 香蕉久久夜色精品国产2020| 久久久久久久久久久免费精品| 久久久久久狠狠丁香| 91精品国产91久久综合| 精品少妇人妻av无码久久| 亚洲午夜久久久影院伊人| 一级做a爰片久久毛片毛片| 无码人妻久久一区二区三区蜜桃| 久久www免费人成精品香蕉| 久久综合九色综合精品| 久久综合精品国产一区二区三区 | 亚洲国产精品无码久久一线| 久久亚洲AV无码精品色午夜| 老司机国内精品久久久久| 久久精品国产99国产精偷| 亚洲成色999久久网站|