Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

I have been testing my application which has TCP/UDP ports for peer to peer with the help of server signalling commands for making communication, that works when I have Public IP or Lan IP and not firewall/port blocks are involved. I will name my end points here:

a) PC1 - running in European commission having Lan IP and unknown Wan IP b) PC2 - running in European commission having Lan IP and unknown Wan IP c) Server 1 - running in Amazon with public IP

Now the same Application I am testing in European commission/Airport/Rail way networks where there internet inbound/outbound traffics are having firewall and rules as a result it fails to communicate with server for mapping and application algorithms.

On those PC1/PC2 how-ever I tested Skype and it simply works without caring firewall or all those network issues. Skype simply works.

So I was thinking is there any third party tools which I can use in my PC1/PC2 to make list of ports available remotely to access via TCP/UDP (without caring what firewall or network they are located?) . So that from Server I can do the port mapping and bridge or relay there packets?

(For example Skype works in such complicated network, is there any tools we have in Linux to use it as external package)

share|improve this question
    
What port is open on the server? Are PC1 and PC2 just connecting to the server (i.e., outbound connection only)? –  Mel Boyce Jun 19 '13 at 12:10
    
PC1/PC2 need to do exchange between each other either peer to peer or via server. Server has all freedom any port is open for the moment and possible to keep many open. –  YumYumYum Jun 19 '13 at 13:16
    
Have you tried using port 80 on the server and connecting to that from each PC? –  Mel Boyce Jun 19 '13 at 13:23

1 Answer 1

up vote 1 down vote accepted

I think what you should really be asking is:

"... how does Skype traverse complex network topologies where it would seem impossible to connect through these networks which have complex firewalling deployed?"

I'd take a look at this article directly from Skype which explains in pretty good terms the methods they employ to make Skype jus t work.

What are P2P communications?

If you read through that article what they're basically saying is that they use a variety of techniques to circumvent complex networks. The key technologies that they leverage are as follows:

1. Firewall and NAT (Network Address Translation) traversal

excerpt from Wikipedia

Many techniques exist, but no single method works in every situation since NAT behavior is not standardized. Many NAT traversal techniques require assistance from a server at a publicly routable IP address. Some methods use the server only when establishing the connection, while others are based on relaying all data through it, which adds bandwidth costs and increases latency, detrimental to real-time voice and video communications.

2. Global decentralized user directory

This is a fancy way of saying "We use supernodes on the internet which are computers that do allow Skype clients to connect ad-hoc to any port of its choosing. These "clients" act as decentralized databases of user info which if you take them as a whole, make up the Skype directory of users.

excerpt

Clearly, in order to deliver high-quality communications with the lowest possible costs, a third generation of P2P technology ("3G P2P") or Global Index (GI) was a necessary development and represents yet another paradigm shift in the notion of scalable networks. The Global Index technology is a multi-tiered network where supernodes communicate in such a way that every node in the network has full knowledge of all available users and resources with minimal latency.

3. How does Skype maintain call quality?

There answer basically says, it's a secret and we're not willing to share that bit of information with you.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.