Proxomitron Part 30

このエントリーをはてなブックマークに追加
600名無し~3.EXE
Local connections persistって何のために使うの?外しても大丈夫かな?
601名無し~3.EXE:2010/11/04(木) 17:50:57 ID:N7qZlE4E
>>599
自動ログインスクリプトをWSHとかで書いた方がいいんでないのかね
602名無し~3.EXE:2010/11/08(月) 17:52:23 ID:8XYdDoXr
Local connections persist forを2592000とか大きな秒数にして接続が速くなるのかな?
603名無し~3.EXE:2010/11/08(月) 19:07:25 ID:r0WH3KQL
リモートの持続接続より長くしても無意味だねえ
ローカルとハンドシェイクするオーバヘッドなんて元々無いに等しいから

あと、このへんなんかバグってるんだよねえ
604think49 ◆bKk/qcAKuM :2010/11/08(月) 19:57:05 ID:6pbTlLe7
>>600
[ローカル接続の持続時間] はチェックした方がいいんじゃないかな…。
http://togetter.com/li/62476
605名無し~3.EXE:2010/11/08(月) 21:16:57 ID:QZ81FirA
チェックしないほうがいいんじゃね?
606think49 ◆bKk/qcAKuM :2010/11/08(月) 21:20:32 ID:6pbTlLe7
以下、\Docs\Changes.txt より。

---
Local persistence can be turned off if necessary and it's keep-alive time adjusted under the HTTP tab of the Config dialog.
By default local connections are killed after 10 seconds of inactivity.
That should be fine in most cases since new local connections are fairly fast to create,
but you may wish to increase this - especially if you're using Proxomitron remotely over a LAN.
---

(意訳)
keep-alive 時間を調整する必要があるなら、設定ダイアログの [HTTP] タブで [ローカル接続の持続時間] をオフにしてください。
ローカル接続を10秒で切る動作がデフォルトです。
それはほとんどのケースで素晴らしいはずです。なぜなら、新しいローカル接続の確立がかなり速いからです。
しかし、あなたはそれ (訳注: おそらく [ローカル接続の持続時間] を指しています) を増やさないことを望むかもしれません。特にあなたが離れたLAN上の Proxomitron を使用しているならば。
607名無し~3.EXE:2010/11/08(月) 22:01:49 ID:QZ81FirA
あれ、ようわからん。
[ローカル接続の持続時間] にチェック → 診断くん等でプロキシとして認定される。
[ローカル接続の持続時間] にチェックしない → プロキシであると疑われない。
この点でOFFがいいと思った。
OFFってグレーになって選べないんだから、その時はデフォの10sって事なんじゃないのかな。
→調節するならチェックが必要・・・?
608名無し~3.EXE:2010/11/08(月) 22:05:33 ID:onEbGPTl
プロキシがプロキシと思われて何が困るのか
609think49 ◆bKk/qcAKuM :2010/11/08(月) 22:49:06 ID:6pbTlLe7
以下、\Docs\Changes.txt より。(>>606 の全文)

---
* Added persistent connection support to local connections as well
as remote. For best results make sure your browser is set to use
HTTP/1.1 through the proxy and has pipelining enabled (if it's an
option). Also I recommend about 6-8 simultaneous connections. With
this, Proxomitron now supports nearly all of HTTP/1.1's optional
features.

For this to work Proxomitron must make heavy use of "chunked"
encoding since we can't know the size of a filtered item ahead of
time. This shouldn't be a problem, but it's possible some browsers
may not expect so many items to be "chunked" - especially images.
In testing Mozilla seems to have some random problems with chunked
encoding if pipelining is enabled, but the flaw doesn't seem to be
in Proxomitron's handling of things (Pipelining support in Mozilla
is new and may still be a bit buggy). Opera, which also heavily
pipelines, seem ok.

HTTP/1.0 persistence is also supported. However, since Proxomitron
frequently makes changes to an item's content-length and HTTP/1.0
does not allow for chunked encoding, fewer requests may be able
to persist if your filtering.

Local persistence can be turned off if necessary and it's keep-alive
time adjusted under the HTTP tab of the Config dialog. By default
local connections are killed after 10 seconds of inactivity. That
should be fine in most cases since new local connections are fairly
fast to create, but you may wish to increase this - especially if
you're using Proxomitron remotely over a LAN.
---
610think49 ◆bKk/qcAKuM :2010/11/08(月) 22:49:51 ID:6pbTlLe7
Proxomitron は HTTP/1.1 をサポートしているので、RFC2616, RFC2068 を読めば大体わかります。

[RFC1945] HTTP/1.0 (ja)
http://www.spencernetwork.org/reference/rfc1945-ja-HTTP1.0.txt
[RFC2616] HTTP/1.1 (ja)
http://www.spencernetwork.org/reference/rfc2616-ja-HTTP1.1.txt
[RFC 2068] Hypertext Transfer Protocol - HTTP/1.1
http://lab.moyo.biz/translations/rfc/rfc2068-ja.xsp#19.7
611名無し~3.EXE:2010/11/08(月) 22:57:00 ID:IdSnig1x
ローカル串をウェブ串と思われたら困ることもあるだろ
612名無し~3.EXE:2010/11/08(月) 22:59:28 ID:8XYdDoXr
つまり Browser → Proxomitron → Squid → Internet ならチェック入れても損はないよね?
613think49 ◆bKk/qcAKuM :2010/11/08(月) 23:24:06 ID:6pbTlLe7
# 以下、Proxomitron の挙動を確認した上での意見です。
# 判断要素は「診断くん」にまつわる事実と HTTP/1.1 (RFC2616) を読んだ上でのこと。
# 確信できるほどには自信がないので、より確かだと思える情報があればご指摘下さい。

まず、keep-alive 時間はサーバ側で決定するものです。
Proxomitron を通した場合を図に表すと、以下のようになります。

クライアント -> Proxomitron -> リモートサーバ

Proxomitron から見てローカルは「クライアント」になります。
[ローカル接続の持続時間] を設定した場合、「クライアント -> Proxomitron」間で接続的接続を確立し、「Proxomitron -> リモートサーバ」間でも接続的接続を確立していると考えられます。
「クライアント -> Proxomitron」間の keep-alive 時間を決定するのは Proxomitron であり、「Proxomitron -> リモートサーバ」間の keep-alive 時間を決定するのはリモートサーバです。
この動作は HTTP/1.1 に準拠しています。

逆にこの設定をオフにした場合、おそらく「クライアント -> リモートサーバ」間で接続的接続を確立しているのと同じ状態です。
Proxyサーバとしてあってはならない動作ですが、Connectionヘッダも転送しています。
この動作は HTTP/1.1 に違反しています。

「どちらにすべきか?」と問われれば、[ローカル接続の持続時間] をオンにする設定を私は勧めします。
その方が高速だと作者が認めていますし、HTTP/1.1 に準拠する動作だからです。

core - Apache HTTP サーバ
http://httpd.apache.org/docs/2.0/mod/core.html#keepalive
HTTP ヘッダ
http://www.nina.jp/server/basic/http-header.html
614名無し~3.EXE:2010/11/08(月) 23:30:01 ID:8XYdDoXr
>>613
>HTTP/1.1 に準拠する動作だからです。
「HTTP1.1 に従うなら、Proxomitron の設定で [ローカル接続の持続時間] のチェックを外してはならない。(MUST NOT)」
ちょっと矛盾じゃないの?
615名無し~3.EXE:2010/11/08(月) 23:37:35 ID:W7Ja3YJz
RFC準拠か。
当然HTTP/1.1下でのサーバへの同時接続数上限は2に設定しているんだよな?
616名無し~3.EXE:2010/11/08(月) 23:52:31 ID:8XYdDoXr
ここでチェックしてみたら
http://www.proxyblind.org/proxy-anonymous-checker.shtml
オンでもオフでも no proxy に示されてる
617think49 ◆bKk/qcAKuM :2010/11/08(月) 23:52:37 ID:6pbTlLe7
やっぱり、間違っていたような…。
診断くんから判断すると、こうなります。

・[ローカル接続の持続時間] をオン … Connectionヘッダを送信しない
・[ローカル接続の持続時間] をオフ … Connectionヘッダを送信する

そもそも、Connectionヘッダを送信しないことが HTTP/1.1 に違反しているような気もします。(Connectionヘッダが必須かどうかはよくわかりませんでした)
あと、Connectionヘッダを送信するケースでは「Connectionヘッダを転送することで実現している」のか「Proxomitron -> リモートサーバ 間で接続的接続を確立している」のかが判断できないですね。(後者なら HTTP/1.1 に違反しているとはいえない)
618名無し~3.EXE:2010/11/08(月) 23:55:19 ID:XQ/CZ88X
実際のサービス利用で支障があるかどうかであって、診断君の結果は関係ねーよ
619名無し~3.EXE:2010/11/08(月) 23:57:38 ID:W7Ja3YJz
1.1の必須ヘッダはHostだけだよ。
620名無し~3.EXE:2010/11/09(火) 00:12:46 ID:bcNoQZD/
HTTP1.1ではデフォで Keep-Alive 状態で、明示的に Keep-Alive を送信する必要はなく、
未対応や切断する場合に close を送る。らしい。
それでも Keep-Alive を送るのは、HTTP1.0サーバ用か。
621think49 ◆bKk/qcAKuM :2010/11/09(火) 00:30:39 ID:6HeEHYv+
>>614
具体的には、どこが矛盾しているでしょうか?

>>618
診断くんは Proxomitron が送信する Connection ヘッダ の値を確認するのに利用しているだけです。
リクエストヘッダを確認できれば、何を使っても構いません。

>>619
ありがとうございます。
HTTP/1.1 では HTTP/1.0 互換のために Connection: keep-alive; を送信しても良い。
Proxomitron は [ローカル接続の持続時間] をオンにした時、この互換性のための動作をしない、ということですね。
「Google Chrome 7 + Proxomitron」で http://packetmonster.com/env.php を閲覧して、[ローカル接続の持続時間] をオン/オフ いずれの場合も HTTP/1.1 を送信していることを確認できました。
([HTTP/1.0 リクエストのみ送信] にチェックを入れれば、勿論 HTTP/1.0 になります)
622think49 ◆bKk/qcAKuM :2010/11/09(火) 00:31:52 ID:6HeEHYv+
おっと、>>619-620 宛でした。アドバイス感謝です。
623名無し~3.EXE:2010/11/09(火) 01:21:04 ID:zNUFDWwY
串だけど、伝統的な串じゃないし、こだわる必要あんのかね。
Presonal Firewall で串みたいな動作してるのもヘッダ送んのかっつーと、
そんなことしないっしょ