網路程式設計介紹以及TCP UDP通訊的簡單實現

2021-09-29 02:12:39 字數 1674 閱讀 9479

七層協議

常見協議

網路通訊三要素

埠:

協議:

建立serversocket類的物件,並提供埠號。

等待客戶端連線,使用accept()方法

等socket物件,並使用輸入輸出流進行通訊

關閉相互資源

建立socket型別的物件,並指定伺服器的ip位址和埠號

使用輸入輸出流進行通訊

關閉相互資源

accept() 用於監聽並接收到伺服器套接字的連線請求

socket類

public

class

server

}

public

class

client

}

-  udp:

- 面向無連線、不可靠、速度快、將資料封裝包傳輸,資料報最大64k,是一種全雙工的資料報通訊方式,伺服器壓力比較小,資源消耗低,傳送資料的效率相對比較高

- 程式設計模型:

- 主機a(接收方):

1.建立datagramsocket型別的物件,並提供埠號

2.建立datagrampacket型別的物件,用於接收發來的資料

3.使用上述的物件接收資料內容,使用recieve()方法。

4.關閉相關資源

- 主機b(傳送方):

1.建立datagramsocket型別的物件。

2.建立datagrampacket型別的物件,並提供埠號和ip位址

3..使用上述的物件傳送資料內容,使用send()方法。

4.關閉相關資源

- datagramsocket:類是用於建立接收和傳送資料報的套接字

- datagramsocket() --無參

- datagramsocket(int port) - 建立套接字並繫結埠號

- void receive(datagrampacket p)-用於接收資料並放到引數指定的資料報中

- void send(datagrampacket p) - 用於將引數指定的資料報傳送出去

- void close() - 關閉套接字

- datagrampacket:類用於描述資料報內容

- datagrampacket(byte buf, int length)

- 構造 datagrampacket,用來接收長度為 length 的資料報。

- datagrampacket(byte buf, int length, inetaddress address, int port)

構造資料報包,用來將長度為 length 的包傳送到指定主機上的指定埠號。

- inetaddress getaddress() - 用於獲取傳送方/接收方ip位址資訊

- int getport() - 用於獲取傳送方/接收方埠號資訊

- int getlength() - 用於獲取資料報中資料的長度

public

class

udpserver

}

public

class

udpclient

}

網路程式設計,tcp udp

架構 程式設計師開發的一種模式 c s架構 客戶端 伺服器模式 b s架構 browser瀏覽器 伺服器模式 b s架構的優勢 統一了應用的介面 網路通訊程式設計 同一臺電腦上兩個py檔案通訊 檔案 兩台電腦 如何通訊?一根網線 多台電腦 如何通訊?交換機 更多台電腦 如何通訊?交換機 路由器 寫乙...

TCP UDP網路程式設計

什麼是計算機網路 網路通訊的兩個要素 ip位址 埠port 通訊協議 tcp實現聊天 tcp檔案上傳實現 初始tomcat udp訊息傳送 udp聊天實現 信件 tcp 連線 建立連線成功 打 udp 傳送了就完事兒 接收 發簡訊 想要達到通訊需要什麼 找到了這個主機,如何傳輸資料?協議 通訊雙方位...

Java 網路程式設計 TCP UDP

使用inetaddress 兩個子類 inet4address 和inet6address 分別對應ipv4和ipv6 inetaddress提供公共的構造器,提供了幾個公共的靜態方法獲得inetaddress物件 inetaddress localhost inetaddress.getlocal...