トップ画像
P4_16 Language Specification (v1.2.5) の非公式日本語訳プロジェクトの開始

執筆者: ごま

最終更新: 2025/10/21

P4_16 Language Specification (v1.2.5) の非公式日本語訳プロジェクトの開始

はじめに

おひさしぶりです、ごまです。今回は、P4_16 Language Specification (v1.2.5)非公式日本語訳プロジェクトを開始させていただいたことに関するお知らせとして、本記事を書かせていただきました。

公開中のWebページ

実際のWebページはこちらから見ることができます。

https://p4-jp-community.github.io/p4-16-spec-jp/

P4とは

P4はProgramming Protocol-independent Packet Processorsの略であり、ネットワークにおけるスイッチ等のデバイスのデータプレーンに対するプログラミングを行うためのドメイン固有言語 (DSL: Domain-Specific Language) です。データプレーンというのはスイッチ等がパケットを受け取った際、転送や加工を実行する部分を指します(厳密な定義ではありませんが......)。

従来はベンダーがあらかじめ用意した固定的な機能に従うのが一般的でしたが、P4を用いることによりネットワークエンジニアや開発者が装置のパケット処理自体を独自に記述することができます。これによって、独自プロトコルの実装やトンネリングなどを柔軟に行うことが可能になります。

P4にはP4_14P4_16の2つのバージョンが存在しますが、本プロジェクトは主にP4_16の仕様書の翻訳を対象としています。

プロジェクトの目的

正直に言ってしまうと、P4_16の仕様書は専門用語を多く含んだ英語で書かれているため、読めなくはないのですが毎回見返そうと思うとなかなか大変です。そのため、開発の最中になるべく楽に仕様を参照できるようにすることを目的として本プロジェクトを立ち上げました。だいぶ後ろ向きな理由ではあります......。

翻訳対象

現時点では、2024年10月11日にThe P4 Language Consortiumによって公開された、P4_16 Language Specification (v1.2.5)を翻訳の対象として考えております。このドキュメントが含まれているリポジトリは現時点(2025年10月11日)ではApache-2.0 licenseのもとで公開されているため、翻訳版も同じライセンスで公開しております。

参加方法

本プロジェクトはGitHubのリポジトリ上で進めており、どなたでも参加可能です。現時点では細かい作業フロー等が確立されておらず恐縮ですが、もし興味をお持ちの方がいらっしゃいましたら、遠慮なくリポジトリのIssueやPull Requestの作成等を通じてご参加ください。

使用している技術

私自身が個人的にMarkdown形式でのドキュメント管理に慣れていることもあり、本プロジェクトでは元のドキュメント(Madoko形式)を複数のMarkdownファイルに分割して管理しております。Webページの生成は、Markdownをソースとしてサイトを生成できるMkDocsを利用して行っています。

Webページの冒頭

ホスティングはGitHub Pagesを利用しており、リポジトリのmainブランチにpushが行われるたびにGitHub Actionsを用いて自動的にサイトがビルド・デプロイされるようになっています。

ただ、このあたりのフローも特に確立されているわけではないため、今後また異なる手法を採用していく可能性もあります。

既知の課題・問題点

現時点では、以下のような課題・問題点が存在しています。

  • 図表の破損: Madoko形式からMarkdown形式への変換において、図の画像パスへのリンクがうまく解決されなかったり、表の変換がうまく行かなかったことにより、図表が正しく表示されていない箇所があります。このあたりは現状手動で修正を行っていく必要があると考えております。
  • 相互リンク等の破損: こちらもMarkdownファイルとして分割するにあたって、各ヘッダーへのリンク等が正しく解決されなかったり、そもそも各ファイルに正しくヘッダーが含まれていなかったりするという問題があります。こちらも手動で修正を行っていく必要があると考えております。
  • 翻訳の品質: 私一人で翻訳を行っているため、専門用語の訳出や文章の自然さ等に関して、まだまだ改善の余地があると考えております。もし可能であれば、他のP4に詳しい方々にもレビュー等でご協力いただけると大変助かります。

おわりに

以上が、P4_16 Language Specification (v1.2.5) の非公式日本語訳プロジェクトの開始に関するお知らせとなります。P4に興味をお持ちの方や、翻訳プロジェクトに参加してみたい方がいらっしゃいましたら、ぜひお気軽にご参加ください。

リンク

取得に失敗しました

2022年度 入部

GitHub