recently, have several clients on p2p application, use development version test, two-way voice , video connection not successful, several customers of network environment follows:
first of all, there no firewall;
these networks have in common is:
after optical access, subnet lot of routers, 1 one, , series, parallel, in series , parallel, , in parallel in series, in short, can online, , not same segment of computer, p2p connection not successful, , other computer connection not successful, , use vpn.
analogy: 192.168.5.10 , 192.168.10.10 connect not, 192.168.5.10 , 192.168.5.11 ok, 192.168.5.10 may outside network of other computers can connect to, 192.168.10.10 possible , other computers outside network connections not.
hope solve problem possible, because rtmfp expensive, otherwise p2p applications, large companies (schools, government) affordable, , networks complex, not take, no client .
my english not good, google translation
i gave bug report long, how did not care me ah;
this forum nobody, or did not test bug, not have time correct bug;
either modify not flash player platform bottom of things, not give advice.
in fact, standing on technical point of view think have use socket network communication can ok, network barrier, not.
but user's perspective, can normal internet, other p2p communications software, can, on thing, impossible, software not work, bug must solve .
i concerned issue every day , came see nobody replies, think problem, think, solve problem, can proceed in 2 ways:
1.dns
i think may able solve problem, dynamic dns,
the idea is: allow users connect server, user computer first upd listener (that is, iis services), farid + domain form secondary domain name server dynamically resolve domain name user's computer, in timely manner refresh dns.
in way, user's computer, there fixed identity.
2 gateway
from users within lan solve problem, can proceed gateway.
for example, use arp , other means router, each segment ip ip, similar route command specify more 1 gateway user's computer may able solve problem.
in theory, these 2 methods may feasible.
we expect new solution, not know daoxing not
speak before program, take @ our test rtmfp p2p network topology, , test results (explain, test, not open firewall , router not set static routing).
computer a, computer b - "router -" server s
the above netconnection.connect.success 95% netstream.connect.success 5% netstream.connect.fail
computer - "router - servers s" - routers b - computer b
above, netconnection.connect.success, netstream.connect.success
computer - "router - servers s" - router b - routers c - computer b
above, netconnection.connect.success, 50% netstream.connect.success 50% netstream.connect.fail
(computer - router a, computer b) - router b - server s
above netconnection.connect.success, 100% netstream.connect.fail
computer - "router -" router b - server s "- router c" - router d "- computer b
above netconnection.connect.success, 100% netstream.connect.fail
computer - "router -" router b - "router c -" server s "- router d" - router e "- computer b
above netconnection.connect.success, 100% netstream.connect.fail
see above test results, not bad, key fms4.5 sell 450,000 rmb in china, own software not job, sell such high price in china, man named qq. the above test environment, 100% netconnection.connect.success 100% netstream.connect.success, free, qq has more 100 million users, qq companies rely on advertising make money game.
seems digress, huh, huh.
the test results, 100% netconnection.connect.success, , netstream.connect.fail main reason because route connected in series or more 2 or 2 , caused.
from technical perspective, packet travels through number of nat router default packets can out, new packets can not second layer of router caused.
find reason, think of countermeasure solve problem software itself.
the last case of above test environment, example:
when computer , server s netconnection.connect.success computer b server s netconnection.connect.success, computer router d sends upd packets, not because router can broadcast data packet computer b, 100 % netstream.connect.fail.
the 100% netconnection.connect.success, if can netstream.connect, , netconnection.connect connected together, not can 100% netstream.connect.success?
in other words, no matter circumstances, computer , computer b can , server s connection successful, other way round, is, server s , computer or computer b can connect.
we can not let computer or computer b, pretending server s (in theory, called nat, technically speaking, modify source ip of packet header , source mac server s, , parity), router not in nat, , other communications.
More discussions in Adobe Media Server
adobe
Comments
Post a Comment