ステートレス/ステートフル

ステートレス/ステートフル

こんにちは

今日6/29は、、、、、、

 

そう、の日ですね!

今日帰りに肉を食べに行こうかとおもっています、ヤマです。

 

 

ステートレス/ステートフル

みなさん聞いたことありますか。

ネットワークで良く聞かれるワードですね。

 

ステートレス

そのままの意味です、状態を保持していない通信のことを指します。

通信は常に「初めて」の状態で行なわれます。

ですので、通信が非常に冗長になります。(たぶん)

 

ステートフル

状態を保持した通信のことを指します。

通信は以前の状態の「続き」からできます。

サーバはクライアントとの通信の状態を保持していますので、簡潔な通信になりますね。

 

正直、これだけではなかなか理解できないと思いますが、

非常に面白く表現しているブログを発見しました。

 

http://yohei-y.blogspot.jp/2007/10/blog-post.html

 

普段の会話の中で、

ステートレスな人が居たら、イラッとしますね!笑


ところで、

HTTP通信は、リクエストとレスポンスで成り立っているから「ステートレス」?

プロトコルに関してだけ言えば、「ステートレス」と言えそうです。

でもセッションとかもあると、状態はある意味で保持されますね。

そうするとステートフルになるんですかね?

 

なぜこの話題を出したかというと、

さきほど、AWSのVPCを構築するにあたって、

SecurityGroup(セキュリティグループ)はステートフル

NetworkACL(ネットワークACL)はステートレス

というのを改めて確認したので、

自分自身も、もう一度おさらいしていました。

 

ちなみに

SecurityGroup(セキュリティグループ)はステートフルなので、

通信の戻りに関しては常に許可されます。

主にインスタンスに対してのファイアウォール設定に利用。

 

NetworkACL(ネットワークACL)はステートレスなので、

通信の戻りに関しても明示的に許可する必要があります。

主にサブネットに対してのファイアウォール設定に利用。(インスタンスより上位)

 

という感じになっていますので、ご注意を。