一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

詳談TCP網(wǎng)絡(luò)編程的套接字和端口

如意 ? 來源:百家號 ? 作者:米粒教育 ? 2020-07-01 10:09 ? 次閱讀

當(dāng)網(wǎng)絡(luò)中的兩臺計算機進(jìn)行通信時,除了確定計算機在網(wǎng)絡(luò)中的IP地址外,還需要確定計算機中的一個端口,端口并不是實際的物理設(shè)備,它是一個應(yīng)用程序,這個應(yīng)用程序來負(fù)責(zé)兩臺計算機的通信。

一個IP地址標(biāo)識了一臺主機(服務(wù)器),主機可以提供多種服務(wù),如web服務(wù)、ftp服務(wù)、遠(yuǎn)程桌面等。主機的每個服務(wù)都會等待客戶端的連接,客戶端如何區(qū)別這些服務(wù)呢?這就需要端口來區(qū)分了。

端口被規(guī)定為一個在0~65535之間的整數(shù),這個整數(shù)和提供服務(wù)的應(yīng)用程序關(guān)聯(lián)。如web服務(wù)一般是80端口,ftp服務(wù)一般是21端口、遠(yuǎn)程桌面一般是3389端口。

當(dāng)我們通過客戶端瀏覽器訪問一個網(wǎng)站時,在瀏覽器地址欄中輸入該網(wǎng)站的網(wǎng)址,并不需要輸入80端口號。這是因為web服務(wù)默認(rèn)就是80端口號,當(dāng)客戶端以http協(xié)議訪問主機時,主機會默認(rèn)這是訪問web服務(wù)。

在同一臺計算機上端口號不能重復(fù),否則,就會產(chǎn)生端口號沖突。程序員或計算機管理員在分配端口號時,需要遵循下面的規(guī)則:

(1)1~1023之間的端口號,是由ICANN來管理的,不能分配給用戶自己的應(yīng)用程序;

(3)1024~5000一般被TCP/IP程序作為臨時端口號使用;

(4)分配的端口號不能發(fā)生沖突;

(4)應(yīng)分配數(shù)值大于5000的端口號給用戶開發(fā)的應(yīng)用程序。

TCP用主機的IP地址加上主機上的端口號作為TCP連接的端點,這種端點就叫做套接字(socket)或插口。套接字用(IP地址:端口號)表示,區(qū)分不同應(yīng)用程序進(jìn)程間的網(wǎng)絡(luò)通信和連接,套接字主要有3個參數(shù):通信的目的IP地址、使用的傳輸層協(xié)議(TCP或UDP)和使用的端口號。

詳談TCP網(wǎng)絡(luò)編程的套接字和端口

TCP使用套接字傳輸數(shù)據(jù)

Java語言中,使用Socket類來創(chuàng)建套接字,使用Socket類在兩臺計算機之間進(jìn)行通信時,是有主次之分的,一個稱為服務(wù)器程序,一個稱為客戶端程序。在服務(wù)器端使用ServerSocket類創(chuàng)建套接字,主要是監(jiān)聽指定的端口,等待客戶端的連接;在客戶端使用Socket類創(chuàng)建套接字,用于連接服務(wù)器端的套接字。服務(wù)器端和客戶端的套接字的IP地址和端口號要一致。

詳談TCP網(wǎng)絡(luò)編程的套接字和端口

客戶端和服務(wù)端通信過程

在服務(wù)器端創(chuàng)建ServerSocket對象,并綁定監(jiān)聽端口。調(diào)用ServerSocket對象的accept()方法監(jiān)聽客戶端的請求。與客戶端建立連接后,它會返回一個已連接的Socket對象,并通過輸入流讀取客戶端發(fā)送的請求信息,然后通過輸出流向客戶端發(fā)送響應(yīng)信息,最后關(guān)閉socket及相關(guān)資源。

在客戶端創(chuàng)建Socket對象,需要指定連接服務(wù)器的地址和端口號,和服務(wù)器建立連接后,通過輸出流向服務(wù)端發(fā)送請求信息,然后通過輸入流獲取服務(wù)器的響應(yīng)信息,最后關(guān)閉socket及相關(guān)資源。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • TCP
    TCP
    +關(guān)注

    關(guān)注

    8

    文章

    1395

    瀏覽量

    80171
  • 端口
    +關(guān)注

    關(guān)注

    4

    文章

    1006

    瀏覽量

    32653
  • 套接字
    +關(guān)注

    關(guān)注

    0

    文章

    5

    瀏覽量

    1941
收藏 人收藏

    評論

    相關(guān)推薦
    熱點推薦

    【MiCOKit試用體驗】慶科MiCO系統(tǒng)篇(5)MiCO 套接

    示例示例效果一、網(wǎng)絡(luò)套接Socket 套接,是源IP地址和目的IP地址以及源端口號和目的
    發(fā)表于 10-24 17:05

    UNIX域套接

    UNIX域套接用于在同一臺計算機上運行的進(jìn)程之間的通信。雖然因特網(wǎng)域套接可用于同一目的,但UNIX域套接
    發(fā)表于 09-02 11:59

    端點和套接怎么配置

    我有3個端點2個散列端點和1個端點。我想實現(xiàn)一個SLaveFIFO接口。是否有一個消費者的P-端口套接足以將數(shù)據(jù)從2個輸出端點傳輸出去,我是否應(yīng)該創(chuàng)建另一個消費者P-端口
    發(fā)表于 02-12 14:00

    交換機網(wǎng)絡(luò)從Soft_AP到Infrastructure后,套接始終返回?zé)o效

    與以下代碼的客戶端連接通過這個實現(xiàn),TCPPOEN函數(shù)返回一個有效的套接,但是在進(jìn)入無限循環(huán)之后,我們通過在網(wǎng)頁中配置網(wǎng)絡(luò)來配置網(wǎng)絡(luò)處于基礎(chǔ)結(jié)構(gòu)模式。當(dāng)
    發(fā)表于 04-24 09:57

    如何通過socket系統(tǒng)調(diào)用創(chuàng)建一個套接

    面試被問到TCP/UDP的bind函數(shù)設(shè)計,所以前來補一下套接部分的內(nèi)容套接:進(jìn)程間通信的方法:可以在同一臺機器或者
    發(fā)表于 12-24 06:38

    如何將ESP8266與Windows計算機上運行的tcp套接服務(wù)器程序連接?

    我正在嘗試將 ESP8266 與在我的 Windows 計算機上運行的 tcp 套接服務(wù)器程序連接,我開發(fā)了一個 C# 應(yīng)用程序運行并列出到 IP 172.16.1.85 端口 65
    發(fā)表于 02-23 07:09

    如何在iMXRT1176上的LwIP中使用TCP套接?

    作為套接類型,使用 ICMP 作為套接協(xié)議。 lwip_socket(AF_INET, SOCK_RAW, IP_PROTO_ICMP); 我想將 SOCK_STREAM 創(chuàng)建
    發(fā)表于 06-02 10:10

    TCP_IP網(wǎng)絡(luò)編程技術(shù)基礎(chǔ).王雷_部分2

    教材相比,本書主要的特點為:在注重闡述tcp/ip網(wǎng)絡(luò)通信原理與套接api編程原理的基礎(chǔ)上,通過對例程的深人剖析,深入淺出地介紹服務(wù)器與客
    發(fā)表于 04-19 09:54 ?2次下載

    TCP_IP網(wǎng)絡(luò)編程技術(shù)基礎(chǔ).王雷_部分1

    教材相比,本書主要的特點為:在注重闡述tcp/ip網(wǎng)絡(luò)通信原理與套接api編程原理的基礎(chǔ)上,通過對例程的深人剖析,深入淺出地介紹服務(wù)器與客
    發(fā)表于 04-19 09:54 ?4次下載

    Windows網(wǎng)絡(luò)編程的原始套接詳細(xì)說明

    利用“原始套接”(Raw Socket),我們可訪問位于基層的傳輸協(xié)議。本章專門講解如何運用這種原始套接,來模擬 IP的一些實用工具,比如 Tr a c e r o u t e和P
    發(fā)表于 03-21 08:00 ?1次下載
    Windows<b class='flag-5'>網(wǎng)絡(luò)</b><b class='flag-5'>編程</b>的原始<b class='flag-5'>套接</b><b class='flag-5'>字</b>詳細(xì)說明

    DN93-PCMCIA套接交換

    DN93-PCMCIA套接交換
    發(fā)表于 04-19 18:20 ?14次下載
    DN93-PCMCIA<b class='flag-5'>套接</b><b class='flag-5'>字</b>交換

    基于AT89C52單片機和LT8030實現(xiàn)套接規(guī)范的計算機通信設(shè)計

    網(wǎng)絡(luò)設(shè)置中有HTTP、SOCKET等類型。SOCKET是建立在傳輸層協(xié)議(主要是TCP和UDP)上的一種套接規(guī)范,它定義兩臺計算機間進(jìn)行通信的規(guī)范(也是一種
    的頭像 發(fā)表于 06-24 16:56 ?2554次閱讀
    基于AT89C52單片機和LT8030實現(xiàn)<b class='flag-5'>套接</b><b class='flag-5'>字</b>規(guī)范的計算機通信設(shè)計

    Socket套接的原理說明

    和連接,許多計算機操作系統(tǒng)為應(yīng)用程序與TCP/IP協(xié)議交互提供了稱為套接 (Socket)的接口,區(qū)分不同應(yīng)用程序進(jìn)程間的網(wǎng)絡(luò)通信和連接。 生成
    的頭像 發(fā)表于 06-18 19:16 ?2129次閱讀
    Socket<b class='flag-5'>套接</b><b class='flag-5'>字</b>的原理說明

    網(wǎng)絡(luò)系統(tǒng)調(diào)用網(wǎng)絡(luò)套接入口函數(shù)

    網(wǎng)絡(luò)套接入口函數(shù) //所有的網(wǎng)絡(luò)套接系統(tǒng)調(diào)用函數(shù)(socket bind listen co
    的頭像 發(fā)表于 07-24 11:02 ?600次閱讀

    套接socket包含哪些參數(shù)

    套接(Socket)是計算機網(wǎng)絡(luò)中最基本的通信抽象,它定義了兩個進(jìn)程間通信的端點。在TCP/IP協(xié)議棧中,套接
    的頭像 發(fā)表于 08-16 11:02 ?833次閱讀