導航:首頁 > 編程語言 > phptcp包

phptcp包

發布時間:2022-08-10 05:37:10

A. php SOCKET,

也許這與PHP無關,TCP/IP協議本就有包大小的限制

B. php編程語言可以解析tcp數據包(包括標志位,序列號,窗口長度)嗎

TCP協議頭最少20個位元組,包括以下的區域
TCP源埠(Source Port):16位的源埠其中包含初始化通信的埠。源埠和源IP地址的作用是
標示報問的返回地址。
TCP目的埠(Destination port):16位的目的埠域定義傳輸的目的。這個埠指明報文接收計算
機上的應用程序地址介面。
TCP序列號(序列碼,Sequence Number):32位
TCP應答號(Acknowledgment Number):32位的序列號由接收端計算機使用,重組分段的報文成最初形式。,如果設置了ACK控制位,這個值表示一個准備接收的包的序列碼。

C. 怎樣使用php實現tcp/udp通訊

1.在socket_bind的時候ip地址不能真回環地址如127.0.0.1
2.server.php後台跑起來的時候nohup php server.php > /var/tmp/a.log 2>&1 &
一: udp 方式
1) server.php
<?php //error_reporting( E_ALL ); set_time_limit( 0 ); ob_implicit_flush(); $socket = socket_create( AF_INET, SOCK_DGRAM, SOL_UDP ); if ( $socket === false ) { echo "socket_create() failed:reason:" . socket_strerror( socket_last_error() ) . "\n"; } $ok = socket_bind( $socket, '202.85.218.133', 11109 ); if ( $ok === false ) { echo "socket_bind() failed:reason:" . socket_strerror( socket_last_error( $socket ) ); } while ( true ) { $from = ""; $port = 0; socket_recvfrom( $socket, $buf,1024, 0, $from, $port ); echo $buf; usleep( 1000 ); } ?>
2) client.php
<?php $sock = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP); $msg = 'hello'; $len = strlen($msg); socket_sendto($sock, $msg, $len, 0, '202.85.218.133', 11109); socket_close($sock); ?>
二: TCP 方式
1)server.php
<?php //error_reporting( E_ALL ); set_time_limit( 0 ); ob_implicit_flush(); $socket = socket_create( AF_INET, SOCK_STREAM, SOL_TCP ); socket_bind( $socket, '192.168.2.143', 11109 ); socket_listen($socket); $acpt=socket_accept($socket); echo "Acpt!\n"; while ( $acpt ) { $words=fgets(STDIN); socket_write($acpt,$words); $hear=socket_read($acpt,1024); echo $hear; if("bye\r\n"==$hear){ socket_shutdown($acpt); break; } usleep( 1000 ); } socket_close($socket) ?>
2) client.php
<?php $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); $con=socket_connect($socket,'192.168.2.143',11109); if(!$con){socket_close($socket);exit;} echo "Link\n"; while($con){ $hear=socket_read($socket,1024); echo $hear; $words=fgets(STDIN); socket_write($socket,$words); if($words=="bye\r\n"){break;} } socket_shutdown($socket); socket_close($sock); ?>

D. php中進行tcp連接,發指令

你需要先在命令行裡面 telnet 192.168.0.104 23 看看有沒有反應

E. php tcp socket用區分包頭,長度,內容嗎。

$info["path"] = '/index.html';
$info["host"] = '127.0.0.1';
$info["port"]=80;
$data_string= "name=peter";

這個是發送請求,重新定義了http頭部,具體信息在函數里修改就可以了。

echo url_post($info, $data_string);

function url_post($info, $data_string){
$request = '';
$request.="POST ".$info["path"]." HTTP/1.1\n";
$request.="Host: ".$info["host"]."\n";
//$request.="Referer: $referrer\n";
//$request.="Content-type: application/x-www-form-urlencoded\n";
$request.="Content-length: ".strlen($data_string)."\n";
$request.="Connection: close\n";
$request.="\n";
$request.=$data_string."\n";

//echo $request;

$fp = fsockopen($info["host"],$info["port"]);
fputs($fp, $request);
$result = '';
while(!feof($fp)) {
$result .= fgets($fp, 128);
}
fclose($fp);

return $result;
}

F. php 如何解析通過tcp協議發過來的數據

//創建socket監聽埠
$socket = socket_create_listen("55555");
//連接失敗給出錯誤信息
if(!$socket){
exit("Failed to create socket!\n");
}
while(true){
$client = socket_accept($socket); //接受一個Socket連接!

G. php socket怎麼連續接收多個tcp包

一個tcp包只有1.4k左右(有說新版協議中可達64k),socket本身就是對tcp包連續操作了
底層協議不需要考慮,況且在php層面你也觸碰不到

H. php中的tcp/ip連接

8192表示每次最多讀取8192個位元組的數據。

代碼的思路是沒問題的,細節的話沒有測試,不過你將服務端和客戶端都放在一個頁面里,不太合適。
至少你應該編寫兩個頁面分別來跑 socket_create 和 socket_connect

I. php有tcp網路協議方面的庫嗎

有的。http://pecl.php.net/package/tcpwrap.
<?php
if (!tcpwrap_check('php', $_SERVER['REMOTE_ADDR'])) { die('You are not welcome here');}?>

J. php 怎麼解析通過tcp協議發過來的數據

//創建socket監聽埠
$socket = socket_create_listen("55555");
//連接失敗給出錯誤信息
if(!$socket){
exit("Failed to create socket!\n");
}
while(true){
$client = socket_accept($socket); //接受一個Socket連接

閱讀全文

與phptcp包相關的資料

熱點內容
如何測試流媒體伺服器的並發能力 瀏覽:159
溯源碼有分國家認證的嗎 瀏覽:218
如何通過app查詢產檢報告 瀏覽:944
拉結爾安卓手機怎麼用 瀏覽:695
驅動級進程代理源碼 瀏覽:782
androidshape畫線 瀏覽:510
程序員想辭職被拒絕 瀏覽:101
java面試邏輯 瀏覽:749
如何下載全英文app 瀏覽:724
js函數式編程指南 瀏覽:380
為什麼安卓手機相機啟動會卡 瀏覽:341
python中t是什麼意思 瀏覽:765
移動硬碟內存加密 瀏覽:407
單片機測角度 瀏覽:864
URL伺服器地址怎麼填 瀏覽:438
壓縮餅干會導致血糖高嗎 瀏覽:569
cad中xc命令怎麼用 瀏覽:424
戴爾伺服器怎麼看網卡介面 瀏覽:823
鹽鐵論pdf 瀏覽:424
最短路徑的生成演算法可用 瀏覽:457