Re: [閒聊] TCP與UDP實作聊天室
以前我也碰過用UDP開發的Internet聊天室
因為該聊天室完全沒有作資料傳輸確保的機制
所以每個人講話的時候都要重複傳送好幾次
直到得到對方的確認為止
因此若是要用UDP開發聊天室也是可以
只是必須要自己作資料傳輸確保控制
因為UDP也不確保order, 也不確保到達
因此這些資訊你必須放在datagram裡面自己做處理
所以比較麻煩
至於說resource的耗用
我覺得現在硬體資源便宜的狀況下
其實是直接用TCP來做會比較省力
因為你用UDP省下的resource應該會非常非常的少
或者若你想挑戰的話
可以用ICMP作聊天室
:P
※ 引述《sunnysmart (暱稱無效)》之銘言:
:
: 改成了閒聊因該OK?
:
: 看原PO很有毅力我來賺一下P幣好了
:
: 以下有錯請用力鞭
:
: 先稍為介紹一下TCP與UDP好了
:
: TCP(Transmission control protocol)
: *支援穩定有序的資料傳送 正式的定義在RFC793中
: *當一方Disconnect時必須雙方都Disconnect才能取消連線
: *確保傳送的資料會送達
:
:
: UDP(User datagram protocol)
: *讓程式可以在不需要建立連線的情況下送出封裝的IP封包
: *正式的定義在RFC768文件中
: *沒有做流量控制,錯誤控制
:
: 總結:TCP就像是打電話一樣 UDP就像是傳簡訊一樣
: TCP:server端與client端分明 反之UDP較模糊
:
:
: 實作:
: 要開發的話我會選用TCP
: 原因:
: *UDP因不需建立連線 我哪知道在線人數有幾人
: 或許有人會說傳用UDP 上線就用TCP與server連線
: 好麻煩阿 用TCPㄧ種就好了
: *UDP會有collision問題存在 要另外寫collision 的處理
: 應該是會有吧
: *TCP確保傳送的訊息一定送達,若無法送達也會回報
:
:
: 應該就以上這些了吧 我想不到別的 留給其他人補充
:
:
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.211.32.194
推
06/19 15:44, , 1F
06/19 15:44, 1F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):