導航:首頁 > IDC知識 > tcp伺服器源碼

tcp伺服器源碼

發布時間:2020-12-06 20:01:23

1、基於安卓的WIFI網路調試 助手,TCP客戶端的源碼 或者服務端

您好,對於您這樣的情況建議您下載最新版本的驅動軟體,更新到最新版本的驅動。

2、求TCP/IP 源代碼 要求有中文注釋~~~~~

lz說的應該不是協議,來而是實現自TCP/IP協議內容的具體代碼,如C語言等;《用TCP/IP進行網際互聯第二卷:設計、實現與內核》(第三版)【Internetworking With TCP/IP Vol II:Designed,Implementation,and Internals Third Edition】上有C代碼實現,但沒有中文注釋,只有英文注釋,我想應該沒有中文注釋教材的吧,有也不好找的,反正我沒見過,呵呵!

3、tcpmp源碼下載

http://download.chinaunix.net/search/?q=tcpmp&frmid=0

4、TCP客戶端程序源代碼如何編寫?

int client() { system("color 0a"); //修改DOS窗口顏色,是其成0A。 WORD wVersion=MAKEWORD(1,1); WSADATA wsData; int nResult= WSAStartup(wVersion,&wsData); //啟動WINSOCKET if(nResult !=0) { printf("啟動Winsock失敗!\n"); } SOCKET sc=socket(AF_INET,SOCK_STREAM,IPPROTO_IP); //創建套接字 if(sc==INVALID_SOCKET) { printf("創建套接字失敗!\n"); } SOCKADDR_IN addrSc; addrSc.sin_family=AF_INET; addrSc.sin_port=htons(portNum); //保證位元組順序 char IP[20]; again: printf("請輸入伺服器的IP地址:"); gets(IP); if( -1==inet_addr(IP) ) //循環檢測IP地址是否合法 { printf("IP地址錯誤!\n"); goto again; } addrSc.sin_addr.S_un.S_addr=inet_addr(IP); int b=0; while(b<5) //檢測5次,如果伺服器在此時間內啟動,則進行連接 { nResult=connect(sc,(SOCKADDR*)&addrSc,sizeof(SOCKADDR)); //套接字連接 Sleep((DWORD)100); //延時1秒 if(nResult==SOCKET_ERROR) { printf(" %d 次連接失敗!\n",b+1); } else break; b++; } if(nResult==SOCKET_ERROR) { printf("登陸超時,請重新登陸!\n"); goto again; } char *buf="連接成功!"; //向服務端驗證連接成功 nResult=send(sc,buf,strlen(buf)+1,0); if(nResult==SOCKET_ERROR) { printf("5.套接字發送數據失敗!\n"); return 0; } char mess[M]; nResult =recv(sc,mess,strlen(mess),0); //接受服務端的連接驗證信息 if(nResult == -1 ) //判斷服務端是否關閉 { printf("\n服務端已斷開\n"); system("pause"); exit(0); } printf("%s\n",mess); tianle: system("cls"); //清屏 puts("\n\n"); puts(" * * "); puts(" * 歡·迎·使·用·局·域·網·文·件·發·送·工·具 *"); puts(" * (客 戶 端) * "); puts(" * * "); puts(" * * "); puts(" * 請等待服務端的相應操作 * "); puts(" * * "); puts(" * * "); puts(" * 天樂軟體工作室製作 * "); puts(" * 2008-3-1 * "); puts(" * 版權所有★歡迎傳播 * "); puts("全屏(退出全屏)操作請按:ALT+ENTER\n"); char rMess[100]; nResult=recv(sc,rMess,strlen(rMess),0); //接收服務端發來的操作請求 if(nResult==-1) //判斷服務端是否關閉 { printf("\n服務端已斷開\n"); system("pause"); goto tianle; } printf("%s\n",rMess); char ch; char str[100]; gets(str); ch=str[0]; while( ch!='Y' && ch!='y' && ch!='N' && ch!='n' ) //處理客戶端的錯誤輸入 { printf("輸入有誤,請重新輸入(Y/N):"); gets(str); ch=str[0]; } send(sc,&ch,sizeof(char),0); //向服務端反饋選擇,並執行相應操作 if(strcmp(rMess,"服務端向你傳送文件,是否接受(Y/N):")==0 && (ch=='Y' || ch=='y') ) { receiveFile(sc); } if(strcmp(rMess,"服務端向你發起聊天,是否接受(Y/N):")==0 && (ch=='Y' || ch=='y') ) { chatting_client(sc); } if(ch=='N' || ch=='n') { printf("你拒絕了!\n"); system("pause"); } system("cls"); goto tianle; nResult=closesocket(sc); //關閉套接字 if(nResult==SOCKET_ERROR) { printf("8.關閉套接字失敗!\n"); return 0; } }

滿意請採納

5、求《TCP測試》 VB源代碼

Dim s As String

s = "68 11 00 68 4E FF 69 01 05 00 00 70 08 D5 D5 D5 D5 D5 D5 D5 D5 DC 16"

Dim tmp() As String, bHex() As Byte

tmp = Split(s, " ")

Dim i As Integer

For i = 0 To UBound(tmp)

ReDim Preserve bHex(i)

bHex(i) = CByte("&H" & tmp(i))

Debug.Print bHex(i), "&H" & Hex(bHex(i))
tcpClient.SendData bHex(i)

Next

6、求一個Android studio 的 tcpip 客戶端收發的實例,希望大俠們能給一下源碼工程


最基礎的寫法


server端
public class MyTcpServer  {
    public static void mian(String[] args){
        try {
            //構造一個伺服器端埠為12345的socket伺服器;
            ServerSocket serverSocket = new ServerSocket(12345);
            //等待接收一個socket客戶端的連接,並得到客戶端的socket對象。
            // 此方法在沒有客戶端連接的時候,會阻塞。
            Socket client = serverSocket.accept();
            //獲得socket客戶端的輸入管道
            InputStream is = client.getInputStream();
            //獲得socket客戶端的輸出管道
            OutputStream os= client.getOutputStream();
            byte[] buffer = new byte[1024];
            int len = is.read(buffer);
            System.out.println("-->"+new String(buffer));

            os.write("Hello client".getBytes());
            os.flush();
            is.close();
            os.close();
            client.close();
            serverSocket.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

}
client 端
 private class MyThread extends Thread{
        @Override
        public void run() {
            super.run();
            try {
                Socket client = new Socket("192.168.3.173",12345);  //IP為伺服器IP ,埠號為伺服器埠號。
                InputStream in = client.getInputStream();
                OutputStream out = client.getOutputStream();

                out.write("Hello server".getBytes());  //如果在伺服器端先進行讀操作。那麼客戶端就應先進行寫操作。
                                                         //這樣交替進行,不然將都阻塞在  Read 讀操作。
                out.flush();

                byte[] buffer = new byte[1024];
                int len = in.read();
                in.read(buffer);
                System.out.println("--->"+new String(buffer));


            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}

7、c# 求符合要求的 TCP 、多線程、伺服器 <> 客戶端 通信代碼

有現成的類似QQ的源代碼
一個伺服器,多個客戶端可以連接,要就hi我,我一直在線

8、tcp/ip 源碼剖析 怎麼樣

先認清你自己學習的出發點吧, 是應用層面方向還是內核協議棧

應用層面,我不是很了專解

內核協議棧個人學習流程屬大概如下:

首先看TCP/IP卷2,理解2層(MAC地址), 3層(IP, 路由),4層(TCP,UDP,ICMP,IGMP)
這里主要理解的框架,先把網路協議層從下到上(或從上到下)理一遍

然後,建議你看<深入理解Linux網路技術內幕> 能看英文版最好

按照那本書的目錄,找找網上的資料
稍微理解下sk_buff和net_device這兩個結構
(不要想著去看懂, 要完全看懂這個結構,會花費比較多的時間,而且還要結合網路子系統中的各個應用)

然後,直接把整本書完整看一遍,不要刻意去扣細節,第1遍看這本書只是為了把網路子系統的內部框架建立起來

看完1遍,肯定有自己的見解了,然後,再根據自己需要的,去扣代碼細節

代碼方面,建議不要找最新的代碼,我看這本書選的2.6.16的,最新代碼的話,和這本書對應不上,不便於理解基礎

<深入理解Linux網路技術內幕> 這本書,除了沒有TCP/UDP的詳細解說,至少我沒發現比他還好的書

9、求一C語言寫的tcp程序的源碼,程序越簡單越好,C++也可以,最好帶注釋

最簡單的那種?我給你寫一個=,=
//伺服器
#include <sys/stat.h>

#include <fcntl.h>

#include <errno.h>

#include <netdb.h>

#include <sys/types.h>

#include <sys/socket.h>

#include <netinet/in.h>

#include <arpa/inet.h>

#include <string.h>

#include <stdlib.h>

#include <stdio.h>

#include <unistd.h>

main()

{
//創建套接字

int serverSocket= socket(AF_INET,SOCK_STREAM,0);

struct sockaddr_in server_addr;

struct sockaddr_in clientAddr;

int addr_len = sizeof(clientAddr);
int client;
char buffer[200];

//創建地址

bzero(&server_addr,sizeof(server_addr));

server_addr.sin_family =AF_INET;

server_addr.sin_port = htons(5555);

server_addr.sin_addr.s_addr = htonl(INADDR_ANY);

//綁定

bind(serverSocket,(struct sockaddr *)&server_addr,sizeof(server_addr));
//幀聽

listen(serverSocket,5);
printf("客戶端發過來的 :\n");
//接收
client=accept(serverSocket,(sockaddr *)&clientAddr,(socklen_t*)&addr_len);
printf("客戶端發過來的 :\n");
while(1)
{
if(recv(client,buffer,sizeof(buffer),0)>0)
printf("客戶端發過來的 : %s\n",buffer);
}
return 0;
}

//客戶端
#include <sys/stat.h>

#include <fcntl.h>

#include <errno.h>

#include <netdb.h>

#include <sys/types.h>

#include <sys/socket.h>

#include <netinet/in.h>

#include <arpa/inet.h>

#include <string.h>

#include <stdlib.h>

#include <stdio.h>

#include <unistd.h>

main()

{

struct sockaddr_in serverAddr;

int clientSocket=socket(AF_INET,SOCK_STREAM,0);

char sendbuf[200];

//創建地址信息

serverAddr.sin_family=AF_INET;

serverAddr.sin_port=htons(5555);

serverAddr.sin_addr.s_addr=inet_addr("127.0.0.1");

//連接伺服器

connect(clientSocket,(sockaddr*)&serverAddr,sizeof(serverAddr));

printf("連接目標主機中.....\n連接完成......\n");

//

while(1)

{

printf("請輸入發給伺服器的數據 : ");

scanf("%s",sendbuf);

//strcmp函數作用,比較兩個東東(按ASCII值大小相比較),相同就==0。

if(strcmp(sendbuf,"x")==0)

break;

send(clientSocket,sendbuf,sizeof(sendbuf),0);

}

close(clientSocket);

return 0;

}

10、c#實現p2p的流媒體視頻系統,求方法(用tcp)或者源碼

P2P是peer-to-peer的縮寫,peer在英語里有"(地位、能力等)同等者"、"同事"和"夥伴專"等,P2P也就理解為屬"夥伴對夥伴"的意思,或稱為對等聯網。就是我們說的P2P流媒體技術!
P2P就是人可以直接連接到其他用戶的計算機、交換文件,而不是像過去那樣連接到伺服器去瀏覽與從網路看,P2P也不是新概念,P2P是互聯網整體架構的基礎。人們認為其在加強網路上人的交流、文件交換、分布計算等方面大有前途。
即時訊息ICQ、AOL Instant Messenger、Yahoo Pager、微軟的MSN Messenger以及國內的OICQ是最流行的P2P應用。它們允許用戶互相溝通和交換信息、交換文件。用戶之間的信息交流不是直接的,需要有位於中心的伺服器來協調。
不過,現在人們多指p2p流媒體電視直播軟體方面的應用,如PPLive 、PPStream

與tcp伺服器源碼相關的知識