udp雙向通信 網(wǎng)絡(luò)編程用什么語言寫的,就是像tcp udp協(xié)議都是用什么寫出來的?
網(wǎng)絡(luò)編程用什么語言寫的,就是像tcp udp協(xié)議都是用什么寫出來的?網(wǎng)絡(luò)編程通常指可以通過網(wǎng)絡(luò)編寫的應(yīng)用程序。由于網(wǎng)站開發(fā)也屬于網(wǎng)絡(luò)編程,目前大多數(shù)語言都可以進(jìn)行網(wǎng)絡(luò)編程。你提到的UDP和TCP協(xié)議只
網(wǎng)絡(luò)編程用什么語言寫的,就是像tcp udp協(xié)議都是用什么寫出來的?
網(wǎng)絡(luò)編程通常指可以通過網(wǎng)絡(luò)編寫的應(yīng)用程序。由于網(wǎng)站開發(fā)也屬于網(wǎng)絡(luò)編程,目前大多數(shù)語言都可以進(jìn)行網(wǎng)絡(luò)編程。你提到的UDP和TCP協(xié)議只是一種規(guī)則,而不是具體的實(shí)現(xiàn)。協(xié)議本身指定了要執(zhí)行的規(guī)范類型。它是一種規(guī)范,網(wǎng)絡(luò)編程語言就是根據(jù)這個(gè)規(guī)范來實(shí)現(xiàn)的,這個(gè)規(guī)范是一個(gè)具體的實(shí)現(xiàn)。
udp如何雙向通信?
首先,UDP和TCP都是通信協(xié)議。由于它們代表通信協(xié)議,UDP和TCP都建立了一個(gè)“通道”來在服務(wù)器和客戶端之間發(fā)送和接收數(shù)據(jù)。
它們之間的主要區(qū)別在于:UDP協(xié)議是一種非面向連接(不可靠)的傳輸協(xié)議,也就是說,它不需要建立與服務(wù)器的連接就可以將數(shù)據(jù)直接發(fā)送到服務(wù)器。同時(shí),沒有任何機(jī)制可以確保數(shù)據(jù)已成功發(fā)送到服務(wù)器。
TCP協(xié)議是一種面向連接(可靠)的傳輸協(xié)議。在客戶端向服務(wù)器傳輸數(shù)據(jù)之前,客戶端和服務(wù)器必須通過“三握手”完成連接的建立。在隨后的數(shù)據(jù)傳輸過程中,為了可靠地傳輸,接收方將發(fā)送ACK分組,使發(fā)送方知道該分組已經(jīng)成功發(fā)送,否則發(fā)送方將重新發(fā)送分組,直到超時(shí)或成功為止。
因此,無論是UDP協(xié)議還是TCP協(xié)議,服務(wù)器都必須先偵聽某個(gè)端口才能提供服務(wù)。
例如,如果服務(wù)器監(jiān)視端口9090,而客戶端使用端口3456(隨機(jī)分配)與服務(wù)器建立連接,則只有一個(gè)通道,即:a:9090<->;B:3456。