🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: fj.net.lan
Article #195

Re: UDPの信頼性について

#195
From: Hiroshi Watase
Date: Sat, 26 Aug 2000 14:04
50 lines
3849 bytes
渡瀬と申します。

Kouji Itoさんの<8o3esm$67h$1@pegasus.cty-net.ne.jp>から
>では、ローカルLANでかつ、MTUを超えないデータグラムを送受信する場合では
>どうでしょう?
>
>このケースにおいて、送信したデータグラムが、受信側で受け取れないケース
>というのは存在しうるのでしょうか?(受信側は、送信側よりも十分早いと仮
>定します=受信側で送信されたデータグラムがオーバーフローするケースは除
>外します)

えっと、まず「信頼性」という話ですが、ネットワークにおける信頼性とはデー
タを受け取る、受け取らないだけでなく、順序制御や受信データの正当性、障害
の検出や復旧後処理も含まれると思います。いちがいに、データを受信側でこぼ
していまうか、というのは「信頼性のうちの一つ」という議論にとどまると思い
ます。

>コリジョンが発生した場合は、NICが再送を行うはずですし、上記の仮定から、
>受信側でデータグラムが捨てられるケースもないとしたら...

UDPはトランスポート層におけるプロトコルとして位置付けられ、よくTCPと比
較して「信頼性がない」といわれますが、下位にはIP、Ethernetなどがそれぞれ
の役割を担ってパケットの伝達を行うわけですから、もちろんそれなりの伝送保
証はあるわけですね。現実的には、LAN上でデータグラムがなくなることはほ
とんどありえないでしょう。

>それでもUDPを使うのであれば、データグラムが受信されなかった場合を想定
>したロジックを組んでおかないと、信頼性のある伝送とは言えないのでしょう
>か?

上記のように受信されるされないだけが「信頼性」ではありませんので、本当の
意味での信頼性が必要な場合は、順序制御やコネクション管理など、目的に合わ
せたそれなりのロジックを組むべきでしょう。

しかし、これだけネットワークの伝達手段が発達した今となっては、UDPでなけ
ればならないという状況はあまりないと思います。

参考:UNIXソケットプログラミングFAQ
(http://www.kt.rim.or.jp/~ksk/sock-faq/unix-socket-faq-ja-5.html#ss5.1)

>上記仮定において、UDPが信頼できないというケースがあれば、教えてください。

ネットワークの下位は正常であると仮定されているようですが、もし、ケーブル
が突然抜けたり、ハブやスイッチが壊れたりした場合、UDPだけではエンドエン
ド間のその障害検出やその復旧後処理は難しいと思いますよ。やはり各エンドの
上位アプリケーション間でそれなりに会話をしないと。また、たとえローカル
LANであっても、ネットワークの形態・トポロジーが複雑になるほど、そうした
場合にUDPだけでは信頼性の欠如が目立ってくるでしょう。逆に単純なネット
ワーク(もっとも簡単にはピアツーピアなど)ではあまり目立たないかもしれま
せんが..。
Technical Details
Message-ID: <39a7cfea_4@news1.prserv.net>
Path: arc1-ca.pugleaf.net!supernews.google.com!sn-xit-02!sn-east!supernews.com!newspeer.monmouth.com!news.tele.dk!195.64.68.27!newsgate.cistron.nl!newsfeed.uk.ibm.net!newsfeed2.us.ibm.net!ibm.net!news1.prserv.net!202.135.72.187
References: <8o3esm$67h$1@pegasus.cty-net.ne.jp>

Show Full Headers
Complete Article Headers
X-Google-Language: Japanese,JIS
X-Google-Thread: fa805,9f2dc0df2307fba0
X-Google-Attributes: gidfa805,public
X-Google-Thread: fb155,9f2dc0df2307fba0
X-Google-Attributes: gidfb155,public
X-Google-Thread: 100dc5,9f2dc0df2307fba0
X-Google-Attributes: gid100dc5,public
X-Google-ArrivalTime: 2000-08-26 07:05:14 PST
Date: Sun, 27 Aug 2000 00:04:54 +1000
From: Hiroshi Watase <hiroshi_watase@mail7.dddd.ne.jp>
Subject: Re: UDPの信頼性について
Newsgroups: fj.net.lan,fj.net.lan.ethernet,fj.net.programming
Organization: xx Corporation
In-Reply-To: <8o3esm$67h$1@pegasus.cty-net.ne.jp>
References: <8o3esm$67h$1@pegasus.cty-net.ne.jp>
X-Newsreader: Datula version 1.50.45 for Windows
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-2022-JP
NNTP-Posting-Host: 202.135.72.187
Message-ID: <39a7cfea_4@news1.prserv.net>
X-Trace: 26 Aug 2000 14:10:50 GMT, 202.135.72.187
Lines: 50
X-Complaints-To: abuse@prserv.net
Path: arc1-ca.pugleaf.net!supernews.google.com!sn-xit-02!sn-east!supernews.com!newspeer.monmouth.com!news.tele.dk!195.64.68.27!newsgate.cistron.nl!newsfeed.uk.ibm.net!newsfeed2.us.ibm.net!ibm.net!news1.prserv.net!202.135.72.187