網路--------雜記

sgy618發表於2011-01-27

網路--------雜記

[@more@]

udp資料包都有一個長度,如果一個資料包正確地到達其目的地,那麼該資料包的長度將隨資料一道傳遞給接收端的應用程式,TCP是一個位元組流協議,沒有任何記錄邊界,這一點不同於UDP。

既然UDP是無連線的,因此就沒有諸如關閉一個UDP連線之類的事情。

避免僵死程式出現的方法

設定僵死的狀態的目的是維護子程式的資訊,以便父程式在以後的某個時候獲取。

I/O模型:
1.阻塞式I/O
2.非阻塞式I/O
3.I/O複用
4.訊號驅動
5.非同步I/O

recvfrom 和 sendto 適合用於UDP中,
在UDP中如果用到connect,該UDP成為已連線的UDP,這時就不可使用recvfrom 和 sendto,而改成write和read

UDP試驗中,伺服器接收的資料包的數目是不確定的,它依賴於許多因素,例如網路負載,客戶主機的處理負載以及伺服器主機的處理負載,如果客戶執行在慢速的主機,伺服器執行在快速主機上,效果會大大改善
TCP只支援單播定址,UDP和原始IP還可支援其他定址型別

ping程式使用原始套接字傳送ICMP回射請求並接受ICMP回射應答。
只有超級使用者才能建立原始套接字,原始套接字不存在埠號的概念。

普通輸出透過sendto和sendmsg並指定目的IP地址完成,如果套接字已經連線,那麼也可以呼叫write/writev/send。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23168012/viewspace-1045266/,如需轉載,請註明出處,否則將追究法律責任。

相關文章