perl IO Socket模組簡單例項

2021-09-21 19:33:47 字數 1244 閱讀 6728

socket的英文原義是「孔」或「插座」。作為4bds unix的程序通訊機制,取後一種意思。通常也稱作"套接字",用於描述ip位址和埠,是乙個通訊鏈的控制代碼。在internet上的主機一般執行了多個服務軟體,同時提供幾種服務。每種服務都開啟乙個socket,並繫結到乙個埠上,不同的埠對應於不同的服務。socket正如其英文原意那樣,象乙個多孔插座。一台主機猶如布滿各種插座的房間,每個插座有乙個編號,有的插座提供220伏交流電, 有的提供110伏交流電,有的則提供有線電視節目。 客戶軟體將插頭插到不同編號的插座,就可以得到不同的服務。

下面這個是乙個小例子:

伺服器端:

#!/usr/bin/perl -w

use strict;

use io::socket;

my $server_port = 9999;

my $client;

my $server = io::socket::inet->new(localport => $server_port,

type      => sock_stream,

reuse     => 1,

listen    => 10) or die "couldn't be a tcp server on port $server_port: $!\n";

while ( $client = $server->accept())

close($server);

客戶端:

#!/usr/bin/perl -w

use strict;

use io::socket;

my $remote_host = '192.168.199.129';

my $remote_port = 9999;

my $socket = io::socket::inet->new(peeraddr  => $remote_host,

peerport  => $remote_port,

proto     => "tcp",

type      => sock_stream ) or die "couldn't connect to $remote_host, $remote_port: $!\n";

print "$socket,\t i'm is client\n"; 

my $answer = <$socket>;

close($socket);

先執行伺服器端,然後執行客戶端,發現兩台機器的9999都開了。

具體深入以後在研究

json模組簡析

使用json模組處理json資料首先要先導入。import json1,它是處理字典與json字串之間的轉換問題,字典是一種資料結構,他有很多方法可供呼叫,而json只是一種特定格式的資料,json字串是符合json格式的字串。字典裡key和value的值的型別可以是任何型別,一般使用單引號,但不強...

簡析光模組

光模組主要用於光電訊號的轉換,光模組tx端將電訊號轉化為光訊號,經光纖傳輸後,在rx端將接收到的光訊號再轉化為電訊號。光模組的分類有很多種 按封裝分類有 1 9 gbic x2 xenpak xfp sfp qsfp cfp等等 按速率分類有 10m 100m 155.52m 622.08m 1.2...

Python模組最簡解釋

乙個py檔案就是乙個模組 包就是資料夾,和資料夾不一樣的就是裡面有乙個 init py的檔案 庫就是你安裝的那個,裡面可能有很多包,包裡面又有很多模組,所以庫名不一定是包名 搞乙個資料夾,隨便叫什麼,把你寫好的包放進去,在這個資料夾下寫乙個setup.py的檔案,內容大致如下 from distut...