TCP Hole Punching
2008年02月18日07:01
今のインターネットにつながってる世の中のパソコンには出来ない事がある。 それはサーバーになることだ。 これは、能力的になれないのではなくて、今のインターネットのインフラ設計が考慮不十分だったために、原理的になれないのだ。 要するに能力はあるのに、働く場所がないのとおんなじだ。
特に昨今はPCの性能がとてもよくなったので数年前の高性能サーバー以上の性能を持っている。 それなのにサーバーになれないというのは、なんとももったいない話なのだ。 これって本当は大問題なのだけど、大問題だと思っている人がとても少ないので、大問題を抱えたまま定着してしまった。
もっと上手に働いてもらうわけには行かないのだろうか。
◇
これを解決する一つの荒業として、UDPホールパンチング という技があるのは知っていた。 でもこれは UDPといって ある特定の状況でしか使えないプロトコルに限られている。
僕が必要なのは TCPでのホールパンチングなんだけど... と思って検索してみた。
そうしたら今は、あるらしい。
http://en.wikipedia.org/wiki/TCP_hole_punching
でも OSレベルで パケット単位の処理を行わないといけないみたいで、 僕が使っているJAVAでは簡単には実装できそうもなさそうだ...。
本家
http://natblaster.sourceforge.net/
まだ実験段階らしい。
だけど、これが実用レベルになると、とても衝撃的な社会現象が起こるはずだ。
特に昨今はPCの性能がとてもよくなったので数年前の高性能サーバー以上の性能を持っている。 それなのにサーバーになれないというのは、なんとももったいない話なのだ。 これって本当は大問題なのだけど、大問題だと思っている人がとても少ないので、大問題を抱えたまま定着してしまった。
もっと上手に働いてもらうわけには行かないのだろうか。
◇
これを解決する一つの荒業として、UDPホールパンチング という技があるのは知っていた。 でもこれは UDPといって ある特定の状況でしか使えないプロトコルに限られている。
僕が必要なのは TCPでのホールパンチングなんだけど... と思って検索してみた。
そうしたら今は、あるらしい。
http://en.wikipedia.org/wiki/TCP_hole_punching
でも OSレベルで パケット単位の処理を行わないといけないみたいで、 僕が使っているJAVAでは簡単には実装できそうもなさそうだ...。
本家
http://natblaster.sourceforge.net/
まだ実験段階らしい。
だけど、これが実用レベルになると、とても衝撃的な社会現象が起こるはずだ。
コメント一覧
退会したユーザー 2008年02月18日 16:24
うーん。勉強になります。