【ネットワーク・アーキテクチャ】 ■ 同期方式 ● フラグ同期方式 ・ データを伝送していない間でも常時一定のパターンの同期信号(フラグ)を送り続け、これにより送信側と受信側の同期を維持する方法 ・ フラグは、必ず01111110というビットパターンを持ち、送信するデータはフラグの間に挟まれた状態で伝送され、フラグ以外の全てのビットはデータとして認識される ・ フラグの間に挟まれるデータには大きさの規定はない( 8 倍数可変長)。 ● キャラクタ同期方式 ・ SYNキャラクタと呼ばれる特殊文字コードによって送信側と受信側の同期を維持する方法 ・ 文字だけの通信にしか対応しないが、大量の文字の送受信が可能。SYN符号は、01101000という8ビットのビットパターンを持ち、同期を確実にとるために2つ以上使用する。 ● 調歩同期方式(非同期方式) ・ 同期信号を使用せずに、それぞれの文字 1 文字に対して、スタートビットとストップビット(それぞれ 1 bit)を付加してデータを伝送する方法 ・ 厳密には同期をとっていないので「非同期方式」とも呼ばれる ・ 文字のみの通信にか対応せず、また、伝送データ 1 文字( 8 bit )につき、2 bit の制御ビットが一律に付加されるため、データ伝送効率は低い。 ■ 二重通信 ● 全二重通信(Full Duplex) ・ 上り・下りの通信を同時に行なうことが可能である通信方式を、全二重通信と呼ぶ ・ 理論的には、公称表記速度の2倍の速度で使用することが可能(10Mbps であれば、上下併せて20Mbps) ・ ツイストペアケーブル(より対線)を使用する 10Base-T、100Base-TX などで実現可能 ● 半二重通信(Half Duplex) ・ 上り・下りのいずれかの通信しかできず、双方向の通信を切替えながら使用する通信方式を、半二重通信と呼ぶ ■ ポーリング/セレクティング方式 ・ 単純バス接続された端末が同時にデータ送信を開始すると、衝突(Collision)が発生し、自律的衝突回避機能のないネットワークシステムではデータ送信が不可能となる ・ データの送受信の開始タイミングを、制御局と呼ばれるホストで一元管理することで、この衝突を回避する手法が、ポーリング/セレクティング方式と呼ばれる ● ポーリング方式 ・ 制御局が従属局に対して、送信要求の有無を、一定間隔で順次、問い合わせをし、送信要求を受けた場合にのみ、従属局の送信を許可する方式をポーリング方式と呼ぶ ● セレクティング方式 ・ 制御局からの送信要求がある場合に、従属局に対して、受信の可不可状態を問い合わせ、受信可の応答を受けた場合にのみ、送信を行う方式をセレクティング方式と呼ぶ ● セントライズド方式/ノンセントライズド方式 ・ 従属局から従属局への送信要求がある場合に、制御局を介した通信のみが可能であり、従属局同士での通信ができない方式を、セントライズド方式と呼ぶ ・ 従属局から従属局への送信要求がある場合に、制御局による送信許可の取得をもって、従属局同士での通信が可能となる方式を、ノンセントライズド方式と呼ぶ ■ コンテンション方式 ・ 特定の制御局という概念がなく、送信要求のあるホストが適宜、送信相手に受信可不可のポーリングを行い、その応答を得て送信を行う方式をコンテンション方式と呼ぶ ・ HDLC(High level Data Link Control procedure : ハイレベル伝送制御手順)、CSMA/CD(Carrier Sense Maltiple Access/Collision Detection)などの基本概念となる ■ 回線分割多重 ・ TDM (Time Division Multiplexing : 時分割多重) ・ FDM (Frequency Division Multiplexing : 周波数分割多重) ・ WDM (Wavelength Division Multiplexing : 波長分割多重) ■ 無線分割多重 ・ TDMA (Time Division Multiple Access : 時分割多元接続) ・ CDMA (Code Division Multiple Access : 符号分割多重接続) ■ 誤り訂正手法 ● 自動再送要求方式 ・ 本来のデータに冗長データを付加し、伝送途中でデータに誤りが発生した場合に、その誤りを検知して自動的に送信元に再送を要求する誤り訂正方式 ・ ネットワーク通信においては最も一般的な誤り訂正手法 ● 先方誤り訂正方式 ・ 本来のデータに冗長データを付加し、伝送途中でデータに誤りが発生した場合に、この冗長データを使用して誤りを受信側で訂正、データの復元を行える誤り訂正方式 ・ データの再送によるデータの復元を行う余裕がない、リアルタイム性の要求されるデータ通信において使用される ・ 復元精度を要求すると、冗長データによるオーバーヘッドが大きくなる。また、その場合でも、データの完全な復元は保証されない。 ■ 奇数パリティチェック・偶数パリティチェック (parity:偶奇性) ・ チェック対象となる単位長ビット、および、付加するパリティビットを通じて、真値ビット(1)の数が奇数、もしくは、偶数になるようにパリティビットを付加する方法 ・ 0 0 1 0 1 1 0 0 → 奇数パリティなら → 0 0 1 0 1 1 0 0 "0" (真値が合計 3 つで奇数) ・ 0 0 1 0 1 1 0 0 → 偶数パリティなら → 0 0 1 0 1 1 0 0 "1" (真値が合計 4 つで偶数) ・ 1 ビットの誤りは検知可能であるが、2 ビット以上の誤りは検知不可能 ・ 誤り発生箇所ビットを特定することも、訂正することもできない ・ p = 1 xor b1 xor b2 xor b3 xor b4 xor b5 xor b6 xor b7 xor b8 (奇数パリティの場合) ・ p = 0 xor b1 xor b2 xor b3 xor b4 xor b5 xor b6 xor b7 xor b8 (偶数パリティの場合) ■ CRC(Cyclic Redundancy Check : 巡回冗長検査) ・ データ送信側で、伝送するデータ・フレームに対して巡回的なアルゴリズム(生成多項式)を適用して、冗長データ(CRCコード)を生成。これを本来のデータに加えて送信 ・ データ受信側でも、送信側と同一のアルゴリズムで冗長データを算出。送信側・受信側で算出したCRCコードが一致していれば、データは誤りなく伝送されたことになる ・ n ビットのデータフレームを n 次の多項式とみなし、この多項式を適切なアルゴリズムを有する m 次の多項式( m < n )にて除算(ITU-T勧告 : x^16 + x^12 + x^5 + 1) 剰余の多項式( m 次以下)を m ビットのデータフレームとみなし、CRCコードとして、本体のデータフレームに付加して送信 ・ 受信側でも同様の除算を行い、同値のCRCコードが得られれば、データは誤りなく伝送されたことになる ・ データが複数箇所で誤りを生じる「バースト誤り」に対しても有効なチェック方式 ・ メッセージ単位でデータ誤りを検出し、メッセージのビット数よりも少ないビット数のCRCコードにて機能することが可能 ■ フロー制御 ・ 受信側の受信バッファの余裕の度合いにより、受信側が送信側に対して、送信の停止と再開の要請を適宜通知しながら、データフローを制御すること ・ ハードウェアフロー制御と、ソフトウェアフロー制御の2つの方法がある ● ハードウェアフロー制御 ・ データ伝送用の信号線とは別の、フロー制御信号を送信するための専用の信号線を使用してフロー制御を行う方法 ・ 物理層レベルの仕様での対応が必要になるため、ハードウェアが複雑になる ・ RS-232C はハードウェア制御を採用 ● ソフトウェアフロー制御 ・ フロー制御用の特殊コードを、データに交えて送信する方法 ・ PC では X-ON(Ctrl-Q) 、X-OFF(Ctrl-S) のキャラクタコードを使用するのが一般的 ・ 電話線などの、ハードウェアフロー制御の対応が不可能な物理層媒体で使用される 【標準化規格】 ■ 国際標準(de jure standard : デジュールスタンダード) ・ 国際レベルの公的機関によって策定された標準化規格 ・ 加盟国の各代表の承認を経て策定されるため、国際的に通用する標準となる。反面、手続きに時間を要するため、技術革新に対する迅速な対応が困難であるとう点もある ○ ITU( International Telecommunication Union : 国際電気通信連合) ・ 電気通信に関する国際的な規制・標準化・調和を協議・策定するための、国際連合の専門機関 ・ ITU-T (ITU - Telecommunication standardization sector) … 電気通信標準化部門 ・ ITU-R (ITU - Radio communication standardization sector) … 無線通信標準化部門 ・ ITU-D (ITU - telecommunication Development sector) … 電気通信開発部門 ○ ISO( International Organization for Standardization : 国際標準化機構) ・ 国際的な取引の円滑化を促進するための標準化を目的として、国際規格調整委員会によって設立された非政府間機構 ・ 電気・電子分野の標準化には関与しない ○ IEC( International Electrotechnical Commission : 国際電気標準会議) ・ 電気・電子分野における標準化と国際協力の促進を目的として、政府代表者会議で設立された非政府間機構 ・ 電気・電子分野の標準化を専門とする(ISOとは補完関係にある) ○ JTC1( ISO/IEC Joint Technical Committee 1 : ISO/IEC合同技術委員会) ・ ISO と IEC の双方に関係する情報技術分野のための合同技術委員会として、必要に応じて開設される ■ 各国内標準 ・ 国際標準の意向に沿った形で、各加盟国内で国内向けに策定された標準化規格 ・ ITU-T … TTC(電信電話技術委員会)、ITU-R … ARIB(電波産業会)、JTC1 … JISC(日本工業標準調査会) ・ OSI実装ワークショップ … INTAP(情報処理相互運用技術協会) ○ ANSI (American National Standard Institute) ・ アメリカ国内の工業製品の規格を策定。日本の JIS に相当する ■ 業界標準(フォーラム標準) ・ 国際標準レベルの標準策定作業では長期の時間を要することから、小回りの効く業界組織が中心となって策定を進めた標準化規格 ・ 単独企業による策定ではなく、同業界の複数企業が組織して策定するため、比較的、民主的な標準化が可能。近年は、公的な標準化組織も積極的に規格の公式化を進めている ○ IETF (Internet Engineering Task Force) ・ TCP/IP を中心とするインターネット上の各種プロトコルなどを標準化した RFC (Request For Comments) を審議、実装、発行する委員会 ・ Internet Draft(草稿)→ Proposed Standard(標準化提案)→ Draft Standard(標準化草案)→ Standard(標準)という過程を経て、標準プロトコルとして実装される ・ RFC には一連の通し番号がつけられ、新版の標準化により旧版は Obsolete(廃止)または Update(更新)される。廃止の場合は新版のみ、更新の場合は新旧版が実効をもつ ■ 企業標準(デファクト・スタンダード) ・ 単一企業が独自に開発・策定したプロトコルや技術標準が、市場原理や他企業の協賛によって広く普及したために、事実上の業界標準となってしまった規格 ・ IPX (Internetwork Packet eXchange)(Novell社)、ATコマンド(Hayes Microcomputer Products社:倒産)などが該当する ・ 現在では、企業標準のプロトコルのデファクト・スタンダード化は困難であるため、新規にプロトコルを策定しようとする企業はほとんどない ■ ITU-T 勧告シリーズ ・ ITU-T(International Telecommunication Union - Telecommunication standardization sector) : 国際電気通信連合 電気通信標準化部門 ● I.シリーズ(ISDN : Integrated Services Digital Network に関する規格) ● V.シリーズ(既存電話網を利用したデータ通信、モデムと端末装置間のデータ通信に関する規格、ISDN と V シリーズの接続に関する規格) V.24 … モデム・コンピュータ端末間のインターフェース信号に関する規格 V.25bis … コンピュータ端末から電話網に対する発呼から切断までのコマンドに関する規格 V.34 … 33.6k 全二重モデム通信での変復調方式に関する規格 V.90 … 56.K 全二重モデム通信での変復調方式に関する規格(加入電話網と基幹 ISDN 網との接続) V.110 … V シリーズインターフェース端末を ISDN に接続するための規格(ターミナルアダプタがこれに該当する) ● X.シリーズ(データ通信網におけるデータ端末装置(DTE)とデータ回線終端装置(DCE)の間のインターフェイスと公衆パケット交換網に関する規格) X.25 … パケット交換網における DTE-DTC 間の通信方式を定義。DHLC フレームなどのデータリンク層が中心。物理層の定義は X.21 が中心 X.500 … OSI ディレクトリサービス、ディレクトリプロトコルに関する規格 X.509 … 電子証明書の標準フォーマット ● G.シリーズ(ファクシミリのG1〜G4規格、ビデオテックスの表示レベルプロトコルの標準) ● Q.シリーズ Q.922 … フレームリレーの中核となる使用を定義。ANSI、ITU-T、Frame Relay Forum の仕様に対応 Q.933 … PVC状態確認プロトコル・LMI(Local Management Interface) の信号仕様、SVC の確立・維持・解放のための信号仕様 ● X.400 : MHS(Message Handling System) ・ MTA(Message Transfer Agent:転送)、MS(Message Store:蓄積)、MUA(Message User Agent:受信操作)の3つの機能から構成される電子メールシステム規格 ・ いわゆるインターネットメールシステムとの直接の互換性はないが、アプリケーション層レベルのゲートウェイを介することで相互通信は可能 ■ IEEE シリーズ ・ Institute of Electrical and Electronic Engineers : アメリカ電気電子学会 ____________ アプリケーション層 ↑ プレゼンテーション層 | セッション層 | トランスポート層 IEEE 802.1 ネットワーク層 | ________________ データリンク層 LLC(Logical Link Control)副層 | | IEEE 802.2 ____________________________________________________________________ MAC(Media Access Control)副層 |  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ↑ 物理層 ↓ ↓ IEEE 802.3 / IEEE 802.4 / IEEE 802.5 / IEEE 802.11 / IEEE 802.14 ● IEEE 802.1 ・ IEEE802 Ethernet シリーズの共通的な規格部分を規定。ネットワーク層以上の上位層とのインターフェース標準化も含む ● IEEE 802.1D ・ MAC 副層以下でのブリッジ機能をもつネットワークノード同士の接続に関する標準化 ・ スパニング・ツリー・プロトコル、タグ付きフレーム、QoS(Quality of Service)の標準化が含まれる ● IEEE 802.1Q ・ VLAN(Virtual LAN) に関する標準化。複数のブリッジを利用して形成される VLAN を構築する手法などを導入する ● IEEE 802.2 ・ ネットワーク層以上の上位層に対して、MAC 副層に依存しない 802.3 、802.4 、802.5 、802.11 、802.14 などのサービスを提供するための共通の規定 ● IEEE 802.3 ・ CSMA/CD(Carrier Sense Maltiple Access/Collision Detection : 搬送波検知多重アクセス/衝突検知型)に関する標準化 ・ 10Base-T などの標準規格 ● IEEE 802.3ab … 1000Base-T 規格 ● IEEE 802.3ae … 10GBase-X 規格 ● IEEE 802.3u … 100Base-TX/FX/T4 規格 (Fast Ethernet) ● IEEE 802.3x … 全二重 Ethernet におけるフロー制御の標準化。本来の CSMA/CD のフロー制御を無視した LAN スイッチに普及が背景にある ● IEEE 802.3z … 1000Base-SX/LX(光ファイバー)、1000Base-CX(STP : Shield Swisted Pair、遮蔽より対線)規格(ギガビットイーサネット) ● IEEE 802.4 ・ トークン・バス方式に関する標準化(バス接続による論理的なリング構造をとる方式) ● IEEE 802.5 ・ トークンリング方式に関する標準化。(リング接続による物理的なリング構造をとる方式) 4Mbit/s、16Mbit/s が標準化されている ・ ツイストペアケーブル(UTP)、もしくは、光ファイバーを使用 ● IEEE 802.5t … HSTR(High Speed Token Ring) の標準化。100Mbit/s ● IEEE 802.5v … 1Gbit/s トークンリングの標準化 ● IEEE 802.11 ・ 2.4GHz帯域の電波、赤外線を使う無線LAN規格。Ethernet規格の一部として策定。1Mbit/s、2Mbit/s が標準化されている ・ 伝送速度は1Mbps、2Mbpsで、伝送距離は100m程度。CSMA/CAアクセス制御が用いられ、ビット誤り率の低いスペクトラム拡散方式が用いられる ・ 「ダイレクトシーケンススペクトラム拡散(DSSS)方式」と「周波数ホッピングスペクトラム拡散(FSSS)方式」がある) ● IEEE 802.11a … 5GHz帯域を使用。24Mbps 〜 56Mbps を標準化 ● IEEE 802.11b … 2.4GHz帯域を使用したままで高速化。5.5Mbps、11Mbps を標準化。AirPort/AirMac を始めとする普及版の無線LAN規格 ● IEEE 802.14 ・ CATV(CAble TV) の同軸ケーブル網をLANとして使用するためのケーブルモデムの標準化。マルチメディアサービスの提供を念頭においている ● IEEE 1284 ・ パラレルポートの標準規格。セントロニクス仕様として業界標準となっていたものを標準化。セントロニクス互換モードやECPモード、EPPモードなどがある ● IEEE 1394(FireWire、iLink、DV端子) ・ ホストとなるPCを必要とせず、機器同士の通信が可能なSCSI規格。100Mbit/sec、200Mbit/sec、400Mbit/secの3種類のデータ転送モードが規格化 ○ スパニング・ツリー(Spanning Tree : ) ・ 円環状のネットワークでのデータ伝送の無限ループ化を回避するための制御手法 ・ 対応ブリッジ間で BPDU (Bridge Protocol Data Unit) により hello パケット・経路情報を送受信しあい、不要なブリッジ・インターフェースを閉鎖する ・ 円環経路の一方を優先経路、他方を障害時の迂回経路としてあらかじめ設定しておくことで、無限ループを防止する ○ QoS(Quality of Service) ・ ネットワーク上で、ある特定セッションのための帯域をあらかじめ確保しておき、その一定以上の通信速度を保証する手法 ・ ATM でのタイプ1セッション、TCP/IP での RSVP(Resource reSerVation Protocol) などの概念もこれに該当する ○ トークン・パッシング (Token Passing) ・ トークンと呼ばれるデータ送信権をネットワークのノード間に巡回させることで、データリンク層レベルのアクセス制御を行う方法を、トークン・パッシングと呼ぶ ・ 物理的にネットワークがリングを形成する「トークン・リング」と、物理的にはバス接続でその上を論理的なトークンが巡回する「トークン・バス」とがある ■ Ethernet フレームフォーマット ● Ethernet DIX タイプ(TCP/IP) プリアンブル(64) + 送信先MACアドレス(48bit) + 送信元MACアドレス(48) + タイプ(16) + 上位層データ(46〜1500*8) + FCS(32) ● Ethernet 802.2/3 タイプ(NetWare / NetBIOS) プリアンブル(56) + SFD(8) + 送信先MACアドレス(48bit) + 送信元MACアドレス(48) + フレーム長(16) + LLC(24) + 上位層データ(43〜1497*8) + FCS(32) * プリアンブル (preamble) (前文、前兆、前触れ) … 10101010 のビットパターンで構成される同期確保用の電気信号(方形波となる) * SFD : Start Frame Delimiter(フレーム開始区切り) … 10101011 のビットパターンで構成される、プリアンブルとフレームの区切り信号 * LLC : Logical Link Control (論理リンク制御) … データリンク層の上層サブレイヤ。下層サブレイヤは MAC (Media Access Control) * FCS : Frame Check Sequence (フレームチェック) ・ 送信先アドレスフィールドが先(迅速なパケット取捨選択が可能) ■ FDDI(Fiber Distributed Data Interface) ・ ANSI(アメリカ規格協会)で標準化されたLAN接続規格 ・ 伝送媒体に二重化された光ファイバーを使用した、トークンリング方式の高速LAN接続方式 ・ 伝送速度 100Mbps 、最大延長 100km 、リング部分の完全二重化という、高速性、拡張性、高信頼性が特徴 ・ LAN間を接続するのバックボーンネットワークに使用されることが多いが、高価となることから Ethernet の普及に伴い導入は減少している ■ EDI (Electronic Data Interchange) ・ 異なる組織間で行われる各種取引のためのデータ・メッセージを、通信回線を介してコンピュータ間で送受信するための標準規則。通商産業省が策定 ・ 第1レベル・情報伝達規約 … 通信回線を介した接続方法、通信プロトコルに関する規約。セッション層以下の規格に相当する TCP/IP、JCA(Japan Chainstore Association)手順、全銀協手順などに対応 ・ 第2レベル・情報表現規約 … データ・フォーマット、シンタックス・ルールなどに関する規約。プレゼンテーション層以上の規格に相当する ・ 第3レベル・業務運用規約 … 運用上、障害対策上の規約 ・ 第4レベル・取引基本規約 … 取引当事者間の契約、通信事業者との契約レベルの規約 ○ JIPDEC( Japan Information Processing Development Center : 日本情報処理開発協会) ・ F手順 … OSI・アプリケーション層プロトコルである FTAM(File Transfer, Access and Management) をベースとして策定 ・ CII手順 … CII(産業情報化推進センター)が、異業界・異企業間の EDI の相互運用の推進を実現するために開発した規格 ○ 全国銀行協会連合会 ・ 全銀協手順 … BSC(Binary Synchronous Communication)手順に準拠しながら、セキュリティを強化したプロトコル。メインフレーム用、パソコン用、TCP/IP用が存在する ○ 日本チェーンストア協会 (JCA : Japan Chainstore Association) ・ J手順 … JCA が取引先データの交換標準通信制御手順として開発したものを、通産省が流通業界の標準手順として策定したもの ・ H手順 … J手順を ISDN や ATM に対応させた JCA-H 手順を、通産省が策定したもの 【ネットワーク・プロトコル】 ■ ベーシック伝送制御手順 ( BSC : Binary Synchronous Communication ) / 基本形データ伝送制御手順 ・ データリンク層プロトコル ・ IBM が開発した BSC が俗称として残存しているが、基本形データ伝送制御手順として ISO や JIS で標準化されている ・ 制御キャラクタを用いてキャラクタ構成型の情報ブロックを伝送する、キャラクタ同期方式の伝送制御手順 ・ ポーリング/セレクティング方式、コンテンション方式に対応し、全銀協手順・JCA手順の基本となっている ● フォーマット SOH + ヘディング + STX + 上位層データ + ETX + BCC SOH + ヘディング + STX + 上位層データ1 + ETB + BCC STX + 上位層データ2 + ETB + BCC STX + 上位層データN + ETX + BCC ・ SOH (Start Of Heading) | ・ STX (Start of TeXt) | ・ ETX (End of TeXt) | … 制御キャラクタ ・ ETB (End of transmission Block) | ・ BCC (Block Check Character) | ● ポーリング手順 EQN → Enquiry 送信要求調査 ← EOT End Of Transmission 伝送終了(要求なし) EQN → Enquiry 送信要求調査 ← STX Start of TeXt データ開始 ← TXT TeXT データ ← ETX End of TeXt データ終了 ← BCC Block Check Character パリティチェック ACK → ACKnowledge 受信肯定応答 ( NAK → Negative AcKnowledge 受信否定応答 ) ← EOT End Of Transmission 伝送終了 ● コンテンション手順 EQN → Enquiry 送信要求 ← ACK ACKnowledge 受信肯定応答 ( ← NAK Negative AcKnowledge 受信否定応答 ) STX → Start of TeXt データ開始 TXT → TeXT データ ETX → End of TeXt データ終了 BCC → Block Check Character パリティチェック ← ACK ACKnowledge 受信肯定応答 ( ← NAK Negative AcKnowledge 受信否定応答 ) EOT → End Of Transmission 伝送終了 ■ ハイレベル伝送制御手順 ( HDLC : High level Data Link Control procedure ) ・ データリンク層プロトコル ・ ISOによって標準化され、各種の通信プロトコルの原型となった、代表的なデータ伝送制御手順の1つ ・ 基本形データ伝送制御手順に比べ、任意のビットパターンを伝送することが可能な、フラグ同期方式の伝送制御手順 ・ CRCによる厳密な誤り制御などの利点をもつ。制御フレームにも適用可能なため、信頼性が高く、効率良くデータを送ることができる ・ 応答監視が双方向から行なえる ・ 情報フレームの連続送信が可能 ・ アドレス拡張が自由に可能 ● フォーマット 01111110 + アドレス(8/16) + 制御(8) + 上位層データ(8n) + FCS(16/32) + 01111110 開始フラグ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 終了フラグ ・ FCS(Frame Check Sequence : フレームチェック) ・ 上位層データ長は任意であるが、ITU-T標準のデータが多いことから、8bitの倍数となることが多い ・ ビットパターン「01111110」はフラグとして認識されるため、11111(連続した 5 つの 1 )の後には強制的に 0 を挿入する ・ 連続した7つ以上の 1 ビットを受信した場合には、フレームの送信は中断されたフレームとして扱われ、破棄される ・ フラグ間のデータビットは最低でも(上位層データが0としても)32bitとなるため、これ以下のサイズのフレームは破棄される ・ フレームが連続する場合には、終了フラグは、後続フレームの開始フラグとしても使用される(フラグは 2 連続しない) ・ すべてのビットが 1 となったアドレスは、ブロードキャストアドレスとして認識される ● 正規応答モード (NRM : Normal Response Mode)[主従関係局] ・ 一次局を制御局、二次局を従属局とする、ポーリング方式の伝送制御手順 ・ 一次局が P ビットをセットしたコマンドフレームを送信したときのみ、二次局がレスポンスフレームを送信可能。最後のレスポンスフレームには F ビットをセットする SNRM(P) → Set Normal Response Mode 正規応答モード接続要求 ← UA(S) Unnumbered Acknowledgment 接続肯定応答 I(P) → Information 一次局データ送信 ← I(S) Information 二次局データ送信 RR(P) → Receiver Ready 受信受容応答 ← RR(S) Receiver Ready 受信受容応答 ( ← RNR(S) Receiver Not Ready 受信不可応答 ) DISC(P) → Disconnection 切断要求 ← UA(F) Unnumbered Acknowledgment 切断肯定応答 ● 非同期応答モード (ARM : Asynchronous Response Mode)[主従関係局] ・ 一次局、二次局の区別は存在するが、一次局によるポーリングを受けなくても、二次局はレスポンスフレームを送信することが可能 ・ 基本的に、全二重方式での使用が前提となっているが、半二重方式の場合は、15個以上連続する 1 ビットを受信した休止チャンネル状態のときのみ、二次局は応答が可能 SARM(P) → Set Asynchronous Response Mode 非同期応答モード接続要求 ← UA(S) Unnumbered Acknowledgment 接続肯定応答 I(P) → Information 一次局データ送信 ← I(S) Information 二次局データ送信 RR(P) → Receiver Ready 受信受容応答 ← RR(S) Receiver Ready 受信受容応答 ( ← RNR(S) Receiver Not Ready 受信不可応答 ) DISC(P) → Disconnection 切断要求 ← UA(F) Unnumbered Acknowledgment 切断肯定応答 ● 非同期平衡モード (ABM : Asynchronous Balanced Mode)[対等関係局] ・ いずれの局も適宜、一次局となり、伝送相手に対してコマンドフレームを送信してポーリングをかけることが可能 ・ コマンドフレーム、レスポンスフレームの送信に際して、相手局に関する制約は特に存在しない SABM(P) → Set Asynchronous Balanced Mode 非同期平衡モード接続要求 ← UA(S) Unnumbered Acknowledgment 接続肯定応答 ← SABM(P) Set Asynchronous Balanced Mode 非同期平衡モード接続要求 UA(S) → Unnumbered Acknowledgment 接続肯定応答 I(P) → Information 一次局データ送信 ← I(S) Information 二次局データ送信 RR(P) → Receiver Ready 受信受容応答 ← RR(S) Receiver Ready 受信受容応答 ( ← RNR(S) Receiver Not Ready 受信不可応答 ) ( ← REJ(S) Rejection 受信失敗(シーケンス不整合)) DISC(P) → Disconnection 切断要求 ← UA(F) Unnumbered Acknowledgment 切断肯定応答 ■ PPP(Point to Point Protocol) [ RFC 1661 ] ・ データリンク層プロトコル ・ 電話網のような回線交換網におけるPoint to Point(1対1)通信のデータリンク層レベルの接続に使用される ・ 下位層(物理層)、および、上位層プロトコルは限定されない。TCP/IP、IPX/SPX、NetBEUI、AppleTalk などのベースプロトコルとしても使用可能 ・ 下層 / LCP : Link Control Protocol … データリンク確立、PAP・CHAP によるユーザ認証、リンク品質の監視、マルチリンクサポート ・ 上層 / NCP : Network Control Protocol … ネットワーク層以上のプロトコルに対応するための固有のプロトコル(↓ IP圧縮、IPアドレス割り当て、もこの層で実現) ・ ヘッダデータの圧縮機能を持つ。IPCP(IP control protocol)によるIPアドレスの自動割当にも対応 ・ HDLCを参考にフレームフォーマットが定義されており、FCS(Frame Check Sequence)による誤り検出、および、フレームの再送信による誤り回復が可能 ・ PAP(Password Authentication Protocol)、CHAP(Challenge-Handshake Authentication Protocol)といった認証プロトコルも包含する ● PPP Multi-link Protocol ・ 複数の PPP データリンクを1つのデータリンクとして束ねて、帯域の増大を可能にするプロトコル ・ ISDN におけるBチャンネルの2チャンネル同時使用(マルチリンク・バルク転送)などが有名 ● PAP (Password Authentication Protocol) ・ データリンク層プロトコル(PPPの一部) ・ PPPでは一般的な方式だが、パスワードが平文で送信されるというセキュリティ的な問題がある ● CHAP (Challenge-Handshake Authentication Protocol) ・ データリンク層プロトコル(PPPの一部) ・ パスワードがワンタイムパスワードに暗号化されて送信されるため、PAPよりもセキュリティ的に優れている ・ クライアントは、サーバが送信したチャレンジコードと呼ばれる乱数文字列をもとに、パスワードを暗号化してサーバに送信。サーバでも同様に暗号化して認証を実施。 ● IPCP (Internet Protocol Control Protocol) ・ ネットワーク層に TCP/IP を使用する際の、NCP(Network Control Protocol) 層の固有プロトコル ・ IPヘッダ圧縮、IPアドレスの自動割当などの機能を提供する ■ PPTP(Point to Point Tunneling Protocol) ・ インターネットでの VPN を実現するためのプロトコルとして、PPP を拡張する形で RFC にて標準化が進められているデータリンク層のプロトコル ・ データの暗号化、認証、リンクの確立などの機能を装備している ・ Windows NT 4.0 以上で対応。ダイヤルアップルーターの一部メーカーが対応を表明している ■ ATM(Asynchronous Transfer Mode : 非同期転送モード)(セルリレー) ・ データリンク層プロトコル / 蓄積交換型 ・ 53バイトの固定長データ列(ATMセル)を単位としたデータ通信(ヘッダ : 5 Byte、ユーザ情報(ペイロード): 48 byte) ・ 固定長データセルを使用することによるパケット構造の単純化により高速化を図っている ・ 蓄積交換型のため、ATMスイッチ通過時に若干の遅延が発生するが、伝送遅延は小さく、遅延の変動(揺らぎ・ジッタ)が少ないため、リアルタイム通信に適する ・ 156Mbps、622Mbpsの高速伝送が可能 ・ IP over ATM 技術により LAN 間バックボーン接続にも使用可能 ・ VPI(Virtual Path Identifier : 仮想パス識別子) … ネットワーク・ルーティングを実現する論理コネクション ・ VCI(Virtual Channel Identifier : 仮想チャネル識別子) … ユーザ端末間に設定される論理チャンネル ・ VPIはVCIを束ねたものになり、VPI>VCI の関係が成立する ・ スイッチング・ルーティングはハードウェア的に高速処理される ・ VC(Virtual Channel) により論理多重化が可能 ・ 最大セル率を維持することにより転送の高信頼性を確保 ・ 契約速度以上のデータ転送が行われないように、ATM網に送出するセル間隔を指定し、セル密度を調整する機能を「シェーピング機能」と呼ぶ ・ mCR(Minimun Cell Rate) による保証速度、PCR(Peak Cell Rate) による最高速度のサービス選択 ・ セルヘッダ内の EFCI(Explicit Forward Congestion Indication:明示的前方輻輳通知)ビットを立てることで、網の輻輳、輻輳による伝送遅延の可能性を通知する ・ CLP(Cell Loss Priority) によって優先破棄パケットを明示 ・ 輻輳の前段階において、現状以上のトラフィックの流入を阻止する機能を UPC(Usage Parameter Control:使用限界管理)と呼び、限界値を超えたセルの CLP をセットする ・ 1セルの損失が上位プロトコルのフレームの全損につながるため、セルサイズ48バイトと比較して、上位プロトコルのフレームサイズが大きい場合には、高リスクとなる ・ セル損失や伝送遅延を避けたい場合には、AAL(ATM Adaptation Layer)でのサービスタイプにて、一定以上のスループット・サービスレベルを要求する必要がある ・ 物理層 + ATM 層 + AAL(ATM Adaptation Layer) にて構成される ● 物理レイヤ [下層] ・ 物理媒体依存サブレイヤ (PMD:Physical Media Dependant sublayer) … 伝送媒体に依存する物理的特性を吸収 ・ 伝送コンバージェンスサブレイヤ(TC :Transmission Convergence sublayer:伝送収束層) … 信号階層多重方式の国際標準である SDH(Synchronous Digital Hierarchy) (光ファイバー通信が中心)ベースのフレームを構築 ● ATMレイヤ(ATM Layer) [中層] ・ 物理層に依存しない、エンドツーエンドコネクションの確立、ATMルーティングを受け持つ、ATMプロトコルスタックの中層 ・ ATMヘッダの組立、セルフォーマットの構造定義、セルの多重化・逆多重化、セル受信、ヘッダ確認、VCI/VPIによるセル・ルーティング、ペイロードタイプの認識 ・ QoS(Quality of Service)の特定、フローコントロール、優先制御 ● AAL(ATM Adaptation Layer) [上層] ・ 上位プロトコルデータの ATM セル・ペイロード部への格納処理、および、復元処理を行う ・ セル分割・組み立てサブレイヤ (SAR:Segmentation and Reassembly sublayer) … ATMセルのデータ部を構成する48オクテットのセルに分割・組立を行う ・ コンバージェンスサブレイヤ ( CS : Cconvergence Sublayer:収束層) … 上位層のサービスやアプリケーションのタイプに即したQoS、サービスクラスに基づいて、下層のSARに受け渡すデータを最適化する CPCS(Common Part Convergence Layer)と、SSCS(Service Specific Convergence Layer)の2層で構成される 各標準は、伝送遅延とセル損失に関する特性より、特定のトラヒック・クラスに対応。4つのクラス、それに対応する、5つのタイプが存在する 音声・映像・転送ファイルなどに応じてセル損失・セル遅延に関するエラーチェック、コネクション型などをサポートする クラスA … 固定速度の音声・画像などの伝送 / 固定ビットレート … タイプ1 クラスB … 可変速度の音声・画像などの伝送 / 可変ビットレート … タイプ2 クラスC … その他のコネクション型接続を要求するデータ伝送 / 可変ビットレート … タイプ3・4 クラスD … コネクションレス型接続で満足するデータ伝送 / 可変ビットレート … タイプ5 タイプ1 … デジタル化音声・映像の伝送。セル損失に敏感な従来の専用線をシミュレートする。シーケンス番号用に、データ部の1オクテットが使用される タイプ2 … パケット化音声・映像の伝送。伝送時間に敏感な伝送に対応するため、ペイロードが満たされることよりも、アプリケーション側の要求タイミングを優先する タイプ3 … コネクション型のバースト転送(エラーメッセージ)、コネクションレス型の可変速度転送(LAN間ファイル転送)を対象とする 厳密なセルエラーチェックのためデータ部の4オクテットが使用される。セル損失の防止を保証。セル多重化をサポートする タイプ4 … タイプ3に統合 タイプ5 … コネクション型のバースト転送(LAN間ファイル転送)を、タイプ3/4よりも少ないオーバーヘッドで実現する。セル多重化はサポートしない TCP/IP ネットワークのバックボーンとして使用される場合にはこのタイプが使用される(通称 : AAL5) ____________________________________________________________________________________ サービス依存部コンバージェンスサブレイヤ SSCS … 上位層のサービスに適したクラスに最適化処理 コンバージェンスサブレイヤ 共通部コンバージェンスサブレイヤ CPCS … 各クラス共通の最適化処理 AAL __________________________________________________________________________ セル分割・組立サブレイヤ SAR … 48オクテットのATMセル・ペイロードの分割・組立 ____________________________________________________________________________________ ATM 層 … コネクション管理、ルーティング、QoSによるフロー制御 ____________________________________________________________________________________ 伝送コンバージェンスサブレイヤ TC … SDHベースのフレーム構築 物理層 物理媒体依存サブレイヤ PMD … 伝送媒体に依存する物理的特性の吸収 ____________________________________________________________________________________ ■ フレームリレー(Frame Relay) ・ データリンク層プロトコル( + リレー機能・ルーティング機能)/ 蓄積交換型 ・ ITU-T Q.922 … フレームリレーの基本仕様、ITU-T Q.933 … PVC ・ SVC のコネクション管理仕様 ・ 可変長データフレームによるデータ通信 ・ X.25パケット交換プロトコルの伝送誤り制御手順を簡略化。 ・ 伝送保証、損失フレームの通知機能は持たないため(高品質回線での使用が前提)、フレーム損失によるデータ損失の回復機能は、上位層プロトコルに依存する ・ 伝送フレーム長が大きくなると、伝送遅延が大きくなる。遅延の揺らぎ(ジッタ)も一定ではないため、リアルタイム通信には適さない ・ 64 kbps 〜 1.5 Mbpsの高速伝送が可能。バースト転送(瞬間的な大量データ伝送)に適する ・ 物理層インターフェースには、主に ISDN(Integrated Service Digital Network) が使用される ・ FRAD (FRame Assembly / Disassembly) 装置を使用すると、HDLCフレーム・IPデータグラムを、フレームリレー用フレーム(Q.922)に変換が可能 ・ DLCI (Data Link Connection Identifier) により PVC/SVC セグメントを固有に識別し、論理多重化することが可能 ・ PVC (Permanent Virtual Circuits) … DLCIは契約時の値で固定される。相手固定接続、常時接続が可能 ・ SVC (Switched Virtual Circuits) … 接続の都度、DLCIを設定して、接続相手を指定する ・ PVC接続時は、PVC状態確認プロトコル・LMI (Local Management Interface) によって、接続状態が常に監視されている(ITU-T 勧告 Q.933 Annex A) ・ CIR(Committed Information Rate)により「正常時(輻輳時ではない)」の最低転送速度の確保を保証 ・ CIR 値を越えた通信では、フレームの破棄が行われる可能性があるため、上位層での損失フレームの検知と再送が必要となる ・ 輻輳には、軽輻輳(フレーム伝送負荷の上昇)・重輻輳(バッファオーバーによるフレーム破棄の発生)の2段階がある ・ FECN(Forward Explisit Congestion Notification:順方向明示的輻輳通知)、BECN(Back Explicit Congestion Notification:逆方向明示的輻輳通知)の輻輳通知ビット ・ フレーム順序エラー、CLLM(Consokidated Link Layer Management:総合リンクレイヤ管理)によって、輻輳を検知。適宜、輻輳回避と輻輳回復の対応が行われる ・ DE(Discard Eligibility:破棄適格)によって優先的に破棄することが可能なフレームを明示 ・ CIR は、設定可能な値が回線提供会社よりメニューとして用意されているので、必要値を満たす最低値をメニューから選択する ■ パケット交換 ・ 物理層、データリンク層、ネットワーク層プロトコル / 蓄積交換型 ・ 代表的なパケット交換プロトコルとしては X.25 ・ 一定範囲に収まる可変長データフレーム(パケット)によるデータ通信 ・ 回線交換とは異なり、通信端末間の物理的占有経路は確立されず、VC(Virtual Circuits : 仮想回路) による複数のコネクションの同時確立が可能 ・ パケットサイズを抑えることによって、多数のパケットでも目立った衝突は発生しない ・ 蓄積交換方式のため、異手順、異速度端末との通信が可能だが、網内遅延が発生する ・ 個々のルーティング伝送ノード間(リンクバイリンク : 端末機と交換機、交換機と交換機)でエラーチェックが行われるため、高品質な伝送が可能 ・ HDLC 手順を使用。パケットの通達確認にも対応する ・ パケット形態端末、および、パケットの組立・分解(PAD : Packet Assembly and Disassembly)機能を持つ非パケット形態端末にて使用可能 ・ 「1対多」の関係での仮想通信が可能 ・ 閉域接続サービス・グループセキュリティサービスを使用することで、あらかじめ登録された利用者グループ以外の端末への発着信を規制することが可能 ・ 基本的にパケット流量による従量課金制 ■ ISDN (Integrated Services Digital Network) ・ 物理層・データリンク層・ネットワーク層プロトコル ・ ITU-T(国際電気通信連合 電気通信標準化部門)において I.シリーズとして標準化された、電話・FAX・データ通信などを統合するデジタル通信網に関する規格 ・ 64k 〜 2Mbps に対応する N-ISDN (Narrow ISDN) と、光ファイバーでの 100Mbps 以上の通信に対応する B-ISDN (Broadband aspects of ISDN) に、大きく分けられる ・ NTT が進める B-ISDN は、光ファイバー網、SDH(Synchronous Digital Hierarchy)、ATM(Asynchronous Transfer Mode) をベースとしたシステムとなっている N-ISDN 128kbps 銅線 2B+D 基本インターフェース(INSネット64) 1.5Mbps 光ファイバー 23B+D / 24B 一次群速度インターフェース(INSネット1500) B-ISDN 150Mbps 光ファイバー 600Mbps 光ファイバー ■ ISDN(Integrated Services Digital Network)網端子 ISDN網 ← LI点 → NT1 ← T点 → NT2 ← S点 → TE1 (網終端:DSU) (多重化装置:PBX) (ISDN機器) TA ← R点 → TE2 (ターミナルアダプタ) (非ISDN機器) ■ PIAFS (PHS Internet Access Forum Standard) ・ 物理層・データリンク層・ネットワーク層プロトコル ・ PHS (Personal Handyphone System) のベアラサービスを使用して、PHS 電話機での 32k 〜 64kbps のデジタルデータ通信を提供するための伝送制御手順の規格 ・ 誤りデータフレームの再送機能を持ち、電波のフェージング(電波受信レベルの時間的な変化)や、移動通信のハンドオーバー(中継基地局の引継)にも対応する ・ PHS 網自体が、有線区間の相互接続に ISDN を使用しているため、リモートアクセス環境のホスト側が ISDN インターフェースを持つ場合には親和性が高い ・ PIAFS の着信を ISDN 網で受け付けるためには、TAP (Terminal Adapter for Piafs) が必要となる(通常の TA のファームウェアレベルで対応できることが多い) ■ ベアラ通信 / ベアラサービス ・ 物理層・データリンク層・ネットワーク層 ・ レイヤ3以下のデジタルデータ伝送のみをトランスペアレント(透過的)に提供し、レイヤ4以上のサービス内容に関与しない通信サービスを、特にベアラ通信と呼ぶ ・ 各種専用線接続、DDX( Digital Data eXchange : パケット通信)、ISDN、PIAFS が依存する PHS などが、これに該当する ■ TCP/IP(Transmission Control Protocol / Internet Protocol) ・ ネットワーク層(インターネット層)に規定される IP をベースとした、それ以上の上位層プロトコル群の総称 ネットワーク・インターフェース層 … Ethernet、トークンリング … 物理層 + データリンク層 インターネット層 … IP、ARP … ネットワーク層 トランスポート層 … TCP、UDP … トランスポート層 アプリケーション層 … TELNET、DNS、FTP、HTTP、SMTP、POP3 … セッション層 + プレゼンテーション層 + アプリケーション層 ■ ARP (Address Resolution Protocol) ・ インターネット層レベルの IP アドレスから、ネットワーク・インターフェース層レベルの MAC アドレスを取得するための、照会プロトコル ・ MAC アドレスを取得したいホストは、目的のホストの IPアドレスを明示した ARP パケットをブロードキャストする( MACアドレスレベルでのブロードキャスト) (この次元での目的 IPアドレスとは、ルーティング以前のアドレスを意味する。ルータ越えをする場合には、デフォルトルータのIPアドレスが目的 IPアドレスである) ・ 明示された IPアドレスを保有するホストは、自身の MAC アドレスを記したパケットを、要求元の MAC アドレスを持つホストに送信する ・ MAC アドレスは、NIC (Network Interface Card) のハードウェア処理のレベルで自身宛のデータフレームか否かを判定するためのアドレスとして使用される ・ 無差別モードで動作していない限りは、ブロードキャスト MAC アドレス、自身の MAC アドレス宛てのデータフレーム以外は、OS には引き渡さない ・ NIC から引き渡されたデータフレームの宛先 IP アドレスが、ブロードキャスト以外で自身の保有アドレスと異なる場合には、そのデータフレームは破棄される ■ IP(Internet Protocol) ・ 送信元・送信先となるホストの IP アドレスから、ネットワークアドレスとホストアドレスを特定し、ホストの帰属する適切なネットワークへパケットをルーティングする ・ コネクションレス型・ベストエフォート型のプロトコルのため、伝送信頼性の確保に関する機能は、上位層のプロトコル(TCP)で補完する必要がある ・ IP(v4) アドレスは 32 bit で構成され、論理的に 8 bit 毎の 4 つの値に分割される ・ IP アドレス(2進値)とネットマスク(2進値)の論理積をとったものがネットワークアドレス(2進値)となる ・ 10進値の IP アドレスはあくまでも便宜的な表現であり、ネットマスクの直接的な割り出しには無意味な表現である ● IP アドレスクラスとデフォルトネットマスク 2進アドレス / 10進アドレス 2進ネットマスク 10進ネットマスク Aクラス 0*******.********.********.******** / 1.xxx.xxx.xxx 〜 126.xxx.xxx.xxx / 11111111.00000000.00000000.00000000 / 255. 0. 0. 0 Bクラス 10******.********.********.******** / 128. 0.xxx.xxx 〜 191.255.xxx.xxx / 11111111.11111111.00000000.00000000 / 255.255. 0. 0 Cクラス 110*****.********.********.******** / 192. 0. 0.xxx 〜 223.255.255.xxx / 11111111.11111111.11111111.00000000 / 255.255.255. 0 Dクラス 1110****.********.********.******** / 1.xxx.xxx.xxx 〜 126.xxx.xxx.xxx / 11111111.11111111.11111111.11111111 / 255.255.255.255 Eクラス 11110***.********.********.******** / 1.xxx.xxx.xxx 〜 126.xxx.xxx.xxx / 11111111.11111111.11111111.11111111 / 255.255.255.255 * Dクラスはマルチキャスト用、Eクラスは予約済み ● プライベートアドレス(ローカルアドレス) ・ インターネットでパブリックに使用される一意のIPアドレスとは別に、インターネットと隔絶されたプライベートなネットワークにおいて使用可能なアドレス ・ IPアドレスの割り当てを行っている公共的な管理組織(NIC)の許可なしに使用可能。プライベートアドレスでないIPアドレスは、グローバルアドレスと呼ぶ ・ プライベートアドレスのホストをインターネットに接続するためには、NAT(Network Address Translation) か IPマスカレード(IP Masquerade) の使用が必要 ・ NAT … IPアドレスをローカルとグローバルの相互に透過的に変換する機能。グローバルアドレスは1つのプライベートアドレスのホストのみが使用可能 ・ IPマスカレード … IPアドレスへのNAT処理、TCP/UDPのポート番号の相互変換を同時に行う機能。複数のプライベートホストが1つのグローバルアドレスを共有可能 ネットワークアドレス 範囲ネットマスク アドレス範囲 ・ Aクラス 10. 0. 0. 0 255. 0. 0. 0/ 8 10. 0. 0. 0 〜 10.255.255.255 ・ Bクラス 172. 16. 0. 0 255. 16. 0. 0/12 172. 16. 0. 0 〜 172. 31.255.255 ・ Cクラス 192.168. 0. 0 255.255. 0. 0/16 192.168. 0. 0 〜 192.168.255.255 ● カスタムネットマスク/サブネットマスク ・ ホストアドレス数と比較してネットワークアドレス数が不足している場合には、ネットワークアドレスのビット数を拡張し、ホストアドレスのビット数を削減する 2進サブネットマスク / 10進サブネットマスク / ネットワークアドレス / プリフィックス / 分割サブネット数 / 割当可能ホスト数 11111111.11111111.11111111.10000000 / 255.255.255.128 / / 25 / 2 / 126 xxx.xxx.xxx. 0 xxx.xxx.xxx.128 11111111.11111111.11111111.11000000 / 255.255.255.192 / / 26 / 4 / 62 xxx.xxx.xxx. 0 xxx.xxx.xxx. 64 xxx.xxx.xxx.128 xxx.xxx.xxx.192 11111111.11111111.11111111.11100000 / 255.255.255.224 / / 27 / 8 / 30 xxx.xxx.xxx. 0 xxx.xxx.xxx. 32 xxx.xxx.xxx. 64 xxx.xxx.xxx. 96 xxx.xxx.xxx.128 xxx.xxx.xxx.160 xxx.xxx.xxx.192 xxx.xxx.xxx.224 11111111.11111111.11111111.11110000 / 255.255.255.240 / / 28 / 16 / 14 xxx.xxx.xxx. 0 xxx.xxx.xxx. 16 〜 xxx.xxx.xxx.240 11111111.11111111.11111111.11111000 / 255.255.255.248 / / 29 / 32 / 6 xxx.xxx.xxx. 0 xxx.xxx.xxx. 8 〜 xxx.xxx.xxx.248 11111111.11111111.11111111.11111100 / 255.255.255.252 / / 30 / 64 / 2 xxx.xxx.xxx. 0 xxx.xxx.xxx. 4 〜 xxx.xxx.xxx.252 ● CIDR(Class-less Inter Domain Routing) / スーパーネット(Supernet) / 経路集約 ・ クラス別のデフォルトネットマスクに既定されない、サブネットマスクを用いたアドレスシステムによるルーティング手法を、CIDR と呼ぶ ・ デフォルトサブネットマスクよりも、サブネットマスクのビット数が少ないネットワークを、スーパーネットと呼ぶ ・ あるルーティングポイントにおいて、複数のネットワークアドレスが同一の経路方向に位置する場合に、経路情報を集約して表現することを、経路集約と呼ぶ ・ サブネットマスク長の削減による CIDR ブロックとして構成されたスーパーネットによって経路情報の集約を行う、という密接な関係がある 11111111.11111111.10000000.00000000 / 255.255.128. 0 → xxx.xxx. 0.xxx 〜 xxx.xxx.127.xxx がスーパークラスとして経路集約される xxx.xxx.128.xxx 〜 xxx.xxx.255.xxx 〃 11111111.11111111.11100000.00000000 / 255.255.252. 0 → xxx.xxx. 0.xxx 〜 xxx.xxx. 31.xxx がスーパークラスとして経路集約される xxx.xxx. 32.xxx 〜 xxx.xxx. 63.xxx 〃 xxx.xxx. 64.xxx 〜 xxx.xxx. 95.xxx 〃 xxx.xxx. 96.xxx 〜 xxx.xxx.127.xxx 〃 xxx.xxx.128.xxx 〜 xxx.xxx.159.xxx 〃 xxx.xxx.160.xxx 〜 xxx.xxx.191.xxx 〃 xxx.xxx.192.xxx 〜 xxx.xxx.223.xxx 〃 xxx.xxx.224.xxx 〜 xxx.xxx.255.xxx 〃 ● MTU(Max Transfer Unit)/フラグメンテーション ・ データ伝送の単位サイズは、ネットワーク・インターフェース層(物理層 + データリンク層)で使用される伝送媒体に依存し、このサイズのことをMTUと呼ぶ ・ MTUよりも小さなフレームは、パディング(詰め物)によってフレームサイズを調整する。フレーム中に占めるパディングの割合が多くなると、伝送効率が低下する ・ MTUよりも大きなフレームは、伝送経路上のルータによって、IP層レベルでMTU以下に収まるように分割される。この作業をフラグメンテーションと呼ぶ ・ フラグメント化されたパケットは、フラグメントビットがセットされた上で、オフセット番号が付与される以外は、オリジナルのIPパケットのヘッダを踏襲する ・ 伝送経路上でフラグメント化されたフレームは、最終的な宛先ホストに到着するまで再構築されることはない(データグラムの損失リスク軽減のため) ・ フラグメント化禁止ビットを立てることで、IP層レベルでフラグメント化を禁止することは可能であるが、伝送経路上のMTUを超えたパケットは破棄される ● IPパケット・フォーマット バージョン(4bit) + ヘッダ長(4) + サービスタイプ(8) + パケット長(16) 識別子(16) + フラグ(3) + フラグメント・オフセット(13) 生存時間(8) + プロトコル番号(8) + ヘッダチェックサム(16) | 送信元IPアドレス(32) | | 送信先IPアドレス(32) | オプション(x) + パディング(32-x) | 上位層データ(32n) | ・ 送信元アドレスフィールドが先(迅速な発信元ネットワークの取得が可能) ■ ICMP (Internet Control Message Protocol) ・ ネットワーク層(IP層)上位プロトコル ・ IP層レベルの通信におけるエラー通知や、ネットワーク状態の診断に関するメッセージを送受信するためのプロトコル ・ 宛先ネットワークへの到達不能応答、経路変更要求、タイムアウト通知などのメッセージが存在する ・ ping (Packet INternet Groper) プログラムでよく使用される ■ IPSec (Inernet Protocol Security) ・ ネットワーク層(IP層)レベルで、上位層のデータを包含するパケットにセキュリティ機能を提供する RFC 標準規格 ・ パケットの改竄を防止する認証ヘッダ AH(Authentication Header) 、認証・暗号化によりパケットをカプセル化をする ESP(Encapsulating Security Payload) ヘッダがある ・ IPパケットに対する IPSec ヘッダの追加・抽出の処理は、VPN 装置を通過する際に透過的に行われる ・ IPパケット全体を暗号化する「トンネルモード」と、データ部分のみを暗号化する「トランスポートモード」とがある ・ 暗号・認証処理用のパラメータを動的に生成して VPN 装置間で自動的に交換するプロトコル IKE(Internet Key Exchange) が独立して策定されている ・ MD5 / DES 56bit 暗号が標準でサポートされる(最低限の実装が要求されている) ■ TCP(Transmission Control Protocol) ・ トランスポート層プロトコル ・ コネクション指向・セッション指向型プロトコルとして、全二重・フロー制御の高信頼性を確保したエンド・ツー・エンドの通信を、上位層プロトコルに提供する ・ 下位層で発生しうるパケットの消失、伝送遅延、受信順序の逆転といった現象が吸収されるため、上位層においてはこれらの現象を意識することなく通信が可能となる ・ 3ウェイハンドシェイクによって、接続要求(SYN)、肯定応答(SYN + ACK)、接続開始(ACK) のフラグパケットを交わし、仮想的なエンド・ツー・エンド接続を確立する ・ 送信されるすべてのパケットに割り振られる連続したシーケンス番号によって、パケットの送信順序の判定と、欠落・重複パケットの存在の検出が可能となる ・ 受信側が受信したパケットのシーケンス番号を送信側に応答することによって、パケットの伝送完了を保証。一定時間内に応答がなければ、送信側が再送を行う ・ シーケンス番号の応答を複数のパケット単位で行う際の、受信側のバッファ量がウィンドウサイズとして通知される。回線帯域の変動にリアルタイムに対応可能 ● TCPパケット・フォーマット 送信元ポート番号(16bit) + 送信先ポート番号(16) | シーケンス番号(32) | | ACK 番号(32) | ヘッダ長(4) + 予約(6) + URG・ACK・PSH・PST・SYN・FIN(6) + ウィンドウサイズ(16) TCPチェックサム(16) + URGENTポインタ(16bit) | オプション(32n) | ■ UDP(User Datagram Protocol) ・ トランスポート層プロトコル ・ コネクションレス・ベストエフォート型プロトコルとして、信頼性よりもデータの転送効率を優先する通信を、上位層プロトコルに提供する ・ IP に対して付加される情報は、ポート番号・パケット長・チェックサムのみとなるため、IP の機能がほぼそのままの形で提供される ・ TCP のような、セッション管理、パケット消失・遅延・順序逆転の補完、伝送完了の保証といった機能は提供されない。信頼性に関わる機能はアプリケーション層で対応 ・ TCP と比較してオーバーヘッドが小さいため、大量のデータ転送などでも使用帯域を抑制することができる ・ セッションを確立しないという特徴から、ブロードキャストでのパケットの送信が可能(TCPでは不可) ● UDPパケット・フォーマット 送信元ポート番号(16bit) + 送信先ポート番号(16) パケット長(16) + チェックサム(16) ■ SSL (Secure Socket Layer) ・ セッション層プロトコル [トランスポート層(TCP層)とアプリケーション層の中間に位置する] ・ ウェブサーバとウェブブラウザ間の HTTP セッションを公開鍵暗号と秘密鍵暗号のハイブリッド方式で暗号化。ウェブサーバの正当性の認証と、送受信データの暗号化を行う ・ HTTP での使用( https://〜 )が主流であるが、Telnet, FTP, SMTP などの TCP を使用するプロトコルでも使用は可能。ただし、UDP には対応しない ・ 実際に送受信されるデータを暗号化するのは秘密鍵暗号方式であり、セッション確立時に、そのセッションで使用される秘密鍵を、公開鍵暗号方式で暗号化して送受信する ・ サーバは、あらかじめ公開鍵暗号方式の秘密鍵と公開鍵を作成。第三者機関である認証局に公開鍵を送付し、X.509 に準拠した証明書の発行を受ける ・ サーバの公開鍵・認証局の秘密鍵で暗号化されたサーバの公開鍵のダイジェスト・ダイジェストの生成方式などが含まれた証明書と、サーバの秘密鍵が、サーバに格納される ・ SSLセッションの要求を受けたサーバは、ブラウザに自身の証明書を送信。ブラウザは既に保有する認証局の公開鍵を使用して、送付されたサーバの公開鍵のダイジェストを復号化 ・ 指定された生成方法で、送付されたサーバの平文の公開鍵からダイジェストを作成し、認証局が作成したダイジェストと比較。両者が一致すれば、サーバの認証が完了する ・ サーバ・ブラウザの両者が使用可能な秘密鍵暗号方式のうち、最も強度の高い暗号方式用の秘密鍵を、ブラウザがランダムに生成。サーバの公開鍵で暗号化してサーバに送信する ・ サーバは、自身が保有する秘密鍵を用いて、ブラウザが送信した秘密鍵を復号化。この時点で、サーバ・ブラウザ間で秘密鍵暗号方式での通信を開始するセッションが確立される ・ 以降の通信は、すべてこの秘密鍵暗号方式で暗号化が施されることになる。セッション確立時にブラウザがランダムに生成する秘密鍵は、そのセッションでのみ有効となる ■ DHCP(Dynamic Host Configuration Protocol) ・ アプリケーション層プロトコル ・ BOOTP(BOOT strap Protocol) の上位互換規格として策定されたプロトコル ・ IPアドレス、ホスト名、ドメイン名、ネットマスク、デフォルトゲートウェイ、ネームサーバといったクライアント側で必要な TCP/IP 設定をネットワーク経由で実現する ・ IP アドレスについては、クライアントから DHCP サーバに割当要求を出し、DHCP サーバがクライアントに IP アドレスをリースする形態をとる ・ DDNS(Dynamic Domain Name System) を使用すると、DHCP サーバが割り当てた IP アドレスとそれに対応するホスト名を、動的に DNS サーバに登録可能となる ■ DNS (Domain Name System) ・ アプリケーション層サービス(問い合わせには UDP 、ゾーン転送は TCP を使用する) ・ 32bit の「IPアドレス」を、直感的に判別可能な英数字の「ホスト名+ドメイン名」に関連付け、その双方向検索を実現するシステムが DNS である ・ ホスト名+ドメイン名は階層構造で構成され、DNS サーバも、それぞれの階層レベル・ドメイン名ごとに、階層的に構築される ・ 階層構造をとる巨大な分散データベースシステムとして機能し、自身の範疇でない問い合わせに対しては、適切なサーバに対して代理で問い合わせを行う ・ クライアント側 TCP/IP モジュールの中で、ホスト名での通信要求に対して、透過的に DNS サーバに名前解決要求を行う部位を、リゾルバと呼ぶ ・ SOA (Start Of Authority) … DNSゾーンの定義名称、管理者メールアドレス、定義世代情報、キャッシュ有効期限などの定義 ・ NS (Name Server) … マスターネームサーバ ・ A (internet Address) … ホスト名に対する IPアドレスの定義(正引き)。ホストの数だけ存在する。一番多く参照される項目。 ・ PTR (PoinTeR) … IP アドレスに対するホスト名の定義(逆引き)。192.168.1.1 のデフォルトは「1.1.168.192.IN-ADDR.ARPA」 ・ CNAME (Canonical Name) … エイリアス(別名)に対する正規のホスト名の定義。同一のIPアドレスに、複数のホスト名を指定可能 ・ MX (Mail eXchange) … ドメインメールサーバ。メールアドレスの@の後ろの部分から、送信先のメールサーバを検索する際に使用する ・ HINFO (Host INFormation) … ホスト情報。ハードウェアやソフトウェアに関する情報。定義されなくても支障はない。 ・ WKS (Well Known Services) … ホストが提供している Well Known Service。定義されなくても支障はない。 ■ SNMP (Simple Network Management Protocol) ・ 最も標準的なネットワーク管理プロトコル。大半のネットワーク関連のハードウェア・ソフトウェアでサポート・実装されている ・ TCP/IP のみの機能ではなく、OSIモデルのトランスポート層プロトコル(Apple Talk の DDP:Datagram Delivery Protocol、IPX など)であれば実装は可能 ・ 管理の主体となる「マネージャ」が、管理対象となる機器側の「エージェント」から、それぞれのノードのハード・ソフト・ネットワークに関する情報を収集する ● PDU(Protocol Data Unit)タイプ マネージャ → エージェント : GetRequest(情報要求)・GetNextRequest(次情報要求)・SetRequest(情報設定要求) エージェント → マネージャ : GetResponse(情報応答)・Trap(例外事象報告) * SNMP の PDU ではすべて UDP が使用される ● MIB (Management Information Base) ・ エージェントが保有する、自身に関する被管理パラメータの集合体を、MIB と呼び、パラメータの属性ごとにツリー状の構造となっている ・ 各ネットワーク機器が実装するべき MIB は RFC にて規定されているが、ベンダーが独自の MIB を実装していることもある ● RMON (Romote Network MONitoring) ・ リモートネットワークのトラフィックデータやエラーといった通信状況を遠隔監視するための SNMP の拡張仕様 ・ リモートネットワーク上に設置されたネットワーク監視用のノードに、監視結果を MIB のパラメータとして蓄積・保持するエージェントをセットする ・ SNMP の MIB オブジェクトとして蓄積されることで、SNMP マネージャはその値の参照を通じて、ノードに固有ではない、ネットワーク自体の状態監視が可能となる ・ RMON1 では物理層・データリンク層レベルの監視に限定されるが、RMON2 ではネットワーク層からアプリケーション層までのレベルの監視に対応する ■ RSVP (Resource reSerVation Protocol) ・ アプリケーション層プロトコル(制御プロトコル) ・ 通信のリアルタイム性の保証を確保するためのリソース予約プロトコル ・ TCP/IP上位層で稼動するためIPプロトコルには影響しない(IPv6 でも使用可能) ・ アプリケーションとルータのレベルでサポートが必要 ・ 受信側から QoS を要求。受信側の帯域を回線ごとに設定可能 ■ OSI参照モデルと対応機器 ・ 物理層 リピータハブ … 物理的電気信号の増幅と再生。無条件のブロードキャストとなる。 ・ データリンク層 ブリッジ … 送信元・送信先 MAC アドレスに基づくアドレス学習とフレームの通過判定(MAC 副層) スイッチングハブ … 送信元・送信先 MAC アドレスに基づくアドレス学習とフレームの伝送ポート判定(レイヤ2スイッチ)(MAC 副層) ・ ネットワーク層 スイッチングハブ … 送信元・送信先 IP アドレスに基づくアドレス学習とパケットの伝送ポート判定(レイヤ3スイッチ) 蓄積伝送のため、速度の異なる装置同士の接続も可能(10BaseTと100BaseTXなど)。VLAN(Virtual LAN)の実現も可能。 ルータ … ネットワークレベルの送信先アドレス(IPアドレス・サブネットマスク)に基づくパケットの伝送ネットワークと伝送インターフェースの判定 ・ トランスポート層 スイッチングハブ … IPアドレスに加えてTCP/UDPポート番号に基づくアドレス学習とパケットの伝送ポート判定(レイヤ4スイッチ?) ゲートウェイ … 下位は物理層から上位はトランスポート層以上のプロトコル変換に関与する装置を一般にゲートウェイと呼ぶ ・ セッション層 ゲートウェイ … 同上 ・ プレゼンテーション層 ゲートウェイ … 同上 ・ アプリケーション層 ゲートウェイ … 同上 * アプリケーション・ゲートウェイのことであり、デフォルト・ゲートウェイとは異なる ○ リピータハブ ・ 入力を受けたポートの電気信号を物理層レベルで増幅し、すべてのポートに出力し直す機能を持つ ・ 入力されたアナログ信号を一度デジタル化し、再度、アナログ信号として出力する「クラス1リピータ」と、入力されたアナログ信号をそのまま出力する「クラス2リピータ」とがある ・ クラス1リピータでは、クラス2リピータよりも伝送遅延の発生が大きい ・ CSMA/CD 方式を採用する Ethernet では、パケットのコリジョン検出の都合から、1コリジョンドメインあたり、リピータハブの使用は4台、5セグメントまでに使用が制限されている ・ 5セグメント以上の分割を行う場合には、ブリッジ、スイッチングハブ、ルータの使用が必要となる ○ クロスケーブル ・ ポートの信号線のうち、送信ポートと受信ポート用の信号線が逆転して接続されたケーブルを、クロスケーブルと呼ぶ。TD+とRD+、TD−とRD−が接続 ・ PC 同士の接続、HUB 同士の接続に使用される ・ 信号線の意味としては送信ポートと受信ポートが逆転しているが、+極性と−極性同士の関係は維持される ○ ストレートケーブル ・ ポートの信号線が、同じ番号同士がそのまま接続されたケーブルを、ストレートケーブルと呼ぶ。TD+同士、TD−同士、RD+同士、RD−同士が接続 ・ HUB と PC の接続に使用される ・ ケーブル構造としては単純に半回転ねじれているが、信号線の意味としてはストレートな関係にある ○ クロス接続とストレート接続の関係 ・ ネットワーク通信を行う PC 端末同士の接続では、伝送経路上の仕様に関わらず、最終的には必ず1回以上・奇数回、送信ポートと受信ポートの信号線の逆転をさせなければならない ・ HUB は構造的に送信ポートと受信ポートの信号線を逆転させる仕組みになっているため、HUB を介した PC の接続にはストレートケーブルが使用される ・ HUB 同士を接続すると、送信ポートと受信ポートの信号線の逆転が2回発生し、結果として元に戻ってしまうため、HUB 同士の接続にはクロスケーブルが使用される(逆転3回) ・ PC 同士の接続には、間に受信ポートと送信ポートの逆転をさせるものが存在しないので、クロスケーブルが使用される ■ Virtual LAN ・ 物理的な接続形態(ネットワークアドレス)に依存せずにホストをグループ化した仮想的なLAN形態 ・ LANスイッチと呼ばれる機器の機能を利用して、端末の持つMACアドレスやIPアドレス、利用プロトコルなどに応じてグループ化 ・ ホストの物理的な位置に関係なくネットワーク構成を変更することが可能で、端末を移動してもIPアドレスの設定を変更する必要がない ■ VPN(Virtual Private Network : 仮想私設網) ・ インターネットをインフラとして使用して、専用線接続に近い拠点間の回線接続を、安全かつ安価に実現するシステムを VPN と呼ぶ ・ 各拠点のインターネットインターフェースに VPN 装置(ルータ、ファイヤーウォール、ソフトウェアなど)を設置して、VPN 装置同士がインターネット経由で通信を行う ・ プライベートIPアドレスのままの TCP/IP や、TCP/IP 以外のプロトコルを TCP/IP にカプセル化して、インターネットを通過させる方法を、トンネリングと呼ぶ ・ IETF によって標準化されている IPSec(Internet Protocol Security) に対応した VPN 装置間であれば、IP 層レベルでのパケットの暗号化通信が可能 ■ ルーティングプロトコル ・ ネットワーク層レベルでのネットワークアドレスに基づいてパケットデータの最適な伝送経路を決定する際の、ルーティング情報を送受信するためのプロトコル ・ ネットワーク上の他のルーティング機器の状態によって、伝送経路を自動で更新する動的ルーティングにおいて使用。常に固定経路を選択する静的ルーティングでは不要 ・ ドメイン内ルーティングプロトコル(IGP : Interior Gateway Protocol)、ドメイン間ルーティングプロトコル(EGP : Exterior Gateway Protocol) に大別される ・ IGP は AS(Autonomous System : 自律システム) 内のルータに適用(RIP、OSPF など)。EGP は AS 同士を接続するルータに適用(BGP など) ■ RIP(Routing Information Protocol) ・ ネットワーク層プロトコル(ルーティングプロトコル)。IGP の1つ。UDP を使用 ・ ディスタンスベクター型 ・ 保有ルーティング情報の全て(すべてのルータとサブネットマスク)を30秒間隔で、認証を行わずにブロードキャスト通知 ・ 隣接ルータ間での情報の授受が順次リレーされるため、ルーティング情報の変更がネットワーク全体に通知され、ルーティングが安定するまでには時間を要する ・ ルーティングホップ数(ルータ越えの数)をメトリックとして、合計メトリック数の低い経路を優先する。必ずしも高速、安価の回線が選択される保証はない ・ 最大ホップ数は15。ホップ数16は、該当ネットワークの不通を意味する ・ RIPメッセージのサイズは、最大512バイト。1メッセージあたり25個のネットワーク情報を送信可能。 ・ 小規模の AS ネットワークで使用される(ルータが50台以下程度) ・ RIP2 では、サブネットマスクに対応。ルーティング情報の送信もマルチキャスト方式 ■ OSPF(Open Shortest Path First) ・ ネットワーク層プロトコル(ルーティングプロトコル)。IGP の1つ ・ リンクステート型(代表的なルーティングプロトコルでは唯一) ・ 自身が関与するネットワークルータ間のリンクステータスが変化したときに、変化差分のみを、認証を行いながらブロードキャスト通知(低帯域) ・ HELLOパケットにて隣接ノードの死活状態を検知する ・ サブネットマスク、ルーティング情報の認証機能、交換情報量の低減(ルートサマリ機能)、交換相手ルータを限定する機能(DR : Designated Router)に対応 ・ 任意の定数をリンク回線帯域で除した値をメトリック(コスト)として、合計メトリック(コスト)数の低い経路を優先。メトリック値を管理者側で意図的に設定可能 ・ 中規模〜大規模の AS ネットワークで使用される(ホップ数の制限はない。ルーティング情報の変更の伝播収束は、比較的早い) ■ BGP(Border Gateway Protocol) ・ ネットワーク層プロトコル(ルーティングプロトコル)。EGP の1つ ・ バスベクトル型 ・ AS 同士を接続するインターネットプロバイダ間のバックボーンルータなどで使用される ■ AS( Autonomous System : 自律システム) ・ 物理的に隣接したネットワークを論理的にグループ化したもの。ドメインとほぼ同義 ・ 単一の AS は同じルーティングプロトコルにてルーティング情報を共有するルータ群で構成される 【ネットワーク技術の動向】 ■ IPv4 から IPv6 への移行 ・ 32bit から 128bit アドレスに拡張(理論的には 3*10^38 規模) ・ FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF(16進4桁 = 2進16桁 = 16 bit で1セクション) ・ 0000:0000:0000:0000:0000:xxxx:xxxx … IPv4インフラで使用されるIPv6ノードのアドレス表現 ・ 0000:0000:0000:0000:FFFF:xxxx:xxxx … IPv6をサポートしないIPv4ノードのアドレス表現 ・ ::FFFF:FFFF(連続する 0 は省略可能) ・ プレフィックス・ネットワークアドレスとMACアドレスからホストアドレスを自動生成可能 ・ ヘッダのフローラベルによるストリーミング通信への対応 ・ 認証ヘッダ、暗号化ヘッダによるセキュリティ対策 ・ ヘッダの簡略化によるIP処理の高速化 ・ プロバイダベースアドレス(グローバルアドレス)、サイトローカルアドレス(プライベートアドレス)、リンクローカルアドレス ・ スループットの向上( 1 パケットで最大 4 Gb まで対応可能) ■ スペクトル(スペクトラム)拡散通信 (Spread Spectrum Communication) ・ 特定帯域に制限された送信情報のスペクトルを広帯域に拡散して伝送する通信方式 ・ 送信側では、拡散符号を用いて情報信号に拡散変調を行い、帯域を広帯域化してから送信 ・ 受信側では、送信側と同じ拡散符号を用いて、広帯域化された受信信号に逆拡散変調を行い、特定帯域の元の情報信号に復調 ・ CDMA方式では、拡散符号は、ユーザー識別のために使用される ・ 狭帯域通信からの干渉の影響を受けにくく、また、その逆の影響も少ない ・ マルチパスフェージング(伝送経路条件による反射、回折、拡散の複合波として受信されるときの影響)耐性が強い ・ スペクトル密度が低いため(雑音以下でも通信可能)、通信事実の秘匿性が高い ・ 送信側の拡散符号が分からなければ、受信側での復調が不可能であり、秘話性を確保できる ・ 異なる拡散符号を用いることで、複数ユーザーの同時アクセスが可能 ・ 測距位能力がある ・ CDMA(Code Division Multiple Access : 符号分割多重接続)はスペクトル拡散通信を応用したものである ■ Mark-up Language(マークアップ言語) ・ SGML(Standard Generalized Mark-up Language) 論理構造、意味構造による文章記述を可能にした言語 ・ HTML(Hyper Text Markup Language) WWW 用に策定された SGML の一部。W3C によって標準化 ・ XML(eXtensible Markup Language) SGML のサブセットとして W3C によって勧告。ユーザーによる独自タグの定義が可能 ・ XLink/XPointer XML 用のオブジェクトリンク、オブジェクト参照方法の定義仕様 (XML Linking Language / XML Pointer Language) ・ MathML(Mathematics Markup Language) XML 用の数式表記、数式構造化のための記述言語 ・ BML(Broadcast Markup Language) XMLをベースとしたデータ放送用のページマークアップ言語 ・ VRML(Virtual Reality Modeling Language) 3次元空間を表現するための言語。シリコングラフィックス社の技術を元に策定。オブジェクトに動きをつけることも可能 ・ Dynamic HTML 各種スクリプト、アプレットを使用して動的、対話的コンテンツを作成するHTMLの拡張仕様 (Dynamic HyperText Markup Language) ・ HDML(Handheld Device Markup Language) 携帯端末向けのマークアップ言語。単位画面を Card 、その集合を Deck と呼ぶ ・ MML(Mobile Markup Language) HTMLタグを簡易化した J-SKY 用マークアップ言語。ゲートウェイ経由のアクセスによりHTMLからの変換が可能 ■ ADSL(Asymmetric Digital Subscriber Line : 非対称デジタル加入者線) ・ 既存の銅線ツイストペアケーブルによる電話回線網を利用して、通常通話と高速データ伝送の併用を可能にした技術 ・ FDM (Frequency Division Multiplexing : 周波数分割多重)の1つ。ユーザ側は「スプリッタ」、収容局側は「DSLAM(xDSL Access Multiplexer)」にて周波数分割を行う ・ 上り周波数帯と、下り周波数帯が異なるため、上下の通信速度は非対称(Asymmetric)となる。通常、下りの方が高周波数帯で高速となる ■ 光ファイバー ・ 屈折率の異なるガラス繊維を、中心から外皮に向かって屈折率の高い順にコーティングした光伝送媒体。標準直径は 0.125mm。 ・ 光伝送部が「コア」、周囲の低屈折率部が「クラッド」。その外部を皮膜が保護する。外周のクラッドほど純度の高いガラス素材が使用され、通過光は全反射される ・ 銅線による電気通信と比較すると、信号自体の減衰が非常に低いため、安定した広帯域の長距離通信が可能。(銅線の場合は約 1.5km 毎に増幅が必要) モード コア直径 皮膜直径 シングルモードファイバー .009mm .125mm 単一の光信号のみを伝送。理論的には100km程度は増幅なしでの広帯域伝送が可能 マルチモードファイバー .050 〜 0.625mm .125mm 複数の光信号を伝送。伝送速度が分散するため、長距離にわたる効率的伝送は不可 ■ SONET/SDH (Synchronous Optical NETwork / Synchronous Didgital Hierarchy) ソネット ・ 物理層プロトコル ・ Bellcore 社が開発した、光ファイバーを使用した高速デジタル通信方式。ITU-T によって標準化されたものについては SDH と呼ばれる ・ 光ファイバーの特徴である高速性・長距離耐性を活用して、プロバイダ間の高速バックボーン接続などに利用される ・ データリンク層には ATM が使用されることが多い ■ MAPOS (Multiple Access Protocol over Sonet/Sdh) メイポス ・ データリンク層プロトコル ・ NTT光ネットワークシステム研究所が開発した、物理層として SONET/SDH を使用する、HDLC に準拠したデータリンク層プロトコル ・ 複数のノードが接続された環境においても、通信ノード間を直接、接続するスイッチングにより、高速データ伝送を可能 ・ 48byte 固定長データの ATM セルとは異なり、最大データ長 64kbyte の HDLC フレームによる通信を行うため、オーバーヘッド削減による伝送効率の大幅な向上が図られている ・ コネクションレス型通信のため、同じくコネクションレス型プロトコルである IP との相性が良好 ・ ノードアドレスの自動設定機能を持ち、MAPOS ネットワークにノードを接続すると自動的にノードのコンフィギュレーションが行われるため、管理コストが削減可能 ・ 既存の SONET/SDH 光ファイバーのインフラを使用できるため、IP ネットワークプロバイダ間のバックボーン接続の高速化が可能 【ネットワーク論理設計】 ■ アーラン(呼量)単位:erl ・ 単位時間あたりの回線占有使用時間 ・ 1 時間あたりの回線占有時間の比率(総回線占有時間(秒)を 1 時間(秒)で除算したもの) ■ ケンドール記号(X/Y/Sモデル) ・ 到着分布/サービス時間分布/窓口数(/待ち行列長)の組み合わせで、待ち行列モデルを表現したもの ・ サービス提供は先着順(FIFO : First In First Out)、行列途中での脱退・割込は生じないものとする ・ モデルとしては M/M/1、M/D/1 が一般的 ● 到着分布 ・ M:ポアソン分布(ランダム分布) ・ D:等間隔分布 ・ G:一般分布 ・ Ek:k次のアーラン分布 ● サービス時間分布 ・ M:指数分布 ・ D:等間隔分布 ・ G:一般分布 ■ 待ち行列の計算要素 ・ 到着間隔時間 : Ta トランザクションが到着する間隔時間 ・ 到着率 : λ 単位時間に到着するトランザクション数 = 1/Ta ・ サービス時間 : Ts トランザクションの処理に要する時間 ・ サービス率 : μ 単位時間に処理されるトランザクション数 = 1/Ts ・ 窓口数 : m 処理可能な窓口の数 ・ 窓口利用率 : ρ 窓口がトランザクションに占有されている時間割合 = λ/(m・μ) ■ 待ち時間・応答時間(M/M/1モデル) ・ トランザクション処理の待ち順に加わってから、処理が開始されるまでに要する時間を、待ち時間と呼ぶ ・ トランザクション処理の待ち順に加わってから、処理が完了するまでに要する時間を、応答時間と呼ぶ(待ち時間とサービス時間の合計) ■ 待ち時間・応答時間の計算(M/M/1モデル) ・ 待ち時間 : Tw = {ρ/(1−ρ)}・Ts ・ 応答時間 : Tr = {1/(1−ρ)}・Ts = Tw + Ts Tw:待ち時間(s) Tr:応答時間(s) Ts:サービス時間(s/件) ρ:窓口利用率(erl) * erl : アーラン ■ 待機呼数の計算(リトルの式) ・ 待ち待機呼数 : Lw = λ×Tw 処理を受けるのを待機しているトランザクション数(待ち時間×単位時間の到着数) ・ 応答待機個数 : Lr = λ×Tr 処理を受けるのを待機しているトランザクション数と、処理を受けているトランザクション数の合計 ■ 信頼性能の計算要素 ・ 平均故障間隔 : MTBF (h) 故障が発生する平均間隔時間 = 総運用時間/故障回数 Mean Time Between Failure ・ 故障率 : λ (回/h) 単位時間に故障する回数 = 1/MTBF ※単位時間に故障している時間ではない ・ 平均修理時間 : MTTR (h) 修理に要する平均時間 = 総修理時間/故障回数 Mean Time To Repair ・ 修理率 : μ 単位時間に修理が完了している割合 = 1/MTTR ・ 平均故障寿命 : MTTF (h) 修理不可能なシステムにおける故障発生までの平均時間、修理不可能な故障が発生するまでの平均時間(MTBTと同義の場合もある) ・ 信頼度 : R R(t) システムが要求された機能を維持する確率。稼動開始から平均寿命までの残存確率を示す時間関数となる。非信頼度 F(t) との和は常に1 ・ 稼働率 : A MTBT/(MTBT+MTTR) 時間経過による信頼度の低下は考慮しない ■ 直列系・並列系システムでの総信頼度・総稼働率 ● 直列系システム ----- R1 ----- R2 ----- R3 ----- ・ 総稼働率 : R1×R2×R3 ・ 直列要素が増加するにしたがって信頼度は低下する(非信頼度は増加する) ・ 信頼度 0.9 の3台構成では 0.729 ● 並列系システム |-- R1 --| | | --|-- R2 --|-- | | |-- R2 --| ・ 総稼働率 : 1−(1−R1)×(1−R2)×(1−R3) ← 全てが故障する確率を1から引いたもの ・ 並列要素が増加するにしたがって信頼度は向上する(非信頼度は低下する) ・ 信頼度 0.9 の3台構成では 0.999 【セキュリティ】 ■ 秘密鍵暗号方式 / 対象鍵暗号方式 ・ 暗号化と復号化のプロセスに同一の鍵を使用する暗号化方式 ・ 秘密性を維持する送受信者のみが同一の鍵を保有するため、保有者いずれかの鍵の漏洩が発生すると第三者へ秘密が開示されるリスクを負う ・ 暗号化アルゴリズムは公開されているものが多いが、一般にアルゴリズムが非公開の秘密鍵暗方式は、使用に耐える信頼性が得にくい ・ 処理が単純なため、暗号化・復号化の処理は高速 ● DES (Deta Encryption Standard) ・ IBM が開発し、1976年にアメリカ連邦政府で採用された標準の暗号化方式 ・ 56bit の鍵を使用して、ビット位置転換と XOR の組み合わせ演算を16回繰り返し処理する。アルゴリズム自体は公開されている ・ 総当たり試行処理を行うことで理論的には正規鍵の解読が可能なため、演算技術の向上により暗号強度的の相対的な低下傾向がある ・ 現在では、3つの 56bit 鍵を使用して DES 暗号化自体を3回繰り返し処理することで、実効強度を増加させた「トリプル DES」も存在する ■ 公開鍵暗号方式 / 非対称鍵暗号方式 ・ 暗号化と復号化にプロセスにおいて、対には機能するものの内容自体は異なり、相互に推測が不可能である2つの鍵を使用する暗号化方式 ・ 2つの鍵のうち、いずれか一方のみを主体者が秘密に保持し、他方は不特定多数の者に対して公開しても構わないため、主体者のみが秘密漏洩のリスク管理を行えばよい ・ 秘密鍵自体の秘密性が維持されればよいため、暗号化アルゴリズムは公開されている ・ 処理が複雑なため、暗号化・復号化の処理は低速 ・ 主体者が秘密鍵を用いて暗号化した暗号文は、その対となる公開鍵を保有する不特定多数の者が復号化可能 → 暗号文の改竄がなされていないことの証明が可能 → 暗号文の作成者が秘密鍵を保有する主体者であることの証明が可能(なりすましの防止) → 暗号文の作成者が秘密鍵を保有する主体者であることの否定が不可能(否認の防止) ・ 主体者の公開鍵によって暗号化された暗号文は、その対となる秘密鍵を保有する主体者のみが復号化可能 → 主体者以外の者が暗号文を傍受したとしても、その暗号文を復号化することは不可能(秘密性の確保) ● RSA (mr. Rivest, Shamir, Adleman) ・ 1978 年に、マサチューセッツ工科大学の Rivest, Shamir, Adleman によって開発された公開鍵暗号方式のアルゴリズム。RSAセキュリティ社が実質的に開発管理を行っている ・ 2つの素数の積によって得られた巨大な数から、元の2つの素数を算出することが困難であることを、暗号鍵解読の難解性に利用 ・ 2000年9月にライセンスがパブリックドメインとなり、公開鍵暗号方式としては最も普及している ● PGP (Pretty Good Privacy) ・ 1991 年に、Philip Zimmermann が開発・公開。米国の暗号輸出規制をかいくぐって、オープンソース的に開発が進められた経緯があるが、現在は輸出規制は解除されている ・ データ本体の暗号化にはセッションごとに使い捨ての秘密鍵による秘密鍵暗号方式、この秘密鍵を公開鍵暗号方式で暗号化して、暗号化データ本体とともに送付する方法をとる ● ECC(楕円曲線暗号 : Elliptic Curve Cryptosystem) ・ 1985 年に、Koblitz, Miller によって開発された(発表はほぼ同時だが、開発は独立していた)公開鍵暗号方式のアルゴリズム ・ 楕円曲線上の離散対数を解く効率的手法がないことを、暗号解読の難解性に利用 ・ 短い鍵で、高信頼性(RSA 1024bit の信頼性を 160bit で実現)と、高速性(RSA の処理の 1/10程度)を実現する ○ 暗号鍵の強度 ・ 秘密鍵暗号方式と公開鍵暗号方式では、アルゴリズムの違いから単純な性能の比較はできないが、最終的なビット置換に使用されるビット数が同じであれば、強度も同じとなる ・ 秘密鍵暗号方式と秘密鍵暗号方式の、それぞれの暗号ビット数表記を単純に比較した場合では、ビット数が同じでも、秘密鍵暗号方式の方が、一般に強度は高い ■ デジタル署名/電子署名 ・ 公開鍵暗号方式を利用して、データが送信されてから改竄されていないことの証明、データの送信者が本人であることの証明、を行う署名システム ・ 送信者は、送信するデータから、特定のアルゴリズムによって固有に得られるメッセージダイジェストを作成。このメッセージダイジェストを、送信者の秘密鍵によって暗号化する ・ データ、暗号化されたメッセージダイジェスト(必要によっては加えて、送信者の公開鍵)、を希望する受信者に送信する ・ 受信者は、受信したデータから、送信者と同じアルゴリズムによってメッセージダイジェストを作成。暗号化されたメッセージダイジェストを、送信者の公開鍵で復号化する ・ 受信者で作成したメッセージダイジェストと、暗号化されたものを復号化したメッセージダイジェストが一致すれば、データが送信されてから改竄されていないことが証明される ・ 同時に、メッセージダイジェストを正しく復号化できたことにより、データの送信者が本人であることが証明される ■ 認証局 (CA : Certificate Authority) ・ 公開鍵暗号方式でのパブリックネットワーク通信において配布される公開鍵が、秘密鍵を保有する主体者自身が作成したものであることを証明する第三者機関を、認証局と呼ぶ ・ 公開鍵暗号方式による、秘密保護やデジタル署名が正当に機能するためには、暗号化の主体者によって配布される公開鍵自体の認証が必要となる ・ 秘密鍵と公開鍵のペアは容易かつ無限に作成できるため、なりすまし用の秘密鍵で暗号化されたデータが、なりすまし用に配布された公開鍵で復号化可能となる事象が発生しうる ■ ワンタイムパスワード(S/Key など) ・ ネットワーク経由での認証に使用するパスワードを毎回、異なる暗号化文字列で送信する使い捨てパスワードシステム ・ サーバに、パスワード、最大使用回数、seed(種:暗号化する際の共通パラメータ)を設定 ・ サーバは、設定された使用回数分だけ、seedに基づいたパスワードの不可逆暗号化を繰り返し、各回数分の暗号化したパスワードを保存 ・ サーバは、認証要求を受けると、seedと残存使用回数(シーケンス)を、クライアントに送信 ・ ユーザーは、ユーティリティソフトを使用して、シーケンスの回数分だけ、seedに基づいたパスワードの不可逆暗号化を実施 ・ ユーザーは、得られた暗号化パスワードを、クライアントを通じてサーバに送信する ・ サーバは、クライアントから送信された暗号化パスワードと、該当するシーケンスに対応するパスワードとを照合。一致すれば、許可。 ・ サーバは、照合が完了するとシーケンスの番号を1つだけ減算して保存する ・ Encrypted(i+1) から Encrypted(i) を推測することが困難(不可逆的)であるのに対して、その逆は比較的容易であるため、シーケンスの番号は減算して使用する。 【システム開発手法 / テスト手法】 ■ ウォーターフォールモデル water fall : 滝 ・ 「分析 → 設計 → 実装 → テスト → 運用」という開発過程を、段階的に順次、完了させていく開発手法 ・ 上流から下流に開発過程が規定されているので、基本的に後戻りすることは許されない ・ 大規模な開発プロジェクトにおいて、開発工程の管理が行いやすい、という長所がある ・ 開発の後期段階にならないとユーザーインターフェースや利用性が判明しない、開発中の仕様の変更が極めて困難、という短所がある ・ C言語などの構造化言語が主流だった頃に、よく利用された開発手法(プログラム開発としては、やや時代遅れ) ■ スパイラルモデル spiral : らせん ・ 「分析 → 設計 → 実装 → テスト → 運用」という開発過程を、短期間に区切った開発サイクルで、反復的に実施する開発手法 ・ サブシステム・コンポーネントといった小さな単位でシステムの一部から開発を行い、全体的なシステムの完成へと発展させる ・ C++、Javaなどのオブジェクト指向言語においては、有効な開発手法 ■ ラウンドトリップモデル round trip : 往復 ・ 「分析 ― 設計 ― 実装 ― テスト ― 運用」という開発過程を、自由に往来することができるような開発手法 ・ 各開発工程で生じた不具合や仕様変更の要求に対して、柔軟に前段階に後戻りすることを許容する ・ C++、Javaなどのオブジェクト指向言語においては、有効な開発手法 ■ プロトタイピングモデル ・ 開発の初期段階で試作品(プロトタイプ)を作成したうえで、ユーザーの評価を取り入れながら、機能・動作面での開発を進め、全体を完成させていく開発手法 ・ 完成後の操作性の早期検証、開発上の問題点・課題の早期発見が可能 ・ 仕様要求を早期に把握することができるので、開発工程後期での仕様変更や、工程の逆行を最小限に抑えることができ、開発期間を短縮することができる ■ デザインレビュー ・ 開発の企画・設計・生産準備の各段階で、コスト・納期といった条件に見合う、性能・機能・信頼性の審査・評価をしたうえで改善を図る作業を、デザインレビューと呼ぶ ・ 設計・製造・検査・運用などの各分野の専門家が、第三者として客観的な立場で参加し、担当者自身が気付かない問題点・解決の方向性を指摘・示唆・支援する ・ 各開発工程において、客観的なチェックが行なわれるため、問題点の発見による工程の大幅な逆行を防ぐことが可能である ■ ファンクション・ポイント法 ・ ソフトウェア開発に必要な費用を見積もるための手法の1つ。ソフトウェアの機能(ファンクション)に着目して、そのポイントをコストの判断材料とする。 ・ コードのステップ数や言語種別による工数といった開発者サイドの見積もりではなく、システムの処理難度やデータ量といったユーザーサイドの利便性に基づいた見積もり ・ ファイルや帳票の処理を、外部入力数、外部出力数、内部マスタファイル数、外部インターフェースファイル数、外部参照数といった5種類の機能に分類して評価 ・ ユーザーの同意を得られやすい見積もり手法ではあるが、見積もりの根拠となる基準値の設定をするためには、実績データの収集と評価が必要となる ■ データ・フロー・ダイアグラム(DFD : Data Flow Diagram) ・ 流れるデータをキーとしてデータと処理の流れを視覚的に図式化することで、業務システムの処理プロセスをモデル化する手法 ・ コンピュータによるデータ処理に限らず、接客サービス、運用サービスといった人的処理をも含めた広い概念にて使用される ・ データ・フロー … 矢印 : 各要素間のデータの流れ ・ プロセス … 円形 : 入力データフローを受け取り、処理を施してから、出力データフローとして送り出す処理内容 ・ データストア … 平行2線 : 一時的にデータを格納しておく場所。デバイス、ファイルなどが該当する ・ データ源泉・データ吸収 … 4角 : データがどこから入力され、どこに出力されるのかを示す源泉元・吸収先。基本的には外部的な要素 ■ アロー・ダイアグラム / PERT(Program Evaluation and Review Technique)ネットワーク ・ プロジェクトの評価や再検討を行なうためのプロジェクト管理手法の1つ ・ 作業(ジョブ・アクティビティ)をアロー(矢印)で表現し、各作業の相互関係・前後関係をサークル(円)で表現する ・ サークルは作業が到達するイベント・結節点となり、サークルの中には到達順に番号がふられる ● クリティカル・パス(Critical Path) ・ 複数の分岐・結節経路を有するアロー・ダイアグラムにおいて、最も到達に時間を要する経路を始点から終点まで接続したものを、クリティカル・パスと呼ぶ ・ 計画全体を予定通りに完了するためには、クリティカル・パス上の作業には遅延が発生してはならない(それ以外の経路は多少の遅延が許容される) ■ 状態表記法 ・ E−R図 … Entity(実体)、Relationship(関係)、Attribute(属性)で構成されるE−Rモデルを表現。データベースのスキーマ設計に用いられる ・ 状態遷移図 … 事象の発生と、その時の状態に応じたシステムの動作を記述したもの。RFC 793 では TCP の状態遷移図が表記されている ・ シーケンス図 … システムが一連の動作を行う際にオブジェク間でやり取りされるメッセージのタイミングと方向を、矢印によって時系列に並べたもの ・ デシジョンテーブル … 複数の条件の組み合わせと、その組み合わせの条件下でとられるアクションを表形式でまとめたもの ・ アクション・ダイアグラム … プログラムやモジュールのロジックやその動きの詳細を表現するに適した表記法 ■ リポジトリ(repository : 容器・貯蔵庫) ・ RAD(Rapid Application Development)ツールと組み合わせて、開発段階のソフトウェアの仕様や機能を格納しておくことで、アプリケーションの効率的な開発を実現する ・ 開発過程で使用する、要件定義・設計仕様・プログラムモジュール・テスト条件と結果・データの所在・ファイルの仕様などを一元管理 ・ 各開発工程にまたがっての資源の再利用、大規模なグループ開発・バージョンアップにおける部分的な一括修正などが、効率的に実施可能 ■ CASE (Computer Aided Software Engineering) ・ ソフトウェアのライフサイクルを通じて、開発に関わる内容をコンピュータにより支援する手法 ・ 開発環境で用いるすべての情報を統一的に管理することによる、ツール間で利用するデータの統合。ツール間でのユーザー・インターフェースの統合などを実現 ■ CORBA (Commom Object Request Broker Architecture) ・ オブジェクト指向技術の標準化団体・OMG(Object Management Group)が策定した、ソフトウェアの相互運用性の向上のための、オブジェクト管理プラットフォームの参照モデル ・ 複数のハードウェア・ソフトウェア・開発言語などで構成されるシステムにおいて、そのオブジェクトの位置や名称に関係なく、相互運用・相互接続を提供するための枠組み ・ オブジェクトとして提供されるアプリケーションと、それを利用するクライアントとの間に、その相互接続を行うための ORB(Object Request Broker) が介在 ・ オブジェクトおよびクライアントに対する ORB の役割と、そのインターフェースが定義される。インターフェースは IDL (Interface Definition Language) による記述 ・ オブジェクトの物理的位置や開発言語への個別依存が吸収されることで、オブジェクト間の処理の参照が容易となり、システムの追加・変更に対して柔軟に対応することが可能となる ■ テスト手法 ● ホワイトボックステスト ・ プログラムの内部構造、アルゴリズム、制御構造に基づいたテストケースを設定し、プログラミングの内部仕様の適合性をテストする手法 ・ 条件分岐がある場合には全ての条件分岐を網羅させ、全てのコードの動作確認と、その結果の妥当性をテスト対象とする。通常はプログラマ自身が実施する ・ 論理網羅テスト法 … 論理的にとりうるすべてのケースについてテストを行う方法 ・ 命令網羅テスト法 … すべての命令を網羅するようにテストする方法 ・ 判定条件網羅テスト法 … すべての条件分岐を網羅するようにテストする方法 ● ブラックボックステスト ・ プログラムの内部構造を意識することなく、入力に対する出力の妥当性、ユーザーの利便性といった外部仕様の適合性をテストする手法 ・ ユーザーサイドでの検証が中心となり、動作速度といった点もテスト対象となる。通常はプログラマ以外の第三者が実施する ・ 機能図式法 … 外部仕様に基づいて図式化を行いテストケースを作成する方法 ・ 限界値分析法 … 入力・出力のデータそれぞれについて、有効値と無効値の限界値を試行対象としてテストする方法 ・ 同値分割法 … 入力・出力のデータそれぞれについて、有効値、無効値の範囲にあるデータリストを試行対象としてテストする方法 ● ビックバン検査 ・ メインモジュール、および、サブモジュールを全て結合し、ソフトウェア全体として一気に検査する手法 ● トップダウン検査 ・ メインモジュールから上位順にモジュールを1つずつ結合しながら、ソフトウェアの動作を検査する手法 ・ メインモジュールに近い部分の動作に安定性が見られときに、有効な手法である ・ 未完成のサブモジュールについては「スタブ」と呼ばれるダミーサブモジュールを使用する ● ボトムアップ検査 ・ サブモジュールから下位順にモジュールを1つずつ結合しながら、ソフトウェアの動作を検査する手法 ・ 複数の下位モジュールの並行開発と並行検査が可能であり、検査の効率化を図ることが可能 ・ 上位モジュールの動作が完全でない場合には「ドライバ」と呼ばれるダミーモジュールを使用する ● サンドウィッチ検査 ・ トップダウン検査と、ボトムアップ検査を同時に進めながら検査する手法 ■ コラボレーション(Collaboration) ・ 点在する複数のワークグループ・人が共同作業を行なうこと ■ ワークフロー(Workflow) ・ 業務に関連する情報の流れをコンピュータで管理・共有化することで、業務の効率向上を図るためのシステム ■ コード設計 ・ シーケンスコード / 連続コード・連鎖コード … 番号の若い方から順番に割り当てられたコード体系。途中挿入が不可能なため、分類や配列の絡まない対象に適する ・ デシマルコード / 10進法コード … 大分類から小分類へと至る各分類レベルで、0から9に分類を繰り返し桁数を追加する。図書分類体系がこれに該当する ・ ニモニックコード / 連想コード・簡略コード … コードと関連付けられた対象を連想しやすいような略号を含んだコード体系。商品コードなどに有効 ・ ブロックコード / 区分コード … あらかじめ各分類で使用可能なコード番号の範囲を区分しておき、その範囲内でコードを割り当てる 【コンピュータ・アーキテクチャ】 ■ マルチプロセッサ ・ 蜜結合型マルチプロセッサ … 複数のプロセッサが単一の主記憶装置とOSによって制御される。プロセッサ数が増えると、リソースの競合による効率低下が起きる。 ・ 疎結合型マルチプロセッサ … 複数のプロセッサが個々の主記憶装置とOSによって制御され、ネットワーク結合される。 ・ アレイプロセッサ … 1つの制御用プロセッサと、複数の演算用プロセッサにより構成される。行列演算、ベクトル演算に使用される。 ■ プロセッシングの高速化 ・ パイプライン方式 … プロセッサの各処理過程を細分化し、ある命令の細分化された処理が完了した時点で、別の命令の細分化された同一処理を開始する 複数の命令を時差的に同時処理することで、プロセッサの利用効率を高め、処理を高速化している。 ・ スーパースカラ方式 … パイプライン方式のうち、細分化された処理を複数、同時に処理可能なシステムを、特にスーパースカラ方式と呼ぶ ■ メモリアクセスの高速化 ・ インタリーブ方式 … メモリを複数の領域に分割し(バンク)、各バンクに対して並行処理的に同時アクセスする方式(inter-leave : 本に白紙をはさむ) ・ キャッシュメモリ … CPUの処理速度に比べて、低速である主記憶装置へのアクセス(待機)によるパフォーマンス低下を防ぐために使用される、高速な半導体メモリ 高速であるゆえに高価となり、高価であるゆえに容量としては小規模なものとなる ■ キャッシュメモリのアクセス方式 ● ライトスルー方式 ・ キャッシュメモリへのデータ書き込みと同時に、主記憶装置へのデータ書き込みも行なう ・ フラッシュ(最低使用頻度キャッシュデータの消去)動作時の主記憶装置との関連が生じないため、回路設計は単純化可能 ・ 主記憶装置への書き込み作業が必ず発生するため、キャッシュメモリを使用することによる高速化は読み込みのときのみとなる ● ライトバック方式 ・ 通常のデータ書き込み動作は、キャッシュメモリへのデータ書き込みのみ ・ フラッシュ動作時にキャッシュメモリ上のデータが主記憶装置に反映されるため、処理的にも回路的にも複雑になる ・ 対外的に直接アクセスされるのはキャッシュメモリのみとなるため、読み込み・書き込みともに高速化される(全体的にはライトスルー方式よりも高パフォーマンス) ■ キャッシュメモリのマッピング方式 ● ダイレクトマッピング方式 ・ 主記憶装置のすべてのブロックを、キャッシュメモリ上のブロックに直接対応付ける方式 ・ キャッシュメモリの方が総ブロック数(総容量)が少ないため、主記憶装置の総ブロック数を、キャッシュメモリの総ブロック数で除算した剰余が、対応ブロック数となる ● セットアソシアティブ方式 ・ 主記憶装置のブロックを、キャッシュメモリ上の「セット」と呼ばれる、複数のブロックにまとめて対応付ける方式 ・ 主記憶装置の総ブロック数を、キャッシュメモリの総セット数で除算した剰余が、対応ブロック数となる ● フルアソシアティブ方式 ・ 主記憶装置のブロックを、キャッシュメモリの任意のブロックに対応付けることが可能な方式 ■ キャッシュヒット率の計算 ・ Ta = Tc × P + Tm × (1−P) Ta : 平均命令実行時間 Tc : キャッシュメモリアクセス時間 Tm : 主記憶装置アクセス時間 P : キャッシュヒット率(キャッシュメモリ内にアクセス目的のデータが保持されている率) ■ タスク・スケジューリング ・ ラウンドロビン方式 … タスクの要求順にCPU使用権の獲得のための待ち行列を構成し、それぞれのタスクに一定時間のCPU使用権を割り当ててゆく方式 使用権の割り当て時間経過後でも処理が完了していなければ、タスクは待ち行列の最後に移動される(タイムスライス方式) ・ イベントドリブン方式 … 環境の変化といったイベントの発生をトリガーとして、割り込みを発生させて、タスクを実行する方式 マウスのクリック、キーボード入力、タイマ割り込み、ハードディスクへのアクセスなどが該当する ・ 動的優先度方式 … 優先順位を適宜、動的に変化させながら、高優先度のタスクから優先的に実行する方式 低優先度のタスクにCPU使用権が全く割り当てられなくなす「スターベーション」が発生する可能性がある ■ 仮想記憶方式 ● ページング方式(固定長) ・ 仮想記憶のアドレス空間を「ページ」と呼ばれる固定長単位に分割し、このページ単位でアドレス変換を行なう方式 ・ 主記憶から仮想記憶にページを書き出す処理を「ページアウト」と呼ぶ ・ 仮想記憶から主記憶にページを読み込む処理を「ページイン」と呼ぶ ・ 主記憶上に処理の直接の要求に該当するページが存在しないことを「ページフォールト」と呼ぶ ● セグメンテーション方式(可変長) ・ 仮想記憶のアドレス空間を「セグメント」と呼ばれる可変長単位に分割し、このセグメント単位でアドレス変換を行なう方式 ■ 仮想記憶置換方式 ● FIFO(First In First Out)方式 ・ 先に登録されたデータが先に登録から外される方式。一番古いデータから順にページアウトされる ● LRU(Least Recently Used)方式 ・ 不使用経過時間が最も大きいデータが先に登録から外される方式。使用頻度の低いデータから(ほぼ)順にページアウトされる ■ メモリ関連用語 ・ ガーベッジ・コレクション(Garbage Collection) … アプリケーションが、OSから割り当てられた記憶領域のうち無駄な部分を、清算して有効活用すること ・ フラグメンテーション(Fragmentation:断片化) … 事実上使用不可能な小さすぎるメモリ領域のこと。メモリコンパクションにより再配置される ページング方式ではページサイズは固定なので、通常は直接の関連性はない 【情報処理理論】 ■ 論理演算 ・ OR 論理和 0 OR 0 = 0 0 OR 1 = 1 1 OR 0 = 1 1 OR 1 = 1 ・ AND 論理積 0 AND 0 = 0 0 AND 1 = 0 1 AND 0 = 0 1 AND 1 = 1 ・ NOR 否定論理和 0 NOR 0 = 1 0 NOR 1 = 0 1 NOR 0 = 0 1 NOR 1 = 0 ・ NAND 否定論理積 0 NAND 0 = 1 0 NAND 1 = 1 1 NAND 0 = 1 1 NAND 1 = 0 ・ XOR 排他的論理和 0 XOR 0 = 0 0 XOR 1 = 1 1 XOR 0 = 1 1 XOR 1 = 0 ■ 剰余計算 (mod x) ・ a(mod x)= b のとき a = xy + b ( a, b, x, y は整数であり、y は適当な値をとる) ・ aをxで除算した際の剰余がbである ■ べき集合 ・ ある集合 X について、その集合 X の部分集合を全て保有する集合 P(X) を、べき集合と呼ぶ ・ X{a,b,c} ならば P(X){φ,a,b,c,(a,b),(b,c),(c,a),(a,b,c)} が、べき集合 ■ 探索手法 ● 線形探索法 ・ データ表を最初から順に探索する方法。基本的にしらみつぶしに調べることになる ・ 二分探索法、ハッシュ探索法など、他の効率的探索法が適用できないとき(完全なランダム配列表など)に使用される ・ データ表の最後に番兵(番人)を置くことで、無限ループに陥るのを防ぐプログラミング手法がある ・ 平均比較回数 : n/2 回 / 最大比較回数 : n 回 ● 二分探索法 ・ データ表の中央値を探索値と比較。中央値に対する探索値の大小から、探索範囲を1/2に限定。この操作を連続し、探索値を発見する。 ・ 探索対象の要素について、数値的もしくは数値的に置き換え可能な順(数値・文字)であらかじめソートされていることが前提 ・ 平均比較回数 : log(2)n 回 / 最大比較回数 : log(2)n + 1 回 ○ 配列探索法 ・ Arrey[key]=value という配列形式でデータ表を構成することにより、key値を特定すると、value値を即時に特定することが可能な探索法 ・ プログラミング言語上で実現されている機能であり、配列を探索するアルゴリズムは上記に依存する ○ ハッシュ探索法 ・ 探索値を特定するキーがソート不可能な場合(文字列などの場合)に、一定アルゴリズムを持つハッシュ関数により、個々のキーからハッシュ値を決定 ・ このハッシュ値を添字とする配列に、探索値を格納することによって、配列探索を行う ・ awk, perl, tcl などのプログラミング言語では、「連想配列」として実装されている ■ 単位系 ・ 10^(-12)(ピコ) 10^(-9)(ナノ) 10^(-6)(マイクロ) 10^(-3)(ミリ) ・ 10^3(キロ) 10^6(メガ) 10^9(ギガ) 10^12(テラ) ・ MIPS(Million[Mega] Instructions Per Second) : 1秒間あたり100万(1,000,000)ステップの命令演算能力を示す単位 ・ GIPS(Giga Instructions Per Second) : 1秒間あたり10億(1,000,000,000)ステップの命令演算能力を示す単位 ■ PCM(Pulse Code Modulation:パルス符号変調)方式 ・ 音声などのアナログデータを、サンプリングと量子化の過程を経て、デジタルデータに変換する方法 ・ 1秒間に何回の頻度でデジタル数値化するかを表現したものをサンプリング周波数と呼ぶ(44.1kHz であれば 44100回/1秒 の頻度で数値化) ・ デジタル数値化する際の数値にビット数を、量子化ビット数と呼ぶ(16bit であれば 2^16 = 65536 段階の精度で記録することが可能) ・ サンプリング周波数、量子化ビット数の値が大きくなるほど、より精度の高い、より高品質なデジタルデータ化が可能となる 【障害対策】 ■ RAID(Redundant Arrays of Inexpensive Disks) ・ 物理的に複数のハードディスクを並列使用することでデータの記録に対して高速性・冗長性を確保するシステム。内容によって0から5のレベルが存在する。 ・ RAID 0 : ストライピング構成。ディスク数に応じて個々のデータを等分割してディスクに記録。 アクセススピードは向上するが、構成ディスクが1つでも破損するとデータ全体が損失するため、信頼性は低い。 ・ RAID 1 : ミラーリング構成。個々の並列ディスク全てに全く同等のデータを並行記録。1台が破損してもデータは維持される。 ディスク使用効率が低く(物理容量の1/2)、ディスクの追加は常に2台単位となる。 ・ RAID 2 : ストライピング構成(64 bit単位)。ハミングコードと呼ばれるパリティチェックを生成。データとともに分散記録。障害復旧が困難。(実用化されていない) ・ RAID 3 : ストライピング構成(バイト単位)。1台のディスクにハミングコードを記録。他のディスクにデータを分散記録。障害復旧がディスク交換のみで容易。 ・ RAID 4 : ストライピング構成(ブロック単位)。RAID 3 と同じ。(実用化されていない) ・ RAID 5 : ストライピング構成。データともにハミングコードも分散記録。最も普及している方法。 ディスク使用効率が最も高く、ハミングコードによるオーバーヘッドも小さい。ディスク3台から構成可能。1台ずつに追加が可能。 ■ フェイルセーフ(Fail Safe) (安全障害) ・ システムの一部に障害が発生しても、予備系の稼動によって、サービス提供に影響が発生しないようなシステム構成 ・ ホットスタンバイされた予備系による完全な二重構成がされている場合に実現できる ■ フェイルソフト(Fail Soft) (柔軟障害) ・ システムの一部に障害が発生しても、部分的な予備系の稼動により、サービス品質の低下はあるにしても、システムの全面的な停止には至らないシステム構成 ・ 本番系よりも低パフォーマンスの予備系によって二重構成がされている場合にはこれが該当する ■ フォールバック(Fall Back) ・ 通信変復調装置が、通信伝送における回線品質の低下・不良を検知した場合に、該当通信速度よりも低速の通信速度を自動的に設定して、通信可能な状態を維持すること ・ 通常の高速アナログモデムには標準搭載されているが、回線品質の不良・低下の度合いが許容限度を超えると、回線を切断する ■ ホットスタンバイ/コールドスタンバイ ・ 障害時の本番系から予備系への切替え作業が短時間かつ自動で行なえる二重化システムを、ホットスタンバイと呼ぶ ・ 障害時の本番系から予備系への切替え作業に、ある程度の時間のかかる二重化システムを、コールドスタンバイと呼ぶ。システムの起動・複製・切替が手動のものなど ■ フールプルーフ(Fool Proof) (愚行耐性) ・ 人為的なオペレーションミスが発生することを前提に、ミスの発生の事前阻止、ミス発生後の適切な回避処理、警告表示出力などの機能を、システムに組み込むこと ・ プログラムでは、予期せぬ形式(数値・文字列など)・サイズ(過多・過長・範囲外など)の値の入力を、実処理に入る前の段階でチェックする機構は必須である 【データベース】 ■ トランザクション処理(Transaction Processing) ・ 関連する複数の処理を 1 つの処理単位として管理し、処理全体の正常終了または異常終了の整合性を維持する処理形態を、トランザクション処理と呼ぶ ・ 処理結果には、正常終了(全ての処理が正常終了)もしくは、異常終了(1つ以上の処理が異常終了、その他の正常終了した処理の取り消し)のいずれかしか存在しない ・ トランザクション処理を構成する個々の処理が全て正常終了した場合に限り、トランザクション処理としての正常完了とみなす ・ トランザクション処理の結果を正常終了として確定することを「コミット」と呼ぶ ・ トランザクション処理を構成する個々の処理のうち、1つでも異常終了したものが存在する場合には、トランザクション処理としての異常終了とみなす ・ トランザクション処理の結果を異常終了として確定することを「アボード」と呼ぶ ・ トランザクション処理が「アボード」し、かつ、正常終了している他の個々の処理が存在する場合には、それらの処理の取消を行い、処理全体の整合性を維持する ■ ロールバック・ロールフォーワード ・ データベースへのアクセス負荷軽減などのため、データ更新のリクエストを受けても、リアルタイムにはマスターデータベースは更新せず、更新のログのみを記録する ・ リアルタイムでデータベースを更新する場合でも、最低限、コミットされるまでのトランザクション処理については、並行して更新のログを記録する ・ データベース更新処理がトランザクション処理として扱われている場合には、ログへの記録の正常終了をもって、コミット(正常終了の確定)が行われる ・ 一定周期時間、または、データベースアクセスのアイドル時間など(Check Point)をトリガーとして、更新ログをもとにマスターデータベースの更新を行う ・ コミットからCheck Pointまでの間にデータベースに障害が発生した場合には、障害復旧後に、ログをもとにマスターデータベースの更新を行う(ロールフォーワード) ・ コミット前のトランザクション処理が「アボード」した場合には、トランザクション処理中に行った更新について、ログをもとに取消を行う(ロールバック) ■ 3層スキーマ構造 ・ ユーザ・アプリケーションからの論理的アクセスとその独立性を確立する「内部スキーマ」、物理データベース装置へのアクセスとその独立性を確保する「外部スキーマ」、 および、それらを結びつける枠組みとなる「概念スキーマ」の3層をもって、ユーザ・アプリケーションと物理データベース装置との間を構造化表現したもの ユーザ・アプリケーションプログラム | 【外部スキーマ】 … ユーザー・アプリケーションが利用する形態に即してデータを表現するための枠組み ↑ (論理的独立性の確保) ↓ 【概念スキーマ】 … 実世界をデータとして表現するための枠組み。最も抽象性が強い。RDB(Relational Data Base)ではテーブルがこれに相当する ↑ (物理的独立性の確保) ↓ 【内部スキーマ】 … データベースを記憶装置上に配置・記録するための枠組み | データベース ■ オブジェクト指向データベース ・ データと手続きを一体化させたオブジェクトとしてデータベースを構築する手法 ・ カプセル化により内部手続きを隠蔽し、アクセスインターフェースのみを提供 ・ 内部の複雑な処理を意識することなく使用することが可能 ・ 文字や数値のみだけでなく、図形、画像、音声などのデータを扱うことも可能 ・ 必ずしも行列表形式のテーブル型データベースの形式をとっているとは限らない ■ 分散データベースシステム ・ 複数サーバに分散構築されたデータベースでありながら、あたかも単一サーバに構築されているかのような、透過的アクセスが可能であるデータベースシステム ・ アクセス方式や保持する情報の属性に主従関係が存在する垂直分散型と、保持する情報を補完しあうような対等関係をもつ水平分散型に大別される ● 分散データベースシステムの機能要件 ・ 位置に対する透過性 … データが配置されているサーバの物理的ロケーションは、アプリケーション・ユーザーは関知する必要がない ・ 移動に対する透過性 … サーバ間でのデータの移動に関する影響は、アプリケーション・ユーザーは関知する必要がない ・ 分割に対する透過性 … データが複数のサーバに物理的に分割されていたとしても、アプリケーション・ユーザーは関知する必要がない ・ 重複に対する透過性 … データが複数のサーバに重複して配置されていたとしても、アプリケーション・ユーザーは関知する必要がない ・ 障害に対する透過性 … 一部のサーバに障害が発生したとしても、代替サーバによる補完が行われ、サービスの全てが停止しない冗長性がある ・ データモデルに対する透過性 … データのリレーショナルモデル、階層モデルなどがサーバ毎に異なっていたとしても、アプリケーション・ユーザーは関知する必要がない ・ ハードウェア・OSからの独立 … サーバ毎のハードウェア仕様・OSの仕様について、アプリケーション・ユーザーは関知する必要がない ・ ネットワーク環境からの独立 … ネットワークプロトコルや、ネットワーク構成について、アプリケーション・ユーザは関知するする必要がない ・ 整合性の保持 … 複数のサーバ間で、データの整合性が保たれていて矛盾が発生しない ■ ストアド・プロシージャ ・ データベースに対する処理手順のうち、使用頻度の高い形態ものを、プログラム(プロシージャ)としてあらかじめデータベースサーバに用意したもの ・ クライアントから引数の形で処理命令を受け取り、データベースへの処理から得られた結果を、再びクライアントに返送する機能を持つ ・ SQLデータベースの場合には、生のSQL構文をクライアント・サーバ間で送受信する手間を省略できるため、データベースサーバへのネットワークトラフィックが低減する ・ 処理結果により更なる処理が発生するプロセスの場合も、ストアド・プロシージャが一連の作業として処理するため、クライアント・サーバ間の通信回数が減少する ・ ストアド・プロシージャ自体がプリコンパイルされた状態にあるため、通常、レスポンス時間が早くなる ■ デッドロック ・ 複数のプロセスそれぞれが、複数のリソースの中から排他的に1つ以上のリソースを使用するようなシステムを想定する。 ・ 2つ以上のプロセスが、個々のプロセスの完了に必要なリソースを、互いに排他的に保持してしまうことによって、 それぞれのプロセスが、永久に互いのリソースの解放待ちの状態に陥り、事実上、システムが停止状態になることを指す。 ● デッドロックの発生する必要条件 ・ リソースは排他的にプロセスに割り当てられる。他のプロセスにより使用されているリソースは、解放されるまで他のプロセスは使用できない ・ 少なくとも 1 つのリソースを保持したうえで、他のプロセスが保持している他のリソースの解放待ちの状態になることがある ・ リソースは強制的に解放させることはできない。リソースの解放にはプロセスの完了が必須である ・ プロセス 1 はリソース 1 を保持した状態で、プロセス 2 が保持するリソース 2 の解放待ちの状態であり、かつ、プロセス 2 は リソース 1 の解放待ちの状態である ・ プロセスによるリソースの排他的な保持を規定するだけでなく、同一プロセスによって同時に排他的に保持される可能性のある、 関連性のあるリソースを、複数のプロセスに同時に割り当てないという優先順位、排他性を規定することで、デッドロックを回避することは(理論的には)可能である。 ■ 2相ロック ・ 分散データベースシステムにおける複数のデータベース間の更新同期を確保する2相コミットにおいて、複数のデータベースにかけるロックを2層ロックと呼ぶ ・ 同期を確保する必要のあるデータベースサーバすべてのロックを確認できた時点で、各サーバへのコミットの指示を開始する ・ トランザクション処理が獲得するロックの数は単調に増加し、単調に減少する。同一処理において、あるサーバのロック解放後に他のサーバのロックを獲得することはない ■ 再編成・最適化・インデックス・再構成・回復 ● 再編成作業 ・ レコードの追加・削除・更新作業が繰り返されると、データベースの物理的なキー順の整列が崩れたりスペースの使用効率が低下し、検索効率が低下することがある ・ データベースのデータを一度テンポラリスペースに書き出し、物理的なキー順に整列したり、スペースの使用効率を最適化し直す作業を、再編成作業と呼ぶ ● 最適化 ・ データベース操作言語・ SQL(Structured Query Language) の最適化とインデックスの併用により、データベース検索の最適化、効率化、高速化が図られる ・ ルールベース最適化 … あらかじめ定義された優先順位ルールとインデックスに基づいた最適化。 インデックスが存在する場合は無条件で使用されるが、その検索効率への影響は評価しない。(検索効率が低下する場合もある) ・ コストベース最適化 … 事前に作成されたデータベースの統計情報に基づいて、最も効率の良い検索方法を選択。 必ずしもインデックスの使用は選択されない。(全走査検索が選択されることもある)。統計情報がない場合はルールベース最適化となる。 ● インデックス ・ データレコードに含まれる要素(キーワード)に基づいて情報を整理し、要素から元のデータレコードに高速にアクセスできるようにした索引情報 ・ インデックスを作成すると、データの検索の速度は向上するが、インデックスの分、データの追加・更新・削除の速度は低下し、データベースのサイズは増加する ・ データ件数が少ない場合には、インデックスを作成しても必ずしも高速化・効率化がはかられるとは限らない ・ ハッシュ・インデックス … キーワードのハッシュ値に基づいてデータをグループ化し、検索対象の数を絞り込むことで検索を高速化する ・ B(Balance)木・インデックス … データをツリー構造で分類しておき、分類のキーワードにしたがってツリーをたどることによって検索を高速化する ● メタデータ(Meta Data) ・ データに関する情報を構造的に記述したデータのことを、メタデータと呼ぶ ・ 最終的に取得される目的とされるデータに対して、それをデータベースの中から分類・検索する際に用いる、手段となるデータとして位置付けられる ● 再構成作業 ・ ユーザー・業務の要求によりデータベースの構造そのものを変更し、構成しなおす作業を、再構成作業と呼ぶ ● 回復作業 ・ ストレージデバイスの物理的障害や故障により、データベースに破損が生じた場合に、バックアップデータ・ログを元にデータベースを回復する作業を、回復作業と呼ぶ ・ バックアップ取得(もしくはチェックポイント)から障害発生までの、ログによるデータベースの回復作業を、ロールフォーワードと呼ぶ ・ 障害発生からバックアップ取得(もしくはチェックポイント)までの、ログによるデータベースの回復作業を、ロールバックと呼ぶ ■ データウェアハウス(Data Warehouse) ・ データベースに記録・蓄積された企業内情報を、企業活動における意思決定の迅速化などの手段として活用できるように、適宜、分析・加工して管理・提供するシステム ・ 基幹系オンライントランザクションシステムからデータを抽出し、ユーザーフレンドリーな情報として専用サーバに蓄積する ・ クレンジング … 同一データを指示する複数のキーワードが存在する場合の、検索の利便性を向上させる処理、不正なデータの排除など ・ データマイニング … 大量のデータを解析することで、それらの中から、データの持つ法則性や項目間の関連性などを新規に抽出する作業 ・ データマート … 使用目的や使用場所などに応じて、本体のデータウェアハウスから必要なデータのみを抽出したサブデータベース。負荷分散や効率化が目的 ■ ディレクトリサービス ・ ネットワーク上のホスト・プリンタといった資源情報、アクセス権限・メールアドレス・電話番号といったユーザー情報を提供するデータベースサービス ・ クライアント・サーバーモデルで構成され、クライアントからの問い合わせに対して、サーバーが、情報、もしくは、情報が保持されている別のサーバーを応答する ・ 標準プロトコルとしては、X.500 を軽量化し、TCP/IPで動作するようにした LDAP(Lightweight Directory Access Protocol)がある ・ Windows 2000 では Active Directory、Novel では NDS(Novell Directory Service) などが製品化されている ・ ディレクトリサービスによって、ユーザーの詳細管理やネットワークアクセスの透過性を提供するネットワークを、DEN(Directory-Enabled Networks) と呼ぶ ■ SQL ・ リレーショナルデータベースの操作言語の1つ ・ IBMのデータベースの構造化照会言語(Structured Query Language)として開発されたのが起源だが、現在では標準化され、SQLという固有名詞として扱われている ・ データベース操作を抽象化するために開発されたものであるが、各データベースベンダーによって拡張が行われており、ベンダーを越えた単純な移植は困難とされる ● 選択 ・ データベーステーブルから特定の行を取り出す操作 ● 射影 ・ データベーステーブルから特定の列を取り出す操作 ● 結合 ・ 関連する(共通の項目名を持つ、など)複数のデータベースから、1つの結果テーブルを取り出す操作 ● 和 ・ 既に何らかの操作の結果として取り出された、複数の結果テーブル同士を足し合わせて、最終的な結果テーブルを取り出す操作 【プログラミング】 ■ 再帰的処理 ・ 関数・プロシージャが自身の処理の過程で自身を呼び出す処理のこと ・ 個々の呼び出し処理の際に、その呼び出し処理に対応する、局所変数・仮引数・戻り番地がスタックメモリに蓄積される ・ スタックメモリは FILO(Last In First Out) 方式で制御され、最後に蓄積されたデータが必ず最初に取り出される ・ 再帰的処理が過度に連続すると、スタックメモリが容量不足に陥る、スタックオーバーフローが発生することがある ■ オブジェクト指向 ・ オブジェクト … データ、および、それを処理する手続き(メソッド)を1つにまとめたソフトウェアモジュールのこと ・ メソッド … オブジェクトがその内部に持つ、データに対する手続きのこと。データへのアクセスはメソッドのみが可能であり、これをカプセル化と呼ぶ ・ メッセージ … オブジェクト同士が通信するためにプログラム内で授受される情報のこと。イベントメッセージなど ・ クラス … オブジェクトを、共通して持つ性質をもとに分類したもの。「スーパークラス>クラス>サブクラス」の関係がある ・ 汎化 … 複数のクラスに共通する機能や構造、属性をもとに、広義に位置する親クラス(スーパークラス)を定義すること。Generalization ・ 特化 … あるクラスから、特定の機能や構造、属性に着目し、狭義に位置する子クラス(サブクラス)を定義すること。Specialization ・ インスタンス … 実体。あるクラスに属するオブジェクトのこと。スーパークラスから見たクラス、クラスから見たサブクラスもインスタンスである ・ オブジェクト内部の仕様が外部に及ばず、内部構造を意識することなくオブジェクトを呼び出すことができる設計をカプセル化(情報隠蔽)と呼ぶ ・ プログラムの構造化、パッケージ化、更新利便性の向上といったメリットがある一方で、オーバーヘッドが大きくなるという傾向がある ■ API (Application Program Interface) ・ OS、ミドルウェアレベルのプラットフォーム向けのアプリケーションを開発する際に利用可能な命令・関数の集合、または、それらを利用する際の規約・手続き ・ プラットフォームレベルで処理される共通性の高い命令・関数は、APIにしたがってプログラムから呼び出せるため、プログラムの開発工程を簡略化することが可能 ・ オブジェクト指向の開発モデルの一環 ■ WWW系 ・ アプレット (Applet) … 本来は小さなアプリケーションプログラムの意味。 ブラウザ経由でサーバからダウンロードして実行される、Javaなどのモジュール化されたプログラムのこと ・ サーブレット(Servlet) … Webサーバ上で実行される、主にJavaでコーディングされたモジュール化プログラム OSへの依存がなく、サーブレットAPIを実装したすべてのWebサーバ上で稼動させることが可能 通常のCGIと異なり、ロード後にメモリに常駐するので高速処理が可能 ・ スクリプト (Script) … 機械語への変換作業を省略して実行させることが可能な簡易プログラム言語によって記述されたコード Perl、VB Script、Java Script、マクロ、シェルスクリプト、バッチファイルなどが該当する ・ スレッド (thread) … マルチスレッドOSにおいて疑似並行処理を実現する際の、プログラムの処理単位 同一プロセス内で実行されるスレッド同士は、メモリ資源などを共有するため、スレッド間のデータ転送は比較的容易となる ■ エージェント(Agent) ・ データ、その処理手続き、知識ベースを保持し、自ら行なうべき処理を判断して、自律的に動作することができるソフトウェア・モジュール 【電気通信関連法規】 ■ 電気通信事業法 ・ 電気通信業務、および、それに関わる電気通信事業者の位置付け、定義、義務、活動範囲などを法的に既定。総務省管轄。総務大臣が許認可を担当する ・ 第一種電気通信事業(電気通信回線設備を自ら設置し、電気通信役務を提供する事業)、第二種電気通信事業(それ以外)に大別される ・ 特別第二種電気通信事業(第二種通信事業に準ずるが、不特定かつ多数の利用を対象としたもの)、一般第二種電気通信事業 ● 主な義務規定 ・ 検閲の禁止、秘密の保護、利用の公平、重要通信の確保(総務省令による)、料金の掲示義務、提供の義務、業務停止・秘密漏洩・重大事故の報告義務 接続請求への応諾、電気通信設備の維持、技術基準適合、電気通信番号の基準適合 ・ 電気通信主任技術者の選任、工事担任者による工事の実施と監督(利用者が端末設備を設置する場合) ・ 他者の土地の使用権消滅時の原状回復 ● 総務大臣の認可が必要な事項 ・ 事業の開始、名称の変更、役務種類の変更、業務の委託、法の人譲渡・分割・合併・相続、業務の休止・廃止、料金の設定、契約約款の設定、事業者間の接続協定の設定 電気通信設備の機能変更・追加、電気通信設備の共用に関する協定、外国政府との協定、電気通信主任技術者の選任、端末機器技術基準適合認定 ・ 電気通信主任技術者試験・工事担任者試験の実施機関の指定、技術基準適合認定機関の指定 ・ 線路確保のための土地の一時的利用権の取得、線路の測量・調査・工事・維持のための他者の土地への立ち入り・通行、線路に対する障害回避のための植物伐採・移植 ・ 水底線路の保護のための区域設定 ● 総務大臣が裁定する事項 ・ 線路確保のための土地の一時的利用権の取得に関する裁定 ・ 使用権が設定された土地の所有者による線路移設の要求に関する裁定 ● 総務大臣・都道府県知事の認可が必要な事項 ・ 線路設置のための他者の土地の使用権に関する協議の要求 ・ 公共水面への水底線路の敷設(届出のみ、加えて農林水産大臣) ● 都道府県知事が裁定する事項 ・ 線路の測量・調査・工事・維持のための他者の土地への立ち入り・通行、および、線路に対する障害回避のための植物伐採・移植によって生じた損失補償の要求に関する裁定 ・ 水底線路の保護区域内での漁業権の取消・変更・行使停止