c++模擬了dns分布式查詢中的迭代查詢與遞迴查詢
新建了兩個類用來模擬client,server,socket結構體用來模擬鏈路。
沒有做歷史節點記錄,每次找下乙個節點都靠隨機數。這裡有待改進。
**如下
#include using namespace std;
struct socket//用來模擬線路
;class client
; ~client(){};
client(string ip)
int respose(socket wire);//應答函式
socket send();//發報函式
void input();//輸入請求網域名稱
};void client::input()
int client::respose(socket wire)
else//找到網域名稱,直接列印
}server::server(string ip)
//監聽函式
int server::listen(socket wire)
//迭代用於返回原節點
socket server::getmsg(socket wire)
else status=false;
}//不存在,找到下乙個要去的節點賦值給ip,將原節點ip給desnation,狀態為false
if (status==false)
return temp;
}//遞迴用於找到下乙個節點
socket server::nextmsg(socket wire)
else status=false;
}if (status==false)
temp.ip=temp.desnation;
temp.source=host;
temp.flag= false;
}return temp;
}socket server::sendmsg(socket data)
int main()
if (server_1.listen(wire)) wire = server_1.sendmsg(server_1.getmsg(wire));
if (server_2.listen(wire)) wire = server_2.sendmsg(server_2.getmsg(wire));
if (server_3.listen(wire)) wire = server_3.sendmsg(server_3.getmsg(wire));
if (server_4.listen(wire)) wire = server_4.sendmsg(server_4.getmsg(wire));
if (user.respose(wire) == 0) else
}} else else }}
}
分布式查詢
sql server所謂的分布式查詢 distributed query 是能夠訪問存放在同一部計算機或不同計算機上的sql server 或不同種類的資料來源,從概念上來說分布式查詢與普通查詢區別 它需要連線多個mssql伺服器也就是具有多了資料來源.實現在伺服器跨域或跨伺服器訪問.而這些查詢是否...
分布式查詢
exec sp addlinkedserver server servera srvproduct provider sqloledb datasrc 192.168.0.28 exec sp addlinkedsrvlogin rmtsrvname servera useself false rm...
分布式查詢
sql server所謂的分布式查詢 distributed query 是能夠訪問存放在同一部計算機或不同計算機上的sql server 或不同種類的資料來源,從概念上來說分布式查詢與普通查詢區別 它需要連線多個mssql伺服器也就是具有多了資料來源.實現在伺服器跨域或跨伺服器訪問.而這些查詢是否...