1 2 被玩爛的udp

2021-06-22 09:15:56 字數 2019 閱讀 6406

(都是些沒營養的東西,tcp就懶得加了。socket在網上的東西實在太多了,寫這個只因為想把開發板帶的**翻譯一遍而已)

udp協議的全稱是使用者資料報協議,在網路中它與tcp協議一樣用於處理資料報,是一種無連線的協議。在osi模型中,在第四層——傳輸層,處於ip協議的上一層。

由於udp協議比較簡單,作為linux的初學者可以很快的掌握程式的寫法與思路。作為第乙個所讀較大的linux程式,希望大家重點理解庫函式的呼叫與udp的實現過程。呼叫驅動為並不是字元驅動(dm9000連x86的微機上都有),所以暫時不去了解。(udp網路廣泛應用於我們的生活中,連qq的會話都是通過它實現的)

重點掌握函式:

socket;  

sizeof;  

memset;  

htons;  

atoi;  

inet_pton;  

bind;  

fgets;  

sendto;  

recvfrom;

本程式相對於前面幾個程式顯得略微有些大,簡單了解一下就好。

#include #include #include #include #define buflen 255		//輸入字元最大值+1

int main(int argc, char **argv)

sockfd = socket(af_inet, sock_dgram, 0);//建立乙個能夠進行網路通訊的套接字

//tcp/ip協議,資料報套接字型別,0(1為關

//閉緩衝,實時傳輸???)

if(sockfd<0)

socklen = sizeof(struct sockaddr_in); //判斷sockaddr_in所佔位元組數

memset(&peeraddr, 0, socklen); //清空結構體,將peeraddr中前socklen個字 //節替換為0並返回peeraddr的指標

peeraddr.sin_family=af_inet;//設定結構體中sin_family為tcp/ip協議

peeraddr.sin_port=htons(atoi(argv[2])); //同理,ip設定為輸入 //的對方ip埠 atoi()字元轉整形htons的功能:將乙個無

//符號短整型數值轉換為網路位元組序

if(inet_pton(af_inet, argv[1], &peeraddr.sin_addr)<=0)

memset(&localaddr, 0, socklen);

//清空結構體,將localaddr中前socklen個字

//節替換為0並返回localaddr的指標

localaddr.sin_family=af_inet;

//設定結構體中sin_family為tcp/ip協議

if(inet_pton(af_inet, argv[3], &localaddr.sin_addr)<=0)

localaddr.sin_port=htons(atoi(argv[4]));

//同理,ip設定為輸入的對方ip埠

//atoi()字元轉整形htons的功能:將乙個無符號短整型數值轉換為網路 //位元組序

if(bind(sockfd, &localaddr, socklen)<0)

if(fgets(recmsg, buflen, stdin) == null) exit(0);

//將標準輸入stdin中的資料一行輸入recmsg中最大buflen-1個字元

if(sendto(sockfd, recmsg, strlen(recmsg), 0, &peeraddr, socklen)<0)

for(;;)else

if(fgets(recmsg, buflen, stdin) == null) exit(0);//再輸入

if(sendto(sockfd, recmsg, strlen(recmsg), 0, &peeraddr, socklen)<0)

}}

12月份的武漢免費玩

不知不覺已經到了2017的最後乙個月,儘管是最後乙個月,武漢也毫不含糊,燈光節 花博會全都來了 12月,武漢將成為最好玩的地方。12月的武漢,有趣的地方越來越多,快跟著多多去轉轉。1.武漢花博會法式小鎮 路線 二環線 東風大道 後官湖大道 知音湖大道 天星 2017年建成開放的武漢花博匯法式小鎮,打...

乙個被爛眼兒公司水了的同學

前天,大家都在高高興興吃畢業散夥飯的時候。w同學站起來,端著酒杯,說,給大家說乙個壞訊息 我的工作弄丟了。瞬間,氣氛尷尬了。w說,原來他跟公司說好,答完辯就到公司實習。公司也同意了。但前天打 給那公司的時候,公司卻說,因為他沒有去實習,就取消offer了。大家都在咒罵那家公司。那家公司叫 我要去哪兒...

乙個被爛眼兒公司水了的同學

前天,大家都在高高興興吃畢業散夥飯的時候。w同學站起來,端著酒杯,說,給大家說乙個壞訊息 我的工作弄丟了。瞬間,氣氛尷尬了。w說,原來他跟公司說好,答完辯就到公司實習。公司也同意了。但前天打 給那公司的時候,公司卻說,因為他沒有去實習,就取消offer了。大家都在咒罵那家公司。那家公司叫 我要去哪兒...