• <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>
            posts - 124,  comments - 29,  trackbacks - 0

            TCP/UDP協(xié)議基礎(chǔ)

            (轉(zhuǎn)載)

             

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

              面向連接的TCP

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

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

              TCP協(xié)議能為應用程序提供可靠的通信連接,使一臺計算機發(fā)出的字節(jié)流無差錯地發(fā)往網(wǎng)絡(luò)上的其他計算機,對可靠性要求高的數(shù)據(jù)通信系統(tǒng)往往使用TCP協(xié)議傳輸數(shù)據(jù)。


            圖2

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


            圖3

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

              面向非連接的UDP協(xié)議

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

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


            圖4

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

              附表:tcp協(xié)議和udp協(xié)議的差別

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

            posted on 2010-06-04 14:05 天書 閱讀(2284) 評論(0)  編輯 收藏 引用

            <2008年5月>
            27282930123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            常用鏈接

            留言簿(5)

            隨筆檔案

            文章分類

            文章檔案

            好友的Bolg

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            2021久久精品免费观看| 久久国产乱子伦精品免费强| 无码任你躁久久久久久久| 超级碰碰碰碰97久久久久| 亚洲国产精品成人久久| 久久精品国产免费| 久久香综合精品久久伊人| 亚洲国产成人久久综合碰碰动漫3d| 久久精品国产一区二区三区不卡 | 99精品久久精品一区二区| 久久激情亚洲精品无码?V| 欧美大香线蕉线伊人久久| 91亚洲国产成人久久精品| 区久久AAA片69亚洲| 亚洲国产精品久久66| 精品久久久久久中文字幕大豆网| 色综合久久综精品| 久久综合久久自在自线精品自| 久久99精品久久久久久野外| 久久国产亚洲高清观看| 中文字幕精品久久久久人妻| 情人伊人久久综合亚洲| 亚洲AV无一区二区三区久久| 一个色综合久久| 久久国产三级无码一区二区| 国产午夜福利精品久久2021| 狠狠色丁香久久婷婷综合图片| 国产精品女同一区二区久久| 国产欧美久久一区二区| 久久九九精品99国产精品| 精产国品久久一二三产区区别 | 精品国际久久久久999波多野| 深夜久久AAAAA级毛片免费看| 99精品久久久久久久婷婷| 亚洲一区二区三区日本久久九| 久久久女人与动物群交毛片| 久久人人爽人人人人爽AV| 久久露脸国产精品| 久久久久久久免费视频| 欧美国产成人久久精品| 亚洲精品国产字幕久久不卡|