ソケットとは? わかりやすく解説

Weblio 辞書 > 同じ種類の言葉 > 文化 > 道具 > 器具 > ソケットの意味・解説 

socket

別表記:ソケット

「socket」とは・「socket」の意味

「socket」は、日本語で「ソケット」あるいは「差込口」と訳されることが多い。電気製品におけるプラグ差し込む部分や、コンピューターネットワーク通信におけるエンドポイントを指すことが多い。また、工具においてはボルトナットを回すための工具一部を指すこともある。

「socket」の発音・読み方

「socket」の発音は、IPA表記では /ˈsɒkɪt/ となる。IPAカタカナ読みでは「サキット」となる。日本人発音するカタカナ英語では「ソケット」と読む。発音によって意味や品詞が変わる単語ではない。

「socket」の定義を英語で解説

A socket is a device or point in a system where an electrical device can be plugged in or a tool can be inserted. In the context of computer networking, a socket is an endpoint in a communication.

「socket」の類語

「socket」の類語としては、「outlet」や「receptacle」がある。これらも電気製品プラグ差し込む部分を指す言葉である。ただし、「outlet」は主にアメリカ英語で、「receptacle」は少し古風な表現である。

「socket」に関連する用語・表現

「socket」に関連する用語としては、「plug」がある。これは「socket」に差し込む部分を指す。また、コンピューターネットワーク通信における「socket」に関連しては、「IP address」や「port number」がある。これらは「socket」を特定するための情報である。

「socket」の例文

以下に「socket」を用いた例文10個示す。 1. English: The lamp is plugged into the socket.
日本語訳: ランプはソケットに差し込まれている。 2. English: The socket wrench is used to tighten the bolts.
日本語訳: ソケットレンチボルト締めるために使われる。 3. English: The socket is designed for a two-pin plug.
日本語訳: そのソケットは2ピンプラグ用に設計されている。 4. English: The server creates a socket and listens for incoming connections.
日本語訳: サーバーはソケットを作成し着信接続待ち受ける。 5. English: The socket is located behind the desk.
日本語訳: ソケットはデスク後ろ位置している。 6. English: The socket is not working properly.
日本語訳: ソケットが正常に動作していない。 7. English: The socket provides a connection to the electrical grid.
日本語訳: ソケットは電力網への接続提供する。 8. English: The socket is used to connect the device to the power supply.
日本語訳: ソケットはデバイス電源接続するために使用される。 9. English: The socket accepts a three-pronged plug.
日本語訳: そのソケットは3本ピンプラグ受け入れる。 10. English: The socket is part of the computer's hardware.
日本語訳: ソケットはコンピュータハードウェア一部である。

ソケット【socket】

読み方:そけっと

器具などはめ込むためのくぼみ。受け口

電球蛍光灯などを差し込むときの受け口となる、コード先端部の器具

コンピューターCPUメモリー基板などに取り付けるための受け口


ソケット

TCP/IPネットワーク内のトランスポート層上でプロセス間通信によるデータ送受信を行うアプリケーション作成するための、アプリケーションプログラミングインターフェース。Windows環境では、Winsockというソケット規格が有名。

関連用語


ソケット関数

導入

ソケット拡張モジュールは、一般的な BSD ソケットに基づくソケット通信に関する低レベルインターフェースを実装し、 クライアントだけでなく、 ソケットサーバとして動作させることが可能となります。
より一般的なクライアントサイドのソケットインターフェースについては、 stream_socket_client()stream_socket_server()fsockopen() および pfsockopen() を参照ください。
ここで説明するソケット関数を使用する場合、多くの関数は C 言語に同じ名前の関数が存在しますが、 しばしば定義が異なっていることに注意してください。 混乱を避けるには、説明をよく読んでください。
このようにソケットプログラミングと異なっている点はありますが、 それでも有用な多くの Unix man ページを参照することができます。 Web 上に C 言語のソケットプログラミングのチュートリアル情報が存在し、 その多くは、若干の修正により、 PHP におけるソケットプログラミングに適用することが可能です。 » Unix Socket FAQ が、 手始めとして適しているでしょう。
注意: この拡張モジュールは » PECL レポジトリに移動 されており、以下のバージョン以降 PHP にバンドルされなくなっています。 PHP 5.3.0.

要件

外部ライブラリを必要としません。

インストール手順

ここに既述されたソケット関数は PHP 拡張モジュールの一部であり、 コンパイル時に configure にオプション --enable-sockets を指定することにより 使用可能となります。
注意: IPv6 サポートは PHP 5.0.0 で追加されました。

実行時設定

設定ディレクティブは定義されていません。

リソース型

リソース型は定義されていません。

定義済み定数

以下の定数が定義されています。 この関数の拡張モジュールが PHP 組み込みでコンパイルされているか、 実行時に動的にロードされている場合のみ使用可能です。
AF_UNIX (integer)
AF_INET (integer)
AF_INET6 (integer)
SOCK_STREAM (integer)
SOCK_DGRAM (integer)
SOCK_RAW (integer)
SOCK_SEQPACKET (integer)
SOCK_RDM (integer)
MSG_OOB (integer)
MSG_WAITALL (integer)
MSG_PEEK (integer)
MSG_DONTROUTE (integer)
SO_DEBUG (integer)
SO_REUSEADDR (integer)
SO_KEEPALIVE (integer)
SO_DONTROUTE (integer)
SO_LINGER (integer)
SO_BROADCAST (integer)
SO_OOBINLINE (integer)
SO_SNDBUF (integer)
SO_RCVBUF (integer)
SO_SNDLOWAT (integer)
SO_RCVLOWAT (integer)
SO_SNDTIMEO (integer)
SO_RCVTIMEO (integer)
SO_TYPE (integer)
SO_ERROR (integer)
SOL_SOCKET (integer)
PHP_NORMAL_READ (integer)
PHP_BINARY_READ (integer)
SOL_TCP (integer)
SOL_UDP (integer)

ソケットのエラー

ソケット拡張モジュールは、 強力な BSD ソケットへの有用なインターフェースを提供するために作成されました。 関数は、Win32 および Unix の実装において等しく動作するように注意が払われています。 ソケット関数の多くは特定の条件で失敗し、エラーを記述する E_WARNING メッセージを出力します。 これは、時々開発者が望まない時に発生することがあります。例えば、 関数 socket_read() は突然 E_WARNING メッセージを出力する可能性があります。 これは、予測しない接続断が発生したためです。 @ 演算子により警告出力を抑制し、 socket_last_error() 関数によりアプリケーション内でエラーコードを取得することが一般に行われています。 エラーを記述する文字列を取得するためにこのエラーコードを指定して socket_strerror() 関数をコールすることが可能です。 詳細は、この関数の説明を参照してください。
注意: E_WARNING メッセージは、 ソケット拡張モジュールにより英語で生成されますが、取得されるエラーメッセージは、 現在のロケール (LC_MESSAGES) に依存します。 Warning - socket_bind() unable to bind address [98]: Die Adresse wird bereits verwendet

例 2147. ソケットの例: 簡易 TCP/IP サーバ
この例は、簡単な応答サーバです。変数 addressport を設定と実行環境に合うように変更してください。 このサーバに次のようなコマンドで接続することが可能です。 : telnet 192.168.1.53 10000 (ただし、 アドレスとポートは設定に合わせます)入力したものは、サーバ側の出力となり、 エコーバックされます。接続を閉じるには、'quit' を入力します。
#!/usr/local/bin/php -q
<?php
error_reporting(E_ALL);

/* Allow the script to hang around waiting for connections. */
set_time_limit(0);

/* Turn on implicit output flushing so we see what we're getting
 * as it comes in. */
ob_implicit_flush();

$address = '192.168.1.53';
$port = 10000;

if (($sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) === false) {
   echo "socket_create() failed: reason: " . socket_strerror(socket_last_error()) . "\n";
}

if (socket_bind($sock, $address, $port) === false) {
   echo "socket_bind() failed: reason: " . socket_strerror(socket_last_error($sock)) . "\n";
}

if (socket_listen($sock, 5) === false) {
   echo "socket_listen() failed: reason: " . socket_strerror(socket_last_error($sock)) . "\n";
}

do {
   if (($msgsock = socket_accept($sock)) === false {
       echo "socket_accept() failed: reason: " . socket_strerror(socket_last_error($sock)) . "\n";
       break;
   }
   /* Send instructions. */
   $msg = "\nWelcome to the PHP Test Server. \n" .
       "To quit, type 'quit'. To shut down the server type 'shutdown'.\n";
   socket_write($msgsock, $msg, strlen($msg));

   do {
       if (false === ($buf = socket_read($msgsock, 2048, PHP_NORMAL_READ))) {
           echo "socket_read() failed: reason: " . socket_strerror(socket_last_error($msgsock)) . "\n";
           break 2;
       }
       if (!$buf = trim($buf)) {
           continue;
       }
       if ($buf == 'quit') {
           break;
       }
       if ($buf == 'shutdown') {
           socket_close($msgsock);
           break 2;
       }
       $talkback = "PHP: You said '$buf'.\n";
       socket_write($msgsock, $talkback, strlen($talkback));
       echo "$buf\n";
   } while (true);
   socket_close($msgsock);
} while (true);

socket_close($sock);
?>


例 2148. ソケットの例: 簡易 TCP/IP クライアント
この例は、簡単な一回限りの HTTP クライアントです。ここでは、 あるページに接続して HEAD リクエストを送信し、応答を出力た後で終了します。
<?php
error_reporting(E_ALL);

echo "<h2>TCP/IP Connection</h2>\n";

/* Get the port for the WWW service. */
$service_port = getservbyname('www', 'tcp');

/* Get the IP address for the target host. */
$address = gethostbyname('www.example.com');

/* Create a TCP/IP socket. */
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if ($socket === false) {
   echo "socket_create() failed: reason: " . socket_strerror(socket_last_error()) . "\n";
} else {
   echo "OK.\n";
}

echo "Attempting to connect to '$address' on port '$service_port'...";
$result = socket_connect($socket, $address, $service_port);
if ($result === false) {
   echo "socket_connect() failed.\nReason: ($result) " . socket_strerror(socket_last_error($socket)) . "\n";
} else {
   echo "OK.\n";
}

$in = "HEAD / HTTP/1.1\r\n";
$in .= "Host: www.example.com\r\n";
$in .= "Connection: Close\r\n\r\n";
$out = '';

echo "Sending HTTP HEAD request...";
socket_write($socket, $in, strlen($in));
echo "OK.\n";

echo "Reading response:\n\n";
while ($out = socket_read($socket, 2048)) {
   echo $out;
}

echo "Closing socket...";
socket_close($socket);
echo "OK.\n\n";
?>


目次

socket_accept — ソケットへの接続を許可する
socket_bind — ソケットに名前をバインドする
socket_clear_error — ソケットのエラーまたは直近のエラーコードをクリアする
socket_close — ソケット記述子を閉じる
socket_connect — ソケット上の接続を初期化する
socket_create_listen — 接続を受けつけるためにポートにソケットをオープンする
socket_create_pair — 区別できないソケットの組を作成し、配列に保存する
socket_create — ソケット(通信時の終端)を作成する
socket_get_option — ソケットのオプションを取得する
socket_getpeername — 指定したソケットのリモート側に問い合わせ、その型に応じて ホスト/ポート、あるいは Unix ファイルシステムのパスを返す
socket_getsockname — 指定したソケットのローカル側に問い合わせ、その型に応じて ホスト/ポート、あるいは Unix ファイルシステムのパスを返す
socket_last_error — ソケットの直近のエラーを返す
socket_listen — ソケット上で接続待ち(listen)する
socket_read — ソケットから最大バイト長まで読みこむ
socket_recv — 接続したソケットからデータを受信する
socket_recvfrom — 接続しているかどうかによらず、ソケットからデータを受信する
socket_select — 与えられたソケットの配列に対し、指定した有効時間で select() システムコールを実行する
socket_send — 接続したソケットにデータを送信する
socket_sendto — 接続しているかどうかによらずソケットにメッセージを送信する
socket_set_block — ソケット記述子をブロックモードに設定する
socket_set_nonblock — ソケット記述子を非ブロックモードに設定する
socket_set_option — ソケットのオプションを設定する
socket_shutdown — 受信、送信、または送受信用のソケットをシャットダウンする
socket_strerror — ソケットエラーの内容を文字列として返す
socket_write — ソケットに書き込む

ソケット socket


ソケット


ソケット

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/08/15 18:09 UTC 版)

ソケット (socket)




「ソケット」の続きの解説一覧

ソケット

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/09/15 14:43 UTC 版)

ファイル記述子」の記事における「ソケット」の解説

connect() bind() listen() accept(): 接続要求から新たなソケットファイル記述子生成する。 getsockname() getpeername() getsockopt(), setsockopt() shutdown(): 全二重接続一方または両方切断する

※この「ソケット」の解説は、「ファイル記述子」の解説の一部です。
「ソケット」を含む「ファイル記述子」の記事については、「ファイル記述子」の概要を参照ください。


ソケット

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/02/17 03:53 UTC 版)

UNIXファイルタイプ」の記事における「ソケット」の解説

ソケット(UNIXドメインソケット)は、プロセス間通信使用される特別ファイルであり、2つプロセス間の通信可能にする。プロセスUNIXドメインソケットを介してデータ送信だけでなく、sendmsg() and recvmsg()システムコール使用してファイル記述子送信することができる。 一方向データフローのみしか使用できない名前付きパイプとは異なり、ソケットは完全に双方向通信である。 名前付きパイプは、モード文字列の1文字目にsが表示される。 srwxrwxrwx /tmp/.X11-unix/X0

※この「ソケット」の解説は、「UNIXファイルタイプ」の解説の一部です。
「ソケット」を含む「UNIXファイルタイプ」の記事については、「UNIXファイルタイプ」の概要を参照ください。

ウィキペディア小見出し辞書の「ソケット」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ

「ソケット」の例文・使い方・用例・文例

Weblio日本語例文用例辞書はプログラムで機械的に例文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。



ソケットと同じ種類の言葉


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「ソケット」の関連用語

ソケットのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



ソケットのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
実用日本語表現辞典実用日本語表現辞典
Copyright © 2024実用日本語表現辞典 All Rights Reserved.
デジタル大辞泉デジタル大辞泉
(C)Shogakukan Inc.
株式会社 小学館
アライドテレシス株式会社アライドテレシス株式会社
Copyright(c)2024 Allied Telesis K.K. All Rights Reserved.
PHP Documentation GroupPHP Documentation Group
Copyright © 1997 - 2024 by the PHP Documentation Group.
ダイキン工業ダイキン工業
Copyright (C) 2024 DAIKIN INDUSTRIES, ltd. All Rights Reserved.
大光電機大光電機
Copylight 2024.DAIKO ELECTRIC CO.,LTD.All rights reserved.
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのソケット (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのファイル記述子 (改訂履歴)、UNIXファイルタイプ (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。
Tanaka Corpusのコンテンツは、特に明示されている場合を除いて、次のライセンスに従います:
 Creative Commons Attribution (CC-BY) 2.0 France.
この対訳データはCreative Commons Attribution 3.0 Unportedでライセンスされています。
浜島書店 Catch a Wave
Copyright © 1995-2024 Hamajima Shoten, Publishers. All rights reserved.
株式会社ベネッセコーポレーション株式会社ベネッセコーポレーション
Copyright © Benesse Holdings, Inc. All rights reserved.
研究社研究社
Copyright (c) 1995-2024 Kenkyusha Co., Ltd. All rights reserved.
日本語WordNet日本語WordNet
日本語ワードネット1.1版 (C) 情報通信研究機構, 2009-2010 License All rights reserved.
WordNet 3.0 Copyright 2006 by Princeton University. All rights reserved. License
日外アソシエーツ株式会社日外アソシエーツ株式会社
Copyright (C) 1994- Nichigai Associates, Inc., All rights reserved.
「斎藤和英大辞典」斎藤秀三郎著、日外アソシエーツ辞書編集部編
EDRDGEDRDG
This page uses the JMdict dictionary files. These files are the property of the Electronic Dictionary Research and Development Group, and are used in conformance with the Group's licence.

©2024 GRAS Group, Inc.RSS