用C# 實現簡單的p2p(基於TCP)

p2p的2端都部署有相同的應用程序.

每個程序都既包含服務端,又包含客戶端.

現在以其中一個程序爲例:

=====

Proxy --類似於客戶端
Peer --類似於服務器

Peer 類:
1.初始化一個 TcpListner listner
2.listner.start()
3.while(true){
    Socket s = listner.AcceptSocket();

   //返回一個文件流
    }

Proxy類:
1.下載方法:Stream out = new FileStream(本地路徑);
       Strem in = 根據Ip和端口取得的netStream
       Copy(in,out);//copy爲私有函數,複製流
2.上傳:Stream in = new FileStream(本地路徑);
    Steam out = 根據Ip和端口取得的netStream
    Copy(in,out);//copy爲私有函數,複製流

發佈了161 篇原創文章 · 獲贊 11 · 訪問量 51萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章