待ち行列モデルをケンドール記号で表現したM/M/1

前回の勉強内容

ponsuke-tarou.hatenablog.com

きっかけとなった試験問題

通信回線を使用したデータ伝送システムにM/M/1の待ち行列モデルを適用すると,平均回線待ち時間,平均伝送時間,回線利用率の関係は,次に式で表すことができる。
https://www.ap-siken.com/kakomon/25_aki/img/05.gif
回線利用率が0%から徐々に上がっていく場合,平均回線待ち時間が平均伝送時間よりも最初に長くなるのは,回線利用率が何%を超えたときか。

ア. 40 イ. 50 ウ. 60 エ. 70
平成25年秋期問5 M/M/1の待ち行列モデル|応用情報技術者試験.com

待ち行列理論は、行列がどのくらい混んでいるかを考えることです。

  • 英語 : queueing(待機・列を作る) theory

顧客がサービスを受けるために行列に並ぶような確率的に挙動するシステムの混雑現象を数理モデルを用いて解析することを目的とした理論である。
待ち行列理論 - Wikipedia

f:id:ponsuke_tarou:20190925212928p:plain

よくわからないので、過去問とラーメン屋さんでイメージを掴みます。

待ち行列に対する操作を,次のとおり定義する。
ENQ n : 待ち行列にデータnを挿入する 。
DEQ : 待ち行列からデータを取り出す 。

空の待ち行列に対し,ENQ1,ENQ2,ENQ3,DEQ,ENQ4,ENQ5,DEQ,ENQ6,DEQ,DEQの操作を行った。
次にDEQ操作を行ったとき,取り出される値はどれか。

ア. 1  イ. 2 ウ. 5 エ. 6
平成30年秋期問5 待ち行列に対する操作|基本情報技術者試験.com

ラーメン屋さんの行列を思い浮かべてみます。
待っている人が待ち行列というキューのおしりに次々入っていく。
順番が来たらキューの頭から次々に出ていく感じ・・・。

  1. ラーメン屋の行列に3人やってきた
    • 操作:ENQ1,ENQ2,ENQ3,DEQ,ENQ4,ENQ5,DEQ,ENQ6,DEQ,DEQ
    • 待ち行列(キュー):1 2 3
  2. 1つ席が空いたから1人行列から出ていく
    • 操作:ENQ1,ENQ2,ENQ3,DEQ,ENQ4,ENQ5,DEQ,ENQ6,DEQ,DEQ
    • 待ち行列(キュー):2 3
  3. ラーメン屋の行列に2人やってきた
    • 操作:ENQ1,ENQ2,ENQ3,DEQ,ENQ4,ENQ5,DEQ,ENQ6,DEQ,DEQ
    • 待ち行列(キュー):2 3 4 5
  4. 1つ席が空いたから1人行列から出ていく
    • 操作:ENQ1,ENQ2,ENQ3,DEQ,ENQ4,ENQ5,DEQ,ENQ6,DEQ,DEQ
    • 待ち行列(キュー):3 4 5
  5. ラーメン屋の行列に1人やってきた
    • 操作:ENQ1,ENQ2,ENQ3,DEQ,ENQ4,ENQ5,DEQ,ENQ6,DEQ,DEQ
    • 待ち行列(キュー):3 4 5 6
  6. 2つ席が空いたから2人行列から出ていく
    • 操作:ENQ1,ENQ2,ENQ3,DEQ,ENQ4,ENQ5,DEQ,ENQ6,DEQ,DEQ
    • 待ち行列(キュー):5 6
  7. 次に席が空いたら「5」がラーメン食べられる

f:id:ponsuke_tarou:20190925213039p:plain

難しい待ち行列理論をわかりやくしようとD.G.ケンドールさんがケンドールの記号を作りました。

f:id:ponsuke_tarou:20190925213512p:plain
ケンドールさん。お仕事は統計学者らしい。

「A / B / C」の形でモデルの性質を表現するそうです。(本当はCの後に続きがありますが今回は割愛)

  • A:サービス要求の到着、一定間隔で到着とかランダムに到着とかね
  • B:サービス時間、1要求にサービスする時間
  • C:サービスを受け入れる窓口の数、サービスをしてくれる物の数

https://tips-memo.com/wp-content/uploads/2019/08/3aa508d63a159a1f102f6b40705ccfdc.png
【超初心者向け】待ち行列とは?分かりやすさ重視で解説。|Beginaid

ケンドール記号で表された待ち行列モデルの条件下にあるプリンタでは、印刷の緊急性や印刷量の多少にかかわらず先着順に印刷されます。

ケンドールの記号には、以下の前提条件があるります。

  • 行列へ割り込んだり,列の途中で抜け出すことは考えない
  • サービス要求は到着順に受け付ける

待ち行列モデル M/M/1では、条件としてトランザクションの到着間隔はランダムであり、待ち行列内のトランザクション数は一定であるとしています。(平衡状態)
平成18年秋期問31 待ち行列モデルの条件|応用情報技術者試験.com

このケンドールの記号で表された超基本のモデルがM/M/1です。

https://tech.nikkeibp.co.jp/it/article/COLUMN/20060920/248523/zu3.jpg
待ち行列 | 日経 xTECH(クロステック)

f:id:ponsuke_tarou:20190925222924p:plain

M/M/1は、ケンドールの記号で表された待ち行列のモデルです。

Mの意味は、「現在の情報で将来起こる確率が決まる」と推測します。

調べていて「MはMarkovian」というのをカワギリにわからない言葉を追ってみました。
そして、自分なり理解で「Markovian = 現在の情報で将来起こる確率が決まる」となりました。

このようなモデルをM/M/1モデルと言います(MはMarkovianの頭文字,1は窓口の数を表す)。
待ち行列理論(M/M/1モデル)の定理とその証明 | 高校数学の美しい物語

markovianとは
マルコフ過程に関連した、またはマルコフ過程によって作られた 
markovianの意味・使い方 - 英和辞典 WEBLIO辞書

マルコフ過程とは、マルコフ性をもつ確率過程のことをいう。すなわち、未来の挙動が現在の値だけで決定され、過去の挙動と無関係であるという性質を持つ確率過程である。
マルコフ過程 - Wikipedia

マルコフ性
将来における事象の起こる確率は現在の状態だけから決まり、過去の状態には依存しないという性質のこと。
マルコフ性とは - はてなキーワード

f:id:ponsuke_tarou:20190925221120p:plain

M : サービス要求の到着間隔はポアソン分布に従って「ランダム」です。

M/M/1の待ち行列モデルにおいて,一定時間内に到着する客数の分布はどれか。
エ. ポアソン分布
平成24年春期問2 M/M/1の待ち行列モデル|応用情報技術者試験.com

ポアソン分布は、偶然の事象が起こる回数の分布です。

このようにポアソン分布とは、時間(例えば1時間当たり)、場所(例えば1平方メートル当たり)、距離(例えば1キロメートル当たり)などある一定区間の中で、偶然に起こる事象の数の分布です。
http://www.ntrand.com/images/functions/plot/plotPoisson.jpg
ポアソン分布 - NtRand

ポアソン分布とは、(どの時点でも同様な起こりやすさでランダムに起こる現象と仮定した場合に)「単位時間あたりに平均 λ 回起こる現象が、単位時間に k 回起きる確率」を表すのに使われる確率分布のこと。
https://atarimae.biz/wp-content/uploads/2016/05/lambda1.5-3.png
ポアソン分布とは何か。その性質と使い方を例題から解説 【馬に蹴られて死ぬ兵士の数を予測した数式】 | アタリマエ!

平均到着時間 = 1 / 到着率

到着率は、単位時間あたりやってくる利用者の平均人数です。
平均到着時間は、1人の利用者がやってくる平均時間です。
平均到着時間は、ポアソン分布に従うと新たな利用者が単位時間当たり(到着率)人のスピードで「ランダムに」来るということです。

f:id:ponsuke_tarou:20190925223809p:plain

M : サービス時間は指数分布に従って「ランダム」です。

指数分布は、ランダムなイベントの発生間隔を表す分布です。
長くなる要求もあれば、即終わる要求もあるということです。
ランダムな現象を「発生回数で捉えるとポアソン分布」「発生間隔で捉えると指数分布」です。

ランダムな現象を「発生間隔で捉えると指数分布,発生回数で捉えるとポアソン分布」と覚えておきましょう。
指数分布の意味と具体例 | 高校数学の美しい物語

平均サービス時間 = 1 / サービス率

サービス率は、単位時間あたりに処理できる平均人数です。
平均サービス時間は、1人の利用者を処理する平均時間
平均サービス時間は、指数分布に従うと店主は単位時間当たり(サービス率)人のスピードで行列をさばいていくということです。

f:id:ponsuke_tarou:20190925223834p:plain

M/M/1には公式があります。

公式がよくわからないので過去問に当てはめながら考えます。

ATM(現金自動預払機)が1台ずつ設置してある二つの支店を統合し,統合後の支店にはATMを1台設置する。統合後のATMの平均待ち時間を求める式はどれか。ここで,待ち時間はM/M/1の待ち行列モデルに従い,平均待ち時間にはサービス時間を含まず,ATMを1台に統合しても十分に処理できるものとする。
〔条件〕
平均サービス時間:Ts
統合前のシステムの利用率:両支店ともρ
統合後の利用者数は,統合前の両支店の利用者数の合計

ア. (ρ / (1 - ρ)) × Ts
イ. (ρ / (1 - 2ρ)) × Ts
ウ. (2ρ / (1 - ρ)) × Ts
エ. (2ρ / (1 - 2ρ)) × Ts
平成27年春期問1 M/M/1の待ち行列モデル|応用情報技術者試験.com

利用率 = 到着率 / サービス率

利用率は、平均どのくらい混んでいるかということです。
  • 「統合前のシステムの利用率:両支店ともρ」
  • 「ATMを1台設置」から統合後もサービス率は変わらない。
  • 「統合後の利用者数は,統合前の両支店の利用者数の合計」で到着率は2倍になる。
統合前 統合後
利用率 支店A:ρ = 到着率 / サービス率
支店B:ρ = 到着率 / サービス率
(2 × 到着率) / サービス率
= 2 × 到着率 / サービス率
= 2(到着率 / サービス率)
= 2ρ

行列に並んでいる人数 = 利用率 / (1 - 利用率)

統合後の行列に並んでいる人数 = 2ρ / (1 - 2ρ)

平均待ち時間 = (利用率 / (1 - 利用率)) * 平均サービス時間

待ち時間は「行列に並んでいる人数」が「平均サービス時間」のサービスを受け終わるまでの時間です。
  • 「平均サービス時間:Ts」

待ち時間 = 行列に並んでいる人数 × Ts = (2ρ / (1 - 2ρ)) × Ts
f:id:ponsuke_tarou:20190925235833p:plain

次回の勉強内容

ponsuke-tarou.hatenablog.com

無線LANのセキュリテイ対策を学ぶ

前回の勉強内容

ponsuke-tarou.hatenablog.com

きっかけとなった試験問題

利用者認証情報を管理するサーバ1台と複数のアクセスポイントで構成された無線LAN環境を実現したい。PCが無線LAN環境に接続するときの利用者認証とアクセス制御に,IEEE 802.1XRADIUSを利用する場合の標準的な方法はどれか。

  1. PCにはIEEE 802.1Xサプリカントを実装し,かつ,RADIUSクライアントの機能をもたせる。
  2. アクセスポイントにはIEEE 802.1Xのオーセンティケータを実装し,かつ,RADIUSクライアントの機能をもたせる。
  3. アクセスポイントにはIEEE 802.1Xサプリカントを実装し,かつ,RADIUSサーバの機能をもたせる。
  4. サーバにはIEEE 802.1Xのオーセンティケータを実装し,かつ,RADIUSサーバの機能をもたせる。

情報セキュリティスペシャリスト平成29年春期 午前Ⅱ 問17

無線LANは、情報の漏えいや盗聴の可能性があります。

https://cybersecurity-jp.com/wp-content/uploads/2018/02/img_22145-01.png
無線LANは安全?セキュリティの種類や知っておくべき対策・確認方法とは

プライバシーセパレータ機能で、同じ無線LANに接続しているPC同士のアクセスを禁止できます。

同一のアクセスポイントに無線で接続している他の端末に、公衆無線LANの利用者がアクセスポイントを経由して無断でアクセスすることを防止します。

https://www.fe-siken.com/kakomon/30_aki/img/44a.gif
平成30年秋期問44 公衆無線LANのセキュリティ対策と効果|基本情報技術者試験.com

https://wifinomori.com/wp-content/uploads/2019/08/wimax-privacyseparator1.png
W06のプライバシーセパレータをオフにする方法

通信内容を盗聴されないように暗号化をします。

https://www.ap-siken.com/kakomon/30_aki/img/45a.gif
平成30年秋期問45 無線LANのセキュリティプロトコル|応用情報技術者試験.com

https://d1uzk9o9cg136f.cloudfront.net/f/16783321/rc/2019/02/07/cc446499abc219d575598b277ea583811b2a69c9_xlarge.jpg
【Wi-Fiのセキュリティ方式】WEPは解析されやすい?何が安全? - 特選街web

WPAは、無線LANでの通信を暗号化する技術です。

初期の無線LANで使用されていたWEPには暗号を解読できる脆弱性がありました。
その対策としてWPAが開発され、IEEE 802.11gより使われました。
時間とともに鍵が変わるTKIP(Temporal Key Integrity Protocol)という暗号方式を使います。
TKIPを使って作った鍵」と「RC4という暗号化アルゴリズム」を使用して暗号化します。

https://www.jp.tdk.com/techmag/knowledge/201201/img/kl120102.gif
第180回 モバイル機器を楽しむ生命線 Wi-Fiアクセスポイント 〜後編〜|テクの雑学|TDK Techno Magazine

RC4 【 Rivest’s Cipher 4 】 Ron's Code 4 / ARCFOUR
1ビット単位で暗号化・復号が可能なストリーム暗号(stream cipher)で、WEPやWPA、SSL/TLSsshなど様々なプロトコルの暗号方式の一つとして採用された。
RC4(ARCFOUR)とは - IT用語辞典 e-Words

WPAが進化したWPA2では、暗号化方式にAESを採用しました。

ponsuke-tarou.hatenablog.com
WPA2でTKIPを使うこともできますが、AESのほうが安全です。

https://tech.nikkeibp.co.jp/it/pc/article/knowhow/20140709/1136304/thumb_500_ph1_px500.jpg
【セキュリティ】暗号化はAESが標準、WEPは使わない | 日経クロステック(xTECH)

不正な端末がLANに参加することを防ぎます。

有線LANでは、物理的にLANケーブルを繋いでいる機器でしか使用できません。
しかし、無線LANではアクセスポイントを使用するため通信範囲内であれば不正な端末がLANに接続してくることが可能になってしまいます。
↓これがアクセスポイント↓

https://images-na.ssl-images-amazon.com/images/I/51PpIXii2mL._AC_SL1000_.jpg
https://www.amazon.co.jp/%E7%84%A1%E7%B7%9ALAN%E4%B8%AD%E7%B6%99%E6%A9%9F-WEX-1166DHPS-%E6%97%A5%E6%9C%AC%E3%83%A1%E3%83%BC%E3%82%AB%E3%83%BC%E3%80%90iPhoneX-iPhoneXS%E3%82%B7%E3%83%AA%E3%83%BC%E3%82%BA-%E3%83%A1%E3%83%BC%E3%82%AB%E3%83%BC%E5%8B%95%E4%BD%9C%E7%A2%BA%E8%AA%8D%E6%B8%88%E3%81%BF%E3%80%91/dp/B084LFPC5R/ref=asc_df_B084LFPC5R/?tag=jpgo-22&linkCode=df0&hvadid=342699261791&hvpos=&hvnetw=g&hvrand=14783868117146499571&hvpone=&hvptwo=&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=1009293&hvtargid=pla-877895905403&psc=1&th=1&psc=1&tag=&ref=&adgrpid=69604411435&hvpone=&hvptwo=&hvadid=342699261791&hvpos=&hvnetw=g&hvrand=14783868117146499571&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=1009293&hvtargid=pla-877895905403

ウォードライビングは、不正にアクセスする目的で建物の外部に漏れた無線LANの電波を傍受してセキュリティの設定が脆弱な無線LANのアクセスポイントを見つけ出すクラッキング手法です。

f:id:ponsuke_tarou:20200928204332p:plain
ウォードライビングとは – SQL Master データベースエンジニアとセキュリティエンジニアとLinuxエンジニアのための情報

IEEE 802.1Xは、LANに接続するPCなどの端末を認証する方法を定めた規格です。

機器 IEEE 802.1Xを利用する場合にやっておくこと
端末 IEEE 802.1Xサプリカント(利用者や端末の認証を要求する側のソフトウェア)を実装する。
アクセスポイント IEEE 802.1Xのオーセンティケータ(認証機能を持つスイッチやアクセスポイント・ルータなど)を実装する。
RADIUS(ネットワーク上でクライアントとサーバの認証を行うプロトコル)を使用する場合はRADIUSクライアントも必要。
認証サーバ IEEE802.1X/EAPに対応した認証サーバを使用する。

https://www.sc-siken.com/kakomon/29_haru/img/17.gif
情報セキュリティスペシャリスト平成29年春期 午前Ⅱ 問17

http://livedoor.blogimg.jp/security_specialist/imgs/2/e/2e63e68b.jpg
http://sc.seeeko.com/archives/3836037.html

IEEE 802.1XではEAP(Extensible(iksténsəbl、拡張性の) Authentication Protocol)という様々な認証方式を利用できるようにしたプロトコルが使用されます。
2点間で仮想の経路を確立してデータを送受信できるようにするPPPという通信プロトコルの機能を拡張した認証プロトコルです。
EAPは、いろんな認証方式をサポートはしていますがEAP自体が暗号化通信できるわけではありません。

https://www.infraexpert.com/studygif/wireless44.gif
IEEE802.1X認証とは、EAPとは

EAPプロトコル 認証方法
EAP-MD5 ユーザ名とパスワードを用いたチャレンジレスポンスによってクライアントを認証する
EAP-TLS 認証にTLS(Transport Layer Security)の機構を用いる方式。サーバ-クライアント間でディジタル証明書を用いた相互認証する
EAP-TTLS TLSによりサーバ認証を行い、その後確立されたEAPトンネルを使用し、各種の認証方法でクライアントを認証する
EAP-PEAP TLSを用いたEAPトンネルを使用することはEAP-TTLSと同様だが、その後のクライアントの認証方法がEAP準拠の方法のみに限定している

出典 : 情報セキュリティスペシャリスト平成26年秋期 午前Ⅱ 問16

WPA2-PSKは、家庭などの小規模ネットワーク向けでPSKという認証方式を使用しています。

  • 正式名称 : WPA2 Pre-Shared Key
  • 別名 : WPA2 Personal

https://www.ap-siken.com/kakomon/27_aki/img/39.gif
平成27年秋期問39 WPA2-PSKの機能はどれか|応用情報技術者試験.com

https://ascii.jp/img/2009/10/15/247514/l/5ba14d94670c69f8.jpg
ASCII.jp:無線LANの安全を補う認証技術を知ろう (1/2)

PSK(Pre-Shared Key / 事前共有鍵)は、通信機器間で事前に鍵を共有しておくことです。
WPA2-PSKでは、パスフレーズを鍵として事前にアクセスポイントと共有しておきます。

https://www.ipa.go.jp/files/000011575.png
一般家庭における無線LANのセキュリティに関する注意:IPA 独立行政法人 情報処理推進機構

SSIDは、最長32オクテットのネットワーク識別子であり、接続するアクセスポイントの選択に用いられます。
32オクテット = 256ビット = 32バイト = 半角英数32文字

http://www.elecom.co.jp/support/faq/parts/Nwfaq/6443_002.jpg
http://www.elecom.co.jp/support/faq/parts/Nwfaq/6443_004.jpg
【Wi-Fiルータ】SSIDって何ですか?/無線でよく聞くSSIDとは?

WPA2-PSKは、アクセスポイントにSSIDパスフレーズを設定して、同じSSIDパスフレーズが設定されている端末だけを接続させます。

https://support.eonet.jp/connect/net/multi_bbr/eo-rt100/wireless/img/wireless_20_01.jpg
https://support.eonet.jp/connect/net/multi_bbr/eo-rt100/wireless/wireless_pass.html

WPA2-Enterpriseは、企業などの大規模なネットワーク向けでIEEE802.1XEAPを認証に使用します。

大規模なネットワークでは、接続する端末が多くパスフレーズが漏洩した場合に再設定が大変になるためPSKを用いるのは不向きです。
そこで認証サーバを用いて認証するEAPが使われます。

無線LANの情報セキュリティ対策に関する記述のうち,適切なものはどれか。
エ. WPA2-Enterpriseは,IEEE802.1Xの規格に沿った利用者認証及び動的に配布される暗号化鍵を用いた暗号化通信を実装するための方式である。
情報処理安全確保支援士平成31年春期 午前Ⅱ 問13

https://news.mynavi.jp/kikaku/wlan-auth-2/images/001.jpg
今さら聞けない「無線LAN認証」の基本(2) ID/パスワードはもう限界!? 電子証明書によるネットワーク認証のススメ | TECH+

https://cdn-active.nikkeibp.co.jp/atclact/active/18/072600005/080300002/ph01.jpg?__scale=w:500,h:249&_sh=0e908e0440
無線LANの盗聴防止、万能ではないWPA2の注意点 - 失敗しない無線LAN:日経クロステック Active

f:id:ponsuke_tarou:20190923194819j:plain

使っている無線LANのセキュリティを確認したいです。

Windows10の場合は、[ワイヤレスネットワークのプロパティ]ダイアログで確認できます。

https://cdn-ak.f.st-hatena.com/images/fotolife/a/ahiru8usagi/20190602/20190602162156.png
【Windows10】ワイヤレスネットワークのプロパティを表示させる手順、表示されない場合の対処法 - あんりふ!

次回の勉強内容

ponsuke-tarou.hatenablog.com

無線LANの規格IEEE 802.11と基本を知る

前回の勉強内容

ponsuke-tarou.hatenablog.com

きっかけとなった試験問題

IEEE 802.11a/b/g/nで採用されているアクセス制御方式はどれか。

ア. CSMA/CA  イ. CSMA/CD  ウ. LAPB  エ. トークンパッシング方式
情報セキュリティスペシャリスト平成29年春期 午前Ⅱ 問20

IEEE 802.11シリーズは、無線LANの規格です。

IEEE 802.11をベースとしたいくつかの規格があります。

規格 策定 周波数帯(GHz) 伝送速度
(Mbps)
チャネル
(ch)
チャネル幅
(MHz)
IEEE 802.11b 1999-10 2.4 11 1~4 22
IEEE 802.11a 1999-10 5 54 20
IEEE 802.11g 2003 2.4 54 1~13 20
IEEE 802.11n 2009-09 2.4と5 600 20 / 40
IEEE 802.11ac 2014-01 5 6,900(=2.6Gbps) 80 / 160

赤外線や電波を利用しているので接続機器の移動が容易になります。

無線LAN(IEEE 802.11)に関する記述として,適切なものはどれか。
イ. 赤外線や電波を利用しているので,接続機器の移動が容易である。
平成14年秋期問64 無線LAN(IEEE802.11)に関する記述|基本情報技術者試験.com

周波数帯は、電波の通り道に通れる電波の範囲のことです。

  • 別名 : バンド

https://www.tele.soumu.go.jp/j/adm/freq/search/myuse/summary/eqsp001.gif
総務省 電波利用ホームページ|周波数割当て|周波数帯ごとの主な用途と電波の特徴

2.4GHz帯は、免許不要で使用できるISMバンドの1つです。

無線の周波数は限られた資源であり、同じ周波数を複数の人が使えば世界中で混信が起こる。そのため、ITUが周波数の使用目的を取り決め、監督責任を各国の主管庁に委ねている。日本では電波法が定められており、総務省が管轄している。電波の利用には、無線取扱免許や届け出が必要であるが、ISMバンドは免許不要で利用可能だ。
ISMバンド | IT用語辞典 | 大塚商会

2.4GHz帯は電子レンジや無線キーボードなどいろいろな機器で使用されているため干渉を受けやすいです。

http://bibibiphone.com/wp/wp-content/uploads/2017/05/04%E6%9C%80%E6%96%B0%E3%82%B3%E3%83%BC%E3%83%89%E3%83%AC%E3%82%B9.png
【最新のDECT方式も】コードレス電話の通信タイプ徹底解説!選ぶ際のポイントとは? | ビジネスホンの「ビ」

5GHz帯の利用は無線LANがほとんどですが、一部は人工衛星とか気象レーダーで使っています。

  1. 5GHzはだいたい無線LANが使用しているので干渉されにくいです。
  2. 周波数が大きいので障害物などがあると2.4GHzよりも弱まりやすいです。
  3. 日本の5GHz帯には大きく分けて5.2GHz帯・5.3GHz帯・5.6GHz帯があり、屋外で使用できるのは5.2GHz帯と5.6GHz帯です。

https://www.tele.soumu.go.jp/j/sys/others/wlan_outdoor/__icsFiles/artimage/2018/07/19/c_wlan_outdr/001.png
総務省 電波利用ホームページ|その他|無線LANの屋外利用について

チャネルは使用可能な周波数の範囲のことで、その範囲の幅をチャネル幅といいます。

チャネルは、アクセスポイント1つ1つに設定されます。近くにあるアクセスポイントと被ると電波干渉を起こしてしまいます。

https://www.infraexpert.com/studygif/wireless4a.gif
https://www.infraexpert.com/studygif/wireless7.gif
無線LAN - チャネルとは

IEEE802.11n と 11acでは,チャネルボンディングにより2つチャネル幅が規定されています。

IEEE802.11nにおけるチャネル1つのチャネル幅は"11a/g"と変わらない20MHzですが、"11n"以降の規格("11n/ac")では隣り合うチャネル同士を束ねる「チャネルボンディング技術」が規定されています。この技術を使用した場合のチャネル幅は2つのチャネルを合わせた40MHzになります。ちなみに"11ac"では束ねることできるチャネル数が最大で8つと規定されているため、最大チャネル幅は(20×8=)160MHzです。
ネットワークスペシャリスト 平成25年秋期 午前Ⅱ 問3

チャネルボンディングは、隣り合うチャネル同士を束ねて同時に利用することで高速な通信を行えるようにする技術です。
  • 英語 : channel bonding(結合)

https://ascii.jp/img/2009/10/22/862246/l/2cb6412a6cf1cbaa.jpg
ASCII.jp:高速無線LAN「IEEE802.11n」を支える新技術とは? (2/2)

アクセス制御方式は、LAN上でのデータのやり取りで衝突を起こさないようにするためのデータリンク層での仕組みです。

https://image.itmedia.co.jp/ait/articles/0507/27/r8bit_test03_05.gif
システム開発とLANの基礎を押さえる:基本情報技術者試験講座(3) - @IT

https://www.atmarkit.co.jp/fnetwork/tokusyuu/02wlan/zu2.gif
無線LAN徹底活用術

トークンパッシング方式は、LAN上に流れるトークンを捕まえた端末がデータを送受信できるようにする方式なので衝突が起きません。

  • リング型有線LAN*1で利用されています。

https://program.sagasite.info/wiki/index.php?plugin=ref&page=%E3%83%88%E3%83%BC%E3%82%AF%E3%83%B3%E3%83%AA%E3%83%B3%E3%82%B0&src=image48.gif
トークンリング - プログラミング探して!

CSMA/CDは、伝送媒体上でのデータフレーム衝突を検出する機能をもつ方式です。

  • 正式 : Carrier(搬送波) Sense(感知) Multiple(多重) Access / Collision(衝突) Detection(検出)
  • 日本語 : 搬送波感知多重アクセス/衝突検出方式
  • イーサネット*2 で使用されている
  • 手順
    1. Carrier Sence : 通信している端末がないことを確認する
    2. Multiple Access : 通信している端末がいない場合 : 自分の通信を開始する
    3. Collision Detection : 複数の通信が同時に行われた場合は衝突を検出し、送信を中止してランダム時間待ってから再び送信をする。

https://www.infraexpert.com/studygif/ethernet23.gif
Ethernet LAN - CSMA/CDとは

イーサネットで使用されるメディアアクセス制御方式であるCSMA/CDに関する記述として,適切なものはどれか。
ア. それぞれのステーションがキャリア検知を行うとともに,送信データの衝突が起きた場合は再送する。
平成29年春期問31 CSMA/CDに関する記述|応用情報技術者試験.com

LANの制御方式に関する記述のうち,適切なものはどれか。
ア. CSMA/CD方式では,単位時間当たりの送出フレーム数が増していくと,衝突の頻度が増すので,スループットはある値をピークとして,その後下がる。
情報セキュリティスペシャリスト平成25年秋期 午前Ⅱ 問17

無線LANでは、衝突を回避するCSMA/CAを使っています。

  • 正式 : Carrier Sense Multiple Access/Collision Avoidance(回避)
  • 日本語 : 搬送波感知多重アクセス/衝突回避方式
  • 手順
    1. Carrier Sence : 通信している端末がないことを確認する
    2. Multiple Access : 通信している端末がいない場合 : 自分の通信を開始する
    3. Collision Avoidance : 通信している端末がいた場合 : 他のホストの送信終了を検知してから自分が送信を開始する前にランダムな長さの待ち時間をとる(通信終了と同時に送信すると衝突する可能性が高いから)
無線通信では、衝突検出がとても難しいので衝突を回避できるようにするCSMA/CAを使います。

無線LANの隠れ端末問題の説明として,適切なものはどれか。
イ. 端末がアクセスポイントとは通信できるが,他の端末のキャリアを検出できない状況にあり,送信フレームが衝突を起こしやすくなる問題
https://www.sc-siken.com/kakomon/31_haru/img/18.gif
情報処理安全確保支援士平成31年春期 午前Ⅱ 問18

https://www.infraexpert.com/studygif/wireless18.gif
無線LAN - CSMA/CAとは

f:id:ponsuke_tarou:20190919000004j:plain
ザ・フレンチトーストファクトリーのパンケーキ

次回の勉強内容

ponsuke-tarou.hatenablog.com

クラウドコンピューティングのSaaSとPaaSとIaaSでできることの違い

前回の勉強内容

ponsuke-tarou.hatenablog.com

きっかけとなった試験問題

NISTの定義によるクラウドコンピューティングのサービスモデルにおいて,パブリッククラウドサービスの利用企業のシステム管理者が,仮想サーバのゲストOSに対するセキュリティパッチの管理と適用を実施可か実施不可かの組合せのうち,適切なものはどれか。

https://www.sc-siken.com/kakomon/29_haru/img/08.gif
情報セキュリティスペシャリスト平成29年春期 午前Ⅱ 問8

NISTは、クラウドコンピューティングの定義だけでなく、暗号技術の策定やインターネット時刻を提供するタイムサーバーの管理をしたりしています。

  • 正式 : National Institute of Standards and Technology
  • 日本語 : アメリカ国立標準技術研究所

NIST(アメリカ国立標準技術研究所)は、アメリカの技術革新や産業競争力を強化するために、経済保障を強化して生活の質を高めるように計測学、規格、産業技術を促進することを目的とする機関です。
平成31年春期問80 技術仕様をRFCとして策定している組織|基本情報技術者試験.com

クラウドコンピューティングは、インターネット経由でコンピュータやデータベースやストレージ・アプリケーションなどが使えるサービスのことです。

クラウドクラウドコンピューティング)」とは、クラウドサービスプラットフォームからインターネット経由でコンピューティング、データベース、ストレージ、アプリケーションをはじめとした、さまざまな IT リソースをオンデマンドで利用することができるサービスの総称です。
クラウド (クラウドサービス) とは?|AWS

f:id:ponsuke_tarou:20220408192359j:plain

SaaSは、アプリケーションソフトウェアの機能を,必要なときだけ利用者に提供するサービスのことです。

サービス(a service)としての(as)ソフトウエア(software)、英語で「Software as a Service」、略して「SaaS」、「サース」と読みます。

ユーザは基盤にあるインフラストラクチャを、ネットワークであれ、サーバーであれ、オペレーティングシステムであれ、ストレージであれ、各アプリケーション機能ですら、管理したりコントロールしたりすることはない。
情報セキュリティスペシャリスト平成29年春期 午前Ⅱ 問8

Officeアプリを提供する「Microsoft 365」、オンライン会議ができる「Zoom」、Webメールの「Gmail」、グループウェアの「Kintone」とSaaSは身近にたくさんあります。

SaaSを説明したものはどれか。

  1. インターネット経由でアプリケーションソフトウェアの機能を,必要なときだけ利用者に提供するサービスのこと << 正解
  2. 企業の経営資源を有効に活用するために,基幹業務を統合的に管理するためのパッケージソフトウェアのこと
  3. 既存の組織やビジネスプロセスを抜本的に見直し,職務,業務フロー,管理機構,情報システムを再設計すること
  4. 発注者とサービス提供者との間で,サービスの品質の内容について合意した文書のこと

出典 : 平成24年 秋期 基本情報技術者試験 午前問63

システムの構築を行わずに済み,アプリケーションソフトウェア開発に必要なセキュリティ要件の定義やシステムログの保存容量の設計が不要となります。

利用者側は、サービス提供事業者の構築したシステムの機能を利用することになります。したがってファイアウォールの設定や不正アクセスの管理、ソフトウェアアップデート、およびセキュリティパッチの適用などのシステム自体のセキュリティ管理から解放される利点があります。
平成28年春期問41 SaaSを利用時のセキュリティ管理|基本情報技術者試験.com

被監査企業がSaaSをサービス利用契約して業務を実施している場合、被監査企業のシステム監査人がSaaSの利用者環境からSaaSへのアクセスコントロールを評価できるのはアプリケーションの利用者IDとなります。

SaaSでは、OSやハードウェア、DBMSなどのミドルウェアを直接操作することはありません。サービスの利用者は、付与された利用者IDを使用してSaaS提供業者のWebアプリケーションにアクセスし、サービスを使用するだけです。
情報セキュリティスペシャリスト平成25年秋期 午前Ⅱ 問25

f:id:ponsuke_tarou:20220408192420j:plain

PaaSでは、OSやネットワークなどのプラットフォームが提供されるのでアプリケーション開発がすぐできるようになります。

  • 正式 : Platform as a Service

ユーザは基盤にあるインフラストラクチャを、ネットワークであれ、サーバーであれ、オペレーティングシステムであれ、ストレージであれ、管理したりコントロールしたりすることはない。
情報セキュリティスペシャリスト平成29年春期 午前Ⅱ 問8

プロバイダとカスタマがそれぞれおう責務

カスタマの責任者
  1. アプリケーションに対して、データのアクセス制御と暗号化を行う。
  2. アプリケーションに対して、セキュアプログラミングを脆弱性診断を行う。
クラウドサービスプロバイダ
  1. DBMSに対して、修正プログラムの適用と権限設定を行う。
  2. OSに対して、修正プログラム適用と権限設定を行う。
  3. ハードウェアに対して、アクセス制御と物理セキュリティ確保を行う。

PaaSを利用すると,プラットフォームの管理やOSのアップデートは,サービスを提供するプロバイダが行うので,導入や運用の負担を軽減することができます。

サービス提供事業者は開発環境などのミドルウェア以下を提供する。利用者は用意したアプリケーションをミドルウェア上で稼働させる。ミドルウェアにおける設定(カスタマイズ)が可能。
平成29年秋期問14 クラウドサービスのメリット|基本情報技術者試験.com

f:id:ponsuke_tarou:20220408192451j:plain

IaaSは、サーバや回線などの基盤部分から自由に設定できます。

  • 正式 : Infrastructure as a Service

仮想サーバのゲストOSに係るセキュリティの設定までできます。

ユーザは基盤にあるインフラストラクチャを管理したりコントロールしたりすることはないが、オペレーティングシステム、ストレージ、実装されたアプリケーションに対するコントロール権を持ち、場合によっては特定のネットワークコンポーネント機器(例えばホストファイアウォール)についての限定的なコントロール権を持つ。
平成28年春期問42 IaaSでは実施できるものはどれか|応用情報技術者試験.com

インフラストラクチャは、ガスや電気みたいな基盤となる設備や要素のことです。

インフラのことです。
e-words.jp

f:id:ponsuke_tarou:20220408192536j:plain

次回の勉強内容

ponsuke-tarou.hatenablog.com

品質管理で使われる図

前回の勉強内容

ponsuke-tarou.hatenablog.com

きっかけとなった試験問題

発生した故障について,発生要因ごとの件数の記録を基に,故障発生件数で上位を占める主な要因を明確に表現するのに適している図法はどれか。

ア. 特性要因図  イ. パレート図  ウ. マトリックス図  エ. 連関図
平成31年春期問74 主な要因を明確にするのに適した図法|応用情報技術者試験.com

パレード図は、出現度数の大きさを順に並べて、主要な原因を識別するとこに使用されます。

https://www.sk-quality.com/qc7/pareto.gif
パレート図~品質管理の知識

http://meat29.sakura.ne.jp/sblo_files/quality-labo/image/E38391E383ACE383BCE38388E59BB3-thumbnail2.jpg
パレート図: 品質管理研究所 〜実務で役立つ品質管理、品質保証〜

メリット

  • どの項目がもっとも問題かを見つけることができる。
  • 問題の大きさの順位が一目で分かる。
  • ある項目が全体のどの程度を占めているかを知ることができる。
  • どの項目とどの項目を改善すれば,不具合をどの程度解決できるかが分かる。
  • 問題の大きさが目で理解できるために説得力がある。
品質改善策の立案に際し、原因別の不良発生件数を分析し、優先取組みテーマを選択するときに活用できます。

パレート図は、値の大きい順に分析対象の項目を並べた棒グラフと、累積構成比を表す折れ線グラフを組み合わせた複合グラフで、主に複数の分析対象の中から、重要である要素を識別するために使用します。
平成26年春期問76 パレート図|応用情報技術者試験.com

パレート図で、「品質問題を解決するために図を作成して原因の傾向を分析したところ,全体の80%以上が少数の原因で占められていることが判明した」りします。

https://www.ap-siken.com/kakomon/25_haru/img/53.gif
平成25年春期問53 パレート図|応用情報技術者試験.com

項目別に層別して出現度数の大きさの順に並べるとともに累積和を示した図であり、主要な原因を識別するために用います。

パレート図を用いた分析手法であるABC分析では、頻度の高いものから、Aグループ、Bグループ、Cグループのようなグループ分けをすることにより、資源の配分を適切に管理することができます。
https://www.ap-siken.com/kakomon/23_toku/img/53.gif
平成23年特別問53 パレート図の用途はどれか|応用情報技術者試験.com

管理図は、不良品などの件数や損失金額を原因別に分類し、数値の大きい順に並べてその累積値によって改善効果の高い項目を把握することに使用されます。

  • 別名 : シューハート管理図
  • 「同じ人」、「同じ機械」、「同じ材料」、「同じやり方」でも製品の品質には「ばらつき」が生じます。その「ばらつき」は、原因を調べても意味がない「偶然原因のばらつき(許しえるばらつき)」なのか「異常原因によるばらつき(見逃せないばらつき)」なのかを判定するために用いられるツールです。

管理図は、工程の状態や品質を時系列に表した図で、工程が安定した状態にあるかどうかを判断するために用います。
例えば日ごとに不良品の個数を記録していき、統計的に求めた上方管理限界と下方管理限界を超えた位置に値が記録された場合には、その日に何らかの異常が発生していることがわかります。
平成17年秋期問76 管理図を説明したものはどれか|基本情報技術者試験.com

https://hinkai.com/gif/kanri.gif
品質改善.com - ・管理図

管理図といっても幾つか種類があって、管理する内容によって使い分けます。

  • x管理図 : 長さ、重量、時間、硬さ、純度など
  • pn管理図 : 不良数(個数)
  • u管理図 : 単位が一定でないものの欠点数

http://www.ab.cyberhome.ne.jp/~t-nojima/rqc/image/pn_4.gif
RQE Home Page

管理図の特徴は上下にある線です。

  • 上の線 : UCL(上方管理限界, Uper Cntrorl limt)
  • 下の線 : LCL(下方管理限界, Lper Cntrorl limt)
  • この線の算出方法は管理図の種類で違うよう。

見方として以下を確認して「異常原因によるばらつき」を見つけ出します。

  1. 2つの限界線からはみ出していないこと
  2. 真ん中にある中心線より片側に偏っていないこと
プロセスが安定しているかどうか,又はパフォーマンスが予測のとおりであるかどうかを判断するために用います。

管理図は、工程の状態や品質を時系列に表した図であり,工程が安定した状態にあるかどうかを判断するために使用されます。
統計的に求めた上限管理境界と下限管理境界があり、それらを超えた位置にプロットがあれば何らかの異常が発生していることがわかります。
https://www.ap-siken.com/kakomon/24_aki/img/54.gif
平成24年秋期問54 管理図|応用情報技術者試験.com

散布図は、相関関係を調べたい2種類のデータの関係を図に表したものです。

データ群がどの方向に分布するかで分析します。

https://www.sk-quality.com/qc7/sanpuzu.gif
散布図~品質管理の知識

データ群が右上がりに分布する傾向がある(相関係数 > 0)関係:正の相関がある

f:id:ponsuke_tarou:20190905215115p:plain
正の相関
平成22年秋期問77 負の相関を示すものはどれか|基本情報技術者試験.com

データ群が右下がりに分布する傾向がある(相関係数 < 0)関係:負の相関がある

f:id:ponsuke_tarou:20190905215231p:plain
負の相関
平成22年秋期問77 負の相関を示すものはどれか|基本情報技術者試験.com

相関係数は、「どれぐらい類似しているか」を-1以上1以下の数字として表現したものです。

まず、相関というのは2つ以上のものがあるときに、「どれぐらい類似しているか」ということを意味します。
そして、相関係数とは「どれぐらい類似しているか」を-1以上1以下の数字として表現したものです。

相関係数は-1~1の間の実数値をとり、-1に近ければ負の相関、1に近ければ正の相関があるといいます。0に近いときには2項目間の相関は弱くなります。
ちなみに負の相関といっても正に比べて関連性が弱いわけではありません。正負の方向は相関の強さには関係なく、より相関係数の絶対値の高いものが強い相関性であることを示します。
平成22年秋期問77 負の相関を示すものはどれか|基本情報技術者試験.com

プログラムのステップ数が多くなるほどステップ当たりのエラー数も多くなる傾向があるように見受けられた時にデータを分析するのに使います。

縦軸、横軸に2項目の量や大きさ等を対応させ、そのグラフ上にデータを打点した図です。変数間の相互関係を表すのに役立ちます。
平成29年秋期問76 散布図|応用情報技術者試験.com

f:id:ponsuke_tarou:20190905220141p:plain
那須にいたさる

次回の勉強内容

ponsuke-tarou.hatenablog.com

お金からプロジェクトを管理するアーンドバリューマネジメント

前回の勉強内容

ponsuke-tarou.hatenablog.com

きっかけとなった試験問題

ある組織では,プロジェクトのスケジュールとコストの管理にアーンドバリューマネジメントを用いている。期間10日間のプロジェクトの,5日目の終了時点の状況は表のとおりである。この時点でのコスト効率が今後も続くとしたとき,完成時総コスト見積り(EAC)は何万円か。
https://www.ap-siken.com/kakomon/31_haru/img/52.gif

ア. 110  イ. 120  ウ. 135  エ. 150
平成31年春期問52 アーンドバリューマネジメント|応用情報技術者試験.com

アーンドバリューマネジメントは、プロジェクト作業を金額に置き換えて定量的に実績管理をするプロジェクト管理手法です。

  • 略称 : EVM
  • 英語 : Earned(金を得る) Value Management

各指標値を折れ線グラフにして管理します。

f:id:ponsuke_tarou:20190826222759j:plain
縦軸はコスト、横軸は時間

PVは、プロジェクト開始当初に現時点までに計画されていた作業に対する予算です。

BACは、プロジェクト完了までにかかる予算です。

  • 英語 : Budget(予算) At Completion
  • 日本語 : 当初予算

完了時のPVの予算のことです。

f:id:ponsuke_tarou:20190826224155j:plain
計画当初の予算

EVは、現時点までに完了した作業に割り当てられていた予算です。

f:id:ponsuke_tarou:20190826225132j:plain
実績

EV - PV」で求められる予定と出来高の差分をSVといいます。

  • 英語 : Schedule Variance(相違)
  • 日本語 : スケジュール差異

SVが0より大きい場合は、作業が予定より進んでいることになります。
SVが0未満の場合は、進捗遅れになります。

ACは、現時点までに完了した作業に対して実際に投入した総コストです。

  • 英語 : Actual Cost

EACは、現在の状態のまま続けた場合のプロジェクト終了時の総コストの予測値です。

  • 英語 : Estimate(見積もり) At Completion
  • 日本語 : 完成時総コスト見積り

完了時のEVの予測値になります。

ETCは、残作業を終わらせるのに必要な総コストの予測値です。

  • 英語 : Estimate(見積もる) To Complete
  • 日本語 : 残作業に要するコスト

完了済作業から残作業を割り出し、その残作業を終わらせるのに必要なコストです。

AC + ETC = EAC」となります。

(今まで使ったコスト:AC) + (残っている作業に必要なコスト:ETC) = (今のまま続けた場合に完了までかかるコスト:EAC) という感じです。

EV - AC」で求められる、予定と実際にかかったコストの差分をCVといいます。

  • 英語 : Cost Variance(相違)
  • 日本語 : コスト差異

CVが0より大きい場合は、予定よりコスト少なめで進んでいるということです。
CVが0未満の場合は、コストが超過しているということです。

f:id:ponsuke_tarou:20190826230854j:plain
実際に投入したコスト

EV ÷ AC」で求められる、今まで使ったコストに対する出来高の比率をCPIといいます。
  • 英語 : Cost Performance(出来高) Index(指数)
  • 日本語 : コスト効率指数
「(BAC - EV) ÷ CPI = ETC」となります。

(完了までの予定コスト:BAC) - (現在の出来高:EV) = 残作業
残作業 ÷ CPI = (残りの作業で必要なコスト:ETC)

f:id:ponsuke_tarou:20190826232936j:plain
試験問題の回答

f:id:ponsuke_tarou:20190826233030j:plain
ある日のいちごパンケーキ

次回の勉強内容

ponsuke-tarou.hatenablog.com

働き方改革を支えるかもしれないVPNで安全な通信を

前回の勉強内容

ponsuke-tarou.hatenablog.com

勉強のきっかけになった問題

インターネット接続において,複数のISPの回線を使用した冗長化構成を表す用語はどれか。

ア. IP-VPN
イ. インターネットVPN
ウ. 広域イーサネット
エ. マルチホーミング << 正解
平成31年春期問32 複数のISPの回線を使用した冗長化構成|応用情報技術者試験.com

VPNとは、仮想の暗号化されたネットワークを用いる技術です。

  • 正式 : Virtual Private Network
  • 日本語 : 仮想専用線、仮想専用ネットワーク

のぞき見や改ざんなどの不正アクセスを防ぎ、安全な通信を可能にするために使用します。

https://www.kagoya.jp/howto/wp-content/uploads/kagoya1811-1.jpg
【入門】VPNとは?仕組みから設定方法までわかりやすく解説 - カゴヤのサーバー研究室

VPNには、大きく分けてインターネットVPNIP-VPNの2種類があります。

種類 使用するネットワーク
インターネットVPN インターネット
IP-VPN 通信事業者が用意した閉塞網
インターネットVPNは、インターネット上に専用線を構築するVPNです。

物理的に専用線を引いた場合、セキュリティはとても強固になるものの高額な費用がかかります。
そこで、インターネット上で暗号化された仮想の専用線を構築しすることでセキュリティを高めます。

IP-VPNは、閉塞網を利用するVPNです。
  • IP-VPNの別名 : クローズドVPN
  • 閉塞網の別名 : 閉域網

閉塞網は、通信事業者が独自に構築した専用ネットワークです。
そのため、通信事業者と契約を結んだユーザのみが使用できます。

パケットに新しいヘッダを付け加えてカプセル化して、通信を行うトンネル技術が使用されます。

具体的には、PPTPL2TPなどが使われています。
ponsuke-tarou.hatenablog.com

盗聴や改ざんなどを防止するために、暗号化技術が使用されています。

トンネリングだけではデータの内容は見えてしまうのでパケットを暗号化して伝送するための暗号化技術も合わせて使われています。
具体的には、IPsecやTSLが使われています。
ponsuke-tarou.hatenablog.com
ponsuke-tarou.hatenablog.com

f:id:ponsuke_tarou:20190823173658j:plain
黒姫山

次回の勉強内容

ponsuke-tarou.hatenablog.com

VPNを支えるトンネル技術

前回の勉強内容

ponsuke-tarou.hatenablog.com

勉強のきっかけになった問題

VPNで使用されるセキュアなプロトコルであるIPsecL2TPTLSの,OSI基本参照モデルにおける相対的な位置関係はどれか。
https://www.ap-siken.com/kakomon/31_haru/img/42.gif
平成31年春期問42 IPsec,L2TP,TLSの位置関係|応用情報技術者試験.com

VPNとは、仮想の暗号化されたネットワークを用いてセキュリティを高める技術です。

ponsuke-tarou.hatenablog.com

VPNの仮想ネットワークではトンネル技術が重要となります。

https://network.yamaha.com/var/site/storage/images/8/7/7/4/124778-1-jpn-JP/01_vpn_using.jpg
VPNとは

f:id:ponsuke_tarou:20200930223243j:plain
那須岳の牛が首

トンネル技術は、ネットワーク上の2つの拠点間を仮想の回線で接続してカプセル化したデータを送る技術です。

https://tech.nikkeibp.co.jp/it/atcl/column/17/011900625/011900006/ph01.jpg?__scale=w:500,h:268&_sh=0bf0950b05
トンネリングとカプセリングは何が違う? | 日経クロステック(xTECH)

2点間で仮想の経路を確立してデータを送受信できるようにするPPPという通信プロトコルがあります。

  • 正式 : Point to Point Protocol

OSI参照モデルの第2層であるデータリンク層で動作します。

第7層 アプリケーション層
第6層 プレゼンテーション層
第5層 セッション層
第4層 トランスポート層
第3層 ネットワーク層 <- IP
第2層 データリンク層 <- PPP
第1層 物理層

PPPには、ユーザ認証機能やエラー処理を行う機能があります。
認証機能にはPAP(Password Authentication Protocol)やCHAP(Challenge Handshake Authentication Protocol)などのプロトコルが使用されます。
OSI参照モデルの第3層であるネットワーク層にあるIPには認証機能がないためトンネル技術ではPPPの認証機能を利用します。

WANを介して二つのノードをダイヤルアップ接続するときに使用されるプロトコルで,リンク制御やエラー処理機能をもつものはどれか。

答. PPP
平成26年春期問32 PPP|応用情報技術者試験.com

PPPを利用するプロトコルには大きく3つあります。

PPTPは、「送信元PC」と「受信側サーバ」間をGREによるカプセル化を利用して通信を行います

Microsoft、Lucent Technologies、3Comなどが共同で開発したトンネリング技術です。

第7層 アプリケーション層
第6層 プレゼンテーション層
第5層 セッション層
第4層 トランスポート層 <- TCP
第3層 ネットワーク層 <- IP
第2層 データリンク層 <- PPP / PPTP
第1層 物理層

https://beginners-network.com/image/vpn_pptp_1.gif
PPTP - ネットワーク入門サイト

「送信元PC」のことをPAC(PPTP Access Concentrator)といいます。
Windows OSのマシンがPACとなることが一般的です。

「受信側サーバ」のことをPNS(PPTP Network Server)といいます。
Windows NT Server 4.0/Windows 2000 Server/Windows Server 2003にはPNSとなる機能が搭載されています。

パケットを別のプロトコルカプセル化するトンネルプロトコルであるGRE(Generic Routing Encapsulation)を利用します。

https://i2.wp.com/kazunetproject.site/wp-content/uploads/2019/05/gre1-2.jpg?w=693
GRE Tunnel の概要 〜基礎編〜 | ネットワークエンジニアの小学校

L2Fは、UDPを利用するトンネル技術ですが現在はあまり使われていません。

第7層 アプリケーション層
第6層 プレゼンテーション層
第5層 セッション層
第4層 トランスポート層 <- TCP / UDP
第3層 ネットワーク層 <- IP
第2層 データリンク層 <- PPP / PPTP / L2F
第1層 物理層

L2TPは、PPTPL2Fをあわせたトンネル技術です。

データリンク層で動作する送信情報を運ぶトンネリングプロトコルです。

第7層 アプリケーション層
第6層 プレゼンテーション層
第5層 セッション層
第4層 トランスポート層 <- TCP / UDP
第3層 ネットワーク層 <- IP / IPsec
第2層 データリンク層 <- PPP / PPTP / L2F / L2TP
第1層 物理層

https://beginners-network.com/image/vpn_l2tp_ipsec_1.gif
L2TP/IPsec - ネットワーク入門サイト

https://tech.nikkeibp.co.jp/it/atcl/column/14/346926/122000744/ph01.jpg?__scale=w:500,h:290&_sh=0bf08e0940
アップルのPPTP終了が製品/サービスに影響 | 日経クロステック(xTECH)

「送信元PC」のことをLAC(L2TP Access Concentrator)といいます。
「受信側サーバ」のことをLNS(L2TP Network Server)といいます。

1つのトンネルで複数ユーザのセッションを取り扱えるため広く利用されています。
PPTPでは1つのトンネルにつき1つのセッションしか取り扱えませんでした。

L2TPは暗号化技術がないため、暗号化技術であるIPsecをあわせて使用します。

トンネル技術のL2TPネットワーク層で動作する暗号化技術であるIPsecをあわせて、L2TP/IPsecといいます。
ponsuke-tarou.hatenablog.com

最後に

f:id:ponsuke_tarou:20190823225554p:plain
OSI参照モデルにおける各プロトコルの位置
f:id:ponsuke_tarou:20190823170703j:plain
黒姫山

次回の勉強内容

ponsuke-tarou.hatenablog.com

設計書レビューの種類を理解しよう

前回の勉強内容

ponsuke-tarou.hatenablog.com

レビューの種類についての過去問

作業成果物の作成者以外の参加者がモデレータとして主導すること,及び公式な記録,分析を行うことが特徴のレビュー技法はどれか。

ア. インスペクション > 正解
イ. パスアラウンド
ウ. ウォークスルー
エ. ペアプログラミング
平成24年春期問47 レビュー技法|応用情報技術者試験.com

インスペクションは、公式性の高いプロセスやルール・役割分担が決まっているレビュー技法です。

  • 英語 : inspection
  • 英和:精査,点検,検査; (書類の)閲覧. (ɪnspékʃən )
  • 別名 : ソフトウェアインスペクション

目的は欠陥を発見すること
以下のことを行う
a) 仕様を満たしていることの検証
b) 既定の品質を満たしていることの検証
c) 適切な規則・標準・ガイドライン・計画・仕様・やり方に従っていることの検証
d) a)-c)の結果が逸脱していないことの確認
e) Collects software engineering data (for example, anomaly and effort data)
f) 集めたsoftware engineering dataをチェックリストや検証の材料に使う
g) 発見した欠陥の修正をする
h) プロジェクト管理において適切な決定ができるようにインスペクションの結果を使えるよ う 記録 す る
IEEE 1028 Software Review and Audit

目的は、欠陥を発見すること。
他のレビューとは以下が違う
1. プロジェクトや企業の決まりに従う
2. 対象はサンプリングする
3. モデレータが管理を行う
4. インスペクションのノウハウがあるモデレータが先導する
5. インスペクションチームのメンバーが気付いた欠陥や他の意見についてモデレータ指揮の元話し合う
SWEBOK V3

ピアレビューの一種。ドキュメントの目視検査により、欠陥を検出する方法。
これにより、たとえば、開発標準の違反や、上位レベルドキュメントへの準拠違反が見つかる。最も公式なレビュー技術なので、必ず、文書化された実施基準に従って進める。
JSTQBソフトウェアテスト標準用語集

目的 : 欠陥の検出

設計仕様書やコーディングしたプログラムのロジックを第三者が検証し、誤りや問題点を検出することである。
インスペクションとは (inspection): - IT用語辞典バイナリ

メリット

  • 開発者本人が気づきづらい問題点を洗い出すことができる
  • プログラムなどを実際に動作させてみるテストでは検知できない潜在的な不具合を見つけることができる場合がある
  • コーディングルールに対する違反や極めて限定された条件でしか発生しない誤動作に繋がる問題点が検出される

役割

  • モデレータ(インスペクションリーダ) : 進行を主導し、インスペクション作業全体を統括する
    • モデレータにより、参加者の選定や、個々の役割の規定などが行われる
  • マネージャ : 実施のスケジュールを立て、レビューの目的が適切かどうかを判断する
  • レビューア(チェッカー/インスペクタ) : ある特定の技術やバックグラウンドを持ち、レビューを行う
    • 専門的ノウハウのある人
    • いろいろな分野や、レビュープロセスの役割を代表する人
    • 例えば・・・
      • プロジェクトや開発対象に関して一般的な知識しか持たないが、インスペクションの豊富なノウハウを持つ人
      • 法務やセキュリティーの専門知識をもっている他部門
  • 記録係 : レビューで取り上げた全ての課題・問題点・未解決事項を記録する
  • 他にも進行役等が設けられることもある

ルール

  • 実施計画立案では、実施タイミングや対象だけではなく「結果をどう使うか」まで決める
    • 例) 結果は対象ドキュメントの品質向上に使う
    • 例) 実施結果を工程移行の判定に使う
    • 例) プロジェクト完了後のプロセス改善のための会議のインプットに使う
  • 検出した欠陥をログに保管し、修正が行われたことを追跡調査する
  • インプット : ドキュメント
    • 企画書、プリセールスの提案書、プロジェクト計画書、要件定義書、各種設計書、ソースコード、バグ票、テスト計画書などあらゆる文書
  • アウトプット : 対象ドキュメントに含まれていると指摘された欠陥のリスト

f:id:ponsuke_tarou:20190806232933p:plain

ウォークスルーは、作成者がレビュー対象を説明しレビュー対象者にコメントを求める形式で進行するレビュー技法です。

  • 英語 : walkthrough

インスペクションに準じる公式なソフトウェアレビューに位置付けられることが多い。
ウォークスルーは、レビューを希望する作成者が数人のレビューアを招集、成果物の内容を順に説明する形式をとる。それに対してレビューアは、説明を通じて対象を追跡・検証し、その誤りや矛盾、抜け漏れなどを指摘するというのが大まかな流れである。
ウォークスルー(うぉーくするー) - ITmedia エンタープライズ

ドキュメントの著者による段階的なドキュメント内容の説明。情報を集めて、内容の共通理解を確立するために行なう。
ソフトウェアテスト標準用語集

目的 : 設計上の誤りを早期に発見すること と 設計の共通理解

設計上の誤りを検出するために作成者と複数の関係者が設計書をレビューします。
要求段階や設計段階の初期には,エンドユーザ (利用者) にも参加してもらうこともあります。
また、関係者間での使用上の共通理解を得ることができる。

メリット

  • ミーティングで指摘や意見が得られる
  • ウォークスルーの開催を前提にすれば、作成者は成果物を作る段階からそれが読まれること、他人に説明することを意識する
  • 作成者はミーティングで自身の考えを論理を説明する作業を通じて、自分自身で問題点や矛盾点に気付く場合もある
  • 解決策は、会議終了後に成果物作成者が自分で考えるので、会議の時間を短縮できる

ルール

  • 作成者が主体となって開催する
  • 指摘された内容は文書化するが、欠陥を修正するか否かについては作成者の責任として、ミーティングでは取り扱わない
  • 作成者はミーティングの終わりに指摘項目を読み上げ、追加の問題点やコメントの有無を確認する。

デザインレビューは、各設計工程において次の工程に向けて成果物を複数人でチェックするレビュー技法です。

  • 英語 : DesignReview
  • 略称 : DR

デザインレビューとは、開発における成果物を、複数の人にチェックしてもらう機会のことで、JIS(日本工業規格)やISO(国際標準化機構)9000シリーズにおいて定義されている設計審査のことである。
デザインレビューとは何? Weblio辞書

上司や管理者が参加すると設計者への評価へつながるため、出席すべきではないとされている。
情報処理教科書 応用情報技術者 テキスト&問題集 2018年版(日高哲郎)|翔泳社の本

目的 : 設計の工程ごとに設計品質の評価と各工程が終了したかどうかを判断する

レビュー対象が内部設計書であれば、外部設計書との一貫性の検証と要件定義の内容を満たしていることの確認を行う。
各設計工程ごとに成果物の問題点の早期発見を行うことで、後工程の作業をスムースにしてシステムの最終的な品質を高めることにつなげる。

メリット

各フェーズにおける仕様書や設計書、プログラムなどの成果物を第三者の目(営業、経理、購買、生産管理、品質保証など)でレビューすることにより、開発者の視点では漏れてしまう内容を精査して、品質を確保することを目的としている。<省略>
デザインレビューの参加者が、成果物について指摘し合うことにより、現在起きている問題やプロジェクトの進捗状況などの情報を共有することができるため、設計審査のみならず情報共有手段としても有効である。
デザインレビューとは何? Weblio辞書

f:id:ponsuke_tarou:20190823171232j:plain
黒姫山

次回の勉強内容

ponsuke-tarou.hatenablog.com

寝るまでにざっくり知っとくRDSって何?

BOSSから「RDSへ切り替えてみてもらえませんか?」と言われました。
懇親会でほろ酔いのまま「明日、やってみます!」と答えました。
はい、めちゃめちゃ知ったかしました、RDSがなんだかわかりません。
寝るまでにざっくり確認してみました。

RDSは、AWSのサービスでリレーショナルデータベースを管理できます。

  • 正式 : Amazon Relational Database Service

Amazon RDS はマネージド型リレーショナルデータベースで、データベースエンジンを Amazon AuroraMySQLMariaDBOracleMicrosoft SQL ServerPostgreSQL といった一般的な 6 種類のエンジンから選択できます。
特徴 - Amazon RDS | AWS

リレーショナルデータベースを管理するソフトウェアをまとめてRDBMSといいます。

RDBMSとはリレーショナルデータベースを作る・使うためのソフトウェアであり、以下のような特徴があります。

・データの整合性を維持しやすい。
・簡単にデータを参照・更新できるSQLという専門用語がある。
・信頼性のある更新処理を実現するトランザクション機能がある。
・障害発生時でも格納したデータが容易に失われない。
・セキュリティ・チューニングなど多くの周辺機能がある。
データベース初心者でも分かるRDBMSの基本~JPOUG Oracle Database入学式レポート | geechs magazine

RDSは、クラウド上のRDBMSです。

自分たちでせっせとサーバを用意してラックと置き場所を用意して・・・とか不要です。
AWSのEC2インスタンスでDBサーバ作ってインストールやら管理を頑張って・・・をRDSというDB専門サービスで楽にできちゃうみたいです。

https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/images/con-VPC-sec-grp.png
チュートリアル: ウェブサーバーと Amazon RDS データベースの作成 - Amazon Relational Database Service

AWSのコンソール画面でボタンをポチポチするだけでRDBの作成から管理まで出来ちゃいます。

https://d1.awsstatic.com/icons/jp/handson/secure-scalable/phase2/ss-handson-086.7f70334480ce55eb75d04e451c941b085497671c.jpg
フェーズ 2-3: Amazon RDS インスタンスを作成 - スケーラブルなウェブサイトの構築方法 | AWS

作ったあとでスケーリングも簡単にできるそうです。

e-words.jp

自動でスケーリングすることさえできるそうです。

https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F354022%2F8978bbb2-f2a7-e220-830d-68b3148902eb.png?ixlib=rb-1.2.2&auto=compress%2Cformat&fit=max&w=1400&s=1f7459ecc5c8b44b236c6262b2e7ea11
【AWS】RDS自動スケーリングが発表されたけど注意事項があるので検証した話 - Qiita

自動バックアップだって設定で出来ちゃいます。

docs.aws.amazon.com

どうやれば起動するんだろう・・・・

RDSは、使ったら使った分お金がかかります、だからきっと明日の朝は停止していることが予想されます。
明日の朝、どうやれば起動するかを知っときます。
aws.amazon.com

方法1. AWS コマンドラインインターフェース (CLI)のstart-db-instanceコマンドを使う

AWS CLIのインストールやらが必要そうなのでまた今度。
docs.aws.amazon.com

方法2. Amazon RDS アプリケーションプログラミングインターフェイス (API)のStartDBInstanceアクションを使う

そもそもAmazon RDS APIの使い方すらわからないのでまた今度。
docs.aws.amazon.com

方法3. AWS Toolkit for Visual StudioAWS Explorerを使う

今回、Visual Studioを使っていないので記録程度。
docs.aws.amazon.com

方法4. コンソール画面でボタンをポチポチする

一番簡単な方法がなぜかなかなか見つからない自分の検索センスの無さに驚きです。

  1. f:id:ponsuke_tarou:20190805221400p:plain
    Amazon RDS コンソールを開きます。
  2. f:id:ponsuke_tarou:20190805221241p:plain
    ナビゲーションペインで、[データベース] を選択し、
  3. 開始する DB インスタンスを選択します。
  4. f:id:ponsuke_tarou:20190805221558p:plain
    [アクション] で [開始] を選択します。

docs.aws.amazon.com

接続情報ってどこにあるんだろう・・・

起動できてもアプリやDBクライアントツールに設定する情報がわからないと困ります。

接続ユーザーとパスワードはRDSインスタンス作成時に指定しているので作成者に聞きます。

流石にそこまでコンソールでは見られないと思います。

https://d1.awsstatic.com/icons/jp/handson/secure-scalable/phase2/ss-handson-080.7ecbc8f8f202a528aba511e6ce09b3001e37d2d8.jpg
フェーズ 2-3: Amazon RDS インスタンスを作成 - スケーラブルなウェブサイトの構築方法 | AWS

最後に

明日、なんとか使えそうなぐらいには調べました。
本当に使えるようにはRDSはおろかAWSRDBの知識もめちゃめちゃ足りません。
少しずつこのページを更新していきたいものです。

f:id:ponsuke_tarou:20190805224722j:plain
とある日

次の日

調べたとおりにRDSを起動できました。

コンソールで確認したエンドポイントとポート番号を使ってみる。

pingコマンドで名前解決できているか見てみます。
# pingは通らなくても名前解決できていることがわかりました。
$ ping {確認したエンドポイント}

ec2-12-345-678-90.ap-northeast-1.compute.amazonaws.com [12.345.678.90]に ping を送信しています 32 バイトのデータ:
要求がタイムアウトしました。
要求がタイムアウトしました。
要求がタイムアウトしました。
要求がタイムアウトしました。

12.345.678.90 の ping 統計:
    パケット数: 送信 = 4、受信 = 0、損失 = 4 (100% の損失)、
クライアントツールで接続してみます。

f:id:ponsuke_tarou:20190806093944p:plain
A5:SQL Mk-2で接続してみる
f:id:ponsuke_tarou:20190806094124p:plain
接続できました。

iptablesはファイアウォールとパケット転送ができる

iptablesでポート転送の設定をして」と言われました。

AWSのCentOS6に「他のインスタンスに転送できるようにiptablesの設定をして」と言われました。
何?iptablesって?

iptablesは、Linuxに搭載されていてパケットのルールを設定できます。

http://smilejapan.net/wiki/index.php?plugin=ref&page=iptables%E3%81%A8%E3%81%AF%EF%BC%9F&src=iptables-1.gif
iptablesとは? - SMILE JAPAN WIKI

CentOS7からファイアウォールは、iptablesからfirewalldへと変更されました。

qiita.com

設定はコマンドと設定ファイルを書く方法があります。

コマンドで設定する時

iptables [-t テーブル] [コマンド] [チェイン] [条件] [ターゲット]

設定ファイルを書いて設定する時
設定ファイルの場所 : /etc/sysconfig/iptables

$ sudo cat /etc/sysconfig/iptables
*nat
:PREROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A PREROUTING -p tcp -m tcp --dport 54321 -j DNAT --to-destination 10.0.1.1:1521
-A PREROUTING -p tcp -m tcp --dport 54322 -j DNAT --to-destination 10.0.1.2:80
-A POSTROUTING --dst 10.0.1.1 -p tcp -m tcp --dport 1521 -j SNAT --to-source 10.0.1.3
-A POSTROUTING --dst 10.0.1.2 -p tcp -m tcp --dport 80 -j SNAT --to-source 10.0.1.3
COMMIT
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
COMMIT

受信したパケットはChainというルートを通って処理されます。

https://eng-entrance.com/wp-content/uploads/2016/07/chain.png
【丁寧解説】Linuxファイアウォール iptablesの使い方

https://oxynotes.com/wp-content/uploads/iptables01.png
コピペから脱出!iptablesの仕組みを理解して環境に合わせた設定をしよう | OXY NOTES

https://cacoo.com/diagrams/zWJRlTb4nFY0UoYy-B6C43.png
iptablesの設定 入門編 - Murayama blog.

Chainの種類
名前 設定できるテーブル 説明
INPUT filter, magnle 入ってくるパケットについてのチェイン
OUTPUT filter, nat, magnle 出てゆくパケットについてのチェイン
FORWARD filter パケットを転送についてのチェイン
PREROUTING nat, magnle 受信時にアドレスを変換するチェイン
POSTROUTING nat 送信時にアドレスを変換するチェイン

iptablesは、ポートフォワードとして使用するパケット転送機能もあります。

natテーブルに設定します。

ponsuke-tarou.hatenablog.com

設定ファイルでは「*nat」に書きます。

*nat
ここに設定を書く
COMMIT

iptablesで見かけたNATって何?

iptablesでNATテーブルってあるけどこれ何?

iptablesがさっぱり不明な状態で「iptablesを設定してポートフォワードできるよにする」必要があったのでiptablesが有効になっているか確認したらTable: natって出力がありました。

$ sudo /etc/rc.d/init.d/iptables status
Table: nat
Chain PREROUTING (policy ACCEPT)
num  target     prot opt source               destination

Chain POSTROUTING (policy ACCEPT)
num  target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination

NATはプライベートIPアドレスとパブリックIPアドレスを組合せで変換してくれます。

  • 正式名称 : Network Address Translation

https://camo.qiitausercontent.com/441f211d0a460bec29f4270ddbf1c0e090e92ef5/68747470733a2f2f71696974612d696d6167652d73746f72652e73332e616d617a6f6e6177732e636f6d2f302f3136303939332f35316164306362612d643864632d616665302d336334632d6534356563643761313462332e706e67
https://camo.qiitausercontent.com/84807767dd8cb6eac4c67e33b3e4e59a37db3d84/68747470733a2f2f71696974612d696d6167652d73746f72652e73332e616d617a6f6e6177732e636f6d2f302f3136303939332f38363661663661312d396164382d636336612d643431392d3735623237623835653239322e706e67
NATに関して可能な限り分かりやすくまとめて見た。 - Qiita

https://www.infraexpert.com/studygif/tcpipz36.gif
NAT( Network Address Translation )とは

変換するプライベートIPアドレスとパブリックIPアドレスの組合わせを管理してくれるのがNATテーブルです。

http://blog-imgs-70.fc2.com/a/y/u/ayufishing/rtxnat02s.png
NAT の理解は芋づる式 - インフラまわりのプロになりたい

https://www.infraexpert.com/studygif/tcpipz38.gif
NAT( Network Address Translation )とは

LAN内からインターネットへ出ていく時に送信元のプライベートIPアドレスをパブリックIPアドレスに変換してくれるのがソースNAT
  • 略称 : SNAT
  • 英語 : Source NAT
  • 別名 : 送信元NAT

https://camo.qiitausercontent.com/cbec96ed61552c11e57cc9770f4e8b3641124298/68747470733a2f2f71696974612d696d6167652d73746f72652e73332e616d617a6f6e6177732e636f6d2f302f3136303939332f37343331323764392d663461622d313838632d653331362d3136323264336339363336302e706e67
NATに関して可能な限り分かりやすくまとめて見た。 - Qiita

インターネットからLAN内にアクセスする時に送信先のパブリックIPアドレスをプライベートIPアドレスに変換してくれるのがデスティネーションNAT

https://camo.qiitausercontent.com/ef453e42301d02cee6a9a09ccdcb4d23283112b8/68747470733a2f2f71696974612d696d6167652d73746f72652e73332e616d617a6f6e6177732e636f6d2f302f3136303939332f37336534346230332d326262392d323635622d656566622d6264343164313239613233352e706e67
NATに関して可能な限り分かりやすくまとめて見た。 - Qiita

NATは、プライベートIPとパブリックIPを1対1の組合せで変換します。

プライベートIPはたくさん作れるけどパブリックIPをたくさん用意するのは大変です。

パブリックIPアドレスはタダじゃありません。

http://blog-imgs-70.fc2.com/a/y/u/ayufishing/rtxnat03s.png
NAT の理解は芋づる式 - インフラまわりのプロになりたい

そこで、IPマスカレード

  • 別名 : NAPT
  • 正式名称 : Network Address Port Translation
複数のプライベートIPを1つのパブリックIPに組合せられます。
なぜなら、IPアドレス+ポート番号で組合せるからです。

https://camo.qiitausercontent.com/8f2cd04f50b039a3a1af1eaef3ccc851c7977029/68747470733a2f2f71696974612d696d6167652d73746f72652e73332e616d617a6f6e6177732e636f6d2f302f3136303939332f32373462393962622d396330372d303663362d623431622d6465353030343230363166352e706e67
NATに関して可能な限り分かりやすくまとめて見た。 - Qiita

https://www.h323.jp/wp/wp-content/uploads/napt.jpg
MCU入門 第9回 NAT/FW トラバーサル③– NAT/FW トラバーサルの仕組み “NATとは” – MCU製品情報サイト VC.info

https://mo.kerosoft.com/pub/mo/image/iptables/.thumbnail/iptables-nat2.png.jpg
NAT箱の192.168.1.30:1234宛に届いたパケットを、10.0.2.50:80へ投げるというNATを書く。
# iptables -t nat -A PREROUTING -m tcp -p tcp --dst 192.168.1.30 --dport 1234 -j DNAT --to-destination 10.0.2.50:80
"10.0.2.50:80宛のパケットは、NAT箱の10.0.2.40というアドレスに付け替えてから送信する"というルールを書く。
# iptables -t nat -A POSTROUTING -m tcp -p tcp --dst 10.0.2.50 --dport 80 -j SNAT --to-source 10.0.2.40
NATのPREROUTINGを通って変換されたアドレスに対して許可ルールを書いておく。
# iptables -A FORWARD -m tcp -p tcp --dst 10.0.2.50 --dport 80 -j ACCEPT
戻りのパケットも許可する
# iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptablesで特定のポートを別のホストへ転送する方法 - Kerosoft : Modus Operandi

コンピュータ化システムバリデーションの基礎となるGMP省令の3大目的

コンピュータ化システムバリデーションを勉強するとGMPという単語をよく見かけました。

ponsuke-tarou.hatenablog.com

GMPとは、日本における「医薬品及び医薬部外品の製造管理及び品質管理の基準に関する省令」のことです。

  • 英語 : Good Manufacturing Practice
  • 日本語 : 適正製造規範

ざっくりいうと「安心して製品を使えるようにやらなければならないこと」です。
GMPは、医療分野以外にも食品などの製造業でも使われます。
日本の製薬・医療業界では「医薬品及び医薬部外品の製造管理及び品質管理の基準に関する省令」を指すことが多いです。
この省令は、GMP省令とも言います。
「医薬品及び医薬部外品の製造管理及び品質管理の基準に関する省令」は薬事法の14条に基づいています。
14条では「医薬品等の製造販売の承認」に始まり承認の基準や審査について記載されています。

GMPは、医薬品製造業における製造管理と品質管理の基準です。

健康食品や化粧品にも適用される基準です。

省令を読んでもよくわかりません。

書いてある文字列が難しくてよくわからないので、GMPを説明しているサイトと合わせて学びます。

誰が作業しても、いつ作業しても、必ず同じ品質・高い品質の製品をつくるために、医薬品製造業者が守るべきルールです。

目的を達成するためにやること

https://www.urethanegel.jp/blog/wp-content/uploads/2018/07/GMP.jpg
GMPって何?|医薬品の品質管理を分かりやすく!

(ハード)薬を作る製造所の環境や設備

GMP省令ではこんな感じで書いてあります。

(構造設備)
第九条 製品の製造所の構造設備は、次に定めるところに適合するものでなければならない。
 一 手順書等に基づき、その用途に応じ適切に清掃及び保守が行われ、必要に応じ滅菌され、また、その記録が作成され、保管されていること。
 二 製品等により有毒ガスを取り扱う場合においては、その処理に要する設備を有すること。
 三 作業所のうち作業室は、製品の種類、剤型及び製造工程に応じ、じんあい又は微生物による汚染を防止するのに必要な構造及び設備を有していること。ただし、製造設備等の有する機能によりこれと同程度の効果を得られる場合においては、この限りでない。
 四 作業所のうち、原料の秤量作業、製品の調製作業、充てん作業又は閉そく作業を行う作業室は、当該作業室の職員以外の者の通路とならないように造られていること。ただし、当該作業室の職員以外の者による製品への汚染のおそれがない場合においては、この限りでない。
 五 飛散しやすく、微量で過敏症反応を示す製品等又は交 叉さ 汚染することにより他の製品に重大な影響を及ぼすおそれのある製品等を製造する場合においては、当該製品等の関連する作業室を専用とし、かつ、空気処理システムを別系統にしていること。
 六 製品の製造に必要な質及び量の水(設備及び器具並びに容器の洗浄水を含む。)を供給する設備を有すること。
・医薬品及び医薬部外品の製造管理及び品質管理の基準に関する省令(◆平成16年12月24日厚生労働省令第179号)

間違いを防ぐことができること

フェールセーフ/フェールプルーフに似ています。
医療系のシステム開発では、設計段階から「ユーザ操作に間違いがあったら?」の目線が必要になりますね。

https://resilient-medical.com/wp-content/uploads/2017/10/s_2d8b5cd55b5a69bb2da5907ef37c47c6-600x500.jpg
https://resilient-medical.com/wp-content/uploads/2017/10/s_1a761dab43bbde6360d38e147bf4de04-600x500.jpg
https://resilient-medical.com/human-error/fail-safe-fool-proof

衛生的であること
高い品質を保ち続けることができること

システム開発では品質を保つために色んな種類のテストを実施します。
医療系のシステム開発ではこれがより厳しく求められることになります。

(ソフト)人によるルールの運用

https://www.temahimado.co.jp/img/gmp_09.gif
GMPとは?│にんにく卵黄通販サイト てまひま堂

http://www.tokyo-eiken.go.jp/assets/pharma/hinshitu/image/gmp_003_2.gif
誰でもわかる簡単GMP (3)考え方の基本〜ルールを決めて書類にする・実行する・見直す・改善する〜

ルールを決めてそれを書類に残すこと

GMP省令では作る手順書の種類を具体的に決めています。
医療系のシステム開発では、仕様書や手順書の作成が重要となります。

(手順書等)
第八条 製造業者等は、製造所ごとに、構造設備の衛生管理、職員の衛生管理その他必要な事項について記載した衛生管理基準書を作成し、これを保管しなければならない。
 2 製造業者等は、製造所ごとに、製品等の保管、製造工程の管理その他必要な事項について記載した製造管理基準書を作成し、これを保管しなければならない。
 3 製造業者等は、製造所ごとに、検体の採取方法、試験検査結果の判定方法その他必要な事項を記載した品質管理基準書を作成し、これを保管しなければならない。
 4 製造業者等は、前三項に定めるもののほか、製造管理及び品質管理を適正かつ円滑に実施するため、次に掲げる手順に関する文書(以下「手順書」という。)を製造所ごとに作成し、これを保管しなければならない。
  一 製造所からの出荷の管理に関する手順
  二 バリデーションに関する手順
  三 第十四条の変更の管理に関する手順
  四 第十五条の逸脱の管理に関する手順
  五 品質等に関する情報及び品質不良等の処理に関する手順
  六 回収処理に関する手順
  七 自己点検に関する手順
  八 教育訓練に関する手順
  九 文書及び記録の管理に関する手順
  十 その他製造管理及び品質管理を適正かつ円滑に実施するために必要な手順
 5 製造業者等は、製品標準書、衛生管理基準書、製造管理基準書、品質管理基準書及び手順書(以下「手順書等」と総称する。)を製造所に備え付けなければならない。
・医薬品及び医薬部外品の製造管理及び品質管理の基準に関する省令(◆平成16年12月24日厚生労働省令第179号)

ルール実行するための手順書をSOPともいいます。

SOP(Standard Operating Procedures)とは標準業務手順書の略称で、治験の際に必ず守るべき基本的な業務手順をまとめた手順書。
SOPとは | 製薬業界 用語辞典 | Answers(アンサーズ)

ルールの実行結果を記録に残して証拠にすること

GMP省令には「記録を作成し、これを保管すること」がたくさんあります。
医療系のシステム開発では、エビデンスをきっちりと残して管理する必要があります。

(製造管理)
第十条 製造業者等は、製造部門に、手順書等に基づき、次に掲げる製造管理に係る業務を適切に行わせなければならない。<省略>
 三 製品の製造に関する記録をロットごと(ロットを構成しない製品については製造番号ごと。以下同じ。)に作成し、これを保管すること。
 四 製品の資材についてロットごとにそれが適正である旨を確認するとともに、その結果に関する記録を作成し、これを保管すること。
 五 製品等についてはロットごとに、資材については管理単位ごとに適正に保管し、出納を行うとともに、その記録を作成し、これを保管すること。
 六 構造設備の清浄を確認するとともに、その結果に関する記録を作成し、これを保管すること。
 七 職員の衛生管理を行うとともに、その記録を作成し、これを保管すること。
 八 構造設備を定期的に点検整備するとともに、その記録を作成し、これを保管すること。また、計器の校正を適切に行うとともに、その記録を作成し、これを保管すること。
・医薬品及び医薬部外品の製造管理及び品質管理の基準に関する省令(◆平成16年12月24日厚生労働省令第179号)

内容を見直して検討・改善していくこと

手順の作成と記録だけではなく、定期的に記録をチェックして状況や環境の変化に合わせた改善が必要になります。

(製造管理)
第十条 製造業者等は、製造部門に、手順書等に基づき、次に掲げる製造管理に係る業務を適切に行わせなければならない。<省略>
 九 製造、保管及び出納並びに衛生管理に関する記録により製造管理が適切に行われていることを確認し、その結果を品質部門に対して文書により報告すること。
・医薬品及び医薬部外品の製造管理及び品質管理の基準に関する省令(◆平成16年12月24日厚生労働省令第179号)

国や会社によってばらつきがあります。

ざっくり似ていても世界各国全く同じ基準ではありません。

PIC/Sでは、GMP基準の国際化を目指しています。

  • 正式 : Pharmaceutical Inspection Convention and Pharmaceutical Inspection Co-operation Scheme
  • 日本語 : 医薬品査察協定及び医薬品査察共同スキーム

PIC/Sは、GMPの分野で共通の基準を設け、各国の査察官にトレーニングの機会を提供することによって、世界中の査察基準を整合させることを目指しています。
PIC/Sの基礎知識。PIC/S GMPとは?PIC/Sの目的や成り立ちは? | コラム | 平原エンジニアリングサービス│医薬品施設のエンジニアリング

GMPの歴史

  • 1961年 サリドマイドの薬害について報告される
  • 1963年 (アメリカ)FDA(アメリカ食品医薬品局)が、連邦食品・医薬品・化粧品法に基づいて医薬品等の製造品質管理基準を定めた
  • 1969年 世界保険機関がWHO-GMPを制定し、加盟国に対して医薬品貿易においてGMPに基づく証明制度を採用・実施するように勧告
  • 1980年 (日本)薬事法改正に伴い「医薬品GMP」施行
  • 1990年 (日本)「原薬GMP」施行
  • 1994年 (日本)「医薬品GMP」「原薬GMP」を合わせた「医薬品の製造管理及び品質管理規則」施行し、これが製造業の要件となった
  • 1995年 PIC/S設立
  • 2005年 (日本)「医薬品及び医薬部外品の製造管理及び品質管理規則」が「医薬品及び医薬部外品の製造管理及び品質管理の基準に関する省令」へ改正され、製造販売承認の要件となった
  • 2014年 日本がPIC/Sに加盟

WebLogic Serverって何?

WebLogic Serverは、Java EEに準拠したWebアプリケーションサーバです。

https://www.unisys.co.jp/solution/tec/software/weblogic/s33drt000007gu0r-img/img_02.gif
多階層型Javaアプリケーションを実現する統合プラットフォーム Oracle WebLogic Server【日本ユニシス】

買収を経てOracle社が作っています。

  • 歴史
    • 1990年代 WebLogic社が開発
    • 1998年 BEA Systems社が買収
    • 2008年 Oracle社が買収

https://www.fujitsu.com/jp/Images/wls-history_tcm102-2266170.jpg
Oracleミドルウェア製品 Oracle WebLogic Server : 富士通

Java EE は、Javaシステム開発するための標準仕様です。

ponsuke-tarou.hatenablog.com

JPAって何?

JPAは、リレーショナルデータベースを使う時用のJavaフレームワークの仕様の定義です。

http://terasolunaorg.github.io/guideline/5.5.1.RELEASE/ja/_images/dataaccess_jpa_mapping.png
6.3. データベースアクセス(JPA編) — TERASOLUNA Server Framework for Java (5.x) Development Guideline 5.5.1.RELEASE documentation

Java EEだけではなくJava SEでも使えます。

JPAJava EEの「Enterprise Application Technologies」に含まれる技術仕様ですが、Servlet/JSPEJBなどと異なり、コンテナ・ベースのアーキテクチャを採用していないためJava SEでも利用可能です。
JPAの基礎1 - Qiita

データベースとJavaを関連付けてくれます。

https://builder.japan.zdnet.com/storage/2015/07/07/8ffc3bda4c104f848f0979154e31cfd1/image5.png
初めてのJPA--シンプルで使いやすい、Java EEのデータ永続化機能の基本を学ぶ - builder by ZDNet Japan

JPAは以下3つの要素から構成されています。

Entityクラスは、データベースにあるテーブルを表すJavaのクラスです。

データベースにある1つのテーブルの1レコードを表すクラスです。
このクラスのインスタンス
データを格納してテーブルを更新したり、
テーブルから取得したデータを格納して使います。

永続性コンテキストは、Entityクラスのインスタンスを集めたものです。

この永続性コンテキストとJPQL*1を使用してデータベースへの問合せを行います。

EntityManagerは、Entityのライフサイクルを管理するためのAPIを提供するインタフェースです。

https://builder.japan.zdnet.com/storage/2015/07/07/13f730bf2cc2d33fca20efa3b6979098/image6.png
初めてのJPA--シンプルで使いやすい、Java EEのデータ永続化機能の基本を学ぶ - builder by ZDNet Japan

JPAの実装

EclipseLink
Hibernate ORM : JPAの仕様作成にHibernateプロジェクトの創始者がいたため、JPAHibernateの影響を受け継いでいます。
Apache Open JPA

*1:Java Persistence Query Language : SQLに似た問合せ言語