能力值:
( LV2,RANK:10 )
|
-
-
2 楼
不好意思,随便说说,不对的地方请指导。
我做过window下的网络传输,网络传输在ring3程序下,使用winsock连接,winsock分为两种模式一种tcp、ip模式,一种UDP模式,其中TCP/IP模式必须双方建立可靠的连接,从编程角度说,就是connect函数获得了正确的返回值。UDP模式不用。可以在命令行格式下,查看本地机器所有的网络连接。
TDI,是什么东西。
我感觉网络这块,M$是直接抄UNIX的吧。。
P.S。一直很讨厌迅雷的客户端那个下载广告,上班的时候下东西,非常的不合适。尽管都是不太黄的网站,但是也很不舒服。用OD,看了几天也没有搞定。我分析应该是客户端连接上网络后,服务器发给客户端需要打开的网页地址,然后客户端执行该连接。。。。。。
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
TDI是“传输驱动接口”, 是比Socket低一层的协议。具体的我没有研究。但可以肯定的一点是,用TDI可以不用Socket就能建立连接,或者说不用Socket的API,这样,SPI就没有用了。
其实不只是迅雷,用别的下载也一样。
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
这并不是怎么编程的问题,而是网络协议的问题,无论是IP数据包,路由,还是NAT,每一道都是障碍
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
我看这意思,还是直接写NDIS好了,能省很多事。虽然NDIS不怎么好写。
PS:看到坛子里有NDIS的笔记,不错。我去研究一下。
TO楼上:我觉得没那么复杂(可能是我想简单了),主要是改IP包的一个地址然后从另一个interface发出去,回来的时候可以向master card的MAC再发一遍。因为内网之间是不限速的。
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
这个太高深了。。。LZ实现了后回来给点提示哈。
|
能力值:
( LV6,RANK:90 )
|
-
-
7 楼
解决:如果我们开发一个load balance的驱动,在数据包发出去之前平均分配到两块网卡上,然后再把回来的数据合并,传回进程,理论上就可以把另一块闲置的网卡利用起来了。
对于下载服务器那边.本来一个tcp连接就是一个套结字对..你现在把客户端的数据从两个网卡发出去,有两个ip和两个端口.服务器肯定只会接收其中的一路,另一路直接被丢弃..同时由于你分了两路,seq,acknumber全被破坏..服务器能接收的那路马上就被咔嚓..
这个方法是不可行的
不过到可以做到下载两个文件,一个网卡下A, 一个网卡下B.这样到是可以提高速度.
但你想做到 下一个文件,一部分数据走网卡1,一部分数据走网卡2,虽然你这端可以处理,把两部分数据整合在一起。但是服务器那边它可识别不了这种下载方式。
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
你可以针对链接来做到负载均衡,但是你要处理不同微端口上的数据.
|
|
|