問題 1
ルータの経路表に次の経路がある。経路選択には最長一致を用いる。
10.0.0.0/8 → 出口A
10.20.0.0/16 → 出口B
10.20.30.0/24 → 出口C
0.0.0.0/0 → 出口D
宛先IPv4アドレス10.20.30.45のパケットを転送する出口はどれか。 出口A 出口B 出口C 出口D
解説を見る
宛先は/8、/16、/24、デフォルト経路の全てに一致する。その中でプレフィックス長が最も長く、最も具体的なのは10.20.30.0/24なので出口Cを選ぶ。経路表の記載順や、より広い/8を優先するのではない。
次へ 問題 2
200MBのファイルを100Mbpsの回線で送る。回線利用率は80%で一定とし、 1MB=10^6バイト、1バイト=8ビットとする。ヘッダ、再送、伝搬遅延は無視する。
ファイルの転送に必要な時間は何秒か。 2秒 16秒 20秒 25秒
解説を見る
実効転送速度は100Mbps×0.8=80Mbpsである。200MBは1,600Mbitなので、転送時間は1,600Mbit÷80Mbps=20秒となる。16秒は利用率を考えない値であり、25秒は求めた20秒をさらに0.8で割って利用率を二重に反映した値である。
次へ 問題 3
同一IPv4サブネット上の端末Pが端末Qへ初めてパケットを送る。PはQのIPv4アドレスを 知っているが、対応するMACアドレスはARPキャッシュにない。
PがQのMACアドレスを得る基本的な手順として適切なものはどれか。 PがQのIPv4アドレスを含むARP要求をLANへブロードキャストし、Qが自身のMACアドレスを含むARP応答を返す Pが未知のQのMACアドレス宛てにARP要求をユニキャストし、Qが応答をブロードキャストする PがデフォルトゲートウェイだけへARP要求を送り、同一サブネットのQにも常にゲートウェイのMACアドレスを使う PがDNSへQのMACアドレスを問い合わせ、DNSから得た値をARPキャッシュへ登録する
解説を見る
ARP要求は「このIPv4アドレスを持つ端末のMACアドレス」を同一LANへブロードキャストで尋ねる。該当するQは自身のMACアドレスを含むARP応答をPへ返す。宛先MACアドレスが未知なので最初からQへユニキャストできず、同一サブネットの通信でゲートウェイのMACアドレスを使う必要もない。
次へ 問題 4
端末間で短い音声データを連続送信する。利用できるトランスポートプロトコルはTCPかUDPに限る。 アプリケーションは一部の欠落を許容でき、古いデータの再送より到着の遅れを小さくすることを優先する。
この要件に適する選択と理由はどれか。 TCP。接続を確立せず、失われたデータを再送しないから TCP。UDPよりヘッダが常に小さく、到着順も保証しないから UDP。配送や順序を保証せず、再送をトランスポート層で行わないから UDP。失われたデータを必ず自動再送し、順序どおりに届けるから
解説を見る
この条件では欠落の完全な回復より低遅延を優先するため、配送や順序を保証せず、トランスポート層で再送しないUDPが適する。TCPは信頼性のある順序付き配送のため損失時に再送するので、古い音声の到着が遅れる可能性がある。
次へ 問題 5
example.jp宛ての電子メールを配送するため、送信側メールサーバがDNSを参照する。
example.jpのメールを受け取るメール交換サーバを示すDNS資源レコードはどれか。 Aレコード CNAMEレコード PTRレコード MXレコード
解説を見る
MXレコードは、対象ドメイン宛てのメールを受け取るメール交換サーバを示す。Aレコードはホスト名に対応するIPv4アドレス、CNAMEは別名に対する正規名、PTRは主に逆引きで用いる名前を示す。
次へ 問題 6
部署表Departmentsにはdept_idが10と20の行だけがあり、dept_idは主キーである。 社員表Employeesのdept_idはNULLを許さない外部キーで、Departments(dept_id)を参照する。 制約の検査は挿入時に直ちに行う。
Employeesへdept_id=30の社員を挿入しようとした結果はどうなるか。 部署30がDepartmentsへ自動作成され、挿入は成功する 参照先に部署30が存在しないため、外部キー制約に違反して挿入は拒否される Employeesのdept_idが自動的にNULLへ変わり、挿入は成功する 外部キー列は重複禁止なので、部署30の有無にかかわらず挿入は拒否される
解説を見る
非NULLの外部キー値30は、参照先Departmentsのdept_idに存在しなければならない。部署30がないため参照整合性を満たさず、挿入は拒否される。外部キーは参照先の行を自動作成せず、また複数の社員が同じ部署を参照することは通常許される。
次へ 問題 7
Scores表には次の行がある。
(dept, score)
(D01, 70), (D01, 90), (D02, 80), (D02, 100), (D03, 75)
次のSQL文を実行する。
SELECT dept, AVG(score) AS avg_score
FROM Scores
GROUP BY dept
HAVING AVG(score) >= 80
ORDER BY dept;
問合せ結果はどれか。 (D01, 80) の1行 (D01, 80)、(D02, 90) の2行 (D02, 90) の1行 (D01, 70)、(D01, 90)、(D02, 80)、(D02, 100) の4行
解説を見る
GROUP BYで部署ごとにまとめると、平均はD01が80、D02が90、D03が75となる。HAVINGは集約後のグループへAVG(score)≧80を適用するため、D01とD02の2行がdept順で返る。個々のscoreが80以上の行を選ぶWHERE条件ではない。
次へ 問題 8
一つのトランザクションで口座Aから3,000円を減額し、口座Bへ3,000円を加算する。 Aの減額後、Bの加算前に障害が発生した。
ACID特性を満たす処理と、その根拠となる特性の組合せはどれか。 Aの減額を取り消して両口座を処理前へ戻す――原子性 Aの減額だけを確定する――一貫性 Bへの加算を二回実行する――独立性 障害が直るまでAの減額だけを他の利用者へ公開する――永続性
解説を見る
二つの更新は一つのトランザクションなので、全て成功するか全て取り消す必要がある。Bへの加算前に失敗した場合、Aの減額もロールバックして途中状態を残さないのが原子性である。永続性はコミット済み結果を障害後も保持する性質であり、途中結果の確定を認めるものではない。
次へ 問題 9
トランザクションT1は資源Xを専有ロックした後、資源Yの専有ロックを要求した。 同時にT2は資源Yを専有ロックした後、資源Xの専有ロックを要求した。 ロックはトランザクション終了まで解放されない。
この時点の状態と代表的な解消方法の組合せはどれか。 ライブロックであり、両方のロックを共有ロックへ自動変換する デッドロックであり、一方のトランザクションを中止してロックを解放する ダーティリードであり、両方の未確定データを直ちにコミットする スタベーションであり、二つのトランザクションを永久に待機させる
解説を見る
T1はT2が保持するYを待ち、T2はT1が保持するXを待つため循環待ちとなり、どちらも進めないデッドロックである。DBMSは代表的にはこれを検出し、一方を中止してロックを解放する。単なる待ち時間の長さではなく、待ち関係が循環している点が判断根拠になる。
次へ 問題 10
Orders表のcreated_at列に対して、ある開始日時以上かつ終了日時未満の行を頻繁に検索する。 created_atは更新時にも変更されることがある。
索引方式と運用上の特徴の組合せとして最も適切なものはどれか。 B-tree索引。順序を利用した範囲検索に適するが、更新時には索引保守の負荷が加わる ハッシュ索引。大小関係を利用した範囲検索に最適で、更新時の索引保守は発生しない 転置索引。日時の大小比較専用で、表の行数に関係なく必ず一定時間で検索できる 索引を作らない。範囲条件では必ず全件走査の方が速く、統計情報を考慮する必要もない
解説を見る
B-tree索引はキーの順序を利用できるため、日時の大小比較や範囲条件に適する。一方、行の追加・削除や索引列の更新では索引も保守する必要がある。実際に索引を使うかは表の大きさや選択率、統計情報などを基にオプティマイザが判断するため、常に最速とは限らない。
結果を見る