一起來學大數據|網絡編程中的UDP與TCP

一起來學大數據|網絡編程中的UDP與TCP

昨天,我們學習了多線程,今天我們看看計算機中的網絡是如何建立起來的。

網絡編程概述

計算機網絡是將不同的計算機通過通信連接起來,在協議的協調下,我們實現資源的共享和信息的傳遞。

網絡編程是通過網絡互連實現不同計算機的數據交換。

一起來學大數據|網絡編程中的UDP與TCP

網絡參考模型圖

網絡通信的三要素

IP、端口、協議

我要跟胡歌說話.

第一個條件:我要先找到胡歌(IP 網絡中設備的標識)

第二個條件:胡歌得有接收數據的地方 耳朵 (端口 用於標識進程的邏輯地址,不同進程的標識)

第三個條件:我跟胡歌說話,關曉彤能接收到,用什麼方式接收啊,我說火星語言關曉彤懂嗎,說三次元語言關曉彤懂嗎,不懂是吧,所以我還是說中文吧。(協議 常見TCP UDP)

一起來學大數據|網絡編程中的UDP與TCP

Java中的InetAddress類

獲取任意主機:getByName

主機名:getHostName

主機IP地址:getHostAddress

一起來學大數據|網絡編程中的UDP與TCP

Java中的InetAddress類

協議UDP與TCP

UDP是不可靠協議,不需要建立連接,速度快,每個封裝的數據包大小限制在64K,如發短信。

TCP是可靠協議,必須要通過三次握手完成連接,效率低,如下載。

一起來學大數據|網絡編程中的UDP與TCP

實現連接的Socket

Socket套接字是有唯一標識的IP地址和端口號組合在一起構成的唯一標識的標識符套接字。

一起來學大數據|網絡編程中的UDP與TCP

原理機制

一起來學大數據|網絡編程中的UDP與TCP

Socket機制圖解

UDP傳輸

一起來學大數據|網絡編程中的UDP與TCP

UDP傳輸-發送端

一起來學大數據|網絡編程中的UDP與TCP

UDP傳輸-接收端

TCP傳輸

一起來學大數據|網絡編程中的UDP與TCP

TCP傳輸-客戶端

一起來學大數據|網絡編程中的UDP與TCP

TCP傳輸-服務器端

在TCP協議傳輸過程中容易出現問題:客戶端已經連上服務端,但是兩端都在等待,沒有任何的數據傳輸。這是因為read()方法或者readLine方法是阻塞式的。

解決辦法:使用自定義結束標記,shutdownInput,shutdownOutput方法

一起來學大數據|網絡編程中的UDP與TCP

這就是對網絡編程的簡單介紹,希望可以幫助到大家,有什麼疑問可以在下方留言哦,點擊更多~

感謝堅持關注的朋友

一起來學大數據|網絡編程中的UDP與TCP

世界很大,幸好有你

歡迎在評論區留下你的問題或困惑,我將每天與你分享我的觀點和心得。

聚焦最新科技諮訊,探尋未來智能領域,我是女陶。


分享到:


相關文章: