azの書き捨て

一般美少女社会人の穏やかな生活

非同期ドキドキ通信

この記事は、 大阪工業大学 Advent Calendar 2023の23日目(遅刻)の記事です。

 

正直全然書く気はなかったんだが、アドカレ主催に書けと言われたので書く。

といっても、仕事で扱っている技術詳細や設計方針等はさすがにしゃべり散らすわけにはいかないため、個人的に書籍を読んでいて知ることとなった(おそらく今はほぼないと思われる?)技術について、通信があまり詳しくない人間でも簡単に書いてみたいと思う。

が、個人的に全く詳しくないので嘘を書いている可能性がかなり高い。ふんわりとこんなのあるんだな程度に認識下されば幸いだ。ちなみにほぼ役に立たない知識だと思うので忘れてもらっても結構である。

 

今回はATMの話。

Asynchronous Transfer Mode(直訳:非同期転送モード)という通信方式がおおよそ2000年ごろ考えられていた。IP通信が確立されたのが1980年代だという。無線電話網の3Gが導入され始めたのも2000年ごろのようだ。

 

基本情報試験等で現代ネットワークの仕組みについて触れたことのある方ならなんとなくわかるかもしれないが、IPプロトコルでは経路選択にIPアドレスを用いており、内包されるネットワーク部・ホスト部という「可変長」なパラメータで経路を計算し、パケットをどこから投げるか決定している。

で、TCP/IP通信ではパケットサイズは可変長となる。いっぺんに送れるサイズをいい感じに制御してくれる仕組みがあるし、ヘッダ自体もオプション等でいろいろと変わる。

 

この「可変」というものがマシン側からしたらやっかいで、可変なビット列から必要な情報の位置を特定・抽出するには沢山cpuに処理させる必要がある。論理積をとったり、別パラメータから必要パラメータの位置を計算するといった手順を踏んで、ようやっとパケットを送付することができるようになる。

 

じゃあ、可変じゃなきゃいいんじゃないの?毎回送られてくるデータの大きさが一定で、ほしいパラメータがかならず同じ場所にあれば決め打ちで値を拾えて楽なんじゃないの?という思想が反映されたのがATMという通信方式である。

ATMは毎回かならず53バイトぶんのセルと呼ばれる単位の情報を射出する(ヘッダ5バイト/データ48バイト)。ヘッダの仕様もビット単位で定められており、可変となる余地がないため、専用ハードウェアを構築すれば超高速で処理・解釈・転送できるよねという話である。また53バイトというサイズは1ツイートもできないくらいめっちゃちっちゃいので、音声電話のような高速・低遅延が必要な場面において活躍する、はずだった。

しかし、専用ハードウェアは高価すぎて一般には普及せず、ほかにもうまく能力を引き出せなかったなどで、今ではほぼ使われていないらしい。しかし、設計思想についてはMPLSという技術に継承され、そちらは現在でもバリバリ利用されている。

 

すみません。簡単な記事になってしまった。

興味のある方はぜひ調べてほしい。

 

また来世。