女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

一文搞明白TCP協議與UDP協議(上)

jf_78858299 ? 來源:Linux云計算網絡 ? 作者:Linux云計算網絡 ? 2023-05-18 17:17 ? 次閱讀

網絡編程有三個要素,分別是IP地址、端口號和通信協議,那本文主要講述的是TCP與UDP這兩種通信協議,以及編程的實現。

首先,我們需要了解一下IP地址、端口號、通信協議的相關知識。

一、IP地址

網絡中的計算機使用IP地址來進行唯一標識,IP地址有IPv4和IPv6兩種類型。IPv4采用十進制或二進制表示形式,十進制是一種比較常用的表示形式,如192.168.1.131,IPv6采用十六進制表示形式,一般不常用。

如何查看IP地址相關信息:

在Windows系統下,打開cmd,輸入命令ipconfig,按回車即可查看。在Linux或Mac系統下,打開終端,使用ifconfig命令,按回車即可查看。

二、端口號

端口號是計算機中的應用程序的一個整數數字標號,用來區分不同的應用程序。

0 ~ 1024 未被系統使用或保留的端口號,0 ~ 65535為有效的端口號,也就是說我們要對一些程序定義端口號的時候,要選擇1024 ~ 65535范圍內的整數數字。

比如,以前學過的MySQL的端口號是3306,SQLServer的端口號是1433,查了一下Oracle的端口號是1521。

一定要把這些數據庫對應的端口號,藏在深深的腦海里,以后在連接數據庫的時候,會使用到端口號。

三、通信協議

說得通俗一點,通信協議就是網絡通信中的規則,分為TCP協議和UDP協議兩種。

第一種:TCP協議

英文名:Transmission Control Protocol 中文名:傳輸控制協議 協議說明:TCP是一種面向連接的、可靠的、基于字節流的傳輸層通信協議。

舉例:打電話,需要雙方都接通,才能進行對話

特點:效率低,數據傳輸比較安全

第二種:UDP協議

英文名:User Datagram Protocol 中文名:數據報協議 協議說明:UDP是一種面向無連接的傳輸層通信協議。

舉例:發短信,不需要雙方建立連接,But,數據報的大小應限制在64k以內

特點:效率高,數據傳輸不安全,容易丟包

四、三要素關系圖與網絡模型圖

1、網絡編程三要素關系圖

圖片

注:圖中端口號、IP地址為演示,并非真實

2、OSI參考模型與TCP/IP參考模型

圖片

五、TCP編程

TCP是基于字節流的傳輸層通信協議,所以TCP編程是基于IO流編程。

對于客戶端,我們需要使用Socket類來創建對象。對于服務器端,我們需要使用ServerSocket來創建對象,通過對象調用accept()方法來進行監聽是否有客戶端訪問。

客戶端與服務器端圖解:

圖片

客戶端與服務器端實現步驟:

前提:創建一個項目,在項目中創建兩個模塊(model),一個模塊用來放客戶端相關代碼,一個模塊用來放服務器端相關代碼。

目錄結構如下圖

圖片

客戶端

1、創建Socket對象,并指定服務器端應用程序的端口號和服務器端主機的IP地址。

2、使用Socket的對象調用getOutputStream()方法來獲取字節輸出流對象。

3、調用字節輸出流的write(byte[] buf)或者write(int b)向服務器發送指定數據。

4、記得關閉流。

服務器端

1、創建ServerSocket對象,并指定該應用程序的端口號,端口號必須和客戶端指定的端口號一樣。

2、使用ServerSocket對象的accept()方法來監聽客戶端發送過來的請求,返回值為Socket對象。

3、調用Socket對象的getInputStream()方法獲取字節輸入流對象

4、調用字節輸入流對象的read(byte[] buf)或read()方法獲取數據。

5、記得關閉流。

實例

客戶端向服務器端發送信息,并顯示在服務器端。

Client類(客戶端)

package cn.tkrnet.client;

import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;

public class Client {
    public static void main(String[] args) throws IOException {
        
        //創建Socket對象,指定要發送到服務器端的IP地址,以及服務器端應用程序接收的端口號
        //localhost代表本機IP地址
        Socket client = new Socket("localhost",9000);
        
        //獲取輸出流,用于向服務器端發送數據
        OutputStream os = client.getOutputStream();
        
        os.write("Java is my friend !".getBytes());
        System.out.println("信息已發送");

        //關閉流
        os.close();
        client.close();
    }
}

s

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 通信協議
    +關注

    關注

    28

    文章

    996

    瀏覽量

    40937
  • TCP
    TCP
    +關注

    關注

    8

    文章

    1397

    瀏覽量

    80359
  • UDP
    UDP
    +關注

    關注

    0

    文章

    330

    瀏覽量

    34473
  • ip地址
    +關注

    關注

    0

    文章

    305

    瀏覽量

    17439
  • 網絡編程
    +關注

    關注

    0

    文章

    72

    瀏覽量

    10534
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    TCP協議UDP協議對比 UDP協議的原理及應用

    對延時或抖動要求很高的情景下并不適用。為此,UDP(User Datagram Protocol,用戶數據報協議)被提出。UDP雖然應用較為廣泛,比如DNS查詢等,但直不是重要的角色
    的頭像 發表于 10-26 15:05 ?3664次閱讀
    <b class='flag-5'>TCP</b><b class='flag-5'>協議</b>和<b class='flag-5'>UDP</b><b class='flag-5'>協議</b>對比 <b class='flag-5'>UDP</b><b class='flag-5'>協議</b>的原理及應用

    linxu網絡協議分析:IP協議TCP協議UDP協議

    本章節主要介紹linxu網絡模型、以及常用的網絡協議分析以太網協議、IP協議TCP協議UDP
    的頭像 發表于 10-28 16:44 ?4032次閱讀
    linxu網絡<b class='flag-5'>協議</b>分析:IP<b class='flag-5'>協議</b>、<b class='flag-5'>TCP</b><b class='flag-5'>協議</b>、<b class='flag-5'>UDP</b><b class='flag-5'>協議</b>

    通信必備知識!TCPUDP協議介紹及使用

    TCPUDP是兩個最常用的通訊協議TCP是面向連接的協議,需要在收發數據前與對方建立可靠的連接,建立連接的過程為3次握手,斷開連接的過程
    的頭像 發表于 03-15 08:19 ?2367次閱讀
    通信必備知識!<b class='flag-5'>TCP</b>與<b class='flag-5'>UDP</b><b class='flag-5'>協議</b>介紹及使用

    TCP協議UDP協議的區別有哪些

    無法實現;(3)TCP 協議有效載荷小于 UDP 協議(基于 MSS 計算),UDP 性能高于 TCP
    發表于 08-06 08:43

    TCPUDP協議簡析

    、前言TCPUDP協議TCP/IP協議的核心。TCP
    發表于 12-15 08:13

    通訊協議TCPUDP協議使用方法

    通訊協議TCPUDP協議UDP會把數據股腦兒地發送出去,并不會在意是否全部收到,適用于廣播類
    發表于 01-21 14:53

    (WiFi干貨)WiFi模塊的TCPUDP協議

    TCPUDP都是網絡通信協議,也就是通信時都要遵守的規則,雙方在同規則下”交流”,才能理解或者為之服務.?
    的頭像 發表于 09-11 09:02 ?3w次閱讀

    tcpudp協議的異同

    UDP 協議 UDP 協議是無連接、不可靠的個傳輸層協議。下圖是
    的頭像 發表于 11-12 14:45 ?4359次閱讀
    <b class='flag-5'>tcp</b>和<b class='flag-5'>udp</b><b class='flag-5'>協議</b>的異同

    TCP協議UDP協議的區別和相同點有哪些 看懂TCP協議UDP協議的優缺點

    首先咱們弄清楚,TCP協議和UCP協議TCP/IP協議的聯系,很多人犯糊涂了,直都是說
    的頭像 發表于 05-26 14:35 ?1w次閱讀
    <b class='flag-5'>TCP</b><b class='flag-5'>協議</b>與<b class='flag-5'>UDP</b><b class='flag-5'>協議</b>的區別和相同點有哪些 <b class='flag-5'>一</b><b class='flag-5'>文</b>看懂<b class='flag-5'>TCP</b><b class='flag-5'>協議</b>與<b class='flag-5'>UDP</b><b class='flag-5'>協議</b>的優缺點

    TCP協議UDP協議的區別

    TCP/IP協議中有兩個具有代表性的傳輸層協議,分別是TCP協議UDP
    的頭像 發表于 03-21 10:39 ?1329次閱讀

    明白TCP協議UDP協議(下)

    網絡編程有三個要素,分別是IP地址、端口號和通信協議,那本文主要講述的是TCPUDP這兩種通信協議,以及編程的實現。 首先,我們需要了解
    的頭像 發表于 05-18 17:17 ?812次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>搞</b><b class='flag-5'>明白</b><b class='flag-5'>TCP</b><b class='flag-5'>協議</b>與<b class='flag-5'>UDP</b><b class='flag-5'>協議</b>(下)

    TCP協議UDP協議最核心的區別是什么?

    對于TCP協議UDP協議,大家應該都有所耳聞。TCP協議
    發表于 06-15 09:37 ?908次閱讀
    <b class='flag-5'>TCP</b><b class='flag-5'>協議</b>和<b class='flag-5'>UDP</b><b class='flag-5'>協議</b>最核心的區別是什么?

    udp是什么協議 TCPUDP的區別

    TCP協議提供可靠的數據傳輸,UDP協議提供盡量高效的數據傳輸。TCP協議通過使用序列號、確認應
    的頭像 發表于 06-26 17:47 ?1.2w次閱讀

    TCP/IP協議進階課程:5、UDP協議

    電子發燒友網站提供《TCP/IP協議進階課程:5、UDP協議.pdf》資料免費下載
    發表于 07-31 11:48 ?0次下載
    <b class='flag-5'>TCP</b>/IP<b class='flag-5'>協議</b>進階課程:5、<b class='flag-5'>UDP</b><b class='flag-5'>協議</b>

    TCP協議UDP協議的區別

    1. 連接性 TCP(傳輸控制協議) : 面向連接 :在數據傳輸之前,TCP需要建立個連接,這通過三次握手過程完成。 可靠性 :旦連接建
    的頭像 發表于 01-22 09:44 ?635次閱讀