Never Easier Online Radio : Part 2 - Using TCP protocol for online audio streaming
New Era of Radio
Here and now. We are witnesses of the, so called, new era of Information Technology. IT sector influenced on all sectors of society, global society. It's no longer a question of getting the information, but what to do with it.
hub - that had an enormous success among HubPages readers, and beyond HubPage community (thanks to search engines, good SEO, and social network sharing), and the last comment on it, inspired me to go further and make an detailed hub describing "how it all works".
What also can be a good background knowledge source, is the "TechShortcut" blog of mine - where I'm writing relevant IT informations regarding networking, communications and everything, in general, about Network Infrastructure.
TCP protocol makes smaller data packages, by implementing the small 8-bit information into the header of the data package. That 8-bit information in header, is called Sequence ID. Sequence ID is essential for TCP protocol. In the header, where Sequence ID is placed, the information WHERE AND BY WHAT ORDER should data be collected and built.
What kind of connection protocol is best for my online radio?
Connection and non-connection oriented protocols
- For starters, You all should know - there are two types of connection protocols between computers. "Connection-oriented", and "Non-connection oriented". Probably many of You are now wondering, what is the difference?
Connection oriented protocols:
- These connections are oriented on right way of data delivery. By this, I mean that connections that are started trough this kind of protocols are focused on: right addressing of data, separating data on smaller packages and collecting them on right way, by right order on the right address.
- The best, and most common type of this kind of protocol is TCP protocol. (Transmission Control Protocol) TCP protocol is a "three way hand-shake" type of protocol, which means that connection session can only be started if all three responses of TCP "layers" are "positive". This would mean that if just one of the "response" of each side ( either PC1 or PC2), that has to have TCP protocol installed, is "negative" (no) - whole session will be stopped, and connection will be dropped.
How does it works?
Imagine situation where You have installed, already, all necessary software for Your radio and that is "PC 1". The music, covered to data, is trying to make an connection session with "PC 2" - that is server that deploys data, to all computers that request from him from the specific port - registered just for PC 1.
BASIC TCP PROTOCOL LOOKS LIKE THIS:
PC1 sends request for starting session --> PC2
PC2 (SERVER) sends CONFIRMATIONabout getting the request --> PC1
PC1(Client, Your RADIO) sends a CONFIRMATION to start session --> PC2
(CONFIRMATION has been sent after getting the CONFIRMATION from PC1, rationally)
VULNERABILITY: Denial of Service attacks
DDoS attacks represent the most common hack-attacks of connection made trough the TCP "made" connections.
-Denial of Service or (DDoS) hack attacks are happening between Layer II , and Layer III of TCP protocol. Hackers are using the fact that in this case, connection can only be started by sending/getting the confirmation from Layer II to Layer III. Now, overload of requests, servers (PC2) are going down, and hackers have "achieved their goal".
But, DoS - can be prevented ONLY by You!
Every single broadcaster/streamer of his online radio - should have basic knowledge of System Network Administration.
- This hub, and following sentences will give You instructions how to PREVENT DDoS attacks.
By specifying the time between processes in Layer II and Layer III, You can prevent these attacks that are/can bringing Your server or You as a broadcaster down, by sending 10.000 of request for confirmation. The server gets overloaded, and imagine the server resources being used, for sending 10.000 confirmations. Automatically Your connection will get dropped and Your fine tunes will get terminated.
SPECIFYING THE TIME BETWEEN RECEIVING CONFIRMATION, AND RECEIVING THE SAME - YOU CAN PREVENT HACKERS AND THEIR "LITTLE GAMES".
Time-Offset / is something that is must be configured. By ignoring this, You are totally exposed. Be smart - and FOLLOW and READ CAREFULLY AGAIN whole hub.
Please, let me note if You want "PART 3". I would write about U.D.P (User Diagram Protocol), and/or x.25 protocols that could be used in Your radio streaming. By reading and learning these things, You are not just capable of leading an online radio - but You will gain basic Network System Administrator knowledge.