熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

Java編程那些事兒9——網絡編程基礎[2]

2013-11-23 19:38:58  來源: Java核心技術 

   端口的概念

  為了在一台設備上可以運行多個程序人為的設計了端口(Port)的概念類似的例子是公司內部的分機號碼

  規定一個設備有也就是個端口每個端口對應一個唯一的程序每個網絡程序無論是客戶端還是服務器端都對應一個或多個特定的端口號由於之間多被操作系統占用所以實際編程時一般采用以後的端口號

  使用端口號可以找到一台設備上唯一的一個程序

  所以如果需要和某台計算機建立連接的話只需要知道IP地址或域名即可但是如果想和該台計算機上的某個程序交換數據的話還必須知道該程序使用的端口號

   數據傳輸方式

  知道了如何建立連接下面就是如何傳輸數據了先來看一下數據傳輸的方式

  在網絡上不管是有線傳輸還是無線傳輸數據傳輸的方式有兩種

  <!——[if !supportLists]——>l <!——[endif]——>TCP(Transfer Control Protocol)

  傳輸控制協議方式該傳輸方式是一種穩定可靠的傳送方式類似於顯示中的打電話只需要建立一次連接就可以多次傳輸數據就像電話只需要撥一次號就可以實現一直通話一樣如果你說的話不清楚對方會要求你重復保證傳輸的數據可靠

  使用該種方式的優點是穩定可靠缺點是建立連接和維持連接的代價高傳輸速度不快

  <!——[if !supportLists]——>l <!——[endif]——>UDP(User Datagram Protocol)

  用戶數據報協議方式該傳輸方式不建立穩定的連接類似於發短信息每次發送數據都直接發送發送多條短信就需要多次輸入對方的號碼該傳輸方式不可靠數據有可能收不到系統只保證盡力發送

  使用該種方式的優點是開銷小傳輸速度快缺點是數據有可能會丟失

  在實際的網絡編程中大家可以根據需要選擇任何一種傳輸方式或組合使用這兩種方式實現數據的傳遞

   協議的概念

  協議(Protocol)是網絡編程中一個非常重要的概念指的是傳輸數據的格式因為大家在網絡中需要傳輸各種各樣的信息在程序中獲得到的都是一組數值如何閱讀這些數值呢就需要提前規定好這組數據的格式在客戶端按照該格式生成發送數據服務器端按照該格式閱讀該數據然後在按照一定的格式生成數據反饋給客戶端客戶端再按照該格式閱讀數據現實中類似的例子就是電報編碼每個數字都是用特定的數據表達

  一般程序的協議都分成客戶端發送的數據格式以及服務器端反饋的數據格式客戶端和服務器端都遵循該格式生成或處理數據實現兩者之間的復雜數據交換

   小結

  網絡編程就是使用IP地址或域名和端口連接到另一台計算機上對應的程序按照規定的協議(數據格式)來交換數據實際編程中建立連接和發送接收數據在語言級已經實現做的更多的工作是設計協議以及編寫生成和解析數據的代碼罷了然後把數據轉換成邏輯的結構顯示或控制邏輯即可

[]  []  


From:http://tw.wingwit.com/Article/program/Java/hx/201311/27231.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.