Showing posts with label TCP. Show all posts
Showing posts with label TCP. Show all posts

Thursday, April 28, 2016

What is STUN and why do I need a STUN Server?

Skype is quite well known. You can call up someone using your web browser to speak to him if he is also on the Internet or even his cell phone if he has a Skype UserId / Password or Skype account. This is made possible by VOIP (voice over Internet) using the VoIP protocol.

Now what is STUN?

STUN is Session Traversal of User Datagram Protocol (UDP) through Network Address Translators(NAT).

If you are using the IP Phone from behind the firewall (where NAT becomes important) then STUN allows you setup Phone calls to aVoIP Provider hosted outside your local network (typical example is a home network consisting of computers connected to a router).

While your voice calls go through the router to the STUN Server, the STUN server can connect to your local machine behind the firewall.

STUNServer_00
Read more here. The above image was from this link.

Saturday, April 23, 2016

What is HTTP/2?

HTTP/1.0 was the protocol used in 1996 and was updated in 1999 as HTTP 1.1. HTTP/2 which does not have this version number with a decimal (it is not HTTP 2.0) was approved in February 2015 and is designed to overcome the older HTTP limitations. These are some of the benefits of using the new standard:
  • Multiplexing and Concurrency
  • No more need to establish multiple connections between Client and Server. Many requests can be sent on the same TCP connection and responses may return not in the order the requests were sent
  • Stream dependencies. Client can indicate which of the resources are more important than the others
  • Header Compression. Drastic reduction in the size of the headers by compression
  • Server Pushing without a request from the client

The HTTP APIs continue to work as that part has not changed but the application can perform better  with reduced consumption of resources.

Read the excellent information  here and here.

Most of the browsers already support HTTP/2 built on Google's SPDY (https://en.wikipedia.org/wiki/SPDY) protocol to reduce web content load latency and improving web security. Going forward HTTP/2 will supersede SPDY.

Regarding browser support, the HTTP/2 protocol is supported my most of the browsers as shown in this image taken from here.
http://caniuse.com/#search=http2


HTTP/2 and Microsoft Edge 34.14295.1000.0